diff --git a/rearServer/src/main/java/com/tokensTool/pandoraNext/service/impl/apiServiceImpl.java b/rearServer/src/main/java/com/tokensTool/pandoraNext/service/impl/apiServiceImpl.java
index e1121a9..3d3a99c 100644
--- a/rearServer/src/main/java/com/tokensTool/pandoraNext/service/impl/apiServiceImpl.java
+++ b/rearServer/src/main/java/com/tokensTool/pandoraNext/service/impl/apiServiceImpl.java
@@ -945,7 +945,7 @@ public String autoUpdateToken(String name) {
newToken++;
}
allToken++;
- Thread.sleep(1200);
+ Thread.sleep(1000);
}
if (newToken == 0) {
log.info("自动生成Token失败!");
diff --git a/rearServer/src/main/resources/static/css/386.a0b15fa3.css b/rearServer/src/main/resources/static/css/666.a0b15fa3.css
similarity index 100%
rename from rearServer/src/main/resources/static/css/386.a0b15fa3.css
rename to rearServer/src/main/resources/static/css/666.a0b15fa3.css
diff --git a/rearServer/src/main/resources/static/css/678.1337824f.css b/rearServer/src/main/resources/static/css/678.1337824f.css
new file mode 100644
index 0000000..ce84e68
--- /dev/null
+++ b/rearServer/src/main/resources/static/css/678.1337824f.css
@@ -0,0 +1 @@
+.content_login[data-v-8f916fe6]{flex:1;display:flex;background:#fff;zoom:1;width:100vw;height:100vh;overflow-x:hidden;flex-direction:column}body[data-v-8f916fe6]{font-family:Arial,sans-serif;background-color:#f2f2f2}.van-cell[data-v-8f916fe6]{box-shadow:1px 1px 1px #0ea27e;border-radius:14px;width:98%}.userName[data-v-8f916fe6]{font-size:14.6px;font-weight:700}.container[data-v-8f916fe6]{width:400px;height:auto;margin:0 auto;background-color:#fff;transform:translateY(13vh);border-radius:14px}input[type=submit][data-v-8f916fe6]{width:100%;padding:14px;background-color:#0ea27e;color:#fff;border:none;border-radius:14px;cursor:pointer;font-weight:700}input[type=submit][data-v-8f916fe6]:hover{background-color:#0ea27e}#background[data-v-8f916fe6]{width:100%;height:100vh;position:absolute;top:0;left:0;background-size:cover;background-position:0 -560px;z-index:-1;opacity:.99}.login-container[data-v-8f916fe6]{margin-top:10vh;margin-bottom:7vh;background-color:#fff;padding:17.5px;border-radius:25px;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);height:5vh;display:flex;justify-content:center;align-items:center;transform:translateY(19vh)}.login-container h4[data-v-8f916fe6]{font-size:25px;color:#000;font-weight:700}.el-dialog__title[data-v-8f916fe6]{font-weight:700}.login-container img[data-v-8f916fe6]{width:40px;height:40px}a[data-v-8f916fe6]{color:#0ea27e}h3[data-v-8f916fe6]{font-size:15.5px;color:#0ea27e}.van-field__label[data-v-8f916fe6]{width:150px;font-size:14.6px}.van-button--round[data-v-8f916fe6]{border-radius:14px}.bottom[data-v-8f916fe6]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;margin-top:10px}.van-field__label[data-v-8f916fe6] .label{font-size:18.6px}.van-field__error-message[data-v-8f916fe6]{color:var(--van-field-error-message-color);font-size:var(--van-field-error-message-font-size);text-align:center}@media only screen and (max-width:767px){.content_login[data-v-8f916fe6]{flex:1;display:flex;background:#fff;zoom:1;width:100vw;height:100vh;overflow-x:hidden;flex-direction:column}body[data-v-8f916fe6]{font-family:Arial,sans-serif;background-color:#f2f2f2}.van-cell[data-v-8f916fe6]{box-shadow:1px 1px 1px #0ea27e;border-radius:14px;width:98%}.userName[data-v-8f916fe6]{font-size:14.6px;font-weight:700}.van-button--round[data-v-8f916fe6]{border-radius:14px}.container[data-v-8f916fe6]{width:322px;height:auto;margin:0 auto;background-color:#fff;transform:translateY(13vh);border-radius:14px}input[type=submit][data-v-8f916fe6]{width:100%;padding:14px;background-color:#0ea27e;color:#fff;border:none;border-radius:14px;cursor:pointer;font-weight:700}input[type=submit][data-v-8f916fe6]:hover{background-color:#0ea27e}#background[data-v-8f916fe6]{width:100%;height:100vh;position:absolute;top:0;left:0;background-size:cover;background-position:0 -560px;z-index:-1;opacity:.99}.login-container[data-v-8f916fe6]{margin-top:3vh;margin-bottom:7vh;background-color:#fff;padding:17.5px;border-radius:25px;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);height:5vh;display:flex;justify-content:center;align-items:center;transform:translateY(19vh)}.login-container h4[data-v-8f916fe6]{font-size:20px;color:#000;font-weight:700}.login-container img[data-v-8f916fe6]{width:40px;height:40px}a[data-v-8f916fe6]{color:#0ea27e}h3[data-v-8f916fe6]{font-size:15.5px;color:#0ea27e}.van-field__label[data-v-8f916fe6]{width:150px;font-size:14.6px}.bottom[data-v-8f916fe6]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;margin-top:10px}.van-field__label[data-v-8f916fe6] .label{font-size:18.6px}}
\ No newline at end of file
diff --git a/rearServer/src/main/resources/static/css/724.97ac894e.css b/rearServer/src/main/resources/static/css/724.97ac894e.css
deleted file mode 100644
index 240f30a..0000000
--- a/rearServer/src/main/resources/static/css/724.97ac894e.css
+++ /dev/null
@@ -1 +0,0 @@
-.content_login[data-v-a6617242]{flex:1;display:flex;background:#fff;zoom:1;width:100vw;height:100vh;overflow-x:hidden;flex-direction:column}body[data-v-a6617242]{font-family:Arial,sans-serif;background-color:#f2f2f2}.van-cell[data-v-a6617242]{box-shadow:1px 1px 1px #0ea27e;border-radius:14px;width:98%}.userName[data-v-a6617242]{font-size:14.6px;font-weight:700}.container[data-v-a6617242]{width:400px;height:auto;margin:0 auto;background-color:#fff;transform:translateY(13vh);border-radius:14px}input[type=submit][data-v-a6617242]{width:100%;padding:14px;background-color:#0ea27e;color:#fff;border:none;border-radius:14px;cursor:pointer;font-weight:700}input[type=submit][data-v-a6617242]:hover{background-color:#0ea27e}#background[data-v-a6617242]{width:100%;height:100vh;position:absolute;top:0;left:0;background-size:cover;background-position:0 -560px;z-index:-1;opacity:.99}.login-container[data-v-a6617242]{margin-top:10vh;margin-bottom:7vh;background-color:#fff;padding:17.5px;border-radius:25px;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);height:5vh;display:flex;justify-content:center;align-items:center;transform:translateY(19vh)}.login-container h4[data-v-a6617242]{font-size:25px;color:#000;font-weight:700}.el-dialog__title[data-v-a6617242]{font-weight:700}.login-container img[data-v-a6617242]{width:40px;height:40px}a[data-v-a6617242]{color:#0ea27e}h3[data-v-a6617242]{font-size:15.5px;color:#0ea27e}.van-field__label[data-v-a6617242]{width:150px;font-size:14.6px}.van-button--round[data-v-a6617242]{border-radius:14px}.bottom[data-v-a6617242]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;margin-top:10px}.van-field__label[data-v-a6617242] .label{font-size:18.6px}.van-field__error-message[data-v-a6617242]{color:var(--van-field-error-message-color);font-size:var(--van-field-error-message-font-size);text-align:center}@media only screen and (max-width:767px){.content_login[data-v-a6617242]{flex:1;display:flex;background:#fff;zoom:1;width:100vw;height:100vh;overflow-x:hidden;flex-direction:column}body[data-v-a6617242]{font-family:Arial,sans-serif;background-color:#f2f2f2}.van-cell[data-v-a6617242]{box-shadow:1px 1px 1px #0ea27e;border-radius:14px;width:98%}.userName[data-v-a6617242]{font-size:14.6px;font-weight:700}.van-button--round[data-v-a6617242]{border-radius:14px}.container[data-v-a6617242]{width:322px;height:auto;margin:0 auto;background-color:#fff;transform:translateY(13vh);border-radius:14px}input[type=submit][data-v-a6617242]{width:100%;padding:14px;background-color:#0ea27e;color:#fff;border:none;border-radius:14px;cursor:pointer;font-weight:700}input[type=submit][data-v-a6617242]:hover{background-color:#0ea27e}#background[data-v-a6617242]{width:100%;height:100vh;position:absolute;top:0;left:0;background-size:cover;background-position:0 -560px;z-index:-1;opacity:.99}.login-container[data-v-a6617242]{margin-top:3vh;margin-bottom:7vh;background-color:#fff;padding:17.5px;border-radius:25px;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);height:5vh;display:flex;justify-content:center;align-items:center;transform:translateY(19vh)}.login-container h4[data-v-a6617242]{font-size:20px;color:#000;font-weight:700}.login-container img[data-v-a6617242]{width:40px;height:40px}a[data-v-a6617242]{color:#0ea27e}h3[data-v-a6617242]{font-size:15.5px;color:#0ea27e}.van-field__label[data-v-a6617242]{width:150px;font-size:14.6px}.bottom[data-v-a6617242]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;margin-top:10px}.van-field__label[data-v-a6617242] .label{font-size:18.6px}}
\ No newline at end of file
diff --git a/rearServer/src/main/resources/static/css/98.7bb6ef32.css b/rearServer/src/main/resources/static/css/813.7bb6ef32.css
similarity index 100%
rename from rearServer/src/main/resources/static/css/98.7bb6ef32.css
rename to rearServer/src/main/resources/static/css/813.7bb6ef32.css
diff --git a/rearServer/src/main/resources/static/index.html b/rearServer/src/main/resources/static/index.html
index f290e7d..e5bc2c7 100644
--- a/rearServer/src/main/resources/static/index.html
+++ b/rearServer/src/main/resources/static/index.html
@@ -1 +1 @@
-
Welcome to PandoraNext-TokensTool
\ No newline at end of file
+Welcome to PandoraNext-TokensTool
\ No newline at end of file
diff --git a/rearServer/src/main/resources/static/js/386.27cc819e.js b/rearServer/src/main/resources/static/js/386.27cc819e.js
deleted file mode 100644
index 55f83d5..0000000
--- a/rearServer/src/main/resources/static/js/386.27cc819e.js
+++ /dev/null
@@ -1,2 +0,0 @@
-"use strict";(self["webpackChunkPandoraNext_TokensTool"]=self["webpackChunkPandoraNext_TokensTool"]||[]).push([[386],{386:function(e,l,a){a.r(l),a.d(l,{default:function(){return ht}});var o=a(299),t=(a(8845),a(6773)),n=(a(487),a(2876)),u=(a(492),a(5185)),i=(a(3349),a(5267)),r=(a(1645),a(7630)),s=(a(7034),a(3164)),d=(a(6335),a(157)),m=(a(1897),a(6907)),c=(a(4746),a(294)),p=(a(6870),a(560),a(6252)),v=a(3577),h=a(2262),_=a(1094),w=a(2201),k=a(6154),b=a(844),f=a(1348),g=a(9288),y=a(2534),V=a(3028),W=a(4708),T=a(1893);const x={class:"content"},U=(0,p._)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no"},null,-1),H=(0,p._)("img",{style:{width:"25px"},src:_},null,-1),A={class:"home-container"},z=(0,p._)("div",{class:"flex-grow"},null,-1),P=(0,p._)("a",{href:"https://ai.fakeopen.com/auth"},"PandoraNext地址",-1),S=(0,p._)("a",{href:"https://chat.openai.com/api/auth/session"},"OpenAI官网",-1),N=(0,p._)("a",{href:"https://github.com/Yanyutin753/PandoraNext-TokensTool"},"TokensTool地址",-1),O={style:{display:"block"}},C=(0,p._)("div",{class:"flex items-center"},[(0,p._)("span",{class:"font-h4"},"PandoraNext-TokensTool "),(0,p._)("span",{class:"font-h4-tag"},"v0.6.8 ")],-1),$={class:"under"},I={class:"search"},B={style:{display:"flex",margin:"0px 0px -20px 0px"}},D={style:{display:"flex",width:"88vw",height:"63vh",transform:"translateX(0vw)"}},q={style:{display:"flex","align-items":"center"}},j={style:{"margin-left":"15px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},L={style:{"margin-left":"15px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},M={style:{margin:"13px",transform:"translateX(7px)"}},Z=(0,p._)("h1",null,"批量操作",-1),J=(0,p._)("br",null,null,-1),K={style:{display:"block"}},E=(0,p._)("br",null,null,-1),R=(0,p._)("br",null,null,-1),Y=(0,p._)("br",null,null,-1),X={key:0},F=(0,p._)("br",null,null,-1),G=(0,p._)("br",null,null,-1),Q={key:0},ee=(0,p._)("br",null,null,-1),le=(0,p._)("br",null,null,-1),ae={key:1},oe=(0,p._)("br",null,null,-1),te=(0,p._)("br",null,null,-1),ne=(0,p._)("br",null,null,-1),ue={style:{margin:"5.2px"}},ie=(0,p._)("br",null,null,-1),re={style:{display:"block"}},se=(0,p._)("br",null,null,-1),de=(0,p._)("br",null,null,-1),me=(0,p._)("br",null,null,-1),ce=(0,p._)("br",null,null,-1),pe={key:0},ve=(0,p._)("br",null,null,-1),he={key:1},_e=(0,p._)("br",null,null,-1),we={key:0},ke=(0,p._)("br",null,null,-1),be=(0,p._)("br",null,null,-1),fe={key:2},ge=(0,p._)("br",null,null,-1),ye={key:3},Ve=(0,p._)("br",null,null,-1),We=(0,p._)("br",null,null,-1),Te={style:{margin:"5.2px"}},xe=(0,p._)("br",null,null,-1),Ue={style:{display:"block"}},He=(0,p._)("br",null,null,-1),Ae=(0,p._)("br",null,null,-1),ze=(0,p._)("br",null,null,-1),Pe=(0,p._)("br",null,null,-1),Se=(0,p._)("br",null,null,-1),Ne=(0,p._)("br",null,null,-1),Oe=(0,p._)("br",null,null,-1),Ce=(0,p._)("br",null,null,-1),$e=(0,p._)("br",null,null,-1),Ie=(0,p._)("br",null,null,-1),Be={key:0},De=(0,p._)("br",null,null,-1),qe=(0,p._)("br",null,null,-1),je={key:0},Le=(0,p._)("br",null,null,-1),Me={style:{display:"block"}},Ze=(0,p._)("br",null,null,-1),Je=(0,p._)("br",null,null,-1),Ke=(0,p._)("br",null,null,-1),Ee=(0,p._)("br",null,null,-1),Re=(0,p._)("br",null,null,-1),Ye=(0,p._)("br",null,null,-1),Xe={key:0},Fe=(0,p._)("br",null,null,-1),Ge=(0,p._)("br",null,null,-1),Qe=(0,p._)("br",null,null,-1),el=(0,p._)("br",null,null,-1),ll=(0,p._)("br",null,null,-1),al=(0,p._)("br",null,null,-1),ol=(0,p._)("br",null,null,-1),tl=(0,p._)("br",null,null,-1),nl={style:{margin:"5.2px"}},ul=(0,p._)("br",null,null,-1),il={style:{display:"block"}},rl=(0,p._)("br",null,null,-1),sl=(0,p._)("br",null,null,-1),dl=(0,p._)("br",null,null,-1),ml=(0,p._)("br",null,null,-1),cl=(0,p._)("br",null,null,-1),pl=(0,p._)("br",null,null,-1),vl=(0,p._)("br",null,null,-1),hl=(0,p._)("br",null,null,-1),_l={key:0},wl=(0,p._)("br",null,null,-1),kl=(0,p._)("br",null,null,-1),bl=(0,p._)("br",null,null,-1),fl={style:{margin:"5.2px"}},gl=(0,p._)("br",null,null,-1),yl={style:{display:"block"}},Vl=(0,p._)("br",null,null,-1),Wl=(0,p._)("br",null,null,-1),Tl=(0,p._)("br",null,null,-1),xl=(0,p._)("br",null,null,-1),Ul=(0,p._)("br",null,null,-1),Hl=(0,p._)("br",null,null,-1),Al=(0,p._)("br",null,null,-1),zl=(0,p._)("br",null,null,-1),Pl={style:{margin:"5.2px"}},Sl=(0,p._)("br",null,null,-1),Nl={style:{display:"flex",transform:"translate(0vw, -2vh)"}},Ol={style:{display:"flex",transform:"translate(calc(-2.5% - 20px), 0vh)",width:"calc(102.5% + 40px)"}},Cl={style:{"margin-left":"10px",display:"flex","align-items":"center"}},$l={key:0},Il=(0,p._)("h5",null,"oneApi4",-1),Bl={key:1},Dl=(0,p._)("h5",null,"oneApi3",-1),ql={key:2},jl=(0,p._)("h5",null,"Json",-1),Ll={style:{"margin-left":"20px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Ml={style:{display:"flex","align-items":"center",overflow:"auto"}},Zl={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Jl=(0,p._)("span",{style:{"margin-left":"0px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},"点击此进行查看",-1),Kl={style:{margin:"10px 0px 10px 0px"}},El=(0,p._)("h1",null,"批量操作",-1),Rl=(0,p._)("br",null,null,-1),Yl={style:{display:"block"}},Xl=(0,p._)("br",null,null,-1),Fl=(0,p._)("br",null,null,-1),Gl=(0,p._)("br",null,null,-1),Ql=(0,p._)("br",null,null,-1),ea={style:{display:"block"}},la=(0,p._)("br",null,null,-1),aa={key:0},oa=(0,p._)("br",null,null,-1),ta=(0,p._)("br",null,null,-1),na=(0,p._)("br",null,null,-1),ua=(0,p._)("br",null,null,-1),ia=(0,p._)("br",null,null,-1),ra=(0,p._)("br",null,null,-1),sa={style:{margin:"5.2px"}},da=(0,p._)("br",null,null,-1),ma={style:{display:"block"}},ca=(0,p._)("br",null,null,-1),pa={key:0},va=(0,p._)("br",null,null,-1),ha={style:{transform:"translateX(16px)"}},_a=(0,p._)("br",null,null,-1),wa=(0,p._)("br",null,null,-1),ka=(0,p._)("br",null,null,-1),ba=(0,p._)("br",null,null,-1),fa={style:{"margin-bottom":"5px"}},ga={style:{"margin-bottom":"5px"}},ya=(0,p._)("br",null,null,-1),Va=(0,p._)("br",null,null,-1),Wa={style:{margin:"5.2px"}},Ta=(0,p._)("br",null,null,-1),xa={style:{display:"flex",transform:"translate(calc(-2.5% - 20px), 0vh)",width:"calc(100% + 2.5% + 40px)"}},Ua={style:{display:"flex","align-items":"center"}},Ha={style:{"margin-left":"0px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Aa={style:{display:"flex","align-items":"center",overflow:"auto"}},za={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Pa={style:{display:"flex","align-items":"center",overflow:"auto"}},Sa={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Na=(0,p._)("br",null,null,-1),Oa={style:{display:"block"}},Ca=(0,p._)("br",null,null,-1),$a={style:{transform:"translateX(16px)"}},Ia=(0,p._)("br",null,null,-1),Ba=(0,p._)("br",null,null,-1),Da=(0,p._)("br",null,null,-1),qa={key:0},ja=(0,p._)("br",null,null,-1),La={style:{transform:"translateX(16px)"}},Ma=(0,p._)("br",null,null,-1),Za=(0,p._)("br",null,null,-1),Ja=(0,p._)("br",null,null,-1),Ka={style:{"margin-bottom":"5px"}},Ea={style:{"margin-bottom":"5px"}},Ra=(0,p._)("br",null,null,-1),Ya=(0,p._)("br",null,null,-1),Xa={style:{margin:"5.2px"}},Fa=(0,p._)("br",null,null,-1),Ga=(0,p._)("h1",null,"添加到OneAPI",-1),Qa={style:{display:"flex",transform:"translate(calc(-2.5% - 20px), 0vh)",width:"calc(102.5% + 40px)"}},eo={style:{"margin-left":"15px",display:"flex","align-items":"center"}},lo={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},ao={style:{display:"flex","align-items":"center",overflow:"auto"}},oo={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},to={style:{display:"flex","align-items":"center",overflow:"auto"}},no={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},uo=(0,p._)("br",null,null,-1),io={style:{display:"block"}},ro=(0,p._)("br",null,null,-1),so=(0,p._)("br",null,null,-1),mo={style:{transform:"translateX(16px)"}},co=(0,p._)("br",null,null,-1),po={style:{transform:"translateX(16px)"}},vo=(0,p._)("br",null,null,-1),ho=(0,p._)("br",null,null,-1),_o=(0,p._)("br",null,null,-1),wo={style:{"margin-bottom":"5px"}},ko={style:{"margin-bottom":"5px"}},bo=(0,p._)("br",null,null,-1),fo=(0,p._)("br",null,null,-1),go={style:{margin:"5.2px"}},yo={style:{display:"block"}},Vo=(0,p._)("br",null,null,-1),Wo=(0,p._)("br",null,null,-1),To=(0,p._)("br",null,null,-1),xo=(0,p._)("br",null,null,-1),Uo={style:{transform:"translateX(16px)"}},Ho=(0,p._)("br",null,null,-1),Ao=(0,p._)("br",null,null,-1),zo=(0,p._)("br",null,null,-1),Po=(0,p._)("br",null,null,-1),So=(0,p._)("br",null,null,-1),No={style:{display:"block"}},Oo=(0,p._)("br",null,null,-1),Co={style:{transform:"translateX(16px)"}},$o=(0,p._)("br",null,null,-1),Io={style:{transform:"translateX(16px)"}},Bo=(0,p._)("br",null,null,-1),Do=(0,p._)("br",null,null,-1),qo=(0,p._)("br",null,null,-1),jo={style:{"margin-bottom":"5px"}},Lo={style:{"margin-bottom":"5px"}},Mo=(0,p._)("br",null,null,-1),Zo=(0,p._)("br",null,null,-1),Jo={style:{margin:"5.2px"}},Ko={style:{display:"block"}},Eo=(0,p._)("br",null,null,-1),Ro=(0,p._)("br",null,null,-1),Yo=(0,p._)("br",null,null,-1),Xo=(0,p._)("br",null,null,-1),Fo=(0,p._)("br",null,null,-1),Go={key:0},Qo=(0,p._)("br",null,null,-1),et={style:{transform:"translateX(17px)"}},lt=(0,p._)("br",null,null,-1),at=(0,p._)("br",null,null,-1),ot=(0,p._)("br",null,null,-1),tt=(0,p._)("br",null,null,-1),nt={style:{"margin-bottom":"5px"}},ut={style:{"margin-bottom":"5px"}},it=(0,p._)("br",null,null,-1),rt=(0,p._)("br",null,null,-1),st='此项可选,用于修改请求体中的模型名称,\n 为一个 JSON 字符串,键为请求中模型名称,\n 值为要替换的模型名称,例如:\n {\n "gpt-3.5-turbo-301":"gpt-3.5-turbo",\n "gpt-4-8314":"gpt-4", \n "gpt-4-32k-8314":"gpt-4-32k",\n }',dt=0,mt=1,ct=2;var pt=(0,p.aZ)({__name:"homeIphone",setup(e){const l=window.location.pathname,a=l.split("/");let _="";a.length>=3&&(_="/"+a[1]);const pt=(0,h.iH)(["default","svip","vip"]),vt=(0,h.iH)(["default","svip","vip"]),ht=((0,h.iH)(),(0,h.iH)()),_t=(0,h.iH)([]),wt=(0,h.iH)([]),kt=e=>{_t.value=e},bt=e=>{wt.value=e},ft=((0,h.iH)("ALL"),(0,w.tv)()),gt=(0,h.iH)(!1),yt=(0,h.iH)(!1),Vt=(0,h.iH)(!1),Wt=(0,h.iH)(!1),Tt=(0,h.iH)(!1),xt=(0,h.iH)(!1),Ut=(0,h.iH)(!1),Ht=(0,h.iH)(!1),At=(0,h.iH)(!1),zt=(0,h.iH)(!1),Pt=(0,h.iH)(!1),St=(0,h.iH)(!1),Nt=(0,h.iH)(!1),Ot=(0,h.iH)(!1),Ct=(0,h.iH)(!1),$t=(0,h.iH)(!1),It=(0,h.iH)(!1),Bt=(0,h.iH)(!1),Dt=(0,h.iH)(""),qt=[{buttonValue:"选中删除Token",label:"选中删除Token"},{buttonValue:"选中刷新Token",label:"选中刷新Token"},{buttonValue:"选中合成pool_token",label:"选中合成pool_token"},{buttonValue:"选中修改pool_token",label:"选中修改pool_token"}],jt=((0,h.iH)(""),[{buttonModel:"gpt-3.5-turbo",label:"gpt-3.5-turbo"},{buttonModel:"gpt-4-s",label:"gpt-4-s"},{buttonModel:"gpt-4-mobile",label:"gpt-4-mobile"},{buttonModel:"gpt-4-vision",label:"gpt-4-vision"},{buttonModel:"gpt-4-classic",label:"gpt-4-classic"},{buttonModel:"gpt-4-vision-preview",label:"gpt-4-vision-preview"}]),Lt=((0,h.iH)(""),[{buttonPoolModel:"gpt-3.5-turbo",label:"gpt-3.5-turbo"},{buttonPoolModel:"gpt-4",label:"gpt-4"}]),Mt=(0,h.iH)(""),Zt=[{buttonPoolValue:"选中检查pool_token",label:"选中检查pool_token"},{buttonPoolValue:"选中删除pool_token",label:"选中删除pool_token"},{buttonPoolValue:"选中刷新pool_token",label:"选中刷新pool_token"},{buttonPoolValue:"选中更换pool_token",label:"选中更换pool_token"}],Jt=(0,h.iH)(""),Kt=(0,h.iH)("*"),Et=(0,h.iH)(""),Rt=(0,h.iH)(""),Yt=(0,h.iH)(""),Xt=(0,h.iH)(!1),Ft=(0,h.iH)(!1),Gt=(0,h.iH)(!1),Qt=(0,h.iH)(!1),en=(0,h.iH)(""),ln=(0,h.iH)(!1),an=(0,h.iH)(""),on=(0,h.iH)(""),tn=(0,h.iH)(""),nn=(0,h.iH)(""),un=(0,h.iH)(""),rn=(0,h.iH)(""),sn=(0,h.iH)(""),dn=(0,h.iH)(!1),mn=(0,h.iH)(""),cn=(0,h.iH)("PandoraNext"),pn=(0,h.iH)("default"),vn=(0,h.iH)(""),hn=(0,h.iH)(""),_n=(0,h.iH)(""),wn=(0,h.iH)(""),kn=(0,h.iH)(!1),bn=(0,h.iH)(!1),fn=(0,h.iH)(!1),gn=(0,h.iH)(!1),yn=(0,h.iH)(!1),Vn=(0,h.iH)(5),Wn=(0,h.iH)(1),Tn=(0,h.iH)(""),xn=(0,h.iH)(""),Un=(0,h.iH)(""),Hn=(0,h.iH)(""),An=(0,h.iH)(""),zn=(0,h.iH)(""),Pn=((0,h.iH)(""),(0,h.iH)("")),Sn=((0,h.iH)(!0),(0,h.iH)("")),Nn=(0,h.iH)(!1),On=(0,h.iH)(""),Cn=(0,h.iH)([]),$n=(0,h.iH)([]),In=(0,h.iH)(""),Bn=(0,h.iH)(Tn.value+Jt.value),Dn=(0,h.iH)(0),qn=(0,h.iH)(""),jn=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!!l.test(e)||"此项至少要包含8位且必须包含数字和字母"},Ln=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!(!l.test(e)&&""!=e)||"此项至少要包含8位且必须包含数字和字母"},Mn=e=>{const l=/^[\u4e00-\u9fa5a-zA-Z0-9]{3,10}$/;return!!l.test(e)||"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字"},Zn=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!(1!=hu.value&&1!=lu.value&&!l.test(e))||"此项至少要包含8位且必须包含数字和字母"},Jn=(0,h.iH)(""),Kn=(0,h.iH)(""),En=(0,h.iH)(""),Rn=(0,h.iH)(""),Yn=(0,h.iH)(""),Xn=(0,h.iH)(""),Fn=(0,h.iH)(!1),Gn=(0,h.iH)(!1),Qn=(0,h.iH)(!1),eu=(0,h.iH)(""),lu=(0,h.iH)(!1),au=(0,h.iH)(!1),ou=(0,h.iH)(!0),tu=(0,h.iH)([]),nu=(0,h.iH)([]),uu=(0,h.iH)([]),iu=(0,h.iH)([]),ru=(0,h.iH)(""),su=(0,h.iH)(""),du=(0,h.iH)(""),mu=(0,h.iH)(""),cu=(0,h.iH)(!1),pu=(0,h.iH)(!1),vu=(0,h.iH)(!1),hu=(0,h.iH)(!1),_u=(0,h.iH)(!1),wu=(0,h.iH)(""),ku=(0,h.iH)(""),bu=(0,h.iH)(""),fu=((0,h.iH)(""),(0,h.iH)("")),gu=(0,h.iH)([]),yu=(0,h.iH)(""),Vu=(0,h.iH)(["default","svip","vip"]),Wu=(0,h.iH)(0),Tu=((0,h.iH)(.085*window.innerHeight),(0,h.iH)("")),xu=((0,h.iH)(""),(0,h.iH)("")),Uu=localStorage.getItem("jwtToken");Uu||ft.replace("/");const Hu={Authorization:`Bearer ${Uu}`},Au=async()=>{k.Z.post(`https://yubb.fun${_}/api/loginToken?token=`+Uu).then((e=>{if(0==e.data.code)return console.error(e.data.data),void ft.replace("/")})).catch((e=>{console.error("请求loginToken接口失败",e),ft.replace("/")}))},zu=e=>{"Web"==e||"WEB"==e?Ou(""):"ALL"==e||"All"==e?Su(""):e.includes("API")?Nu(""):Su(e)},Pu=e=>{Iu(e)},Su=async e=>{const l=await k.Z.get(`https://yubb.fun${_}/api/selectToken?name=${e}`,{headers:Hu}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession})));tu.value=e}},Nu=async e=>{const l=await k.Z.get(`https://yubb.fun${_}/api/selectToken?name=${e}`,{headers:Hu}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession}))),l=e.filter((e=>!0===e.setPoolToken));tu.value=l}},Ou=async e=>{const l=await k.Z.get(`https://yubb.fun${_}/api/selectToken?name=${e}`,{headers:Hu}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession}))),l=e.filter((e=>!1===e.setPoolToken));tu.value=l}},Cu=async()=>{const e=await k.Z.get(`https://yubb.fun${_}/api/selectLogin`,{headers:Hu}),l=e.data.data;if(Array.isArray(l)){const e=l.map((e=>({ipAddress:e.ipAddress,requestIp:e.requestIp,outRequestNumber:e.outRequestNumber,inRequestNumber:e.inRequestNumber,lastLoginTime:e.lastLoginTime})));iu.value=e}},$u=async e=>{const l=await k.Z.get(`https://yubb.fun${_}/api/selectPoolToken?name=${e}`,{headers:Hu}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({poolName:e.poolName,poolTime:e.poolTime,poolToken:e.poolToken,shareTokens:e.shareTokens,checkPool:e.checkPool,intoOneApi:e.intoOneApi,poolOneApi_models:e.poolOneApi_models,poolModel_mapping:e.poolModel_mapping,oneApi_pandoraUrl:e.oneApi_pandoraUrl,groupChecked:e.groupChecked,priority:e.priority})));nu.value=e}},Iu=async e=>{const l=V.kN.service({fullscreen:!0}),a=await k.Z.get(`https://yubb.fun${_}/api/selectShareToken?name=${e}`,{headers:Hu}),o=a.data.data;if(Array.isArray(o)){const e=o.map((e=>({oneApi_name:e.oneApi_name,token_name:e.token_name,token_value:e.token_value,oneApi_baseUrl:e.oneApi_baseUrl,oneApi_models:e.oneApi_models,model_mapping:e.model_mapping,oneApi_groups:e.oneApi_groups,shareTime:e.shareTime,priority:e.priority})));uu.value=e}l.close()},Bu=async e=>{const l=await k.Z.get(`https://yubb.fun${_}/api/selectSetting`,{headers:Hu}),a=l.data.data;Jt.value=a.proxy_api_prefix,Kt.value=a.isolated_conv_title,Et.value=a.bing,Rt.value=a.timeout,Yt.value=a.proxy_url,Xt.value=a.public_share,Ft.value=a.disable_signup,Gt.value=a.auto_conv_arkose,Qt.value=a.proxy_file_service,en.value=a.custom_doh_host,ln.value=a.tls.enabled,an.value=a.tls.cert_file,on.value=a.tls.key_file,tn.value=a.site_password,nn.value=a.setup_password,null==a.whitelist?vn.value="null":vn.value=a.whitelist,un.value=a.loginUsername,rn.value=a.loginPassword,sn.value=a.license_id,dn.value=a.isGetToken,mn.value=a.getTokenPassword,cn.value=a.containerName,pn.value=a.autoToken_url,hn.value=a.validation.provider,_n.value=a.validation.site_key,wn.value=a.validation.site_secret,kn.value=a.validation.site_login,bn.value=a.validation.setup_login,fn.value=a.validation.oai_username,gn.value=a.validation.oai_password,yn.value=a.auto_updateSession,Vn.value=a.auto_updateTime,Wn.value=a.auto_updateNumber,Tn.value=a.pandoraNext_outUrl,Tn.value.endsWith("/")?Bn.value=Tn.value+Jt.value:Bn.value=Tn.value+"/"+Jt.value,xn.value=a.oneAPi_outUrl,Un.value=a.oneAPi_intoToken,Du()},Du=async()=>{"123456"==rn.value&&"root"==un.value&&(b.T.alert("请先修改默认的初始账号和密码,并填写相应的信息,具体可参考网站文档!","温馨提醒",{confirmButtonText:"确定",callback:e=>{(0,f.z8)({type:"info",message:"如果不知道怎么填的话,可以看tokensTool的文档站!"})}}),Tt.value=!0,rn.value="",un.value="")},qu=()=>{const e=_t.value;0!==e.length?zt.value=!0:(0,f.z8)("未选择数据")},ju=async()=>{try{const l=_t.value,a=l.map((e=>e.name)),o=V.kN.service({fullscreen:!0});try{""==In.value&&(In.value="{}"),JSON.parse(In.value)}catch(e){return(0,f.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void o.close()}const t={poolName:Sn.value,intoOneApi:Nn.value,poolOneApi_models:$n.value.toString(),poolModel_mapping:In.value,oneApi_pandoraUrl:Bn.value,shareTokens:a,groupChecked:vt.value.toString(),priority:Dn.value},n=await fetch(`https://yubb.fun${_}/api/addPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(t)}),u=await n.json();1===u.code?(Sn.value="",$u(""),(0,f.z8)({type:"success",message:u.data}),Sn.value="",Nn.value=!1,vt.value=["default","svip","vip"],Dn.value=0,In.value="",$n.value=[]):(0,f.z8)({type:"info",message:u.msg}),o.close()}catch(l){(0,f.z8)({type:"info",message:"取消生成pool_token"})}zt.value=!1},Lu=e=>{let l=nu.value.find((l=>l.poolName===e));null!=l&&(qn.value=l.poolToken,Nn.value=l.intoOneApi,Cn.value=l.poolOneApi_models.split(","),On.value=l.poolModel_mapping,Bn.value=l.oneApi_pandoraUrl,pt.value=l.groupChecked.split(","),Dn.value=l.priority)},Mu=e=>{tu.value.find((l=>l.name===e&&!0===l.setPoolToken))},Zu=(0,p.Fl)((()=>tu.value.filter((e=>!0===e.setPoolToken)))),Ju=async()=>{try{const l=V.kN.service({fullscreen:!0});try{""==On.value&&(On.value="{}"),JSON.parse(On.value)}catch(e){return(0,f.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void l.close()}const a=_t.value,o=a.map((e=>e.name)),t={poolName:Hn.value,poolToken:qn.value,intoOneApi:Nn.value,poolOneApi_models:Cn.value.toString(),poolModel_mapping:On.value,oneApi_pandoraUrl:Bn.value,shareTokens:o,groupChecked:pt.value.toString(),priority:Dn.value};console.log(t);const n=await fetch(`https://yubb.fun${_}/api/requirePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(t)}),u=await n.json();1===u.code?($u(""),(0,f.z8)({type:"success",message:u.data}),Hn.value="",qn.value="",Nn.value=!1,Cn.value=[],On.value="",vt.value=["default","svip","vip"],Dn.value=0):(0,f.z8)({type:"info",message:u.msg}),l.close()}catch(l){(0,f.z8)({type:"info",message:"取消修改pool_token"})}St.value=!1},Ku=async()=>{const e=V.kN.service({fullscreen:!0});try{try{""==yu.value&&(yu.value="{}"),JSON.parse(yu.value)}catch(l){return(0,f.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void e.close()}const a={oneApi_name:ku.value,token_name:bu.value,oneApi_baseUrl:fu.value,oneApi_models:gu.value.toString(),model_mapping:yu.value,oneApi_groups:Vu.value.toString(),priority:Dn.value},o=await fetch(`https://yubb.fun${_}/api/addShareToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}),t=await o.json();1===t.code?(Iu(""),(0,f.z8)({type:"success",message:t.data}),ku.value="",bu.value="",fu.value="",gu.value=[],yu.value="",Vu.value=["default","svip","vip"],Dn.value=0):(0,f.z8)({type:"info",message:t.msg})}catch(a){(0,f.z8)({type:"info",message:"取消修改pool_token"})}Ct.value=!1,e.close()},Eu=(0,h.iH)("");(0,p.bv)((async()=>{const e=V.kN.service({fullscreen:!0});Au(),window.innerWidth<=900?ft.replace("/iphone"):ft.replace("/home");try{await Promise.all([zu(Tu.value),$u(Tu.value),Bu(Tu.value)]);const e=await k.Z.get(`https://yubb.fun${_}/api/getPandoraNext`,{headers:Hu}),l=e.data.data;null!=l&&(Eu.value=`${l.current}/${l.total}`)}catch(l){console.error("An error occurred:",l)}finally{e.close()}}));const Ru=({row:e})=>0==e.checkSession?"warning-row":"",Yu=({row:e})=>0==e.checkPool?"warning-row":"",Xu=()=>{window.open(Tn.value)},Fu=()=>{var e=Tn.value;"/"!==e.charAt(e.length-1)&&(e+="/"),window.open(e+"shared.html")},Gu=()=>{var e=Tn.value;"/"!==e.charAt(e.length-1)&&(e+="/"),window.open(e+"setup")},Qu=()=>{window.open("https://apifox.com/apidoc/shared-40345b46-9c9c-45cc-b494-6a6a387a978f")},ei=(0,h.iH)("-1");let li="";const ai=(e,l)=>{console.log("选择准备!")},oi=()=>{yt.value=!0},ti=()=>{const e=V.kN.service({fullscreen:!0}),l=new Date,a=`${l.getFullYear()}-${(l.getMonth()+1).toString().padStart(2,"0")}-${l.getDate().toString().padStart(2,"0")} ${l.getHours().toString().padStart(2,"0")}:${l.getMinutes().toString().padStart(2,"0")}:${l.getSeconds().toString().padStart(2,"0")}`;""!=wu.value&&(cu.value=!1,vu.value=!1,pu.value=!1),0==hu.value&&(mu.value=su.value+","+du.value,_u.value=!1,cu.value=!1,vu.value=!1,pu.value=!1);let o={name:ru.value,token:mu.value,username:su.value,userPassword:du.value,shared:cu.value,auto_shared:cu.value,show_user_info:pu.value,plus:vu.value,setPoolToken:hu.value,useRefreshToken:_u.value,password:wu.value,updateTime:a};fetch(`https://yubb.fun${_}/api/addToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(o)}).then((e=>e.json())).then((l=>{1==l.code?(f.z8.success("添加成功!"),ru.value="",mu.value="",su.value="",du.value="",cu.value=!1,pu.value=!1,vu.value=!1,hu.value=!1,_u.value=!1,wu.value="",""==o.token&&(o.token=l.data,f.z8.success("已为您自动装填token!"))):f.z8.error(l.msg),wu.value="",Su(""),e.close()})).catch((l=>{f.z8.error("获取账号出现问题,请检查刷新网址是否正确!"),e.close()})),yt.value=!1},ni=(0,h.iH)(null),ui=async e=>{if(Jn.value=e.name,Yn.value=e.username,Xn.value=e.userPassword,Kn.value=e.token,En.value=e.access_token,Rn.value=e.share_token,Fn.value=e.shared,Gn.value=e.show_user_info,Qn.value=e.plus,eu.value=e.password,lu.value=e.setPoolToken,au.value=e.useRefreshToken,ou.value=e.checkSession,1!=lu.value)return void(Vt.value=!0);const l={Authorization:`Bearer ${e.access_token}`};if(Vt.value=!0,lu.value){const a=await k.Z.get(`${Bn.value}/api/token/info/${e.share_token}`,{headers:l});let o=[],t=[];for(let e in a.data.usage)e.startsWith("range")||(t.push(e),o.push(a.data.usage[e]));0==t.length&&0==o.length&&(t=["gpt-4","gpt-3.5-turbo","gpt-3.5-turbo-0613"],o=[0,0,0]);const n=T.S1(ni.value),u={title:{text:`今日${a.data.usage["range"]} ${Jn.value}各模型用量`,textStyle:{fontSize:14,color:"#606266"},left:"center",top:"bottom"},tooltip:{},legend:{data:t},xAxis:{data:t},yAxis:{},series:[{name:"对话数量",type:"bar",data:o,barWidth:"25%",itemStyle:{color:function(e){const l=["#3498db","#2ecc71","#f1c40f","#9b59b6","#1abc9c","#e67e22","#ecf0f1","#95a5a6","#34495e","#16a085"];return l[e.dataIndex%l.length]}}}]};n.setOption(u)}},ii=(0,h.iH)(""),ri=(0,h.iH)(""),si=(0,h.iH)(""),di=(0,h.iH)(""),mi=(0,h.iH)([]),ci=(0,h.iH)(""),pi=(0,h.iH)(""),vi=(0,h.iH)(""),hi=(0,h.iH)(["default","svip","vip"]),_i=(0,h.iH)(""),wi=e=>{ii.value=e.oneApi_name,ri.value=e.token_name,si.value=e.token_value,di.value=e.oneApi_baseUrl,pi.value=e.oneApi_models,ci.value=e.model_mapping,vi.value=e.oneApi_groups,Dn.value=e.priority,_i.value=e.shareTime,$t.value=!0};let ki=!1,bi=!1,fi="";const gi=(e,l)=>{Jn.value=l.name,Yn.value=l.username,Xn.value=l.userPassword,Kn.value=l.token,li=l.token,Fn.value=l.shared,Gn.value=l.show_user_info,Qn.value=l.plus,eu.value=l.password,lu.value=l.setPoolToken,au.value=l.useRefreshToken,ki=lu.value,bi=au.value,fi=Kn.value,ou.value=l.checkSession,En.value=l.access_token,Rn.value=l.share_token,gt.value=!0},yi=async e=>{0==e?Wt.value=!0:1==e?Tt.value=!0:2==e&&(xt.value=!0)},Vi=e=>{const l=V.kN.service({fullscreen:!0});null!=vn.value&&"null"!=vn.value||(vn.value=""),0==ln.value&&(an.value="",on.value="");const a={enabled:ln.value,cert_file:an.value,key_file:on.value},o={provider:hn.value,site_key:_n.value,site_secret:wn.value,site_login:kn.value,setup_login:bn.value,oai_username:fn.value,oai_password:gn.value},t={proxy_api_prefix:Jt.value,isolated_conv_title:Kt.value,bing:Et.value,timeout:Rt.value,proxy_url:Yt.value,public_share:Xt.value,site_password:tn.value,setup_password:nn.value,loginUsername:un.value,loginPassword:rn.value,license_id:sn.value,disable_signup:Ft.value,auto_conv_arkose:Gt.value,proxy_file_service:Qt.value,custom_doh_host:en.value,isGetToken:dn.value,getTokenPassword:mn.value,containerName:cn.value,autoToken_url:pn.value,whitelist:vn.value,validation:o,tls:a};fetch(`https://yubb.fun${_}/api/requireSetting`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(t)}).then((e=>e.json())).then((e=>{1==e.code?f.z8.success(e.data):f.z8.error(e.msg),Au(),l.close()})).catch((e=>{l.close(),console.error("请求requireSetting接口失败",e),f.z8.error("修改失败!")})),0==e?Wt.value=!1:1==e?Tt.value=!1:2==e&&(xt.value=!1)},Wi=()=>{const e=V.kN.service({fullscreen:!0});"/"!==Tn.value.charAt(Tn.value.length-1)&&(Tn.value+="/");const l={auto_updateSession:yn.value,auto_updateTime:Vn.value,auto_updateNumber:Wn.value,pandoraNext_outUrl:Tn.value,oneAPi_outUrl:xn.value,oneAPi_intoToken:Un.value};fetch(`https://yubb.fun${_}/api/controllerTask`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>e.json())).then((l=>{1==l.code?f.z8.success(l.data):f.z8.error(l.msg),e.close()})).catch((l=>{e.close(),console.error("请求controllerTask接口失败",l),f.z8.error("修改失败!")})),At.value=!1},Ti=()=>{const e=V.kN.service({fullscreen:!0});let l="";if(li!=Kn.value){const e=new Date;l=`${e.getFullYear()}-${(e.getMonth()+1).toString().padStart(2,"0")}-${e.getDate().toString().padStart(2,"0")} ${e.getHours().toString().padStart(2,"0")}:${e.getMinutes().toString().padStart(2,"0")}:${e.getSeconds().toString().padStart(2,"0")}`}0==lu.value&&(Fn.value=!1,Qn.value=!1,Gn.value=!1,au.value=!1),!0===Fn.value?eu.value="":(Qn.value=!1,Gn.value=!1);let a="";a=ki!=lu.value&&fi==Kn.value?0==lu.value?"您确定要关闭API模型开启web模式,您将无法生成任何的token,但不消耗额度!":1==au.value?"您确定要开启API模式,并使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!":"您确定要开启API模式,并使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!":bi!=au.value&&fi==Kn.value?1==au.value?"您确定要切换使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!":"您确定要切换使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!":"修改将要提交,您确定修改好了吗?",b.T.confirm(a,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const l={name:Jn.value,token:Kn.value,username:Yn.value,userPassword:Xn.value,shared:Fn.value,auto_shared:Fn.value,show_user_info:Gn.value,plus:Qn.value,setPoolToken:lu.value,useRefreshToken:au.value,checkSession:ou.value,password:eu.value,access_token:En.value,share_token:Rn.value};fetch(`https://yubb.fun${_}/api/requiredToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>e.json())).then((l=>{1==l.code?(f.z8.success(l.data),Su("")):f.z8.error(l.msg),e.close()})).catch((l=>{e.close(),console.error("请求requireToken接口失败",l),f.z8.error("修改失败!")})),gt.value=!1})).catch((()=>{e.close(),(0,f.z8)({type:"info",message:"编辑取消!"})}))},xi=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${_}/api/open`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?b.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.data.msg),e.close()},Ui=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${_}/api/close`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?b.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.data.msg),e.close()},Hi=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${_}/api/restart`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?b.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.data.msg),e.close()},Ai=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${_}/api/reload`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?b.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.data.msg),e.close()},zi=(0,h.iH)(""),Pi=(0,h.iH)(""),Si=async()=>{const e=await k.Z.get(`https://yubb.fun${_}/api/getPandoraNext`,{headers:Hu}),l=e.data.data;if(null!=l){Eu.value=l.current+"/"+l.total,zi.value=l.ip;var a=new Date;const e=new Date(a.getTime()+1e3*l.ttl);var o=e.getFullYear(),t=e.getMonth()+1,n=e.getDate(),u=e.getHours(),i=e.getMinutes(),r=e.getSeconds();Pi.value=o+"-"+t+"-"+n+" "+u+":"+i+":"+r}Ht.value=!0},Ni=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${_}/api/updateAllToken`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?(await Promise.all([Su(""),$u("")]),b.T.alert(a,"温馨提示",{dangerouslyUseHTMLString:!0})):f.z8.error(l.data.msg),e.close()},Oi=e=>{if(0==e.setPoolToken)return void f.z8.error("未开启API模式,无法刷新");let l="您确定要刷新session_token吗,刷新session_token消耗100额度,请您要仔细认真考虑哦!";e.useRefreshToken&&(l="您确定要刷新refresh_token吗,刷新refresh_token消耗1000额度,请您要仔细认真考虑哦!"),b.T.confirm(l,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const l=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/updateSessionToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((a=>{null!=a&&""!=a&&(null!=a.data?(e.token=a.data,Su(""),b.T.alert("刷新成功!","温馨提醒",{confirmButtonText:"OK"})):f.z8.error(a.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))})).catch((()=>{(0,f.z8)({type:"info",message:"刷新取消!"})}))},Ci=e=>{const l=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/refreshSimplyPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?($u(""),b.T.alert("刷新成功!","温馨提醒",{confirmButtonText:"OK"})):f.z8.error(e.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},$i=e=>{ii.value=e.oneApi_name,ri.value=e.token_name,si.value=e.token_value,di.value=e.oneApi_baseUrl,mi.value=e.oneApi_models.split(","),ci.value=e.model_mapping,hi.value=e.oneApi_groups.split(","),Dn.value=e.priority,_i.value=e.shareTime,It.value=!0},Ii=()=>{const e=V.kN.service({fullscreen:!0}),l={oneApi_name:ii.value,token_name:ri.value,token_value:si.value,oneApi_baseUrl:di.value,oneApi_models:mi.value.toString(),model_mapping:ci.value,oneApi_groups:hi.value.toString(),priority:Dn.value};fetch(`https://yubb.fun${_}/api/requireShareToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?b.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.msg)),Iu(""),e.close()})).catch((l=>{e.close(),console.error("Error:",l)})),It.value=!1},Bi=e=>{if(0==e.setPoolToken)return void f.z8.error("未开启API模式,无法生成");const l=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/updateToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?b.T.alert("生成shareToken成功!","温馨提醒",{confirmButtonText:"OK"}):f.z8.error(e.msg)),Su(""),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},Di=e=>{const l=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/changePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?($u(""),b.T.alert("更换pool_token成功!","温馨提醒",{confirmButtonText:"OK"})):f.z8.error(e.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},qi=(e,l)=>{const a=V.kN.service({fullscreen:!0});b.T.confirm("您确定要删除这个Pool_Token吗,删除之后就找不到咯,请您要仔细认真考虑哦!","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{fetch(`https://yubb.fun${_}/api/deletePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e.data?($u(""),f.z8.success(e.data),a.close()):($u(""),f.z8.error(e.msg),a.close()),zt.value=!1})).catch((e=>{console.error("删除失败",e),$u(""),a.close(),zt.value=!1}))})).catch((()=>{a.close(),(0,f.z8)({type:"info",message:"删除取消!"})}))},ji=(e,l)=>{const a=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/verifySimplyPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?($u(""),b.T.alert(e.data,"温馨提醒",{confirmButtonText:"OK"})):($u(""),f.z8.error(e.msg))),a.close()})).catch((e=>{a.close(),console.error("Error:",e)}))},Li=(e,l)=>{const a=V.kN.service({fullscreen:!0});let o="";b.T.confirm("您确定要删除这个Token吗,删除之后就找不到咯,记得点击全部刷新poolToken","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`https://yubb.fun${_}/api/deleteToken`,l,{headers:Hu}).then((async e=>{1==l.setPoolToken&&await k.Z.get(`https://yubb.fun${_}/api/updateAllPoolToken`,{headers:Hu}),o=e.data.data,Su(""),(0,f.z8)({type:"success",message:o}),a.close()})).catch((e=>{a.close(),console.error("删除失败",e)}))})).catch((()=>{(0,f.z8)({type:"info",message:"删除取消!"}),a.close()}))},Mi=(e,l)=>{const a=V.kN.service({fullscreen:!0});let o="";b.T.confirm("您确定要删除这个share_Token吗,删除之后就找不到咯","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`https://yubb.fun${_}/api/deleteShareToken`,l,{headers:Hu}).then((async e=>{o=e.data.data,Iu(""),(0,f.z8)({type:"success",message:o}),a.close()})).catch((e=>{a.close(),console.error("删除失败",e)}))})).catch((()=>{(0,f.z8)({type:"info",message:"删除取消!"}),a.close()}))},Zi=e=>{if(!e)return"";var l=new Date;const a=(0,g.Z)(e.updateTime),o=(0,y.Z)(l,a);return e.token.length>=2e3?o>=80?"已经过去了至少80天":Math.ceil(80-o)+"天":e.token.length<200&&!e.token.includes("fk-")?"永久":o>=10?"已经过去了至少10天":Math.ceil(10-o)+"天"},Ji=()=>{localStorage.removeItem("jwtToken"),ft.replace("/")},Ki=()=>{Ut.value=!0},Ei=async()=>{await Iu(""),Ot.value=!0},Ri=()=>{Cu(),Pt.value=!0},Yi=e=>{const l=document.createElement("textarea");l.value=e,document.body.appendChild(l),l.select(),document.execCommand("copy"),document.body.removeChild(l),(0,f.z8)({type:"success",message:"复制成功!"})},Xi=e=>{const l=_t.value,a=l.map((e=>e));if(0!==l.length)if("选中删除Token"!=e)if("选中刷新Token"!=e)"选中合成pool_token"==e?qu():"选中修改pool_token"==e&&(Hn.value="",zn.value="",qn.value="",Pn.value="",Nn.value=!1,Cn.value=[],On.value="",Bn.value="",pt.value=[],Dn.value=0,St.value=!0);else{let e=0;const l=_t.value,a=l.map((e=>e));a.forEach(((l,a)=>{l.setPoolToken&&(l.useRefreshToken?e+=1e3:e+=100)}));const o="您确定要花"+e+"积分刷新这"+l.length+"个Token吗,请您要仔细认真考虑哦!";b.T.confirm(o,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/updateSessionTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(Su(""),b.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"刷新取消!"})}))}else{const e=V.kN.service({fullscreen:!0});let o="";b.T.confirm("您确定要删除这"+l.length+"个Token吗,删除之后就找不到咯","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`https://yubb.fun${_}/api/deleteTokenList`,a,{headers:Hu}).then((async l=>{await k.Z.get(`https://yubb.fun${_}/api/updateAllPoolToken`,{headers:Hu}),o=l.data.data,Su(""),(0,f.z8)({type:"success",message:o}),e.close()})).catch((l=>{e.close(),console.error("删除失败",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"删除取消!"}),e.close()}))}else(0,f.z8)("未选择数据")},Fi=e=>{An.value=e.poolName,zn.value=e.shareTokens,qn.value=e.poolToken,Pn.value=e.poolTime,Nn.value=e.intoOneApi,Cn.value=e.poolOneApi_models.split(","),On.value=e.poolModel_mapping,Bn.value=e.oneApi_pandoraUrl,pt.value=e.groupChecked.split(","),Dn.value=e.priority,Bt.value=!0},Gi=e=>{const l=wt.value,a=l.map((e=>e));if(0!==a.length)if("选中检查pool_token"!=e)if("选中刷新pool_token"!=e)if("选中更换pool_token"!=e)if("选中删除pool_token"!=e);else{l.length;const e="您确定要删除这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";b.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/deletePoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?($u(""),b.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"删除取消!"})}))}else{l.length;const e="您确定要更换这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";b.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/changePoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?($u(""),b.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"更换取消!"})}))}else{const e="您确定要刷新这"+l.length+"个pool_token吗?";b.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/refreshSimplyPoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?($u(""),b.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"刷新取消!"})}))}else{let e=4*l.length;const o="您确定要花"+e+"积分检查这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";b.T.confirm(o,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/verifySimplyPoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?($u(""),b.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"检查取消!"})}))}else(0,f.z8)("未选择数据")},Qi=(0,h.iH)(null),er=async()=>{Nt.value=!0;const e=await k.Z.get(`https://yubb.fun${_}/api/modelsUsage`,{headers:Hu});let l=e.data.data.map((e=>e.usage)),a=e.data.data.map((e=>e.model));const o=T.S1(Qi.value),t={title:{text:"copilot每日对话统计",fontSize:18,color:"#606266"},tooltip:{},legend:{data:a},xAxis:{data:a},yAxis:{},series:[{name:"对话数量",type:"bar",data:l,barWidth:"40%",itemStyle:{color:function(e){const l=["#3498db","#2ecc71","#f1c40f","#9b59b6","#1abc9c","#e67e22","#ecf0f1","#95a5a6","#34495e","#16a085"];return l[e.dataIndex%l.length]}}}]};o.setOption(t)};return(e,l)=>{const a=c.JO,_=(0,p.up)("el-menu-item"),w=(0,p.up)("el-sub-menu"),k=(0,p.up)("el-menu"),b=m.zx,f=(0,p.up)("el-page-header"),g=d.ol,y=(0,p.up)("el-table-column"),V=(0,p.up)("el-button"),T=(0,p.up)("el-tag"),_t=(0,p.up)("el-popover"),wt=(0,p.up)("el-option"),ft=(0,p.up)("el-select"),Pn=s.gN,ou=r.rs,Uu=i.TS,Hu=u.l0,Au=n.Vq,Su=(0,p.up)("CopyDocument"),Nu=(0,p.up)("el-icon"),Ou=(0,p.up)("h10"),Cu=(0,p.up)("el-select-group"),$u=(0,p.up)("el-dialog"),Iu=(0,p.up)("el-form-item"),Bu=(0,p.up)("el-input"),Du=t.XZ,qu=o.cO,li=(0,p.Q2)("loading");return(0,p.wg)(),(0,p.iD)(p.HY,null,[(0,p._)("div",x,[U,(0,p.Wm)(k,{"default-active":ei.value,class:"el-menu-demo",mode:"horizontal",ellipsis:!1,onSelect:ai,"active-text-color":"#0ea27e","text-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"0"},{title:(0,p.w5)((()=>[(0,p._)("div",A,[(0,p._)("h2",null,(0,v.zw)(Eu.value),1)]),(0,p.Wm)(a,{name:"replay",size:"20",onClick:Si})])),default:(0,p.w5)((()=>[H])),_:1}),z,(0,p.Wm)(w,{index:"3"},{title:(0,p.w5)((()=>[(0,p.Uk)("列表")])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"3-3",onClick:Ni},{default:(0,p.w5)((()=>[(0,p.Uk)("全部检查并生成")])),_:1}),(0,p.Wm)(_,{index:"3-1",onClick:Ki},{default:(0,p.w5)((()=>[(0,p.Uk)("pool_token列表")])),_:1}),(0,p.Wm)(_,{index:"3-2",onClick:Ei},{default:(0,p.w5)((()=>[(0,p.Uk)("share_token列表")])),_:1}),(0,p.Wm)(_,{index:"3-5",onClick:er},{default:(0,p.w5)((()=>[(0,p.Uk)("copilot每日用量统计")])),_:1}),(0,p.Wm)(_,{index:"3-4",onClick:Ri},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool登录日志")])),_:1})])),_:1}),(0,p.Wm)(w,{index:"1"},{title:(0,p.w5)((()=>[(0,p.Uk)("设置")])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"1-1",onClick:l[0]||(l[0]=e=>yi(dt))},{default:(0,p.w5)((()=>[(0,p.Uk)("PandoraNext设置")])),_:1}),(0,p.Wm)(_,{index:"1-2",onClick:l[1]||(l[1]=e=>yi(mt))},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool设置")])),_:1}),(0,p.Wm)(_,{index:"1-3",onClick:l[2]||(l[2]=e=>yi(ct))},{default:(0,p.w5)((()=>[(0,p.Uk)("验证码信息设置")])),_:1}),(0,p.Wm)(_,{index:"1-4",onClick:l[3]||(l[3]=e=>At.value=!0)},{default:(0,p.w5)((()=>[(0,p.Uk)("定时&接口设置")])),_:1}),(0,p.Wm)(_,{index:"1-5",onClick:Qu},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool使用手册")])),_:1})])),_:1}),(0,p.Wm)(w,{index:"2"},{title:(0,p.w5)((()=>[(0,p.Uk)("状态")])),default:(0,p.w5)((()=>[(0,p.Wm)(w,{index:"2-1"},{title:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(cn.value)+"状态",1)])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"2-1-1",onClick:xi},{default:(0,p.w5)((()=>[(0,p.Uk)("开启"+(0,v.zw)(cn.value),1)])),_:1}),(0,p.Wm)(_,{index:"2-1-2",onClick:Ui},{default:(0,p.w5)((()=>[(0,p.Uk)("暂停"+(0,v.zw)(cn.value),1)])),_:1}),(0,p.Wm)(_,{index:"2-1-3",onClick:Hi},{default:(0,p.w5)((()=>[(0,p.Uk)("重启"+(0,v.zw)(cn.value),1)])),_:1}),(0,p.Wm)(_,{index:"2-1-4",onClick:Ai},{default:(0,p.w5)((()=>[(0,p.Uk)("重载"+(0,v.zw)(cn.value),1)])),_:1})])),_:1}),(0,p.Wm)(w,{index:"2-2"},{title:(0,p.w5)((()=>[(0,p.Uk)("跳转Web服务")])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"2-2-1",onClick:Xu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(cn.value)+"主页",1)])),_:1}),(0,p.Wm)(_,{index:"2-2-2",onClick:Fu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(cn.value)+"共享页",1)])),_:1}),(0,p.Wm)(_,{index:"2-2-3",onClick:Gu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(cn.value)+"修改页",1)])),_:1})])),_:1}),(0,p.Wm)(w,{index:"2-3"},{title:(0,p.w5)((()=>[(0,p.Uk)("获取token地址")])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"2-3-1"},{default:(0,p.w5)((()=>[P])),_:1}),(0,p.Wm)(_,{index:"2-3-2"},{default:(0,p.w5)((()=>[S])),_:1}),(0,p.Wm)(_,{index:"2-3-3"},{default:(0,p.w5)((()=>[N])),_:1})])),_:1}),(0,p.Wm)(_,{index:"2-4",onClick:Ji},{default:(0,p.w5)((()=>[(0,p.Uk)("退出登录")])),_:1})])),_:1})])),_:1},8,["default-active"]),(0,p._)("div",O,[(0,p.Wm)(f,{icon:null,title:" "},{content:(0,p.w5)((()=>[C])),extra:(0,p.w5)((()=>[(0,p._)("div",{class:"addToken",onClick:oi},[(0,p.Wm)(b,{square:"",icon:"add-o",color:"#0ea27e",class:"addTokenButton"})])])),_:1})]),(0,p._)("div",$,[(0,p._)("div",I,[(0,p._)("div",B,[(0,p.Wm)(g,{modelValue:Tu.value,"onUpdate:modelValue":l[4]||(l[4]=e=>Tu.value=e),shape:"round",clearable:"",placeholder:"请输入搜索token名称或类型",onSearch:zu},null,8,["modelValue"])]),(0,p._)("div",D,[(0,p.wy)(((0,p.wg)(),(0,p.j4)((0,h.SU)(W.eI),{data:tu.value,style:{width:"100%"},onSelectionChange:kt,class:"tokenTable","default-sort":{prop:"updateTime",prop:"setPoolToken"},"row-class-name":Ru},{default:(0,p.w5)((()=>[(0,p.Wm)(y,{type:"selection",width:"45"}),(0,p.Wm)(y,{label:"名称",width:"160",prop:"setPoolToken",sortable:""},{default:(0,p.w5)((e=>[(0,p._)("div",q,[(0,p._)("div",null,[(0,p.Wm)(V,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[(0,p._)("h5",null,(0,v.zw)(e.row.setPoolToken?e.row.useRefreshToken?"refAPI":"sesAPI":"Web"),1)])),_:2},1024)]),(0,p._)("span",j,(0,v.zw)(e.row.name),1)])])),_:1}),(0,p.Wm)(y,{prop:"updateTime",sortable:"",label:"有效时间",width:"117"},{default:(0,p.w5)((e=>[(0,p.Wm)(_t,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p._)("div",null,"注册时间:"+(0,v.zw)(e.row.updateTime),1)])),reference:(0,p.w5)((()=>[(0,p._)("span",L,[(0,p.Wm)(T,null,{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(Zi(e.row)),1)])),_:2},1024)])])),_:2},1024)])),_:1}),(0,p.Wm)(y,{label:"操作方法",width:"370"},{default:(0,p.w5)((e=>[(0,p.Wm)(V,{size:"small",onClick:l=>gi(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("编辑")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"primary",onClick:l=>ui(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"danger",onClick:l=>Li(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"success",onClick:l=>Oi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("刷新")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"warning",onClick:l=>Bi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("生成")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])),[[li,e.loading]])]),(0,p._)("div",M,[(0,p.Wm)(ft,{modelValue:Dt.value,"onUpdate:modelValue":l[5]||(l[5]=e=>Dt.value=e),clearable:"",filterable:"",placeholder:"请选择批量操作"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(qt,(e=>(0,p.Wm)(wt,{key:e.buttonValue,label:e.label,value:e.buttonValue},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),(0,p.Wm)(V,{class:"my-button",onClick:l[6]||(l[6]=e=>Xi(Dt.value))},{default:(0,p.w5)((()=>[Z])),_:1})])])]),J]),(0,p.Wm)(Au,{show:gt.value,"onUpdate:show":l[17]||(l[17]=e=>gt.value=e),title:"📌修改token信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",K,[(0,p.Wm)(Hu,{onSubmit:l[16]||(l[16]=e=>Ti())},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[E,(0,p.Wm)(Pn,{modelValue:Yn.value,"onUpdate:modelValue":l[7]||(l[7]=e=>Yn.value=e),name:"OpenAi邮箱",label:"OpenAi邮箱","input-align":"center",placeholder:"OpenAi邮箱",rules:[{required:!0,message:"请填写OpenAi邮箱"}]},null,8,["modelValue"]),R,(0,p.Wm)(Pn,{modelValue:Xn.value,"onUpdate:modelValue":l[8]||(l[8]=e=>Xn.value=e),name:"OpenAi密码","input-align":"center",label:"OpenAi密码",placeholder:"OpenAi密码",rules:[{required:!0,message:"请填写OpenAi密码"}]},null,8,["modelValue"]),Y,(0,p.Wm)(Pn,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:lu.value,"onUpdate:modelValue":l[9]||(l[9]=e=>lu.value=e)},null,8,["modelValue"])])),_:1}),1==lu.value?((0,p.wg)(),(0,p.iD)("div",X,[F,(0,p.Wm)(Pn,{name:"switch",label:"是否使用refreshToken"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:au.value,"onUpdate:modelValue":l[10]||(l[10]=e=>au.value=e)},null,8,["modelValue"])])),_:1}),G,(0,p.Wm)(Pn,{name:"switch",label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Fn.value,"onUpdate:modelValue":l[11]||(l[11]=e=>Fn.value=e)},null,8,["modelValue"])])),_:1}),1==Fn.value?((0,p.wg)(),(0,p.iD)("div",Q,[ee,(0,p.Wm)(Pn,{name:"switch",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Gn.value,"onUpdate:modelValue":l[12]||(l[12]=e=>Gn.value=e)},null,8,["modelValue"])])),_:1}),le,(0,p.Wm)(Pn,{name:"switch",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Qn.value,"onUpdate:modelValue":l[13]||(l[13]=e=>Qn.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0)])):(0,p.kq)("",!0),0==Fn.value||0==lu.value?((0,p.wg)(),(0,p.iD)("div",ae,[oe,(0,p.Wm)(Pn,{rows:"2",type:"textarea",autoSize:"",modelValue:eu.value,"onUpdate:modelValue":l[14]||(l[14]=e=>eu.value=e),name:"Token的密码","input-align":"center",label:"Token的密码",placeholder:"填了将不会分享给他人(如不填则输入Token名即可进入)",rules:[{validator:Zn}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),te,(0,p.Wm)(Pn,{modelValue:Kn.value,"onUpdate:modelValue":l[15]||(l[15]=e=>Kn.value=e),label:"Token的值",type:"textarea","input-align":"center",maxlength:"5000",placeholder:"请填写OpenAi的Token(选填),session或refresh_token",autosize:{maxHeight:100,minHeight:50},"show-word-limit":""},null,8,["modelValue"]),ne])),_:1}),(0,p._)("div",ue,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),ie])),_:1},8,["show"]),(0,p.Wm)(Au,{show:yt.value,"onUpdate:show":l[29]||(l[29]=e=>yt.value=e),title:"✨添加token信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"addTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",re,[(0,p.Wm)(Hu,{onSubmit:l[28]||(l[28]=e=>ti())},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[se,(0,p.Wm)(Pn,{modelValue:ru.value,"onUpdate:modelValue":l[18]||(l[18]=e=>ru.value=e),name:"Token用户名",label:"Token用户名",placeholder:"Token用户名",rules:[{required:!0,message:"请填写Token用户名"}]},null,8,["modelValue"]),de,(0,p.Wm)(Pn,{modelValue:su.value,"onUpdate:modelValue":l[19]||(l[19]=e=>su.value=e),name:"OpenAi用户名",label:"OpenAi用户名",placeholder:"OpenAi用户名",rules:[{required:!0,message:"请填写OpenAi用户名"}]},null,8,["modelValue"]),me,(0,p.Wm)(Pn,{modelValue:du.value,"onUpdate:modelValue":l[20]||(l[20]=e=>du.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码",rules:[{required:!0,message:"请填写OpenAi密码"}]},null,8,["modelValue"]),ce,(0,p.Wm)(Pn,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:hu.value,"onUpdate:modelValue":l[21]||(l[21]=e=>hu.value=e)},null,8,["modelValue"])])),_:1}),1==hu.value?((0,p.wg)(),(0,p.iD)("div",pe,[ve,(0,p.Wm)(Pn,{name:"switch",label:"是否使用refreshToken"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:_u.value,"onUpdate:modelValue":l[22]||(l[22]=e=>_u.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0),1==hu.value?((0,p.wg)(),(0,p.iD)("div",he,[_e,(0,p.Wm)(Pn,{name:"switch",label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:cu.value,"onUpdate:modelValue":l[23]||(l[23]=e=>cu.value=e)},null,8,["modelValue"])])),_:1}),1==cu.value?((0,p.wg)(),(0,p.iD)("div",we,[ke,(0,p.Wm)(Pn,{name:"switch",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:pu.value,"onUpdate:modelValue":l[24]||(l[24]=e=>pu.value=e)},null,8,["modelValue"])])),_:1}),be,(0,p.Wm)(Pn,{name:"switch",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:vu.value,"onUpdate:modelValue":l[25]||(l[25]=e=>vu.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0)])):(0,p.kq)("",!0),""==cu.value?((0,p.wg)(),(0,p.iD)("div",fe,[ge,(0,p.Wm)(Pn,{rows:"3",type:"textarea",autoSize:"",modelValue:wu.value,"onUpdate:modelValue":l[26]||(l[26]=e=>wu.value=e),name:"Token的密码",label:"Token的密码","input-align":"center",placeholder:"填了将不会分享给他人(如不填则输入Token名即可进入)",rules:[{validator:Zn}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),1==hu.value?((0,p.wg)(),(0,p.iD)("div",ye,[Ve,(0,p.Wm)(Pn,{rows:"3",type:"textarea",maxlength:"5000","show-word-limit":"",modelValue:mu.value,"onUpdate:modelValue":l[27]||(l[27]=e=>mu.value=e),name:"Token的值",label:"Token的值",placeholder:"选填(可不填,不填则使用账号密码),目前只支持session_token或refresh_token"},null,8,["modelValue"])])):(0,p.kq)("",!0),We])),_:1}),(0,p._)("div",Te,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),xe])),_:1},8,["show"]),(0,p.Wm)(Au,{show:Vt.value,"onUpdate:show":l[49]||(l[49]=e=>Vt.value=e),title:"🔎token信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"showDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Ue,[(0,p.Wm)(Hu,null,{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[He,(0,p.Wm)(Pn,{modelValue:Jn.value,"onUpdate:modelValue":l[30]||(l[30]=e=>Jn.value=e),name:"Token用户名",label:"Token用户名",placeholder:"Token用户名","left-icon":"description-o","input-align":"center",readonly:!0,onClickLeftIcon:l[31]||(l[31]=e=>Yi(Jn.value))},null,8,["modelValue"]),Ae,(0,p.Wm)(Pn,{modelValue:eu.value,"onUpdate:modelValue":l[32]||(l[32]=e=>eu.value=e),type:"temPassword",name:"Token的密码",label:"Token的密码",placeholder:"Token的密码","input-align":"center","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[33]||(l[33]=e=>Yi(eu.value))},null,8,["modelValue"]),ze,(0,p.Wm)(Pn,{modelValue:Yn.value,"onUpdate:modelValue":l[34]||(l[34]=e=>Yn.value=e),name:"OpenAi邮箱",label:"OpenAi邮箱",placeholder:"OpenAi邮箱","left-icon":"description-o","input-align":"center",readonly:!0,onClickLeftIcon:l[35]||(l[35]=e=>Yi(Yn.value))},null,8,["modelValue"]),Pe,(0,p.Wm)(Pn,{modelValue:Xn.value,"onUpdate:modelValue":l[36]||(l[36]=e=>Xn.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码","left-icon":"description-o","input-align":"center",readonly:!0,onClickLeftIcon:l[37]||(l[37]=e=>Yi(Xn.value))},null,8,["modelValue"]),Se,(0,p.Wm)(Pn,{name:"temShared",readonly:!0,label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:Fn.value,"onUpdate:modelValue":l[38]||(l[38]=e=>Fn.value=e)},null,8,["modelValue"])])),_:1}),Ne,(0,p.Wm)(Pn,{readonly:!0,name:"temShow_user_info",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:Gn.value,"onUpdate:modelValue":l[39]||(l[39]=e=>Gn.value=e)},null,8,["modelValue"])])),_:1}),Oe,(0,p.Wm)(Pn,{readonly:!0,name:"temPlus",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:Qn.value,"onUpdate:modelValue":l[40]||(l[40]=e=>Qn.value=e)},null,8,["modelValue"])])),_:1}),Ce,(0,p.Wm)(Pn,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:lu.value,"onUpdate:modelValue":l[41]||(l[41]=e=>lu.value=e)},null,8,["modelValue"])])),_:1}),$e,(0,p.Wm)(Pn,{name:"switch",label:"是否使用refresh_token"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:au.value,"onUpdate:modelValue":l[42]||(l[42]=e=>au.value=e)},null,8,["modelValue"])])),_:1}),Ie,(0,p.Wm)(Pn,{modelValue:Kn.value,"onUpdate:modelValue":l[43]||(l[43]=e=>Kn.value=e),label:"Token的值",type:"textarea",maxlength:"5000",placeholder:"请填写OpenAi的Token(session或refresh_token)","show-word-limit":"","input-align":"center","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[44]||(l[44]=e=>Yi(Kn.value)),autosize:{maxHeight:100,minHeight:50}},null,8,["modelValue"]),1==lu.value?((0,p.wg)(),(0,p.iD)("div",Be,[De,(0,p.Wm)(Pn,{modelValue:En.value,"onUpdate:modelValue":l[45]||(l[45]=e=>En.value=e),label:"access_token",type:"textarea",maxlength:"5000","input-align":"center",placeholder:"请填写OpenAi的access_token","show-word-limit":"","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[46]||(l[46]=e=>Yi(En.value)),autosize:{maxHeight:100,minHeight:50}},null,8,["modelValue"]),qe,(0,p.Wm)(Pn,{modelValue:Rn.value,"onUpdate:modelValue":l[47]||(l[47]=e=>Rn.value=e),label:"share_token",type:"textarea",maxlength:"200","input-align":"center",placeholder:"请填写OpenAi的share_token","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[48]||(l[48]=e=>Yi(Rn.value)),autosize:{maxHeight:100,minHeight:50}},null,8,["modelValue"])])):(0,p.kq)("",!0)])),_:1})])),_:1}),1==lu.value?((0,p.wg)(),(0,p.iD)("div",je,[(0,p._)("div",{ref_key:"chart_show",ref:ni,style:{width:"auto",height:"300px"}},null,512),Le])):(0,p.kq)("",!0)])])),_:1},8,["show"]),(0,p.Wm)(Au,{show:Wt.value,"onUpdate:show":l[64]||(l[64]=e=>Wt.value=e),title:"PandoraNext设置信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Me,[(0,p.Wm)(Hu,{onSubmit:l[63]||(l[63]=e=>Vi(dt))},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[Ze,(0,p.Wm)(Pn,{modelValue:Kt.value,"onUpdate:modelValue":l[50]||(l[50]=e=>Kt.value=e),name:"对话标题",label:"对话标题",placeholder:"隔离对话设置标题"},null,8,["modelValue"]),Je,(0,p.Wm)(Pn,{modelValue:Et.value,"onUpdate:modelValue":l[51]||(l[51]=e=>Et.value=e),name:"绑定IP和端口",label:"绑定IP和端口",placeholder:"绑定IP和端口(选填)"},null,8,["modelValue"]),Ke,(0,p.Wm)(Pn,{modelValue:en.value,"onUpdate:modelValue":l[52]||(l[52]=e=>en.value=e),name:"DoH主机名",label:"DoH主机名",placeholder:"配置自定义的DoH主机名(选填)"},null,8,["modelValue"]),Ee,(0,p.Wm)(Pn,{modelValue:Rt.value,"onUpdate:modelValue":l[53]||(l[53]=e=>Rt.value=e),name:"请求超时时间",label:"请求超时时间",placeholder:"请求超时时间(选填)"},null,8,["modelValue"]),Re,(0,p.Wm)(Pn,{name:"switch",label:"是否分享对话(选填)"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Xt.value,"onUpdate:modelValue":l[54]||(l[54]=e=>Xt.value=e)},null,8,["modelValue"])])),_:1}),Ye,(0,p.Wm)(Pn,{name:"switch",label:"是否配置证书"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:ln.value,"onUpdate:modelValue":l[55]||(l[55]=e=>ln.value=e)},null,8,["modelValue"])])),_:1}),1==ln.value?((0,p.wg)(),(0,p.iD)("div",Xe,[Fe,(0,p.Wm)(Pn,{modelValue:an.value,"onUpdate:modelValue":l[56]||(l[56]=e=>an.value=e),name:"证书文件",label:"证书文件",placeholder:"证书文件"},null,8,["modelValue"]),Ge,(0,p.Wm)(Pn,{modelValue:on.value,"onUpdate:modelValue":l[57]||(l[57]=e=>on.value=e),name:"密钥文件",label:"密钥文件",placeholder:"密钥文件"},null,8,["modelValue"])])):(0,p.kq)("",!0),Qe,(0,p.Wm)(Pn,{name:"switch",label:"是否禁用注册"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Ft.value,"onUpdate:modelValue":l[58]||(l[58]=e=>Ft.value=e)},null,8,["modelValue"])])),_:1}),el,(0,p.Wm)(Pn,{name:"switch",label:"是否自动打码"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Gt.value,"onUpdate:modelValue":l[59]||(l[59]=e=>Gt.value=e)},null,8,["modelValue"])])),_:1}),ll,(0,p.Wm)(Pn,{name:"switch",label:"使用文件代理服务"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Qt.value,"onUpdate:modelValue":l[60]||(l[60]=e=>Qt.value=e)},null,8,["modelValue"])])),_:1}),al,(0,p.Wm)(Pn,{modelValue:Yt.value,"onUpdate:modelValue":l[61]||(l[61]=e=>Yt.value=e),name:"代理服务URL",label:"代理服务URL",placeholder:"代理服务URL(选填)"},null,8,["modelValue"]),ol,(0,p.Wm)(Pn,{modelValue:vn.value,"onUpdate:modelValue":l[62]||(l[62]=e=>vn.value=e),name:"白名单",label:"白名单",placeholder:"[]限制所有账号(默认为null)"},null,8,["modelValue"]),tl])),_:1}),(0,p._)("div",nl,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),ul])),_:1},8,["show"]),(0,p.Wm)(Au,{show:Tt.value,"onUpdate:show":l[76]||(l[76]=e=>Tt.value=e),title:"tokensTool设置信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",il,[(0,p.Wm)(Hu,{onSubmit:l[75]||(l[75]=e=>Vi(mt))},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[rl,(0,p.Wm)(Pn,{modelValue:un.value,"onUpdate:modelValue":l[65]||(l[65]=e=>un.value=e),name:"登录用户名",label:"登录用户名",placeholder:"tokensTool用户名"},null,8,["modelValue"]),sl,(0,p.Wm)(Pn,{modelValue:rn.value,"onUpdate:modelValue":l[66]||(l[66]=e=>rn.value=e),name:"登录密码",label:"登录密码",placeholder:"不少于8位,且同时包含数字和字母",rules:[{validator:jn}]},null,8,["modelValue","rules"]),dl,(0,p.Wm)(Pn,{modelValue:Jt.value,"onUpdate:modelValue":l[67]||(l[67]=e=>Jt.value=e),name:"proxy接口前缀",label:"proxy接口前缀",placeholder:"proxy模式接口后缀,不少于8位,且同时包含数字和字母",rules:[{validator:jn}]},null,8,["modelValue","rules"]),ml,(0,p.Wm)(Pn,{modelValue:pn.value,"onUpdate:modelValue":l[68]||(l[68]=e=>pn.value=e),name:"proxy模式URL",label:"proxy模式URL",placeholder:"http(s)://(ip:port或者域名)/后缀,同公网服务器填default"},null,8,["modelValue"]),cl,(0,p.Wm)(Pn,{modelValue:nn.value,"onUpdate:modelValue":l[69]||(l[69]=e=>nn.value=e),name:"重载服务密码",label:"重载服务密码",placeholder:"PandoraNext重载服务密码,不少于8位,且同时包含数字和字母",rules:[{validator:jn}]},null,8,["modelValue","rules"]),pl,(0,p.Wm)(Pn,{modelValue:tn.value,"onUpdate:modelValue":l[70]||(l[70]=e=>tn.value=e),name:"访问密码",label:"访问密码",placeholder:"PandoraNext访问密码,建议开启访问密码",rules:[{validator:Ln}]},null,8,["modelValue","rules"]),vl,(0,p.Wm)(Pn,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:sn.value,"onUpdate:modelValue":l[71]||(l[71]=e=>sn.value=e),name:"验证licenseId",label:"验证licenseId",placeholder:"验证licenseId(github上拿到的license_id)"},null,8,["modelValue"]),hl,(0,p.Wm)(Pn,{name:"switch",label:"tokensTool接口"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:dn.value,"onUpdate:modelValue":l[72]||(l[72]=e=>dn.value=e)},null,8,["modelValue"])])),_:1}),1==dn.value?((0,p.wg)(),(0,p.iD)("div",_l,[wl,(0,p.Wm)(Pn,{modelValue:mn.value,"onUpdate:modelValue":l[73]||(l[73]=e=>mn.value=e),name:"接口密码",label:"接口密码",placeholder:"tokensTool接口密码,用于获取tokens,不少于8位,且同时包含数字和字母",rules:[{validator:jn}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),kl,(0,p.Wm)(Pn,{modelValue:cn.value,"onUpdate:modelValue":l[74]||(l[74]=e=>cn.value=e),name:"监管容器名",label:"监管容器名",placeholder:"监管运行的容器名或文件名,默认为PandoraNext",rules:[{required:!0,message:"请填写监管的容器名"}]},null,8,["modelValue"]),bl])),_:1}),(0,p._)("div",fl,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),gl])),_:1},8,["show"]),(0,p.Wm)(Au,{show:xt.value,"onUpdate:show":l[85]||(l[85]=e=>xt.value=e),title:"PandoraNext验证信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",yl,[(0,p.Wm)(Hu,{onSubmit:l[84]||(l[84]=e=>Vi(ct))},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[Vl,(0,p.Wm)(Pn,{modelValue:hn.value,"onUpdate:modelValue":l[77]||(l[77]=e=>hn.value=e),name:"验证码提供商",label:"验证码提供商",placeholder:"验证码提供商"},null,8,["modelValue"]),Wl,(0,p.Wm)(Pn,{modelValue:_n.value,"onUpdate:modelValue":l[78]||(l[78]=e=>_n.value=e),name:"验证码网站参数",label:"验证码网站参数",placeholder:"验证码网站参数"},null,8,["modelValue"]),Tl,(0,p.Wm)(Pn,{modelValue:wn.value,"onUpdate:modelValue":l[79]||(l[79]=e=>wn.value=e),name:"验证码API Key",label:"验证码API Key",placeholder:"验证码API Key"},null,8,["modelValue"]),xl,(0,p.Wm)(Pn,{name:"switch",label:"是否全站密码登录页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:kn.value,"onUpdate:modelValue":l[80]||(l[80]=e=>kn.value=e)},null,8,["modelValue"])])),_:1}),Ul,(0,p.Wm)(Pn,{name:"switch",label:"是否在设置登录页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:bn.value,"onUpdate:modelValue":l[81]||(l[81]=e=>bn.value=e)},null,8,["modelValue"])])),_:1}),Hl,(0,p.Wm)(Pn,{name:"switch",label:"是否在输入用户名页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:fn.value,"onUpdate:modelValue":l[82]||(l[82]=e=>fn.value=e)},null,8,["modelValue"])])),_:1}),Al,(0,p.Wm)(Pn,{name:"switch",label:"是否在输入密码页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:gn.value,"onUpdate:modelValue":l[83]||(l[83]=e=>gn.value=e)},null,8,["modelValue"])])),_:1}),zl])),_:1}),(0,p._)("div",Pl,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Sl])),_:1},8,["show"]),(0,p.Wm)($u,{modelValue:Ut.value,"onUpdate:modelValue":l[89]||(l[89]=e=>Ut.value=e),title:"pool_token列表","align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Nl,[(0,p.Wm)(Nu,{onClick:l[86]||(l[86]=e=>Yi(Tn.value+Jt.value+"/v1/chat/completions"))},{default:(0,p.w5)((()=>[(0,p.Wm)(Su)])),_:1}),(0,p.Wm)(Ou,{style:{"white-space":"nowrap",overflow:"hidden","text-overflow":"ellipsis"}},{default:(0,p.w5)((()=>[(0,p.Uk)(" API地址:"+(0,v.zw)(Tn.value)+(0,v.zw)(Jt.value)+"/v1/chat/completions ",1)])),_:1})]),(0,p._)("div",Ol,[(0,p.Wm)((0,h.SU)(W.eI),{"row-class-name":Yu,data:nu.value,onSelectionChange:bt,ref_key:"multipleTableRefPool",ref:ht},{default:(0,p.w5)((()=>[(0,p.Wm)(y,{type:"selection",width:"45"}),(0,p.Wm)(y,{prop:"intoOneApi",label:"pool_token名称",sortable:"","min-width":"170","default-sort":{prop:"poolTime",prop:"intoOneApi"}},{default:(0,p.w5)((e=>[(0,p._)("div",Cl,[1==e.row.intoOneApi&&e.row.poolOneApi_models.includes("gpt-4")?((0,p.wg)(),(0,p.iD)("div",$l,[(0,p.Wm)(V,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[Il])),_:1})])):1==e.row.intoOneApi?((0,p.wg)(),(0,p.iD)("div",Bl,[(0,p.Wm)(V,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[Dl])),_:1})])):((0,p.wg)(),(0,p.iD)("div",ql,[(0,p.Wm)(V,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[jl])),_:1})])),(0,p._)("span",Ll,(0,v.zw)(e.row.poolName),1)])])),_:1}),(0,p.Wm)(y,{label:"pool_token值","min-width":"235"},{default:(0,p.w5)((e=>[(0,p._)("div",Ml,[(0,p.Wm)(Nu,{onClick:l=>Yi(e.row.poolToken)},{default:(0,p.w5)((()=>[(0,p.Wm)(Su)])),_:2},1032,["onClick"]),(0,p._)("span",Zl,(0,v.zw)(e.row.poolToken),1)])])),_:1}),(0,p.Wm)(y,{label:"使用token名集合","min-width":"165"},{default:(0,p.w5)((e=>[(0,p.Wm)(_t,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(e.row.shareTokens),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(T,null,{default:(0,p.w5)((()=>[Jl])),_:1})])),_:2},1024)])),_:1}),(0,p.Wm)(y,{property:"poolTime",label:"更新时间",prop:"poolTime",sortable:"","min-width":"180"}),(0,p.Wm)(y,{label:"操作方法","min-width":"355"},{default:(0,p.w5)((e=>[(0,p.Wm)(V,{size:"small",onClick:l=>Fi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"warning",onClick:l=>ji(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("检验")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"danger",onClick:l=>qi(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"success",onClick:l=>Ci(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("刷新")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"primary",onClick:l=>Di(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("更换")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])]),(0,p._)("div",Kl,[(0,p.Wm)(Cu,{class:"pool-button"},{default:(0,p.w5)((()=>[(0,p.Wm)(ft,{modelValue:Mt.value,"onUpdate:modelValue":l[87]||(l[87]=e=>Mt.value=e),filterable:"",clearable:"",placeholder:"请选择批量操作"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Zt,(e=>(0,p.Wm)(wt,{key:e.buttonPoolValue,label:e.label,value:e.buttonPoolValue},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),(0,p.Wm)(V,{onClick:l[88]||(l[88]=e=>Gi(Mt.value))},{default:(0,p.w5)((()=>[El])),_:1})])),_:1})]),Rl])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:Ht.value,"onUpdate:modelValue":l[93]||(l[93]=e=>Ht.value=e),title:"PandoraNext余额","align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Yl,[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[Xl,(0,p.Wm)(Pn,{modelValue:Eu.value,"onUpdate:modelValue":l[90]||(l[90]=e=>Eu.value=e),name:"PandoraNext用量",label:"PandoraNext用量",placeholder:"PandoraNext用量"},null,8,["modelValue"]),Fl,(0,p.Wm)(Pn,{modelValue:zi.value,"onUpdate:modelValue":l[91]||(l[91]=e=>zi.value=e),name:"绑定IP",label:"绑定IP",placeholder:"绑定IP"},null,8,["modelValue"]),Gl,(0,p.Wm)(Pn,{modelValue:Pi.value,"onUpdate:modelValue":l[92]||(l[92]=e=>Pi.value=e),name:"重置时间",label:"重置时间",placeholder:"重置时间"},null,8,["modelValue"]),Ql])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(Au,{show:At.value,"onUpdate:show":l[101]||(l[101]=e=>At.value=e),title:"定时刷新&PandoraNext网址","align-center":"",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",ea,[(0,p.Wm)(Hu,{onSubmit:l[100]||(l[100]=e=>Wi())},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[la,(0,p.Wm)(Pn,{name:"switch",label:"是否自动刷新session_token"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:yn.value,"onUpdate:modelValue":l[94]||(l[94]=e=>yn.value=e)},null,8,["modelValue"])])),_:1}),1==yn.value?((0,p.wg)(),(0,p.iD)("div",aa,[oa,(0,p.Wm)(Pn,{modelValue:Vn.value,"onUpdate:modelValue":l[95]||(l[95]=e=>Vn.value=e),name:"自动刷新session的间隔天数",label:"自动刷新session的间隔天数","input-align":"right",placeholder:"自动刷新session的时间 (天为单位)"},null,8,["modelValue"]),ta,(0,p.Wm)(Pn,{modelValue:Wn.value,"onUpdate:modelValue":l[96]||(l[96]=e=>Wn.value=e),name:"自动刷新session的个数",label:"自动刷新session的个数","input-align":"right",placeholder:"自动刷新session的个数 (个)"},null,8,["modelValue"])])):(0,p.kq)("",!0),na,(0,p.Wm)(Pn,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:Tn.value,"onUpdate:modelValue":l[97]||(l[97]=e=>Tn.value=e),name:"PandoraNext的公网访问地址",label:"PandoraNext的公网访问地址",placeholder:"PandoraNext的公网访问地址"},null,8,["modelValue"]),ua,(0,p.Wm)(Pn,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:xn.value,"onUpdate:modelValue":l[98]||(l[98]=e=>xn.value=e),name:"oneApi的公网访问地址",label:"oneApi的公网访问地址","input-align":"right",placeholder:"oneApi的公网访问地址"},null,8,["modelValue"]),ia,(0,p.Wm)(Pn,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:Un.value,"onUpdate:modelValue":l[99]||(l[99]=e=>Un.value=e),name:"oneApi的系统令牌",label:"oneApi的系统令牌","input-align":"right",placeholder:"oneApi的系统令牌"},null,8,["modelValue"]),ra])),_:1}),(0,p._)("div",sa,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),da])),_:1},8,["show"]),(0,p.Wm)(Au,{show:zt.value,"onUpdate:show":l[109]||(l[109]=e=>zt.value=e),title:"✨添加pool_token信息",width:"95vw","align-center":"","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",ma,[(0,p.Wm)(Hu,{onSubmit:ju},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[(0,p.Wm)(Pn,{modelValue:Sn.value,"onUpdate:modelValue":l[102]||(l[102]=e=>Sn.value=e),name:"pool_token名",label:"pool_token名","input-align":"right",placeholder:"3到10个字符",rules:[{validator:Mn}]},null,8,["modelValue","rules"]),ca,(0,p.Wm)(Pn,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Nn.value,"onUpdate:modelValue":l[103]||(l[103]=e=>Nn.value=e)},null,8,["modelValue"])])),_:1}),1==Nn.value?((0,p.wg)(),(0,p.iD)("div",pa,[va,(0,p.Wm)(Pn,{modelValue:Dn.value,"onUpdate:modelValue":l[104]||(l[104]=e=>Dn.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)"},null,8,["modelValue"]),(0,p._)("div",ha,[_a,wa,(0,p.Wm)(Iu,{label:"选择模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(ft,{modelValue:$n.value,"onUpdate:modelValue":l[105]||(l[105]=e=>$n.value=e),multiple:"",filterable:"","allow-create":"",placeholder:"填写或选择模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Lt,(e=>(0,p.Wm)(wt,{key:e.buttonPoolModel,label:e.label,value:e.buttonPoolModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),ka,(0,p.Wm)(Iu,{label:"重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:In.value,"onUpdate:modelValue":l[106]||(l[106]=e=>In.value=e),type:"textarea",autosize:{maxHeight:100,minHeight:20},placeholder:st,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),ba,(0,p.Wm)(Pn,{name:"checkboxGroup",label:"在one-api的组别","input-align":"right"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:vt.value,"onUpdate:modelValue":l[107]||(l[107]=e=>vt.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",fa,[(0,p.Wm)(Du,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",ga,[(0,p.Wm)(Du,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),ya,(0,p.Wm)(Pn,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:Bn.value,"onUpdate:modelValue":l[108]||(l[108]=e=>Bn.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right",placeholder:"自定义PandoraNext地址"},null,8,["modelValue"]),Va])):(0,p.kq)("",!0)])),_:1}),(0,p._)("div",Wa,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Ta])),_:1},8,["show"]),(0,p.Wm)($u,{modelValue:Pt.value,"onUpdate:modelValue":l[110]||(l[110]=e=>Pt.value=e),title:"tokensTool登录日志","align-center":"",width:"90%","close-on-click-modal":!1,class:"showLoginDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",xa,[(0,p.Wm)((0,h.SU)(W.eI),{"row-class-name":Yu,data:iu.value},{default:(0,p.w5)((()=>[(0,p.Wm)(y,{prop:"ipAddress",label:"登录地区","min-width":"160"},{default:(0,p.w5)((e=>[(0,p._)("div",Ua,[(0,p._)("span",Ha,(0,v.zw)(e.row.ipAddress),1)])])),_:1}),(0,p.Wm)(y,{label:"登录IP","min-width":"155"},{default:(0,p.w5)((e=>[(0,p._)("div",Aa,[(0,p.Wm)(Nu,{onClick:l=>Yi(e.row.poolToken)},{default:(0,p.w5)((()=>[(0,p.Wm)(Su)])),_:2},1032,["onClick"]),(0,p._)("span",za,(0,v.zw)(e.row.requestIp),1)])])),_:1}),(0,p.Wm)(y,{label:"成功/失败","min-width":"105"},{default:(0,p.w5)((e=>[(0,p._)("div",Pa,[(0,p._)("span",Sa,(0,v.zw)(e.row.inRequestNumber)+"/"+(0,v.zw)(e.row.outRequestNumber),1)])])),_:1}),(0,p.Wm)(y,{property:"lastLoginTime",label:"登录时间",prop:"lastLoginTime","min-width":"180"})])),_:1},8,["data"])]),Na])),_:1},8,["modelValue"]),(0,p.Wm)(Au,{show:St.value,"onUpdate:show":l[119]||(l[119]=e=>St.value=e),title:"📌修改pool_token信息",width:"95vw","align-center":"","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Oa,[(0,p.Wm)(Hu,{onSubmit:Ju},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[Ca,(0,p._)("div",$a,[(0,p.Wm)(Iu,{label:"poolToken名"},{default:(0,p.w5)((()=>[(0,p.Wm)(ft,{modelValue:Hn.value,"onUpdate:modelValue":l[111]||(l[111]=e=>Hn.value=e),filterable:"",clearable:"",placeholder:"选择要修改的pool名",onChange:Lu,class:"selectPool_token"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(nu.value,(e=>((0,p.wg)(),(0,p.j4)(wt,{key:e.poolName,label:e.poolName,value:e.poolName,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),Ia,(0,p.Wm)(Pn,{modelValue:qn.value,"onUpdate:modelValue":l[112]||(l[112]=e=>qn.value=e),type:"textarea",autosize:{maxHeight:100,minHeight:20},name:"pool_token的值",label:"pool_token的值",placeholder:"pool_token的值(不改则不变)"},null,8,["modelValue"]),Ba,(0,p.Wm)(Pn,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Nn.value,"onUpdate:modelValue":l[113]||(l[113]=e=>Nn.value=e)},null,8,["modelValue"])])),_:1}),Da,1==Nn.value?((0,p.wg)(),(0,p.iD)("div",qa,[ja,(0,p._)("div",La,[(0,p.Wm)(Iu,{label:"选择模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(ft,{modelValue:Cn.value,"onUpdate:modelValue":l[114]||(l[114]=e=>Cn.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"填写或选择模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Lt,(e=>(0,p.Wm)(wt,{key:e.buttonPoolModel,label:e.label,value:e.buttonPoolModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),Ma,(0,p.Wm)(Iu,{label:"重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:On.value,"onUpdate:modelValue":l[115]||(l[115]=e=>On.value=e),type:"textarea",autosize:{maxHeight:100,minHeight:20},placeholder:st,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),Za,(0,p.Wm)(Pn,{modelValue:Dn.value,"onUpdate:modelValue":l[116]||(l[116]=e=>Dn.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),Ja,(0,p.Wm)(Pn,{name:"checkboxGroup",label:"在one-api的组别","input-align":"right"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:pt.value,"onUpdate:modelValue":l[117]||(l[117]=e=>pt.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",Ka,[(0,p.Wm)(Du,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",Ea,[(0,p.Wm)(Du,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),Ra,(0,p.Wm)(Pn,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:Bn.value,"onUpdate:modelValue":l[118]||(l[118]=e=>Bn.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址",placeholder:"自定义PandoraNext地址",rules:[{required:!0,message:"请填写自定义PandoraNext地址"}]},null,8,["modelValue"]),Ya])):(0,p.kq)("",!0)])),_:1}),(0,p._)("div",Xa,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Fa])),_:1},8,["show"]),(0,p.Wm)($u,{modelValue:Nt.value,"onUpdate:modelValue":l[120]||(l[120]=e=>Nt.value=e),"align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",{ref_key:"chart",ref:Qi,style:{width:"auto",height:"350px"}},null,512)])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:Ot.value,"onUpdate:modelValue":l[124]||(l[124]=e=>Ot.value=e),title:"OneAPI里的share_token列表","align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p.Wm)(g,{modelValue:xu.value,"onUpdate:modelValue":l[122]||(l[122]=e=>xu.value=e),"show-action":"",clearable:"",shape:"round",placeholder:"请输入搜索share_token名称",onSearch:l[123]||(l[123]=e=>Pu(xu.value)),class:"onShareToken"},{action:(0,p.w5)((()=>[(0,p.Wm)(V,{onClick:l[121]||(l[121]=e=>Ct.value=!0)},{default:(0,p.w5)((()=>[Ga])),_:1})])),_:1},8,["modelValue"]),(0,p._)("div",Qa,[(0,p.Wm)((0,h.SU)(W.eI),{data:uu.value,"row-class-name":Yu},{default:(0,p.w5)((()=>[(0,p.Wm)(y,{label:"在OneAPI的名称",prop:"oneApi_name",width:"180"},{default:(0,p.w5)((e=>[(0,p._)("div",eo,[(0,p._)("span",lo,(0,v.zw)(e.row.oneApi_name),1)])])),_:1}),(0,p.Wm)(y,{label:"来源Token名","min-width":"135"},{default:(0,p.w5)((e=>[(0,p._)("div",ao,[(0,p._)("span",oo,(0,v.zw)(e.row.token_name),1)])])),_:1}),(0,p.Wm)(y,{label:"share_token值","min-width":"355"},{default:(0,p.w5)((e=>[(0,p._)("div",to,[(0,p.Wm)(Nu,{onClick:l=>Yi(e.row.token_value)},{default:(0,p.w5)((()=>[(0,p.Wm)(Su)])),_:2},1032,["onClick"]),(0,p._)("span",no,(0,v.zw)(e.row.token_value),1)])])),_:1}),(0,p.Wm)(y,{property:"shareTime",label:"更新时间",prop:"shareTime","min-width":"170"}),(0,p.Wm)(y,{label:"操作方法","min-width":"235"},{default:(0,p.w5)((e=>[(0,p.Wm)(V,{size:"small",onClick:l=>wi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"primary",onClick:l=>$i(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("修改")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"danger",onClick:l=>Mi(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])]),uo])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:Ct.value,"onUpdate:modelValue":l[132]||(l[132]=e=>Ct.value=e),title:"添加shareToken进one_api","align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",io,[(0,p.Wm)(Hu,{onSubmit:Ku},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:"",class:"groupCell"},{default:(0,p.w5)((()=>[ro,(0,p.Wm)(Pn,{modelValue:ku.value,"onUpdate:modelValue":l[125]||(l[125]=e=>ku.value=e),name:"oneApi中渠道名称",label:"oneApi中渠道名称","input-align":"right",placeholder:"oneApi中渠道名称",rules:[{required:!0,message:"请填写oneApi中渠道名称"}]},null,8,["modelValue"]),so,(0,p._)("div",mo,[(0,p.Wm)(Iu,{label:"Token名","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(ft,{modelValue:bu.value,"onUpdate:modelValue":l[126]||(l[126]=e=>bu.value=e),filterable:"",clearable:"",placeholder:"选择要添加的Token名",onChange:Mu,class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Zu.value,(e=>((0,p.wg)(),(0,p.j4)(wt,{key:e.name,label:e.name,value:e.name,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),co,(0,p._)("div",po,[(0,p.Wm)(Iu,{label:"选择模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(ft,{modelValue:gu.value,"onUpdate:modelValue":l[127]||(l[127]=e=>gu.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"填写或选择模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(jt,(e=>(0,p.Wm)(wt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),vo,(0,p.Wm)(Iu,{label:"重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:yu.value,"onUpdate:modelValue":l[128]||(l[128]=e=>yu.value=e),type:"textarea",rows:10,placeholder:st,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),ho,(0,p.Wm)(Pn,{modelValue:Wu.value,"onUpdate:modelValue":l[129]||(l[129]=e=>Wu.value=e),name:"渠道优先级",label:"渠道优先级",placeholder:"渠道优先级(默认为0)","input-align":"center",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),_o,(0,p.Wm)(Pn,{"input-align":"right",name:"addOneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:Vu.value,"onUpdate:modelValue":l[130]||(l[130]=e=>Vu.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",wo,[(0,p.Wm)(Du,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",ko,[(0,p.Wm)(Du,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),bo,(0,p.Wm)(Pn,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:fu.value,"onUpdate:modelValue":l[131]||(l[131]=e=>fu.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),fo])),_:1}),(0,p._)("div",go,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:$t.value,"onUpdate:modelValue":l[149]||(l[149]=e=>$t.value=e),title:"🔎查看share_token在OneAPI信息","align-center":"",width:"95vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",yo,[(0,p.Wm)(Hu,{onSubmit:e.shareToken},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:"",class:"groupCell"},{default:(0,p.w5)((()=>[Vo,(0,p.Wm)(Pn,{modelValue:ii.value,"onUpdate:modelValue":l[133]||(l[133]=e=>ii.value=e),name:"OneAPI中渠道名称",label:"OneAPI中渠道名称",placeholder:"OneAPI中渠道名称","left-icon":"description-o",readonly:!0,"input-align":"right",onClickLeftIcon:l[134]||(l[134]=e=>Yi(ii.value)),rules:[{required:!0,message:"请填写OneAPI中渠道名称"}]},null,8,["modelValue"]),Wo,(0,p.Wm)(Pn,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:si.value,"onUpdate:modelValue":l[135]||(l[135]=e=>si.value=e),name:"share_token的值",label:"share_token的值","input-align":"right",placeholder:"share_token的值","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[136]||(l[136]=e=>Yi(si.value))},null,8,["modelValue"]),To,(0,p.Wm)(Pn,{modelValue:ri.value,"onUpdate:modelValue":l[137]||(l[137]=e=>ri.value=e),name:"share_token的来源",label:"share_token的来源","input-align":"right",placeholder:"share_token的值","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[138]||(l[138]=e=>Yi(ri.value))},null,8,["modelValue"]),xo,(0,p.Wm)(Pn,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:pi.value,"onUpdate:modelValue":l[139]||(l[139]=e=>pi.value=e),name:"模型",label:"模型","input-align":"right",placeholder:"加入的模型","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[140]||(l[140]=e=>Yi(pi.value))},null,8,["modelValue"]),(0,p._)("div",Uo,[Ho,(0,p.Wm)(Iu,{readonly:!0,type:"textarea",label:"🧩重定向",autosize:"",prop:"addModel_mapping",class:"model_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:ci.value,"onUpdate:modelValue":l[141]||(l[141]=e=>ci.value=e),type:"textarea",autosize:"",disabled:"",placeholder:st,onClickLeftIcon:l[142]||(l[142]=e=>Yi(ci.value))},null,8,["modelValue"])])),_:1})]),Ao,(0,p.Wm)(Pn,{modelValue:Dn.value,"onUpdate:modelValue":l[143]||(l[143]=e=>Dn.value=e),name:"渠道优先级",label:"渠道优先级",placeholder:"渠道优先级(默认为0)","left-icon":"description-o",readonly:!0,"input-align":"right",onClickLeftIcon:l[144]||(l[144]=e=>Yi(Dn.value)),rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),zo,(0,p.Wm)(Pn,{type:"textarea",autoSize:"",modelValue:vi.value,"onUpdate:modelValue":l[145]||(l[145]=e=>vi.value=e),name:"加入的组别",label:"加入的组别","input-align":"right",placeholder:"加入的组别","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[146]||(l[146]=e=>Yi(vi.value))},null,8,["modelValue"]),Po,(0,p.Wm)(Pn,{type:"textarea",autoSize:"",modelValue:di.value,"onUpdate:modelValue":l[147]||(l[147]=e=>di.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[148]||(l[148]=e=>Yi(di.value)),rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),So])),_:1})])),_:1},8,["onSubmit"])])])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:It.value,"onUpdate:modelValue":l[156]||(l[156]=e=>It.value=e),title:"📌修改shareToken在OneAPI的信息","align-center":"",width:"95vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",No,[(0,p.Wm)(Hu,{onSubmit:Ii},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:"",class:"groupCell"},{default:(0,p.w5)((()=>[Oo,(0,p._)("div",Co,[(0,p.Wm)(Iu,{label:"Token名","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(ft,{modelValue:ri.value,"onUpdate:modelValue":l[150]||(l[150]=e=>ri.value=e),filterable:"",clearable:"",placeholder:"选择添加的Token名称",onChange:Mu,class:"selectPool_token"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Zu.value,(e=>((0,p.wg)(),(0,p.j4)(wt,{key:e.name,label:e.name,value:e.name,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),$o,(0,p._)("div",Io,[(0,p.Wm)(Iu,{label:"选择模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(ft,{modelValue:mi.value,"onUpdate:modelValue":l[151]||(l[151]=e=>mi.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"填写或选择模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(jt,(e=>(0,p.Wm)(wt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),Bo,(0,p.Wm)(Iu,{label:"重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:ci.value,"onUpdate:modelValue":l[152]||(l[152]=e=>ci.value=e),"label-position":"top",type:"textarea",rows:10,placeholder:st,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),Do,(0,p.Wm)(Pn,{modelValue:Dn.value,"onUpdate:modelValue":l[153]||(l[153]=e=>Dn.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"center",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),qo,(0,p.Wm)(Pn,{"input-align":"right",name:"oneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:hi.value,"onUpdate:modelValue":l[154]||(l[154]=e=>hi.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",jo,[(0,p.Wm)(Du,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",Lo,[(0,p.Wm)(Du,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),Mo,(0,p.Wm)(Pn,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:di.value,"onUpdate:modelValue":l[155]||(l[155]=e=>di.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),Zo])),_:1}),(0,p._)("div",Jo,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:Bt.value,"onUpdate:modelValue":l[170]||(l[170]=e=>Bt.value=e),title:"🔎查看pool_token的信息","align-center":"",width:"95vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Ko,[(0,p.Wm)(Hu,null,{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:"",class:"groupCell"},{default:(0,p.w5)((()=>[Eo,(0,p.Wm)(Pn,{modelValue:An.value,"onUpdate:modelValue":l[157]||(l[157]=e=>An.value=e),name:"pool_token名称",label:"pool_token名称",placeholder:"pool_token名称",readonly:!0,"left-icon":"description-o",onClickLeftIcon:l[158]||(l[158]=e=>Yi(An.value)),"input-align":"right"},null,8,["modelValue"]),Ro,(0,p.Wm)(Pn,{modelValue:zn.value,"onUpdate:modelValue":l[159]||(l[159]=e=>zn.value=e),label:"使用token名集合",type:"textarea",placeholder:"使用token名集合","left-icon":"description-o",readonly:!0,"input-align":"right",onClickLeftIcon:l[160]||(l[160]=e=>Yi(En.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"]),Yo,(0,p.Wm)(Pn,{modelValue:qn.value,"onUpdate:modelValue":l[161]||(l[161]=e=>qn.value=e),readonly:!0,type:"textarea",autosize:{maxHeight:100,minHeight:20},name:"pool_token的值",label:"pool_token的值","input-align":"right","left-icon":"description-o",onClickLeftIcon:l[162]||(l[162]=e=>Yi(qn.value)),placeholder:"pool_token的值(不改则不变)"},null,8,["modelValue"]),Xo,(0,p.Wm)(Pn,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Nn.value,"onUpdate:modelValue":l[163]||(l[163]=e=>Nn.value=e)},null,8,["modelValue"])])),_:1}),Fo,1==Nn.value?((0,p.wg)(),(0,p.iD)("div",Go,[Qo,(0,p._)("div",et,[(0,p.Wm)(Iu,{disabled:"",label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(ft,{disabled:"",modelValue:Cn.value,"onUpdate:modelValue":l[164]||(l[164]=e=>Cn.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Lt,(e=>(0,p.Wm)(wt,{key:e.buttonPoolModel,label:e.label,value:e.buttonPoolModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),lt])),_:1}),at,(0,p.Wm)(Iu,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:On.value,"onUpdate:modelValue":l[165]||(l[165]=e=>On.value=e),type:"textarea",disabled:"",filterable:"",autosize:"",placeholder:st,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),ot,(0,p.Wm)(Pn,{readonly:!0,modelValue:Dn.value,"onUpdate:modelValue":l[166]||(l[166]=e=>Dn.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),tt,(0,p.Wm)(Pn,{"input-align":"right",name:"oneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:pt.value,"onUpdate:modelValue":l[167]||(l[167]=e=>pt.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",nt,[(0,p.Wm)(Du,{name:"default",disabled:"","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",ut,[(0,p.Wm)(Du,{name:"vip",disabled:"","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip",disabled:"","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),it,(0,p.Wm)(Pn,{readonly:!0,type:"textarea",autoSize:"",modelValue:Bn.value,"onUpdate:modelValue":l[168]||(l[168]=e=>Bn.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right","left-icon":"description-o",onClickLeftIcon:l[169]||(l[169]=e=>Yi(Bn.value)),placeholder:"自定义PandoraNext地址",rules:[{required:!0,message:"请填写自定义PandoraNext地址"}]},null,8,["modelValue"]),rt])):(0,p.kq)("",!0)])),_:1})])),_:1})])])),_:1},8,["modelValue"])],64)}}});const vt=pt;var ht=vt}}]);
-//# sourceMappingURL=386.27cc819e.js.map
\ No newline at end of file
diff --git a/rearServer/src/main/resources/static/js/386.27cc819e.js.map b/rearServer/src/main/resources/static/js/386.27cc819e.js.map
deleted file mode 100644
index 9653aa2..0000000
--- a/rearServer/src/main/resources/static/js/386.27cc819e.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"js/386.27cc819e.js","mappings":"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","sources":["webpack://PandoraNext-TokensTool/./src/views/homeIphone.vue","webpack://PandoraNext-TokensTool/./src/views/homeIphone.vue?1abb"],"sourcesContent":["import \"core-js/modules/es.array.push.js\";\nimport { defineComponent as _defineComponent } from 'vue';\nimport { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, resolveComponent as _resolveComponent, createVNode as _createVNode, withCtx as _withCtx, createTextVNode as _createTextVNode, unref as _unref, resolveDirective as _resolveDirective, openBlock as _openBlock, createBlock as _createBlock, withDirectives as _withDirectives, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode } from \"vue\";\nimport _imports_0 from '../asserts/openAi.jpg';\nconst _hoisted_1 = {\n class: \"content\"\n};\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"meta\", {\n name: \"viewport\",\n content: \"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no\"\n}, null, -1);\nconst _hoisted_3 = /*#__PURE__*/_createElementVNode(\"img\", {\n style: {\n \"width\": \"25px\"\n },\n src: _imports_0\n}, null, -1);\nconst _hoisted_4 = {\n class: \"home-container\"\n};\nconst _hoisted_5 = /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"flex-grow\"\n}, null, -1);\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://ai.fakeopen.com/auth\"\n}, \"PandoraNext地址\", -1);\nconst _hoisted_7 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://chat.openai.com/api/auth/session\"\n}, \"OpenAI官网\", -1);\nconst _hoisted_8 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://github.com/Yanyutin753/PandoraNext-TokensTool\"\n}, \"TokensTool地址\", -1);\nconst _hoisted_9 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_10 = /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"flex items-center\"\n}, [/*#__PURE__*/_createElementVNode(\"span\", {\n class: \"font-h4\"\n}, \"PandoraNext-TokensTool \"), /*#__PURE__*/_createElementVNode(\"span\", {\n class: \"font-h4-tag\"\n}, \"v0.6.8 \")], -1);\nconst _hoisted_11 = {\n class: \"under\"\n};\nconst _hoisted_12 = {\n class: \"search\"\n};\nconst _hoisted_13 = {\n style: {\n \"display\": \"flex\",\n \"margin\": \"0px 0px -20px 0px\"\n }\n};\nconst _hoisted_14 = {\n style: {\n \"display\": \"flex\",\n \"width\": \"88vw\",\n \"height\": \"63vh\",\n \"transform\": \"translateX(0vw)\"\n }\n};\nconst _hoisted_15 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_16 = {\n style: {\n \"margin-left\": \"15px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_17 = {\n style: {\n \"margin-left\": \"15px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_18 = {\n style: {\n \"margin\": \"13px\",\n \"transform\": \"translateX(7px)\"\n }\n};\nconst _hoisted_19 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"批量操作\", -1);\nconst _hoisted_20 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_21 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_22 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_23 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_24 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_25 = {\n key: 0\n};\nconst _hoisted_26 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_27 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_28 = {\n key: 0\n};\nconst _hoisted_29 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_30 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_31 = {\n key: 1\n};\nconst _hoisted_32 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_33 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_34 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_35 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_36 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_37 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_38 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_39 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_40 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_41 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_42 = {\n key: 0\n};\nconst _hoisted_43 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_44 = {\n key: 1\n};\nconst _hoisted_45 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_46 = {\n key: 0\n};\nconst _hoisted_47 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_48 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_49 = {\n key: 2\n};\nconst _hoisted_50 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_51 = {\n key: 3\n};\nconst _hoisted_52 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_53 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_54 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_55 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_56 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_57 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_58 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_59 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_60 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_61 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_62 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_63 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_64 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_65 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_66 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_67 = {\n key: 0\n};\nconst _hoisted_68 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_69 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_70 = {\n key: 0\n};\nconst _hoisted_71 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_72 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_73 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_74 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_75 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_76 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_77 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_78 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_79 = {\n key: 0\n};\nconst _hoisted_80 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_81 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_82 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_83 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_84 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_85 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_86 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_87 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_88 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_89 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_90 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_91 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_92 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_93 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_94 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_95 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_96 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_97 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_98 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_99 = {\n key: 0\n};\nconst _hoisted_100 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_101 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_102 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_103 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_104 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_105 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_106 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_107 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_108 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_109 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_110 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_111 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_112 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_113 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_114 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_115 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_116 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(0vw, -2vh)\"\n }\n};\nconst _hoisted_117 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(calc(-2.5% - 20px), 0vh)\",\n \"width\": \"calc(102.5% + 40px)\"\n }\n};\nconst _hoisted_118 = {\n style: {\n \"margin-left\": \"10px\",\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_119 = {\n key: 0\n};\nconst _hoisted_120 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"oneApi4\", -1);\nconst _hoisted_121 = {\n key: 1\n};\nconst _hoisted_122 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"oneApi3\", -1);\nconst _hoisted_123 = {\n key: 2\n};\nconst _hoisted_124 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"Json\", -1);\nconst _hoisted_125 = {\n style: {\n \"margin-left\": \"20px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_126 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_127 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_128 = /*#__PURE__*/_createElementVNode(\"span\", {\n style: {\n \"margin-left\": \"0px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n}, \"点击此进行查看\", -1);\nconst _hoisted_129 = {\n style: {\n \"margin\": \"10px 0px 10px 0px\"\n }\n};\nconst _hoisted_130 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"批量操作\", -1);\nconst _hoisted_131 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_132 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_133 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_134 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_135 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_136 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_137 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_138 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_139 = {\n key: 0\n};\nconst _hoisted_140 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_141 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_142 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_143 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_144 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_145 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_146 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_147 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_148 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_149 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_150 = {\n key: 0\n};\nconst _hoisted_151 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_152 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_153 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_154 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_155 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_156 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_157 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_158 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_159 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_160 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_161 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_162 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_163 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(calc(-2.5% - 20px), 0vh)\",\n \"width\": \"calc(100% + 2.5% + 40px)\"\n }\n};\nconst _hoisted_164 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_165 = {\n style: {\n \"margin-left\": \"0px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_166 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_167 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_168 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_169 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_170 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_171 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_172 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_173 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_174 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_175 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_176 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_177 = {\n key: 0\n};\nconst _hoisted_178 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_179 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_180 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_181 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_182 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_183 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_184 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_185 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_186 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_187 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_188 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_189 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"添加到OneAPI\", -1);\nconst _hoisted_190 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(calc(-2.5% - 20px), 0vh)\",\n \"width\": \"calc(102.5% + 40px)\"\n }\n};\nconst _hoisted_191 = {\n style: {\n \"margin-left\": \"15px\",\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_192 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_193 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_194 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_195 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_196 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_197 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_198 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_199 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_200 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_201 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_202 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_203 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_204 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_205 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_206 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_207 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_208 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_209 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_210 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_211 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_212 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_213 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_214 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_215 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_216 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_217 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_218 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_219 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_220 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_221 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_222 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_223 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_224 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_225 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_226 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_227 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_228 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_229 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_230 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_231 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_232 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_233 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_234 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_235 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_236 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_237 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_238 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_239 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_240 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_241 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_242 = {\n key: 0\n};\nconst _hoisted_243 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_244 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_245 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_246 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_247 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_248 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_249 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_250 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_251 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_252 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nimport { ref, onMounted } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport axios from \"axios\";\nimport { ElMessage, ElMessageBox } from \"element-plus\";\nimport { differenceInDays, parseISO } from \"date-fns\";\nimport { ElLoading } from \"element-plus\";\nimport { ElTable } from \"element-plus\";\nimport * as echarts from \"echarts\";\nimport { computed } from \"vue\";\nconst temModel_mapping = `此项可选,用于修改请求体中的模型名称,\n 为一个 JSON 字符串,键为请求中模型名称,\n 值为要替换的模型名称,例如:\n {\n \"gpt-3.5-turbo-301\":\"gpt-3.5-turbo\",\n \"gpt-4-8314\":\"gpt-4\", \n \"gpt-4-32k-8314\":\"gpt-4-32k\",\n }`;\nconst pandoraNext = 0;\n//tokensTool 为 0\nconst tokensTool = 1;\n//验证信息\nconst validation = 2;\n/**\r\n * 修改系统设置信息\r\n */\nexport default /*#__PURE__*/_defineComponent({\n __name: 'homeIphone',\n setup(__props) {\n // 导入类\n const path = window.location.pathname; // 假设是 \"/api/getData\"\n const parts = path.split(\"/\"); // 分割路径,得到 [\"\", \"api\", \"getData\"]\n let prefix = \"\"; // 默认值为 \"\"\n if (parts.length >= 3) {\n prefix = \"/\" + parts[1]; // 如果parts长度大于或等于3,获取第一个部分\n }\n\n const temGroupChecked = ref([\"default\", \"svip\", \"vip\"]);\n const groupChecked = ref([\"default\", \"svip\", \"vip\"]);\n const multipleTableRef = ref();\n const multipleTableRefPool = ref();\n const multipleSelection = ref([]);\n const multipleSelectionPool = ref([]);\n const handleSelectionChange = val => {\n multipleSelection.value = val;\n };\n const poolSelectionChange = val => {\n multipleSelectionPool.value = val;\n };\n const size = ref(\"ALL\");\n //pandoraNext 为 0\n const router = useRouter();\n /**\r\n * \r\n * \r\n * \r\n *\r\n */\n const show = ref(false);\n const show_1 = ref(false);\n const show_2 = ref(false);\n const show_3 = ref(false);\n const show_4 = ref(false);\n const show_5 = ref(false);\n const show_6 = ref(false);\n const show_7 = ref(false);\n const show_8 = ref(false);\n const show_9 = ref(false);\n const show_10 = ref(false);\n const show_11 = ref(false);\n const show_12 = ref(false);\n const show_13 = ref(false);\n const show_14 = ref(false);\n const show_15 = ref(false);\n const show_16 = ref(false);\n const show_17 = ref(false);\n /**\r\n * 定义User类接口\r\n */\n const buttonValue = ref(\"\");\n const options = [{\n buttonValue: \"选中删除Token\",\n label: \"选中删除Token\"\n }, {\n buttonValue: \"选中刷新Token\",\n label: \"选中刷新Token\"\n }, {\n buttonValue: \"选中合成pool_token\",\n label: \"选中合成pool_token\"\n }, {\n buttonValue: \"选中修改pool_token\",\n label: \"选中修改pool_token\"\n }];\n const buttonModel = ref(\"\");\n const optionsModel = [{\n buttonModel: \"gpt-3.5-turbo\",\n label: \"gpt-3.5-turbo\"\n }, {\n buttonModel: \"gpt-4-s\",\n label: \"gpt-4-s\"\n }, {\n buttonModel: \"gpt-4-mobile\",\n label: \"gpt-4-mobile\"\n }, {\n buttonModel: \"gpt-4-vision\",\n label: \"gpt-4-vision\"\n }, {\n buttonModel: \"gpt-4-classic\",\n label: \"gpt-4-classic\"\n }, {\n buttonModel: \"gpt-4-vision-preview\",\n label: \"gpt-4-vision-preview\"\n }];\n const buttonPoolModel = ref(\"\");\n const optionsPoolModel = [{\n buttonPoolModel: \"gpt-3.5-turbo\",\n label: \"gpt-3.5-turbo\"\n }, {\n buttonPoolModel: \"gpt-4\",\n label: \"gpt-4\"\n }];\n const buttonPoolValue = ref(\"\");\n const optionsPool = [{\n buttonPoolValue: \"选中检查pool_token\",\n label: \"选中检查pool_token\"\n }, {\n buttonPoolValue: \"选中删除pool_token\",\n label: \"选中删除pool_token\"\n }, {\n buttonPoolValue: \"选中刷新pool_token\",\n label: \"选中刷新pool_token\"\n }, {\n buttonPoolValue: \"选中更换pool_token\",\n label: \"选中更换pool_token\"\n }];\n /**\r\n * 定义Pool类接口\r\n */\n const proxy_api_prefix = ref(\"\");\n const isolated_conv_title = ref(\"*\");\n const bing = ref(\"\");\n const timeout = ref(\"\");\n const proxy_url = ref(\"\");\n const public_share = ref(false);\n //0.4.9.2\n const disable_signup = ref(false);\n const auto_conv_arkose = ref(false);\n const proxy_file_service = ref(false);\n const custom_doh_host = ref(\"\");\n const enabled = ref(false);\n const cert_file = ref(\"\");\n const key_file = ref(\"\");\n const site_password = ref(\"\");\n const setup_password = ref(\"\");\n const loginUsername = ref(\"\");\n const loginPassword = ref(\"\");\n const license_id = ref(\"\");\n //0.4.8.2\n const isGetToken = ref(false);\n const getTokenPassword = ref(\"\");\n const containerName = ref(\"PandoraNext\");\n const autoToken_url = ref(\"default\");\n const whitelist = ref(\"\");\n const provider = ref(\"\");\n const site_key = ref(\"\");\n const site_secret = ref(\"\");\n const site_login = ref(false);\n const setup_login = ref(false);\n const oai_username = ref(false);\n const oai_password = ref(false);\n //0.4.9.3\n const auto_updateSession = ref(false);\n const auto_updateTime = ref(5);\n const auto_updateNumber = ref(1);\n const pandoraNext_outUrl = ref(\"\");\n const oneAPi_outUrl = ref(\"\");\n const oneAPi_intoToken = ref(\"\");\n // 0.4.8\n const poolName = ref(\"\");\n const temPoolName = ref(\"\");\n const shareTokens = ref(\"\");\n const poolToken = ref(\"\");\n const poolTime = ref(\"\");\n const checkPool = ref(true);\n // 0.5.0\n //上传oneApi\n const poolNameValue = ref(\"\");\n const intoOneApi = ref(false);\n const poolModel_mapping = ref(\"\");\n const poolOneApi_models = ref([]);\n const addPoolOneApi_models = ref([]);\n const addPoolModel_mapping = ref(\"\");\n const oneApi_pandoraUrl = ref(pandoraNext_outUrl.value + proxy_api_prefix.value);\n const priority = ref(0);\n const temPool_token = ref(\"\");\n // 自定义校验函数,直接返回错误提示\n const customValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n const sitePasswordValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (regex.test(value) || value == \"\") {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n const poolNameValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^[\\u4e00-\\u9fa5a-zA-Z0-9]{3,10}$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字\";\n }\n };\n const addPasswordValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (addSetPoolToken.value == true || setPoolToken.value == true || regex.test(value)) {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n /**\r\n * 查看或者修改token信息参数\r\n */\n const temName = ref(\"\");\n const temToken = ref(\"\");\n const temAccessToken = ref(\"\");\n const temShareToken = ref(\"\");\n const temUsername = ref(\"\");\n const temUserPassword = ref(\"\");\n const temShared = ref(false);\n const temShow_user_info = ref(false);\n const temPlus = ref(false);\n const temPassword = ref(\"\");\n const setPoolToken = ref(false);\n const useRefreshToken = ref(false);\n const temCheckSession = ref(true);\n const tableData = ref([]);\n // 0.4.8\n const poolData = ref([]);\n const shareData = ref([]);\n // 0.5.9\n const loginData = ref([]);\n /**\r\n * 添加用户信息参数\r\n */\n const addName = ref(\"\");\n const addUsername = ref(\"\");\n const addUserPassword = ref(\"\");\n const addTokenValue = ref(\"\");\n const addShared = ref(false);\n const addShow_user_info = ref(false);\n const addPlus = ref(false);\n const addSetPoolToken = ref(false);\n const addUseRefreshToken = ref(false);\n const addPassword = ref(\"\");\n /**\r\n * 添加用户信息参数\r\n */\n const addOneApi_name = ref(\"\");\n const addToken_name = ref(\"\");\n const addToken_value = ref(\"\");\n const addOneApi_baseUrl = ref(\"\");\n const addOneApi_models = ref([]);\n const addModel_mapping = ref(\"\");\n const addOneApi_groups = ref([\"default\", \"svip\", \"vip\"]);\n const addPriority = ref(0);\n //Pandora的icon大小\n const iconSize = ref(window.innerHeight * 0.085);\n //搜索值\n const value = ref(\"\");\n const valuePool = ref(\"\");\n const valueShare = ref(\"\");\n /**\r\n * 用jwt令牌验证身份\r\n * 未通过者返回到/\r\n */\n const token = localStorage.getItem(\"jwtToken\"); // 从localStorage获取JWT令牌\n if (!token) {\n router.replace(`/`);\n }\n const headers = {\n Authorization: `Bearer ${token}`\n };\n /**\r\n * 用jwt令牌验证身份函数\r\n */\n const fetchLoginToken = async () => {\n axios.post(`https://yubb.fun${prefix}/api/loginToken?token=` + token).then(response => {\n if (response.data.code == 0) {\n console.error(response.data.data);\n router.replace(`/`);\n return;\n }\n }).catch(error => {\n console.error(\"请求loginToken接口失败\", error);\n router.replace(`/`);\n });\n };\n const onSearch = value => {\n if (value == \"Web\" || value == \"WEB\") {\n getWebToken(\"\");\n } else if (value == \"ALL\" || value == \"All\") {\n getToken(\"\");\n } else if (value.includes(\"API\")) {\n getAPIToken(\"\");\n } else {\n getToken(value);\n }\n };\n const onSearchShareToken = value => {\n getShare(value);\n };\n const onSearchPoolToken = value => {\n getPool(value);\n };\n /**\r\n * 获取数据操作,并把数据返回到tableData\r\n * 用于展示\r\n */\n const getToken = async value => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 将用户数据添加到tableData\n tableData.value = resUsers;\n }\n };\n const getAPIToken = async value => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 使用 filter 方法筛选出 setPoolToken 等于 true 的用户\n const filteredUsers = resUsers.filter(user => user.setPoolToken === true);\n // 将筛选后的用户数据添加到 tableData\n tableData.value = filteredUsers;\n }\n };\n const getWebToken = async value => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 使用 filter 方法筛选出 setPoolToken 等于 true 的用户\n const filteredUsers = resUsers.filter(user => user.setPoolToken === false);\n // 将筛选后的用户数据添加到 tableData\n tableData.value = filteredUsers;\n }\n };\n /**\r\n * 获取数据操作\r\n * 用于日志数据展示\r\n */\n const getLoginData = async () => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectLogin`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resLogins = data_token.map(item => ({\n ipAddress: item.ipAddress,\n requestIp: item.requestIp,\n outRequestNumber: item.outRequestNumber,\n inRequestNumber: item.inRequestNumber,\n lastLoginTime: item.lastLoginTime\n }));\n // 将用户数据添加到tableData\n loginData.value = resLogins;\n }\n };\n const getPool = async value => {\n const responsePool = await axios.get(`https://yubb.fun${prefix}/api/selectPoolToken?name=${value}`, {\n headers\n });\n const pool_token = responsePool.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(pool_token)) {\n const resPools = pool_token.map(item => ({\n poolName: item.poolName,\n poolTime: item.poolTime,\n poolToken: item.poolToken,\n shareTokens: item.shareTokens,\n checkPool: item.checkPool,\n intoOneApi: item.intoOneApi,\n poolOneApi_models: item.poolOneApi_models,\n poolModel_mapping: item.poolModel_mapping,\n oneApi_pandoraUrl: item.oneApi_pandoraUrl,\n groupChecked: item.groupChecked,\n priority: item.priority\n }));\n // 将用户数据添加到poolData\n poolData.value = resPools;\n }\n };\n const getShare = async value => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const responseShare = await axios.get(`https://yubb.fun${prefix}/api/selectShareToken?name=${value}`, {\n headers\n });\n const share_token = responseShare.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(share_token)) {\n const resShares = share_token.map(item => ({\n oneApi_name: item.oneApi_name,\n token_name: item.token_name,\n token_value: item.token_value,\n oneApi_baseUrl: item.oneApi_baseUrl,\n oneApi_models: item.oneApi_models,\n model_mapping: item.model_mapping,\n oneApi_groups: item.oneApi_groups,\n shareTime: item.shareTime,\n priority: item.priority\n }));\n // 将用户数据添加到poolData\n shareData.value = resShares;\n }\n loadingInstance.close();\n };\n const getSetting = async value => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectSetting`, {\n headers\n });\n const data = response.data.data;\n proxy_api_prefix.value = data.proxy_api_prefix;\n isolated_conv_title.value = data.isolated_conv_title;\n bing.value = data.bing;\n timeout.value = data.timeout;\n proxy_url.value = data.proxy_url;\n public_share.value = data.public_share;\n //0.4.9.2\n disable_signup.value = data.disable_signup;\n auto_conv_arkose.value = data.auto_conv_arkose;\n proxy_file_service.value = data.proxy_file_service;\n custom_doh_host.value = data.custom_doh_host;\n enabled.value = data.tls.enabled;\n cert_file.value = data.tls.cert_file;\n key_file.value = data.tls.key_file;\n site_password.value = data.site_password;\n setup_password.value = data.setup_password;\n if (data.whitelist == null) {\n whitelist.value = \"null\";\n } else whitelist.value = data.whitelist;\n loginUsername.value = data.loginUsername;\n loginPassword.value = data.loginPassword;\n license_id.value = data.license_id;\n //0.4.8.2\n isGetToken.value = data.isGetToken;\n getTokenPassword.value = data.getTokenPassword;\n containerName.value = data.containerName;\n autoToken_url.value = data.autoToken_url;\n provider.value = data.validation.provider;\n site_key.value = data.validation.site_key;\n site_secret.value = data.validation.site_secret;\n site_login.value = data.validation.site_login;\n setup_login.value = data.validation.setup_login;\n oai_username.value = data.validation.oai_username;\n oai_password.value = data.validation.oai_password;\n //0.4.9.3\n auto_updateSession.value = data.auto_updateSession;\n auto_updateTime.value = data.auto_updateTime;\n auto_updateNumber.value = data.auto_updateNumber;\n pandoraNext_outUrl.value = data.pandoraNext_outUrl;\n if (!pandoraNext_outUrl.value.endsWith(\"/\")) {\n oneApi_pandoraUrl.value = pandoraNext_outUrl.value + \"/\" + proxy_api_prefix.value;\n } else {\n oneApi_pandoraUrl.value = pandoraNext_outUrl.value + proxy_api_prefix.value;\n }\n //0.5.0\n oneAPi_outUrl.value = data.oneAPi_outUrl;\n oneAPi_intoToken.value = data.oneAPi_intoToken;\n fetchDataAndFillForm();\n };\n const fetchDataAndFillForm = async () => {\n if (loginPassword.value == \"123456\" && loginUsername.value == \"root\") {\n ElMessageBox.alert(\"请先修改默认的初始账号和密码,并填写相应的信息,具体可参考网站文档!\", \"温馨提醒\", {\n confirmButtonText: \"确定\",\n callback: action => {\n ElMessage({\n type: \"info\",\n message: `如果不知道怎么填的话,可以看tokensTool的文档站!`\n });\n }\n });\n show_4.value = true;\n loginPassword.value = \"\";\n loginUsername.value = \"\";\n }\n };\n const getSelectedData = () => {\n const selectedData = multipleSelection.value;\n if (selectedData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n } else {\n show_9.value = true;\n }\n };\n const addSelectPoolToken = async () => {\n try {\n const selectedData = multipleSelection.value;\n const names = selectedData.map(userData => userData.name);\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n if (addPoolModel_mapping.value == \"\") {\n addPoolModel_mapping.value = \"{}\";\n }\n JSON.parse(addPoolModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const addPoolToken = {\n poolName: poolNameValue.value,\n intoOneApi: intoOneApi.value,\n poolOneApi_models: addPoolOneApi_models.value.toString(),\n poolModel_mapping: addPoolModel_mapping.value,\n oneApi_pandoraUrl: oneApi_pandoraUrl.value,\n shareTokens: names,\n groupChecked: groupChecked.value.toString(),\n priority: priority.value\n };\n const response = await fetch(`https://yubb.fun${prefix}/api/addPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addPoolToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n poolNameValue.value = \"\";\n getPool(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n poolNameValue.value = \"\";\n intoOneApi.value = false;\n groupChecked.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n addPoolModel_mapping.value = \"\";\n addPoolOneApi_models.value = [];\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n loadingInstance.close();\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消生成pool_token\"\n });\n }\n show_9.value = false;\n };\n const handlePoolNameChange = poolNameValue => {\n let selectedItem = poolData.value.find(item => item.poolName === poolNameValue);\n if (selectedItem != null) {\n temPool_token.value = selectedItem.poolToken;\n intoOneApi.value = selectedItem.intoOneApi;\n poolOneApi_models.value = selectedItem.poolOneApi_models.split(\",\");\n poolModel_mapping.value = selectedItem.poolModel_mapping;\n oneApi_pandoraUrl.value = selectedItem.oneApi_pandoraUrl;\n temGroupChecked.value = selectedItem.groupChecked.split(\",\");\n priority.value = selectedItem.priority;\n }\n };\n const handleShareNameChange = addToken_name => {\n let selectedItem = tableData.value.find(item => item.name === addToken_name && item.setPoolToken === true);\n };\n const filteredTableData = computed(() => {\n return tableData.value.filter(item => item.setPoolToken === true);\n });\n const requirePoolToken = async () => {\n try {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n if (poolModel_mapping.value == \"\") {\n poolModel_mapping.value = \"{}\";\n }\n JSON.parse(poolModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const selectedData = multipleSelection.value;\n const names = selectedData.map(userData => userData.name);\n const addPoolToken = {\n poolName: poolName.value,\n poolToken: temPool_token.value,\n intoOneApi: intoOneApi.value,\n poolOneApi_models: poolOneApi_models.value.toString(),\n poolModel_mapping: poolModel_mapping.value,\n oneApi_pandoraUrl: oneApi_pandoraUrl.value,\n shareTokens: names,\n groupChecked: temGroupChecked.value.toString(),\n priority: priority.value\n };\n console.log(addPoolToken);\n const response = await fetch(`https://yubb.fun${prefix}/api/requirePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addPoolToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n getPool(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n poolName.value = \"\";\n temPool_token.value = \"\";\n intoOneApi.value = false;\n poolOneApi_models.value = [];\n poolModel_mapping.value = \"\";\n groupChecked.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n loadingInstance.close();\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消修改pool_token\"\n });\n }\n show_11.value = false;\n };\n const addShareToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n try {\n if (addModel_mapping.value == \"\") {\n addModel_mapping.value = \"{}\";\n }\n JSON.parse(addModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const addShareToken = {\n oneApi_name: addOneApi_name.value,\n token_name: addToken_name.value,\n oneApi_baseUrl: addOneApi_baseUrl.value,\n oneApi_models: addOneApi_models.value.toString(),\n model_mapping: addModel_mapping.value,\n oneApi_groups: addOneApi_groups.value.toString(),\n priority: priority.value\n };\n const response = await fetch(`https://yubb.fun${prefix}/api/addShareToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addShareToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n getShare(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n addOneApi_name.value = \"\";\n addToken_name.value = \"\";\n addOneApi_baseUrl.value = \"\";\n addOneApi_models.value = [];\n addModel_mapping.value = \"\";\n addOneApi_groups.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消修改pool_token\"\n });\n }\n show_14.value = false;\n loadingInstance.close();\n };\n const pandoraUsage = ref(\"\");\n // 在组件加载完成后自动触发数据加载和填充\n onMounted(async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetchLoginToken();\n // 页面重定向\n if (window.innerWidth <= 900) {\n router.replace(\"/iphone\");\n } else {\n router.replace(\"/home\");\n }\n try {\n // 并行执行不依赖的函数\n await Promise.all([onSearch(value.value), getPool(value.value), getSetting(value.value)]);\n // 等待获取 Pandora 数据\n const response = await axios.get(`https://yubb.fun${prefix}/api/getPandoraNext`, {\n headers\n });\n const data = response.data.data;\n if (data != null) {\n pandoraUsage.value = `${data.current}/${data.total}`;\n }\n } catch (error) {\n console.error(\"An error occurred:\", error);\n // 这里可以添加错误处理逻辑\n } finally {\n loadingInstance.close();\n }\n });\n //用来警告session过期\n const tableRowClassName = ({\n row\n }) => {\n if (row.checkSession == false) {\n return \"warning-row\";\n }\n return \"\";\n };\n const poolRowClassName = ({\n row\n }) => {\n if (row.checkPool == false) {\n return \"warning-row\";\n }\n return \"\";\n };\n /**\r\n * 跳转到PandoraNext\r\n */\n const redirectToExternalLink = () => {\n window.open(pandoraNext_outUrl.value);\n };\n /**\r\n * 跳转到PandoraNext分享页\r\n */\n const redirectPandoraNextShare = () => {\n var url = pandoraNext_outUrl.value;\n // 检查最后一个字符是否是 /\n if (url.charAt(url.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n url += \"/\";\n }\n window.open(url + \"shared.html\");\n };\n /**\r\n * 跳转到PandoraNext\r\n */\n const requirePandoraNextLink = () => {\n var url = pandoraNext_outUrl.value;\n // 检查最后一个字符是否是 /\n if (url.charAt(url.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n url += \"/\";\n }\n window.open(url + \"setup\");\n };\n /**\r\n * 跳转到tokensTool使用说明\r\n */\n const requireTokensToolLink = () => {\n window.open(\"https://apifox.com/apidoc/shared-40345b46-9c9c-45cc-b494-6a6a387a978f\");\n };\n /**\r\n * 用于用户信息设置\r\n */\n const activeIndex = ref(\"-1\");\n let temRequireToken = \"\";\n const handleSelect = (key, keyPath) => {\n console.log(\"选择准备!\");\n };\n /**\r\n * 添加token开启函数\r\n * 类user\r\n */\n const addToken = () => {\n show_1.value = true;\n };\n /**\r\n * 添加token函数\r\n * 类user\r\n */\n const onAddToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const now = new Date();\n const formattedTime = `${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, \"0\")}-${now.getDate().toString().padStart(2, \"0\")} ${now.getHours().toString().padStart(2, \"0\")}:${now.getMinutes().toString().padStart(2, \"0\")}:${now.getSeconds().toString().padStart(2, \"0\")}`;\n if (addPassword.value != \"\") {\n addShared.value = false;\n addPlus.value = false;\n addShow_user_info.value = false;\n }\n if (addSetPoolToken.value == false) {\n addTokenValue.value = addUsername.value + \",\" + addUserPassword.value;\n addUseRefreshToken.value = false;\n addShared.value = false;\n addPlus.value = false;\n addShow_user_info.value = false;\n }\n let api = {\n name: addName.value,\n token: addTokenValue.value,\n username: addUsername.value,\n userPassword: addUserPassword.value,\n shared: addShared.value,\n auto_shared: addShared.value,\n show_user_info: addShow_user_info.value,\n plus: addPlus.value,\n setPoolToken: addSetPoolToken.value,\n useRefreshToken: addUseRefreshToken.value,\n password: addPassword.value,\n updateTime: formattedTime\n };\n fetch(`https://yubb.fun${prefix}/api/addToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(api)\n }).then(response => response.json()) // 将 .json() 放在正确的位置\n .then(data => {\n if (data.code == 1) {\n ElMessage.success(\"添加成功!\");\n addName.value = \"\";\n addTokenValue.value = \"\";\n addUsername.value = \"\";\n addUserPassword.value = \"\";\n addShared.value = false;\n addShow_user_info.value = false;\n addPlus.value = false;\n addSetPoolToken.value = false;\n addUseRefreshToken.value = false;\n addPassword.value = \"\";\n if (api.token == \"\") {\n api.token = data.data;\n ElMessage.success(\"已为您自动装填token!\");\n }\n } else {\n ElMessage.error(data.msg);\n }\n addPassword.value = \"\";\n getToken(\"\");\n loadingInstance.close();\n }).catch(error => {\n ElMessage.error(\"获取账号出现问题,请检查刷新网址是否正确!\");\n loadingInstance.close();\n });\n show_1.value = false;\n };\n /**\r\n * 展示token函数\r\n * 类user\r\n */\n const chart_show = ref(null);\n const showData = async row => {\n temName.value = row.name;\n temUsername.value = row.username;\n temUserPassword.value = row.userPassword;\n temToken.value = row.token;\n temAccessToken.value = row.access_token;\n temShareToken.value = row.share_token;\n temShared.value = row.shared;\n temShow_user_info.value = row.show_user_info;\n temPlus.value = row.plus;\n temPassword.value = row.password;\n setPoolToken.value = row.setPoolToken;\n useRefreshToken.value = row.useRefreshToken;\n temCheckSession.value = row.checkSession;\n if (setPoolToken.value != true) {\n show_2.value = true;\n return;\n }\n const usageHeader = {\n Authorization: `Bearer ${row.access_token}`\n };\n show_2.value = true;\n if (setPoolToken.value) {\n const response = await axios.get(`${oneApi_pandoraUrl.value}/api/token/info/${row.share_token}`, {\n headers: usageHeader\n });\n let usageData = [];\n let modelData = [];\n for (let key in response.data.usage) {\n if (!key.startsWith(\"range\")) {\n modelData.push(key);\n usageData.push(response.data.usage[key]);\n }\n }\n if (modelData.length == 0 && usageData.length == 0) {\n modelData = [\"gpt-4\", \"gpt-3.5-turbo\", \"gpt-3.5-turbo-0613\"];\n usageData = [0, 0, 0];\n }\n const myChart_show = echarts.init(chart_show.value);\n const option = {\n title: {\n text: `今日${response.data.usage[\"range\"]} ${temName.value}各模型用量`,\n textStyle: {\n // 调整字体大小\n fontSize: 14,\n color: \"#606266\" // 这里是深灰色,你可以根据需要更改颜色\n },\n\n // 设置标题位置\n left: \"center\",\n top: \"bottom\" // 放在底部\n },\n\n tooltip: {},\n legend: {\n data: modelData\n },\n xAxis: {\n data: modelData\n },\n yAxis: {},\n series: [{\n name: \"对话数量\",\n type: \"bar\",\n data: usageData,\n barWidth: \"25%\",\n itemStyle: {\n color: function (params) {\n const colorList = [\"#3498db\", \"#2ecc71\", \"#f1c40f\", \"#9b59b6\", \"#1abc9c\", \"#e67e22\", \"#ecf0f1\", \"#95a5a6\", \"#34495e\", \"#16a085\"];\n return colorList[params.dataIndex % colorList.length];\n }\n }\n }]\n };\n myChart_show.setOption(option);\n }\n };\n const oneApi_name = ref(\"\");\n const token_name = ref(\"\");\n const token_value = ref(\"\");\n const oneApi_baseUrl = ref(\"\");\n const oneApi_models = ref([]);\n const model_mapping = ref(\"\");\n const temOneApi_models = ref(\"\");\n const temOneApi_groups = ref(\"\");\n const oneApi_groups = ref([\"default\", \"svip\", \"vip\"]);\n const shareTime = ref(\"\");\n const showShareToken = row => {\n oneApi_name.value = row.oneApi_name;\n token_name.value = row.token_name;\n token_value.value = row.token_value;\n oneApi_baseUrl.value = row.oneApi_baseUrl;\n temOneApi_models.value = row.oneApi_models;\n model_mapping.value = row.model_mapping;\n temOneApi_groups.value = row.oneApi_groups;\n priority.value = row.priority;\n shareTime.value = row.shareTime;\n show_15.value = true;\n };\n let previousSetpoolToken = false;\n let previousUseRefreshToken = false;\n let previousToken = \"\";\n //编辑准备\n const handleEdit = (index, row) => {\n temName.value = row.name;\n temUsername.value = row.username;\n temUserPassword.value = row.userPassword;\n //用来判断token是否更改\n temToken.value = row.token;\n temRequireToken = row.token;\n temShared.value = row.shared;\n temShow_user_info.value = row.show_user_info;\n temPlus.value = row.plus;\n temPassword.value = row.password;\n setPoolToken.value = row.setPoolToken;\n useRefreshToken.value = row.useRefreshToken;\n previousSetpoolToken = setPoolToken.value;\n previousUseRefreshToken = useRefreshToken.value;\n previousToken = temToken.value;\n temCheckSession.value = row.checkSession;\n temAccessToken.value = row.access_token;\n temShareToken.value = row.share_token;\n show.value = true;\n };\n /**\r\n * 修改系统设置函数\r\n */\n const onRequireSetting = async value => {\n if (value == 0) {\n show_3.value = true;\n } else if (value == 1) {\n show_4.value = true;\n } else if (value == 2) {\n show_5.value = true;\n }\n };\n const RequireSetting = value => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n if (whitelist.value == null || whitelist.value == \"null\") {\n whitelist.value = \"\";\n }\n if (enabled.value == false) {\n cert_file.value = \"\";\n key_file.value = \"\";\n }\n const tls = {\n enabled: enabled.value,\n cert_file: cert_file.value,\n key_file: key_file.value\n };\n const validation = {\n provider: provider.value,\n site_key: site_key.value,\n site_secret: site_secret.value,\n site_login: site_login.value,\n setup_login: setup_login.value,\n oai_username: oai_username.value,\n oai_password: oai_password.value\n };\n const setting = {\n proxy_api_prefix: proxy_api_prefix.value,\n isolated_conv_title: isolated_conv_title.value,\n bing: bing.value,\n timeout: timeout.value,\n proxy_url: proxy_url.value,\n public_share: public_share.value,\n site_password: site_password.value,\n setup_password: setup_password.value,\n loginUsername: loginUsername.value,\n loginPassword: loginPassword.value,\n license_id: license_id.value,\n //0.4.9.2\n disable_signup: disable_signup.value,\n auto_conv_arkose: auto_conv_arkose.value,\n proxy_file_service: proxy_file_service.value,\n custom_doh_host: custom_doh_host.value,\n //0.4.8.2\n isGetToken: isGetToken.value,\n getTokenPassword: getTokenPassword.value,\n containerName: containerName.value,\n autoToken_url: autoToken_url.value,\n whitelist: whitelist.value,\n validation: validation,\n tls: tls\n };\n fetch(`https://yubb.fun${prefix}/api/requireSetting`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(setting)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n } else {\n ElMessage.error(data.msg);\n }\n fetchLoginToken();\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求requireSetting接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n if (value == 0) {\n show_3.value = false;\n } else if (value == 1) {\n show_4.value = false;\n } else if (value == 2) {\n show_5.value = false;\n }\n };\n const RequireAutoUpdate = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n // 检查最后一个字符是否是 /\n if (pandoraNext_outUrl.value.charAt(pandoraNext_outUrl.value.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n pandoraNext_outUrl.value += \"/\";\n }\n const setting = {\n auto_updateSession: auto_updateSession.value,\n auto_updateTime: auto_updateTime.value,\n auto_updateNumber: auto_updateNumber.value,\n pandoraNext_outUrl: pandoraNext_outUrl.value,\n oneAPi_outUrl: oneAPi_outUrl.value,\n oneAPi_intoToken: oneAPi_intoToken.value\n };\n fetch(`https://yubb.fun${prefix}/api/controllerTask`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(setting)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n } else {\n ElMessage.error(data.msg);\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求controllerTask接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n show_8.value = false;\n };\n /**\r\n * 修改token函数\r\n * 类user\r\n */\n const RequireToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let formattedTime = \"\";\n if (temRequireToken != temToken.value) {\n const now = new Date();\n formattedTime = `${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, \"0\")}-${now.getDate().toString().padStart(2, \"0\")} ${now.getHours().toString().padStart(2, \"0\")}:${now.getMinutes().toString().padStart(2, \"0\")}:${now.getSeconds().toString().padStart(2, \"0\")}`;\n }\n if (setPoolToken.value == false) {\n temShared.value = false;\n temPlus.value = false;\n temShow_user_info.value = false;\n useRefreshToken.value = false;\n }\n if (temShared.value === true) {\n temPassword.value = \"\";\n } else {\n temPlus.value = false;\n temShow_user_info.value = false;\n }\n let msg = \"\";\n if (previousSetpoolToken != setPoolToken.value && previousToken == temToken.value) {\n if (setPoolToken.value == false) {\n msg = \"您确定要关闭API模型开启web模式,您将无法生成任何的token,但不消耗额度!\";\n } else {\n if (useRefreshToken.value == true) {\n msg = \"您确定要开启API模式,并使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!\";\n } else {\n msg = \"您确定要开启API模式,并使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!\";\n }\n }\n } else if (previousUseRefreshToken != useRefreshToken.value && previousToken == temToken.value) {\n if (useRefreshToken.value == true) {\n msg = \"您确定要切换使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!\";\n } else {\n msg = \"您确定要切换使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!\";\n }\n } else {\n msg = \"修改将要提交,您确定修改好了吗?\";\n }\n ElMessageBox.confirm(msg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const api = {\n name: temName.value,\n token: temToken.value,\n username: temUsername.value,\n userPassword: temUserPassword.value,\n shared: temShared.value,\n auto_shared: temShared.value,\n show_user_info: temShow_user_info.value,\n plus: temPlus.value,\n setPoolToken: setPoolToken.value,\n useRefreshToken: useRefreshToken.value,\n checkSession: temCheckSession.value,\n password: temPassword.value,\n access_token: temAccessToken.value,\n share_token: temShareToken.value\n };\n fetch(`https://yubb.fun${prefix}/api/requiredToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(api)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n getToken(\"\");\n } else {\n ElMessage.error(data.msg);\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求requireToken接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n show.value = false;\n }).catch(() => {\n loadingInstance.close();\n ElMessage({\n type: \"info\",\n message: \"编辑取消!\"\n });\n return;\n });\n };\n /**\r\n * 开启pandora函数\r\n */\n const openPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/open`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 暂停pandora函数\r\n */\n const closePandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/close`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 重启pandora函数\r\n */\n const AgainPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/restart`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 重载pandora函数\r\n */\n const reloadPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/reload`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 查询pandoraNext余额函数\r\n */\n const pandoraIp = ref(\"\");\n const pandoraTime = ref(\"\");\n const getPandoraNext = async () => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/getPandoraNext`, {\n headers\n });\n const data = response.data.data;\n if (data != null) {\n pandoraUsage.value = data.current + \"/\" + data.total;\n pandoraIp.value = data.ip;\n var currentTime = new Date();\n const futureTime = new Date(currentTime.getTime() + data.ttl * 1000);\n var year = futureTime.getFullYear();\n var month = futureTime.getMonth() + 1; // 月份是从0开始的,所以要加1\n var day = futureTime.getDate();\n var hours = futureTime.getHours();\n var minutes = futureTime.getMinutes();\n var seconds = futureTime.getSeconds();\n pandoraTime.value = year + \"-\" + month + \"-\" + day + \" \" + hours + \":\" + minutes + \":\" + seconds;\n }\n show_7.value = true;\n };\n /**\r\n * 一键全生成\r\n */\n const updateAllShareToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/updateAllToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n await Promise.all([getToken(\"\"), getPool(\"\")]);\n ElMessageBox.alert(data, \"温馨提示\", {\n dangerouslyUseHTMLString: true\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 一键全刷新pool_token\r\n */\n const updateAllPoolToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/updateAllPoolToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n getPool(\"\");\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 一键全检查pool_token\r\n */\n const verifyAllPoolToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/verifyAllPoolToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n getPool(\"\");\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 刷新Token函数\r\n */\n const reNew = row => {\n if (row.setPoolToken == false) {\n ElMessage.error(\"未开启API模式,无法刷新\");\n return;\n }\n let reNewMsg = \"您确定要刷新session_token吗,刷新session_token消耗100额度,请您要仔细认真考虑哦!\";\n if (row.useRefreshToken) {\n reNewMsg = \"您确定要刷新refresh_token吗,刷新refresh_token消耗1000额度,请您要仔细认真考虑哦!\";\n }\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/updateSessionToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n row.token = data.data;\n getToken(\"\");\n ElMessageBox.alert(\"刷新成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n };\n /**\r\n * 刷新Token函数\r\n */\n const reNewPool = row => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/refreshSimplyPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(\"刷新成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n const reviewShare = row => {\n oneApi_name.value = row.oneApi_name;\n token_name.value = row.token_name;\n token_value.value = row.token_value;\n oneApi_baseUrl.value = row.oneApi_baseUrl;\n oneApi_models.value = row.oneApi_models.split(\",\");\n model_mapping.value = row.model_mapping;\n oneApi_groups.value = row.oneApi_groups.split(\",\");\n priority.value = row.priority;\n shareTime.value = row.shareTime;\n show_16.value = true;\n };\n const requireShareToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const requireShare = {\n oneApi_name: oneApi_name.value,\n token_name: token_name.value,\n token_value: token_value.value,\n oneApi_baseUrl: oneApi_baseUrl.value,\n oneApi_models: oneApi_models.value.toString(),\n model_mapping: model_mapping.value,\n oneApi_groups: oneApi_groups.value.toString(),\n priority: priority.value\n };\n fetch(`https://yubb.fun${prefix}/api/requireShareToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(requireShare)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n getShare(\"\");\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n show_16.value = false;\n };\n /**\r\n * 生成token操作\r\n */\n const review = row => {\n if (row.setPoolToken == false) {\n ElMessage.error(\"未开启API模式,无法生成\");\n return;\n }\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/updateToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n ElMessageBox.alert(\"生成shareToken成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n getToken(\"\");\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 更新token操作\r\n */\n const reviewPool = row => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/changePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(\"更换pool_token成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 删除PoolToken函数\r\n * 参数 Pool\r\n */\n const deletePoolToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个Pool_Token吗,删除之后就找不到咯,请您要仔细认真考虑哦!\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n fetch(`https://yubb.fun${prefix}/api/deletePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data.data != null) {\n getPool(\"\");\n ElMessage.success(data.data);\n loadingInstance.close();\n } else {\n getPool(\"\");\n ElMessage.error(data.msg);\n loadingInstance.close();\n }\n show_9.value = false;\n }).catch(error => {\n // 处理完成失败的逻辑\n console.error(\"删除失败\", error);\n getPool(\"\");\n loadingInstance.close();\n show_9.value = false;\n });\n }).catch(() => {\n loadingInstance.close();\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n });\n };\n /**\r\n * 删除PoolToken函数\r\n * 参数 Pool\r\n */\n const verifySimplyPoolToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/verifySimplyPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n getPool(\"\");\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 删除Token函数\r\n * 参数 user\r\n */\n const deleteToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个Token吗,删除之后就找不到咯,记得点击全部刷新poolToken\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`https://yubb.fun${prefix}/api/deleteToken`, row, {\n headers\n }).then(async response => {\n if (row.setPoolToken == true) {\n await axios.get(`https://yubb.fun${prefix}/api/updateAllPoolToken`, {\n headers\n });\n }\n msg = response.data.data;\n getToken(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n };\n /**\r\n * 删除Token函数\r\n * 参数 user\r\n */\n const deleteShareToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个share_Token吗,删除之后就找不到咯\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`https://yubb.fun${prefix}/api/deleteShareToken`, row, {\n headers\n }).then(async response => {\n msg = response.data.data;\n getShare(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n };\n /**\r\n * 获取token的过期时间\r\n */\n const formatDate = value => {\n if (!value) return \"\";\n var nowDay = new Date();\n const timeDay = parseISO(value.updateTime);\n const daysDiff = differenceInDays(nowDay, timeDay);\n if (value.token.length >= 2000) {\n return daysDiff >= 80 ? \"已经过去了至少80天\" : Math.ceil(80 - daysDiff) + \"天\";\n } else if (value.token.length < 200 && !value.token.includes(\"fk-\")) {\n return \"永久\";\n } else {\n return daysDiff >= 10 ? \"已经过去了至少10天\" : Math.ceil(10 - daysDiff) + \"天\";\n }\n };\n /**\r\n * 更改Token显示操作\r\n */\n const dataToken = value => {\n return value.substring(0, 30) + \"...\";\n };\n /**\r\n * 退出登录操作\r\n */\n const logout = () => {\n // 删除本地存储的 token\n localStorage.removeItem(\"jwtToken\");\n // 使用 Vue Router 进行页面跳转到登录页面\n router.replace(`/`);\n };\n const getPoolToken = () => {\n show_6.value = true;\n };\n const getShareToken = async () => {\n await getShare(\"\");\n show_13.value = true;\n };\n const getLogin = () => {\n getLoginData();\n show_10.value = true;\n };\n const redirectToGitHub = () => {\n window.open(\"https://github.com/Yanyutin753/PandoraNext-TokensTool\");\n };\n const copyToken = value => {\n const textarea = document.createElement(\"textarea\");\n // 设置 textarea 的值为要复制的文本\n textarea.value = value;\n // 将 textarea 添加到 DOM 中\n document.body.appendChild(textarea);\n // 选中 textarea 中的文本\n textarea.select();\n // 执行复制操作\n document.execCommand(\"copy\");\n // 从 DOM 中移除 textarea 元素\n document.body.removeChild(textarea);\n ElMessage({\n type: \"success\",\n message: \"复制成功!\"\n });\n };\n const selectChoice = buttonValue => {\n const selectedData = multipleSelection.value;\n const userData = selectedData.map(userData => userData);\n if (selectedData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n }\n if (buttonValue == \"选中删除Token\") {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这\" + selectedData.length + \"个Token吗,删除之后就找不到咯\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`https://yubb.fun${prefix}/api/deleteTokenList`, userData, {\n headers\n }).then(async response => {\n await axios.get(`https://yubb.fun${prefix}/api/updateAllPoolToken`, {\n headers\n });\n msg = response.data.data;\n getToken(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n return;\n } else if (buttonValue == \"选中刷新Token\") {\n let count = 0;\n const selectedData = multipleSelection.value;\n const userData = selectedData.map(userData => userData);\n userData.forEach((item, index) => {\n if (item.setPoolToken) {\n if (item.useRefreshToken) {\n count += 1000;\n } else {\n count += 100;\n }\n }\n });\n const reNewMsg = \"您确定要花\" + count + \"积分刷新这\" + selectedData.length + \"个Token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/updateSessionTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(userData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getToken(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中合成pool_token\") {\n getSelectedData();\n } else if (buttonValue == \"选中修改pool_token\") {\n poolName.value = \"\";\n shareTokens.value = \"\";\n temPool_token.value = \"\";\n poolTime.value = \"\";\n intoOneApi.value = false;\n poolOneApi_models.value = [];\n poolModel_mapping.value = \"\";\n oneApi_pandoraUrl.value = \"\";\n temGroupChecked.value = [];\n priority.value = 0;\n show_11.value = true;\n }\n };\n const showPool = row => {\n temPoolName.value = row.poolName;\n shareTokens.value = row.shareTokens;\n temPool_token.value = row.poolToken;\n poolTime.value = row.poolTime;\n intoOneApi.value = row.intoOneApi;\n poolOneApi_models.value = row.poolOneApi_models.split(\",\");\n poolModel_mapping.value = row.poolModel_mapping;\n oneApi_pandoraUrl.value = row.oneApi_pandoraUrl;\n temGroupChecked.value = row.groupChecked.split(\",\");\n priority.value = row.priority;\n show_17.value = true;\n };\n const selectPoolChoice = buttonValue => {\n const selectedPoolData = multipleSelectionPool.value;\n const temPoolData = selectedPoolData.map(temPoolData => temPoolData);\n if (temPoolData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n }\n if (buttonValue == \"选中检查pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要花\" + count + \"积分检查这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/verifySimplyPoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"检查取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中刷新pool_token\") {\n const reNewMsg = \"您确定要刷新这\" + selectedPoolData.length + \"个pool_token吗?\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/refreshSimplyPoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中更换pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要更换这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/changePoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"更换取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中删除pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要删除这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/deletePoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n });\n return;\n }\n };\n const chart = ref(null);\n const getUsage = async () => {\n show_12.value = true;\n const response = await axios.get(`https://yubb.fun${prefix}/api/modelsUsage`, {\n headers\n });\n let usageData = response.data.data.map(item => item.usage);\n let modelData = response.data.data.map(item => item.model);\n const myChart = echarts.init(chart.value);\n const option = {\n title: {\n text: \"copilot每日对话统计\",\n fontSize: 18,\n color: \"#606266\" // 这里是深灰色,你可以根据需要更改颜色\n },\n\n tooltip: {},\n legend: {\n data: modelData\n },\n xAxis: {\n data: modelData\n },\n yAxis: {},\n series: [{\n name: \"对话数量\",\n type: \"bar\",\n data: usageData,\n barWidth: \"40%\",\n itemStyle: {\n color: function (params) {\n const colorList = [\"#3498db\", \"#2ecc71\", \"#f1c40f\", \"#9b59b6\", \"#1abc9c\", \"#e67e22\", \"#ecf0f1\", \"#95a5a6\", \"#34495e\", \"#16a085\"];\n return colorList[params.dataIndex % colorList.length];\n }\n }\n }]\n };\n myChart.setOption(option);\n };\n return (_ctx, _cache) => {\n const _component_van_icon = _resolveComponent(\"van-icon\");\n const _component_el_menu_item = _resolveComponent(\"el-menu-item\");\n const _component_el_sub_menu = _resolveComponent(\"el-sub-menu\");\n const _component_el_menu = _resolveComponent(\"el-menu\");\n const _component_van_button = _resolveComponent(\"van-button\");\n const _component_el_page_header = _resolveComponent(\"el-page-header\");\n const _component_van_search = _resolveComponent(\"van-search\");\n const _component_el_table_column = _resolveComponent(\"el-table-column\");\n const _component_el_button = _resolveComponent(\"el-button\");\n const _component_el_tag = _resolveComponent(\"el-tag\");\n const _component_el_popover = _resolveComponent(\"el-popover\");\n const _component_el_option = _resolveComponent(\"el-option\");\n const _component_el_select = _resolveComponent(\"el-select\");\n const _component_van_field = _resolveComponent(\"van-field\");\n const _component_van_switch = _resolveComponent(\"van-switch\");\n const _component_van_cell_group = _resolveComponent(\"van-cell-group\");\n const _component_van_form = _resolveComponent(\"van-form\");\n const _component_van_dialog = _resolveComponent(\"van-dialog\");\n const _component_CopyDocument = _resolveComponent(\"CopyDocument\");\n const _component_el_icon = _resolveComponent(\"el-icon\");\n const _component_h10 = _resolveComponent(\"h10\");\n const _component_el_select_group = _resolveComponent(\"el-select-group\");\n const _component_el_dialog = _resolveComponent(\"el-dialog\");\n const _component_el_form_item = _resolveComponent(\"el-form-item\");\n const _component_el_input = _resolveComponent(\"el-input\");\n const _component_van_checkbox = _resolveComponent(\"van-checkbox\");\n const _component_van_checkbox_group = _resolveComponent(\"van-checkbox-group\");\n const _directive_loading = _resolveDirective(\"loading\");\n return _openBlock(), _createElementBlock(_Fragment, null, [_createElementVNode(\"div\", _hoisted_1, [_hoisted_2, _createVNode(_component_el_menu, {\n \"default-active\": activeIndex.value,\n class: \"el-menu-demo\",\n mode: \"horizontal\",\n ellipsis: false,\n onSelect: handleSelect,\n \"active-text-color\": \"#0ea27e\",\n \"text-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"0\"\n }, {\n title: _withCtx(() => [_createElementVNode(\"div\", _hoisted_4, [_createElementVNode(\"h2\", null, _toDisplayString(pandoraUsage.value), 1)]), _createVNode(_component_van_icon, {\n name: \"replay\",\n size: \"20\",\n onClick: getPandoraNext\n })]),\n default: _withCtx(() => [_hoisted_3]),\n _: 1\n }), _hoisted_5, _createVNode(_component_el_sub_menu, {\n index: \"3\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"列表\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"3-3\",\n onClick: updateAllShareToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"全部检查并生成\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-1\",\n onClick: getPoolToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"pool_token列表\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-2\",\n onClick: getShareToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"share_token列表\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-5\",\n onClick: getUsage\n }, {\n default: _withCtx(() => [_createTextVNode(\"copilot每日用量统计\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-4\",\n onClick: getLogin\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool登录日志\")]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"1\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"设置\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"1-1\",\n onClick: _cache[0] || (_cache[0] = $event => onRequireSetting(pandoraNext))\n }, {\n default: _withCtx(() => [_createTextVNode(\"PandoraNext设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"1-2\",\n onClick: _cache[1] || (_cache[1] = $event => onRequireSetting(tokensTool))\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"1-3\",\n onClick: _cache[2] || (_cache[2] = $event => onRequireSetting(validation))\n }, {\n default: _withCtx(() => [_createTextVNode(\"验证码信息设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"1-4\",\n onClick: _cache[3] || (_cache[3] = $event => show_8.value = true)\n }, {\n default: _withCtx(() => [_createTextVNode(\"定时&接口设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"1-5\",\n onClick: requireTokensToolLink\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool使用手册\")]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"2\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"状态\")]),\n default: _withCtx(() => [_createVNode(_component_el_sub_menu, {\n index: \"2-1\"\n }, {\n title: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"状态\", 1)]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"2-1-1\",\n onClick: openPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"开启\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-1-2\",\n onClick: closePandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"暂停\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-1-3\",\n onClick: AgainPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"重启\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-1-4\",\n onClick: reloadPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"重载\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"2-2\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"跳转Web服务\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"2-2-1\",\n onClick: redirectToExternalLink\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"主页\", 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-2-2\",\n onClick: redirectPandoraNextShare\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"共享页\", 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-2-3\",\n onClick: requirePandoraNextLink\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"修改页\", 1)]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"2-3\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"获取token地址\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"2-3-1\"\n }, {\n default: _withCtx(() => [_hoisted_6]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-3-2\"\n }, {\n default: _withCtx(() => [_hoisted_7]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-3-3\"\n }, {\n default: _withCtx(() => [_hoisted_8]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-4\",\n onClick: logout\n }, {\n default: _withCtx(() => [_createTextVNode(\"退出登录\")]),\n _: 1\n })]),\n _: 1\n })]),\n _: 1\n }, 8, [\"default-active\"]), _createElementVNode(\"div\", _hoisted_9, [_createVNode(_component_el_page_header, {\n icon: null,\n title: \" \"\n }, {\n content: _withCtx(() => [_hoisted_10]),\n extra: _withCtx(() => [_createElementVNode(\"div\", {\n class: \"addToken\",\n onClick: addToken\n }, [_createVNode(_component_van_button, {\n square: \"\",\n icon: \"add-o\",\n color: \"#0ea27e\",\n class: \"addTokenButton\"\n })])]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_11, [_createElementVNode(\"div\", _hoisted_12, [_createElementVNode(\"div\", _hoisted_13, [_createVNode(_component_van_search, {\n modelValue: value.value,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => value.value = $event),\n shape: \"round\",\n clearable: \"\",\n placeholder: \"请输入搜索token名称或类型\",\n onSearch: onSearch\n }, null, 8, [\"modelValue\"])]), _createElementVNode(\"div\", _hoisted_14, [_withDirectives((_openBlock(), _createBlock(_unref(ElTable), {\n data: tableData.value,\n style: {\n \"width\": \"100%\"\n },\n onSelectionChange: handleSelectionChange,\n class: \"tokenTable\",\n \"default-sort\": {\n prop: 'updateTime',\n prop: 'setPoolToken'\n },\n \"row-class-name\": tableRowClassName\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n type: \"selection\",\n width: \"45\"\n }), _createVNode(_component_el_table_column, {\n label: \"名称\",\n width: \"160\",\n prop: \"setPoolToken\",\n sortable: \"\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_15, [_createElementVNode(\"div\", null, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"h5\", null, _toDisplayString(scope.row.setPoolToken ? scope.row.useRefreshToken ? \"refAPI\" : \"sesAPI\" : \"Web\"), 1)]),\n _: 2\n }, 1024)]), _createElementVNode(\"span\", _hoisted_16, _toDisplayString(scope.row.name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n prop: \"updateTime\",\n sortable: \"\",\n label: \"有效时间\",\n width: \"117\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", null, \"注册时间:\" + _toDisplayString(scope.row.updateTime), 1)]),\n reference: _withCtx(() => [_createElementVNode(\"span\", _hoisted_17, [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(formatDate(scope.row)), 1)]),\n _: 2\n }, 1024)])]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n width: \"370\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => handleEdit(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"编辑\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => showData(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deleteToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"success\",\n onClick: $event => reNew(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"刷新\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"warning\",\n onClick: $event => review(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"生成\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"])), [[_directive_loading, _ctx.loading]])]), _createElementVNode(\"div\", _hoisted_18, [_createVNode(_component_el_select, {\n modelValue: buttonValue.value,\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = $event => buttonValue.value = $event),\n clearable: \"\",\n filterable: \"\",\n placeholder: \"请选择批量操作\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(options, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonValue,\n label: item.label,\n value: item.buttonValue\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_button, {\n class: \"my-button\",\n onClick: _cache[6] || (_cache[6] = $event => selectChoice(buttonValue.value))\n }, {\n default: _withCtx(() => [_hoisted_19]),\n _: 1\n })])])]), _hoisted_20]), _createVNode(_component_van_dialog, {\n show: show.value,\n \"onUpdate:show\": _cache[17] || (_cache[17] = $event => show.value = $event),\n title: \"📌修改token信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_21, [_createVNode(_component_van_form, {\n onSubmit: _cache[16] || (_cache[16] = $event => RequireToken())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_22, _createVNode(_component_van_field, {\n modelValue: temUsername.value,\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = $event => temUsername.value = $event),\n name: \"OpenAi邮箱\",\n label: \"OpenAi邮箱\",\n \"input-align\": \"center\",\n placeholder: \"OpenAi邮箱\",\n rules: [{\n required: true,\n message: '请填写OpenAi邮箱'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_23, _createVNode(_component_van_field, {\n modelValue: temUserPassword.value,\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = $event => temUserPassword.value = $event),\n name: \"OpenAi密码\",\n \"input-align\": \"center\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n rules: [{\n required: true,\n message: '请填写OpenAi密码'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_24, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: setPoolToken.value,\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = $event => setPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_25, [_hoisted_26, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refreshToken\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: useRefreshToken.value,\n \"onUpdate:modelValue\": _cache[10] || (_cache[10] = $event => useRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_27, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temShared.value,\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = $event => temShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), temShared.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_28, [_hoisted_29, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temShow_user_info.value,\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = $event => temShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_30, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temPlus.value,\n \"onUpdate:modelValue\": _cache[13] || (_cache[13] = $event => temPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true)])) : _createCommentVNode(\"\", true), temShared.value == false || setPoolToken.value == false ? (_openBlock(), _createElementBlock(\"div\", _hoisted_31, [_hoisted_32, _createVNode(_component_van_field, {\n rows: \"2\",\n type: \"textarea\",\n autoSize: \"\",\n modelValue: temPassword.value,\n \"onUpdate:modelValue\": _cache[14] || (_cache[14] = $event => temPassword.value = $event),\n name: \"Token的密码\",\n \"input-align\": \"center\",\n label: \"Token的密码\",\n placeholder: \"填了将不会分享给他人(如不填则输入Token名即可进入)\",\n rules: [{\n validator: addPasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), _hoisted_33, _createVNode(_component_van_field, {\n modelValue: temToken.value,\n \"onUpdate:modelValue\": _cache[15] || (_cache[15] = $event => temToken.value = $event),\n label: \"Token的值\",\n type: \"textarea\",\n \"input-align\": \"center\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的Token(选填),session或refresh_token\",\n autosize: {\n maxHeight: 100,\n minHeight: 50\n },\n \"show-word-limit\": \"\"\n }, null, 8, [\"modelValue\"]), _hoisted_34]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_35, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_36]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_1.value,\n \"onUpdate:show\": _cache[29] || (_cache[29] = $event => show_1.value = $event),\n title: \"✨添加token信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"addTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_37, [_createVNode(_component_van_form, {\n onSubmit: _cache[28] || (_cache[28] = $event => onAddToken())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_38, _createVNode(_component_van_field, {\n modelValue: addName.value,\n \"onUpdate:modelValue\": _cache[18] || (_cache[18] = $event => addName.value = $event),\n name: \"Token用户名\",\n label: \"Token用户名\",\n placeholder: \"Token用户名\",\n rules: [{\n required: true,\n message: '请填写Token用户名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_39, _createVNode(_component_van_field, {\n modelValue: addUsername.value,\n \"onUpdate:modelValue\": _cache[19] || (_cache[19] = $event => addUsername.value = $event),\n name: \"OpenAi用户名\",\n label: \"OpenAi用户名\",\n placeholder: \"OpenAi用户名\",\n rules: [{\n required: true,\n message: '请填写OpenAi用户名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_40, _createVNode(_component_van_field, {\n modelValue: addUserPassword.value,\n \"onUpdate:modelValue\": _cache[20] || (_cache[20] = $event => addUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n rules: [{\n required: true,\n message: '请填写OpenAi密码'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_41, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addSetPoolToken.value,\n \"onUpdate:modelValue\": _cache[21] || (_cache[21] = $event => addSetPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_42, [_hoisted_43, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refreshToken\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addUseRefreshToken.value,\n \"onUpdate:modelValue\": _cache[22] || (_cache[22] = $event => addUseRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_44, [_hoisted_45, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addShared.value,\n \"onUpdate:modelValue\": _cache[23] || (_cache[23] = $event => addShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), addShared.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_46, [_hoisted_47, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addShow_user_info.value,\n \"onUpdate:modelValue\": _cache[24] || (_cache[24] = $event => addShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_48, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addPlus.value,\n \"onUpdate:modelValue\": _cache[25] || (_cache[25] = $event => addPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true)])) : _createCommentVNode(\"\", true), addShared.value == '' ? (_openBlock(), _createElementBlock(\"div\", _hoisted_49, [_hoisted_50, _createVNode(_component_van_field, {\n rows: \"3\",\n type: \"textarea\",\n autoSize: \"\",\n modelValue: addPassword.value,\n \"onUpdate:modelValue\": _cache[26] || (_cache[26] = $event => addPassword.value = $event),\n name: \"Token的密码\",\n label: \"Token的密码\",\n \"input-align\": \"center\",\n placeholder: \"填了将不会分享给他人(如不填则输入Token名即可进入)\",\n rules: [{\n validator: addPasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_51, [_hoisted_52, _createVNode(_component_van_field, {\n rows: \"3\",\n type: \"textarea\",\n maxlength: \"5000\",\n \"show-word-limit\": \"\",\n modelValue: addTokenValue.value,\n \"onUpdate:modelValue\": _cache[27] || (_cache[27] = $event => addTokenValue.value = $event),\n name: \"Token的值\",\n label: \"Token的值\",\n placeholder: \"选填(可不填,不填则使用账号密码),目前只支持session_token或refresh_token\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_53]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_54, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_55]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_2.value,\n \"onUpdate:show\": _cache[49] || (_cache[49] = $event => show_2.value = $event),\n title: \"🔎token信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"showDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_56, [_createVNode(_component_van_form, null, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_57, _createVNode(_component_van_field, {\n modelValue: temName.value,\n \"onUpdate:modelValue\": _cache[30] || (_cache[30] = $event => temName.value = $event),\n name: \"Token用户名\",\n label: \"Token用户名\",\n placeholder: \"Token用户名\",\n \"left-icon\": \"description-o\",\n \"input-align\": \"center\",\n readonly: true,\n onClickLeftIcon: _cache[31] || (_cache[31] = $event => copyToken(temName.value))\n }, null, 8, [\"modelValue\"]), _hoisted_58, _createVNode(_component_van_field, {\n modelValue: temPassword.value,\n \"onUpdate:modelValue\": _cache[32] || (_cache[32] = $event => temPassword.value = $event),\n type: \"temPassword\",\n name: \"Token的密码\",\n label: \"Token的密码\",\n placeholder: \"Token的密码\",\n \"input-align\": \"center\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[33] || (_cache[33] = $event => copyToken(temPassword.value))\n }, null, 8, [\"modelValue\"]), _hoisted_59, _createVNode(_component_van_field, {\n modelValue: temUsername.value,\n \"onUpdate:modelValue\": _cache[34] || (_cache[34] = $event => temUsername.value = $event),\n name: \"OpenAi邮箱\",\n label: \"OpenAi邮箱\",\n placeholder: \"OpenAi邮箱\",\n \"left-icon\": \"description-o\",\n \"input-align\": \"center\",\n readonly: true,\n onClickLeftIcon: _cache[35] || (_cache[35] = $event => copyToken(temUsername.value))\n }, null, 8, [\"modelValue\"]), _hoisted_60, _createVNode(_component_van_field, {\n modelValue: temUserPassword.value,\n \"onUpdate:modelValue\": _cache[36] || (_cache[36] = $event => temUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n \"left-icon\": \"description-o\",\n \"input-align\": \"center\",\n readonly: true,\n onClickLeftIcon: _cache[37] || (_cache[37] = $event => copyToken(temUserPassword.value))\n }, null, 8, [\"modelValue\"]), _hoisted_61, _createVNode(_component_van_field, {\n name: \"temShared\",\n readonly: true,\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temShared.value,\n \"onUpdate:modelValue\": _cache[38] || (_cache[38] = $event => temShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_62, _createVNode(_component_van_field, {\n readonly: true,\n name: \"temShow_user_info\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temShow_user_info.value,\n \"onUpdate:modelValue\": _cache[39] || (_cache[39] = $event => temShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_63, _createVNode(_component_van_field, {\n readonly: true,\n name: \"temPlus\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temPlus.value,\n \"onUpdate:modelValue\": _cache[40] || (_cache[40] = $event => temPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_64, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: setPoolToken.value,\n \"onUpdate:modelValue\": _cache[41] || (_cache[41] = $event => setPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_65, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refresh_token\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: useRefreshToken.value,\n \"onUpdate:modelValue\": _cache[42] || (_cache[42] = $event => useRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_66, _createVNode(_component_van_field, {\n modelValue: temToken.value,\n \"onUpdate:modelValue\": _cache[43] || (_cache[43] = $event => temToken.value = $event),\n label: \"Token的值\",\n type: \"textarea\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的Token(session或refresh_token)\",\n \"show-word-limit\": \"\",\n \"input-align\": \"center\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[44] || (_cache[44] = $event => copyToken(temToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 50\n }\n }, null, 8, [\"modelValue\"]), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_67, [_hoisted_68, _createVNode(_component_van_field, {\n modelValue: temAccessToken.value,\n \"onUpdate:modelValue\": _cache[45] || (_cache[45] = $event => temAccessToken.value = $event),\n label: \"access_token\",\n type: \"textarea\",\n maxlength: \"5000\",\n \"input-align\": \"center\",\n placeholder: \"请填写OpenAi的access_token\",\n \"show-word-limit\": \"\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[46] || (_cache[46] = $event => copyToken(temAccessToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 50\n }\n }, null, 8, [\"modelValue\"]), _hoisted_69, _createVNode(_component_van_field, {\n modelValue: temShareToken.value,\n \"onUpdate:modelValue\": _cache[47] || (_cache[47] = $event => temShareToken.value = $event),\n label: \"share_token\",\n type: \"textarea\",\n maxlength: \"200\",\n \"input-align\": \"center\",\n placeholder: \"请填写OpenAi的share_token\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[48] || (_cache[48] = $event => copyToken(temShareToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 50\n }\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true)]),\n _: 1\n })]),\n _: 1\n }), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_70, [_createElementVNode(\"div\", {\n ref_key: \"chart_show\",\n ref: chart_show,\n style: {\n \"width\": \"auto\",\n \"height\": \"300px\"\n }\n }, null, 512), _hoisted_71])) : _createCommentVNode(\"\", true)])]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_3.value,\n \"onUpdate:show\": _cache[64] || (_cache[64] = $event => show_3.value = $event),\n title: \"PandoraNext设置信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_72, [_createVNode(_component_van_form, {\n onSubmit: _cache[63] || (_cache[63] = $event => RequireSetting(pandoraNext))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_73, _createVNode(_component_van_field, {\n modelValue: isolated_conv_title.value,\n \"onUpdate:modelValue\": _cache[50] || (_cache[50] = $event => isolated_conv_title.value = $event),\n name: \"对话标题\",\n label: \"对话标题\",\n placeholder: \"隔离对话设置标题\"\n }, null, 8, [\"modelValue\"]), _hoisted_74, _createVNode(_component_van_field, {\n modelValue: bing.value,\n \"onUpdate:modelValue\": _cache[51] || (_cache[51] = $event => bing.value = $event),\n name: \"绑定IP和端口\",\n label: \"绑定IP和端口\",\n placeholder: \"绑定IP和端口(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_75, _createVNode(_component_van_field, {\n modelValue: custom_doh_host.value,\n \"onUpdate:modelValue\": _cache[52] || (_cache[52] = $event => custom_doh_host.value = $event),\n name: \"DoH主机名\",\n label: \"DoH主机名\",\n placeholder: \"配置自定义的DoH主机名(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_76, _createVNode(_component_van_field, {\n modelValue: timeout.value,\n \"onUpdate:modelValue\": _cache[53] || (_cache[53] = $event => timeout.value = $event),\n name: \"请求超时时间\",\n label: \"请求超时时间\",\n placeholder: \"请求超时时间(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_77, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享对话(选填)\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: public_share.value,\n \"onUpdate:modelValue\": _cache[54] || (_cache[54] = $event => public_share.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_78, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否配置证书\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: enabled.value,\n \"onUpdate:modelValue\": _cache[55] || (_cache[55] = $event => enabled.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), enabled.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_79, [_hoisted_80, _createVNode(_component_van_field, {\n modelValue: cert_file.value,\n \"onUpdate:modelValue\": _cache[56] || (_cache[56] = $event => cert_file.value = $event),\n name: \"证书文件\",\n label: \"证书文件\",\n placeholder: \"证书文件\"\n }, null, 8, [\"modelValue\"]), _hoisted_81, _createVNode(_component_van_field, {\n modelValue: key_file.value,\n \"onUpdate:modelValue\": _cache[57] || (_cache[57] = $event => key_file.value = $event),\n name: \"密钥文件\",\n label: \"密钥文件\",\n placeholder: \"密钥文件\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_82, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否禁用注册\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: disable_signup.value,\n \"onUpdate:modelValue\": _cache[58] || (_cache[58] = $event => disable_signup.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_83, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否自动打码\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: auto_conv_arkose.value,\n \"onUpdate:modelValue\": _cache[59] || (_cache[59] = $event => auto_conv_arkose.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_84, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"使用文件代理服务\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: proxy_file_service.value,\n \"onUpdate:modelValue\": _cache[60] || (_cache[60] = $event => proxy_file_service.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_85, _createVNode(_component_van_field, {\n modelValue: proxy_url.value,\n \"onUpdate:modelValue\": _cache[61] || (_cache[61] = $event => proxy_url.value = $event),\n name: \"代理服务URL\",\n label: \"代理服务URL\",\n placeholder: \"代理服务URL(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_86, _createVNode(_component_van_field, {\n modelValue: whitelist.value,\n \"onUpdate:modelValue\": _cache[62] || (_cache[62] = $event => whitelist.value = $event),\n name: \"白名单\",\n label: \"白名单\",\n placeholder: \"[]限制所有账号(默认为null)\"\n }, null, 8, [\"modelValue\"]), _hoisted_87]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_88, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_89]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_4.value,\n \"onUpdate:show\": _cache[76] || (_cache[76] = $event => show_4.value = $event),\n title: \"tokensTool设置信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_90, [_createVNode(_component_van_form, {\n onSubmit: _cache[75] || (_cache[75] = $event => RequireSetting(tokensTool))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_91, _createVNode(_component_van_field, {\n modelValue: loginUsername.value,\n \"onUpdate:modelValue\": _cache[65] || (_cache[65] = $event => loginUsername.value = $event),\n name: \"登录用户名\",\n label: \"登录用户名\",\n placeholder: \"tokensTool用户名\"\n }, null, 8, [\"modelValue\"]), _hoisted_92, _createVNode(_component_van_field, {\n modelValue: loginPassword.value,\n \"onUpdate:modelValue\": _cache[66] || (_cache[66] = $event => loginPassword.value = $event),\n name: \"登录密码\",\n label: \"登录密码\",\n placeholder: \"不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_93, _createVNode(_component_van_field, {\n modelValue: proxy_api_prefix.value,\n \"onUpdate:modelValue\": _cache[67] || (_cache[67] = $event => proxy_api_prefix.value = $event),\n name: \"proxy接口前缀\",\n label: \"proxy接口前缀\",\n placeholder: \"proxy模式接口后缀,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_94, _createVNode(_component_van_field, {\n modelValue: autoToken_url.value,\n \"onUpdate:modelValue\": _cache[68] || (_cache[68] = $event => autoToken_url.value = $event),\n name: \"proxy模式URL\",\n label: \"proxy模式URL\",\n placeholder: \"http(s)://(ip:port或者域名)/后缀,同公网服务器填default\"\n }, null, 8, [\"modelValue\"]), _hoisted_95, _createVNode(_component_van_field, {\n modelValue: setup_password.value,\n \"onUpdate:modelValue\": _cache[69] || (_cache[69] = $event => setup_password.value = $event),\n name: \"重载服务密码\",\n label: \"重载服务密码\",\n placeholder: \"PandoraNext重载服务密码,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_96, _createVNode(_component_van_field, {\n modelValue: site_password.value,\n \"onUpdate:modelValue\": _cache[70] || (_cache[70] = $event => site_password.value = $event),\n name: \"访问密码\",\n label: \"访问密码\",\n placeholder: \"PandoraNext访问密码,建议开启访问密码\",\n rules: [{\n validator: sitePasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_97, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: license_id.value,\n \"onUpdate:modelValue\": _cache[71] || (_cache[71] = $event => license_id.value = $event),\n name: \"验证licenseId\",\n label: \"验证licenseId\",\n placeholder: \"验证licenseId(github上拿到的license_id)\"\n }, null, 8, [\"modelValue\"]), _hoisted_98, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"tokensTool接口\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: isGetToken.value,\n \"onUpdate:modelValue\": _cache[72] || (_cache[72] = $event => isGetToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), isGetToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_99, [_hoisted_100, _createVNode(_component_van_field, {\n modelValue: getTokenPassword.value,\n \"onUpdate:modelValue\": _cache[73] || (_cache[73] = $event => getTokenPassword.value = $event),\n name: \"接口密码\",\n label: \"接口密码\",\n placeholder: \"tokensTool接口密码,用于获取tokens,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), _hoisted_101, _createVNode(_component_van_field, {\n modelValue: containerName.value,\n \"onUpdate:modelValue\": _cache[74] || (_cache[74] = $event => containerName.value = $event),\n name: \"监管容器名\",\n label: \"监管容器名\",\n placeholder: \"监管运行的容器名或文件名,默认为PandoraNext\",\n rules: [{\n required: true,\n message: '请填写监管的容器名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_102]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_103, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_104]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_5.value,\n \"onUpdate:show\": _cache[85] || (_cache[85] = $event => show_5.value = $event),\n title: \"PandoraNext验证信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_105, [_createVNode(_component_van_form, {\n onSubmit: _cache[84] || (_cache[84] = $event => RequireSetting(validation))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_106, _createVNode(_component_van_field, {\n modelValue: provider.value,\n \"onUpdate:modelValue\": _cache[77] || (_cache[77] = $event => provider.value = $event),\n name: \"验证码提供商\",\n label: \"验证码提供商\",\n placeholder: \"验证码提供商\"\n }, null, 8, [\"modelValue\"]), _hoisted_107, _createVNode(_component_van_field, {\n modelValue: site_key.value,\n \"onUpdate:modelValue\": _cache[78] || (_cache[78] = $event => site_key.value = $event),\n name: \"验证码网站参数\",\n label: \"验证码网站参数\",\n placeholder: \"验证码网站参数\"\n }, null, 8, [\"modelValue\"]), _hoisted_108, _createVNode(_component_van_field, {\n modelValue: site_secret.value,\n \"onUpdate:modelValue\": _cache[79] || (_cache[79] = $event => site_secret.value = $event),\n name: \"验证码API Key\",\n label: \"验证码API Key\",\n placeholder: \"验证码API Key\"\n }, null, 8, [\"modelValue\"]), _hoisted_109, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否全站密码登录页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: site_login.value,\n \"onUpdate:modelValue\": _cache[80] || (_cache[80] = $event => site_login.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_110, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在设置登录页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: setup_login.value,\n \"onUpdate:modelValue\": _cache[81] || (_cache[81] = $event => setup_login.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_111, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在输入用户名页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: oai_username.value,\n \"onUpdate:modelValue\": _cache[82] || (_cache[82] = $event => oai_username.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_112, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在输入密码页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: oai_password.value,\n \"onUpdate:modelValue\": _cache[83] || (_cache[83] = $event => oai_password.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_113]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_114, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_115]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_el_dialog, {\n modelValue: show_6.value,\n \"onUpdate:modelValue\": _cache[89] || (_cache[89] = $event => show_6.value = $event),\n title: \"pool_token列表\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_116, [_createVNode(_component_el_icon, {\n onClick: _cache[86] || (_cache[86] = $event => copyToken(pandoraNext_outUrl.value + proxy_api_prefix.value + '/v1/chat/completions'))\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 1\n }), _createVNode(_component_h10, {\n style: {\n \"white-space\": \"nowrap\",\n \"overflow\": \"hidden\",\n \"text-overflow\": \"ellipsis\"\n }\n }, {\n default: _withCtx(() => [_createTextVNode(\" API地址:\" + _toDisplayString(pandoraNext_outUrl.value) + _toDisplayString(proxy_api_prefix.value) + \"/v1/chat/completions \", 1)]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_117, [_createVNode(_unref(ElTable), {\n \"row-class-name\": poolRowClassName,\n data: poolData.value,\n onSelectionChange: poolSelectionChange,\n ref_key: \"multipleTableRefPool\",\n ref: multipleTableRefPool\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n type: \"selection\",\n width: \"45\"\n }), _createVNode(_component_el_table_column, {\n prop: \"intoOneApi\",\n label: \"pool_token名称\",\n sortable: \"\",\n \"min-width\": \"170\",\n \"default-sort\": {\n prop: 'poolTime',\n prop: 'intoOneApi'\n }\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_118, [scope.row.intoOneApi == true && scope.row.poolOneApi_models.includes('gpt-4') ? (_openBlock(), _createElementBlock(\"div\", _hoisted_119, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_120]),\n _: 1\n })])) : scope.row.intoOneApi == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_121, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_122]),\n _: 1\n })])) : (_openBlock(), _createElementBlock(\"div\", _hoisted_123, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_124]),\n _: 1\n })])), _createElementVNode(\"span\", _hoisted_125, _toDisplayString(scope.row.poolName), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"pool_token值\",\n \"min-width\": \"235\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_126, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.poolToken)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_127, _toDisplayString(scope.row.poolToken), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"使用token名集合\",\n \"min-width\": \"165\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(scope.row.shareTokens), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_hoisted_128]),\n _: 1\n })]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"poolTime\",\n label: \"更新时间\",\n prop: \"poolTime\",\n sortable: \"\",\n \"min-width\": \"180\"\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n \"min-width\": \"355\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => showPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"warning\",\n onClick: $event => verifySimplyPoolToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"检验\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deletePoolToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"success\",\n onClick: $event => reNewPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"刷新\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => reviewPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"更换\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"])]), _createElementVNode(\"div\", _hoisted_129, [_createVNode(_component_el_select_group, {\n class: \"pool-button\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: buttonPoolValue.value,\n \"onUpdate:modelValue\": _cache[87] || (_cache[87] = $event => buttonPoolValue.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"请选择批量操作\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPool, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolValue,\n label: item.label,\n value: item.buttonPoolValue\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_button, {\n onClick: _cache[88] || (_cache[88] = $event => selectPoolChoice(buttonPoolValue.value))\n }, {\n default: _withCtx(() => [_hoisted_130]),\n _: 1\n })]),\n _: 1\n })]), _hoisted_131]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_7.value,\n \"onUpdate:modelValue\": _cache[93] || (_cache[93] = $event => show_7.value = $event),\n title: \"PandoraNext余额\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_132, [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_133, _createVNode(_component_van_field, {\n modelValue: pandoraUsage.value,\n \"onUpdate:modelValue\": _cache[90] || (_cache[90] = $event => pandoraUsage.value = $event),\n name: \"PandoraNext用量\",\n label: \"PandoraNext用量\",\n placeholder: \"PandoraNext用量\"\n }, null, 8, [\"modelValue\"]), _hoisted_134, _createVNode(_component_van_field, {\n modelValue: pandoraIp.value,\n \"onUpdate:modelValue\": _cache[91] || (_cache[91] = $event => pandoraIp.value = $event),\n name: \"绑定IP\",\n label: \"绑定IP\",\n placeholder: \"绑定IP\"\n }, null, 8, [\"modelValue\"]), _hoisted_135, _createVNode(_component_van_field, {\n modelValue: pandoraTime.value,\n \"onUpdate:modelValue\": _cache[92] || (_cache[92] = $event => pandoraTime.value = $event),\n name: \"重置时间\",\n label: \"重置时间\",\n placeholder: \"重置时间\"\n }, null, 8, [\"modelValue\"]), _hoisted_136]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_van_dialog, {\n show: show_8.value,\n \"onUpdate:show\": _cache[101] || (_cache[101] = $event => show_8.value = $event),\n title: \"定时刷新&PandoraNext网址\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_137, [_createVNode(_component_van_form, {\n onSubmit: _cache[100] || (_cache[100] = $event => RequireAutoUpdate())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_138, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否自动刷新session_token\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: auto_updateSession.value,\n \"onUpdate:modelValue\": _cache[94] || (_cache[94] = $event => auto_updateSession.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), auto_updateSession.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_139, [_hoisted_140, _createVNode(_component_van_field, {\n modelValue: auto_updateTime.value,\n \"onUpdate:modelValue\": _cache[95] || (_cache[95] = $event => auto_updateTime.value = $event),\n name: \"自动刷新session的间隔天数\",\n label: \"自动刷新session的间隔天数\",\n \"input-align\": \"right\",\n placeholder: \"自动刷新session的时间 (天为单位)\"\n }, null, 8, [\"modelValue\"]), _hoisted_141, _createVNode(_component_van_field, {\n modelValue: auto_updateNumber.value,\n \"onUpdate:modelValue\": _cache[96] || (_cache[96] = $event => auto_updateNumber.value = $event),\n name: \"自动刷新session的个数\",\n label: \"自动刷新session的个数\",\n \"input-align\": \"right\",\n placeholder: \"自动刷新session的个数 (个)\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_142, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: pandoraNext_outUrl.value,\n \"onUpdate:modelValue\": _cache[97] || (_cache[97] = $event => pandoraNext_outUrl.value = $event),\n name: \"PandoraNext的公网访问地址\",\n label: \"PandoraNext的公网访问地址\",\n placeholder: \"PandoraNext的公网访问地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_143, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: oneAPi_outUrl.value,\n \"onUpdate:modelValue\": _cache[98] || (_cache[98] = $event => oneAPi_outUrl.value = $event),\n name: \"oneApi的公网访问地址\",\n label: \"oneApi的公网访问地址\",\n \"input-align\": \"right\",\n placeholder: \"oneApi的公网访问地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_144, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: oneAPi_intoToken.value,\n \"onUpdate:modelValue\": _cache[99] || (_cache[99] = $event => oneAPi_intoToken.value = $event),\n name: \"oneApi的系统令牌\",\n label: \"oneApi的系统令牌\",\n \"input-align\": \"right\",\n placeholder: \"oneApi的系统令牌\"\n }, null, 8, [\"modelValue\"]), _hoisted_145]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_146, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_147]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_9.value,\n \"onUpdate:show\": _cache[109] || (_cache[109] = $event => show_9.value = $event),\n title: \"✨添加pool_token信息\",\n width: \"95vw\",\n \"align-center\": \"\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_148, [_createVNode(_component_van_form, {\n onSubmit: addSelectPoolToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_field, {\n modelValue: poolNameValue.value,\n \"onUpdate:modelValue\": _cache[102] || (_cache[102] = $event => poolNameValue.value = $event),\n name: \"pool_token名\",\n label: \"pool_token名\",\n \"input-align\": \"right\",\n placeholder: \"3到10个字符\",\n rules: [{\n validator: poolNameValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_149, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[103] || (_cache[103] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_150, [_hoisted_151, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[104] || (_cache[104] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\"\n }, null, 8, [\"modelValue\"]), _createElementVNode(\"div\", _hoisted_152, [_hoisted_153, _hoisted_154, _createVNode(_component_el_form_item, {\n label: \"选择模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addPoolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[105] || (_cache[105] = $event => addPoolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n placeholder: \"填写或选择模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolModel,\n label: item.label,\n value: item.buttonPoolModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_155, _createVNode(_component_el_form_item, {\n label: \"重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: addPoolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[106] || (_cache[106] = $event => addPoolModel_mapping.value = $event),\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_156, _createVNode(_component_van_field, {\n name: \"checkboxGroup\",\n label: \"在one-api的组别\",\n \"input-align\": \"right\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: groupChecked.value,\n \"onUpdate:modelValue\": _cache[107] || (_cache[107] = $event => groupChecked.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_157, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_158, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_159, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[108] || (_cache[108] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义PandoraNext地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_160])) : _createCommentVNode(\"\", true)]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_161, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_162]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_el_dialog, {\n modelValue: show_10.value,\n \"onUpdate:modelValue\": _cache[110] || (_cache[110] = $event => show_10.value = $event),\n title: \"tokensTool登录日志\",\n \"align-center\": \"\",\n width: \"90%\",\n \"close-on-click-modal\": false,\n class: \"showLoginDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_163, [_createVNode(_unref(ElTable), {\n \"row-class-name\": poolRowClassName,\n data: loginData.value\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n prop: \"ipAddress\",\n label: \"登录地区\",\n \"min-width\": \"160\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_164, [_createElementVNode(\"span\", _hoisted_165, _toDisplayString(scope.row.ipAddress), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"登录IP\",\n \"min-width\": \"155\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_166, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.poolToken)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_167, _toDisplayString(scope.row.requestIp), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"成功/失败\",\n \"min-width\": \"105\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_168, [_createElementVNode(\"span\", _hoisted_169, _toDisplayString(scope.row.inRequestNumber) + \"/\" + _toDisplayString(scope.row.outRequestNumber), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"lastLoginTime\",\n label: \"登录时间\",\n prop: \"lastLoginTime\",\n \"min-width\": \"180\"\n })]),\n _: 1\n }, 8, [\"data\"])]), _hoisted_170]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_van_dialog, {\n show: show_11.value,\n \"onUpdate:show\": _cache[119] || (_cache[119] = $event => show_11.value = $event),\n title: \"📌修改pool_token信息\",\n width: \"95vw\",\n \"align-center\": \"\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_171, [_createVNode(_component_van_form, {\n onSubmit: requirePoolToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_172, _createElementVNode(\"div\", _hoisted_173, [_createVNode(_component_el_form_item, {\n label: \"poolToken名\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: poolName.value,\n \"onUpdate:modelValue\": _cache[111] || (_cache[111] = $event => poolName.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择要修改的pool名\",\n onChange: handlePoolNameChange,\n class: \"selectPool_token\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(poolData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.poolName,\n label: item.poolName,\n value: item.poolName,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_174, _createVNode(_component_van_field, {\n modelValue: temPool_token.value,\n \"onUpdate:modelValue\": _cache[112] || (_cache[112] = $event => temPool_token.value = $event),\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n name: \"pool_token的值\",\n label: \"pool_token的值\",\n placeholder: \"pool_token的值(不改则不变)\"\n }, null, 8, [\"modelValue\"]), _hoisted_175, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[113] || (_cache[113] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_176, intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_177, [_hoisted_178, _createElementVNode(\"div\", _hoisted_179, [_createVNode(_component_el_form_item, {\n label: \"选择模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: poolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[114] || (_cache[114] = $event => poolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"填写或选择模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolModel,\n label: item.label,\n value: item.buttonPoolModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_180, _createVNode(_component_el_form_item, {\n label: \"重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: poolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[115] || (_cache[115] = $event => poolModel_mapping.value = $event),\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_181, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[116] || (_cache[116] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_182, _createVNode(_component_van_field, {\n name: \"checkboxGroup\",\n label: \"在one-api的组别\",\n \"input-align\": \"right\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: temGroupChecked.value,\n \"onUpdate:modelValue\": _cache[117] || (_cache[117] = $event => temGroupChecked.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_183, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_184, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_185, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[118] || (_cache[118] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n placeholder: \"自定义PandoraNext地址\",\n rules: [{\n required: true,\n message: '请填写自定义PandoraNext地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_186])) : _createCommentVNode(\"\", true)]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_187, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_188]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_el_dialog, {\n modelValue: show_12.value,\n \"onUpdate:modelValue\": _cache[120] || (_cache[120] = $event => show_12.value = $event),\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", {\n ref_key: \"chart\",\n ref: chart,\n style: {\n \"width\": \"auto\",\n \"height\": \"350px\"\n }\n }, null, 512)]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_13.value,\n \"onUpdate:modelValue\": _cache[124] || (_cache[124] = $event => show_13.value = $event),\n title: \"OneAPI里的share_token列表\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_search, {\n modelValue: valueShare.value,\n \"onUpdate:modelValue\": _cache[122] || (_cache[122] = $event => valueShare.value = $event),\n \"show-action\": \"\",\n clearable: \"\",\n shape: \"round\",\n placeholder: \"请输入搜索share_token名称\",\n onSearch: _cache[123] || (_cache[123] = $event => onSearchShareToken(valueShare.value)),\n class: \"onShareToken\"\n }, {\n action: _withCtx(() => [_createVNode(_component_el_button, {\n onClick: _cache[121] || (_cache[121] = $event => show_14.value = true)\n }, {\n default: _withCtx(() => [_hoisted_189]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"]), _createElementVNode(\"div\", _hoisted_190, [_createVNode(_unref(ElTable), {\n data: shareData.value,\n \"row-class-name\": poolRowClassName\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n label: \"在OneAPI的名称\",\n prop: \"oneApi_name\",\n width: \"180\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_191, [_createElementVNode(\"span\", _hoisted_192, _toDisplayString(scope.row.oneApi_name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"来源Token名\",\n \"min-width\": \"135\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_193, [_createElementVNode(\"span\", _hoisted_194, _toDisplayString(scope.row.token_name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"share_token值\",\n \"min-width\": \"355\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_195, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.token_value)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_196, _toDisplayString(scope.row.token_value), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"shareTime\",\n label: \"更新时间\",\n prop: \"shareTime\",\n \"min-width\": \"170\"\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n \"min-width\": \"235\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => showShareToken(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => reviewShare(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"修改\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deleteShareToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"])]), _hoisted_197]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_14.value,\n \"onUpdate:modelValue\": _cache[132] || (_cache[132] = $event => show_14.value = $event),\n title: \"添加shareToken进one_api\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_198, [_createVNode(_component_van_form, {\n onSubmit: addShareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\",\n class: \"groupCell\"\n }, {\n default: _withCtx(() => [_hoisted_199, _createVNode(_component_van_field, {\n modelValue: addOneApi_name.value,\n \"onUpdate:modelValue\": _cache[125] || (_cache[125] = $event => addOneApi_name.value = $event),\n name: \"oneApi中渠道名称\",\n label: \"oneApi中渠道名称\",\n \"input-align\": \"right\",\n placeholder: \"oneApi中渠道名称\",\n rules: [{\n required: true,\n message: '请填写oneApi中渠道名称'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_200, _createElementVNode(\"div\", _hoisted_201, [_createVNode(_component_el_form_item, {\n label: \"Token名\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addToken_name.value,\n \"onUpdate:modelValue\": _cache[126] || (_cache[126] = $event => addToken_name.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择要添加的Token名\",\n onChange: handleShareNameChange,\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(filteredTableData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.name,\n label: item.name,\n value: item.name,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_202, _createElementVNode(\"div\", _hoisted_203, [_createVNode(_component_el_form_item, {\n label: \"选择模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addOneApi_models.value,\n \"onUpdate:modelValue\": _cache[127] || (_cache[127] = $event => addOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"填写或选择模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_204, _createVNode(_component_el_form_item, {\n label: \"重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: addModel_mapping.value,\n \"onUpdate:modelValue\": _cache[128] || (_cache[128] = $event => addModel_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_205, _createVNode(_component_van_field, {\n modelValue: addPriority.value,\n \"onUpdate:modelValue\": _cache[129] || (_cache[129] = $event => addPriority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n placeholder: \"渠道优先级(默认为0)\",\n \"input-align\": \"center\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_206, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"addOneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: addOneApi_groups.value,\n \"onUpdate:modelValue\": _cache[130] || (_cache[130] = $event => addOneApi_groups.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_207, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_208, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_209, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: addOneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[131] || (_cache[131] = $event => addOneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_210]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_211, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_15.value,\n \"onUpdate:modelValue\": _cache[149] || (_cache[149] = $event => show_15.value = $event),\n title: \"🔎查看share_token在OneAPI信息\",\n \"align-center\": \"\",\n width: \"95vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_212, [_createVNode(_component_van_form, {\n onSubmit: _ctx.shareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\",\n class: \"groupCell\"\n }, {\n default: _withCtx(() => [_hoisted_213, _createVNode(_component_van_field, {\n modelValue: oneApi_name.value,\n \"onUpdate:modelValue\": _cache[133] || (_cache[133] = $event => oneApi_name.value = $event),\n name: \"OneAPI中渠道名称\",\n label: \"OneAPI中渠道名称\",\n placeholder: \"OneAPI中渠道名称\",\n \"left-icon\": \"description-o\",\n readonly: true,\n \"input-align\": \"right\",\n onClickLeftIcon: _cache[134] || (_cache[134] = $event => copyToken(oneApi_name.value)),\n rules: [{\n required: true,\n message: '请填写OneAPI中渠道名称'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_214, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: token_value.value,\n \"onUpdate:modelValue\": _cache[135] || (_cache[135] = $event => token_value.value = $event),\n name: \"share_token的值\",\n label: \"share_token的值\",\n \"input-align\": \"right\",\n placeholder: \"share_token的值\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[136] || (_cache[136] = $event => copyToken(token_value.value))\n }, null, 8, [\"modelValue\"]), _hoisted_215, _createVNode(_component_van_field, {\n modelValue: token_name.value,\n \"onUpdate:modelValue\": _cache[137] || (_cache[137] = $event => token_name.value = $event),\n name: \"share_token的来源\",\n label: \"share_token的来源\",\n \"input-align\": \"right\",\n placeholder: \"share_token的值\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[138] || (_cache[138] = $event => copyToken(token_name.value))\n }, null, 8, [\"modelValue\"]), _hoisted_216, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: temOneApi_models.value,\n \"onUpdate:modelValue\": _cache[139] || (_cache[139] = $event => temOneApi_models.value = $event),\n name: \"模型\",\n label: \"模型\",\n \"input-align\": \"right\",\n placeholder: \"加入的模型\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[140] || (_cache[140] = $event => copyToken(temOneApi_models.value))\n }, null, 8, [\"modelValue\"]), _createElementVNode(\"div\", _hoisted_217, [_hoisted_218, _createVNode(_component_el_form_item, {\n readonly: true,\n type: \"textarea\",\n label: \"🧩重定向\",\n autosize: \"\",\n prop: \"addModel_mapping\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: model_mapping.value,\n \"onUpdate:modelValue\": _cache[141] || (_cache[141] = $event => model_mapping.value = $event),\n type: \"textarea\",\n autosize: \"\",\n disabled: \"\",\n placeholder: temModel_mapping,\n onClickLeftIcon: _cache[142] || (_cache[142] = $event => copyToken(model_mapping.value))\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_219, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[143] || (_cache[143] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n placeholder: \"渠道优先级(默认为0)\",\n \"left-icon\": \"description-o\",\n readonly: true,\n \"input-align\": \"right\",\n onClickLeftIcon: _cache[144] || (_cache[144] = $event => copyToken(priority.value)),\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_220, _createVNode(_component_van_field, {\n type: \"textarea\",\n autoSize: \"\",\n modelValue: temOneApi_groups.value,\n \"onUpdate:modelValue\": _cache[145] || (_cache[145] = $event => temOneApi_groups.value = $event),\n name: \"加入的组别\",\n label: \"加入的组别\",\n \"input-align\": \"right\",\n placeholder: \"加入的组别\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[146] || (_cache[146] = $event => copyToken(temOneApi_groups.value))\n }, null, 8, [\"modelValue\"]), _hoisted_221, _createVNode(_component_van_field, {\n type: \"textarea\",\n autoSize: \"\",\n modelValue: oneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[147] || (_cache[147] = $event => oneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[148] || (_cache[148] = $event => copyToken(oneApi_baseUrl.value)),\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_222]),\n _: 1\n })]),\n _: 1\n }, 8, [\"onSubmit\"])])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_16.value,\n \"onUpdate:modelValue\": _cache[156] || (_cache[156] = $event => show_16.value = $event),\n title: \"📌修改shareToken在OneAPI的信息\",\n \"align-center\": \"\",\n width: \"95vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_223, [_createVNode(_component_van_form, {\n onSubmit: requireShareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\",\n class: \"groupCell\"\n }, {\n default: _withCtx(() => [_hoisted_224, _createElementVNode(\"div\", _hoisted_225, [_createVNode(_component_el_form_item, {\n label: \"Token名\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: token_name.value,\n \"onUpdate:modelValue\": _cache[150] || (_cache[150] = $event => token_name.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择添加的Token名称\",\n onChange: handleShareNameChange,\n class: \"selectPool_token\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(filteredTableData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.name,\n label: item.name,\n value: item.name,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_226, _createElementVNode(\"div\", _hoisted_227, [_createVNode(_component_el_form_item, {\n label: \"选择模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: oneApi_models.value,\n \"onUpdate:modelValue\": _cache[151] || (_cache[151] = $event => oneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"填写或选择模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_228, _createVNode(_component_el_form_item, {\n label: \"重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: model_mapping.value,\n \"onUpdate:modelValue\": _cache[152] || (_cache[152] = $event => model_mapping.value = $event),\n \"label-position\": \"top\",\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_229, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[153] || (_cache[153] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"center\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_230, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"oneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: oneApi_groups.value,\n \"onUpdate:modelValue\": _cache[154] || (_cache[154] = $event => oneApi_groups.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_231, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_232, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_233, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: oneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[155] || (_cache[155] = $event => oneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_234]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_235, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_17.value,\n \"onUpdate:modelValue\": _cache[170] || (_cache[170] = $event => show_17.value = $event),\n title: \"🔎查看pool_token的信息\",\n \"align-center\": \"\",\n width: \"95vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_236, [_createVNode(_component_van_form, null, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\",\n class: \"groupCell\"\n }, {\n default: _withCtx(() => [_hoisted_237, _createVNode(_component_van_field, {\n modelValue: temPoolName.value,\n \"onUpdate:modelValue\": _cache[157] || (_cache[157] = $event => temPoolName.value = $event),\n name: \"pool_token名称\",\n label: \"pool_token名称\",\n placeholder: \"pool_token名称\",\n readonly: true,\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[158] || (_cache[158] = $event => copyToken(temPoolName.value)),\n \"input-align\": \"right\"\n }, null, 8, [\"modelValue\"]), _hoisted_238, _createVNode(_component_van_field, {\n modelValue: shareTokens.value,\n \"onUpdate:modelValue\": _cache[159] || (_cache[159] = $event => shareTokens.value = $event),\n label: \"使用token名集合\",\n type: \"textarea\",\n placeholder: \"使用token名集合\",\n \"left-icon\": \"description-o\",\n readonly: true,\n \"input-align\": \"right\",\n onClickLeftIcon: _cache[160] || (_cache[160] = $event => copyToken(temAccessToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"]), _hoisted_239, _createVNode(_component_van_field, {\n modelValue: temPool_token.value,\n \"onUpdate:modelValue\": _cache[161] || (_cache[161] = $event => temPool_token.value = $event),\n readonly: true,\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n name: \"pool_token的值\",\n label: \"pool_token的值\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[162] || (_cache[162] = $event => copyToken(temPool_token.value)),\n placeholder: \"pool_token的值(不改则不变)\"\n }, null, 8, [\"modelValue\"]), _hoisted_240, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[163] || (_cache[163] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_241, intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_242, [_hoisted_243, _createElementVNode(\"div\", _hoisted_244, [_createVNode(_component_el_form_item, {\n disabled: \"\",\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n disabled: \"\",\n modelValue: poolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[164] || (_cache[164] = $event => poolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolModel,\n label: item.label,\n value: item.buttonPoolModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_245]),\n _: 1\n }), _hoisted_246, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: poolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[165] || (_cache[165] = $event => poolModel_mapping.value = $event),\n type: \"textarea\",\n disabled: \"\",\n filterable: \"\",\n autosize: \"\",\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_247, _createVNode(_component_van_field, {\n readonly: true,\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[166] || (_cache[166] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_248, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"oneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: temGroupChecked.value,\n \"onUpdate:modelValue\": _cache[167] || (_cache[167] = $event => temGroupChecked.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_249, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n disabled: \"\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_250, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n disabled: \"\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n disabled: \"\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_251, _createVNode(_component_van_field, {\n readonly: true,\n type: \"textarea\",\n autoSize: \"\",\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[168] || (_cache[168] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[169] || (_cache[169] = $event => copyToken(oneApi_pandoraUrl.value)),\n placeholder: \"自定义PandoraNext地址\",\n rules: [{\n required: true,\n message: '请填写自定义PandoraNext地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_252])) : _createCommentVNode(\"\", true)]),\n _: 1\n })]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"])], 64);\n };\n }\n});","/* unplugin-vue-components disabled */import script from \"./homeIphone.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./homeIphone.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./homeIphone.vue?vue&type=style&index=0&id=28ccace8&lang=css\"\n\nconst __exports__ = script;\n\nexport default __exports__"],"names":["_hoisted_1","class","_hoisted_2","_","name","content","_hoisted_3","style","src","_hoisted_4","_hoisted_5","_hoisted_6","href","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","key","_hoisted_26","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31","_hoisted_32","_hoisted_33","_hoisted_34","_hoisted_35","_hoisted_36","_hoisted_37","_hoisted_38","_hoisted_39","_hoisted_40","_hoisted_41","_hoisted_42","_hoisted_43","_hoisted_44","_hoisted_45","_hoisted_46","_hoisted_47","_hoisted_48","_hoisted_49","_hoisted_50","_hoisted_51","_hoisted_52","_hoisted_53","_hoisted_54","_hoisted_55","_hoisted_56","_hoisted_57","_hoisted_58","_hoisted_59","_hoisted_60","_hoisted_61","_hoisted_62","_hoisted_63","_hoisted_64","_hoisted_65","_hoisted_66","_hoisted_67","_hoisted_68","_hoisted_69","_hoisted_70","_hoisted_71","_hoisted_72","_hoisted_73","_hoisted_74","_hoisted_75","_hoisted_76","_hoisted_77","_hoisted_78","_hoisted_79","_hoisted_80","_hoisted_81","_hoisted_82","_hoisted_83","_hoisted_84","_hoisted_85","_hoisted_86","_hoisted_87","_hoisted_88","_hoisted_89","_hoisted_90","_hoisted_91","_hoisted_92","_hoisted_93","_hoisted_94","_hoisted_95","_hoisted_96","_hoisted_97","_hoisted_98","_hoisted_99","_hoisted_100","_hoisted_101","_hoisted_102","_hoisted_103","_hoisted_104","_hoisted_105","_hoisted_106","_hoisted_107","_hoisted_108","_hoisted_109","_hoisted_110","_hoisted_111","_hoisted_112","_hoisted_113","_hoisted_114","_hoisted_115","_hoisted_116","_hoisted_117","_hoisted_118","_hoisted_119","_hoisted_120","_hoisted_121","_hoisted_122","_hoisted_123","_hoisted_124","_hoisted_125","_hoisted_126","_hoisted_127","_hoisted_128","_hoisted_129","_hoisted_130","_hoisted_131","_hoisted_132","_hoisted_133","_hoisted_134","_hoisted_135","_hoisted_136","_hoisted_137","_hoisted_138","_hoisted_139","_hoisted_140","_hoisted_141","_hoisted_142","_hoisted_143","_hoisted_144","_hoisted_145","_hoisted_146","_hoisted_147","_hoisted_148","_hoisted_149","_hoisted_150","_hoisted_151","_hoisted_152","_hoisted_153","_hoisted_154","_hoisted_155","_hoisted_156","_hoisted_157","_hoisted_158","_hoisted_159","_hoisted_160","_hoisted_161","_hoisted_162","_hoisted_163","_hoisted_164","_hoisted_165","_hoisted_166","_hoisted_167","_hoisted_168","_hoisted_169","_hoisted_170","_hoisted_171","_hoisted_172","_hoisted_173","_hoisted_174","_hoisted_175","_hoisted_176","_hoisted_177","_hoisted_178","_hoisted_179","_hoisted_180","_hoisted_181","_hoisted_182","_hoisted_183","_hoisted_184","_hoisted_185","_hoisted_186","_hoisted_187","_hoisted_188","_hoisted_189","_hoisted_190","_hoisted_191","_hoisted_192","_hoisted_193","_hoisted_194","_hoisted_195","_hoisted_196","_hoisted_197","_hoisted_198","_hoisted_199","_hoisted_200","_hoisted_201","_hoisted_202","_hoisted_203","_hoisted_204","_hoisted_205","_hoisted_206","_hoisted_207","_hoisted_208","_hoisted_209","_hoisted_210","_hoisted_211","_hoisted_212","_hoisted_213","_hoisted_214","_hoisted_215","_hoisted_216","_hoisted_217","_hoisted_218","_hoisted_219","_hoisted_220","_hoisted_221","_hoisted_222","_hoisted_223","_hoisted_224","_hoisted_225","_hoisted_226","_hoisted_227","_hoisted_228","_hoisted_229","_hoisted_230","_hoisted_231","_hoisted_232","_hoisted_233","_hoisted_234","_hoisted_235","_hoisted_236","_hoisted_237","_hoisted_238","_hoisted_239","_hoisted_240","_hoisted_241","_hoisted_242","_hoisted_243","_hoisted_244","_hoisted_245","_hoisted_246","_hoisted_247","_hoisted_248","_hoisted_249","_hoisted_250","_hoisted_251","_hoisted_252","temModel_mapping","pandoraNext","tokensTool","validation","__name","setup","__props","path","window","location","pathname","parts","split","prefix","length","temGroupChecked","groupChecked","multipleTableRefPool","multipleSelection","multipleSelectionPool","handleSelectionChange","val","value","poolSelectionChange","router","show","show_1","show_2","show_3","show_4","show_5","show_6","show_7","show_8","show_9","show_10","show_11","show_12","show_13","show_14","show_15","show_16","show_17","buttonValue","options","label","optionsModel","buttonModel","optionsPoolModel","buttonPoolModel","buttonPoolValue","optionsPool","proxy_api_prefix","isolated_conv_title","bing","timeout","proxy_url","public_share","disable_signup","auto_conv_arkose","proxy_file_service","custom_doh_host","enabled","cert_file","key_file","site_password","setup_password","loginUsername","loginPassword","license_id","isGetToken","getTokenPassword","containerName","autoToken_url","whitelist","provider","site_key","site_secret","site_login","setup_login","oai_username","oai_password","auto_updateSession","auto_updateTime","auto_updateNumber","pandoraNext_outUrl","oneAPi_outUrl","oneAPi_intoToken","poolName","temPoolName","shareTokens","poolTime","poolNameValue","intoOneApi","poolModel_mapping","poolOneApi_models","addPoolOneApi_models","addPoolModel_mapping","oneApi_pandoraUrl","priority","temPool_token","customValidator","regex","test","sitePasswordValidator","poolNameValidator","addPasswordValidator","addSetPoolToken","setPoolToken","temName","temToken","temAccessToken","temShareToken","temUsername","temUserPassword","temShared","temShow_user_info","temPlus","temPassword","useRefreshToken","temCheckSession","tableData","poolData","shareData","loginData","addName","addUsername","addUserPassword","addTokenValue","addShared","addShow_user_info","addPlus","addUseRefreshToken","addPassword","addOneApi_name","addToken_name","addOneApi_baseUrl","addOneApi_models","addModel_mapping","addOneApi_groups","addPriority","innerHeight","valueShare","token","localStorage","getItem","replace","headers","Authorization","fetchLoginToken","async","axios","post","then","response","data","code","console","error","catch","onSearch","getWebToken","getToken","includes","getAPIToken","onSearchShareToken","getShare","get","data_token","Array","isArray","resUsers","map","item","username","userPassword","access_token","share_token","shared","auto_shared","show_user_info","password","plus","updateTime","checkSession","filteredUsers","filter","user","getLoginData","resLogins","ipAddress","requestIp","outRequestNumber","inRequestNumber","lastLoginTime","getPool","responsePool","pool_token","resPools","poolToken","checkPool","loadingInstance","service","fullscreen","responseShare","resShares","oneApi_name","token_name","token_value","oneApi_baseUrl","oneApi_models","model_mapping","oneApi_groups","shareTime","close","getSetting","tls","endsWith","fetchDataAndFillForm","alert","confirmButtonText","callback","action","type","message","getSelectedData","selectedData","addSelectPoolToken","names","userData","JSON","parse","e","addPoolToken","toString","fetch","method","body","stringify","json","msg","handlePoolNameChange","selectedItem","find","handleShareNameChange","filteredTableData","requirePoolToken","log","addShareToken","pandoraUsage","innerWidth","Promise","all","current","total","tableRowClassName","row","poolRowClassName","redirectToExternalLink","open","redirectPandoraNextShare","url","charAt","requirePandoraNextLink","requireTokensToolLink","activeIndex","temRequireToken","handleSelect","keyPath","addToken","onAddToken","now","Date","formattedTime","getFullYear","getMonth","padStart","getDate","getHours","getMinutes","getSeconds","api","success","chart_show","showData","usageHeader","usageData","modelData","usage","startsWith","push","myChart_show","echarts","option","title","text","textStyle","fontSize","color","left","top","tooltip","legend","xAxis","yAxis","series","barWidth","itemStyle","params","colorList","dataIndex","setOption","temOneApi_models","temOneApi_groups","showShareToken","previousSetpoolToken","previousUseRefreshToken","previousToken","handleEdit","index","onRequireSetting","RequireSetting","setting","RequireAutoUpdate","RequireToken","confirm","cancelButtonText","openPandora","closePandora","AgainPandora","reloadPandora","pandoraIp","pandoraTime","getPandoraNext","ip","currentTime","futureTime","getTime","ttl","year","month","day","hours","minutes","seconds","updateAllShareToken","dangerouslyUseHTMLString","reNew","reNewMsg","ok","Error","reNewPool","reviewShare","requireShareToken","requireShare","review","reviewPool","deletePoolToken","verifySimplyPoolToken","deleteToken","put","deleteShareToken","formatDate","nowDay","timeDay","parseISO","daysDiff","differenceInDays","Math","ceil","logout","removeItem","getPoolToken","getShareToken","getLogin","copyToken","textarea","document","createElement","appendChild","select","execCommand","removeChild","selectChoice","count","forEach","showPool","selectPoolChoice","selectedPoolData","temPoolData","chart","getUsage","model","myChart","_ctx","_cache","_component_van_icon","_component_el_menu_item","_component_el_sub_menu","_component_el_menu","_component_van_button","_component_el_page_header","_component_van_search","_component_el_table_column","_component_el_button","_component_el_tag","_component_el_popover","_component_el_option","_component_el_select","_component_van_field","_component_van_switch","_component_van_cell_group","_component_van_form","_component_van_dialog","_component_CopyDocument","_component_el_icon","_component_h10","_component_el_select_group","_component_el_dialog","_component_el_form_item","_component_el_input","_component_van_checkbox","_component_van_checkbox_group","_directive_loading","mode","ellipsis","onSelect","default","size","onClick","$event","icon","extra","square","modelValue","shape","clearable","placeholder","onSelectionChange","prop","width","sortable","scope","circle","effect","trigger","placement","reference","$index","loading","filterable","onSubmit","inset","rules","required","rows","autoSize","validator","maxlength","autosize","maxHeight","minHeight","round","block","readonly","onClickLeftIcon","disabled","ref_key","ref","property","multiple","input","onChange","shareToken","__exports__"],"sourceRoot":""}
\ No newline at end of file
diff --git a/rearServer/src/main/resources/static/js/666.e7a6709e.js b/rearServer/src/main/resources/static/js/666.e7a6709e.js
new file mode 100644
index 0000000..3c17b2b
--- /dev/null
+++ b/rearServer/src/main/resources/static/js/666.e7a6709e.js
@@ -0,0 +1,2 @@
+"use strict";(self["webpackChunkPandoraNext_TokensTool"]=self["webpackChunkPandoraNext_TokensTool"]||[]).push([[666],{3666:function(e,l,a){a.r(l),a.d(l,{default:function(){return _n}});var o=a(299),n=(a(8845),a(6773)),t=(a(487),a(2876)),u=(a(492),a(5185)),i=(a(3349),a(5267)),r=(a(1645),a(7630)),s=(a(7034),a(3164)),d=(a(6335),a(157)),m=(a(1897),a(6907)),c=(a(4746),a(294)),p=(a(6870),a(560),a(6252)),v=a(3577),h=a(2262),_=a(1094),w=a(2201),k=a(6154),g=a(844),f=a(1348),b=a(9288),y=a(2534),V=a(3028),W=a(4708),T=a(1893);const x={class:"content"},U=(0,p._)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no"},null,-1),H=(0,p._)("img",{style:{width:"25px"},src:_},null,-1),A={class:"home-container"},z=(0,p._)("div",{class:"flex-grow"},null,-1),P=(0,p._)("a",{href:"https://ai.fakeopen.com/auth"},"PandoraNext地址",-1),S=(0,p._)("a",{href:"https://chat.openai.com/api/auth/session"},"OpenAI官网",-1),N=(0,p._)("a",{href:"https://github.com/Yanyutin753/PandoraNext-TokensTool"},"TokensTool地址",-1),O={style:{display:"block"}},C=(0,p._)("div",{class:"flex items-center"},[(0,p._)("span",{class:"font-h4"},"PandoraNext-TokensTool "),(0,p._)("span",{class:"font-h4-tag"},"v0.6.8 ")],-1),$={class:"under"},I={class:"search"},B={style:{display:"flex",margin:"0px 0px -20px 0px"}},D={style:{display:"flex",width:"88vw",height:"63vh",transform:"translateX(0vw)"}},q={style:{display:"flex","align-items":"center"}},j={style:{"margin-left":"15px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},L={style:{"margin-left":"15px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},M={style:{margin:"13px",transform:"translateX(7px)"}},Z=(0,p._)("h1",null,"批量操作",-1),J=(0,p._)("br",null,null,-1),K={style:{display:"block"}},E=(0,p._)("br",null,null,-1),R=(0,p._)("br",null,null,-1),Y=(0,p._)("br",null,null,-1),X={key:0},F=(0,p._)("br",null,null,-1),G=(0,p._)("br",null,null,-1),Q={key:0},ee=(0,p._)("br",null,null,-1),le=(0,p._)("br",null,null,-1),ae={key:1},oe=(0,p._)("br",null,null,-1),ne=(0,p._)("br",null,null,-1),te=(0,p._)("br",null,null,-1),ue={style:{margin:"5.2px"}},ie=(0,p._)("br",null,null,-1),re={style:{display:"block"}},se=(0,p._)("br",null,null,-1),de=(0,p._)("br",null,null,-1),me=(0,p._)("br",null,null,-1),ce=(0,p._)("br",null,null,-1),pe={key:0},ve=(0,p._)("br",null,null,-1),he={key:1},_e=(0,p._)("br",null,null,-1),we={key:0},ke=(0,p._)("br",null,null,-1),ge=(0,p._)("br",null,null,-1),fe={key:2},be=(0,p._)("br",null,null,-1),ye={key:3},Ve=(0,p._)("br",null,null,-1),We=(0,p._)("br",null,null,-1),Te={style:{margin:"5.2px"}},xe=(0,p._)("br",null,null,-1),Ue={style:{display:"block"}},He=(0,p._)("br",null,null,-1),Ae=(0,p._)("br",null,null,-1),ze=(0,p._)("br",null,null,-1),Pe=(0,p._)("br",null,null,-1),Se=(0,p._)("br",null,null,-1),Ne=(0,p._)("br",null,null,-1),Oe=(0,p._)("br",null,null,-1),Ce=(0,p._)("br",null,null,-1),$e=(0,p._)("br",null,null,-1),Ie=(0,p._)("br",null,null,-1),Be={key:0},De=(0,p._)("br",null,null,-1),qe=(0,p._)("br",null,null,-1),je={key:0},Le=(0,p._)("br",null,null,-1),Me={style:{display:"block"}},Ze=(0,p._)("br",null,null,-1),Je=(0,p._)("br",null,null,-1),Ke=(0,p._)("br",null,null,-1),Ee=(0,p._)("br",null,null,-1),Re=(0,p._)("br",null,null,-1),Ye=(0,p._)("br",null,null,-1),Xe={key:0},Fe=(0,p._)("br",null,null,-1),Ge=(0,p._)("br",null,null,-1),Qe=(0,p._)("br",null,null,-1),el=(0,p._)("br",null,null,-1),ll=(0,p._)("br",null,null,-1),al=(0,p._)("br",null,null,-1),ol=(0,p._)("br",null,null,-1),nl=(0,p._)("br",null,null,-1),tl={style:{margin:"5.2px"}},ul=(0,p._)("br",null,null,-1),il={style:{display:"block"}},rl=(0,p._)("br",null,null,-1),sl=(0,p._)("br",null,null,-1),dl=(0,p._)("br",null,null,-1),ml=(0,p._)("br",null,null,-1),cl=(0,p._)("br",null,null,-1),pl=(0,p._)("br",null,null,-1),vl=(0,p._)("br",null,null,-1),hl=(0,p._)("br",null,null,-1),_l={key:0},wl=(0,p._)("br",null,null,-1),kl=(0,p._)("br",null,null,-1),gl=(0,p._)("br",null,null,-1),fl={style:{margin:"5.2px"}},bl=(0,p._)("br",null,null,-1),yl={style:{display:"block"}},Vl=(0,p._)("br",null,null,-1),Wl=(0,p._)("br",null,null,-1),Tl=(0,p._)("br",null,null,-1),xl=(0,p._)("br",null,null,-1),Ul=(0,p._)("br",null,null,-1),Hl=(0,p._)("br",null,null,-1),Al=(0,p._)("br",null,null,-1),zl=(0,p._)("br",null,null,-1),Pl={style:{margin:"5.2px"}},Sl=(0,p._)("br",null,null,-1),Nl={style:{display:"flex",transform:"translate(0vw, -2vh)"}},Ol={style:{display:"flex",transform:"translate(calc(-2.5% - 20px), 0vh)",width:"calc(102.5% + 40px)"}},Cl={style:{"margin-left":"10px",display:"flex","align-items":"center"}},$l={key:0},Il=(0,p._)("h5",null,"oneApi4",-1),Bl={key:1},Dl=(0,p._)("h5",null,"oneApi3",-1),ql={key:2},jl=(0,p._)("h5",null,"Json",-1),Ll={style:{"margin-left":"20px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Ml={style:{display:"flex","align-items":"center",overflow:"auto"}},Zl={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Jl=(0,p._)("span",{style:{"margin-left":"0px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},"点击此进行查看",-1),Kl={style:{margin:"10px 0px 10px 0px"}},El=(0,p._)("h1",null,"批量操作",-1),Rl=(0,p._)("br",null,null,-1),Yl={style:{display:"block"}},Xl=(0,p._)("br",null,null,-1),Fl=(0,p._)("br",null,null,-1),Gl=(0,p._)("br",null,null,-1),Ql=(0,p._)("br",null,null,-1),ea={style:{display:"block"}},la=(0,p._)("br",null,null,-1),aa={key:0},oa=(0,p._)("br",null,null,-1),na=(0,p._)("br",null,null,-1),ta=(0,p._)("br",null,null,-1),ua=(0,p._)("br",null,null,-1),ia=(0,p._)("br",null,null,-1),ra=(0,p._)("br",null,null,-1),sa={style:{margin:"5.2px"}},da=(0,p._)("br",null,null,-1),ma={style:{display:"block"}},ca=(0,p._)("br",null,null,-1),pa={key:0},va=(0,p._)("br",null,null,-1),ha={style:{transform:"translateX(16px)"}},_a=(0,p._)("br",null,null,-1),wa=(0,p._)("br",null,null,-1),ka=(0,p._)("br",null,null,-1),ga=(0,p._)("br",null,null,-1),fa={style:{"margin-bottom":"5px"}},ba={style:{"margin-bottom":"5px"}},ya=(0,p._)("br",null,null,-1),Va=(0,p._)("br",null,null,-1),Wa={style:{margin:"5.2px"}},Ta=(0,p._)("br",null,null,-1),xa={style:{display:"flex",transform:"translate(calc(-2.5% - 20px), 0vh)",width:"calc(100% + 2.5% + 40px)"}},Ua={style:{display:"flex","align-items":"center"}},Ha={style:{"margin-left":"0px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Aa={style:{display:"flex","align-items":"center",overflow:"auto"}},za={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Pa={style:{display:"flex","align-items":"center",overflow:"auto"}},Sa={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Na=(0,p._)("br",null,null,-1),Oa={style:{display:"block"}},Ca=(0,p._)("br",null,null,-1),$a={style:{transform:"translateX(16px)"}},Ia=(0,p._)("br",null,null,-1),Ba=(0,p._)("br",null,null,-1),Da=(0,p._)("br",null,null,-1),qa={key:0},ja=(0,p._)("br",null,null,-1),La={style:{transform:"translateX(16px)"}},Ma=(0,p._)("br",null,null,-1),Za=(0,p._)("br",null,null,-1),Ja=(0,p._)("br",null,null,-1),Ka={style:{"margin-bottom":"5px"}},Ea={style:{"margin-bottom":"5px"}},Ra=(0,p._)("br",null,null,-1),Ya=(0,p._)("br",null,null,-1),Xa={style:{margin:"5.2px"}},Fa=(0,p._)("br",null,null,-1),Ga=(0,p._)("h1",null,"添加到OneAPI",-1),Qa={style:{display:"flex",transform:"translate(calc(-2.5% - 20px), 0vh)",width:"calc(102.5% + 40px)"}},eo={style:{"margin-left":"15px",display:"flex","align-items":"center"}},lo={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},ao={style:{display:"flex","align-items":"center",overflow:"auto"}},oo={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},no={style:{display:"flex","align-items":"center",overflow:"auto"}},to={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},uo=(0,p._)("br",null,null,-1),io={style:{display:"block"}},ro=(0,p._)("br",null,null,-1),so=(0,p._)("br",null,null,-1),mo={style:{transform:"translateX(16px)"}},co=(0,p._)("br",null,null,-1),po={style:{transform:"translateX(16px)"}},vo=(0,p._)("br",null,null,-1),ho=(0,p._)("br",null,null,-1),_o=(0,p._)("br",null,null,-1),wo={style:{"margin-bottom":"5px"}},ko={style:{"margin-bottom":"5px"}},go=(0,p._)("br",null,null,-1),fo=(0,p._)("br",null,null,-1),bo={style:{margin:"5.2px"}},yo={style:{display:"block"}},Vo=(0,p._)("br",null,null,-1),Wo=(0,p._)("br",null,null,-1),To=(0,p._)("br",null,null,-1),xo=(0,p._)("br",null,null,-1),Uo={style:{transform:"translateX(16px)"}},Ho=(0,p._)("br",null,null,-1),Ao=(0,p._)("br",null,null,-1),zo=(0,p._)("br",null,null,-1),Po=(0,p._)("br",null,null,-1),So=(0,p._)("br",null,null,-1),No={style:{display:"block"}},Oo=(0,p._)("br",null,null,-1),Co={style:{transform:"translateX(16px)"}},$o=(0,p._)("br",null,null,-1),Io={style:{transform:"translateX(16px)"}},Bo=(0,p._)("br",null,null,-1),Do=(0,p._)("br",null,null,-1),qo=(0,p._)("br",null,null,-1),jo={style:{"margin-bottom":"5px"}},Lo={style:{"margin-bottom":"5px"}},Mo=(0,p._)("br",null,null,-1),Zo=(0,p._)("br",null,null,-1),Jo={style:{margin:"5.2px"}},Ko={style:{display:"block"}},Eo=(0,p._)("br",null,null,-1),Ro=(0,p._)("br",null,null,-1),Yo=(0,p._)("br",null,null,-1),Xo=(0,p._)("br",null,null,-1),Fo=(0,p._)("br",null,null,-1),Go={key:0},Qo=(0,p._)("br",null,null,-1),en={style:{transform:"translateX(17px)"}},ln=(0,p._)("br",null,null,-1),an=(0,p._)("br",null,null,-1),on=(0,p._)("br",null,null,-1),nn=(0,p._)("br",null,null,-1),tn={style:{"margin-bottom":"5px"}},un={style:{"margin-bottom":"5px"}},rn=(0,p._)("br",null,null,-1),sn=(0,p._)("br",null,null,-1),dn='此项可选,用于修改请求体中的模型名称,\n 为一个 JSON 字符串,键为请求中模型名称,\n 值为要替换的模型名称,例如:\n {\n "gpt-3.5-turbo-301":"gpt-3.5-turbo",\n "gpt-4-8314":"gpt-4", \n "gpt-4-32k-8314":"gpt-4-32k",\n }',mn=0,cn=1,pn=2;var vn=(0,p.aZ)({__name:"homeIphone",setup(e){const l=window.location.pathname,a=l.split("/");let _="";a.length>=3&&(_="/"+a[1]);const vn=(0,h.iH)(["default","svip","vip"]),hn=(0,h.iH)(["default","svip","vip"]),_n=((0,h.iH)(),(0,h.iH)()),wn=(0,h.iH)([]),kn=(0,h.iH)([]),gn=e=>{wn.value=e},fn=e=>{kn.value=e},bn=((0,h.iH)("ALL"),(0,w.tv)()),yn=(0,h.iH)(!1),Vn=(0,h.iH)(!1),Wn=(0,h.iH)(!1),Tn=(0,h.iH)(!1),xn=(0,h.iH)(!1),Un=(0,h.iH)(!1),Hn=(0,h.iH)(!1),An=(0,h.iH)(!1),zn=(0,h.iH)(!1),Pn=(0,h.iH)(!1),Sn=(0,h.iH)(!1),Nn=(0,h.iH)(!1),On=(0,h.iH)(!1),Cn=(0,h.iH)(!1),$n=(0,h.iH)(!1),In=(0,h.iH)(!1),Bn=(0,h.iH)(!1),Dn=(0,h.iH)(!1),qn=(0,h.iH)(""),jn=[{buttonValue:"选中删除Token",label:"选中删除Token"},{buttonValue:"选中刷新Token",label:"选中刷新Token"},{buttonValue:"选中合成pool_token",label:"选中合成pool_token"},{buttonValue:"选中修改pool_token",label:"选中修改pool_token"}],Ln=((0,h.iH)(""),[{buttonModel:"gpt-3.5-turbo",label:"gpt-3.5-turbo"},{buttonModel:"gpt-4-s",label:"gpt-4-s"},{buttonModel:"gpt-4-mobile",label:"gpt-4-mobile"},{buttonModel:"gpt-4-vision",label:"gpt-4-vision"},{buttonModel:"gpt-4-classic",label:"gpt-4-classic"},{buttonModel:"gpt-4-vision-preview",label:"gpt-4-vision-preview"}]),Mn=((0,h.iH)(""),[{buttonPoolModel:"gpt-3.5-turbo",label:"gpt-3.5-turbo"},{buttonPoolModel:"gpt-4",label:"gpt-4"}]),Zn=(0,h.iH)(""),Jn=[{buttonPoolValue:"选中检查pool_token",label:"选中检查pool_token"},{buttonPoolValue:"选中删除pool_token",label:"选中删除pool_token"},{buttonPoolValue:"选中刷新pool_token",label:"选中刷新pool_token"},{buttonPoolValue:"选中更换pool_token",label:"选中更换pool_token"}],Kn=(0,h.iH)(""),En=(0,h.iH)("*"),Rn=(0,h.iH)(""),Yn=(0,h.iH)(""),Xn=(0,h.iH)(""),Fn=(0,h.iH)(!1),Gn=(0,h.iH)(!1),Qn=(0,h.iH)(!1),et=(0,h.iH)(!1),lt=(0,h.iH)(""),at=(0,h.iH)(!1),ot=(0,h.iH)(""),nt=(0,h.iH)(""),tt=(0,h.iH)(""),ut=(0,h.iH)(""),it=(0,h.iH)(""),rt=(0,h.iH)(""),st=(0,h.iH)(""),dt=(0,h.iH)(!1),mt=(0,h.iH)(""),ct=(0,h.iH)("PandoraNext"),pt=(0,h.iH)("default"),vt=(0,h.iH)(""),ht=(0,h.iH)(""),_t=(0,h.iH)(""),wt=(0,h.iH)(""),kt=(0,h.iH)(!1),gt=(0,h.iH)(!1),ft=(0,h.iH)(!1),bt=(0,h.iH)(!1),yt=(0,h.iH)(!1),Vt=(0,h.iH)(5),Wt=(0,h.iH)(1),Tt=(0,h.iH)(""),xt=(0,h.iH)(""),Ut=(0,h.iH)(""),Ht=(0,h.iH)(""),At=(0,h.iH)(""),zt=(0,h.iH)(""),Pt=((0,h.iH)(""),(0,h.iH)("")),St=((0,h.iH)(!0),(0,h.iH)("")),Nt=(0,h.iH)(!1),Ot=(0,h.iH)(""),Ct=(0,h.iH)([]),$t=(0,h.iH)([]),It=(0,h.iH)(""),Bt=(0,h.iH)(Tt.value+Kn.value),Dt=(0,h.iH)(0),qt=(0,h.iH)(""),jt=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!!l.test(e)||"此项至少要包含8位且必须包含数字和字母"},Lt=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!(!l.test(e)&&""!=e)||"此项至少要包含8位且必须包含数字和字母"},Mt=e=>{const l=/^[\u4e00-\u9fa5a-zA-Z0-9]{3,10}$/;return!!l.test(e)||"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字"},Zt=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!(1!=hu.value&&1!=lu.value&&!l.test(e))||"此项至少要包含8位且必须包含数字和字母"},Jt=(0,h.iH)(""),Kt=(0,h.iH)(""),Et=(0,h.iH)(""),Rt=(0,h.iH)(""),Yt=(0,h.iH)(""),Xt=(0,h.iH)(""),Ft=(0,h.iH)(!1),Gt=(0,h.iH)(!1),Qt=(0,h.iH)(!1),eu=(0,h.iH)(""),lu=(0,h.iH)(!1),au=(0,h.iH)(!1),ou=(0,h.iH)(!0),nu=(0,h.iH)([]),tu=(0,h.iH)([]),uu=(0,h.iH)([]),iu=(0,h.iH)([]),ru=(0,h.iH)(""),su=(0,h.iH)(""),du=(0,h.iH)(""),mu=(0,h.iH)(""),cu=(0,h.iH)(!1),pu=(0,h.iH)(!1),vu=(0,h.iH)(!1),hu=(0,h.iH)(!1),_u=(0,h.iH)(!1),wu=(0,h.iH)(""),ku=(0,h.iH)(""),gu=(0,h.iH)(""),fu=((0,h.iH)(""),(0,h.iH)("")),bu=(0,h.iH)([]),yu=(0,h.iH)(""),Vu=(0,h.iH)(["default","svip","vip"]),Wu=(0,h.iH)(0),Tu=((0,h.iH)(.085*window.innerHeight),(0,h.iH)("")),xu=((0,h.iH)(""),(0,h.iH)("")),Uu=localStorage.getItem("jwtToken");Uu||bn.replace("/");const Hu={Authorization:`Bearer ${Uu}`},Au=async()=>{k.Z.post(`${_}/api/loginToken?token=`+Uu).then((e=>{if(0==e.data.code)return console.error(e.data.data),void bn.replace("/")})).catch((e=>{console.error("请求loginToken接口失败",e),bn.replace("/")}))},zu=e=>{"Web"==e||"WEB"==e?Ou(""):"ALL"==e||"All"==e?Su(""):e.includes("API")?Nu(""):Su(e)},Pu=e=>{Iu(e)},Su=async e=>{const l=await k.Z.get(`${_}/api/selectToken?name=${e}`,{headers:Hu}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession})));nu.value=e}},Nu=async e=>{const l=await k.Z.get(`${_}/api/selectToken?name=${e}`,{headers:Hu}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession}))),l=e.filter((e=>!0===e.setPoolToken));nu.value=l}},Ou=async e=>{const l=await k.Z.get(`${_}/api/selectToken?name=${e}`,{headers:Hu}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession}))),l=e.filter((e=>!1===e.setPoolToken));nu.value=l}},Cu=async()=>{const e=await k.Z.get(`${_}/api/selectLogin`,{headers:Hu}),l=e.data.data;if(Array.isArray(l)){const e=l.map((e=>({ipAddress:e.ipAddress,requestIp:e.requestIp,outRequestNumber:e.outRequestNumber,inRequestNumber:e.inRequestNumber,lastLoginTime:e.lastLoginTime})));iu.value=e}},$u=async e=>{const l=await k.Z.get(`${_}/api/selectPoolToken?name=${e}`,{headers:Hu}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({poolName:e.poolName,poolTime:e.poolTime,poolToken:e.poolToken,shareTokens:e.shareTokens,checkPool:e.checkPool,intoOneApi:e.intoOneApi,poolOneApi_models:e.poolOneApi_models,poolModel_mapping:e.poolModel_mapping,oneApi_pandoraUrl:e.oneApi_pandoraUrl,groupChecked:e.groupChecked,priority:e.priority})));tu.value=e}},Iu=async e=>{const l=V.kN.service({fullscreen:!0}),a=await k.Z.get(`${_}/api/selectShareToken?name=${e}`,{headers:Hu}),o=a.data.data;if(Array.isArray(o)){const e=o.map((e=>({oneApi_name:e.oneApi_name,token_name:e.token_name,token_value:e.token_value,oneApi_baseUrl:e.oneApi_baseUrl,oneApi_models:e.oneApi_models,model_mapping:e.model_mapping,oneApi_groups:e.oneApi_groups,shareTime:e.shareTime,priority:e.priority})));uu.value=e}l.close()},Bu=async e=>{const l=await k.Z.get(`${_}/api/selectSetting`,{headers:Hu}),a=l.data.data;Kn.value=a.proxy_api_prefix,En.value=a.isolated_conv_title,Rn.value=a.bing,Yn.value=a.timeout,Xn.value=a.proxy_url,Fn.value=a.public_share,Gn.value=a.disable_signup,Qn.value=a.auto_conv_arkose,et.value=a.proxy_file_service,lt.value=a.custom_doh_host,at.value=a.tls.enabled,ot.value=a.tls.cert_file,nt.value=a.tls.key_file,tt.value=a.site_password,ut.value=a.setup_password,null==a.whitelist?vt.value="null":vt.value=a.whitelist,it.value=a.loginUsername,rt.value=a.loginPassword,st.value=a.license_id,dt.value=a.isGetToken,mt.value=a.getTokenPassword,ct.value=a.containerName,pt.value=a.autoToken_url,ht.value=a.validation.provider,_t.value=a.validation.site_key,wt.value=a.validation.site_secret,kt.value=a.validation.site_login,gt.value=a.validation.setup_login,ft.value=a.validation.oai_username,bt.value=a.validation.oai_password,yt.value=a.auto_updateSession,Vt.value=a.auto_updateTime,Wt.value=a.auto_updateNumber,Tt.value=a.pandoraNext_outUrl,Tt.value.endsWith("/")?Bt.value=Tt.value+Kn.value:Bt.value=Tt.value+"/"+Kn.value,xt.value=a.oneAPi_outUrl,Ut.value=a.oneAPi_intoToken,Du()},Du=async()=>{"123456"==rt.value&&"root"==it.value&&(g.T.alert("请先修改默认的初始账号和密码,并填写相应的信息,具体可参考网站文档!","温馨提醒",{confirmButtonText:"确定",callback:e=>{(0,f.z8)({type:"info",message:"如果不知道怎么填的话,可以看tokensTool的文档站!"})}}),xn.value=!0,rt.value="",it.value="")},qu=()=>{const e=wn.value;0!==e.length?Pn.value=!0:(0,f.z8)("未选择数据")},ju=async()=>{try{const l=wn.value,a=l.map((e=>e.name)),o=V.kN.service({fullscreen:!0});try{""==It.value&&(It.value="{}"),JSON.parse(It.value)}catch(e){return(0,f.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void o.close()}const n={poolName:St.value,intoOneApi:Nt.value,poolOneApi_models:$t.value.toString(),poolModel_mapping:It.value,oneApi_pandoraUrl:Bt.value,shareTokens:a,groupChecked:hn.value.toString(),priority:Dt.value},t=await fetch(`${_}/api/addPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(n)}),u=await t.json();1===u.code?(St.value="",$u(""),(0,f.z8)({type:"success",message:u.data}),St.value="",Nt.value=!1,hn.value=["default","svip","vip"],Dt.value=0,It.value="",$t.value=[]):(0,f.z8)({type:"info",message:u.msg}),o.close()}catch(l){(0,f.z8)({type:"info",message:"取消生成pool_token"})}Pn.value=!1},Lu=e=>{let l=tu.value.find((l=>l.poolName===e));null!=l&&(qt.value=l.poolToken,Nt.value=l.intoOneApi,Ct.value=l.poolOneApi_models.split(","),Ot.value=l.poolModel_mapping,Bt.value=l.oneApi_pandoraUrl,vn.value=l.groupChecked.split(","),Dt.value=l.priority)},Mu=e=>{nu.value.find((l=>l.name===e&&!0===l.setPoolToken))},Zu=(0,p.Fl)((()=>nu.value.filter((e=>!0===e.setPoolToken)))),Ju=async()=>{try{const l=V.kN.service({fullscreen:!0});try{""==Ot.value&&(Ot.value="{}"),JSON.parse(Ot.value)}catch(e){return(0,f.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void l.close()}const a=wn.value,o=a.map((e=>e.name)),n={poolName:Ht.value,poolToken:qt.value,intoOneApi:Nt.value,poolOneApi_models:Ct.value.toString(),poolModel_mapping:Ot.value,oneApi_pandoraUrl:Bt.value,shareTokens:o,groupChecked:vn.value.toString(),priority:Dt.value};console.log(n);const t=await fetch(`${_}/api/requirePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(n)}),u=await t.json();1===u.code?($u(""),(0,f.z8)({type:"success",message:u.data}),Ht.value="",qt.value="",Nt.value=!1,Ct.value=[],Ot.value="",hn.value=["default","svip","vip"],Dt.value=0):(0,f.z8)({type:"info",message:u.msg}),l.close()}catch(l){(0,f.z8)({type:"info",message:"取消修改pool_token"})}Nn.value=!1},Ku=async()=>{const e=V.kN.service({fullscreen:!0});try{try{""==yu.value&&(yu.value="{}"),JSON.parse(yu.value)}catch(l){return(0,f.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void e.close()}const a={oneApi_name:ku.value,token_name:gu.value,oneApi_baseUrl:fu.value,oneApi_models:bu.value.toString(),model_mapping:yu.value,oneApi_groups:Vu.value.toString(),priority:Dt.value},o=await fetch(`${_}/api/addShareToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}),n=await o.json();1===n.code?(Iu(""),(0,f.z8)({type:"success",message:n.data}),ku.value="",gu.value="",fu.value="",bu.value=[],yu.value="",Vu.value=["default","svip","vip"],Dt.value=0):(0,f.z8)({type:"info",message:n.msg})}catch(a){(0,f.z8)({type:"info",message:"取消修改pool_token"})}$n.value=!1,e.close()},Eu=(0,h.iH)("");(0,p.bv)((async()=>{const e=V.kN.service({fullscreen:!0});Au(),window.innerWidth<=900?bn.replace("/iphone"):bn.replace("/home");try{await Promise.all([zu(Tu.value),$u(Tu.value),Bu(Tu.value)]);const e=await k.Z.get(`${_}/api/getPandoraNext`,{headers:Hu}),l=e.data.data;null!=l&&(Eu.value=`${l.current}/${l.total}`)}catch(l){console.error("An error occurred:",l)}finally{e.close()}}));const Ru=({row:e})=>0==e.checkSession?"warning-row":"",Yu=({row:e})=>0==e.checkPool?"warning-row":"",Xu=()=>{window.open(Tt.value)},Fu=()=>{var e=Tt.value;"/"!==e.charAt(e.length-1)&&(e+="/"),window.open(e+"shared.html")},Gu=()=>{var e=Tt.value;"/"!==e.charAt(e.length-1)&&(e+="/"),window.open(e+"setup")},Qu=()=>{window.open("https://apifox.com/apidoc/shared-40345b46-9c9c-45cc-b494-6a6a387a978f")},ei=(0,h.iH)("-1");let li="";const ai=(e,l)=>{console.log("选择准备!")},oi=()=>{Vn.value=!0},ni=()=>{const e=V.kN.service({fullscreen:!0}),l=new Date,a=`${l.getFullYear()}-${(l.getMonth()+1).toString().padStart(2,"0")}-${l.getDate().toString().padStart(2,"0")} ${l.getHours().toString().padStart(2,"0")}:${l.getMinutes().toString().padStart(2,"0")}:${l.getSeconds().toString().padStart(2,"0")}`;""!=wu.value&&(cu.value=!1,vu.value=!1,pu.value=!1),0==hu.value&&(mu.value=su.value+","+du.value,_u.value=!1,cu.value=!1,vu.value=!1,pu.value=!1);let o={name:ru.value,token:mu.value,username:su.value,userPassword:du.value,shared:cu.value,auto_shared:cu.value,show_user_info:pu.value,plus:vu.value,setPoolToken:hu.value,useRefreshToken:_u.value,password:wu.value,updateTime:a};fetch(`${_}/api/addToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(o)}).then((e=>e.json())).then((l=>{1==l.code?(f.z8.success("添加成功!"),ru.value="",mu.value="",su.value="",du.value="",cu.value=!1,pu.value=!1,vu.value=!1,hu.value=!1,_u.value=!1,wu.value="",""==o.token&&(o.token=l.data,f.z8.success("已为您自动装填token!"))):f.z8.error(l.msg),wu.value="",Su(""),e.close()})).catch((l=>{f.z8.error("获取账号出现问题,请检查刷新网址是否正确!"),e.close()})),Vn.value=!1},ti=(0,h.iH)(null),ui=async e=>{if(Jt.value=e.name,Yt.value=e.username,Xt.value=e.userPassword,Kt.value=e.token,Et.value=e.access_token,Rt.value=e.share_token,Ft.value=e.shared,Gt.value=e.show_user_info,Qt.value=e.plus,eu.value=e.password,lu.value=e.setPoolToken,au.value=e.useRefreshToken,ou.value=e.checkSession,1!=lu.value)return void(Wn.value=!0);const l={Authorization:`Bearer ${e.access_token}`};if(Wn.value=!0,lu.value){const a=await k.Z.get(`${Bt.value}/api/token/info/${e.share_token}`,{headers:l});let o=[],n=[];for(let e in a.data.usage)e.startsWith("range")||(n.push(e),o.push(a.data.usage[e]));0==n.length&&0==o.length&&(n=["gpt-4","gpt-3.5-turbo","gpt-3.5-turbo-0613"],o=[0,0,0]);const t=T.S1(ti.value),u={title:{text:`今日${a.data.usage["range"]} ${Jt.value}各模型用量`,textStyle:{fontSize:14,color:"#606266"},left:"center",top:"bottom"},tooltip:{},legend:{data:n},xAxis:{data:n},yAxis:{},series:[{name:"对话数量",type:"bar",data:o,barWidth:"25%",itemStyle:{color:function(e){const l=["#3498db","#2ecc71","#f1c40f","#9b59b6","#1abc9c","#e67e22","#ecf0f1","#95a5a6","#34495e","#16a085"];return l[e.dataIndex%l.length]}}}]};t.setOption(u)}},ii=(0,h.iH)(""),ri=(0,h.iH)(""),si=(0,h.iH)(""),di=(0,h.iH)(""),mi=(0,h.iH)([]),ci=(0,h.iH)(""),pi=(0,h.iH)(""),vi=(0,h.iH)(""),hi=(0,h.iH)(["default","svip","vip"]),_i=(0,h.iH)(""),wi=e=>{ii.value=e.oneApi_name,ri.value=e.token_name,si.value=e.token_value,di.value=e.oneApi_baseUrl,pi.value=e.oneApi_models,ci.value=e.model_mapping,vi.value=e.oneApi_groups,Dt.value=e.priority,_i.value=e.shareTime,In.value=!0};let ki=!1,gi=!1,fi="";const bi=(e,l)=>{Jt.value=l.name,Yt.value=l.username,Xt.value=l.userPassword,Kt.value=l.token,li=l.token,Ft.value=l.shared,Gt.value=l.show_user_info,Qt.value=l.plus,eu.value=l.password,lu.value=l.setPoolToken,au.value=l.useRefreshToken,ki=lu.value,gi=au.value,fi=Kt.value,ou.value=l.checkSession,Et.value=l.access_token,Rt.value=l.share_token,yn.value=!0},yi=async e=>{0==e?Tn.value=!0:1==e?xn.value=!0:2==e&&(Un.value=!0)},Vi=e=>{const l=V.kN.service({fullscreen:!0});null!=vt.value&&"null"!=vt.value||(vt.value=""),0==at.value&&(ot.value="",nt.value="");const a={enabled:at.value,cert_file:ot.value,key_file:nt.value},o={provider:ht.value,site_key:_t.value,site_secret:wt.value,site_login:kt.value,setup_login:gt.value,oai_username:ft.value,oai_password:bt.value},n={proxy_api_prefix:Kn.value,isolated_conv_title:En.value,bing:Rn.value,timeout:Yn.value,proxy_url:Xn.value,public_share:Fn.value,site_password:tt.value,setup_password:ut.value,loginUsername:it.value,loginPassword:rt.value,license_id:st.value,disable_signup:Gn.value,auto_conv_arkose:Qn.value,proxy_file_service:et.value,custom_doh_host:lt.value,isGetToken:dt.value,getTokenPassword:mt.value,containerName:ct.value,autoToken_url:pt.value,whitelist:vt.value,validation:o,tls:a};fetch(`${_}/api/requireSetting`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(n)}).then((e=>e.json())).then((e=>{1==e.code?f.z8.success(e.data):f.z8.error(e.msg),Au(),l.close()})).catch((e=>{l.close(),console.error("请求requireSetting接口失败",e),f.z8.error("修改失败!")})),0==e?Tn.value=!1:1==e?xn.value=!1:2==e&&(Un.value=!1)},Wi=()=>{const e=V.kN.service({fullscreen:!0});"/"!==Tt.value.charAt(Tt.value.length-1)&&(Tt.value+="/");const l={auto_updateSession:yt.value,auto_updateTime:Vt.value,auto_updateNumber:Wt.value,pandoraNext_outUrl:Tt.value,oneAPi_outUrl:xt.value,oneAPi_intoToken:Ut.value};fetch(`${_}/api/controllerTask`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>e.json())).then((l=>{1==l.code?f.z8.success(l.data):f.z8.error(l.msg),e.close()})).catch((l=>{e.close(),console.error("请求controllerTask接口失败",l),f.z8.error("修改失败!")})),zn.value=!1},Ti=()=>{const e=V.kN.service({fullscreen:!0});let l="";if(li!=Kt.value){const e=new Date;l=`${e.getFullYear()}-${(e.getMonth()+1).toString().padStart(2,"0")}-${e.getDate().toString().padStart(2,"0")} ${e.getHours().toString().padStart(2,"0")}:${e.getMinutes().toString().padStart(2,"0")}:${e.getSeconds().toString().padStart(2,"0")}`}0==lu.value&&(Ft.value=!1,Qt.value=!1,Gt.value=!1,au.value=!1),!0===Ft.value?eu.value="":(Qt.value=!1,Gt.value=!1);let a="";a=ki!=lu.value&&fi==Kt.value?0==lu.value?"您确定要关闭API模型开启web模式,您将无法生成任何的token,但不消耗额度!":1==au.value?"您确定要开启API模式,并使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!":"您确定要开启API模式,并使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!":gi!=au.value&&fi==Kt.value?1==au.value?"您确定要切换使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!":"您确定要切换使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!":"修改将要提交,您确定修改好了吗?",g.T.confirm(a,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const l={name:Jt.value,token:Kt.value,username:Yt.value,userPassword:Xt.value,shared:Ft.value,auto_shared:Ft.value,show_user_info:Gt.value,plus:Qt.value,setPoolToken:lu.value,useRefreshToken:au.value,checkSession:ou.value,password:eu.value,access_token:Et.value,share_token:Rt.value};fetch(`${_}/api/requiredToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>e.json())).then((l=>{1==l.code?(f.z8.success(l.data),Su("")):f.z8.error(l.msg),e.close()})).catch((l=>{e.close(),console.error("请求requireToken接口失败",l),f.z8.error("修改失败!")})),yn.value=!1})).catch((()=>{e.close(),(0,f.z8)({type:"info",message:"编辑取消!"})}))},xi=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`${_}/api/open`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?g.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.data.msg),e.close()},Ui=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`${_}/api/close`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?g.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.data.msg),e.close()},Hi=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`${_}/api/restart`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?g.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.data.msg),e.close()},Ai=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`${_}/api/reload`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?g.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.data.msg),e.close()},zi=(0,h.iH)(""),Pi=(0,h.iH)(""),Si=async()=>{const e=await k.Z.get(`${_}/api/getPandoraNext`,{headers:Hu}),l=e.data.data;if(null!=l){Eu.value=l.current+"/"+l.total,zi.value=l.ip;var a=new Date;const e=new Date(a.getTime()+1e3*l.ttl);var o=e.getFullYear(),n=e.getMonth()+1,t=e.getDate(),u=e.getHours(),i=e.getMinutes(),r=e.getSeconds();Pi.value=o+"-"+n+"-"+t+" "+u+":"+i+":"+r}An.value=!0},Ni=async()=>{let e="全部检查并生成可能会加载1-3分钟,请您耐心等待!";g.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((async()=>{const e=V.kN.service({fullscreen:!0,text:"正在加载中,请耐心等待..."}),l=await k.Z.get(`${_}/api/updateAllToken`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?(await Promise.all([Su(""),$u("")]),g.T.alert(a,"温馨提示",{dangerouslyUseHTMLString:!0})):f.z8.error(l.data.msg),e.close()})).catch((()=>{(0,f.z8)({type:"info",message:"全部检查并生成取消!"})}))},Oi=e=>{if(0==e.setPoolToken)return void f.z8.error("未开启API模式,无法刷新");let l="您确定要刷新session_token吗,刷新session_token消耗100额度,请您要仔细认真考虑哦!";e.useRefreshToken&&(l="您确定要刷新refresh_token吗,刷新refresh_token消耗1000额度,请您要仔细认真考虑哦!"),g.T.confirm(l,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const l=V.kN.service({fullscreen:!0});fetch(`${_}/api/updateSessionToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((a=>{null!=a&&""!=a&&(null!=a.data?(e.token=a.data,Su(""),g.T.alert("刷新成功!","温馨提醒",{confirmButtonText:"OK"})):f.z8.error(a.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))})).catch((()=>{(0,f.z8)({type:"info",message:"刷新取消!"})}))},Ci=e=>{const l=V.kN.service({fullscreen:!0});fetch(`${_}/api/refreshSimplyPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?($u(""),g.T.alert("刷新成功!","温馨提醒",{confirmButtonText:"OK"})):f.z8.error(e.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},$i=e=>{ii.value=e.oneApi_name,ri.value=e.token_name,si.value=e.token_value,di.value=e.oneApi_baseUrl,mi.value=e.oneApi_models.split(","),ci.value=e.model_mapping,hi.value=e.oneApi_groups.split(","),Dt.value=e.priority,_i.value=e.shareTime,Bn.value=!0},Ii=()=>{const e=V.kN.service({fullscreen:!0}),l={oneApi_name:ii.value,token_name:ri.value,token_value:si.value,oneApi_baseUrl:di.value,oneApi_models:mi.value.toString(),model_mapping:ci.value,oneApi_groups:hi.value.toString(),priority:Dt.value};fetch(`${_}/api/requireShareToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?g.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.msg)),Iu(""),e.close()})).catch((l=>{e.close(),console.error("Error:",l)})),Bn.value=!1},Bi=e=>{if(0==e.setPoolToken)return void f.z8.error("未开启API模式,无法生成");const l=V.kN.service({fullscreen:!0});fetch(`${_}/api/updateToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?g.T.alert("生成shareToken成功!","温馨提醒",{confirmButtonText:"OK"}):f.z8.error(e.msg)),Su(""),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},Di=e=>{const l=V.kN.service({fullscreen:!0});fetch(`${_}/api/changePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?($u(""),g.T.alert("更换pool_token成功!","温馨提醒",{confirmButtonText:"OK"})):f.z8.error(e.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},qi=(e,l)=>{const a=V.kN.service({fullscreen:!0});g.T.confirm("您确定要删除这个Pool_Token吗,删除之后就找不到咯,请您要仔细认真考虑哦!","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{fetch(`${_}/api/deletePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e.data?($u(""),f.z8.success(e.data),a.close()):($u(""),f.z8.error(e.msg),a.close()),Pn.value=!1})).catch((e=>{console.error("删除失败",e),$u(""),a.close(),Pn.value=!1}))})).catch((()=>{a.close(),(0,f.z8)({type:"info",message:"删除取消!"})}))},ji=(e,l)=>{const a=V.kN.service({fullscreen:!0});fetch(`${_}/api/verifySimplyPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?($u(""),g.T.alert(e.data,"温馨提醒",{confirmButtonText:"OK"})):($u(""),f.z8.error(e.msg))),a.close()})).catch((e=>{a.close(),console.error("Error:",e)}))},Li=(e,l)=>{const a=V.kN.service({fullscreen:!0});let o="";g.T.confirm("您确定要删除这个Token吗,删除之后就找不到咯,记得点击全部刷新poolToken","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`${_}/api/deleteToken`,l,{headers:Hu}).then((async e=>{1==l.setPoolToken&&await k.Z.get(`${_}/api/updateAllPoolToken`,{headers:Hu}),o=e.data.data,Su(""),(0,f.z8)({type:"success",message:o}),a.close()})).catch((e=>{a.close(),console.error("删除失败",e)}))})).catch((()=>{(0,f.z8)({type:"info",message:"删除取消!"}),a.close()}))},Mi=(e,l)=>{const a=V.kN.service({fullscreen:!0});let o="";g.T.confirm("您确定要删除这个share_Token吗,删除之后就找不到咯","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`${_}/api/deleteShareToken`,l,{headers:Hu}).then((async e=>{o=e.data.data,Iu(""),(0,f.z8)({type:"success",message:o}),a.close()})).catch((e=>{a.close(),console.error("删除失败",e)}))})).catch((()=>{(0,f.z8)({type:"info",message:"删除取消!"}),a.close()}))},Zi=e=>{if(!e)return"";var l=new Date;const a=(0,b.Z)(e.updateTime),o=(0,y.Z)(l,a);return e.token.length>=2e3?o>=80?"已经过去了至少80天":Math.ceil(80-o)+"天":e.token.length<200&&!e.token.includes("fk-")?"永久":o>=10?"已经过去了至少10天":Math.ceil(10-o)+"天"},Ji=()=>{localStorage.removeItem("jwtToken"),bn.replace("/")},Ki=()=>{Hn.value=!0},Ei=async()=>{await Iu(""),Cn.value=!0},Ri=()=>{Cu(),Sn.value=!0},Yi=e=>{const l=document.createElement("textarea");l.value=e,document.body.appendChild(l),l.select(),document.execCommand("copy"),document.body.removeChild(l),(0,f.z8)({type:"success",message:"复制成功!"})},Xi=e=>{const l=wn.value,a=l.map((e=>e));if(0!==l.length)if("选中删除Token"!=e)if("选中刷新Token"!=e)"选中合成pool_token"==e?qu():"选中修改pool_token"==e&&(Ht.value="",zt.value="",qt.value="",Pt.value="",Nt.value=!1,Ct.value=[],Ot.value="",Bt.value="",vn.value=[],Dt.value=0,Nn.value=!0);else{let e=0;const l=wn.value,a=l.map((e=>e));a.forEach(((l,a)=>{l.setPoolToken&&(l.useRefreshToken?e+=1e3:e+=100)}));const o="您确定要花"+e+"积分刷新这"+l.length+"个Token吗,请您要仔细认真考虑哦!";g.T.confirm(o,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`${_}/api/updateSessionTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(Su(""),g.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"刷新取消!"})}))}else{const e=V.kN.service({fullscreen:!0});let o="";g.T.confirm("您确定要删除这"+l.length+"个Token吗,删除之后就找不到咯","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`${_}/api/deleteTokenList`,a,{headers:Hu}).then((async l=>{await k.Z.get(`${_}/api/updateAllPoolToken`,{headers:Hu}),o=l.data.data,Su(""),(0,f.z8)({type:"success",message:o}),e.close()})).catch((l=>{e.close(),console.error("删除失败",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"删除取消!"}),e.close()}))}else(0,f.z8)("未选择数据")},Fi=e=>{At.value=e.poolName,zt.value=e.shareTokens,qt.value=e.poolToken,Pt.value=e.poolTime,Nt.value=e.intoOneApi,Ct.value=e.poolOneApi_models.split(","),Ot.value=e.poolModel_mapping,Bt.value=e.oneApi_pandoraUrl,vn.value=e.groupChecked.split(","),Dt.value=e.priority,Dn.value=!0},Gi=e=>{const l=kn.value,a=l.map((e=>e));if(0!==a.length)if("选中检查pool_token"!=e)if("选中刷新pool_token"!=e)if("选中更换pool_token"!=e)if("选中删除pool_token"!=e);else{l.length;const e="您确定要删除这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";g.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`${_}/api/deletePoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?($u(""),g.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"删除取消!"})}))}else{l.length;const e="您确定要更换这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";g.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`${_}/api/changePoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?($u(""),g.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"更换取消!"})}))}else{const e="您确定要刷新这"+l.length+"个pool_token吗?";g.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`${_}/api/refreshSimplyPoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?($u(""),g.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"刷新取消!"})}))}else{let e=4*l.length;const o="您确定要花"+e+"积分检查这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";g.T.confirm(o,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`${_}/api/verifySimplyPoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?($u(""),g.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"检查取消!"})}))}else(0,f.z8)("未选择数据")},Qi=(0,h.iH)(null),er=async()=>{On.value=!0;const e=await k.Z.get(`${_}/api/modelsUsage`,{headers:Hu});let l=e.data.data.map((e=>e.usage)),a=e.data.data.map((e=>e.model));const o=T.S1(Qi.value),n={title:{text:"copilot每日对话统计",fontSize:18,color:"#606266"},tooltip:{},legend:{data:a},xAxis:{data:a},yAxis:{},series:[{name:"对话数量",type:"bar",data:l,barWidth:"40%",itemStyle:{color:function(e){const l=["#3498db","#2ecc71","#f1c40f","#9b59b6","#1abc9c","#e67e22","#ecf0f1","#95a5a6","#34495e","#16a085"];return l[e.dataIndex%l.length]}}}]};o.setOption(n)};return(e,l)=>{const a=c.JO,_=(0,p.up)("el-menu-item"),w=(0,p.up)("el-sub-menu"),k=(0,p.up)("el-menu"),g=m.zx,f=(0,p.up)("el-page-header"),b=d.ol,y=(0,p.up)("el-table-column"),V=(0,p.up)("el-button"),T=(0,p.up)("el-tag"),wn=(0,p.up)("el-popover"),kn=(0,p.up)("el-option"),bn=(0,p.up)("el-select"),Pt=s.gN,ou=r.rs,Uu=i.TS,Hu=u.l0,Au=t.Vq,Su=(0,p.up)("CopyDocument"),Nu=(0,p.up)("el-icon"),Ou=(0,p.up)("h10"),Cu=(0,p.up)("el-select-group"),$u=(0,p.up)("el-dialog"),Iu=(0,p.up)("el-form-item"),Bu=(0,p.up)("el-input"),Du=n.XZ,qu=o.cO,li=(0,p.Q2)("loading");return(0,p.wg)(),(0,p.iD)(p.HY,null,[(0,p._)("div",x,[U,(0,p.Wm)(k,{"default-active":ei.value,class:"el-menu-demo",mode:"horizontal",ellipsis:!1,onSelect:ai,"active-text-color":"#0ea27e","text-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"0"},{title:(0,p.w5)((()=>[(0,p._)("div",A,[(0,p._)("h2",null,(0,v.zw)(Eu.value),1)]),(0,p.Wm)(a,{name:"replay",size:"20",onClick:Si})])),default:(0,p.w5)((()=>[H])),_:1}),z,(0,p.Wm)(w,{index:"3"},{title:(0,p.w5)((()=>[(0,p.Uk)("列表")])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"3-3",onClick:Ni},{default:(0,p.w5)((()=>[(0,p.Uk)("全部检查并生成")])),_:1}),(0,p.Wm)(_,{index:"3-1",onClick:Ki},{default:(0,p.w5)((()=>[(0,p.Uk)("pool_token列表")])),_:1}),(0,p.Wm)(_,{index:"3-2",onClick:Ei},{default:(0,p.w5)((()=>[(0,p.Uk)("share_token列表")])),_:1}),(0,p.Wm)(_,{index:"3-5",onClick:er},{default:(0,p.w5)((()=>[(0,p.Uk)("copilot每日用量统计")])),_:1}),(0,p.Wm)(_,{index:"3-4",onClick:Ri},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool登录日志")])),_:1})])),_:1}),(0,p.Wm)(w,{index:"1"},{title:(0,p.w5)((()=>[(0,p.Uk)("设置")])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"1-1",onClick:l[0]||(l[0]=e=>yi(mn))},{default:(0,p.w5)((()=>[(0,p.Uk)("PandoraNext设置")])),_:1}),(0,p.Wm)(_,{index:"1-2",onClick:l[1]||(l[1]=e=>yi(cn))},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool设置")])),_:1}),(0,p.Wm)(_,{index:"1-3",onClick:l[2]||(l[2]=e=>yi(pn))},{default:(0,p.w5)((()=>[(0,p.Uk)("验证码信息设置")])),_:1}),(0,p.Wm)(_,{index:"1-4",onClick:l[3]||(l[3]=e=>zn.value=!0)},{default:(0,p.w5)((()=>[(0,p.Uk)("定时&接口设置")])),_:1}),(0,p.Wm)(_,{index:"1-5",onClick:Qu},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool使用手册")])),_:1})])),_:1}),(0,p.Wm)(w,{index:"2"},{title:(0,p.w5)((()=>[(0,p.Uk)("状态")])),default:(0,p.w5)((()=>[(0,p.Wm)(w,{index:"2-1"},{title:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(ct.value)+"状态",1)])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"2-1-1",onClick:xi},{default:(0,p.w5)((()=>[(0,p.Uk)("开启"+(0,v.zw)(ct.value),1)])),_:1}),(0,p.Wm)(_,{index:"2-1-2",onClick:Ui},{default:(0,p.w5)((()=>[(0,p.Uk)("暂停"+(0,v.zw)(ct.value),1)])),_:1}),(0,p.Wm)(_,{index:"2-1-3",onClick:Hi},{default:(0,p.w5)((()=>[(0,p.Uk)("重启"+(0,v.zw)(ct.value),1)])),_:1}),(0,p.Wm)(_,{index:"2-1-4",onClick:Ai},{default:(0,p.w5)((()=>[(0,p.Uk)("重载"+(0,v.zw)(ct.value),1)])),_:1})])),_:1}),(0,p.Wm)(w,{index:"2-2"},{title:(0,p.w5)((()=>[(0,p.Uk)("跳转Web服务")])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"2-2-1",onClick:Xu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(ct.value)+"主页",1)])),_:1}),(0,p.Wm)(_,{index:"2-2-2",onClick:Fu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(ct.value)+"共享页",1)])),_:1}),(0,p.Wm)(_,{index:"2-2-3",onClick:Gu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(ct.value)+"修改页",1)])),_:1})])),_:1}),(0,p.Wm)(w,{index:"2-3"},{title:(0,p.w5)((()=>[(0,p.Uk)("获取token地址")])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"2-3-1"},{default:(0,p.w5)((()=>[P])),_:1}),(0,p.Wm)(_,{index:"2-3-2"},{default:(0,p.w5)((()=>[S])),_:1}),(0,p.Wm)(_,{index:"2-3-3"},{default:(0,p.w5)((()=>[N])),_:1})])),_:1}),(0,p.Wm)(_,{index:"2-4",onClick:Ji},{default:(0,p.w5)((()=>[(0,p.Uk)("退出登录")])),_:1})])),_:1})])),_:1},8,["default-active"]),(0,p._)("div",O,[(0,p.Wm)(f,{icon:null,title:" "},{content:(0,p.w5)((()=>[C])),extra:(0,p.w5)((()=>[(0,p._)("div",{class:"addToken",onClick:oi},[(0,p.Wm)(g,{square:"",icon:"add-o",color:"#0ea27e",class:"addTokenButton"})])])),_:1})]),(0,p._)("div",$,[(0,p._)("div",I,[(0,p._)("div",B,[(0,p.Wm)(b,{modelValue:Tu.value,"onUpdate:modelValue":l[4]||(l[4]=e=>Tu.value=e),shape:"round",clearable:"",placeholder:"请输入搜索token名称或类型",onSearch:zu},null,8,["modelValue"])]),(0,p._)("div",D,[(0,p.wy)(((0,p.wg)(),(0,p.j4)((0,h.SU)(W.eI),{data:nu.value,style:{width:"100%"},onSelectionChange:gn,class:"tokenTable","default-sort":{prop:"updateTime",prop:"setPoolToken"},"row-class-name":Ru},{default:(0,p.w5)((()=>[(0,p.Wm)(y,{type:"selection",width:"45"}),(0,p.Wm)(y,{label:"名称",width:"160",prop:"setPoolToken",sortable:""},{default:(0,p.w5)((e=>[(0,p._)("div",q,[(0,p._)("div",null,[(0,p.Wm)(V,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[(0,p._)("h5",null,(0,v.zw)(e.row.setPoolToken?e.row.useRefreshToken?"refAPI":"sesAPI":"Web"),1)])),_:2},1024)]),(0,p._)("span",j,(0,v.zw)(e.row.name),1)])])),_:1}),(0,p.Wm)(y,{prop:"updateTime",sortable:"",label:"有效时间",width:"117"},{default:(0,p.w5)((e=>[(0,p.Wm)(wn,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p._)("div",null,"注册时间:"+(0,v.zw)(e.row.updateTime),1)])),reference:(0,p.w5)((()=>[(0,p._)("span",L,[(0,p.Wm)(T,null,{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(Zi(e.row)),1)])),_:2},1024)])])),_:2},1024)])),_:1}),(0,p.Wm)(y,{label:"操作方法",width:"370"},{default:(0,p.w5)((e=>[(0,p.Wm)(V,{size:"small",onClick:l=>bi(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("编辑")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"primary",onClick:l=>ui(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"danger",onClick:l=>Li(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"success",onClick:l=>Oi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("刷新")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"warning",onClick:l=>Bi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("生成")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])),[[li,e.loading]])]),(0,p._)("div",M,[(0,p.Wm)(bn,{modelValue:qn.value,"onUpdate:modelValue":l[5]||(l[5]=e=>qn.value=e),clearable:"",filterable:"",placeholder:"请选择批量操作"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(jn,(e=>(0,p.Wm)(kn,{key:e.buttonValue,label:e.label,value:e.buttonValue},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),(0,p.Wm)(V,{class:"my-button",onClick:l[6]||(l[6]=e=>Xi(qn.value))},{default:(0,p.w5)((()=>[Z])),_:1})])])]),J]),(0,p.Wm)(Au,{show:yn.value,"onUpdate:show":l[17]||(l[17]=e=>yn.value=e),title:"📌修改token信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",K,[(0,p.Wm)(Hu,{onSubmit:l[16]||(l[16]=e=>Ti())},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[E,(0,p.Wm)(Pt,{modelValue:Yt.value,"onUpdate:modelValue":l[7]||(l[7]=e=>Yt.value=e),name:"OpenAi邮箱",label:"OpenAi邮箱","input-align":"center",placeholder:"OpenAi邮箱",rules:[{required:!0,message:"请填写OpenAi邮箱"}]},null,8,["modelValue"]),R,(0,p.Wm)(Pt,{modelValue:Xt.value,"onUpdate:modelValue":l[8]||(l[8]=e=>Xt.value=e),name:"OpenAi密码","input-align":"center",label:"OpenAi密码",placeholder:"OpenAi密码",rules:[{required:!0,message:"请填写OpenAi密码"}]},null,8,["modelValue"]),Y,(0,p.Wm)(Pt,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:lu.value,"onUpdate:modelValue":l[9]||(l[9]=e=>lu.value=e)},null,8,["modelValue"])])),_:1}),1==lu.value?((0,p.wg)(),(0,p.iD)("div",X,[F,(0,p.Wm)(Pt,{name:"switch",label:"是否使用refreshToken"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:au.value,"onUpdate:modelValue":l[10]||(l[10]=e=>au.value=e)},null,8,["modelValue"])])),_:1}),G,(0,p.Wm)(Pt,{name:"switch",label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Ft.value,"onUpdate:modelValue":l[11]||(l[11]=e=>Ft.value=e)},null,8,["modelValue"])])),_:1}),1==Ft.value?((0,p.wg)(),(0,p.iD)("div",Q,[ee,(0,p.Wm)(Pt,{name:"switch",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Gt.value,"onUpdate:modelValue":l[12]||(l[12]=e=>Gt.value=e)},null,8,["modelValue"])])),_:1}),le,(0,p.Wm)(Pt,{name:"switch",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Qt.value,"onUpdate:modelValue":l[13]||(l[13]=e=>Qt.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0)])):(0,p.kq)("",!0),0==Ft.value||0==lu.value?((0,p.wg)(),(0,p.iD)("div",ae,[oe,(0,p.Wm)(Pt,{rows:"2",type:"textarea",autoSize:"",modelValue:eu.value,"onUpdate:modelValue":l[14]||(l[14]=e=>eu.value=e),name:"Token的密码","input-align":"center",label:"Token的密码",placeholder:"填了将不会分享给他人(如不填则输入Token名即可进入)",rules:[{validator:Zt}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),ne,(0,p.Wm)(Pt,{modelValue:Kt.value,"onUpdate:modelValue":l[15]||(l[15]=e=>Kt.value=e),label:"Token的值",type:"textarea","input-align":"center",maxlength:"5000",placeholder:"请填写OpenAi的Token(选填),session或refresh_token",autosize:{maxHeight:100,minHeight:50},"show-word-limit":""},null,8,["modelValue"]),te])),_:1}),(0,p._)("div",ue,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),ie])),_:1},8,["show"]),(0,p.Wm)(Au,{show:Vn.value,"onUpdate:show":l[29]||(l[29]=e=>Vn.value=e),title:"✨添加token信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"addTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",re,[(0,p.Wm)(Hu,{onSubmit:l[28]||(l[28]=e=>ni())},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[se,(0,p.Wm)(Pt,{modelValue:ru.value,"onUpdate:modelValue":l[18]||(l[18]=e=>ru.value=e),name:"Token用户名",label:"Token用户名",placeholder:"Token用户名",rules:[{required:!0,message:"请填写Token用户名"}]},null,8,["modelValue"]),de,(0,p.Wm)(Pt,{modelValue:su.value,"onUpdate:modelValue":l[19]||(l[19]=e=>su.value=e),name:"OpenAi用户名",label:"OpenAi用户名",placeholder:"OpenAi用户名",rules:[{required:!0,message:"请填写OpenAi用户名"}]},null,8,["modelValue"]),me,(0,p.Wm)(Pt,{modelValue:du.value,"onUpdate:modelValue":l[20]||(l[20]=e=>du.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码",rules:[{required:!0,message:"请填写OpenAi密码"}]},null,8,["modelValue"]),ce,(0,p.Wm)(Pt,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:hu.value,"onUpdate:modelValue":l[21]||(l[21]=e=>hu.value=e)},null,8,["modelValue"])])),_:1}),1==hu.value?((0,p.wg)(),(0,p.iD)("div",pe,[ve,(0,p.Wm)(Pt,{name:"switch",label:"是否使用refreshToken"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:_u.value,"onUpdate:modelValue":l[22]||(l[22]=e=>_u.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0),1==hu.value?((0,p.wg)(),(0,p.iD)("div",he,[_e,(0,p.Wm)(Pt,{name:"switch",label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:cu.value,"onUpdate:modelValue":l[23]||(l[23]=e=>cu.value=e)},null,8,["modelValue"])])),_:1}),1==cu.value?((0,p.wg)(),(0,p.iD)("div",we,[ke,(0,p.Wm)(Pt,{name:"switch",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:pu.value,"onUpdate:modelValue":l[24]||(l[24]=e=>pu.value=e)},null,8,["modelValue"])])),_:1}),ge,(0,p.Wm)(Pt,{name:"switch",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:vu.value,"onUpdate:modelValue":l[25]||(l[25]=e=>vu.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0)])):(0,p.kq)("",!0),""==cu.value?((0,p.wg)(),(0,p.iD)("div",fe,[be,(0,p.Wm)(Pt,{rows:"3",type:"textarea",autoSize:"",modelValue:wu.value,"onUpdate:modelValue":l[26]||(l[26]=e=>wu.value=e),name:"Token的密码",label:"Token的密码","input-align":"center",placeholder:"填了将不会分享给他人(如不填则输入Token名即可进入)",rules:[{validator:Zt}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),1==hu.value?((0,p.wg)(),(0,p.iD)("div",ye,[Ve,(0,p.Wm)(Pt,{rows:"3",type:"textarea",maxlength:"5000","show-word-limit":"",modelValue:mu.value,"onUpdate:modelValue":l[27]||(l[27]=e=>mu.value=e),name:"Token的值",label:"Token的值",placeholder:"选填(可不填,不填则使用账号密码),目前只支持session_token或refresh_token"},null,8,["modelValue"])])):(0,p.kq)("",!0),We])),_:1}),(0,p._)("div",Te,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),xe])),_:1},8,["show"]),(0,p.Wm)(Au,{show:Wn.value,"onUpdate:show":l[49]||(l[49]=e=>Wn.value=e),title:"🔎token信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"showDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Ue,[(0,p.Wm)(Hu,null,{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[He,(0,p.Wm)(Pt,{modelValue:Jt.value,"onUpdate:modelValue":l[30]||(l[30]=e=>Jt.value=e),name:"Token用户名",label:"Token用户名",placeholder:"Token用户名","left-icon":"description-o","input-align":"center",readonly:!0,onClickLeftIcon:l[31]||(l[31]=e=>Yi(Jt.value))},null,8,["modelValue"]),Ae,(0,p.Wm)(Pt,{modelValue:eu.value,"onUpdate:modelValue":l[32]||(l[32]=e=>eu.value=e),type:"temPassword",name:"Token的密码",label:"Token的密码",placeholder:"Token的密码","input-align":"center","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[33]||(l[33]=e=>Yi(eu.value))},null,8,["modelValue"]),ze,(0,p.Wm)(Pt,{modelValue:Yt.value,"onUpdate:modelValue":l[34]||(l[34]=e=>Yt.value=e),name:"OpenAi邮箱",label:"OpenAi邮箱",placeholder:"OpenAi邮箱","left-icon":"description-o","input-align":"center",readonly:!0,onClickLeftIcon:l[35]||(l[35]=e=>Yi(Yt.value))},null,8,["modelValue"]),Pe,(0,p.Wm)(Pt,{modelValue:Xt.value,"onUpdate:modelValue":l[36]||(l[36]=e=>Xt.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码","left-icon":"description-o","input-align":"center",readonly:!0,onClickLeftIcon:l[37]||(l[37]=e=>Yi(Xt.value))},null,8,["modelValue"]),Se,(0,p.Wm)(Pt,{name:"temShared",readonly:!0,label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:Ft.value,"onUpdate:modelValue":l[38]||(l[38]=e=>Ft.value=e)},null,8,["modelValue"])])),_:1}),Ne,(0,p.Wm)(Pt,{readonly:!0,name:"temShow_user_info",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:Gt.value,"onUpdate:modelValue":l[39]||(l[39]=e=>Gt.value=e)},null,8,["modelValue"])])),_:1}),Oe,(0,p.Wm)(Pt,{readonly:!0,name:"temPlus",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:Qt.value,"onUpdate:modelValue":l[40]||(l[40]=e=>Qt.value=e)},null,8,["modelValue"])])),_:1}),Ce,(0,p.Wm)(Pt,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:lu.value,"onUpdate:modelValue":l[41]||(l[41]=e=>lu.value=e)},null,8,["modelValue"])])),_:1}),$e,(0,p.Wm)(Pt,{name:"switch",label:"是否使用refresh_token"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:au.value,"onUpdate:modelValue":l[42]||(l[42]=e=>au.value=e)},null,8,["modelValue"])])),_:1}),Ie,(0,p.Wm)(Pt,{modelValue:Kt.value,"onUpdate:modelValue":l[43]||(l[43]=e=>Kt.value=e),label:"Token的值",type:"textarea",maxlength:"5000",placeholder:"请填写OpenAi的Token(session或refresh_token)","show-word-limit":"","input-align":"center","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[44]||(l[44]=e=>Yi(Kt.value)),autosize:{maxHeight:100,minHeight:50}},null,8,["modelValue"]),1==lu.value?((0,p.wg)(),(0,p.iD)("div",Be,[De,(0,p.Wm)(Pt,{modelValue:Et.value,"onUpdate:modelValue":l[45]||(l[45]=e=>Et.value=e),label:"access_token",type:"textarea",maxlength:"5000","input-align":"center",placeholder:"请填写OpenAi的access_token","show-word-limit":"","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[46]||(l[46]=e=>Yi(Et.value)),autosize:{maxHeight:100,minHeight:50}},null,8,["modelValue"]),qe,(0,p.Wm)(Pt,{modelValue:Rt.value,"onUpdate:modelValue":l[47]||(l[47]=e=>Rt.value=e),label:"share_token",type:"textarea",maxlength:"200","input-align":"center",placeholder:"请填写OpenAi的share_token","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[48]||(l[48]=e=>Yi(Rt.value)),autosize:{maxHeight:100,minHeight:50}},null,8,["modelValue"])])):(0,p.kq)("",!0)])),_:1})])),_:1}),1==lu.value?((0,p.wg)(),(0,p.iD)("div",je,[(0,p._)("div",{ref_key:"chart_show",ref:ti,style:{width:"auto",height:"300px"}},null,512),Le])):(0,p.kq)("",!0)])])),_:1},8,["show"]),(0,p.Wm)(Au,{show:Tn.value,"onUpdate:show":l[64]||(l[64]=e=>Tn.value=e),title:"PandoraNext设置信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Me,[(0,p.Wm)(Hu,{onSubmit:l[63]||(l[63]=e=>Vi(mn))},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[Ze,(0,p.Wm)(Pt,{modelValue:En.value,"onUpdate:modelValue":l[50]||(l[50]=e=>En.value=e),name:"对话标题",label:"对话标题",placeholder:"隔离对话设置标题"},null,8,["modelValue"]),Je,(0,p.Wm)(Pt,{modelValue:Rn.value,"onUpdate:modelValue":l[51]||(l[51]=e=>Rn.value=e),name:"绑定IP和端口",label:"绑定IP和端口",placeholder:"绑定IP和端口(选填)"},null,8,["modelValue"]),Ke,(0,p.Wm)(Pt,{modelValue:lt.value,"onUpdate:modelValue":l[52]||(l[52]=e=>lt.value=e),name:"DoH主机名",label:"DoH主机名",placeholder:"配置自定义的DoH主机名(选填)"},null,8,["modelValue"]),Ee,(0,p.Wm)(Pt,{modelValue:Yn.value,"onUpdate:modelValue":l[53]||(l[53]=e=>Yn.value=e),name:"请求超时时间",label:"请求超时时间",placeholder:"请求超时时间(选填)"},null,8,["modelValue"]),Re,(0,p.Wm)(Pt,{name:"switch",label:"是否分享对话(选填)"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Fn.value,"onUpdate:modelValue":l[54]||(l[54]=e=>Fn.value=e)},null,8,["modelValue"])])),_:1}),Ye,(0,p.Wm)(Pt,{name:"switch",label:"是否配置证书"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:at.value,"onUpdate:modelValue":l[55]||(l[55]=e=>at.value=e)},null,8,["modelValue"])])),_:1}),1==at.value?((0,p.wg)(),(0,p.iD)("div",Xe,[Fe,(0,p.Wm)(Pt,{modelValue:ot.value,"onUpdate:modelValue":l[56]||(l[56]=e=>ot.value=e),name:"证书文件",label:"证书文件",placeholder:"证书文件"},null,8,["modelValue"]),Ge,(0,p.Wm)(Pt,{modelValue:nt.value,"onUpdate:modelValue":l[57]||(l[57]=e=>nt.value=e),name:"密钥文件",label:"密钥文件",placeholder:"密钥文件"},null,8,["modelValue"])])):(0,p.kq)("",!0),Qe,(0,p.Wm)(Pt,{name:"switch",label:"是否禁用注册"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Gn.value,"onUpdate:modelValue":l[58]||(l[58]=e=>Gn.value=e)},null,8,["modelValue"])])),_:1}),el,(0,p.Wm)(Pt,{name:"switch",label:"是否自动打码"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Qn.value,"onUpdate:modelValue":l[59]||(l[59]=e=>Qn.value=e)},null,8,["modelValue"])])),_:1}),ll,(0,p.Wm)(Pt,{name:"switch",label:"使用文件代理服务"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:et.value,"onUpdate:modelValue":l[60]||(l[60]=e=>et.value=e)},null,8,["modelValue"])])),_:1}),al,(0,p.Wm)(Pt,{modelValue:Xn.value,"onUpdate:modelValue":l[61]||(l[61]=e=>Xn.value=e),name:"代理服务URL",label:"代理服务URL",placeholder:"代理服务URL(选填)"},null,8,["modelValue"]),ol,(0,p.Wm)(Pt,{modelValue:vt.value,"onUpdate:modelValue":l[62]||(l[62]=e=>vt.value=e),name:"白名单",label:"白名单",placeholder:"[]限制所有账号(默认为null)"},null,8,["modelValue"]),nl])),_:1}),(0,p._)("div",tl,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),ul])),_:1},8,["show"]),(0,p.Wm)(Au,{show:xn.value,"onUpdate:show":l[76]||(l[76]=e=>xn.value=e),title:"tokensTool设置信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",il,[(0,p.Wm)(Hu,{onSubmit:l[75]||(l[75]=e=>Vi(cn))},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[rl,(0,p.Wm)(Pt,{modelValue:it.value,"onUpdate:modelValue":l[65]||(l[65]=e=>it.value=e),name:"登录用户名",label:"登录用户名",placeholder:"tokensTool用户名"},null,8,["modelValue"]),sl,(0,p.Wm)(Pt,{modelValue:rt.value,"onUpdate:modelValue":l[66]||(l[66]=e=>rt.value=e),name:"登录密码",label:"登录密码",placeholder:"不少于8位,且同时包含数字和字母",rules:[{validator:jt}]},null,8,["modelValue","rules"]),dl,(0,p.Wm)(Pt,{modelValue:Kn.value,"onUpdate:modelValue":l[67]||(l[67]=e=>Kn.value=e),name:"proxy接口前缀",label:"proxy接口前缀",placeholder:"proxy模式接口后缀,不少于8位,且同时包含数字和字母",rules:[{validator:jt}]},null,8,["modelValue","rules"]),ml,(0,p.Wm)(Pt,{modelValue:pt.value,"onUpdate:modelValue":l[68]||(l[68]=e=>pt.value=e),name:"proxy模式URL",label:"proxy模式URL",placeholder:"http(s)://(ip:port或者域名)/后缀,同公网服务器填default"},null,8,["modelValue"]),cl,(0,p.Wm)(Pt,{modelValue:ut.value,"onUpdate:modelValue":l[69]||(l[69]=e=>ut.value=e),name:"重载服务密码",label:"重载服务密码",placeholder:"PandoraNext重载服务密码,不少于8位,且同时包含数字和字母",rules:[{validator:jt}]},null,8,["modelValue","rules"]),pl,(0,p.Wm)(Pt,{modelValue:tt.value,"onUpdate:modelValue":l[70]||(l[70]=e=>tt.value=e),name:"访问密码",label:"访问密码",placeholder:"PandoraNext访问密码,建议开启访问密码",rules:[{validator:Lt}]},null,8,["modelValue","rules"]),vl,(0,p.Wm)(Pt,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:st.value,"onUpdate:modelValue":l[71]||(l[71]=e=>st.value=e),name:"验证licenseId",label:"验证licenseId",placeholder:"验证licenseId(github上拿到的license_id)"},null,8,["modelValue"]),hl,(0,p.Wm)(Pt,{name:"switch",label:"tokensTool接口"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:dt.value,"onUpdate:modelValue":l[72]||(l[72]=e=>dt.value=e)},null,8,["modelValue"])])),_:1}),1==dt.value?((0,p.wg)(),(0,p.iD)("div",_l,[wl,(0,p.Wm)(Pt,{modelValue:mt.value,"onUpdate:modelValue":l[73]||(l[73]=e=>mt.value=e),name:"接口密码",label:"接口密码",placeholder:"tokensTool接口密码,用于获取tokens,不少于8位,且同时包含数字和字母",rules:[{validator:jt}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),kl,(0,p.Wm)(Pt,{modelValue:ct.value,"onUpdate:modelValue":l[74]||(l[74]=e=>ct.value=e),name:"监管容器名",label:"监管容器名",placeholder:"监管运行的容器名或文件名,默认为PandoraNext",rules:[{required:!0,message:"请填写监管的容器名"}]},null,8,["modelValue"]),gl])),_:1}),(0,p._)("div",fl,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),bl])),_:1},8,["show"]),(0,p.Wm)(Au,{show:Un.value,"onUpdate:show":l[85]||(l[85]=e=>Un.value=e),title:"PandoraNext验证信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",yl,[(0,p.Wm)(Hu,{onSubmit:l[84]||(l[84]=e=>Vi(pn))},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[Vl,(0,p.Wm)(Pt,{modelValue:ht.value,"onUpdate:modelValue":l[77]||(l[77]=e=>ht.value=e),name:"验证码提供商",label:"验证码提供商",placeholder:"验证码提供商"},null,8,["modelValue"]),Wl,(0,p.Wm)(Pt,{modelValue:_t.value,"onUpdate:modelValue":l[78]||(l[78]=e=>_t.value=e),name:"验证码网站参数",label:"验证码网站参数",placeholder:"验证码网站参数"},null,8,["modelValue"]),Tl,(0,p.Wm)(Pt,{modelValue:wt.value,"onUpdate:modelValue":l[79]||(l[79]=e=>wt.value=e),name:"验证码API Key",label:"验证码API Key",placeholder:"验证码API Key"},null,8,["modelValue"]),xl,(0,p.Wm)(Pt,{name:"switch",label:"是否全站密码登录页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:kt.value,"onUpdate:modelValue":l[80]||(l[80]=e=>kt.value=e)},null,8,["modelValue"])])),_:1}),Ul,(0,p.Wm)(Pt,{name:"switch",label:"是否在设置登录页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:gt.value,"onUpdate:modelValue":l[81]||(l[81]=e=>gt.value=e)},null,8,["modelValue"])])),_:1}),Hl,(0,p.Wm)(Pt,{name:"switch",label:"是否在输入用户名页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:ft.value,"onUpdate:modelValue":l[82]||(l[82]=e=>ft.value=e)},null,8,["modelValue"])])),_:1}),Al,(0,p.Wm)(Pt,{name:"switch",label:"是否在输入密码页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:bt.value,"onUpdate:modelValue":l[83]||(l[83]=e=>bt.value=e)},null,8,["modelValue"])])),_:1}),zl])),_:1}),(0,p._)("div",Pl,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Sl])),_:1},8,["show"]),(0,p.Wm)($u,{modelValue:Hn.value,"onUpdate:modelValue":l[89]||(l[89]=e=>Hn.value=e),title:"pool_token列表","align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Nl,[(0,p.Wm)(Nu,{onClick:l[86]||(l[86]=e=>Yi(Tt.value+Kn.value+"/v1/chat/completions"))},{default:(0,p.w5)((()=>[(0,p.Wm)(Su)])),_:1}),(0,p.Wm)(Ou,{style:{"white-space":"nowrap",overflow:"hidden","text-overflow":"ellipsis"}},{default:(0,p.w5)((()=>[(0,p.Uk)(" API地址:"+(0,v.zw)(Tt.value)+(0,v.zw)(Kn.value)+"/v1/chat/completions ",1)])),_:1})]),(0,p._)("div",Ol,[(0,p.Wm)((0,h.SU)(W.eI),{"row-class-name":Yu,data:tu.value,onSelectionChange:fn,ref_key:"multipleTableRefPool",ref:_n},{default:(0,p.w5)((()=>[(0,p.Wm)(y,{type:"selection",width:"45"}),(0,p.Wm)(y,{prop:"intoOneApi",label:"pool_token名称",sortable:"","min-width":"170","default-sort":{prop:"poolTime",prop:"intoOneApi"}},{default:(0,p.w5)((e=>[(0,p._)("div",Cl,[1==e.row.intoOneApi&&e.row.poolOneApi_models.includes("gpt-4")?((0,p.wg)(),(0,p.iD)("div",$l,[(0,p.Wm)(V,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[Il])),_:1})])):1==e.row.intoOneApi?((0,p.wg)(),(0,p.iD)("div",Bl,[(0,p.Wm)(V,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[Dl])),_:1})])):((0,p.wg)(),(0,p.iD)("div",ql,[(0,p.Wm)(V,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[jl])),_:1})])),(0,p._)("span",Ll,(0,v.zw)(e.row.poolName),1)])])),_:1}),(0,p.Wm)(y,{label:"pool_token值","min-width":"235"},{default:(0,p.w5)((e=>[(0,p._)("div",Ml,[(0,p.Wm)(Nu,{onClick:l=>Yi(e.row.poolToken)},{default:(0,p.w5)((()=>[(0,p.Wm)(Su)])),_:2},1032,["onClick"]),(0,p._)("span",Zl,(0,v.zw)(e.row.poolToken),1)])])),_:1}),(0,p.Wm)(y,{label:"使用token名集合","min-width":"165"},{default:(0,p.w5)((e=>[(0,p.Wm)(wn,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(e.row.shareTokens),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(T,null,{default:(0,p.w5)((()=>[Jl])),_:1})])),_:2},1024)])),_:1}),(0,p.Wm)(y,{property:"poolTime",label:"更新时间",prop:"poolTime",sortable:"","min-width":"180"}),(0,p.Wm)(y,{label:"操作方法","min-width":"355"},{default:(0,p.w5)((e=>[(0,p.Wm)(V,{size:"small",onClick:l=>Fi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"warning",onClick:l=>ji(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("检验")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"danger",onClick:l=>qi(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"success",onClick:l=>Ci(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("刷新")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"primary",onClick:l=>Di(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("更换")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])]),(0,p._)("div",Kl,[(0,p.Wm)(Cu,{class:"pool-button"},{default:(0,p.w5)((()=>[(0,p.Wm)(bn,{modelValue:Zn.value,"onUpdate:modelValue":l[87]||(l[87]=e=>Zn.value=e),filterable:"",clearable:"",placeholder:"请选择批量操作"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Jn,(e=>(0,p.Wm)(kn,{key:e.buttonPoolValue,label:e.label,value:e.buttonPoolValue},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),(0,p.Wm)(V,{onClick:l[88]||(l[88]=e=>Gi(Zn.value))},{default:(0,p.w5)((()=>[El])),_:1})])),_:1})]),Rl])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:An.value,"onUpdate:modelValue":l[93]||(l[93]=e=>An.value=e),title:"PandoraNext余额","align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Yl,[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[Xl,(0,p.Wm)(Pt,{modelValue:Eu.value,"onUpdate:modelValue":l[90]||(l[90]=e=>Eu.value=e),name:"PandoraNext用量",label:"PandoraNext用量",placeholder:"PandoraNext用量"},null,8,["modelValue"]),Fl,(0,p.Wm)(Pt,{modelValue:zi.value,"onUpdate:modelValue":l[91]||(l[91]=e=>zi.value=e),name:"绑定IP",label:"绑定IP",placeholder:"绑定IP"},null,8,["modelValue"]),Gl,(0,p.Wm)(Pt,{modelValue:Pi.value,"onUpdate:modelValue":l[92]||(l[92]=e=>Pi.value=e),name:"重置时间",label:"重置时间",placeholder:"重置时间"},null,8,["modelValue"]),Ql])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(Au,{show:zn.value,"onUpdate:show":l[101]||(l[101]=e=>zn.value=e),title:"定时刷新&PandoraNext网址","align-center":"",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",ea,[(0,p.Wm)(Hu,{onSubmit:l[100]||(l[100]=e=>Wi())},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[la,(0,p.Wm)(Pt,{name:"switch",label:"是否自动刷新session_token"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:yt.value,"onUpdate:modelValue":l[94]||(l[94]=e=>yt.value=e)},null,8,["modelValue"])])),_:1}),1==yt.value?((0,p.wg)(),(0,p.iD)("div",aa,[oa,(0,p.Wm)(Pt,{modelValue:Vt.value,"onUpdate:modelValue":l[95]||(l[95]=e=>Vt.value=e),name:"自动刷新session的间隔天数",label:"自动刷新session的间隔天数","input-align":"right",placeholder:"自动刷新session的时间 (天为单位)"},null,8,["modelValue"]),na,(0,p.Wm)(Pt,{modelValue:Wt.value,"onUpdate:modelValue":l[96]||(l[96]=e=>Wt.value=e),name:"自动刷新session的个数",label:"自动刷新session的个数","input-align":"right",placeholder:"自动刷新session的个数 (个)"},null,8,["modelValue"])])):(0,p.kq)("",!0),ta,(0,p.Wm)(Pt,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:Tt.value,"onUpdate:modelValue":l[97]||(l[97]=e=>Tt.value=e),name:"PandoraNext的公网访问地址",label:"PandoraNext的公网访问地址",placeholder:"PandoraNext的公网访问地址"},null,8,["modelValue"]),ua,(0,p.Wm)(Pt,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:xt.value,"onUpdate:modelValue":l[98]||(l[98]=e=>xt.value=e),name:"oneApi的公网访问地址",label:"oneApi的公网访问地址","input-align":"right",placeholder:"oneApi的公网访问地址"},null,8,["modelValue"]),ia,(0,p.Wm)(Pt,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:Ut.value,"onUpdate:modelValue":l[99]||(l[99]=e=>Ut.value=e),name:"oneApi的系统令牌",label:"oneApi的系统令牌","input-align":"right",placeholder:"oneApi的系统令牌"},null,8,["modelValue"]),ra])),_:1}),(0,p._)("div",sa,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),da])),_:1},8,["show"]),(0,p.Wm)(Au,{show:Pn.value,"onUpdate:show":l[109]||(l[109]=e=>Pn.value=e),title:"✨添加pool_token信息",width:"95vw","align-center":"","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",ma,[(0,p.Wm)(Hu,{onSubmit:ju},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[(0,p.Wm)(Pt,{modelValue:St.value,"onUpdate:modelValue":l[102]||(l[102]=e=>St.value=e),name:"pool_token名",label:"pool_token名","input-align":"right",placeholder:"3到10个字符",rules:[{validator:Mt}]},null,8,["modelValue","rules"]),ca,(0,p.Wm)(Pt,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Nt.value,"onUpdate:modelValue":l[103]||(l[103]=e=>Nt.value=e)},null,8,["modelValue"])])),_:1}),1==Nt.value?((0,p.wg)(),(0,p.iD)("div",pa,[va,(0,p.Wm)(Pt,{modelValue:Dt.value,"onUpdate:modelValue":l[104]||(l[104]=e=>Dt.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)"},null,8,["modelValue"]),(0,p._)("div",ha,[_a,wa,(0,p.Wm)(Iu,{label:"选择模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(bn,{modelValue:$t.value,"onUpdate:modelValue":l[105]||(l[105]=e=>$t.value=e),multiple:"",filterable:"","allow-create":"",placeholder:"填写或选择模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Mn,(e=>(0,p.Wm)(kn,{key:e.buttonPoolModel,label:e.label,value:e.buttonPoolModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),ka,(0,p.Wm)(Iu,{label:"重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:It.value,"onUpdate:modelValue":l[106]||(l[106]=e=>It.value=e),type:"textarea",autosize:{maxHeight:100,minHeight:20},placeholder:dn,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),ga,(0,p.Wm)(Pt,{name:"checkboxGroup",label:"在one-api的组别","input-align":"right"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:hn.value,"onUpdate:modelValue":l[107]||(l[107]=e=>hn.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",fa,[(0,p.Wm)(Du,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",ba,[(0,p.Wm)(Du,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),ya,(0,p.Wm)(Pt,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:Bt.value,"onUpdate:modelValue":l[108]||(l[108]=e=>Bt.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right",placeholder:"自定义PandoraNext地址"},null,8,["modelValue"]),Va])):(0,p.kq)("",!0)])),_:1}),(0,p._)("div",Wa,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Ta])),_:1},8,["show"]),(0,p.Wm)($u,{modelValue:Sn.value,"onUpdate:modelValue":l[110]||(l[110]=e=>Sn.value=e),title:"tokensTool登录日志","align-center":"",width:"90%","close-on-click-modal":!1,class:"showLoginDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",xa,[(0,p.Wm)((0,h.SU)(W.eI),{"row-class-name":Yu,data:iu.value},{default:(0,p.w5)((()=>[(0,p.Wm)(y,{prop:"ipAddress",label:"登录地区","min-width":"160"},{default:(0,p.w5)((e=>[(0,p._)("div",Ua,[(0,p._)("span",Ha,(0,v.zw)(e.row.ipAddress),1)])])),_:1}),(0,p.Wm)(y,{label:"登录IP","min-width":"155"},{default:(0,p.w5)((e=>[(0,p._)("div",Aa,[(0,p.Wm)(Nu,{onClick:l=>Yi(e.row.poolToken)},{default:(0,p.w5)((()=>[(0,p.Wm)(Su)])),_:2},1032,["onClick"]),(0,p._)("span",za,(0,v.zw)(e.row.requestIp),1)])])),_:1}),(0,p.Wm)(y,{label:"成功/失败","min-width":"105"},{default:(0,p.w5)((e=>[(0,p._)("div",Pa,[(0,p._)("span",Sa,(0,v.zw)(e.row.inRequestNumber)+"/"+(0,v.zw)(e.row.outRequestNumber),1)])])),_:1}),(0,p.Wm)(y,{property:"lastLoginTime",label:"登录时间",prop:"lastLoginTime","min-width":"180"})])),_:1},8,["data"])]),Na])),_:1},8,["modelValue"]),(0,p.Wm)(Au,{show:Nn.value,"onUpdate:show":l[119]||(l[119]=e=>Nn.value=e),title:"📌修改pool_token信息",width:"95vw","align-center":"","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Oa,[(0,p.Wm)(Hu,{onSubmit:Ju},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[Ca,(0,p._)("div",$a,[(0,p.Wm)(Iu,{label:"poolToken名"},{default:(0,p.w5)((()=>[(0,p.Wm)(bn,{modelValue:Ht.value,"onUpdate:modelValue":l[111]||(l[111]=e=>Ht.value=e),filterable:"",clearable:"",placeholder:"选择要修改的pool名",onChange:Lu,class:"selectPool_token"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(tu.value,(e=>((0,p.wg)(),(0,p.j4)(kn,{key:e.poolName,label:e.poolName,value:e.poolName,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),Ia,(0,p.Wm)(Pt,{modelValue:qt.value,"onUpdate:modelValue":l[112]||(l[112]=e=>qt.value=e),type:"textarea",autosize:{maxHeight:100,minHeight:20},name:"pool_token的值",label:"pool_token的值","input-align":"right",placeholder:"pool_token的值(不改则不变)"},null,8,["modelValue"]),Ba,(0,p.Wm)(Pt,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Nt.value,"onUpdate:modelValue":l[113]||(l[113]=e=>Nt.value=e)},null,8,["modelValue"])])),_:1}),Da,1==Nt.value?((0,p.wg)(),(0,p.iD)("div",qa,[ja,(0,p._)("div",La,[(0,p.Wm)(Iu,{label:"选择模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(bn,{modelValue:Ct.value,"onUpdate:modelValue":l[114]||(l[114]=e=>Ct.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"填写或选择模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Mn,(e=>(0,p.Wm)(kn,{key:e.buttonPoolModel,label:e.label,value:e.buttonPoolModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),Ma,(0,p.Wm)(Iu,{label:"重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:Ot.value,"onUpdate:modelValue":l[115]||(l[115]=e=>Ot.value=e),type:"textarea",autosize:{maxHeight:100,minHeight:20},placeholder:dn,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),Za,(0,p.Wm)(Pt,{modelValue:Dt.value,"onUpdate:modelValue":l[116]||(l[116]=e=>Dt.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),Ja,(0,p.Wm)(Pt,{name:"checkboxGroup",label:"在one-api的组别","input-align":"right"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:vn.value,"onUpdate:modelValue":l[117]||(l[117]=e=>vn.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",Ka,[(0,p.Wm)(Du,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",Ea,[(0,p.Wm)(Du,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),Ra,(0,p.Wm)(Pt,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:Bt.value,"onUpdate:modelValue":l[118]||(l[118]=e=>Bt.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right",placeholder:"自定义PandoraNext地址",rules:[{required:!0,message:"请填写自定义PandoraNext地址"}]},null,8,["modelValue"]),Ya])):(0,p.kq)("",!0)])),_:1}),(0,p._)("div",Xa,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Fa])),_:1},8,["show"]),(0,p.Wm)($u,{modelValue:On.value,"onUpdate:modelValue":l[120]||(l[120]=e=>On.value=e),"align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",{ref_key:"chart",ref:Qi,style:{width:"auto",height:"350px"}},null,512)])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:Cn.value,"onUpdate:modelValue":l[124]||(l[124]=e=>Cn.value=e),title:"OneAPI里的share_token列表","align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p.Wm)(b,{modelValue:xu.value,"onUpdate:modelValue":l[122]||(l[122]=e=>xu.value=e),"show-action":"",clearable:"",shape:"round",placeholder:"请输入搜索share_token名称",onSearch:l[123]||(l[123]=e=>Pu(xu.value)),class:"onShareToken"},{action:(0,p.w5)((()=>[(0,p.Wm)(V,{onClick:l[121]||(l[121]=e=>$n.value=!0)},{default:(0,p.w5)((()=>[Ga])),_:1})])),_:1},8,["modelValue"]),(0,p._)("div",Qa,[(0,p.Wm)((0,h.SU)(W.eI),{data:uu.value,"row-class-name":Yu},{default:(0,p.w5)((()=>[(0,p.Wm)(y,{label:"在OneAPI的名称",prop:"oneApi_name",width:"180"},{default:(0,p.w5)((e=>[(0,p._)("div",eo,[(0,p._)("span",lo,(0,v.zw)(e.row.oneApi_name),1)])])),_:1}),(0,p.Wm)(y,{label:"来源Token名","min-width":"135"},{default:(0,p.w5)((e=>[(0,p._)("div",ao,[(0,p._)("span",oo,(0,v.zw)(e.row.token_name),1)])])),_:1}),(0,p.Wm)(y,{label:"share_token值","min-width":"355"},{default:(0,p.w5)((e=>[(0,p._)("div",no,[(0,p.Wm)(Nu,{onClick:l=>Yi(e.row.token_value)},{default:(0,p.w5)((()=>[(0,p.Wm)(Su)])),_:2},1032,["onClick"]),(0,p._)("span",to,(0,v.zw)(e.row.token_value),1)])])),_:1}),(0,p.Wm)(y,{property:"shareTime",label:"更新时间",prop:"shareTime","min-width":"170"}),(0,p.Wm)(y,{label:"操作方法","min-width":"235"},{default:(0,p.w5)((e=>[(0,p.Wm)(V,{size:"small",onClick:l=>wi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"primary",onClick:l=>$i(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("修改")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"danger",onClick:l=>Mi(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])]),uo])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:$n.value,"onUpdate:modelValue":l[132]||(l[132]=e=>$n.value=e),title:"添加shareToken进one_api","align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",io,[(0,p.Wm)(Hu,{onSubmit:Ku},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:"",class:"groupCell"},{default:(0,p.w5)((()=>[ro,(0,p.Wm)(Pt,{modelValue:ku.value,"onUpdate:modelValue":l[125]||(l[125]=e=>ku.value=e),name:"oneApi中渠道名称",label:"oneApi中渠道名称","input-align":"right",placeholder:"oneApi中渠道名称",rules:[{required:!0,message:"请填写oneApi中渠道名称"}]},null,8,["modelValue"]),so,(0,p._)("div",mo,[(0,p.Wm)(Iu,{label:"Token名","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(bn,{modelValue:gu.value,"onUpdate:modelValue":l[126]||(l[126]=e=>gu.value=e),filterable:"",clearable:"",placeholder:"选择要添加的Token名",onChange:Mu,class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Zu.value,(e=>((0,p.wg)(),(0,p.j4)(kn,{key:e.name,label:e.name,value:e.name,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),co,(0,p._)("div",po,[(0,p.Wm)(Iu,{label:"选择模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(bn,{modelValue:bu.value,"onUpdate:modelValue":l[127]||(l[127]=e=>bu.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"填写或选择模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Ln,(e=>(0,p.Wm)(kn,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),vo,(0,p.Wm)(Iu,{label:"重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:yu.value,"onUpdate:modelValue":l[128]||(l[128]=e=>yu.value=e),type:"textarea",rows:10,placeholder:dn,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),ho,(0,p.Wm)(Pt,{modelValue:Wu.value,"onUpdate:modelValue":l[129]||(l[129]=e=>Wu.value=e),name:"渠道优先级",label:"渠道优先级",placeholder:"渠道优先级(默认为0)","input-align":"center",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),_o,(0,p.Wm)(Pt,{"input-align":"right",name:"addOneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:Vu.value,"onUpdate:modelValue":l[130]||(l[130]=e=>Vu.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",wo,[(0,p.Wm)(Du,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",ko,[(0,p.Wm)(Du,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),go,(0,p.Wm)(Pt,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:fu.value,"onUpdate:modelValue":l[131]||(l[131]=e=>fu.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),fo])),_:1}),(0,p._)("div",bo,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:In.value,"onUpdate:modelValue":l[149]||(l[149]=e=>In.value=e),title:"🔎查看share_token在OneAPI信息","align-center":"",width:"95vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",yo,[(0,p.Wm)(Hu,{onSubmit:e.shareToken},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:"",class:"groupCell"},{default:(0,p.w5)((()=>[Vo,(0,p.Wm)(Pt,{modelValue:ii.value,"onUpdate:modelValue":l[133]||(l[133]=e=>ii.value=e),name:"OneAPI中渠道名称",label:"OneAPI中渠道名称",placeholder:"OneAPI中渠道名称","left-icon":"description-o",readonly:!0,"input-align":"right",onClickLeftIcon:l[134]||(l[134]=e=>Yi(ii.value)),rules:[{required:!0,message:"请填写OneAPI中渠道名称"}]},null,8,["modelValue"]),Wo,(0,p.Wm)(Pt,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:si.value,"onUpdate:modelValue":l[135]||(l[135]=e=>si.value=e),name:"share_token的值",label:"share_token的值","input-align":"right",placeholder:"share_token的值","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[136]||(l[136]=e=>Yi(si.value))},null,8,["modelValue"]),To,(0,p.Wm)(Pt,{modelValue:ri.value,"onUpdate:modelValue":l[137]||(l[137]=e=>ri.value=e),name:"share_token的来源",label:"share_token的来源","input-align":"right",placeholder:"share_token的值","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[138]||(l[138]=e=>Yi(ri.value))},null,8,["modelValue"]),xo,(0,p.Wm)(Pt,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:pi.value,"onUpdate:modelValue":l[139]||(l[139]=e=>pi.value=e),name:"模型",label:"模型","input-align":"right",placeholder:"加入的模型","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[140]||(l[140]=e=>Yi(pi.value))},null,8,["modelValue"]),(0,p._)("div",Uo,[Ho,(0,p.Wm)(Iu,{readonly:!0,type:"textarea",label:"🧩重定向",autosize:"",prop:"addModel_mapping",class:"model_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:ci.value,"onUpdate:modelValue":l[141]||(l[141]=e=>ci.value=e),type:"textarea",autosize:"",disabled:"",placeholder:dn,onClickLeftIcon:l[142]||(l[142]=e=>Yi(ci.value))},null,8,["modelValue"])])),_:1})]),Ao,(0,p.Wm)(Pt,{modelValue:Dt.value,"onUpdate:modelValue":l[143]||(l[143]=e=>Dt.value=e),name:"渠道优先级",label:"渠道优先级",placeholder:"渠道优先级(默认为0)","left-icon":"description-o",readonly:!0,"input-align":"right",onClickLeftIcon:l[144]||(l[144]=e=>Yi(Dt.value)),rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),zo,(0,p.Wm)(Pt,{type:"textarea",autoSize:"",modelValue:vi.value,"onUpdate:modelValue":l[145]||(l[145]=e=>vi.value=e),name:"加入的组别",label:"加入的组别","input-align":"right",placeholder:"加入的组别","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[146]||(l[146]=e=>Yi(vi.value))},null,8,["modelValue"]),Po,(0,p.Wm)(Pt,{type:"textarea",autoSize:"",modelValue:di.value,"onUpdate:modelValue":l[147]||(l[147]=e=>di.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[148]||(l[148]=e=>Yi(di.value)),rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),So])),_:1})])),_:1},8,["onSubmit"])])])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:Bn.value,"onUpdate:modelValue":l[156]||(l[156]=e=>Bn.value=e),title:"📌修改share_token的信息","align-center":"",width:"95vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",No,[(0,p.Wm)(Hu,{onSubmit:Ii},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:"",class:"groupCell"},{default:(0,p.w5)((()=>[Oo,(0,p._)("div",Co,[(0,p.Wm)(Iu,{label:"Token名","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(bn,{modelValue:ri.value,"onUpdate:modelValue":l[150]||(l[150]=e=>ri.value=e),filterable:"",clearable:"",placeholder:"选择添加的Token名称",onChange:Mu,class:"selectPool_token"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Zu.value,(e=>((0,p.wg)(),(0,p.j4)(kn,{key:e.name,label:e.name,value:e.name,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),$o,(0,p._)("div",Io,[(0,p.Wm)(Iu,{label:"选择模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(bn,{modelValue:mi.value,"onUpdate:modelValue":l[151]||(l[151]=e=>mi.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"填写或选择模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Ln,(e=>(0,p.Wm)(kn,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),Bo,(0,p.Wm)(Iu,{label:"重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:ci.value,"onUpdate:modelValue":l[152]||(l[152]=e=>ci.value=e),"label-position":"top",type:"textarea",rows:10,placeholder:dn,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),Do,(0,p.Wm)(Pt,{modelValue:Dt.value,"onUpdate:modelValue":l[153]||(l[153]=e=>Dt.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),qo,(0,p.Wm)(Pt,{"input-align":"right",name:"oneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:hi.value,"onUpdate:modelValue":l[154]||(l[154]=e=>hi.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",jo,[(0,p.Wm)(Du,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",Lo,[(0,p.Wm)(Du,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),Mo,(0,p.Wm)(Pt,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:di.value,"onUpdate:modelValue":l[155]||(l[155]=e=>di.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),Zo])),_:1}),(0,p._)("div",Jo,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:Dn.value,"onUpdate:modelValue":l[170]||(l[170]=e=>Dn.value=e),title:"🔎查看pool_token的信息","align-center":"",width:"95vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Ko,[(0,p.Wm)(Hu,null,{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:"",class:"groupCell"},{default:(0,p.w5)((()=>[Eo,(0,p.Wm)(Pt,{modelValue:At.value,"onUpdate:modelValue":l[157]||(l[157]=e=>At.value=e),name:"pool_token名称",label:"pool_token名称",placeholder:"pool_token名称",readonly:!0,"left-icon":"description-o",onClickLeftIcon:l[158]||(l[158]=e=>Yi(At.value)),"input-align":"right"},null,8,["modelValue"]),Ro,(0,p.Wm)(Pt,{modelValue:zt.value,"onUpdate:modelValue":l[159]||(l[159]=e=>zt.value=e),label:"使用token名集合",type:"textarea",placeholder:"使用token名集合","left-icon":"description-o",readonly:!0,"input-align":"right",onClickLeftIcon:l[160]||(l[160]=e=>Yi(Et.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"]),Yo,(0,p.Wm)(Pt,{modelValue:qt.value,"onUpdate:modelValue":l[161]||(l[161]=e=>qt.value=e),readonly:!0,type:"textarea",autosize:{maxHeight:100,minHeight:20},name:"pool_token的值",label:"pool_token的值","input-align":"right","left-icon":"description-o",onClickLeftIcon:l[162]||(l[162]=e=>Yi(qt.value)),placeholder:"pool_token的值(不改则不变)"},null,8,["modelValue"]),Xo,(0,p.Wm)(Pt,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Nt.value,"onUpdate:modelValue":l[163]||(l[163]=e=>Nt.value=e)},null,8,["modelValue"])])),_:1}),Fo,1==Nt.value?((0,p.wg)(),(0,p.iD)("div",Go,[Qo,(0,p._)("div",en,[(0,p.Wm)(Iu,{disabled:"",label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(bn,{disabled:"",modelValue:Ct.value,"onUpdate:modelValue":l[164]||(l[164]=e=>Ct.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Mn,(e=>(0,p.Wm)(kn,{key:e.buttonPoolModel,label:e.label,value:e.buttonPoolModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),ln])),_:1}),an,(0,p.Wm)(Iu,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:Ot.value,"onUpdate:modelValue":l[165]||(l[165]=e=>Ot.value=e),type:"textarea",disabled:"",filterable:"",autosize:"",placeholder:dn,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),on,(0,p.Wm)(Pt,{readonly:!0,modelValue:Dt.value,"onUpdate:modelValue":l[166]||(l[166]=e=>Dt.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),nn,(0,p.Wm)(Pt,{"input-align":"right",name:"oneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:vn.value,"onUpdate:modelValue":l[167]||(l[167]=e=>vn.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",tn,[(0,p.Wm)(Du,{name:"default",disabled:"","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",un,[(0,p.Wm)(Du,{name:"vip",disabled:"","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip",disabled:"","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),rn,(0,p.Wm)(Pt,{readonly:!0,type:"textarea",autoSize:"",modelValue:Bt.value,"onUpdate:modelValue":l[168]||(l[168]=e=>Bt.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right","left-icon":"description-o",onClickLeftIcon:l[169]||(l[169]=e=>Yi(Bt.value)),placeholder:"自定义PandoraNext地址",rules:[{required:!0,message:"请填写自定义PandoraNext地址"}]},null,8,["modelValue"]),sn])):(0,p.kq)("",!0)])),_:1})])),_:1})])])),_:1},8,["modelValue"])],64)}}});const hn=vn;var _n=hn}}]);
+//# sourceMappingURL=666.e7a6709e.js.map
\ No newline at end of file
diff --git a/rearServer/src/main/resources/static/js/666.e7a6709e.js.map b/rearServer/src/main/resources/static/js/666.e7a6709e.js.map
new file mode 100644
index 0000000..df92bc1
--- /dev/null
+++ b/rearServer/src/main/resources/static/js/666.e7a6709e.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"js/666.e7a6709e.js","mappings":"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","sources":["webpack://PandoraNext-TokensTool/./src/views/homeIphone.vue","webpack://PandoraNext-TokensTool/./src/views/homeIphone.vue?1abb"],"sourcesContent":["import \"core-js/modules/es.array.push.js\";\nimport { defineComponent as _defineComponent } from 'vue';\nimport { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, resolveComponent as _resolveComponent, createVNode as _createVNode, withCtx as _withCtx, createTextVNode as _createTextVNode, unref as _unref, resolveDirective as _resolveDirective, openBlock as _openBlock, createBlock as _createBlock, withDirectives as _withDirectives, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode } from \"vue\";\nimport _imports_0 from '../asserts/openAi.jpg';\nconst _hoisted_1 = {\n class: \"content\"\n};\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"meta\", {\n name: \"viewport\",\n content: \"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no\"\n}, null, -1);\nconst _hoisted_3 = /*#__PURE__*/_createElementVNode(\"img\", {\n style: {\n \"width\": \"25px\"\n },\n src: _imports_0\n}, null, -1);\nconst _hoisted_4 = {\n class: \"home-container\"\n};\nconst _hoisted_5 = /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"flex-grow\"\n}, null, -1);\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://ai.fakeopen.com/auth\"\n}, \"PandoraNext地址\", -1);\nconst _hoisted_7 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://chat.openai.com/api/auth/session\"\n}, \"OpenAI官网\", -1);\nconst _hoisted_8 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://github.com/Yanyutin753/PandoraNext-TokensTool\"\n}, \"TokensTool地址\", -1);\nconst _hoisted_9 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_10 = /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"flex items-center\"\n}, [/*#__PURE__*/_createElementVNode(\"span\", {\n class: \"font-h4\"\n}, \"PandoraNext-TokensTool \"), /*#__PURE__*/_createElementVNode(\"span\", {\n class: \"font-h4-tag\"\n}, \"v0.6.8 \")], -1);\nconst _hoisted_11 = {\n class: \"under\"\n};\nconst _hoisted_12 = {\n class: \"search\"\n};\nconst _hoisted_13 = {\n style: {\n \"display\": \"flex\",\n \"margin\": \"0px 0px -20px 0px\"\n }\n};\nconst _hoisted_14 = {\n style: {\n \"display\": \"flex\",\n \"width\": \"88vw\",\n \"height\": \"63vh\",\n \"transform\": \"translateX(0vw)\"\n }\n};\nconst _hoisted_15 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_16 = {\n style: {\n \"margin-left\": \"15px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_17 = {\n style: {\n \"margin-left\": \"15px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_18 = {\n style: {\n \"margin\": \"13px\",\n \"transform\": \"translateX(7px)\"\n }\n};\nconst _hoisted_19 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"批量操作\", -1);\nconst _hoisted_20 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_21 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_22 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_23 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_24 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_25 = {\n key: 0\n};\nconst _hoisted_26 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_27 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_28 = {\n key: 0\n};\nconst _hoisted_29 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_30 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_31 = {\n key: 1\n};\nconst _hoisted_32 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_33 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_34 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_35 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_36 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_37 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_38 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_39 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_40 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_41 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_42 = {\n key: 0\n};\nconst _hoisted_43 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_44 = {\n key: 1\n};\nconst _hoisted_45 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_46 = {\n key: 0\n};\nconst _hoisted_47 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_48 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_49 = {\n key: 2\n};\nconst _hoisted_50 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_51 = {\n key: 3\n};\nconst _hoisted_52 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_53 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_54 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_55 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_56 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_57 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_58 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_59 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_60 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_61 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_62 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_63 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_64 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_65 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_66 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_67 = {\n key: 0\n};\nconst _hoisted_68 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_69 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_70 = {\n key: 0\n};\nconst _hoisted_71 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_72 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_73 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_74 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_75 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_76 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_77 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_78 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_79 = {\n key: 0\n};\nconst _hoisted_80 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_81 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_82 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_83 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_84 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_85 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_86 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_87 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_88 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_89 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_90 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_91 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_92 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_93 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_94 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_95 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_96 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_97 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_98 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_99 = {\n key: 0\n};\nconst _hoisted_100 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_101 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_102 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_103 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_104 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_105 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_106 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_107 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_108 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_109 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_110 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_111 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_112 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_113 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_114 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_115 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_116 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(0vw, -2vh)\"\n }\n};\nconst _hoisted_117 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(calc(-2.5% - 20px), 0vh)\",\n \"width\": \"calc(102.5% + 40px)\"\n }\n};\nconst _hoisted_118 = {\n style: {\n \"margin-left\": \"10px\",\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_119 = {\n key: 0\n};\nconst _hoisted_120 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"oneApi4\", -1);\nconst _hoisted_121 = {\n key: 1\n};\nconst _hoisted_122 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"oneApi3\", -1);\nconst _hoisted_123 = {\n key: 2\n};\nconst _hoisted_124 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"Json\", -1);\nconst _hoisted_125 = {\n style: {\n \"margin-left\": \"20px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_126 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_127 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_128 = /*#__PURE__*/_createElementVNode(\"span\", {\n style: {\n \"margin-left\": \"0px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n}, \"点击此进行查看\", -1);\nconst _hoisted_129 = {\n style: {\n \"margin\": \"10px 0px 10px 0px\"\n }\n};\nconst _hoisted_130 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"批量操作\", -1);\nconst _hoisted_131 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_132 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_133 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_134 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_135 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_136 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_137 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_138 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_139 = {\n key: 0\n};\nconst _hoisted_140 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_141 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_142 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_143 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_144 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_145 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_146 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_147 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_148 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_149 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_150 = {\n key: 0\n};\nconst _hoisted_151 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_152 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_153 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_154 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_155 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_156 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_157 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_158 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_159 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_160 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_161 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_162 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_163 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(calc(-2.5% - 20px), 0vh)\",\n \"width\": \"calc(100% + 2.5% + 40px)\"\n }\n};\nconst _hoisted_164 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_165 = {\n style: {\n \"margin-left\": \"0px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_166 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_167 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_168 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_169 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_170 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_171 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_172 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_173 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_174 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_175 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_176 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_177 = {\n key: 0\n};\nconst _hoisted_178 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_179 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_180 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_181 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_182 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_183 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_184 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_185 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_186 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_187 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_188 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_189 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"添加到OneAPI\", -1);\nconst _hoisted_190 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(calc(-2.5% - 20px), 0vh)\",\n \"width\": \"calc(102.5% + 40px)\"\n }\n};\nconst _hoisted_191 = {\n style: {\n \"margin-left\": \"15px\",\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_192 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_193 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_194 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_195 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_196 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_197 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_198 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_199 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_200 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_201 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_202 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_203 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_204 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_205 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_206 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_207 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_208 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_209 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_210 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_211 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_212 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_213 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_214 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_215 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_216 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_217 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_218 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_219 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_220 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_221 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_222 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_223 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_224 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_225 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_226 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_227 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_228 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_229 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_230 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_231 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_232 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_233 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_234 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_235 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_236 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_237 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_238 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_239 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_240 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_241 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_242 = {\n key: 0\n};\nconst _hoisted_243 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_244 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_245 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_246 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_247 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_248 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_249 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_250 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_251 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_252 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nimport { ref, onMounted } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport axios from \"axios\";\nimport { ElMessage, ElMessageBox } from \"element-plus\";\nimport { differenceInDays, parseISO } from \"date-fns\";\nimport { ElLoading } from \"element-plus\";\nimport { ElTable } from \"element-plus\";\nimport * as echarts from \"echarts\";\nimport { computed } from \"vue\";\nconst temModel_mapping = `此项可选,用于修改请求体中的模型名称,\n 为一个 JSON 字符串,键为请求中模型名称,\n 值为要替换的模型名称,例如:\n {\n \"gpt-3.5-turbo-301\":\"gpt-3.5-turbo\",\n \"gpt-4-8314\":\"gpt-4\", \n \"gpt-4-32k-8314\":\"gpt-4-32k\",\n }`;\nconst pandoraNext = 0;\n//tokensTool 为 0\nconst tokensTool = 1;\n//验证信息\nconst validation = 2;\n/**\r\n * 修改系统设置信息\r\n */\nexport default /*#__PURE__*/_defineComponent({\n __name: 'homeIphone',\n setup(__props) {\n // 导入类\n const path = window.location.pathname; // 假设是 \"/api/getData\"\n const parts = path.split(\"/\"); // 分割路径,得到 [\"\", \"api\", \"getData\"]\n let prefix = \"\"; // 默认值为 \"\"\n if (parts.length >= 3) {\n prefix = \"/\" + parts[1]; // 如果parts长度大于或等于3,获取第一个部分\n }\n\n const temGroupChecked = ref([\"default\", \"svip\", \"vip\"]);\n const groupChecked = ref([\"default\", \"svip\", \"vip\"]);\n const multipleTableRef = ref();\n const multipleTableRefPool = ref();\n const multipleSelection = ref([]);\n const multipleSelectionPool = ref([]);\n const handleSelectionChange = val => {\n multipleSelection.value = val;\n };\n const poolSelectionChange = val => {\n multipleSelectionPool.value = val;\n };\n const size = ref(\"ALL\");\n //pandoraNext 为 0\n const router = useRouter();\n /**\r\n * \r\n * \r\n * \r\n *\r\n */\n const show = ref(false);\n const show_1 = ref(false);\n const show_2 = ref(false);\n const show_3 = ref(false);\n const show_4 = ref(false);\n const show_5 = ref(false);\n const show_6 = ref(false);\n const show_7 = ref(false);\n const show_8 = ref(false);\n const show_9 = ref(false);\n const show_10 = ref(false);\n const show_11 = ref(false);\n const show_12 = ref(false);\n const show_13 = ref(false);\n const show_14 = ref(false);\n const show_15 = ref(false);\n const show_16 = ref(false);\n const show_17 = ref(false);\n /**\r\n * 定义User类接口\r\n */\n const buttonValue = ref(\"\");\n const options = [{\n buttonValue: \"选中删除Token\",\n label: \"选中删除Token\"\n }, {\n buttonValue: \"选中刷新Token\",\n label: \"选中刷新Token\"\n }, {\n buttonValue: \"选中合成pool_token\",\n label: \"选中合成pool_token\"\n }, {\n buttonValue: \"选中修改pool_token\",\n label: \"选中修改pool_token\"\n }];\n const buttonModel = ref(\"\");\n const optionsModel = [{\n buttonModel: \"gpt-3.5-turbo\",\n label: \"gpt-3.5-turbo\"\n }, {\n buttonModel: \"gpt-4-s\",\n label: \"gpt-4-s\"\n }, {\n buttonModel: \"gpt-4-mobile\",\n label: \"gpt-4-mobile\"\n }, {\n buttonModel: \"gpt-4-vision\",\n label: \"gpt-4-vision\"\n }, {\n buttonModel: \"gpt-4-classic\",\n label: \"gpt-4-classic\"\n }, {\n buttonModel: \"gpt-4-vision-preview\",\n label: \"gpt-4-vision-preview\"\n }];\n const buttonPoolModel = ref(\"\");\n const optionsPoolModel = [{\n buttonPoolModel: \"gpt-3.5-turbo\",\n label: \"gpt-3.5-turbo\"\n }, {\n buttonPoolModel: \"gpt-4\",\n label: \"gpt-4\"\n }];\n const buttonPoolValue = ref(\"\");\n const optionsPool = [{\n buttonPoolValue: \"选中检查pool_token\",\n label: \"选中检查pool_token\"\n }, {\n buttonPoolValue: \"选中删除pool_token\",\n label: \"选中删除pool_token\"\n }, {\n buttonPoolValue: \"选中刷新pool_token\",\n label: \"选中刷新pool_token\"\n }, {\n buttonPoolValue: \"选中更换pool_token\",\n label: \"选中更换pool_token\"\n }];\n /**\r\n * 定义Pool类接口\r\n */\n const proxy_api_prefix = ref(\"\");\n const isolated_conv_title = ref(\"*\");\n const bing = ref(\"\");\n const timeout = ref(\"\");\n const proxy_url = ref(\"\");\n const public_share = ref(false);\n //0.4.9.2\n const disable_signup = ref(false);\n const auto_conv_arkose = ref(false);\n const proxy_file_service = ref(false);\n const custom_doh_host = ref(\"\");\n const enabled = ref(false);\n const cert_file = ref(\"\");\n const key_file = ref(\"\");\n const site_password = ref(\"\");\n const setup_password = ref(\"\");\n const loginUsername = ref(\"\");\n const loginPassword = ref(\"\");\n const license_id = ref(\"\");\n //0.4.8.2\n const isGetToken = ref(false);\n const getTokenPassword = ref(\"\");\n const containerName = ref(\"PandoraNext\");\n const autoToken_url = ref(\"default\");\n const whitelist = ref(\"\");\n const provider = ref(\"\");\n const site_key = ref(\"\");\n const site_secret = ref(\"\");\n const site_login = ref(false);\n const setup_login = ref(false);\n const oai_username = ref(false);\n const oai_password = ref(false);\n //0.4.9.3\n const auto_updateSession = ref(false);\n const auto_updateTime = ref(5);\n const auto_updateNumber = ref(1);\n const pandoraNext_outUrl = ref(\"\");\n const oneAPi_outUrl = ref(\"\");\n const oneAPi_intoToken = ref(\"\");\n // 0.4.8\n const poolName = ref(\"\");\n const temPoolName = ref(\"\");\n const shareTokens = ref(\"\");\n const poolToken = ref(\"\");\n const poolTime = ref(\"\");\n const checkPool = ref(true);\n // 0.5.0\n //上传oneApi\n const poolNameValue = ref(\"\");\n const intoOneApi = ref(false);\n const poolModel_mapping = ref(\"\");\n const poolOneApi_models = ref([]);\n const addPoolOneApi_models = ref([]);\n const addPoolModel_mapping = ref(\"\");\n const oneApi_pandoraUrl = ref(pandoraNext_outUrl.value + proxy_api_prefix.value);\n const priority = ref(0);\n const temPool_token = ref(\"\");\n // 自定义校验函数,直接返回错误提示\n const customValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n const sitePasswordValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (regex.test(value) || value == \"\") {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n const poolNameValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^[\\u4e00-\\u9fa5a-zA-Z0-9]{3,10}$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字\";\n }\n };\n const addPasswordValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (addSetPoolToken.value == true || setPoolToken.value == true || regex.test(value)) {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n /**\r\n * 查看或者修改token信息参数\r\n */\n const temName = ref(\"\");\n const temToken = ref(\"\");\n const temAccessToken = ref(\"\");\n const temShareToken = ref(\"\");\n const temUsername = ref(\"\");\n const temUserPassword = ref(\"\");\n const temShared = ref(false);\n const temShow_user_info = ref(false);\n const temPlus = ref(false);\n const temPassword = ref(\"\");\n const setPoolToken = ref(false);\n const useRefreshToken = ref(false);\n const temCheckSession = ref(true);\n const tableData = ref([]);\n // 0.4.8\n const poolData = ref([]);\n const shareData = ref([]);\n // 0.5.9\n const loginData = ref([]);\n /**\r\n * 添加用户信息参数\r\n */\n const addName = ref(\"\");\n const addUsername = ref(\"\");\n const addUserPassword = ref(\"\");\n const addTokenValue = ref(\"\");\n const addShared = ref(false);\n const addShow_user_info = ref(false);\n const addPlus = ref(false);\n const addSetPoolToken = ref(false);\n const addUseRefreshToken = ref(false);\n const addPassword = ref(\"\");\n /**\r\n * 添加用户信息参数\r\n */\n const addOneApi_name = ref(\"\");\n const addToken_name = ref(\"\");\n const addToken_value = ref(\"\");\n const addOneApi_baseUrl = ref(\"\");\n const addOneApi_models = ref([]);\n const addModel_mapping = ref(\"\");\n const addOneApi_groups = ref([\"default\", \"svip\", \"vip\"]);\n const addPriority = ref(0);\n //Pandora的icon大小\n const iconSize = ref(window.innerHeight * 0.085);\n //搜索值\n const value = ref(\"\");\n const valuePool = ref(\"\");\n const valueShare = ref(\"\");\n /**\r\n * 用jwt令牌验证身份\r\n * 未通过者返回到/\r\n */\n const token = localStorage.getItem(\"jwtToken\"); // 从localStorage获取JWT令牌\n if (!token) {\n router.replace(`/`);\n }\n const headers = {\n Authorization: `Bearer ${token}`\n };\n /**\r\n * 用jwt令牌验证身份函数\r\n */\n const fetchLoginToken = async () => {\n axios.post(`${prefix}/api/loginToken?token=` + token).then(response => {\n if (response.data.code == 0) {\n console.error(response.data.data);\n router.replace(`/`);\n return;\n }\n }).catch(error => {\n console.error(\"请求loginToken接口失败\", error);\n router.replace(`/`);\n });\n };\n const onSearch = value => {\n if (value == \"Web\" || value == \"WEB\") {\n getWebToken(\"\");\n } else if (value == \"ALL\" || value == \"All\") {\n getToken(\"\");\n } else if (value.includes(\"API\")) {\n getAPIToken(\"\");\n } else {\n getToken(value);\n }\n };\n const onSearchShareToken = value => {\n getShare(value);\n };\n const onSearchPoolToken = value => {\n getPool(value);\n };\n /**\r\n * 获取数据操作,并把数据返回到tableData\r\n * 用于展示\r\n */\n const getToken = async value => {\n const response = await axios.get(`${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 将用户数据添加到tableData\n tableData.value = resUsers;\n }\n };\n const getAPIToken = async value => {\n const response = await axios.get(`${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 使用 filter 方法筛选出 setPoolToken 等于 true 的用户\n const filteredUsers = resUsers.filter(user => user.setPoolToken === true);\n // 将筛选后的用户数据添加到 tableData\n tableData.value = filteredUsers;\n }\n };\n const getWebToken = async value => {\n const response = await axios.get(`${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 使用 filter 方法筛选出 setPoolToken 等于 true 的用户\n const filteredUsers = resUsers.filter(user => user.setPoolToken === false);\n // 将筛选后的用户数据添加到 tableData\n tableData.value = filteredUsers;\n }\n };\n /**\r\n * 获取数据操作\r\n * 用于日志数据展示\r\n */\n const getLoginData = async () => {\n const response = await axios.get(`${prefix}/api/selectLogin`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resLogins = data_token.map(item => ({\n ipAddress: item.ipAddress,\n requestIp: item.requestIp,\n outRequestNumber: item.outRequestNumber,\n inRequestNumber: item.inRequestNumber,\n lastLoginTime: item.lastLoginTime\n }));\n // 将用户数据添加到tableData\n loginData.value = resLogins;\n }\n };\n const getPool = async value => {\n const responsePool = await axios.get(`${prefix}/api/selectPoolToken?name=${value}`, {\n headers\n });\n const pool_token = responsePool.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(pool_token)) {\n const resPools = pool_token.map(item => ({\n poolName: item.poolName,\n poolTime: item.poolTime,\n poolToken: item.poolToken,\n shareTokens: item.shareTokens,\n checkPool: item.checkPool,\n intoOneApi: item.intoOneApi,\n poolOneApi_models: item.poolOneApi_models,\n poolModel_mapping: item.poolModel_mapping,\n oneApi_pandoraUrl: item.oneApi_pandoraUrl,\n groupChecked: item.groupChecked,\n priority: item.priority\n }));\n // 将用户数据添加到poolData\n poolData.value = resPools;\n }\n };\n const getShare = async value => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const responseShare = await axios.get(`${prefix}/api/selectShareToken?name=${value}`, {\n headers\n });\n const share_token = responseShare.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(share_token)) {\n const resShares = share_token.map(item => ({\n oneApi_name: item.oneApi_name,\n token_name: item.token_name,\n token_value: item.token_value,\n oneApi_baseUrl: item.oneApi_baseUrl,\n oneApi_models: item.oneApi_models,\n model_mapping: item.model_mapping,\n oneApi_groups: item.oneApi_groups,\n shareTime: item.shareTime,\n priority: item.priority\n }));\n // 将用户数据添加到poolData\n shareData.value = resShares;\n }\n loadingInstance.close();\n };\n const getSetting = async value => {\n const response = await axios.get(`${prefix}/api/selectSetting`, {\n headers\n });\n const data = response.data.data;\n proxy_api_prefix.value = data.proxy_api_prefix;\n isolated_conv_title.value = data.isolated_conv_title;\n bing.value = data.bing;\n timeout.value = data.timeout;\n proxy_url.value = data.proxy_url;\n public_share.value = data.public_share;\n //0.4.9.2\n disable_signup.value = data.disable_signup;\n auto_conv_arkose.value = data.auto_conv_arkose;\n proxy_file_service.value = data.proxy_file_service;\n custom_doh_host.value = data.custom_doh_host;\n enabled.value = data.tls.enabled;\n cert_file.value = data.tls.cert_file;\n key_file.value = data.tls.key_file;\n site_password.value = data.site_password;\n setup_password.value = data.setup_password;\n if (data.whitelist == null) {\n whitelist.value = \"null\";\n } else whitelist.value = data.whitelist;\n loginUsername.value = data.loginUsername;\n loginPassword.value = data.loginPassword;\n license_id.value = data.license_id;\n //0.4.8.2\n isGetToken.value = data.isGetToken;\n getTokenPassword.value = data.getTokenPassword;\n containerName.value = data.containerName;\n autoToken_url.value = data.autoToken_url;\n provider.value = data.validation.provider;\n site_key.value = data.validation.site_key;\n site_secret.value = data.validation.site_secret;\n site_login.value = data.validation.site_login;\n setup_login.value = data.validation.setup_login;\n oai_username.value = data.validation.oai_username;\n oai_password.value = data.validation.oai_password;\n //0.4.9.3\n auto_updateSession.value = data.auto_updateSession;\n auto_updateTime.value = data.auto_updateTime;\n auto_updateNumber.value = data.auto_updateNumber;\n pandoraNext_outUrl.value = data.pandoraNext_outUrl;\n if (!pandoraNext_outUrl.value.endsWith(\"/\")) {\n oneApi_pandoraUrl.value = pandoraNext_outUrl.value + \"/\" + proxy_api_prefix.value;\n } else {\n oneApi_pandoraUrl.value = pandoraNext_outUrl.value + proxy_api_prefix.value;\n }\n //0.5.0\n oneAPi_outUrl.value = data.oneAPi_outUrl;\n oneAPi_intoToken.value = data.oneAPi_intoToken;\n fetchDataAndFillForm();\n };\n const fetchDataAndFillForm = async () => {\n if (loginPassword.value == \"123456\" && loginUsername.value == \"root\") {\n ElMessageBox.alert(\"请先修改默认的初始账号和密码,并填写相应的信息,具体可参考网站文档!\", \"温馨提醒\", {\n confirmButtonText: \"确定\",\n callback: action => {\n ElMessage({\n type: \"info\",\n message: `如果不知道怎么填的话,可以看tokensTool的文档站!`\n });\n }\n });\n show_4.value = true;\n loginPassword.value = \"\";\n loginUsername.value = \"\";\n }\n };\n const getSelectedData = () => {\n const selectedData = multipleSelection.value;\n if (selectedData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n } else {\n show_9.value = true;\n }\n };\n const addSelectPoolToken = async () => {\n try {\n const selectedData = multipleSelection.value;\n const names = selectedData.map(userData => userData.name);\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n if (addPoolModel_mapping.value == \"\") {\n addPoolModel_mapping.value = \"{}\";\n }\n JSON.parse(addPoolModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const addPoolToken = {\n poolName: poolNameValue.value,\n intoOneApi: intoOneApi.value,\n poolOneApi_models: addPoolOneApi_models.value.toString(),\n poolModel_mapping: addPoolModel_mapping.value,\n oneApi_pandoraUrl: oneApi_pandoraUrl.value,\n shareTokens: names,\n groupChecked: groupChecked.value.toString(),\n priority: priority.value\n };\n const response = await fetch(`${prefix}/api/addPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addPoolToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n poolNameValue.value = \"\";\n getPool(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n poolNameValue.value = \"\";\n intoOneApi.value = false;\n groupChecked.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n addPoolModel_mapping.value = \"\";\n addPoolOneApi_models.value = [];\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n loadingInstance.close();\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消生成pool_token\"\n });\n }\n show_9.value = false;\n };\n const handlePoolNameChange = poolNameValue => {\n let selectedItem = poolData.value.find(item => item.poolName === poolNameValue);\n if (selectedItem != null) {\n temPool_token.value = selectedItem.poolToken;\n intoOneApi.value = selectedItem.intoOneApi;\n poolOneApi_models.value = selectedItem.poolOneApi_models.split(\",\");\n poolModel_mapping.value = selectedItem.poolModel_mapping;\n oneApi_pandoraUrl.value = selectedItem.oneApi_pandoraUrl;\n temGroupChecked.value = selectedItem.groupChecked.split(\",\");\n priority.value = selectedItem.priority;\n }\n };\n const handleShareNameChange = addToken_name => {\n let selectedItem = tableData.value.find(item => item.name === addToken_name && item.setPoolToken === true);\n };\n const filteredTableData = computed(() => {\n return tableData.value.filter(item => item.setPoolToken === true);\n });\n const requirePoolToken = async () => {\n try {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n if (poolModel_mapping.value == \"\") {\n poolModel_mapping.value = \"{}\";\n }\n JSON.parse(poolModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const selectedData = multipleSelection.value;\n const names = selectedData.map(userData => userData.name);\n const addPoolToken = {\n poolName: poolName.value,\n poolToken: temPool_token.value,\n intoOneApi: intoOneApi.value,\n poolOneApi_models: poolOneApi_models.value.toString(),\n poolModel_mapping: poolModel_mapping.value,\n oneApi_pandoraUrl: oneApi_pandoraUrl.value,\n shareTokens: names,\n groupChecked: temGroupChecked.value.toString(),\n priority: priority.value\n };\n console.log(addPoolToken);\n const response = await fetch(`${prefix}/api/requirePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addPoolToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n getPool(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n poolName.value = \"\";\n temPool_token.value = \"\";\n intoOneApi.value = false;\n poolOneApi_models.value = [];\n poolModel_mapping.value = \"\";\n groupChecked.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n loadingInstance.close();\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消修改pool_token\"\n });\n }\n show_11.value = false;\n };\n const addShareToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n try {\n if (addModel_mapping.value == \"\") {\n addModel_mapping.value = \"{}\";\n }\n JSON.parse(addModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const addShareToken = {\n oneApi_name: addOneApi_name.value,\n token_name: addToken_name.value,\n oneApi_baseUrl: addOneApi_baseUrl.value,\n oneApi_models: addOneApi_models.value.toString(),\n model_mapping: addModel_mapping.value,\n oneApi_groups: addOneApi_groups.value.toString(),\n priority: priority.value\n };\n const response = await fetch(`${prefix}/api/addShareToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addShareToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n getShare(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n addOneApi_name.value = \"\";\n addToken_name.value = \"\";\n addOneApi_baseUrl.value = \"\";\n addOneApi_models.value = [];\n addModel_mapping.value = \"\";\n addOneApi_groups.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消修改pool_token\"\n });\n }\n show_14.value = false;\n loadingInstance.close();\n };\n const pandoraUsage = ref(\"\");\n // 在组件加载完成后自动触发数据加载和填充\n onMounted(async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetchLoginToken();\n // 页面重定向\n if (window.innerWidth <= 900) {\n router.replace(\"/iphone\");\n } else {\n router.replace(\"/home\");\n }\n try {\n // 并行执行不依赖的函数\n await Promise.all([onSearch(value.value), getPool(value.value), getSetting(value.value)]);\n // 等待获取 Pandora 数据\n const response = await axios.get(`${prefix}/api/getPandoraNext`, {\n headers\n });\n const data = response.data.data;\n if (data != null) {\n pandoraUsage.value = `${data.current}/${data.total}`;\n }\n } catch (error) {\n console.error(\"An error occurred:\", error);\n // 这里可以添加错误处理逻辑\n } finally {\n loadingInstance.close();\n }\n });\n //用来警告session过期\n const tableRowClassName = ({\n row\n }) => {\n if (row.checkSession == false) {\n return \"warning-row\";\n }\n return \"\";\n };\n const poolRowClassName = ({\n row\n }) => {\n if (row.checkPool == false) {\n return \"warning-row\";\n }\n return \"\";\n };\n /**\r\n * 跳转到PandoraNext\r\n */\n const redirectToExternalLink = () => {\n window.open(pandoraNext_outUrl.value);\n };\n /**\r\n * 跳转到PandoraNext分享页\r\n */\n const redirectPandoraNextShare = () => {\n var url = pandoraNext_outUrl.value;\n // 检查最后一个字符是否是 /\n if (url.charAt(url.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n url += \"/\";\n }\n window.open(url + \"shared.html\");\n };\n /**\r\n * 跳转到PandoraNext\r\n */\n const requirePandoraNextLink = () => {\n var url = pandoraNext_outUrl.value;\n // 检查最后一个字符是否是 /\n if (url.charAt(url.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n url += \"/\";\n }\n window.open(url + \"setup\");\n };\n /**\r\n * 跳转到tokensTool使用说明\r\n */\n const requireTokensToolLink = () => {\n window.open(\"https://apifox.com/apidoc/shared-40345b46-9c9c-45cc-b494-6a6a387a978f\");\n };\n /**\r\n * 用于用户信息设置\r\n */\n const activeIndex = ref(\"-1\");\n let temRequireToken = \"\";\n const handleSelect = (key, keyPath) => {\n console.log(\"选择准备!\");\n };\n /**\r\n * 添加token开启函数\r\n * 类user\r\n */\n const addToken = () => {\n show_1.value = true;\n };\n /**\r\n * 添加token函数\r\n * 类user\r\n */\n const onAddToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const now = new Date();\n const formattedTime = `${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, \"0\")}-${now.getDate().toString().padStart(2, \"0\")} ${now.getHours().toString().padStart(2, \"0\")}:${now.getMinutes().toString().padStart(2, \"0\")}:${now.getSeconds().toString().padStart(2, \"0\")}`;\n if (addPassword.value != \"\") {\n addShared.value = false;\n addPlus.value = false;\n addShow_user_info.value = false;\n }\n if (addSetPoolToken.value == false) {\n addTokenValue.value = addUsername.value + \",\" + addUserPassword.value;\n addUseRefreshToken.value = false;\n addShared.value = false;\n addPlus.value = false;\n addShow_user_info.value = false;\n }\n let api = {\n name: addName.value,\n token: addTokenValue.value,\n username: addUsername.value,\n userPassword: addUserPassword.value,\n shared: addShared.value,\n auto_shared: addShared.value,\n show_user_info: addShow_user_info.value,\n plus: addPlus.value,\n setPoolToken: addSetPoolToken.value,\n useRefreshToken: addUseRefreshToken.value,\n password: addPassword.value,\n updateTime: formattedTime\n };\n fetch(`${prefix}/api/addToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(api)\n }).then(response => response.json()) // 将 .json() 放在正确的位置\n .then(data => {\n if (data.code == 1) {\n ElMessage.success(\"添加成功!\");\n addName.value = \"\";\n addTokenValue.value = \"\";\n addUsername.value = \"\";\n addUserPassword.value = \"\";\n addShared.value = false;\n addShow_user_info.value = false;\n addPlus.value = false;\n addSetPoolToken.value = false;\n addUseRefreshToken.value = false;\n addPassword.value = \"\";\n if (api.token == \"\") {\n api.token = data.data;\n ElMessage.success(\"已为您自动装填token!\");\n }\n } else {\n ElMessage.error(data.msg);\n }\n addPassword.value = \"\";\n getToken(\"\");\n loadingInstance.close();\n }).catch(error => {\n ElMessage.error(\"获取账号出现问题,请检查刷新网址是否正确!\");\n loadingInstance.close();\n });\n show_1.value = false;\n };\n /**\r\n * 展示token函数\r\n * 类user\r\n */\n const chart_show = ref(null);\n const showData = async row => {\n temName.value = row.name;\n temUsername.value = row.username;\n temUserPassword.value = row.userPassword;\n temToken.value = row.token;\n temAccessToken.value = row.access_token;\n temShareToken.value = row.share_token;\n temShared.value = row.shared;\n temShow_user_info.value = row.show_user_info;\n temPlus.value = row.plus;\n temPassword.value = row.password;\n setPoolToken.value = row.setPoolToken;\n useRefreshToken.value = row.useRefreshToken;\n temCheckSession.value = row.checkSession;\n if (setPoolToken.value != true) {\n show_2.value = true;\n return;\n }\n const usageHeader = {\n Authorization: `Bearer ${row.access_token}`\n };\n show_2.value = true;\n if (setPoolToken.value) {\n const response = await axios.get(`${oneApi_pandoraUrl.value}/api/token/info/${row.share_token}`, {\n headers: usageHeader\n });\n let usageData = [];\n let modelData = [];\n for (let key in response.data.usage) {\n if (!key.startsWith(\"range\")) {\n modelData.push(key);\n usageData.push(response.data.usage[key]);\n }\n }\n if (modelData.length == 0 && usageData.length == 0) {\n modelData = [\"gpt-4\", \"gpt-3.5-turbo\", \"gpt-3.5-turbo-0613\"];\n usageData = [0, 0, 0];\n }\n const myChart_show = echarts.init(chart_show.value);\n const option = {\n title: {\n text: `今日${response.data.usage[\"range\"]} ${temName.value}各模型用量`,\n textStyle: {\n // 调整字体大小\n fontSize: 14,\n color: \"#606266\" // 这里是深灰色,你可以根据需要更改颜色\n },\n\n // 设置标题位置\n left: \"center\",\n top: \"bottom\" // 放在底部\n },\n\n tooltip: {},\n legend: {\n data: modelData\n },\n xAxis: {\n data: modelData\n },\n yAxis: {},\n series: [{\n name: \"对话数量\",\n type: \"bar\",\n data: usageData,\n barWidth: \"25%\",\n itemStyle: {\n color: function (params) {\n const colorList = [\"#3498db\", \"#2ecc71\", \"#f1c40f\", \"#9b59b6\", \"#1abc9c\", \"#e67e22\", \"#ecf0f1\", \"#95a5a6\", \"#34495e\", \"#16a085\"];\n return colorList[params.dataIndex % colorList.length];\n }\n }\n }]\n };\n myChart_show.setOption(option);\n }\n };\n const oneApi_name = ref(\"\");\n const token_name = ref(\"\");\n const token_value = ref(\"\");\n const oneApi_baseUrl = ref(\"\");\n const oneApi_models = ref([]);\n const model_mapping = ref(\"\");\n const temOneApi_models = ref(\"\");\n const temOneApi_groups = ref(\"\");\n const oneApi_groups = ref([\"default\", \"svip\", \"vip\"]);\n const shareTime = ref(\"\");\n const showShareToken = row => {\n oneApi_name.value = row.oneApi_name;\n token_name.value = row.token_name;\n token_value.value = row.token_value;\n oneApi_baseUrl.value = row.oneApi_baseUrl;\n temOneApi_models.value = row.oneApi_models;\n model_mapping.value = row.model_mapping;\n temOneApi_groups.value = row.oneApi_groups;\n priority.value = row.priority;\n shareTime.value = row.shareTime;\n show_15.value = true;\n };\n let previousSetpoolToken = false;\n let previousUseRefreshToken = false;\n let previousToken = \"\";\n //编辑准备\n const handleEdit = (index, row) => {\n temName.value = row.name;\n temUsername.value = row.username;\n temUserPassword.value = row.userPassword;\n //用来判断token是否更改\n temToken.value = row.token;\n temRequireToken = row.token;\n temShared.value = row.shared;\n temShow_user_info.value = row.show_user_info;\n temPlus.value = row.plus;\n temPassword.value = row.password;\n setPoolToken.value = row.setPoolToken;\n useRefreshToken.value = row.useRefreshToken;\n previousSetpoolToken = setPoolToken.value;\n previousUseRefreshToken = useRefreshToken.value;\n previousToken = temToken.value;\n temCheckSession.value = row.checkSession;\n temAccessToken.value = row.access_token;\n temShareToken.value = row.share_token;\n show.value = true;\n };\n /**\r\n * 修改系统设置函数\r\n */\n const onRequireSetting = async value => {\n if (value == 0) {\n show_3.value = true;\n } else if (value == 1) {\n show_4.value = true;\n } else if (value == 2) {\n show_5.value = true;\n }\n };\n const RequireSetting = value => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n if (whitelist.value == null || whitelist.value == \"null\") {\n whitelist.value = \"\";\n }\n if (enabled.value == false) {\n cert_file.value = \"\";\n key_file.value = \"\";\n }\n const tls = {\n enabled: enabled.value,\n cert_file: cert_file.value,\n key_file: key_file.value\n };\n const validation = {\n provider: provider.value,\n site_key: site_key.value,\n site_secret: site_secret.value,\n site_login: site_login.value,\n setup_login: setup_login.value,\n oai_username: oai_username.value,\n oai_password: oai_password.value\n };\n const setting = {\n proxy_api_prefix: proxy_api_prefix.value,\n isolated_conv_title: isolated_conv_title.value,\n bing: bing.value,\n timeout: timeout.value,\n proxy_url: proxy_url.value,\n public_share: public_share.value,\n site_password: site_password.value,\n setup_password: setup_password.value,\n loginUsername: loginUsername.value,\n loginPassword: loginPassword.value,\n license_id: license_id.value,\n //0.4.9.2\n disable_signup: disable_signup.value,\n auto_conv_arkose: auto_conv_arkose.value,\n proxy_file_service: proxy_file_service.value,\n custom_doh_host: custom_doh_host.value,\n //0.4.8.2\n isGetToken: isGetToken.value,\n getTokenPassword: getTokenPassword.value,\n containerName: containerName.value,\n autoToken_url: autoToken_url.value,\n whitelist: whitelist.value,\n validation: validation,\n tls: tls\n };\n fetch(`${prefix}/api/requireSetting`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(setting)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n } else {\n ElMessage.error(data.msg);\n }\n fetchLoginToken();\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求requireSetting接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n if (value == 0) {\n show_3.value = false;\n } else if (value == 1) {\n show_4.value = false;\n } else if (value == 2) {\n show_5.value = false;\n }\n };\n const RequireAutoUpdate = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n // 检查最后一个字符是否是 /\n if (pandoraNext_outUrl.value.charAt(pandoraNext_outUrl.value.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n pandoraNext_outUrl.value += \"/\";\n }\n const setting = {\n auto_updateSession: auto_updateSession.value,\n auto_updateTime: auto_updateTime.value,\n auto_updateNumber: auto_updateNumber.value,\n pandoraNext_outUrl: pandoraNext_outUrl.value,\n oneAPi_outUrl: oneAPi_outUrl.value,\n oneAPi_intoToken: oneAPi_intoToken.value\n };\n fetch(`${prefix}/api/controllerTask`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(setting)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n } else {\n ElMessage.error(data.msg);\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求controllerTask接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n show_8.value = false;\n };\n /**\r\n * 修改token函数\r\n * 类user\r\n */\n const RequireToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let formattedTime = \"\";\n if (temRequireToken != temToken.value) {\n const now = new Date();\n formattedTime = `${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, \"0\")}-${now.getDate().toString().padStart(2, \"0\")} ${now.getHours().toString().padStart(2, \"0\")}:${now.getMinutes().toString().padStart(2, \"0\")}:${now.getSeconds().toString().padStart(2, \"0\")}`;\n }\n if (setPoolToken.value == false) {\n temShared.value = false;\n temPlus.value = false;\n temShow_user_info.value = false;\n useRefreshToken.value = false;\n }\n if (temShared.value === true) {\n temPassword.value = \"\";\n } else {\n temPlus.value = false;\n temShow_user_info.value = false;\n }\n let msg = \"\";\n if (previousSetpoolToken != setPoolToken.value && previousToken == temToken.value) {\n if (setPoolToken.value == false) {\n msg = \"您确定要关闭API模型开启web模式,您将无法生成任何的token,但不消耗额度!\";\n } else {\n if (useRefreshToken.value == true) {\n msg = \"您确定要开启API模式,并使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!\";\n } else {\n msg = \"您确定要开启API模式,并使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!\";\n }\n }\n } else if (previousUseRefreshToken != useRefreshToken.value && previousToken == temToken.value) {\n if (useRefreshToken.value == true) {\n msg = \"您确定要切换使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!\";\n } else {\n msg = \"您确定要切换使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!\";\n }\n } else {\n msg = \"修改将要提交,您确定修改好了吗?\";\n }\n ElMessageBox.confirm(msg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const api = {\n name: temName.value,\n token: temToken.value,\n username: temUsername.value,\n userPassword: temUserPassword.value,\n shared: temShared.value,\n auto_shared: temShared.value,\n show_user_info: temShow_user_info.value,\n plus: temPlus.value,\n setPoolToken: setPoolToken.value,\n useRefreshToken: useRefreshToken.value,\n checkSession: temCheckSession.value,\n password: temPassword.value,\n access_token: temAccessToken.value,\n share_token: temShareToken.value\n };\n fetch(`${prefix}/api/requiredToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(api)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n getToken(\"\");\n } else {\n ElMessage.error(data.msg);\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求requireToken接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n show.value = false;\n }).catch(() => {\n loadingInstance.close();\n ElMessage({\n type: \"info\",\n message: \"编辑取消!\"\n });\n return;\n });\n };\n /**\r\n * 开启pandora函数\r\n */\n const openPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/open`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 暂停pandora函数\r\n */\n const closePandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/close`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 重启pandora函数\r\n */\n const AgainPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/restart`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 重载pandora函数\r\n */\n const reloadPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/reload`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 查询pandoraNext余额函数\r\n */\n const pandoraIp = ref(\"\");\n const pandoraTime = ref(\"\");\n const getPandoraNext = async () => {\n const response = await axios.get(`${prefix}/api/getPandoraNext`, {\n headers\n });\n const data = response.data.data;\n if (data != null) {\n pandoraUsage.value = data.current + \"/\" + data.total;\n pandoraIp.value = data.ip;\n var currentTime = new Date();\n const futureTime = new Date(currentTime.getTime() + data.ttl * 1000);\n var year = futureTime.getFullYear();\n var month = futureTime.getMonth() + 1; // 月份是从0开始的,所以要加1\n var day = futureTime.getDate();\n var hours = futureTime.getHours();\n var minutes = futureTime.getMinutes();\n var seconds = futureTime.getSeconds();\n pandoraTime.value = year + \"-\" + month + \"-\" + day + \" \" + hours + \":\" + minutes + \":\" + seconds;\n }\n show_7.value = true;\n };\n /**\r\n * 一键全生成\r\n */\n const updateAllShareToken = async () => {\n let reNewMsg = \"全部检查并生成可能会加载1-3分钟,请您耐心等待!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true,\n text: \"正在加载中,请耐心等待...\"\n });\n const response = await axios.get(`${prefix}/api/updateAllToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n await Promise.all([getToken(\"\"), getPool(\"\")]);\n ElMessageBox.alert(data, \"温馨提示\", {\n dangerouslyUseHTMLString: true\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"全部检查并生成取消!\"\n });\n });\n };\n /**\r\n * 一键全刷新pool_token\r\n */\n const updateAllPoolToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/updateAllPoolToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n getPool(\"\");\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 一键全检查pool_token\r\n */\n const verifyAllPoolToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/verifyAllPoolToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n getPool(\"\");\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 刷新Token函数\r\n */\n const reNew = row => {\n if (row.setPoolToken == false) {\n ElMessage.error(\"未开启API模式,无法刷新\");\n return;\n }\n let reNewMsg = \"您确定要刷新session_token吗,刷新session_token消耗100额度,请您要仔细认真考虑哦!\";\n if (row.useRefreshToken) {\n reNewMsg = \"您确定要刷新refresh_token吗,刷新refresh_token消耗1000额度,请您要仔细认真考虑哦!\";\n }\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/updateSessionToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n row.token = data.data;\n getToken(\"\");\n ElMessageBox.alert(\"刷新成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n };\n /**\r\n * 刷新Token函数\r\n */\n const reNewPool = row => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/refreshSimplyPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(\"刷新成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n const reviewShare = row => {\n oneApi_name.value = row.oneApi_name;\n token_name.value = row.token_name;\n token_value.value = row.token_value;\n oneApi_baseUrl.value = row.oneApi_baseUrl;\n oneApi_models.value = row.oneApi_models.split(\",\");\n model_mapping.value = row.model_mapping;\n oneApi_groups.value = row.oneApi_groups.split(\",\");\n priority.value = row.priority;\n shareTime.value = row.shareTime;\n show_16.value = true;\n };\n const requireShareToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const requireShare = {\n oneApi_name: oneApi_name.value,\n token_name: token_name.value,\n token_value: token_value.value,\n oneApi_baseUrl: oneApi_baseUrl.value,\n oneApi_models: oneApi_models.value.toString(),\n model_mapping: model_mapping.value,\n oneApi_groups: oneApi_groups.value.toString(),\n priority: priority.value\n };\n fetch(`${prefix}/api/requireShareToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(requireShare)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n getShare(\"\");\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n show_16.value = false;\n };\n /**\r\n * 生成token操作\r\n */\n const review = row => {\n if (row.setPoolToken == false) {\n ElMessage.error(\"未开启API模式,无法生成\");\n return;\n }\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/updateToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n ElMessageBox.alert(\"生成shareToken成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n getToken(\"\");\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 更新token操作\r\n */\n const reviewPool = row => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/changePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(\"更换pool_token成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 删除PoolToken函数\r\n * 参数 Pool\r\n */\n const deletePoolToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个Pool_Token吗,删除之后就找不到咯,请您要仔细认真考虑哦!\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n fetch(`${prefix}/api/deletePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data.data != null) {\n getPool(\"\");\n ElMessage.success(data.data);\n loadingInstance.close();\n } else {\n getPool(\"\");\n ElMessage.error(data.msg);\n loadingInstance.close();\n }\n show_9.value = false;\n }).catch(error => {\n // 处理完成失败的逻辑\n console.error(\"删除失败\", error);\n getPool(\"\");\n loadingInstance.close();\n show_9.value = false;\n });\n }).catch(() => {\n loadingInstance.close();\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n });\n };\n /**\r\n * 删除PoolToken函数\r\n * 参数 Pool\r\n */\n const verifySimplyPoolToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/verifySimplyPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n getPool(\"\");\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 删除Token函数\r\n * 参数 user\r\n */\n const deleteToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个Token吗,删除之后就找不到咯,记得点击全部刷新poolToken\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`${prefix}/api/deleteToken`, row, {\n headers\n }).then(async response => {\n if (row.setPoolToken == true) {\n await axios.get(`${prefix}/api/updateAllPoolToken`, {\n headers\n });\n }\n msg = response.data.data;\n getToken(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n };\n /**\r\n * 删除Token函数\r\n * 参数 user\r\n */\n const deleteShareToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个share_Token吗,删除之后就找不到咯\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`${prefix}/api/deleteShareToken`, row, {\n headers\n }).then(async response => {\n msg = response.data.data;\n getShare(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n };\n /**\r\n * 获取token的过期时间\r\n */\n const formatDate = value => {\n if (!value) return \"\";\n var nowDay = new Date();\n const timeDay = parseISO(value.updateTime);\n const daysDiff = differenceInDays(nowDay, timeDay);\n if (value.token.length >= 2000) {\n return daysDiff >= 80 ? \"已经过去了至少80天\" : Math.ceil(80 - daysDiff) + \"天\";\n } else if (value.token.length < 200 && !value.token.includes(\"fk-\")) {\n return \"永久\";\n } else {\n return daysDiff >= 10 ? \"已经过去了至少10天\" : Math.ceil(10 - daysDiff) + \"天\";\n }\n };\n /**\r\n * 更改Token显示操作\r\n */\n const dataToken = value => {\n return value.substring(0, 30) + \"...\";\n };\n /**\r\n * 退出登录操作\r\n */\n const logout = () => {\n // 删除本地存储的 token\n localStorage.removeItem(\"jwtToken\");\n // 使用 Vue Router 进行页面跳转到登录页面\n router.replace(`/`);\n };\n const getPoolToken = () => {\n show_6.value = true;\n };\n const getShareToken = async () => {\n await getShare(\"\");\n show_13.value = true;\n };\n const getLogin = () => {\n getLoginData();\n show_10.value = true;\n };\n const redirectToGitHub = () => {\n window.open(\"https://github.com/Yanyutin753/PandoraNext-TokensTool\");\n };\n const copyToken = value => {\n const textarea = document.createElement(\"textarea\");\n // 设置 textarea 的值为要复制的文本\n textarea.value = value;\n // 将 textarea 添加到 DOM 中\n document.body.appendChild(textarea);\n // 选中 textarea 中的文本\n textarea.select();\n // 执行复制操作\n document.execCommand(\"copy\");\n // 从 DOM 中移除 textarea 元素\n document.body.removeChild(textarea);\n ElMessage({\n type: \"success\",\n message: \"复制成功!\"\n });\n };\n const selectChoice = buttonValue => {\n const selectedData = multipleSelection.value;\n const userData = selectedData.map(userData => userData);\n if (selectedData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n }\n if (buttonValue == \"选中删除Token\") {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这\" + selectedData.length + \"个Token吗,删除之后就找不到咯\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`${prefix}/api/deleteTokenList`, userData, {\n headers\n }).then(async response => {\n await axios.get(`${prefix}/api/updateAllPoolToken`, {\n headers\n });\n msg = response.data.data;\n getToken(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n return;\n } else if (buttonValue == \"选中刷新Token\") {\n let count = 0;\n const selectedData = multipleSelection.value;\n const userData = selectedData.map(userData => userData);\n userData.forEach((item, index) => {\n if (item.setPoolToken) {\n if (item.useRefreshToken) {\n count += 1000;\n } else {\n count += 100;\n }\n }\n });\n const reNewMsg = \"您确定要花\" + count + \"积分刷新这\" + selectedData.length + \"个Token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/updateSessionTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(userData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getToken(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中合成pool_token\") {\n getSelectedData();\n } else if (buttonValue == \"选中修改pool_token\") {\n poolName.value = \"\";\n shareTokens.value = \"\";\n temPool_token.value = \"\";\n poolTime.value = \"\";\n intoOneApi.value = false;\n poolOneApi_models.value = [];\n poolModel_mapping.value = \"\";\n oneApi_pandoraUrl.value = \"\";\n temGroupChecked.value = [];\n priority.value = 0;\n show_11.value = true;\n }\n };\n const showPool = row => {\n temPoolName.value = row.poolName;\n shareTokens.value = row.shareTokens;\n temPool_token.value = row.poolToken;\n poolTime.value = row.poolTime;\n intoOneApi.value = row.intoOneApi;\n poolOneApi_models.value = row.poolOneApi_models.split(\",\");\n poolModel_mapping.value = row.poolModel_mapping;\n oneApi_pandoraUrl.value = row.oneApi_pandoraUrl;\n temGroupChecked.value = row.groupChecked.split(\",\");\n priority.value = row.priority;\n show_17.value = true;\n };\n const selectPoolChoice = buttonValue => {\n const selectedPoolData = multipleSelectionPool.value;\n const temPoolData = selectedPoolData.map(temPoolData => temPoolData);\n if (temPoolData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n }\n if (buttonValue == \"选中检查pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要花\" + count + \"积分检查这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/verifySimplyPoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"检查取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中刷新pool_token\") {\n const reNewMsg = \"您确定要刷新这\" + selectedPoolData.length + \"个pool_token吗?\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/refreshSimplyPoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中更换pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要更换这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/changePoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"更换取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中删除pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要删除这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/deletePoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n });\n return;\n }\n };\n const chart = ref(null);\n const getUsage = async () => {\n show_12.value = true;\n const response = await axios.get(`${prefix}/api/modelsUsage`, {\n headers\n });\n let usageData = response.data.data.map(item => item.usage);\n let modelData = response.data.data.map(item => item.model);\n const myChart = echarts.init(chart.value);\n const option = {\n title: {\n text: \"copilot每日对话统计\",\n fontSize: 18,\n color: \"#606266\" // 这里是深灰色,你可以根据需要更改颜色\n },\n\n tooltip: {},\n legend: {\n data: modelData\n },\n xAxis: {\n data: modelData\n },\n yAxis: {},\n series: [{\n name: \"对话数量\",\n type: \"bar\",\n data: usageData,\n barWidth: \"40%\",\n itemStyle: {\n color: function (params) {\n const colorList = [\"#3498db\", \"#2ecc71\", \"#f1c40f\", \"#9b59b6\", \"#1abc9c\", \"#e67e22\", \"#ecf0f1\", \"#95a5a6\", \"#34495e\", \"#16a085\"];\n return colorList[params.dataIndex % colorList.length];\n }\n }\n }]\n };\n myChart.setOption(option);\n };\n return (_ctx, _cache) => {\n const _component_van_icon = _resolveComponent(\"van-icon\");\n const _component_el_menu_item = _resolveComponent(\"el-menu-item\");\n const _component_el_sub_menu = _resolveComponent(\"el-sub-menu\");\n const _component_el_menu = _resolveComponent(\"el-menu\");\n const _component_van_button = _resolveComponent(\"van-button\");\n const _component_el_page_header = _resolveComponent(\"el-page-header\");\n const _component_van_search = _resolveComponent(\"van-search\");\n const _component_el_table_column = _resolveComponent(\"el-table-column\");\n const _component_el_button = _resolveComponent(\"el-button\");\n const _component_el_tag = _resolveComponent(\"el-tag\");\n const _component_el_popover = _resolveComponent(\"el-popover\");\n const _component_el_option = _resolveComponent(\"el-option\");\n const _component_el_select = _resolveComponent(\"el-select\");\n const _component_van_field = _resolveComponent(\"van-field\");\n const _component_van_switch = _resolveComponent(\"van-switch\");\n const _component_van_cell_group = _resolveComponent(\"van-cell-group\");\n const _component_van_form = _resolveComponent(\"van-form\");\n const _component_van_dialog = _resolveComponent(\"van-dialog\");\n const _component_CopyDocument = _resolveComponent(\"CopyDocument\");\n const _component_el_icon = _resolveComponent(\"el-icon\");\n const _component_h10 = _resolveComponent(\"h10\");\n const _component_el_select_group = _resolveComponent(\"el-select-group\");\n const _component_el_dialog = _resolveComponent(\"el-dialog\");\n const _component_el_form_item = _resolveComponent(\"el-form-item\");\n const _component_el_input = _resolveComponent(\"el-input\");\n const _component_van_checkbox = _resolveComponent(\"van-checkbox\");\n const _component_van_checkbox_group = _resolveComponent(\"van-checkbox-group\");\n const _directive_loading = _resolveDirective(\"loading\");\n return _openBlock(), _createElementBlock(_Fragment, null, [_createElementVNode(\"div\", _hoisted_1, [_hoisted_2, _createVNode(_component_el_menu, {\n \"default-active\": activeIndex.value,\n class: \"el-menu-demo\",\n mode: \"horizontal\",\n ellipsis: false,\n onSelect: handleSelect,\n \"active-text-color\": \"#0ea27e\",\n \"text-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"0\"\n }, {\n title: _withCtx(() => [_createElementVNode(\"div\", _hoisted_4, [_createElementVNode(\"h2\", null, _toDisplayString(pandoraUsage.value), 1)]), _createVNode(_component_van_icon, {\n name: \"replay\",\n size: \"20\",\n onClick: getPandoraNext\n })]),\n default: _withCtx(() => [_hoisted_3]),\n _: 1\n }), _hoisted_5, _createVNode(_component_el_sub_menu, {\n index: \"3\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"列表\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"3-3\",\n onClick: updateAllShareToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"全部检查并生成\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-1\",\n onClick: getPoolToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"pool_token列表\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-2\",\n onClick: getShareToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"share_token列表\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-5\",\n onClick: getUsage\n }, {\n default: _withCtx(() => [_createTextVNode(\"copilot每日用量统计\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-4\",\n onClick: getLogin\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool登录日志\")]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"1\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"设置\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"1-1\",\n onClick: _cache[0] || (_cache[0] = $event => onRequireSetting(pandoraNext))\n }, {\n default: _withCtx(() => [_createTextVNode(\"PandoraNext设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"1-2\",\n onClick: _cache[1] || (_cache[1] = $event => onRequireSetting(tokensTool))\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"1-3\",\n onClick: _cache[2] || (_cache[2] = $event => onRequireSetting(validation))\n }, {\n default: _withCtx(() => [_createTextVNode(\"验证码信息设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"1-4\",\n onClick: _cache[3] || (_cache[3] = $event => show_8.value = true)\n }, {\n default: _withCtx(() => [_createTextVNode(\"定时&接口设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"1-5\",\n onClick: requireTokensToolLink\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool使用手册\")]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"2\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"状态\")]),\n default: _withCtx(() => [_createVNode(_component_el_sub_menu, {\n index: \"2-1\"\n }, {\n title: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"状态\", 1)]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"2-1-1\",\n onClick: openPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"开启\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-1-2\",\n onClick: closePandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"暂停\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-1-3\",\n onClick: AgainPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"重启\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-1-4\",\n onClick: reloadPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"重载\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"2-2\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"跳转Web服务\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"2-2-1\",\n onClick: redirectToExternalLink\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"主页\", 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-2-2\",\n onClick: redirectPandoraNextShare\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"共享页\", 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-2-3\",\n onClick: requirePandoraNextLink\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"修改页\", 1)]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"2-3\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"获取token地址\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"2-3-1\"\n }, {\n default: _withCtx(() => [_hoisted_6]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-3-2\"\n }, {\n default: _withCtx(() => [_hoisted_7]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-3-3\"\n }, {\n default: _withCtx(() => [_hoisted_8]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-4\",\n onClick: logout\n }, {\n default: _withCtx(() => [_createTextVNode(\"退出登录\")]),\n _: 1\n })]),\n _: 1\n })]),\n _: 1\n }, 8, [\"default-active\"]), _createElementVNode(\"div\", _hoisted_9, [_createVNode(_component_el_page_header, {\n icon: null,\n title: \" \"\n }, {\n content: _withCtx(() => [_hoisted_10]),\n extra: _withCtx(() => [_createElementVNode(\"div\", {\n class: \"addToken\",\n onClick: addToken\n }, [_createVNode(_component_van_button, {\n square: \"\",\n icon: \"add-o\",\n color: \"#0ea27e\",\n class: \"addTokenButton\"\n })])]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_11, [_createElementVNode(\"div\", _hoisted_12, [_createElementVNode(\"div\", _hoisted_13, [_createVNode(_component_van_search, {\n modelValue: value.value,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => value.value = $event),\n shape: \"round\",\n clearable: \"\",\n placeholder: \"请输入搜索token名称或类型\",\n onSearch: onSearch\n }, null, 8, [\"modelValue\"])]), _createElementVNode(\"div\", _hoisted_14, [_withDirectives((_openBlock(), _createBlock(_unref(ElTable), {\n data: tableData.value,\n style: {\n \"width\": \"100%\"\n },\n onSelectionChange: handleSelectionChange,\n class: \"tokenTable\",\n \"default-sort\": {\n prop: 'updateTime',\n prop: 'setPoolToken'\n },\n \"row-class-name\": tableRowClassName\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n type: \"selection\",\n width: \"45\"\n }), _createVNode(_component_el_table_column, {\n label: \"名称\",\n width: \"160\",\n prop: \"setPoolToken\",\n sortable: \"\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_15, [_createElementVNode(\"div\", null, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"h5\", null, _toDisplayString(scope.row.setPoolToken ? scope.row.useRefreshToken ? \"refAPI\" : \"sesAPI\" : \"Web\"), 1)]),\n _: 2\n }, 1024)]), _createElementVNode(\"span\", _hoisted_16, _toDisplayString(scope.row.name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n prop: \"updateTime\",\n sortable: \"\",\n label: \"有效时间\",\n width: \"117\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", null, \"注册时间:\" + _toDisplayString(scope.row.updateTime), 1)]),\n reference: _withCtx(() => [_createElementVNode(\"span\", _hoisted_17, [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(formatDate(scope.row)), 1)]),\n _: 2\n }, 1024)])]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n width: \"370\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => handleEdit(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"编辑\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => showData(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deleteToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"success\",\n onClick: $event => reNew(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"刷新\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"warning\",\n onClick: $event => review(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"生成\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"])), [[_directive_loading, _ctx.loading]])]), _createElementVNode(\"div\", _hoisted_18, [_createVNode(_component_el_select, {\n modelValue: buttonValue.value,\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = $event => buttonValue.value = $event),\n clearable: \"\",\n filterable: \"\",\n placeholder: \"请选择批量操作\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(options, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonValue,\n label: item.label,\n value: item.buttonValue\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_button, {\n class: \"my-button\",\n onClick: _cache[6] || (_cache[6] = $event => selectChoice(buttonValue.value))\n }, {\n default: _withCtx(() => [_hoisted_19]),\n _: 1\n })])])]), _hoisted_20]), _createVNode(_component_van_dialog, {\n show: show.value,\n \"onUpdate:show\": _cache[17] || (_cache[17] = $event => show.value = $event),\n title: \"📌修改token信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_21, [_createVNode(_component_van_form, {\n onSubmit: _cache[16] || (_cache[16] = $event => RequireToken())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_22, _createVNode(_component_van_field, {\n modelValue: temUsername.value,\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = $event => temUsername.value = $event),\n name: \"OpenAi邮箱\",\n label: \"OpenAi邮箱\",\n \"input-align\": \"center\",\n placeholder: \"OpenAi邮箱\",\n rules: [{\n required: true,\n message: '请填写OpenAi邮箱'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_23, _createVNode(_component_van_field, {\n modelValue: temUserPassword.value,\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = $event => temUserPassword.value = $event),\n name: \"OpenAi密码\",\n \"input-align\": \"center\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n rules: [{\n required: true,\n message: '请填写OpenAi密码'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_24, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: setPoolToken.value,\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = $event => setPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_25, [_hoisted_26, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refreshToken\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: useRefreshToken.value,\n \"onUpdate:modelValue\": _cache[10] || (_cache[10] = $event => useRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_27, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temShared.value,\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = $event => temShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), temShared.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_28, [_hoisted_29, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temShow_user_info.value,\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = $event => temShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_30, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temPlus.value,\n \"onUpdate:modelValue\": _cache[13] || (_cache[13] = $event => temPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true)])) : _createCommentVNode(\"\", true), temShared.value == false || setPoolToken.value == false ? (_openBlock(), _createElementBlock(\"div\", _hoisted_31, [_hoisted_32, _createVNode(_component_van_field, {\n rows: \"2\",\n type: \"textarea\",\n autoSize: \"\",\n modelValue: temPassword.value,\n \"onUpdate:modelValue\": _cache[14] || (_cache[14] = $event => temPassword.value = $event),\n name: \"Token的密码\",\n \"input-align\": \"center\",\n label: \"Token的密码\",\n placeholder: \"填了将不会分享给他人(如不填则输入Token名即可进入)\",\n rules: [{\n validator: addPasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), _hoisted_33, _createVNode(_component_van_field, {\n modelValue: temToken.value,\n \"onUpdate:modelValue\": _cache[15] || (_cache[15] = $event => temToken.value = $event),\n label: \"Token的值\",\n type: \"textarea\",\n \"input-align\": \"center\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的Token(选填),session或refresh_token\",\n autosize: {\n maxHeight: 100,\n minHeight: 50\n },\n \"show-word-limit\": \"\"\n }, null, 8, [\"modelValue\"]), _hoisted_34]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_35, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_36]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_1.value,\n \"onUpdate:show\": _cache[29] || (_cache[29] = $event => show_1.value = $event),\n title: \"✨添加token信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"addTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_37, [_createVNode(_component_van_form, {\n onSubmit: _cache[28] || (_cache[28] = $event => onAddToken())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_38, _createVNode(_component_van_field, {\n modelValue: addName.value,\n \"onUpdate:modelValue\": _cache[18] || (_cache[18] = $event => addName.value = $event),\n name: \"Token用户名\",\n label: \"Token用户名\",\n placeholder: \"Token用户名\",\n rules: [{\n required: true,\n message: '请填写Token用户名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_39, _createVNode(_component_van_field, {\n modelValue: addUsername.value,\n \"onUpdate:modelValue\": _cache[19] || (_cache[19] = $event => addUsername.value = $event),\n name: \"OpenAi用户名\",\n label: \"OpenAi用户名\",\n placeholder: \"OpenAi用户名\",\n rules: [{\n required: true,\n message: '请填写OpenAi用户名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_40, _createVNode(_component_van_field, {\n modelValue: addUserPassword.value,\n \"onUpdate:modelValue\": _cache[20] || (_cache[20] = $event => addUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n rules: [{\n required: true,\n message: '请填写OpenAi密码'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_41, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addSetPoolToken.value,\n \"onUpdate:modelValue\": _cache[21] || (_cache[21] = $event => addSetPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_42, [_hoisted_43, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refreshToken\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addUseRefreshToken.value,\n \"onUpdate:modelValue\": _cache[22] || (_cache[22] = $event => addUseRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_44, [_hoisted_45, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addShared.value,\n \"onUpdate:modelValue\": _cache[23] || (_cache[23] = $event => addShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), addShared.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_46, [_hoisted_47, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addShow_user_info.value,\n \"onUpdate:modelValue\": _cache[24] || (_cache[24] = $event => addShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_48, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addPlus.value,\n \"onUpdate:modelValue\": _cache[25] || (_cache[25] = $event => addPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true)])) : _createCommentVNode(\"\", true), addShared.value == '' ? (_openBlock(), _createElementBlock(\"div\", _hoisted_49, [_hoisted_50, _createVNode(_component_van_field, {\n rows: \"3\",\n type: \"textarea\",\n autoSize: \"\",\n modelValue: addPassword.value,\n \"onUpdate:modelValue\": _cache[26] || (_cache[26] = $event => addPassword.value = $event),\n name: \"Token的密码\",\n label: \"Token的密码\",\n \"input-align\": \"center\",\n placeholder: \"填了将不会分享给他人(如不填则输入Token名即可进入)\",\n rules: [{\n validator: addPasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_51, [_hoisted_52, _createVNode(_component_van_field, {\n rows: \"3\",\n type: \"textarea\",\n maxlength: \"5000\",\n \"show-word-limit\": \"\",\n modelValue: addTokenValue.value,\n \"onUpdate:modelValue\": _cache[27] || (_cache[27] = $event => addTokenValue.value = $event),\n name: \"Token的值\",\n label: \"Token的值\",\n placeholder: \"选填(可不填,不填则使用账号密码),目前只支持session_token或refresh_token\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_53]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_54, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_55]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_2.value,\n \"onUpdate:show\": _cache[49] || (_cache[49] = $event => show_2.value = $event),\n title: \"🔎token信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"showDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_56, [_createVNode(_component_van_form, null, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_57, _createVNode(_component_van_field, {\n modelValue: temName.value,\n \"onUpdate:modelValue\": _cache[30] || (_cache[30] = $event => temName.value = $event),\n name: \"Token用户名\",\n label: \"Token用户名\",\n placeholder: \"Token用户名\",\n \"left-icon\": \"description-o\",\n \"input-align\": \"center\",\n readonly: true,\n onClickLeftIcon: _cache[31] || (_cache[31] = $event => copyToken(temName.value))\n }, null, 8, [\"modelValue\"]), _hoisted_58, _createVNode(_component_van_field, {\n modelValue: temPassword.value,\n \"onUpdate:modelValue\": _cache[32] || (_cache[32] = $event => temPassword.value = $event),\n type: \"temPassword\",\n name: \"Token的密码\",\n label: \"Token的密码\",\n placeholder: \"Token的密码\",\n \"input-align\": \"center\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[33] || (_cache[33] = $event => copyToken(temPassword.value))\n }, null, 8, [\"modelValue\"]), _hoisted_59, _createVNode(_component_van_field, {\n modelValue: temUsername.value,\n \"onUpdate:modelValue\": _cache[34] || (_cache[34] = $event => temUsername.value = $event),\n name: \"OpenAi邮箱\",\n label: \"OpenAi邮箱\",\n placeholder: \"OpenAi邮箱\",\n \"left-icon\": \"description-o\",\n \"input-align\": \"center\",\n readonly: true,\n onClickLeftIcon: _cache[35] || (_cache[35] = $event => copyToken(temUsername.value))\n }, null, 8, [\"modelValue\"]), _hoisted_60, _createVNode(_component_van_field, {\n modelValue: temUserPassword.value,\n \"onUpdate:modelValue\": _cache[36] || (_cache[36] = $event => temUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n \"left-icon\": \"description-o\",\n \"input-align\": \"center\",\n readonly: true,\n onClickLeftIcon: _cache[37] || (_cache[37] = $event => copyToken(temUserPassword.value))\n }, null, 8, [\"modelValue\"]), _hoisted_61, _createVNode(_component_van_field, {\n name: \"temShared\",\n readonly: true,\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temShared.value,\n \"onUpdate:modelValue\": _cache[38] || (_cache[38] = $event => temShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_62, _createVNode(_component_van_field, {\n readonly: true,\n name: \"temShow_user_info\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temShow_user_info.value,\n \"onUpdate:modelValue\": _cache[39] || (_cache[39] = $event => temShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_63, _createVNode(_component_van_field, {\n readonly: true,\n name: \"temPlus\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temPlus.value,\n \"onUpdate:modelValue\": _cache[40] || (_cache[40] = $event => temPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_64, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: setPoolToken.value,\n \"onUpdate:modelValue\": _cache[41] || (_cache[41] = $event => setPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_65, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refresh_token\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: useRefreshToken.value,\n \"onUpdate:modelValue\": _cache[42] || (_cache[42] = $event => useRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_66, _createVNode(_component_van_field, {\n modelValue: temToken.value,\n \"onUpdate:modelValue\": _cache[43] || (_cache[43] = $event => temToken.value = $event),\n label: \"Token的值\",\n type: \"textarea\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的Token(session或refresh_token)\",\n \"show-word-limit\": \"\",\n \"input-align\": \"center\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[44] || (_cache[44] = $event => copyToken(temToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 50\n }\n }, null, 8, [\"modelValue\"]), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_67, [_hoisted_68, _createVNode(_component_van_field, {\n modelValue: temAccessToken.value,\n \"onUpdate:modelValue\": _cache[45] || (_cache[45] = $event => temAccessToken.value = $event),\n label: \"access_token\",\n type: \"textarea\",\n maxlength: \"5000\",\n \"input-align\": \"center\",\n placeholder: \"请填写OpenAi的access_token\",\n \"show-word-limit\": \"\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[46] || (_cache[46] = $event => copyToken(temAccessToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 50\n }\n }, null, 8, [\"modelValue\"]), _hoisted_69, _createVNode(_component_van_field, {\n modelValue: temShareToken.value,\n \"onUpdate:modelValue\": _cache[47] || (_cache[47] = $event => temShareToken.value = $event),\n label: \"share_token\",\n type: \"textarea\",\n maxlength: \"200\",\n \"input-align\": \"center\",\n placeholder: \"请填写OpenAi的share_token\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[48] || (_cache[48] = $event => copyToken(temShareToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 50\n }\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true)]),\n _: 1\n })]),\n _: 1\n }), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_70, [_createElementVNode(\"div\", {\n ref_key: \"chart_show\",\n ref: chart_show,\n style: {\n \"width\": \"auto\",\n \"height\": \"300px\"\n }\n }, null, 512), _hoisted_71])) : _createCommentVNode(\"\", true)])]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_3.value,\n \"onUpdate:show\": _cache[64] || (_cache[64] = $event => show_3.value = $event),\n title: \"PandoraNext设置信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_72, [_createVNode(_component_van_form, {\n onSubmit: _cache[63] || (_cache[63] = $event => RequireSetting(pandoraNext))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_73, _createVNode(_component_van_field, {\n modelValue: isolated_conv_title.value,\n \"onUpdate:modelValue\": _cache[50] || (_cache[50] = $event => isolated_conv_title.value = $event),\n name: \"对话标题\",\n label: \"对话标题\",\n placeholder: \"隔离对话设置标题\"\n }, null, 8, [\"modelValue\"]), _hoisted_74, _createVNode(_component_van_field, {\n modelValue: bing.value,\n \"onUpdate:modelValue\": _cache[51] || (_cache[51] = $event => bing.value = $event),\n name: \"绑定IP和端口\",\n label: \"绑定IP和端口\",\n placeholder: \"绑定IP和端口(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_75, _createVNode(_component_van_field, {\n modelValue: custom_doh_host.value,\n \"onUpdate:modelValue\": _cache[52] || (_cache[52] = $event => custom_doh_host.value = $event),\n name: \"DoH主机名\",\n label: \"DoH主机名\",\n placeholder: \"配置自定义的DoH主机名(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_76, _createVNode(_component_van_field, {\n modelValue: timeout.value,\n \"onUpdate:modelValue\": _cache[53] || (_cache[53] = $event => timeout.value = $event),\n name: \"请求超时时间\",\n label: \"请求超时时间\",\n placeholder: \"请求超时时间(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_77, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享对话(选填)\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: public_share.value,\n \"onUpdate:modelValue\": _cache[54] || (_cache[54] = $event => public_share.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_78, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否配置证书\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: enabled.value,\n \"onUpdate:modelValue\": _cache[55] || (_cache[55] = $event => enabled.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), enabled.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_79, [_hoisted_80, _createVNode(_component_van_field, {\n modelValue: cert_file.value,\n \"onUpdate:modelValue\": _cache[56] || (_cache[56] = $event => cert_file.value = $event),\n name: \"证书文件\",\n label: \"证书文件\",\n placeholder: \"证书文件\"\n }, null, 8, [\"modelValue\"]), _hoisted_81, _createVNode(_component_van_field, {\n modelValue: key_file.value,\n \"onUpdate:modelValue\": _cache[57] || (_cache[57] = $event => key_file.value = $event),\n name: \"密钥文件\",\n label: \"密钥文件\",\n placeholder: \"密钥文件\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_82, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否禁用注册\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: disable_signup.value,\n \"onUpdate:modelValue\": _cache[58] || (_cache[58] = $event => disable_signup.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_83, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否自动打码\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: auto_conv_arkose.value,\n \"onUpdate:modelValue\": _cache[59] || (_cache[59] = $event => auto_conv_arkose.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_84, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"使用文件代理服务\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: proxy_file_service.value,\n \"onUpdate:modelValue\": _cache[60] || (_cache[60] = $event => proxy_file_service.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_85, _createVNode(_component_van_field, {\n modelValue: proxy_url.value,\n \"onUpdate:modelValue\": _cache[61] || (_cache[61] = $event => proxy_url.value = $event),\n name: \"代理服务URL\",\n label: \"代理服务URL\",\n placeholder: \"代理服务URL(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_86, _createVNode(_component_van_field, {\n modelValue: whitelist.value,\n \"onUpdate:modelValue\": _cache[62] || (_cache[62] = $event => whitelist.value = $event),\n name: \"白名单\",\n label: \"白名单\",\n placeholder: \"[]限制所有账号(默认为null)\"\n }, null, 8, [\"modelValue\"]), _hoisted_87]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_88, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_89]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_4.value,\n \"onUpdate:show\": _cache[76] || (_cache[76] = $event => show_4.value = $event),\n title: \"tokensTool设置信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_90, [_createVNode(_component_van_form, {\n onSubmit: _cache[75] || (_cache[75] = $event => RequireSetting(tokensTool))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_91, _createVNode(_component_van_field, {\n modelValue: loginUsername.value,\n \"onUpdate:modelValue\": _cache[65] || (_cache[65] = $event => loginUsername.value = $event),\n name: \"登录用户名\",\n label: \"登录用户名\",\n placeholder: \"tokensTool用户名\"\n }, null, 8, [\"modelValue\"]), _hoisted_92, _createVNode(_component_van_field, {\n modelValue: loginPassword.value,\n \"onUpdate:modelValue\": _cache[66] || (_cache[66] = $event => loginPassword.value = $event),\n name: \"登录密码\",\n label: \"登录密码\",\n placeholder: \"不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_93, _createVNode(_component_van_field, {\n modelValue: proxy_api_prefix.value,\n \"onUpdate:modelValue\": _cache[67] || (_cache[67] = $event => proxy_api_prefix.value = $event),\n name: \"proxy接口前缀\",\n label: \"proxy接口前缀\",\n placeholder: \"proxy模式接口后缀,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_94, _createVNode(_component_van_field, {\n modelValue: autoToken_url.value,\n \"onUpdate:modelValue\": _cache[68] || (_cache[68] = $event => autoToken_url.value = $event),\n name: \"proxy模式URL\",\n label: \"proxy模式URL\",\n placeholder: \"http(s)://(ip:port或者域名)/后缀,同公网服务器填default\"\n }, null, 8, [\"modelValue\"]), _hoisted_95, _createVNode(_component_van_field, {\n modelValue: setup_password.value,\n \"onUpdate:modelValue\": _cache[69] || (_cache[69] = $event => setup_password.value = $event),\n name: \"重载服务密码\",\n label: \"重载服务密码\",\n placeholder: \"PandoraNext重载服务密码,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_96, _createVNode(_component_van_field, {\n modelValue: site_password.value,\n \"onUpdate:modelValue\": _cache[70] || (_cache[70] = $event => site_password.value = $event),\n name: \"访问密码\",\n label: \"访问密码\",\n placeholder: \"PandoraNext访问密码,建议开启访问密码\",\n rules: [{\n validator: sitePasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_97, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: license_id.value,\n \"onUpdate:modelValue\": _cache[71] || (_cache[71] = $event => license_id.value = $event),\n name: \"验证licenseId\",\n label: \"验证licenseId\",\n placeholder: \"验证licenseId(github上拿到的license_id)\"\n }, null, 8, [\"modelValue\"]), _hoisted_98, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"tokensTool接口\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: isGetToken.value,\n \"onUpdate:modelValue\": _cache[72] || (_cache[72] = $event => isGetToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), isGetToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_99, [_hoisted_100, _createVNode(_component_van_field, {\n modelValue: getTokenPassword.value,\n \"onUpdate:modelValue\": _cache[73] || (_cache[73] = $event => getTokenPassword.value = $event),\n name: \"接口密码\",\n label: \"接口密码\",\n placeholder: \"tokensTool接口密码,用于获取tokens,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), _hoisted_101, _createVNode(_component_van_field, {\n modelValue: containerName.value,\n \"onUpdate:modelValue\": _cache[74] || (_cache[74] = $event => containerName.value = $event),\n name: \"监管容器名\",\n label: \"监管容器名\",\n placeholder: \"监管运行的容器名或文件名,默认为PandoraNext\",\n rules: [{\n required: true,\n message: '请填写监管的容器名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_102]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_103, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_104]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_5.value,\n \"onUpdate:show\": _cache[85] || (_cache[85] = $event => show_5.value = $event),\n title: \"PandoraNext验证信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_105, [_createVNode(_component_van_form, {\n onSubmit: _cache[84] || (_cache[84] = $event => RequireSetting(validation))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_106, _createVNode(_component_van_field, {\n modelValue: provider.value,\n \"onUpdate:modelValue\": _cache[77] || (_cache[77] = $event => provider.value = $event),\n name: \"验证码提供商\",\n label: \"验证码提供商\",\n placeholder: \"验证码提供商\"\n }, null, 8, [\"modelValue\"]), _hoisted_107, _createVNode(_component_van_field, {\n modelValue: site_key.value,\n \"onUpdate:modelValue\": _cache[78] || (_cache[78] = $event => site_key.value = $event),\n name: \"验证码网站参数\",\n label: \"验证码网站参数\",\n placeholder: \"验证码网站参数\"\n }, null, 8, [\"modelValue\"]), _hoisted_108, _createVNode(_component_van_field, {\n modelValue: site_secret.value,\n \"onUpdate:modelValue\": _cache[79] || (_cache[79] = $event => site_secret.value = $event),\n name: \"验证码API Key\",\n label: \"验证码API Key\",\n placeholder: \"验证码API Key\"\n }, null, 8, [\"modelValue\"]), _hoisted_109, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否全站密码登录页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: site_login.value,\n \"onUpdate:modelValue\": _cache[80] || (_cache[80] = $event => site_login.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_110, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在设置登录页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: setup_login.value,\n \"onUpdate:modelValue\": _cache[81] || (_cache[81] = $event => setup_login.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_111, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在输入用户名页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: oai_username.value,\n \"onUpdate:modelValue\": _cache[82] || (_cache[82] = $event => oai_username.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_112, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在输入密码页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: oai_password.value,\n \"onUpdate:modelValue\": _cache[83] || (_cache[83] = $event => oai_password.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_113]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_114, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_115]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_el_dialog, {\n modelValue: show_6.value,\n \"onUpdate:modelValue\": _cache[89] || (_cache[89] = $event => show_6.value = $event),\n title: \"pool_token列表\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_116, [_createVNode(_component_el_icon, {\n onClick: _cache[86] || (_cache[86] = $event => copyToken(pandoraNext_outUrl.value + proxy_api_prefix.value + '/v1/chat/completions'))\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 1\n }), _createVNode(_component_h10, {\n style: {\n \"white-space\": \"nowrap\",\n \"overflow\": \"hidden\",\n \"text-overflow\": \"ellipsis\"\n }\n }, {\n default: _withCtx(() => [_createTextVNode(\" API地址:\" + _toDisplayString(pandoraNext_outUrl.value) + _toDisplayString(proxy_api_prefix.value) + \"/v1/chat/completions \", 1)]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_117, [_createVNode(_unref(ElTable), {\n \"row-class-name\": poolRowClassName,\n data: poolData.value,\n onSelectionChange: poolSelectionChange,\n ref_key: \"multipleTableRefPool\",\n ref: multipleTableRefPool\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n type: \"selection\",\n width: \"45\"\n }), _createVNode(_component_el_table_column, {\n prop: \"intoOneApi\",\n label: \"pool_token名称\",\n sortable: \"\",\n \"min-width\": \"170\",\n \"default-sort\": {\n prop: 'poolTime',\n prop: 'intoOneApi'\n }\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_118, [scope.row.intoOneApi == true && scope.row.poolOneApi_models.includes('gpt-4') ? (_openBlock(), _createElementBlock(\"div\", _hoisted_119, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_120]),\n _: 1\n })])) : scope.row.intoOneApi == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_121, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_122]),\n _: 1\n })])) : (_openBlock(), _createElementBlock(\"div\", _hoisted_123, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_124]),\n _: 1\n })])), _createElementVNode(\"span\", _hoisted_125, _toDisplayString(scope.row.poolName), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"pool_token值\",\n \"min-width\": \"235\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_126, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.poolToken)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_127, _toDisplayString(scope.row.poolToken), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"使用token名集合\",\n \"min-width\": \"165\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(scope.row.shareTokens), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_hoisted_128]),\n _: 1\n })]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"poolTime\",\n label: \"更新时间\",\n prop: \"poolTime\",\n sortable: \"\",\n \"min-width\": \"180\"\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n \"min-width\": \"355\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => showPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"warning\",\n onClick: $event => verifySimplyPoolToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"检验\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deletePoolToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"success\",\n onClick: $event => reNewPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"刷新\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => reviewPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"更换\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"])]), _createElementVNode(\"div\", _hoisted_129, [_createVNode(_component_el_select_group, {\n class: \"pool-button\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: buttonPoolValue.value,\n \"onUpdate:modelValue\": _cache[87] || (_cache[87] = $event => buttonPoolValue.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"请选择批量操作\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPool, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolValue,\n label: item.label,\n value: item.buttonPoolValue\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_button, {\n onClick: _cache[88] || (_cache[88] = $event => selectPoolChoice(buttonPoolValue.value))\n }, {\n default: _withCtx(() => [_hoisted_130]),\n _: 1\n })]),\n _: 1\n })]), _hoisted_131]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_7.value,\n \"onUpdate:modelValue\": _cache[93] || (_cache[93] = $event => show_7.value = $event),\n title: \"PandoraNext余额\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_132, [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_133, _createVNode(_component_van_field, {\n modelValue: pandoraUsage.value,\n \"onUpdate:modelValue\": _cache[90] || (_cache[90] = $event => pandoraUsage.value = $event),\n name: \"PandoraNext用量\",\n label: \"PandoraNext用量\",\n placeholder: \"PandoraNext用量\"\n }, null, 8, [\"modelValue\"]), _hoisted_134, _createVNode(_component_van_field, {\n modelValue: pandoraIp.value,\n \"onUpdate:modelValue\": _cache[91] || (_cache[91] = $event => pandoraIp.value = $event),\n name: \"绑定IP\",\n label: \"绑定IP\",\n placeholder: \"绑定IP\"\n }, null, 8, [\"modelValue\"]), _hoisted_135, _createVNode(_component_van_field, {\n modelValue: pandoraTime.value,\n \"onUpdate:modelValue\": _cache[92] || (_cache[92] = $event => pandoraTime.value = $event),\n name: \"重置时间\",\n label: \"重置时间\",\n placeholder: \"重置时间\"\n }, null, 8, [\"modelValue\"]), _hoisted_136]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_van_dialog, {\n show: show_8.value,\n \"onUpdate:show\": _cache[101] || (_cache[101] = $event => show_8.value = $event),\n title: \"定时刷新&PandoraNext网址\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_137, [_createVNode(_component_van_form, {\n onSubmit: _cache[100] || (_cache[100] = $event => RequireAutoUpdate())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_138, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否自动刷新session_token\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: auto_updateSession.value,\n \"onUpdate:modelValue\": _cache[94] || (_cache[94] = $event => auto_updateSession.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), auto_updateSession.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_139, [_hoisted_140, _createVNode(_component_van_field, {\n modelValue: auto_updateTime.value,\n \"onUpdate:modelValue\": _cache[95] || (_cache[95] = $event => auto_updateTime.value = $event),\n name: \"自动刷新session的间隔天数\",\n label: \"自动刷新session的间隔天数\",\n \"input-align\": \"right\",\n placeholder: \"自动刷新session的时间 (天为单位)\"\n }, null, 8, [\"modelValue\"]), _hoisted_141, _createVNode(_component_van_field, {\n modelValue: auto_updateNumber.value,\n \"onUpdate:modelValue\": _cache[96] || (_cache[96] = $event => auto_updateNumber.value = $event),\n name: \"自动刷新session的个数\",\n label: \"自动刷新session的个数\",\n \"input-align\": \"right\",\n placeholder: \"自动刷新session的个数 (个)\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_142, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: pandoraNext_outUrl.value,\n \"onUpdate:modelValue\": _cache[97] || (_cache[97] = $event => pandoraNext_outUrl.value = $event),\n name: \"PandoraNext的公网访问地址\",\n label: \"PandoraNext的公网访问地址\",\n placeholder: \"PandoraNext的公网访问地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_143, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: oneAPi_outUrl.value,\n \"onUpdate:modelValue\": _cache[98] || (_cache[98] = $event => oneAPi_outUrl.value = $event),\n name: \"oneApi的公网访问地址\",\n label: \"oneApi的公网访问地址\",\n \"input-align\": \"right\",\n placeholder: \"oneApi的公网访问地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_144, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: oneAPi_intoToken.value,\n \"onUpdate:modelValue\": _cache[99] || (_cache[99] = $event => oneAPi_intoToken.value = $event),\n name: \"oneApi的系统令牌\",\n label: \"oneApi的系统令牌\",\n \"input-align\": \"right\",\n placeholder: \"oneApi的系统令牌\"\n }, null, 8, [\"modelValue\"]), _hoisted_145]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_146, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_147]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_9.value,\n \"onUpdate:show\": _cache[109] || (_cache[109] = $event => show_9.value = $event),\n title: \"✨添加pool_token信息\",\n width: \"95vw\",\n \"align-center\": \"\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_148, [_createVNode(_component_van_form, {\n onSubmit: addSelectPoolToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_field, {\n modelValue: poolNameValue.value,\n \"onUpdate:modelValue\": _cache[102] || (_cache[102] = $event => poolNameValue.value = $event),\n name: \"pool_token名\",\n label: \"pool_token名\",\n \"input-align\": \"right\",\n placeholder: \"3到10个字符\",\n rules: [{\n validator: poolNameValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_149, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[103] || (_cache[103] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_150, [_hoisted_151, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[104] || (_cache[104] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\"\n }, null, 8, [\"modelValue\"]), _createElementVNode(\"div\", _hoisted_152, [_hoisted_153, _hoisted_154, _createVNode(_component_el_form_item, {\n label: \"选择模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addPoolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[105] || (_cache[105] = $event => addPoolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n placeholder: \"填写或选择模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolModel,\n label: item.label,\n value: item.buttonPoolModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_155, _createVNode(_component_el_form_item, {\n label: \"重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: addPoolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[106] || (_cache[106] = $event => addPoolModel_mapping.value = $event),\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_156, _createVNode(_component_van_field, {\n name: \"checkboxGroup\",\n label: \"在one-api的组别\",\n \"input-align\": \"right\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: groupChecked.value,\n \"onUpdate:modelValue\": _cache[107] || (_cache[107] = $event => groupChecked.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_157, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_158, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_159, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[108] || (_cache[108] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义PandoraNext地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_160])) : _createCommentVNode(\"\", true)]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_161, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_162]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_el_dialog, {\n modelValue: show_10.value,\n \"onUpdate:modelValue\": _cache[110] || (_cache[110] = $event => show_10.value = $event),\n title: \"tokensTool登录日志\",\n \"align-center\": \"\",\n width: \"90%\",\n \"close-on-click-modal\": false,\n class: \"showLoginDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_163, [_createVNode(_unref(ElTable), {\n \"row-class-name\": poolRowClassName,\n data: loginData.value\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n prop: \"ipAddress\",\n label: \"登录地区\",\n \"min-width\": \"160\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_164, [_createElementVNode(\"span\", _hoisted_165, _toDisplayString(scope.row.ipAddress), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"登录IP\",\n \"min-width\": \"155\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_166, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.poolToken)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_167, _toDisplayString(scope.row.requestIp), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"成功/失败\",\n \"min-width\": \"105\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_168, [_createElementVNode(\"span\", _hoisted_169, _toDisplayString(scope.row.inRequestNumber) + \"/\" + _toDisplayString(scope.row.outRequestNumber), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"lastLoginTime\",\n label: \"登录时间\",\n prop: \"lastLoginTime\",\n \"min-width\": \"180\"\n })]),\n _: 1\n }, 8, [\"data\"])]), _hoisted_170]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_van_dialog, {\n show: show_11.value,\n \"onUpdate:show\": _cache[119] || (_cache[119] = $event => show_11.value = $event),\n title: \"📌修改pool_token信息\",\n width: \"95vw\",\n \"align-center\": \"\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_171, [_createVNode(_component_van_form, {\n onSubmit: requirePoolToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_172, _createElementVNode(\"div\", _hoisted_173, [_createVNode(_component_el_form_item, {\n label: \"poolToken名\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: poolName.value,\n \"onUpdate:modelValue\": _cache[111] || (_cache[111] = $event => poolName.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择要修改的pool名\",\n onChange: handlePoolNameChange,\n class: \"selectPool_token\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(poolData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.poolName,\n label: item.poolName,\n value: item.poolName,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_174, _createVNode(_component_van_field, {\n modelValue: temPool_token.value,\n \"onUpdate:modelValue\": _cache[112] || (_cache[112] = $event => temPool_token.value = $event),\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n name: \"pool_token的值\",\n label: \"pool_token的值\",\n \"input-align\": \"right\",\n placeholder: \"pool_token的值(不改则不变)\"\n }, null, 8, [\"modelValue\"]), _hoisted_175, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[113] || (_cache[113] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_176, intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_177, [_hoisted_178, _createElementVNode(\"div\", _hoisted_179, [_createVNode(_component_el_form_item, {\n label: \"选择模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: poolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[114] || (_cache[114] = $event => poolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"填写或选择模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolModel,\n label: item.label,\n value: item.buttonPoolModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_180, _createVNode(_component_el_form_item, {\n label: \"重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: poolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[115] || (_cache[115] = $event => poolModel_mapping.value = $event),\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_181, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[116] || (_cache[116] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_182, _createVNode(_component_van_field, {\n name: \"checkboxGroup\",\n label: \"在one-api的组别\",\n \"input-align\": \"right\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: temGroupChecked.value,\n \"onUpdate:modelValue\": _cache[117] || (_cache[117] = $event => temGroupChecked.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_183, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_184, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_185, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[118] || (_cache[118] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义PandoraNext地址\",\n rules: [{\n required: true,\n message: '请填写自定义PandoraNext地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_186])) : _createCommentVNode(\"\", true)]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_187, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_188]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_el_dialog, {\n modelValue: show_12.value,\n \"onUpdate:modelValue\": _cache[120] || (_cache[120] = $event => show_12.value = $event),\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", {\n ref_key: \"chart\",\n ref: chart,\n style: {\n \"width\": \"auto\",\n \"height\": \"350px\"\n }\n }, null, 512)]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_13.value,\n \"onUpdate:modelValue\": _cache[124] || (_cache[124] = $event => show_13.value = $event),\n title: \"OneAPI里的share_token列表\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_search, {\n modelValue: valueShare.value,\n \"onUpdate:modelValue\": _cache[122] || (_cache[122] = $event => valueShare.value = $event),\n \"show-action\": \"\",\n clearable: \"\",\n shape: \"round\",\n placeholder: \"请输入搜索share_token名称\",\n onSearch: _cache[123] || (_cache[123] = $event => onSearchShareToken(valueShare.value)),\n class: \"onShareToken\"\n }, {\n action: _withCtx(() => [_createVNode(_component_el_button, {\n onClick: _cache[121] || (_cache[121] = $event => show_14.value = true)\n }, {\n default: _withCtx(() => [_hoisted_189]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"]), _createElementVNode(\"div\", _hoisted_190, [_createVNode(_unref(ElTable), {\n data: shareData.value,\n \"row-class-name\": poolRowClassName\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n label: \"在OneAPI的名称\",\n prop: \"oneApi_name\",\n width: \"180\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_191, [_createElementVNode(\"span\", _hoisted_192, _toDisplayString(scope.row.oneApi_name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"来源Token名\",\n \"min-width\": \"135\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_193, [_createElementVNode(\"span\", _hoisted_194, _toDisplayString(scope.row.token_name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"share_token值\",\n \"min-width\": \"355\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_195, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.token_value)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_196, _toDisplayString(scope.row.token_value), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"shareTime\",\n label: \"更新时间\",\n prop: \"shareTime\",\n \"min-width\": \"170\"\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n \"min-width\": \"235\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => showShareToken(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => reviewShare(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"修改\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deleteShareToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"])]), _hoisted_197]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_14.value,\n \"onUpdate:modelValue\": _cache[132] || (_cache[132] = $event => show_14.value = $event),\n title: \"添加shareToken进one_api\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_198, [_createVNode(_component_van_form, {\n onSubmit: addShareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\",\n class: \"groupCell\"\n }, {\n default: _withCtx(() => [_hoisted_199, _createVNode(_component_van_field, {\n modelValue: addOneApi_name.value,\n \"onUpdate:modelValue\": _cache[125] || (_cache[125] = $event => addOneApi_name.value = $event),\n name: \"oneApi中渠道名称\",\n label: \"oneApi中渠道名称\",\n \"input-align\": \"right\",\n placeholder: \"oneApi中渠道名称\",\n rules: [{\n required: true,\n message: '请填写oneApi中渠道名称'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_200, _createElementVNode(\"div\", _hoisted_201, [_createVNode(_component_el_form_item, {\n label: \"Token名\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addToken_name.value,\n \"onUpdate:modelValue\": _cache[126] || (_cache[126] = $event => addToken_name.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择要添加的Token名\",\n onChange: handleShareNameChange,\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(filteredTableData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.name,\n label: item.name,\n value: item.name,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_202, _createElementVNode(\"div\", _hoisted_203, [_createVNode(_component_el_form_item, {\n label: \"选择模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addOneApi_models.value,\n \"onUpdate:modelValue\": _cache[127] || (_cache[127] = $event => addOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"填写或选择模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_204, _createVNode(_component_el_form_item, {\n label: \"重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: addModel_mapping.value,\n \"onUpdate:modelValue\": _cache[128] || (_cache[128] = $event => addModel_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_205, _createVNode(_component_van_field, {\n modelValue: addPriority.value,\n \"onUpdate:modelValue\": _cache[129] || (_cache[129] = $event => addPriority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n placeholder: \"渠道优先级(默认为0)\",\n \"input-align\": \"center\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_206, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"addOneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: addOneApi_groups.value,\n \"onUpdate:modelValue\": _cache[130] || (_cache[130] = $event => addOneApi_groups.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_207, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_208, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_209, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: addOneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[131] || (_cache[131] = $event => addOneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_210]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_211, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_15.value,\n \"onUpdate:modelValue\": _cache[149] || (_cache[149] = $event => show_15.value = $event),\n title: \"🔎查看share_token在OneAPI信息\",\n \"align-center\": \"\",\n width: \"95vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_212, [_createVNode(_component_van_form, {\n onSubmit: _ctx.shareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\",\n class: \"groupCell\"\n }, {\n default: _withCtx(() => [_hoisted_213, _createVNode(_component_van_field, {\n modelValue: oneApi_name.value,\n \"onUpdate:modelValue\": _cache[133] || (_cache[133] = $event => oneApi_name.value = $event),\n name: \"OneAPI中渠道名称\",\n label: \"OneAPI中渠道名称\",\n placeholder: \"OneAPI中渠道名称\",\n \"left-icon\": \"description-o\",\n readonly: true,\n \"input-align\": \"right\",\n onClickLeftIcon: _cache[134] || (_cache[134] = $event => copyToken(oneApi_name.value)),\n rules: [{\n required: true,\n message: '请填写OneAPI中渠道名称'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_214, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: token_value.value,\n \"onUpdate:modelValue\": _cache[135] || (_cache[135] = $event => token_value.value = $event),\n name: \"share_token的值\",\n label: \"share_token的值\",\n \"input-align\": \"right\",\n placeholder: \"share_token的值\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[136] || (_cache[136] = $event => copyToken(token_value.value))\n }, null, 8, [\"modelValue\"]), _hoisted_215, _createVNode(_component_van_field, {\n modelValue: token_name.value,\n \"onUpdate:modelValue\": _cache[137] || (_cache[137] = $event => token_name.value = $event),\n name: \"share_token的来源\",\n label: \"share_token的来源\",\n \"input-align\": \"right\",\n placeholder: \"share_token的值\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[138] || (_cache[138] = $event => copyToken(token_name.value))\n }, null, 8, [\"modelValue\"]), _hoisted_216, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: temOneApi_models.value,\n \"onUpdate:modelValue\": _cache[139] || (_cache[139] = $event => temOneApi_models.value = $event),\n name: \"模型\",\n label: \"模型\",\n \"input-align\": \"right\",\n placeholder: \"加入的模型\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[140] || (_cache[140] = $event => copyToken(temOneApi_models.value))\n }, null, 8, [\"modelValue\"]), _createElementVNode(\"div\", _hoisted_217, [_hoisted_218, _createVNode(_component_el_form_item, {\n readonly: true,\n type: \"textarea\",\n label: \"🧩重定向\",\n autosize: \"\",\n prop: \"addModel_mapping\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: model_mapping.value,\n \"onUpdate:modelValue\": _cache[141] || (_cache[141] = $event => model_mapping.value = $event),\n type: \"textarea\",\n autosize: \"\",\n disabled: \"\",\n placeholder: temModel_mapping,\n onClickLeftIcon: _cache[142] || (_cache[142] = $event => copyToken(model_mapping.value))\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_219, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[143] || (_cache[143] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n placeholder: \"渠道优先级(默认为0)\",\n \"left-icon\": \"description-o\",\n readonly: true,\n \"input-align\": \"right\",\n onClickLeftIcon: _cache[144] || (_cache[144] = $event => copyToken(priority.value)),\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_220, _createVNode(_component_van_field, {\n type: \"textarea\",\n autoSize: \"\",\n modelValue: temOneApi_groups.value,\n \"onUpdate:modelValue\": _cache[145] || (_cache[145] = $event => temOneApi_groups.value = $event),\n name: \"加入的组别\",\n label: \"加入的组别\",\n \"input-align\": \"right\",\n placeholder: \"加入的组别\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[146] || (_cache[146] = $event => copyToken(temOneApi_groups.value))\n }, null, 8, [\"modelValue\"]), _hoisted_221, _createVNode(_component_van_field, {\n type: \"textarea\",\n autoSize: \"\",\n modelValue: oneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[147] || (_cache[147] = $event => oneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[148] || (_cache[148] = $event => copyToken(oneApi_baseUrl.value)),\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_222]),\n _: 1\n })]),\n _: 1\n }, 8, [\"onSubmit\"])])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_16.value,\n \"onUpdate:modelValue\": _cache[156] || (_cache[156] = $event => show_16.value = $event),\n title: \"📌修改share_token的信息\",\n \"align-center\": \"\",\n width: \"95vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_223, [_createVNode(_component_van_form, {\n onSubmit: requireShareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\",\n class: \"groupCell\"\n }, {\n default: _withCtx(() => [_hoisted_224, _createElementVNode(\"div\", _hoisted_225, [_createVNode(_component_el_form_item, {\n label: \"Token名\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: token_name.value,\n \"onUpdate:modelValue\": _cache[150] || (_cache[150] = $event => token_name.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择添加的Token名称\",\n onChange: handleShareNameChange,\n class: \"selectPool_token\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(filteredTableData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.name,\n label: item.name,\n value: item.name,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_226, _createElementVNode(\"div\", _hoisted_227, [_createVNode(_component_el_form_item, {\n label: \"选择模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: oneApi_models.value,\n \"onUpdate:modelValue\": _cache[151] || (_cache[151] = $event => oneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"填写或选择模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_228, _createVNode(_component_el_form_item, {\n label: \"重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: model_mapping.value,\n \"onUpdate:modelValue\": _cache[152] || (_cache[152] = $event => model_mapping.value = $event),\n \"label-position\": \"top\",\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_229, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[153] || (_cache[153] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_230, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"oneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: oneApi_groups.value,\n \"onUpdate:modelValue\": _cache[154] || (_cache[154] = $event => oneApi_groups.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_231, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_232, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_233, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: oneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[155] || (_cache[155] = $event => oneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_234]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_235, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_17.value,\n \"onUpdate:modelValue\": _cache[170] || (_cache[170] = $event => show_17.value = $event),\n title: \"🔎查看pool_token的信息\",\n \"align-center\": \"\",\n width: \"95vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_236, [_createVNode(_component_van_form, null, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\",\n class: \"groupCell\"\n }, {\n default: _withCtx(() => [_hoisted_237, _createVNode(_component_van_field, {\n modelValue: temPoolName.value,\n \"onUpdate:modelValue\": _cache[157] || (_cache[157] = $event => temPoolName.value = $event),\n name: \"pool_token名称\",\n label: \"pool_token名称\",\n placeholder: \"pool_token名称\",\n readonly: true,\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[158] || (_cache[158] = $event => copyToken(temPoolName.value)),\n \"input-align\": \"right\"\n }, null, 8, [\"modelValue\"]), _hoisted_238, _createVNode(_component_van_field, {\n modelValue: shareTokens.value,\n \"onUpdate:modelValue\": _cache[159] || (_cache[159] = $event => shareTokens.value = $event),\n label: \"使用token名集合\",\n type: \"textarea\",\n placeholder: \"使用token名集合\",\n \"left-icon\": \"description-o\",\n readonly: true,\n \"input-align\": \"right\",\n onClickLeftIcon: _cache[160] || (_cache[160] = $event => copyToken(temAccessToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"]), _hoisted_239, _createVNode(_component_van_field, {\n modelValue: temPool_token.value,\n \"onUpdate:modelValue\": _cache[161] || (_cache[161] = $event => temPool_token.value = $event),\n readonly: true,\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n name: \"pool_token的值\",\n label: \"pool_token的值\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[162] || (_cache[162] = $event => copyToken(temPool_token.value)),\n placeholder: \"pool_token的值(不改则不变)\"\n }, null, 8, [\"modelValue\"]), _hoisted_240, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[163] || (_cache[163] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_241, intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_242, [_hoisted_243, _createElementVNode(\"div\", _hoisted_244, [_createVNode(_component_el_form_item, {\n disabled: \"\",\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n disabled: \"\",\n modelValue: poolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[164] || (_cache[164] = $event => poolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolModel,\n label: item.label,\n value: item.buttonPoolModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_245]),\n _: 1\n }), _hoisted_246, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: poolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[165] || (_cache[165] = $event => poolModel_mapping.value = $event),\n type: \"textarea\",\n disabled: \"\",\n filterable: \"\",\n autosize: \"\",\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_247, _createVNode(_component_van_field, {\n readonly: true,\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[166] || (_cache[166] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_248, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"oneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: temGroupChecked.value,\n \"onUpdate:modelValue\": _cache[167] || (_cache[167] = $event => temGroupChecked.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_249, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n disabled: \"\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_250, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n disabled: \"\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n disabled: \"\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_251, _createVNode(_component_van_field, {\n readonly: true,\n type: \"textarea\",\n autoSize: \"\",\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[168] || (_cache[168] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[169] || (_cache[169] = $event => copyToken(oneApi_pandoraUrl.value)),\n placeholder: \"自定义PandoraNext地址\",\n rules: [{\n required: true,\n message: '请填写自定义PandoraNext地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_252])) : _createCommentVNode(\"\", true)]),\n _: 1\n })]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"])], 64);\n };\n }\n});","/* unplugin-vue-components disabled */import script from \"./homeIphone.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./homeIphone.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./homeIphone.vue?vue&type=style&index=0&id=d54bf1e2&lang=css\"\n\nconst __exports__ = script;\n\nexport default __exports__"],"names":["_hoisted_1","class","_hoisted_2","_","name","content","_hoisted_3","style","src","_hoisted_4","_hoisted_5","_hoisted_6","href","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","key","_hoisted_26","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31","_hoisted_32","_hoisted_33","_hoisted_34","_hoisted_35","_hoisted_36","_hoisted_37","_hoisted_38","_hoisted_39","_hoisted_40","_hoisted_41","_hoisted_42","_hoisted_43","_hoisted_44","_hoisted_45","_hoisted_46","_hoisted_47","_hoisted_48","_hoisted_49","_hoisted_50","_hoisted_51","_hoisted_52","_hoisted_53","_hoisted_54","_hoisted_55","_hoisted_56","_hoisted_57","_hoisted_58","_hoisted_59","_hoisted_60","_hoisted_61","_hoisted_62","_hoisted_63","_hoisted_64","_hoisted_65","_hoisted_66","_hoisted_67","_hoisted_68","_hoisted_69","_hoisted_70","_hoisted_71","_hoisted_72","_hoisted_73","_hoisted_74","_hoisted_75","_hoisted_76","_hoisted_77","_hoisted_78","_hoisted_79","_hoisted_80","_hoisted_81","_hoisted_82","_hoisted_83","_hoisted_84","_hoisted_85","_hoisted_86","_hoisted_87","_hoisted_88","_hoisted_89","_hoisted_90","_hoisted_91","_hoisted_92","_hoisted_93","_hoisted_94","_hoisted_95","_hoisted_96","_hoisted_97","_hoisted_98","_hoisted_99","_hoisted_100","_hoisted_101","_hoisted_102","_hoisted_103","_hoisted_104","_hoisted_105","_hoisted_106","_hoisted_107","_hoisted_108","_hoisted_109","_hoisted_110","_hoisted_111","_hoisted_112","_hoisted_113","_hoisted_114","_hoisted_115","_hoisted_116","_hoisted_117","_hoisted_118","_hoisted_119","_hoisted_120","_hoisted_121","_hoisted_122","_hoisted_123","_hoisted_124","_hoisted_125","_hoisted_126","_hoisted_127","_hoisted_128","_hoisted_129","_hoisted_130","_hoisted_131","_hoisted_132","_hoisted_133","_hoisted_134","_hoisted_135","_hoisted_136","_hoisted_137","_hoisted_138","_hoisted_139","_hoisted_140","_hoisted_141","_hoisted_142","_hoisted_143","_hoisted_144","_hoisted_145","_hoisted_146","_hoisted_147","_hoisted_148","_hoisted_149","_hoisted_150","_hoisted_151","_hoisted_152","_hoisted_153","_hoisted_154","_hoisted_155","_hoisted_156","_hoisted_157","_hoisted_158","_hoisted_159","_hoisted_160","_hoisted_161","_hoisted_162","_hoisted_163","_hoisted_164","_hoisted_165","_hoisted_166","_hoisted_167","_hoisted_168","_hoisted_169","_hoisted_170","_hoisted_171","_hoisted_172","_hoisted_173","_hoisted_174","_hoisted_175","_hoisted_176","_hoisted_177","_hoisted_178","_hoisted_179","_hoisted_180","_hoisted_181","_hoisted_182","_hoisted_183","_hoisted_184","_hoisted_185","_hoisted_186","_hoisted_187","_hoisted_188","_hoisted_189","_hoisted_190","_hoisted_191","_hoisted_192","_hoisted_193","_hoisted_194","_hoisted_195","_hoisted_196","_hoisted_197","_hoisted_198","_hoisted_199","_hoisted_200","_hoisted_201","_hoisted_202","_hoisted_203","_hoisted_204","_hoisted_205","_hoisted_206","_hoisted_207","_hoisted_208","_hoisted_209","_hoisted_210","_hoisted_211","_hoisted_212","_hoisted_213","_hoisted_214","_hoisted_215","_hoisted_216","_hoisted_217","_hoisted_218","_hoisted_219","_hoisted_220","_hoisted_221","_hoisted_222","_hoisted_223","_hoisted_224","_hoisted_225","_hoisted_226","_hoisted_227","_hoisted_228","_hoisted_229","_hoisted_230","_hoisted_231","_hoisted_232","_hoisted_233","_hoisted_234","_hoisted_235","_hoisted_236","_hoisted_237","_hoisted_238","_hoisted_239","_hoisted_240","_hoisted_241","_hoisted_242","_hoisted_243","_hoisted_244","_hoisted_245","_hoisted_246","_hoisted_247","_hoisted_248","_hoisted_249","_hoisted_250","_hoisted_251","_hoisted_252","temModel_mapping","pandoraNext","tokensTool","validation","__name","setup","__props","path","window","location","pathname","parts","split","prefix","length","temGroupChecked","groupChecked","multipleTableRefPool","multipleSelection","multipleSelectionPool","handleSelectionChange","val","value","poolSelectionChange","router","show","show_1","show_2","show_3","show_4","show_5","show_6","show_7","show_8","show_9","show_10","show_11","show_12","show_13","show_14","show_15","show_16","show_17","buttonValue","options","label","optionsModel","buttonModel","optionsPoolModel","buttonPoolModel","buttonPoolValue","optionsPool","proxy_api_prefix","isolated_conv_title","bing","timeout","proxy_url","public_share","disable_signup","auto_conv_arkose","proxy_file_service","custom_doh_host","enabled","cert_file","key_file","site_password","setup_password","loginUsername","loginPassword","license_id","isGetToken","getTokenPassword","containerName","autoToken_url","whitelist","provider","site_key","site_secret","site_login","setup_login","oai_username","oai_password","auto_updateSession","auto_updateTime","auto_updateNumber","pandoraNext_outUrl","oneAPi_outUrl","oneAPi_intoToken","poolName","temPoolName","shareTokens","poolTime","poolNameValue","intoOneApi","poolModel_mapping","poolOneApi_models","addPoolOneApi_models","addPoolModel_mapping","oneApi_pandoraUrl","priority","temPool_token","customValidator","regex","test","sitePasswordValidator","poolNameValidator","addPasswordValidator","addSetPoolToken","setPoolToken","temName","temToken","temAccessToken","temShareToken","temUsername","temUserPassword","temShared","temShow_user_info","temPlus","temPassword","useRefreshToken","temCheckSession","tableData","poolData","shareData","loginData","addName","addUsername","addUserPassword","addTokenValue","addShared","addShow_user_info","addPlus","addUseRefreshToken","addPassword","addOneApi_name","addToken_name","addOneApi_baseUrl","addOneApi_models","addModel_mapping","addOneApi_groups","addPriority","innerHeight","valueShare","token","localStorage","getItem","replace","headers","Authorization","fetchLoginToken","async","axios","post","then","response","data","code","console","error","catch","onSearch","getWebToken","getToken","includes","getAPIToken","onSearchShareToken","getShare","get","data_token","Array","isArray","resUsers","map","item","username","userPassword","access_token","share_token","shared","auto_shared","show_user_info","password","plus","updateTime","checkSession","filteredUsers","filter","user","getLoginData","resLogins","ipAddress","requestIp","outRequestNumber","inRequestNumber","lastLoginTime","getPool","responsePool","pool_token","resPools","poolToken","checkPool","loadingInstance","service","fullscreen","responseShare","resShares","oneApi_name","token_name","token_value","oneApi_baseUrl","oneApi_models","model_mapping","oneApi_groups","shareTime","close","getSetting","tls","endsWith","fetchDataAndFillForm","alert","confirmButtonText","callback","action","type","message","getSelectedData","selectedData","addSelectPoolToken","names","userData","JSON","parse","e","addPoolToken","toString","fetch","method","body","stringify","json","msg","handlePoolNameChange","selectedItem","find","handleShareNameChange","filteredTableData","requirePoolToken","log","addShareToken","pandoraUsage","innerWidth","Promise","all","current","total","tableRowClassName","row","poolRowClassName","redirectToExternalLink","open","redirectPandoraNextShare","url","charAt","requirePandoraNextLink","requireTokensToolLink","activeIndex","temRequireToken","handleSelect","keyPath","addToken","onAddToken","now","Date","formattedTime","getFullYear","getMonth","padStart","getDate","getHours","getMinutes","getSeconds","api","success","chart_show","showData","usageHeader","usageData","modelData","usage","startsWith","push","myChart_show","echarts","option","title","text","textStyle","fontSize","color","left","top","tooltip","legend","xAxis","yAxis","series","barWidth","itemStyle","params","colorList","dataIndex","setOption","temOneApi_models","temOneApi_groups","showShareToken","previousSetpoolToken","previousUseRefreshToken","previousToken","handleEdit","index","onRequireSetting","RequireSetting","setting","RequireAutoUpdate","RequireToken","confirm","cancelButtonText","openPandora","closePandora","AgainPandora","reloadPandora","pandoraIp","pandoraTime","getPandoraNext","ip","currentTime","futureTime","getTime","ttl","year","month","day","hours","minutes","seconds","updateAllShareToken","reNewMsg","dangerouslyUseHTMLString","reNew","ok","Error","reNewPool","reviewShare","requireShareToken","requireShare","review","reviewPool","deletePoolToken","verifySimplyPoolToken","deleteToken","put","deleteShareToken","formatDate","nowDay","timeDay","parseISO","daysDiff","differenceInDays","Math","ceil","logout","removeItem","getPoolToken","getShareToken","getLogin","copyToken","textarea","document","createElement","appendChild","select","execCommand","removeChild","selectChoice","count","forEach","showPool","selectPoolChoice","selectedPoolData","temPoolData","chart","getUsage","model","myChart","_ctx","_cache","_component_van_icon","_component_el_menu_item","_component_el_sub_menu","_component_el_menu","_component_van_button","_component_el_page_header","_component_van_search","_component_el_table_column","_component_el_button","_component_el_tag","_component_el_popover","_component_el_option","_component_el_select","_component_van_field","_component_van_switch","_component_van_cell_group","_component_van_form","_component_van_dialog","_component_CopyDocument","_component_el_icon","_component_h10","_component_el_select_group","_component_el_dialog","_component_el_form_item","_component_el_input","_component_van_checkbox","_component_van_checkbox_group","_directive_loading","mode","ellipsis","onSelect","default","size","onClick","$event","icon","extra","square","modelValue","shape","clearable","placeholder","onSelectionChange","prop","width","sortable","scope","circle","effect","trigger","placement","reference","$index","loading","filterable","onSubmit","inset","rules","required","rows","autoSize","validator","maxlength","autosize","maxHeight","minHeight","round","block","readonly","onClickLeftIcon","disabled","ref_key","ref","property","multiple","input","onChange","shareToken","__exports__"],"sourceRoot":""}
\ No newline at end of file
diff --git a/rearServer/src/main/resources/static/js/678.15d2c0c6.js b/rearServer/src/main/resources/static/js/678.15d2c0c6.js
new file mode 100644
index 0000000..d7876ea
--- /dev/null
+++ b/rearServer/src/main/resources/static/js/678.15d2c0c6.js
@@ -0,0 +1,2 @@
+"use strict";(self["webpackChunkPandoraNext_TokensTool"]=self["webpackChunkPandoraNext_TokensTool"]||[]).push([[678],{1395:function(e,a,t){t.r(a),t.d(a,{default:function(){return z}});var l=t(5185),o=(t(3349),t(6907)),n=(t(4746),t(5267)),s=(t(1645),t(6773)),r=(t(487),t(3164)),i=(t(6335),t(6252)),c=t(2262),d=t(2201),m=t(6154),u=(t.p,t(1348)),v=t(3028);const p=e=>((0,i.dD)("data-v-8f916fe6"),e=e(),(0,i.Cn)(),e),h={class:"content_login"},f=p((()=>(0,i._)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no"},null,-1))),g=p((()=>(0,i._)("div",{class:"login-container"},[(0,i._)("h4",null,"PandoraNext-TokensTool")],-1))),w={class:"container"},_={style:{display:"flex",transform:"translate(0vw, 2vh)","font-size":"14.6px","justify-content":"center"}},y={style:{display:"flex",transform:"translate(0vw, 2vh)","margin-top":"5vh","font-size":"14.6px","justify-content":"center"}},b={style:{display:"flex",transform:"translate(0.5vw, 0vh)","margin-top":"6vh"}},x={style:{margin:"3.5vh 16px 0px 16px","justify-content":"center"}},k=p((()=>(0,i._)("div",{class:"bottom"},[(0,i._)("div",{style:{"text-align":"center",transform:"translateY(0vh)"}},[(0,i._)("h3",null,[(0,i._)("a",{href:"https://github.com/Yanyutin753/PandoraNext-TokensTool"},"Powered by tokensTool v0.6.8")])])],-1)));var S=(0,i.aZ)({__name:"loginIndex",setup(e){const a=(0,d.tv)(),t=window.location.pathname,p=t.split("/");let S="";p.length>=3&&(S="/"+p[1]);const T=(0,c.iH)(""),I=(0,c.iH)(""),z=(0,c.iH)(""),P=(0,c.iH)(!0);(0,i.bv)((async()=>{const e=localStorage.getItem("savedUsername"),a=localStorage.getItem("savedPassword"),t=localStorage.getItem("savedRemember");"true"===t&&(T.value=e||"",I.value=a||"",z.value="true"),window.innerWidth>767&&(P.value=!1),N()}));const W=e=>{const a=/^[^\s]*$/;return!!a.test(e)||"此项不允许包含空格"},U=localStorage.getItem("jwtToken"),N=async()=>{m.Z.post(`${S}/api/loginToken?token=`+U).then((e=>{1!=e.data.code?u.z8.error("令牌失效,请重新登录!"):window.innerWidth<=1e3?a.replace("/iphone"):a.replace("/home")})).catch((e=>{u.z8.error("令牌失效,请重新登录!")}))},V=()=>{const e=v.kN.service({fullscreen:!0});z.value?(localStorage.setItem("savedUsername",T.value),localStorage.setItem("savedPassword",I.value),localStorage.setItem("savedRemember","true")):(localStorage.removeItem("savedUsername"),localStorage.removeItem("savedPassword"),localStorage.removeItem("savedRemember"));let t={loginUsername:T.value,loginPassword:I.value};fetch(`${S}/api/login`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${t}`},body:JSON.stringify(t)}).then((e=>e.json())).then((t=>{if(1===t.code){const e=t.data;localStorage.setItem("jwtToken",e),u.z8.success("登录成功!"),window.innerWidth<=1e3?a.replace("/iphone"):a.replace("/home")}else u.z8.error(t.msg);e.close()})).catch((a=>{console.error("登录时出现错误:",a),u.z8.error("账号或密码错误!"),e.close()}))};return(e,a)=>{const t=r.gN,c=(0,i.up)("h9"),d=s.XZ,m=n.TS,u=o.zx,v=l.l0;return(0,i.wg)(),(0,i.iD)("div",h,[f,g,(0,i._)("div",w,[(0,i.Wm)(v,{onSubmit:V},{default:(0,i.w5)((()=>[(0,i.Wm)(m,{inset:""},{default:(0,i.w5)((()=>[(0,i._)("div",_,[(0,i.Wm)(t,{modelValue:T.value,"onUpdate:modelValue":a[0]||(a[0]=e=>T.value=e),clearable:"",name:"username",label:"Username",placeholder:"username",class:"userName","input-align":"center",rules:[{validator:W}]},null,8,["modelValue","rules"])]),(0,i._)("div",y,[(0,i.Wm)(t,{modelValue:I.value,"onUpdate:modelValue":a[1]||(a[1]=e=>I.value=e),clearable:"",type:"password",name:"password",label:"Password",placeholder:"password",class:"userName","input-align":"center",rules:[{validator:W}]},null,8,["modelValue","rules"])]),(0,i._)("div",b,[(0,i.Wm)(d,{class:"remember",modelValue:z.value,"onUpdate:modelValue":a[2]||(a[2]=e=>z.value=e),"checked-color":"#0ea27e","icon-size":"13.5px"},{default:(0,i.w5)((()=>[(0,i.Wm)(c,{style:{"font-size":"13.5px",transform:"translateX(7px)"}},{default:(0,i.w5)((()=>[(0,i.Uk)("Remember me")])),_:1})])),_:1},8,["modelValue"])])])),_:1}),(0,i._)("div",x,[(0,i.Wm)(u,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,i.w5)((()=>[(0,i.Wm)(c,{style:{"font-weight":"bold"}},{default:(0,i.w5)((()=>[(0,i.Uk)("Continue")])),_:1})])),_:1})])])),_:1})]),k])}}}),T=t(3744);const I=(0,T.Z)(S,[["__scopeId","data-v-8f916fe6"]]);var z=I}}]);
+//# sourceMappingURL=678.15d2c0c6.js.map
\ No newline at end of file
diff --git a/rearServer/src/main/resources/static/js/678.15d2c0c6.js.map b/rearServer/src/main/resources/static/js/678.15d2c0c6.js.map
new file mode 100644
index 0000000..430d82b
--- /dev/null
+++ b/rearServer/src/main/resources/static/js/678.15d2c0c6.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"js/678.15d2c0c6.js","mappings":"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","sources":["webpack://PandoraNext-TokensTool/./src/views/loginIndex.vue","webpack://PandoraNext-TokensTool/./src/views/loginIndex.vue?41fe"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue';\nimport { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, createTextVNode as _createTextVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\";\nconst _withScopeId = n => (_pushScopeId(\"data-v-8f916fe6\"), n = n(), _popScopeId(), n);\nconst _hoisted_1 = {\n class: \"content_login\"\n};\nconst _hoisted_2 = /*#__PURE__*/_withScopeId(() => /*#__PURE__*/_createElementVNode(\"meta\", {\n name: \"viewport\",\n content: \"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no\"\n}, null, -1));\nconst _hoisted_3 = /*#__PURE__*/_withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"login-container\"\n}, [/*#__PURE__*/_createElementVNode(\"h4\", null, \"PandoraNext-TokensTool\")], -1));\nconst _hoisted_4 = {\n class: \"container\"\n};\nconst _hoisted_5 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(0vw, 2vh)\",\n \"font-size\": \"14.6px\",\n \"justify-content\": \"center\"\n }\n};\nconst _hoisted_6 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(0vw, 2vh)\",\n \"margin-top\": \"5vh\",\n \"font-size\": \"14.6px\",\n \"justify-content\": \"center\"\n }\n};\nconst _hoisted_7 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(0.5vw, 0vh)\",\n \"margin-top\": \"6vh\"\n }\n};\nconst _hoisted_8 = {\n style: {\n \"margin\": \"3.5vh 16px 0px 16px\",\n \"justify-content\": \"center\"\n }\n};\nconst _hoisted_9 = /*#__PURE__*/_withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"bottom\"\n}, [/*#__PURE__*/_createElementVNode(\"div\", {\n style: {\n \"text-align\": \"center\",\n \"transform\": \"translateY(0vh)\"\n }\n}, [/*#__PURE__*/_createElementVNode(\"h3\", null, [/*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://github.com/Yanyutin753/PandoraNext-TokensTool\"\n}, \"Powered by tokensTool v0.6.8\")])])], -1));\nimport { ref, onMounted } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport axios from \"axios\";\nimport png from \"../asserts/chatGpt.jpg\";\nimport { ElMessage } from \"element-plus\";\nimport { ElLoading } from \"element-plus\";\nexport default /*#__PURE__*/_defineComponent({\n __name: 'loginIndex',\n setup(__props) {\n const router = useRouter();\n const path = window.location.pathname; // 假设是 \"/api/getData\"\n const parts = path.split(\"/\"); // 分割路径,得到 [\"\", \"api\", \"getData\"]\n let prefix = \"\"; // 默认值为 \"\"\n if (parts.length >= 3) {\n prefix = \"/\" + parts[1]; // 如果parts长度大于或等于3,获取第一个部分\n }\n\n const username = ref(\"\");\n const password = ref(\"\");\n const checked = ref(\"\");\n const image = png;\n const page = ref(true);\n onMounted(async () => {\n const savedUsername = localStorage.getItem(\"savedUsername\");\n const savedPassword = localStorage.getItem(\"savedPassword\");\n const savedRemember = localStorage.getItem(\"savedRemember\");\n if (savedRemember === \"true\") {\n username.value = savedUsername || \"\";\n password.value = savedPassword || \"\";\n checked.value = \"true\";\n }\n if (window.innerWidth > 767) {\n page.value = false;\n }\n fetchLoginToken();\n });\n // 自定义校验函数,直接返回错误提示\n const customValidator = value => {\n // 不允许有空格和回车符\n const regex = /^[^\\s]*$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项不允许包含空格\";\n }\n };\n /**\r\n * 用jwt令牌验证身份\r\n * 未通过者返回到/login\r\n */\n const token = localStorage.getItem(\"jwtToken\"); // 从localStorage获取JWT令牌\n const headers = {\n Authorization: `Bearer ${token}`\n };\n /**\r\n * 用jwt令牌验证身份函数\r\n */\n const fetchLoginToken = async () => {\n axios.post(`${prefix}/api/loginToken?token=` + token).then(response => {\n if (response.data.code == 1) {\n if (window.innerWidth <= 1000) {\n router.replace(`/iphone`);\n } else {\n router.replace(`/home`);\n }\n return;\n } else {\n ElMessage.error(\"令牌失效,请重新登录!\");\n }\n }).catch(error => {\n ElMessage.error(\"令牌失效,请重新登录!\");\n });\n };\n const submit = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n // 处理登录逻辑\n if (checked.value) {\n // 如果记住密码被选中,将用户名和密码保存到本地存储\n localStorage.setItem(\"savedUsername\", username.value);\n localStorage.setItem(\"savedPassword\", password.value);\n localStorage.setItem(\"savedRemember\", \"true\");\n } else {\n // 如果不记住密码,清除本地存储中的信息\n localStorage.removeItem(\"savedUsername\");\n localStorage.removeItem(\"savedPassword\");\n localStorage.removeItem(\"savedRemember\");\n }\n let setting = {\n loginUsername: username.value,\n loginPassword: password.value\n };\n fetch(`${prefix}/api/login`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${setting}`\n },\n body: JSON.stringify(setting)\n }).then(response => response.json()).then(data => {\n if (data.code === 1) {\n const token = data.data;\n localStorage.setItem(\"jwtToken\", token);\n ElMessage.success(\"登录成功!\");\n if (window.innerWidth <= 1000) {\n router.replace(`/iphone`);\n } else {\n router.replace(`/home`);\n }\n } else {\n ElMessage.error(data.msg);\n }\n loadingInstance.close();\n }).catch(error => {\n console.error(\"登录时出现错误:\", error);\n ElMessage.error(\"账号或密码错误!\");\n loadingInstance.close();\n });\n };\n return (_ctx, _cache) => {\n const _component_van_field = _resolveComponent(\"van-field\");\n const _component_h9 = _resolveComponent(\"h9\");\n const _component_van_checkbox = _resolveComponent(\"van-checkbox\");\n const _component_van_cell_group = _resolveComponent(\"van-cell-group\");\n const _component_van_button = _resolveComponent(\"van-button\");\n const _component_van_form = _resolveComponent(\"van-form\");\n return _openBlock(), _createElementBlock(\"div\", _hoisted_1, [_hoisted_2, _hoisted_3, _createElementVNode(\"div\", _hoisted_4, [_createVNode(_component_van_form, {\n onSubmit: submit\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_5, [_createVNode(_component_van_field, {\n modelValue: username.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => username.value = $event),\n clearable: \"\",\n name: \"username\",\n label: \"Username\",\n placeholder: \"username\",\n class: \"userName\",\n \"input-align\": \"center\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])]), _createElementVNode(\"div\", _hoisted_6, [_createVNode(_component_van_field, {\n modelValue: password.value,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => password.value = $event),\n clearable: \"\",\n type: \"password\",\n name: \"password\",\n label: \"Password\",\n placeholder: \"password\",\n class: \"userName\",\n \"input-align\": \"center\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])]), _createElementVNode(\"div\", _hoisted_7, [_createVNode(_component_van_checkbox, {\n class: \"remember\",\n modelValue: checked.value,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => checked.value = $event),\n \"checked-color\": \"#0ea27e\",\n \"icon-size\": \"13.5px\"\n }, {\n default: _withCtx(() => [_createVNode(_component_h9, {\n style: {\n \"font-size\": \"13.5px\",\n \"transform\": \"translateX(7px)\"\n }\n }, {\n default: _withCtx(() => [_createTextVNode(\"Remember me\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])])]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_8, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createVNode(_component_h9, {\n style: {\n \"font-weight\": \"bold\"\n }\n }, {\n default: _withCtx(() => [_createTextVNode(\"Continue\")]),\n _: 1\n })]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_9]);\n };\n }\n});","/* unplugin-vue-components disabled */import script from \"./loginIndex.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./loginIndex.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./loginIndex.vue?vue&type=style&index=0&id=8f916fe6&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-8f916fe6\"]])\n\nexport default __exports__"],"names":["_withScopeId","n","_hoisted_1","class","_hoisted_2","_","name","content","_hoisted_3","_hoisted_4","_hoisted_5","style","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","href","__name","setup","__props","router","path","window","location","pathname","parts","split","prefix","length","username","password","checked","page","async","savedUsername","localStorage","getItem","savedPassword","savedRemember","value","innerWidth","fetchLoginToken","customValidator","regex","test","token","axios","post","then","response","data","code","error","replace","catch","submit","loadingInstance","service","fullscreen","setItem","removeItem","setting","loginUsername","loginPassword","fetch","method","headers","Authorization","body","JSON","stringify","json","success","msg","close","console","_ctx","_cache","_component_van_field","_component_h9","_component_van_checkbox","_component_van_cell_group","_component_van_button","_component_van_form","onSubmit","default","inset","modelValue","$event","clearable","label","placeholder","rules","validator","type","round","block","color","__exports__"],"sourceRoot":""}
\ No newline at end of file
diff --git a/rearServer/src/main/resources/static/js/724.cd26d2dd.js b/rearServer/src/main/resources/static/js/724.cd26d2dd.js
deleted file mode 100644
index a00654a..0000000
--- a/rearServer/src/main/resources/static/js/724.cd26d2dd.js
+++ /dev/null
@@ -1,2 +0,0 @@
-"use strict";(self["webpackChunkPandoraNext_TokensTool"]=self["webpackChunkPandoraNext_TokensTool"]||[]).push([[724],{1769:function(e,a,t){t.r(a),t.d(a,{default:function(){return I}});var l=t(5185),o=(t(3349),t(6907)),n=(t(4746),t(5267)),s=(t(1645),t(6773)),r=(t(487),t(3164)),i=(t(6335),t(6252)),d=t(2262),c=t(2201),m=t(6154),u=(t.p,t(1348));const v=e=>((0,i.dD)("data-v-a6617242"),e=e(),(0,i.Cn)(),e),p={class:"content_login"},h=v((()=>(0,i._)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no"},null,-1))),g=v((()=>(0,i._)("div",{class:"login-container"},[(0,i._)("h4",null,"PandoraNext-TokensTool")],-1))),w={class:"container"},f={style:{display:"flex",transform:"translate(0vw, 2vh)","font-size":"14.6px","justify-content":"center"}},b={style:{display:"flex",transform:"translate(0vw, 2vh)","margin-top":"5vh","font-size":"14.6px","justify-content":"center"}},_={style:{display:"flex",transform:"translate(0.5vw, 0vh)","margin-top":"6vh"}},y={style:{margin:"3.5vh 16px 0px 16px","justify-content":"center"}},x=v((()=>(0,i._)("div",{class:"bottom"},[(0,i._)("div",{style:{"text-align":"center",transform:"translateY(0vh)"}},[(0,i._)("h3",null,[(0,i._)("a",{href:"https://github.com/Yanyutin753/PandoraNext-TokensTool"},"Powered by tokensTool v0.6.8")])])],-1)));var k=(0,i.aZ)({__name:"loginIndex",setup(e){const a=(0,c.tv)(),t=window.location.pathname,v=t.split("/");let k="";v.length>=3&&(k="/"+v[1]);const T=(0,d.iH)(""),S=(0,d.iH)(""),I=(0,d.iH)(""),z=(0,d.iH)(!0);(0,i.bv)((async()=>{const e=localStorage.getItem("savedUsername"),a=localStorage.getItem("savedPassword"),t=localStorage.getItem("savedRemember");"true"===t&&(T.value=e||"",S.value=a||"",I.value="true"),window.innerWidth>767&&(z.value=!1),U()}));const P=e=>{const a=/^[^\s]*$/;return!!a.test(e)||"此项不允许包含空格"},W=localStorage.getItem("jwtToken"),U=async()=>{m.Z.post(`https://yubb.fun${k}/api/loginToken?token=`+W).then((e=>{1!=e.data.code?u.z8.error("令牌失效,请重新登录!"):window.innerWidth<=1e3?a.replace("/iphone"):a.replace("/home")})).catch((e=>{u.z8.error("令牌失效,请重新登录!")}))},V=()=>{I.value?(localStorage.setItem("savedUsername",T.value),localStorage.setItem("savedPassword",S.value),localStorage.setItem("savedRemember","true")):(localStorage.removeItem("savedUsername"),localStorage.removeItem("savedPassword"),localStorage.removeItem("savedRemember"));let e={loginUsername:T.value,loginPassword:S.value};fetch(`https://yubb.fun${k}/api/login`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${e}`},body:JSON.stringify(e)}).then((e=>e.json())).then((e=>{if(1===e.code){const t=e.data;localStorage.setItem("jwtToken",t),u.z8.success("登录成功!"),setTimeout((()=>{window.innerWidth<=1e3?a.replace("/iphone"):a.replace("/home")}),1e3)}else u.z8.error(e.msg)})).catch((e=>{console.error("登录时出现错误:",e),u.z8.error("账号或密码错误!")}))};return(e,a)=>{const t=r.gN,d=(0,i.up)("h9"),c=s.XZ,m=n.TS,u=o.zx,v=l.l0;return(0,i.wg)(),(0,i.iD)("div",p,[h,g,(0,i._)("div",w,[(0,i.Wm)(v,{onSubmit:V},{default:(0,i.w5)((()=>[(0,i.Wm)(m,{inset:""},{default:(0,i.w5)((()=>[(0,i._)("div",f,[(0,i.Wm)(t,{modelValue:T.value,"onUpdate:modelValue":a[0]||(a[0]=e=>T.value=e),clearable:"",name:"username",label:"Username",placeholder:"username",class:"userName","input-align":"center",rules:[{validator:P}]},null,8,["modelValue","rules"])]),(0,i._)("div",b,[(0,i.Wm)(t,{modelValue:S.value,"onUpdate:modelValue":a[1]||(a[1]=e=>S.value=e),clearable:"",type:"password",name:"password",label:"Password",placeholder:"password",class:"userName","input-align":"center",rules:[{validator:P}]},null,8,["modelValue","rules"])]),(0,i._)("div",_,[(0,i.Wm)(c,{class:"remember",modelValue:I.value,"onUpdate:modelValue":a[2]||(a[2]=e=>I.value=e),"checked-color":"#0ea27e","icon-size":"13.5px"},{default:(0,i.w5)((()=>[(0,i.Wm)(d,{style:{"font-size":"13.5px",transform:"translateX(7px)"}},{default:(0,i.w5)((()=>[(0,i.Uk)("Remember me")])),_:1})])),_:1},8,["modelValue"])])])),_:1}),(0,i._)("div",y,[(0,i.Wm)(u,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,i.w5)((()=>[(0,i.Wm)(d,{style:{"font-weight":"bold"}},{default:(0,i.w5)((()=>[(0,i.Uk)("Continue")])),_:1})])),_:1})])])),_:1})]),x])}}}),T=t(3744);const S=(0,T.Z)(k,[["__scopeId","data-v-a6617242"]]);var I=S}}]);
-//# sourceMappingURL=724.cd26d2dd.js.map
\ No newline at end of file
diff --git a/rearServer/src/main/resources/static/js/724.cd26d2dd.js.map b/rearServer/src/main/resources/static/js/724.cd26d2dd.js.map
deleted file mode 100644
index 53a04f8..0000000
--- a/rearServer/src/main/resources/static/js/724.cd26d2dd.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"js/724.cd26d2dd.js","mappings":"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","sources":["webpack://PandoraNext-TokensTool/./src/views/loginIndex.vue","webpack://PandoraNext-TokensTool/./src/views/loginIndex.vue?41fe"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue';\nimport { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, createTextVNode as _createTextVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\";\nconst _withScopeId = n => (_pushScopeId(\"data-v-a6617242\"), n = n(), _popScopeId(), n);\nconst _hoisted_1 = {\n class: \"content_login\"\n};\nconst _hoisted_2 = /*#__PURE__*/_withScopeId(() => /*#__PURE__*/_createElementVNode(\"meta\", {\n name: \"viewport\",\n content: \"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no\"\n}, null, -1));\nconst _hoisted_3 = /*#__PURE__*/_withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"login-container\"\n}, [/*#__PURE__*/_createElementVNode(\"h4\", null, \"PandoraNext-TokensTool\")], -1));\nconst _hoisted_4 = {\n class: \"container\"\n};\nconst _hoisted_5 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(0vw, 2vh)\",\n \"font-size\": \"14.6px\",\n \"justify-content\": \"center\"\n }\n};\nconst _hoisted_6 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(0vw, 2vh)\",\n \"margin-top\": \"5vh\",\n \"font-size\": \"14.6px\",\n \"justify-content\": \"center\"\n }\n};\nconst _hoisted_7 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(0.5vw, 0vh)\",\n \"margin-top\": \"6vh\"\n }\n};\nconst _hoisted_8 = {\n style: {\n \"margin\": \"3.5vh 16px 0px 16px\",\n \"justify-content\": \"center\"\n }\n};\nconst _hoisted_9 = /*#__PURE__*/_withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"bottom\"\n}, [/*#__PURE__*/_createElementVNode(\"div\", {\n style: {\n \"text-align\": \"center\",\n \"transform\": \"translateY(0vh)\"\n }\n}, [/*#__PURE__*/_createElementVNode(\"h3\", null, [/*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://github.com/Yanyutin753/PandoraNext-TokensTool\"\n}, \"Powered by tokensTool v0.6.8\")])])], -1));\nimport { ref, onMounted } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport axios from \"axios\";\nimport png from \"../asserts/chatGpt.jpg\";\nimport { ElMessage } from \"element-plus\";\nexport default /*#__PURE__*/_defineComponent({\n __name: 'loginIndex',\n setup(__props) {\n const router = useRouter();\n const path = window.location.pathname; // 假设是 \"/api/getData\"\n const parts = path.split(\"/\"); // 分割路径,得到 [\"\", \"api\", \"getData\"]\n let prefix = \"\"; // 默认值为 \"\"\n if (parts.length >= 3) {\n prefix = \"/\" + parts[1]; // 如果parts长度大于或等于3,获取第一个部分\n }\n\n const username = ref(\"\");\n const password = ref(\"\");\n const checked = ref(\"\");\n const image = png;\n const page = ref(true);\n onMounted(async () => {\n const savedUsername = localStorage.getItem(\"savedUsername\");\n const savedPassword = localStorage.getItem(\"savedPassword\");\n const savedRemember = localStorage.getItem(\"savedRemember\");\n if (savedRemember === \"true\") {\n username.value = savedUsername || \"\";\n password.value = savedPassword || \"\";\n checked.value = \"true\";\n }\n if (window.innerWidth > 767) {\n page.value = false;\n }\n fetchLoginToken();\n });\n // 自定义校验函数,直接返回错误提示\n const customValidator = value => {\n // 不允许有空格和回车符\n const regex = /^[^\\s]*$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项不允许包含空格\";\n }\n };\n /**\r\n * 用jwt令牌验证身份\r\n * 未通过者返回到/login\r\n */\n const token = localStorage.getItem(\"jwtToken\"); // 从localStorage获取JWT令牌\n const headers = {\n Authorization: `Bearer ${token}`\n };\n /**\r\n * 用jwt令牌验证身份函数\r\n */\n const fetchLoginToken = async () => {\n axios.post(`https://yubb.fun${prefix}/api/loginToken?token=` + token).then(response => {\n if (response.data.code == 1) {\n if (window.innerWidth <= 1000) {\n router.replace(`/iphone`);\n } else {\n router.replace(`/home`);\n }\n return;\n } else {\n ElMessage.error(\"令牌失效,请重新登录!\");\n }\n }).catch(error => {\n ElMessage.error(\"令牌失效,请重新登录!\");\n });\n };\n const submit = () => {\n // 处理登录逻辑\n if (checked.value) {\n // 如果记住密码被选中,将用户名和密码保存到本地存储\n localStorage.setItem(\"savedUsername\", username.value);\n localStorage.setItem(\"savedPassword\", password.value);\n localStorage.setItem(\"savedRemember\", \"true\");\n } else {\n // 如果不记住密码,清除本地存储中的信息\n localStorage.removeItem(\"savedUsername\");\n localStorage.removeItem(\"savedPassword\");\n localStorage.removeItem(\"savedRemember\");\n }\n let setting = {\n loginUsername: username.value,\n loginPassword: password.value\n };\n fetch(`https://yubb.fun${prefix}/api/login`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${setting}`\n },\n body: JSON.stringify(setting)\n }).then(response => response.json()).then(data => {\n if (data.code === 1) {\n const token = data.data;\n localStorage.setItem(\"jwtToken\", token);\n ElMessage.success(\"登录成功!\");\n setTimeout(() => {\n if (window.innerWidth <= 1000) {\n router.replace(`/iphone`);\n } else {\n router.replace(`/home`);\n }\n }, 1000);\n } else {\n ElMessage.error(data.msg);\n }\n }).catch(error => {\n console.error(\"登录时出现错误:\", error);\n ElMessage.error(\"账号或密码错误!\");\n });\n };\n return (_ctx, _cache) => {\n const _component_van_field = _resolveComponent(\"van-field\");\n const _component_h9 = _resolveComponent(\"h9\");\n const _component_van_checkbox = _resolveComponent(\"van-checkbox\");\n const _component_van_cell_group = _resolveComponent(\"van-cell-group\");\n const _component_van_button = _resolveComponent(\"van-button\");\n const _component_van_form = _resolveComponent(\"van-form\");\n return _openBlock(), _createElementBlock(\"div\", _hoisted_1, [_hoisted_2, _hoisted_3, _createElementVNode(\"div\", _hoisted_4, [_createVNode(_component_van_form, {\n onSubmit: submit\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_5, [_createVNode(_component_van_field, {\n modelValue: username.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => username.value = $event),\n clearable: \"\",\n name: \"username\",\n label: \"Username\",\n placeholder: \"username\",\n class: \"userName\",\n \"input-align\": \"center\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])]), _createElementVNode(\"div\", _hoisted_6, [_createVNode(_component_van_field, {\n modelValue: password.value,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => password.value = $event),\n clearable: \"\",\n type: \"password\",\n name: \"password\",\n label: \"Password\",\n placeholder: \"password\",\n class: \"userName\",\n \"input-align\": \"center\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])]), _createElementVNode(\"div\", _hoisted_7, [_createVNode(_component_van_checkbox, {\n class: \"remember\",\n modelValue: checked.value,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => checked.value = $event),\n \"checked-color\": \"#0ea27e\",\n \"icon-size\": \"13.5px\"\n }, {\n default: _withCtx(() => [_createVNode(_component_h9, {\n style: {\n \"font-size\": \"13.5px\",\n \"transform\": \"translateX(7px)\"\n }\n }, {\n default: _withCtx(() => [_createTextVNode(\"Remember me\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])])]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_8, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createVNode(_component_h9, {\n style: {\n \"font-weight\": \"bold\"\n }\n }, {\n default: _withCtx(() => [_createTextVNode(\"Continue\")]),\n _: 1\n })]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_9]);\n };\n }\n});","/* unplugin-vue-components disabled */import script from \"./loginIndex.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./loginIndex.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./loginIndex.vue?vue&type=style&index=0&id=a6617242&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-a6617242\"]])\n\nexport default __exports__"],"names":["_withScopeId","n","_hoisted_1","class","_hoisted_2","_","name","content","_hoisted_3","_hoisted_4","_hoisted_5","style","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","href","__name","setup","__props","router","path","window","location","pathname","parts","split","prefix","length","username","password","checked","page","async","savedUsername","localStorage","getItem","savedPassword","savedRemember","value","innerWidth","fetchLoginToken","customValidator","regex","test","token","axios","post","then","response","data","code","error","replace","catch","submit","setItem","removeItem","setting","loginUsername","loginPassword","fetch","method","headers","Authorization","body","JSON","stringify","json","success","setTimeout","msg","console","_ctx","_cache","_component_van_field","_component_h9","_component_van_checkbox","_component_van_cell_group","_component_van_button","_component_van_form","onSubmit","default","inset","modelValue","$event","clearable","label","placeholder","rules","validator","type","round","block","color","__exports__"],"sourceRoot":""}
\ No newline at end of file
diff --git a/rearServer/src/main/resources/static/js/98.13ca7e42.js b/rearServer/src/main/resources/static/js/813.784e18ef.js
similarity index 53%
rename from rearServer/src/main/resources/static/js/98.13ca7e42.js
rename to rearServer/src/main/resources/static/js/813.784e18ef.js
index 91ae2a7..3696d26 100644
--- a/rearServer/src/main/resources/static/js/98.13ca7e42.js
+++ b/rearServer/src/main/resources/static/js/813.784e18ef.js
@@ -1,2 +1,2 @@
-"use strict";(self["webpackChunkPandoraNext_TokensTool"]=self["webpackChunkPandoraNext_TokensTool"]||[]).push([[98],{2098:function(e,l,a){a.r(l),a.d(l,{default:function(){return ln}});var o=a(299),n=(a(8845),a(6773)),t=(a(487),a(2876)),u=(a(492),a(5185)),i=(a(3349),a(5267)),r=(a(1645),a(7630)),s=(a(7034),a(3164)),d=(a(6335),a(157)),m=(a(1897),a(6907)),c=(a(4746),a(294)),p=(a(6870),a(560),a(6252)),v=a(3577),h=a(2262),_=a(1094),w=a(2201),k=a(6154),f=a(844),b=a(1348),g=a(9288),y=a(2534),V=a(3028),W=a(4708),T=a(1893);const U={class:"content"},x=(0,p._)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no"},null,-1),A={class:"home-container"},H=(0,p._)("div",{class:"flex-grow"},null,-1),z=(0,p._)("a",{href:"https://ai.fakeopen.com/auth"},"PandoraNext地址",-1),P=(0,p._)("a",{href:"https://chat.openai.com/api/auth/session"},"OpenAI官网",-1),S=(0,p._)("a",{href:"https://github.com/Yanyutin753/PandoraNext-TokensTool"},"TokensTool地址",-1),N={class:"under"},C={style:{display:"block",transform:"translate(5vw, 2.5vh)"}},O=(0,p._)("div",{class:"flex items-center"},[(0,p._)("span",{class:"font-h4"},"PandoraNext-TokensTool "),(0,p._)("span",{class:"font-h4-tag"},"v0.6.8 ")],-1),$={class:"search"},B={style:{display:"flex",margin:"10px 35px -8px 35px"}},I={style:{display:"flex",transform:"translateX(4vw)",width:"70vw",height:"61vh"}},D={style:{display:"flex","align-items":"center"}},q={style:{"margin-left":"18px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},j={style:{margin:"15px 0px 15px 0px"}},L=(0,p._)("h1",null,"批量操作",-1),M=(0,p._)("h1",null,"全部检查并生成",-1),Z=(0,p._)("br",null,null,-1),E=(0,p._)("br",null,null,-1),J=(0,p._)("br",null,null,-1),K={style:{display:"block"}},R=(0,p._)("br",null,null,-1),Y=(0,p._)("br",null,null,-1),X=(0,p._)("br",null,null,-1),G={key:0},F=(0,p._)("br",null,null,-1),Q={key:1},ee=(0,p._)("br",null,null,-1),le={key:0},ae=(0,p._)("br",null,null,-1),oe=(0,p._)("br",null,null,-1),ne={key:2},te=(0,p._)("br",null,null,-1),ue=(0,p._)("br",null,null,-1),ie=(0,p._)("br",null,null,-1),re={style:{margin:"5.2px"}},se=(0,p._)("br",null,null,-1),de={style:{display:"block"}},me=(0,p._)("br",null,null,-1),ce=(0,p._)("br",null,null,-1),pe=(0,p._)("br",null,null,-1),ve=(0,p._)("br",null,null,-1),he={key:0},_e=(0,p._)("br",null,null,-1),we={key:1},ke=(0,p._)("br",null,null,-1),fe={key:0},be=(0,p._)("br",null,null,-1),ge=(0,p._)("br",null,null,-1),ye={key:2},Ve=(0,p._)("br",null,null,-1),We={key:3},Te=(0,p._)("br",null,null,-1),Ue=(0,p._)("br",null,null,-1),xe={style:{margin:"5.2px"}},Ae=(0,p._)("br",null,null,-1),He={style:{display:"block"}},ze=(0,p._)("br",null,null,-1),Pe=(0,p._)("br",null,null,-1),Se=(0,p._)("br",null,null,-1),Ne=(0,p._)("br",null,null,-1),Ce=(0,p._)("br",null,null,-1),Oe=(0,p._)("br",null,null,-1),$e=(0,p._)("br",null,null,-1),Be=(0,p._)("br",null,null,-1),Ie=(0,p._)("br",null,null,-1),De=(0,p._)("br",null,null,-1),qe={key:0},je=(0,p._)("br",null,null,-1),Le=(0,p._)("br",null,null,-1),Me={key:0},Ze=(0,p._)("br",null,null,-1),Ee={style:{display:"block"}},Je=(0,p._)("br",null,null,-1),Ke=(0,p._)("br",null,null,-1),Re=(0,p._)("br",null,null,-1),Ye=(0,p._)("br",null,null,-1),Xe=(0,p._)("br",null,null,-1),Ge=(0,p._)("br",null,null,-1),Fe={key:0},Qe=(0,p._)("br",null,null,-1),el=(0,p._)("br",null,null,-1),ll=(0,p._)("br",null,null,-1),al=(0,p._)("br",null,null,-1),ol=(0,p._)("br",null,null,-1),nl=(0,p._)("br",null,null,-1),tl=(0,p._)("br",null,null,-1),ul=(0,p._)("br",null,null,-1),il={style:{margin:"5.2px"}},rl=(0,p._)("br",null,null,-1),sl={style:{display:"block"}},dl=(0,p._)("br",null,null,-1),ml=(0,p._)("br",null,null,-1),cl=(0,p._)("br",null,null,-1),pl=(0,p._)("br",null,null,-1),vl=(0,p._)("br",null,null,-1),hl=(0,p._)("br",null,null,-1),_l=(0,p._)("br",null,null,-1),wl=(0,p._)("br",null,null,-1),kl={key:0},fl=(0,p._)("br",null,null,-1),bl=(0,p._)("br",null,null,-1),gl=(0,p._)("br",null,null,-1),yl={style:{margin:"5.2px"}},Vl=(0,p._)("br",null,null,-1),Wl={style:{display:"block"}},Tl=(0,p._)("br",null,null,-1),Ul=(0,p._)("br",null,null,-1),xl=(0,p._)("br",null,null,-1),Al=(0,p._)("br",null,null,-1),Hl=(0,p._)("br",null,null,-1),zl=(0,p._)("br",null,null,-1),Pl=(0,p._)("br",null,null,-1),Sl=(0,p._)("br",null,null,-1),Nl={style:{margin:"5.2px"}},Cl=(0,p._)("br",null,null,-1),Ol={style:{transform:"translate(0vw, -2vh)"}},$l={style:{"margin-left":"15px",display:"flex","align-items":"center"}},Bl={key:0},Il=(0,p._)("h5",null,"oneApi",-1),Dl={key:1},ql=(0,p._)("h5",null,"Json",-1),jl={style:{"margin-left":"25px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Ll={style:{display:"flex","align-items":"center",overflow:"auto"}},Ml={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Zl=(0,p._)("span",{style:{"margin-left":"0px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},"点击此进行查看",-1),El=(0,p._)("h1",null,"批量操作",-1),Jl=(0,p._)("br",null,null,-1),Kl={style:{display:"block"}},Rl=(0,p._)("br",null,null,-1),Yl=(0,p._)("br",null,null,-1),Xl=(0,p._)("br",null,null,-1),Gl=(0,p._)("br",null,null,-1),Fl={style:{display:"block"}},Ql=(0,p._)("br",null,null,-1),ea={key:0},la=(0,p._)("br",null,null,-1),aa=(0,p._)("br",null,null,-1),oa=(0,p._)("br",null,null,-1),na=(0,p._)("br",null,null,-1),ta=(0,p._)("br",null,null,-1),ua=(0,p._)("br",null,null,-1),ia={style:{margin:"5.2px"}},ra={style:{display:"block"}},sa=(0,p._)("br",null,null,-1),da=(0,p._)("br",null,null,-1),ma={key:0},ca=(0,p._)("br",null,null,-1),pa={style:{transform:"translateX(17px)"}},va=(0,p._)("br",null,null,-1),ha=(0,p._)("br",null,null,-1),_a=(0,p._)("br",null,null,-1),wa=(0,p._)("br",null,null,-1),ka=(0,p._)("br",null,null,-1),fa=(0,p._)("br",null,null,-1),ba={style:{margin:"5.2px"}},ga={style:{display:"flex"}},ya={style:{display:"flex","align-items":"center"}},Va={style:{"margin-left":"0px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Wa={style:{display:"flex","align-items":"center",overflow:"auto"}},Ta={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Ua={style:{display:"flex","align-items":"center",overflow:"auto"}},xa={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Aa=(0,p._)("br",null,null,-1),Ha={style:{display:"block"}},za=(0,p._)("br",null,null,-1),Pa={style:{transform:"translateX(17px)"}},Sa=(0,p._)("br",null,null,-1),Na=(0,p._)("br",null,null,-1),Ca=(0,p._)("br",null,null,-1),Oa={key:0},$a=(0,p._)("br",null,null,-1),Ba={style:{transform:"translateX(17px)"}},Ia=(0,p._)("br",null,null,-1),Da=(0,p._)("br",null,null,-1),qa=(0,p._)("br",null,null,-1),ja=(0,p._)("br",null,null,-1),La=(0,p._)("br",null,null,-1),Ma=(0,p._)("br",null,null,-1),Za={style:{margin:"5.2px"}},Ea=(0,p._)("h1",null,"添加share_token到OneAPI",-1),Ja={style:{"margin-left":"15px",display:"flex","align-items":"center"}},Ka={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Ra={style:{display:"flex","align-items":"center",overflow:"auto"}},Ya={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Xa={style:{display:"flex","align-items":"center",overflow:"auto"}},Ga={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Fa=(0,p._)("br",null,null,-1),Qa=(0,p._)("br",null,null,-1),eo=(0,p._)("br",null,null,-1),lo={style:{transform:"translateX(17px)"}},ao=(0,p._)("br",null,null,-1),oo={style:{transform:"translateX(17px)"}},no=(0,p._)("br",null,null,-1),to=(0,p._)("br",null,null,-1),uo=(0,p._)("br",null,null,-1),io=(0,p._)("br",null,null,-1),ro=(0,p._)("br",null,null,-1),so=(0,p._)("br",null,null,-1),mo={style:{margin:"5.2px"}},co=(0,p._)("br",null,null,-1),po=(0,p._)("br",null,null,-1),vo=(0,p._)("br",null,null,-1),ho=(0,p._)("br",null,null,-1),_o={style:{transform:"translateX(17px)"}},wo=(0,p._)("br",null,null,-1),ko=(0,p._)("br",null,null,-1),fo=(0,p._)("br",null,null,-1),bo=(0,p._)("br",null,null,-1),go=(0,p._)("br",null,null,-1),yo={style:{display:"block"}},Vo=(0,p._)("br",null,null,-1),Wo={style:{transform:"translateX(17px)"}},To=(0,p._)("br",null,null,-1),Uo={style:{transform:"translateX(17px)"}},xo=(0,p._)("br",null,null,-1),Ao=(0,p._)("br",null,null,-1),Ho=(0,p._)("br",null,null,-1),zo=(0,p._)("br",null,null,-1),Po=(0,p._)("br",null,null,-1),So=(0,p._)("br",null,null,-1),No={style:{margin:"5.2px"}},Co={style:{display:"block"}},Oo=(0,p._)("br",null,null,-1),$o=(0,p._)("br",null,null,-1),Bo=(0,p._)("br",null,null,-1),Io=(0,p._)("br",null,null,-1),Do=(0,p._)("br",null,null,-1),qo={key:0},jo=(0,p._)("br",null,null,-1),Lo={style:{transform:"translateX(17px)"}},Mo=(0,p._)("br",null,null,-1),Zo=(0,p._)("br",null,null,-1),Eo=(0,p._)("br",null,null,-1),Jo=(0,p._)("br",null,null,-1),Ko=(0,p._)("br",null,null,-1),Ro=(0,p._)("br",null,null,-1),Yo='此项可选,用于修改请求体中的模型名称,\n 为一个 JSON 字符串,键为请求中模型名称,\n 值为要替换的模型名称,例如:\n {\n "gpt-3.5-turbo-301":"gpt-3.5-turbo",\n "gpt-4-8314":"gpt-4", \n "gpt-4-32k-8314":"gpt-4-32k",\n }',Xo=0,Go=1,Fo=2;var Qo=(0,p.aZ)({__name:"homeIndex",setup(e){const l=window.location.pathname,a=l.split("/");let Qo="";a.length>=3&&(Qo="/"+a[1]);const en=(0,h.iH)(["default","svip","vip"]),ln=(0,h.iH)(["default","svip","vip"]),an=(0,h.iH)(),on=(0,h.iH)(),nn=(0,h.iH)([]),tn=(0,h.iH)([]),un=e=>{nn.value=e},rn=e=>{tn.value=e},sn=(0,h.iH)("ALL"),dn=(0,w.tv)(),mn=(0,h.iH)(!1),cn=(0,h.iH)(!1),pn=(0,h.iH)(!1),vn=(0,h.iH)(!1),hn=(0,h.iH)(!1),_n=(0,h.iH)(!1),wn=(0,h.iH)(!1),kn=(0,h.iH)(!1),fn=(0,h.iH)(!1),bn=(0,h.iH)(!1),gn=(0,h.iH)(!1),yn=(0,h.iH)(!1),Vn=(0,h.iH)(!1),Wn=(0,h.iH)(!1),Tn=(0,h.iH)(!1),Un=(0,h.iH)(!1),xn=(0,h.iH)(!1),An=(0,h.iH)(!1),Hn=(0,h.iH)(""),zn=[{buttonValue:"选中删除Token",label:"选中删除Token"},{buttonValue:"选中刷新Token",label:"选中刷新Token"},{buttonValue:"选中合成pool_token",label:"选中合成pool_token"},{buttonValue:"选中修改pool_token",label:"选中修改pool_token"}],Pn=((0,h.iH)(""),[{buttonModel:"gpt-3.5-turbo",label:"gpt-3.5-turbo"},{buttonModel:"gpt-4-s",label:"gpt-4-s"},{buttonModel:"gpt-4-mobile",label:"gpt-4-mobile"},{buttonModel:"gpt-4-vision",label:"gpt-4-vision"},{buttonModel:"gpt-4-classic",label:"gpt-4-classic"},{buttonModel:"gpt-4-vision-preview",label:"gpt-4-vision-preview"}]),Sn=[{buttonModel:"gpt-3.5-turbo",label:"gpt-3.5-turbo"},{buttonModel:"gpt-4",label:"gpt-4"}],Nn=(0,h.iH)(""),Cn=[{buttonPoolValue:"选中检查pool_token",label:"选中检查pool_token"},{buttonPoolValue:"选中删除pool_token",label:"选中删除pool_token"},{buttonPoolValue:"选中刷新pool_token",label:"选中刷新pool_token"},{buttonPoolValue:"选中更换pool_token",label:"选中更换pool_token"}],On=(0,h.iH)(""),$n=(0,h.iH)("*"),Bn=(0,h.iH)(""),In=(0,h.iH)(""),Dn=(0,h.iH)(""),qn=(0,h.iH)(!1),jn=(0,h.iH)(!1),Ln=(0,h.iH)(!1),Mn=(0,h.iH)(!1),Zn=(0,h.iH)(""),En=(0,h.iH)(!1),Jn=(0,h.iH)(""),Kn=(0,h.iH)(""),Rn=(0,h.iH)(""),Yn=(0,h.iH)(""),Xn=(0,h.iH)(""),Gn=(0,h.iH)(""),Fn=(0,h.iH)(""),Qn=(0,h.iH)(!1),et=(0,h.iH)(""),lt=(0,h.iH)("PandoraNext"),at=(0,h.iH)("default"),ot=(0,h.iH)(""),nt=(0,h.iH)(""),tt=(0,h.iH)(""),ut=(0,h.iH)(""),it=(0,h.iH)(!1),rt=(0,h.iH)(!1),st=(0,h.iH)(!1),dt=(0,h.iH)(!1),mt=(0,h.iH)(!1),ct=(0,h.iH)(5),pt=(0,h.iH)(1),vt=(0,h.iH)(""),ht=(0,h.iH)(""),_t=(0,h.iH)(""),wt=(0,h.iH)(""),kt=(0,h.iH)(""),ft=(0,h.iH)(""),bt=((0,h.iH)(""),(0,h.iH)("")),gt=((0,h.iH)(!0),(0,h.iH)("")),yt=(0,h.iH)(!1),Vt=(0,h.iH)(""),Wt=(0,h.iH)([]),Tt=(0,h.iH)([]),Ut=(0,h.iH)(""),xt=(0,h.iH)(vt.value+On.value),At=(0,h.iH)(0),Ht=(0,h.iH)(""),zt=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!!l.test(e)||"此项至少要包含8位且必须包含数字和字母"},Pt=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!(!l.test(e)&&""!=e)||"此项至少要包含8位且必须包含数字和字母"},St=e=>{const l=/^[\u4e00-\u9fa5a-zA-Z0-9]{3,10}$/;return!!l.test(e)||"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字"},Nt=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!(1!=nu.value&&1!=Zt.value&&!l.test(e))||"此项至少要包含8位且必须包含数字和字母"},Ct=(0,h.iH)(""),Ot=(0,h.iH)(""),$t=(0,h.iH)(""),Bt=(0,h.iH)(""),It=(0,h.iH)(""),Dt=(0,h.iH)(""),qt=(0,h.iH)(!1),jt=(0,h.iH)(!1),Lt=(0,h.iH)(!1),Mt=(0,h.iH)(""),Zt=(0,h.iH)(!1),Et=(0,h.iH)(!1),Jt=(0,h.iH)(!0),Kt=(0,h.iH)([]),Rt=(0,h.iH)([]),Yt=(0,h.iH)([]),Xt=(0,h.iH)([]),Gt=(0,h.iH)(""),Ft=(0,h.iH)(""),Qt=(0,h.iH)(""),eu=(0,h.iH)(""),lu=(0,h.iH)(!1),au=(0,h.iH)(!1),ou=(0,h.iH)(!1),nu=(0,h.iH)(!1),tu=(0,h.iH)(!1),uu=(0,h.iH)(""),iu=(0,h.iH)(""),ru=(0,h.iH)(""),su=((0,h.iH)(""),(0,h.iH)("")),du=(0,h.iH)([]),mu=(0,h.iH)(""),cu=(0,h.iH)(["default","svip","vip"]),pu=(0,h.iH)(0),vu=((0,h.iH)(.085*window.innerHeight),(0,h.iH)("")),hu=(0,h.iH)(""),_u=(0,h.iH)(""),wu=localStorage.getItem("jwtToken");wu||dn.replace("/");const ku={Authorization:`Bearer ${wu}`},fu=async()=>{k.Z.post(`https://yubb.fun${Qo}/api/loginToken?token=`+wu).then((e=>{if(0==e.data.code)return console.error(e.data.data),void dn.replace("/")})).catch((e=>{console.error("请求loginToken接口失败",e),dn.replace("/")}))},bu=e=>{"Web"==e||"WEB"==e?Tu(""):"ALL"==e||"All"==e?Vu(""):e.includes("API")?Wu(""):Vu(e)},gu=e=>{Au(e)},yu=e=>{xu(e)},Vu=async e=>{const l=await k.Z.get(`https://yubb.fun${Qo}/api/selectToken?name=${e}`,{headers:ku}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession})));Kt.value=e}},Wu=async e=>{const l=await k.Z.get(`https://yubb.fun${Qo}/api/selectToken?name=${e}`,{headers:ku}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession}))),l=e.filter((e=>!0===e.setPoolToken));Kt.value=l}},Tu=async e=>{const l=await k.Z.get(`https://yubb.fun${Qo}/api/selectToken?name=${e}`,{headers:ku}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession}))),l=e.filter((e=>!1===e.setPoolToken));Kt.value=l}},Uu=async()=>{const e=await k.Z.get(`https://yubb.fun${Qo}/api/selectLogin`,{headers:ku}),l=e.data.data;if(Array.isArray(l)){const e=l.map((e=>({ipAddress:e.ipAddress,requestIp:e.requestIp,outRequestNumber:e.outRequestNumber,inRequestNumber:e.inRequestNumber,lastLoginTime:e.lastLoginTime})));Xt.value=e}},xu=async e=>{const l=await k.Z.get(`https://yubb.fun${Qo}/api/selectPoolToken?name=${e}`,{headers:ku}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({poolName:e.poolName,poolTime:e.poolTime,poolToken:e.poolToken,shareTokens:e.shareTokens,checkPool:e.checkPool,intoOneApi:e.intoOneApi,poolOneApi_models:e.poolOneApi_models,poolModel_mapping:e.poolModel_mapping,oneApi_pandoraUrl:e.oneApi_pandoraUrl,groupChecked:e.groupChecked,priority:e.priority})));Rt.value=e}},Au=async e=>{const l=V.kN.service({fullscreen:!0}),a=await k.Z.get(`https://yubb.fun${Qo}/api/selectShareToken?name=${e}`,{headers:ku}),o=a.data.data;if(Array.isArray(o)){const e=o.map((e=>({oneApi_name:e.oneApi_name,token_name:e.token_name,token_value:e.token_value,oneApi_baseUrl:e.oneApi_baseUrl,oneApi_models:e.oneApi_models,model_mapping:e.model_mapping,oneApi_groups:e.oneApi_groups,shareTime:e.shareTime,priority:e.priority})));Yt.value=e}l.close()},Hu=async e=>{const l=await k.Z.get(`https://yubb.fun${Qo}/api/selectSetting`,{headers:ku}),a=l.data.data;On.value=a.proxy_api_prefix,$n.value=a.isolated_conv_title,Bn.value=a.bing,In.value=a.timeout,Dn.value=a.proxy_url,qn.value=a.public_share,jn.value=a.disable_signup,Ln.value=a.auto_conv_arkose,Mn.value=a.proxy_file_service,Zn.value=a.custom_doh_host,En.value=a.tls.enabled,Jn.value=a.tls.cert_file,Kn.value=a.tls.key_file,Rn.value=a.site_password,Yn.value=a.setup_password,null==a.whitelist?ot.value="null":ot.value=a.whitelist,Xn.value=a.loginUsername,Gn.value=a.loginPassword,Fn.value=a.license_id,Qn.value=a.isGetToken,et.value=a.getTokenPassword,lt.value=a.containerName,at.value=a.autoToken_url,nt.value=a.validation.provider,tt.value=a.validation.site_key,ut.value=a.validation.site_secret,it.value=a.validation.site_login,rt.value=a.validation.setup_login,st.value=a.validation.oai_username,dt.value=a.validation.oai_password,mt.value=a.auto_updateSession,ct.value=a.auto_updateTime,pt.value=a.auto_updateNumber,vt.value=a.pandoraNext_outUrl,vt.value.endsWith("/")?xt.value=vt.value+On.value:xt.value=vt.value+"/"+On.value,ht.value=a.oneAPi_outUrl,_t.value=a.oneAPi_intoToken,zu()},zu=async()=>{"123456"==Gn.value&&"root"==Xn.value&&(f.T.alert("请先修改默认的初始账号和密码,并填写相应的信息,具体可参考网站文档!","温馨提醒",{confirmButtonText:"确定",callback:e=>{(0,b.z8)({type:"info",message:"如果不知道怎么填的话,可以看tokensTool的文档站!"})}}),hn.value=!0,Gn.value="",Xn.value="")},Pu=()=>{const e=nn.value;0!==e.length?bn.value=!0:(0,b.z8)("未选择数据")},Su=async()=>{try{const l=nn.value,a=l.map((e=>e.name)),o=V.kN.service({fullscreen:!0});try{""==Ut.value&&(Ut.value="{}"),JSON.parse(Ut.value)}catch(e){return(0,b.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void o.close()}const n={poolName:gt.value,intoOneApi:yt.value,poolOneApi_models:Tt.value.toString(),poolModel_mapping:Ut.value,oneApi_pandoraUrl:xt.value,shareTokens:a,groupChecked:ln.value.toString(),priority:At.value},t=await fetch(`https://yubb.fun${Qo}/api/addPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(n)}),u=await t.json();1===u.code?(gt.value="",xu(""),(0,b.z8)({type:"success",message:u.data}),gt.value="",yt.value=!1,Vt.value="",Wt.value=[],ln.value=["default","svip","vip"],At.value=0):(0,b.z8)({type:"info",message:u.msg}),o.close()}catch(l){(0,b.z8)({type:"info",message:"取消生成pool_token"})}bn.value=!1},Nu=e=>{let l=Rt.value.find((l=>l.poolName===e));null!=l&&(Ht.value=l.poolToken,yt.value=l.intoOneApi,Wt.value=l.poolOneApi_models.split(","),Vt.value=l.poolModel_mapping,xt.value=l.oneApi_pandoraUrl,en.value=l.groupChecked.split(","),At.value=l.priority)},Cu=e=>{Kt.value.find((l=>l.name===e&&!0===l.setPoolToken))},Ou=(0,p.Fl)((()=>Kt.value.filter((e=>!0===e.setPoolToken)))),$u=async()=>{try{const l=V.kN.service({fullscreen:!0});try{""==Vt.value&&(Vt.value="{}"),JSON.parse(Vt.value)}catch(e){return(0,b.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void l.close()}const a=nn.value,o=a.map((e=>e.name)),n={poolName:wt.value,poolToken:Ht.value,intoOneApi:yt.value,poolOneApi_models:Wt.value.toString(),poolModel_mapping:Vt.value,oneApi_pandoraUrl:xt.value,shareTokens:o,groupChecked:en.value.toString(),priority:At.value};console.log(n);const t=await fetch(`https://yubb.fun${Qo}/api/requirePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(n)}),u=await t.json();1===u.code?(xu(""),(0,b.z8)({type:"success",message:u.data}),wt.value="",Ht.value="",yt.value=!1,Wt.value=[],Vt.value="",ln.value=["default","svip","vip"],At.value=0):(0,b.z8)({type:"info",message:u.msg}),l.close()}catch(l){(0,b.z8)({type:"info",message:"取消修改pool_token"})}yn.value=!1},Bu=async()=>{const e=V.kN.service({fullscreen:!0});try{try{""==mu.value&&(mu.value="{}"),JSON.parse(mu.value)}catch(l){return(0,b.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void e.close()}const a={oneApi_name:iu.value,token_name:ru.value,oneApi_baseUrl:su.value,oneApi_models:du.value.toString(),model_mapping:mu.value,oneApi_groups:cu.value.toString(),priority:At.value},o=await fetch(`https://yubb.fun${Qo}/api/addShareToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}),n=await o.json();1===n.code?(Au(""),(0,b.z8)({type:"success",message:n.data}),iu.value="",ru.value="",su.value="",du.value=[],mu.value="",cu.value=["default","svip","vip"],At.value=0):(0,b.z8)({type:"info",message:n.msg})}catch(a){(0,b.z8)({type:"info",message:"取消修改pool_token"})}Tn.value=!1,e.close()},Iu=(0,h.iH)("");(0,p.bv)((async()=>{const e=V.kN.service({fullscreen:!0});fu(),window.innerWidth<=900?dn.replace("/iphone"):dn.replace("/home");try{await Promise.all([bu(vu.value),xu(vu.value),Hu(vu.value)]);const e=await k.Z.get(`https://yubb.fun${Qo}/api/getPandoraNext`,{headers:ku}),l=e.data.data;null!=l&&(Iu.value=`${l.current}/${l.total}`)}catch(l){console.error("An error occurred:",l)}finally{e.close()}}));const Du=({row:e})=>0==e.checkSession?"warning-row":"",qu=({row:e})=>0==e.checkPool?"warning-row":"",ju=()=>{window.open(vt.value)},Lu=()=>{var e=vt.value;"/"!==e.charAt(e.length-1)&&(e+="/"),window.open(e+"shared.html")},Mu=()=>{var e=vt.value;"/"!==e.charAt(e.length-1)&&(e+="/"),window.open(e+"setup")},Zu=()=>{window.open("https://apifox.com/apidoc/shared-40345b46-9c9c-45cc-b494-6a6a387a978f")},Eu=(0,h.iH)("-1");let Ju="";const Ku=(e,l)=>{console.log("选择准备!")},Ru=()=>{cn.value=!0},Yu=()=>{const e=V.kN.service({fullscreen:!0}),l=new Date,a=`${l.getFullYear()}-${(l.getMonth()+1).toString().padStart(2,"0")}-${l.getDate().toString().padStart(2,"0")} ${l.getHours().toString().padStart(2,"0")}:${l.getMinutes().toString().padStart(2,"0")}:${l.getSeconds().toString().padStart(2,"0")}`;""!=uu.value&&(lu.value=!1,ou.value=!1,au.value=!1),0==nu.value&&(eu.value=Ft.value+","+Qt.value,tu.value=!1,lu.value=!1,ou.value=!1,au.value=!1);let o={name:Gt.value,token:eu.value,username:Ft.value,userPassword:Qt.value,shared:lu.value,auto_shared:lu.value,show_user_info:au.value,plus:ou.value,setPoolToken:nu.value,useRefreshToken:tu.value,password:uu.value,updateTime:a};fetch(`https://yubb.fun${Qo}/api/addToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(o)}).then((e=>e.json())).then((l=>{1==l.code?(b.z8.success("添加成功!"),Gt.value="",eu.value="",Ft.value="",Qt.value="",lu.value=!1,au.value=!1,ou.value=!1,nu.value=!1,tu.value=!1,uu.value="",""==o.token&&(o.token=l.data,b.z8.success("已为您自动装填token!"))):b.z8.error(l.msg),uu.value="",Vu(""),e.close()})).catch((l=>{b.z8.error("获取账号出现问题,请检查刷新网址是否正确!"),e.close()})),cn.value=!1},Xu=(0,h.iH)(null),Gu=async e=>{if(Ct.value=e.name,It.value=e.username,Dt.value=e.userPassword,Ot.value=e.token,$t.value=e.access_token,Bt.value=e.share_token,qt.value=e.shared,jt.value=e.show_user_info,Lt.value=e.plus,Mt.value=e.password,Zt.value=e.setPoolToken,Et.value=e.useRefreshToken,Jt.value=e.checkSession,1!=Zt.value)return void(pn.value=!0);const l={Authorization:`Bearer ${e.access_token}`};if(pn.value=!0,Zt.value){const a=await k.Z.get(`${xt.value}/api/token/info/${e.share_token}`,{headers:l});let o=[],n=[];for(let e in a.data.usage)e.startsWith("range")||(n.push(e),o.push(a.data.usage[e]));0==n.length&&0==o.length&&(n=["gpt-4","gpt-3.5-turbo","gpt-3.5-turbo-0613"],o=[0,0,0]);const t=T.S1(Xu.value),u={title:{text:`今日${a.data.usage["range"]} ${Ct.value}各模型用量`,textStyle:{fontSize:14,color:"#606266"},left:"center",top:"bottom"},tooltip:{},legend:{data:n},xAxis:{data:n},yAxis:{},series:[{name:"对话数量",type:"bar",data:o,barWidth:"25%",itemStyle:{color:function(e){const l=["#3498db","#2ecc71","#f1c40f","#9b59b6","#1abc9c","#e67e22","#ecf0f1","#95a5a6","#34495e","#16a085"];return l[e.dataIndex%l.length]}}}]};t.setOption(u)}},Fu=(0,h.iH)(""),Qu=(0,h.iH)(""),ei=(0,h.iH)(""),li=(0,h.iH)(""),ai=(0,h.iH)([]),oi=(0,h.iH)(""),ni=(0,h.iH)(""),ti=(0,h.iH)(""),ui=(0,h.iH)(["default","svip","vip"]),ii=(0,h.iH)(""),ri=e=>{Fu.value=e.oneApi_name,Qu.value=e.token_name,ei.value=e.token_value,li.value=e.oneApi_baseUrl,ni.value=e.oneApi_models,oi.value=e.model_mapping,ti.value=e.oneApi_groups,At.value=e.priority,ii.value=e.shareTime,Un.value=!0};let si=!1,di=!1,mi="";const ci=(e,l)=>{Ct.value=l.name,It.value=l.username,Dt.value=l.userPassword,Ot.value=l.token,Ju=l.token,qt.value=l.shared,jt.value=l.show_user_info,Lt.value=l.plus,Mt.value=l.password,Zt.value=l.setPoolToken,Et.value=l.useRefreshToken,si=Zt.value,di=Et.value,mi=Ot.value,Jt.value=l.checkSession,$t.value=l.access_token,Bt.value=l.share_token,mn.value=!0},pi=async e=>{0==e?vn.value=!0:1==e?hn.value=!0:2==e&&(_n.value=!0)},vi=e=>{const l=V.kN.service({fullscreen:!0});null!=ot.value&&"null"!=ot.value||(ot.value=""),0==En.value&&(Jn.value="",Kn.value="");const a={enabled:En.value,cert_file:Jn.value,key_file:Kn.value},o={provider:nt.value,site_key:tt.value,site_secret:ut.value,site_login:it.value,setup_login:rt.value,oai_username:st.value,oai_password:dt.value},n={proxy_api_prefix:On.value,isolated_conv_title:$n.value,bing:Bn.value,timeout:In.value,proxy_url:Dn.value,public_share:qn.value,site_password:Rn.value,setup_password:Yn.value,loginUsername:Xn.value,loginPassword:Gn.value,license_id:Fn.value,disable_signup:jn.value,auto_conv_arkose:Ln.value,proxy_file_service:Mn.value,custom_doh_host:Zn.value,isGetToken:Qn.value,getTokenPassword:et.value,containerName:lt.value,autoToken_url:at.value,whitelist:ot.value,validation:o,tls:a};fetch(`https://yubb.fun${Qo}/api/requireSetting`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(n)}).then((e=>e.json())).then((e=>{1==e.code?b.z8.success(e.data):b.z8.error(e.msg),fu(),l.close()})).catch((e=>{l.close(),console.error("请求requireSetting接口失败",e),b.z8.error("修改失败!")})),0==e?vn.value=!1:1==e?hn.value=!1:2==e&&(_n.value=!1)},hi=()=>{const e=V.kN.service({fullscreen:!0});"/"!==vt.value.charAt(vt.value.length-1)&&(vt.value+="/");const l={auto_updateSession:mt.value,auto_updateTime:ct.value,auto_updateNumber:pt.value,pandoraNext_outUrl:vt.value,oneAPi_outUrl:ht.value,oneAPi_intoToken:_t.value};fetch(`https://yubb.fun${Qo}/api/controllerTask`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>e.json())).then((l=>{1==l.code?b.z8.success(l.data):b.z8.error(l.msg),e.close()})).catch((l=>{e.close(),console.error("请求controllerTask接口失败",l),b.z8.error("修改失败!")})),fn.value=!1},_i=()=>{const e=V.kN.service({fullscreen:!0});let l="";if(Ju!=Ot.value){const e=new Date;l=`${e.getFullYear()}-${(e.getMonth()+1).toString().padStart(2,"0")}-${e.getDate().toString().padStart(2,"0")} ${e.getHours().toString().padStart(2,"0")}:${e.getMinutes().toString().padStart(2,"0")}:${e.getSeconds().toString().padStart(2,"0")}`}0==Zt.value&&(qt.value=!1,Lt.value=!1,jt.value=!1,Et.value=!1),!0===qt.value?Mt.value="":(Lt.value=!1,jt.value=!1);let a="";a=si!=Zt.value&&mi==Ot.value?0==Zt.value?"您确定要关闭API模型开启web模式,您将无法生成任何的token,但不消耗额度!":1==Et.value?"您确定要开启API模式,并使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!":"您确定要开启API模式,并使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!":di!=Et.value&&mi==Ot.value?1==Et.value?"您确定要切换使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!":"您确定要切换使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!":"修改将要提交,您确定修改好了吗?",f.T.confirm(a,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const l={name:Ct.value,token:Ot.value,username:It.value,userPassword:Dt.value,shared:qt.value,auto_shared:qt.value,show_user_info:jt.value,plus:Lt.value,setPoolToken:Zt.value,useRefreshToken:Et.value,checkSession:Jt.value,password:Mt.value,access_token:$t.value,share_token:Bt.value};fetch(`https://yubb.fun${Qo}/api/requiredToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>e.json())).then((l=>{1==l.code?(b.z8.success(l.data),Vu("")):b.z8.error(l.msg),e.close()})).catch((l=>{e.close(),console.error("请求requireToken接口失败",l),b.z8.error("修改失败!")})),mn.value=!1})).catch((()=>{e.close(),(0,b.z8)({type:"info",message:"编辑取消!"})}))},wi=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${Qo}/api/open`,{headers:ku}),a=l.data.data;null!=a&&""!=a?f.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):b.z8.error(l.data.msg),e.close()},ki=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${Qo}/api/close`,{headers:ku}),a=l.data.data;null!=a&&""!=a?f.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):b.z8.error(l.data.msg),e.close()},fi=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${Qo}/api/restart`,{headers:ku}),a=l.data.data;null!=a&&""!=a?f.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):b.z8.error(l.data.msg),e.close()},bi=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${Qo}/api/reload`,{headers:ku}),a=l.data.data;null!=a&&""!=a?f.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):b.z8.error(l.data.msg),e.close()},gi=(0,h.iH)(""),yi=(0,h.iH)(""),Vi=async()=>{const e=await k.Z.get(`https://yubb.fun${Qo}/api/getPandoraNext`,{headers:ku}),l=e.data.data;if(null!=l){Iu.value=l.current+"/"+l.total,gi.value=l.ip;var a=new Date;const e=new Date(a.getTime()+1e3*l.ttl);var o=e.getFullYear(),n=e.getMonth()+1,t=e.getDate(),u=e.getHours(),i=e.getMinutes(),r=e.getSeconds();yi.value=o+"-"+n+"-"+t+" "+u+":"+i+":"+r}kn.value=!0},Wi=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${Qo}/api/updateAllToken`,{headers:ku}),a=l.data.data;null!=a&&""!=a?(await Promise.all([Vu(""),xu("")]),f.T.alert(a,"温馨提示",{dangerouslyUseHTMLString:!0})):b.z8.error(l.data.msg),e.close()},Ti=e=>{if(0==e.setPoolToken)return void b.z8.error("未开启API模式,无法刷新");let l="您确定要刷新session_token吗,刷新session_token消耗100额度,请您要仔细认真考虑哦!";e.useRefreshToken&&(l="您确定要刷新refresh_token吗,刷新refresh_token消耗1000额度,请您要仔细认真考虑哦!"),f.T.confirm(l,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const l=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/updateSessionToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((a=>{null!=a&&""!=a&&(null!=a.data?(e.token=a.data,Vu(""),f.T.alert("刷新成功!","温馨提醒",{confirmButtonText:"OK"})):b.z8.error(a.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))})).catch((()=>{(0,b.z8)({type:"info",message:"刷新取消!"})}))},Ui=e=>{const l=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/refreshSimplyPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?(xu(""),f.T.alert("刷新成功!","温馨提醒",{confirmButtonText:"OK"})):b.z8.error(e.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},xi=e=>{Fu.value=e.oneApi_name,Qu.value=e.token_name,ei.value=e.token_value,li.value=e.oneApi_baseUrl,ai.value=e.oneApi_models.split(","),oi.value=e.model_mapping,ui.value=e.oneApi_groups.split(","),At.value=e.priority,ii.value=e.shareTime,xn.value=!0},Ai=()=>{const e=V.kN.service({fullscreen:!0}),l={oneApi_name:Fu.value,token_name:Qu.value,token_value:ei.value,oneApi_baseUrl:li.value,oneApi_models:ai.value.toString(),model_mapping:oi.value,oneApi_groups:ui.value.toString(),priority:At.value};fetch(`https://yubb.fun${Qo}/api/requireShareToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"}):b.z8.error(l.msg)),Au(""),e.close()})).catch((l=>{e.close(),console.error("Error:",l)})),xn.value=!1},Hi=e=>{if(0==e.setPoolToken)return void b.z8.error("未开启API模式,无法生成");const l=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/updateToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?f.T.alert("生成shareToken成功!","温馨提醒",{confirmButtonText:"OK"}):b.z8.error(e.msg)),Vu(""),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},zi=e=>{const l=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/changePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?(xu(""),f.T.alert("更换pool_token成功!","温馨提醒",{confirmButtonText:"OK"})):b.z8.error(e.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},Pi=(e,l)=>{const a=V.kN.service({fullscreen:!0});f.T.confirm("您确定要删除这个Pool_Token吗,删除之后就找不到咯,请您要仔细认真考虑哦!","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{fetch(`https://yubb.fun${Qo}/api/deletePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e.data?(xu(""),b.z8.success(e.data),a.close()):(xu(""),b.z8.error(e.msg),a.close()),bn.value=!1})).catch((e=>{console.error("删除失败",e),xu(""),a.close(),bn.value=!1}))})).catch((()=>{a.close(),(0,b.z8)({type:"info",message:"删除取消!"})}))},Si=(e,l)=>{const a=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/verifySimplyPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?(xu(""),f.T.alert(e.data,"温馨提醒",{confirmButtonText:"OK"})):(xu(""),b.z8.error(e.msg))),a.close()})).catch((e=>{a.close(),console.error("Error:",e)}))},Ni=(e,l)=>{const a=V.kN.service({fullscreen:!0});let o="";f.T.confirm("您确定要删除这个Token吗,删除之后就找不到咯,记得点击全部刷新poolToken","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`https://yubb.fun${Qo}/api/deleteToken`,l,{headers:ku}).then((async e=>{1==l.setPoolToken&&await k.Z.get(`https://yubb.fun${Qo}/api/updateAllPoolToken`,{headers:ku}),o=e.data.data,Vu(""),(0,b.z8)({type:"success",message:o}),a.close()})).catch((e=>{a.close(),console.error("删除失败",e)}))})).catch((()=>{(0,b.z8)({type:"info",message:"删除取消!"}),a.close()}))},Ci=(e,l)=>{const a=V.kN.service({fullscreen:!0});let o="";f.T.confirm("您确定要删除这个share_Token吗,删除之后就找不到咯","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`https://yubb.fun${Qo}/api/deleteShareToken`,l,{headers:ku}).then((async e=>{o=e.data.data,Au(""),(0,b.z8)({type:"success",message:o}),a.close()})).catch((e=>{a.close(),console.error("删除失败",e)}))})).catch((()=>{(0,b.z8)({type:"info",message:"删除取消!"}),a.close()}))},Oi=e=>{if(!e)return"";var l=new Date;const a=(0,g.Z)(e.updateTime),o=(0,y.Z)(l,a);return e.token.length>=2e3?o>=80?"已经过去了至少80天":Math.ceil(80-o)+"天":e.token.length<200&&!e.token.includes("fk-")?"永久":o>=10?"已经过去了至少10天":Math.ceil(10-o)+"天"},$i=e=>e.substring(0,30)+"...",Bi=()=>{localStorage.removeItem("jwtToken"),dn.replace("/")},Ii=()=>{wn.value=!0},Di=async()=>{await Au(""),Wn.value=!0},qi=()=>{Uu(),gn.value=!0},ji=()=>{window.open("https://github.com/Yanyutin753/PandoraNext-TokensTool")},Li=e=>{const l=document.createElement("textarea");l.value=e,document.body.appendChild(l),l.select(),document.execCommand("copy"),document.body.removeChild(l),(0,b.z8)({type:"success",message:"复制成功!"})},Mi=e=>{const l=nn.value,a=l.map((e=>e));if(0!==l.length)if("选中删除Token"!=e)if("选中刷新Token"!=e)"选中合成pool_token"==e?Pu():"选中修改pool_token"==e&&(wt.value="",ft.value="",Ht.value="",bt.value="",yt.value=!1,Wt.value=[],Vt.value="",xt.value="",ln.value=[],At.value=0,yn.value=!0);else{let e=0;const l=nn.value,a=l.map((e=>e));a.forEach(((l,a)=>{l.setPoolToken&&(l.useRefreshToken?e+=1e3:e+=100)}));const o="您确定要花"+e+"积分刷新这"+l.length+"个Token吗,请您要仔细认真考虑哦!";f.T.confirm(o,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/updateSessionTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(Vu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):b.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,b.z8)({type:"info",message:"刷新取消!"})}))}else{const e=V.kN.service({fullscreen:!0});let o="";f.T.confirm("您确定要删除这"+l.length+"个Token吗,删除之后就找不到咯","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`https://yubb.fun${Qo}/api/deleteTokenList`,a,{headers:ku}).then((async l=>{await k.Z.get(`https://yubb.fun${Qo}/api/updateAllPoolToken`,{headers:ku}),o=l.data.data,Vu(""),(0,b.z8)({type:"success",message:o}),e.close()})).catch((l=>{e.close(),console.error("删除失败",l)}))})).catch((()=>{(0,b.z8)({type:"info",message:"删除取消!"}),e.close()}))}else(0,b.z8)("未选择数据")},Zi=e=>{kt.value=e.poolName,ft.value=e.shareTokens,Ht.value=e.poolToken,bt.value=e.poolTime,yt.value=e.intoOneApi,Wt.value=e.poolOneApi_models.split(","),Vt.value=e.poolModel_mapping,xt.value=e.oneApi_pandoraUrl,en.value=e.groupChecked.split(","),At.value=e.priority,An.value=!0},Ei=e=>{const l=tn.value,a=l.map((e=>e));if(0!==a.length)if("选中检查pool_token"!=e)if("选中刷新pool_token"!=e)if("选中更换pool_token"!=e)if("选中删除pool_token"!=e);else{l.length;const e="您确定要删除这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";f.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/deletePoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(xu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):b.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,b.z8)({type:"info",message:"删除取消!"})}))}else{l.length;const e="您确定要更换这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";f.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/changePoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(xu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):b.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,b.z8)({type:"info",message:"更换取消!"})}))}else{const e="您确定要刷新这"+l.length+"个pool_token吗?";f.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/refreshSimplyPoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(xu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):b.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,b.z8)({type:"info",message:"刷新取消!"})}))}else{let e=4*l.length;const o="您确定要花"+e+"积分检查这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";f.T.confirm(o,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/verifySimplyPoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(xu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):b.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,b.z8)({type:"info",message:"检查取消!"})}))}else(0,b.z8)("未选择数据")},Ji=(0,h.iH)(null),Ki=async()=>{Vn.value=!0;const e=await k.Z.get(`https://yubb.fun${Qo}/api/modelsUsage`,{headers:ku});let l=e.data.data.map((e=>e.usage)),a=e.data.data.map((e=>e.model));const o=T.S1(Ji.value),n={title:{text:"tokensTool每日接口对话统计",fontSize:18,color:"#606266"},tooltip:{},legend:{data:a},xAxis:{data:a},yAxis:{},series:[{name:"对话数量",type:"bar",data:l,barWidth:"25%",itemStyle:{color:function(e){const l=["#e74c3c","#3498db","#2ecc71","#f1c40f","#9b59b6","#1abc9c","#e67e22","#ecf0f1","#95a5a6","#34495e","#16a085"];return l[e.dataIndex%l.length]}}}]};o.setOption(n)};return(e,l)=>{const a=(0,p.up)("el-menu-item"),w=c.JO,k=(0,p.up)("el-sub-menu"),f=(0,p.up)("h10"),b=(0,p.up)("el-menu"),g=m.zx,y=(0,p.up)("el-page-header"),V=(0,p.up)("el-radio-button"),T=(0,p.up)("el-radio-group"),Qo=d.ol,nn=(0,p.up)("el-table-column"),tn=(0,p.up)("el-button"),dn=(0,p.up)("el-tag"),bt=(0,p.up)("el-popover"),Jt=(0,p.up)("el-option"),wu=(0,p.up)("el-select"),ku=(0,p.up)("el-button-group"),fu=s.gN,Uu=r.rs,xu=i.TS,Au=u.l0,Hu=t.Vq,zu=(0,p.up)("CopyDocument"),Pu=(0,p.up)("el-icon"),Ju=(0,p.up)("el-select-group"),ii=(0,p.up)("el-dialog"),si=(0,p.up)("el-form-item"),di=(0,p.up)("el-input"),mi=n.XZ,Ri=o.cO,Yi=(0,p.Q2)("loading");return(0,p.wg)(),(0,p.iD)(p.HY,null,[(0,p._)("div",U,[x,(0,p.Wm)(b,{"default-active":Eu.value,class:"el-menu-demo",mode:"horizontal",ellipsis:!1,onSelect:Ku,"active-text-color":"#0ea27e","text-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Wm)(a,null,{default:(0,p.w5)((()=>[(0,p._)("img",{style:{width:"40px"},src:_,alt:"Element logo",onClick:ji})])),_:1}),(0,p.Wm)(a,{onClick:Vi},{title:(0,p.w5)((()=>[(0,p._)("div",A,[(0,p._)("h2",null,(0,v.zw)(Iu.value),1)]),(0,p.Wm)(w,{name:"replay",size:"20"})])),_:1}),H,(0,p.Wm)(a,{index:"1",onClick:Ii},{default:(0,p.w5)((()=>[(0,p.Uk)("pool_token列表")])),_:1}),(0,p.Wm)(a,{index:"2",onClick:Di},{default:(0,p.w5)((()=>[(0,p.Uk)("share_token列表")])),_:1}),(0,p.Wm)(k,{index:"3"},{title:(0,p.w5)((()=>[(0,p.Uk)("跳转Web服务")])),default:(0,p.w5)((()=>[(0,p.Wm)(k,{index:"3-1"},{title:(0,p.w5)((()=>[(0,p.Uk)("跳转PandoraWeb服务")])),default:(0,p.w5)((()=>[(0,p.Wm)(a,{index:"3-1-1",onClick:ju},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(lt.value)+"主页",1)])),_:1}),(0,p.Wm)(a,{index:"3-1-2",onClick:Lu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(lt.value)+"共享页",1)])),_:1}),(0,p.Wm)(a,{index:"3-1-3",onClick:Mu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(lt.value)+"修改页",1)])),_:1})])),_:1}),(0,p.Wm)(k,{index:"3-2"},{title:(0,p.w5)((()=>[(0,p.Uk)("获取token地址")])),default:(0,p.w5)((()=>[(0,p.Wm)(a,{index:"3-2-1"},{default:(0,p.w5)((()=>[z])),_:1}),(0,p.Wm)(a,{index:"3-2-2"},{default:(0,p.w5)((()=>[P])),_:1}),(0,p.Wm)(a,{index:"3-2-3"},{default:(0,p.w5)((()=>[S])),_:1})])),_:1}),(0,p.Wm)(a,{index:"3-3",onClick:Zu},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool使用说明")])),_:1})])),_:1}),(0,p.Wm)(k,{index:"5"},{title:(0,p.w5)((()=>[(0,p.Uk)("系统设置")])),default:(0,p.w5)((()=>[(0,p.Wm)(a,{index:"5-1",onClick:l[0]||(l[0]=e=>pi(Xo))},{default:(0,p.w5)((()=>[(0,p.Uk)("PandoraNext设置")])),_:1}),(0,p.Wm)(a,{index:"5-2",onClick:l[1]||(l[1]=e=>pi(Go))},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool设置")])),_:1}),(0,p.Wm)(a,{index:"5-3",onClick:l[2]||(l[2]=e=>pi(Fo))},{default:(0,p.w5)((()=>[(0,p.Uk)("验证码信息设置")])),_:1}),(0,p.Wm)(a,{index:"5-3",onClick:l[3]||(l[3]=e=>fn.value=!0)},{default:(0,p.w5)((()=>[(0,p.Uk)("定时&接口设置")])),_:1})])),_:1}),(0,p.Wm)(k,{index:"6"},{title:(0,p.w5)((()=>[(0,p.Uk)("系统功能")])),default:(0,p.w5)((()=>[(0,p.Wm)(k,{index:"6-1"},{title:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(lt.value)+"状态",1)])),default:(0,p.w5)((()=>[(0,p.Wm)(a,{index:"6-1-1",onClick:wi},{default:(0,p.w5)((()=>[(0,p.Uk)("开启"+(0,v.zw)(lt.value),1)])),_:1}),(0,p.Wm)(a,{index:"6-1-2",onClick:ki},{default:(0,p.w5)((()=>[(0,p.Uk)("暂停"+(0,v.zw)(lt.value),1)])),_:1}),(0,p.Wm)(a,{index:"6-1-3",onClick:fi},{default:(0,p.w5)((()=>[(0,p.Uk)("重启"+(0,v.zw)(lt.value),1)])),_:1}),(0,p.Wm)(a,{index:"6-1-4",onClick:bi},{default:(0,p.w5)((()=>[(0,p.Uk)("重载"+(0,v.zw)(lt.value),1)])),_:1})])),_:1}),(0,p.Wm)(a,{index:"6-3",onClick:Ki},{default:(0,p.w5)((()=>[(0,p.Uk)("copilot每日用量统计")])),_:1}),(0,p.Wm)(a,{index:"6-2",onClick:qi},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool登录日志")])),_:1}),(0,p.Wm)(a,{index:"6-4",onClick:Bi},{default:(0,p.w5)((()=>[(0,p.Wm)(f,{style:{"font-size":"14px"}},{default:(0,p.w5)((()=>[(0,p.Uk)("退出登录")])),_:1})])),_:1})])),_:1})])),_:1},8,["default-active"]),(0,p._)("div",N,[(0,p._)("div",C,[(0,p.Wm)(y,{icon:null,title:" "},{content:(0,p.w5)((()=>[O])),extra:(0,p.w5)((()=>[(0,p._)("div",{class:"addToken",onClick:Ru},[(0,p.Wm)(g,{square:"",icon:"add-o",color:"#0ea27e",class:"addTokenButton"})])])),_:1})]),(0,p._)("div",$,[(0,p._)("div",B,[(0,p.Wm)(Qo,{modelValue:vu.value,"onUpdate:modelValue":l[8]||(l[8]=e=>vu.value=e),"show-action":"",shape:"round",clearable:"",placeholder:"请输入搜索token名称和类型",onSearch:bu},{action:(0,p.w5)((()=>[(0,p.Wm)(T,{modelValue:sn.value,"onUpdate:modelValue":l[7]||(l[7]=e=>sn.value=e),label:"size control"},{default:(0,p.w5)((()=>[(0,p.Wm)(V,{type:"success",plain:"",label:"WEB",onClick:l[4]||(l[4]=e=>Tu(vu.value))},{default:(0,p.w5)((()=>[(0,p.Uk)("WEB")])),_:1}),(0,p.Wm)(V,{type:"success",plain:"",label:"ALL",onClick:l[5]||(l[5]=e=>Vu(vu.value))},{default:(0,p.w5)((()=>[(0,p.Uk)("ALL")])),_:1}),(0,p.Wm)(V,{type:"success",plain:"",label:"API",onClick:l[6]||(l[6]=e=>Wu(vu.value))},{default:(0,p.w5)((()=>[(0,p.Uk)("API")])),_:1})])),_:1},8,["modelValue"])])),_:1},8,["modelValue"])]),(0,p._)("div",I,[(0,p.wy)(((0,p.wg)(),(0,p.j4)((0,h.SU)(W.eI),{data:Kt.value,style:{width:"100%"},onSelectionChange:un,ref_key:"multipleTableRef",ref:an,"default-sort":{prop:"updateTime",prop:"setPoolToken"},"row-class-name":Du},{default:(0,p.w5)((()=>[(0,p.Wm)(nn,{type:"selection",width:"45"}),(0,p.Wm)(nn,{label:"名称",prop:"setPoolToken",sortable:"","min-width":"136"},{default:(0,p.w5)((e=>[(0,p._)("div",D,[(0,p.Wm)(tn,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[(0,p._)("h5",null,(0,v.zw)(e.row.setPoolToken?e.row.useRefreshToken?"refAPI":"sesAPI":"Web"),1)])),_:2},1024),(0,p._)("span",q,(0,v.zw)(e.row.name),1)])])),_:1}),(0,p.Wm)(nn,{label:"账号信息","min-width":"200"},{default:(0,p.w5)((e=>[(0,p.Wm)(bt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p._)("div",null,"账号: "+(0,v.zw)(e.row.username),1),(0,p._)("div",null,"密码: "+(0,v.zw)(e.row.userPassword),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(dn,null,{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(e.row.username),1)])),_:2},1024)])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{label:"Token值","min-width":"270"},{default:(0,p.w5)((e=>[(0,p.Wm)(bt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p._)("div",null,"token: "+(0,v.zw)($i(e.row.token)),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(dn,null,{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)($i(e.row.token)),1)])),_:2},1024)])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{prop:"updateTime",sortable:"",label:"有效时间","min-width":"167"},{default:(0,p.w5)((e=>[(0,p.Wm)(bt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p._)("div",null,"注册时间:"+(0,v.zw)(e.row.updateTime),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(dn,null,{default:(0,p.w5)((()=>[(0,p.Uk)("距离过期还有:"+(0,v.zw)(Oi(e.row)),1)])),_:2},1024)])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{label:"操作方法",width:"335"},{default:(0,p.w5)((e=>[(0,p.Wm)(tn,{size:"small",onClick:l=>ci(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("编辑")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"primary",onClick:l=>Gu(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"danger",onClick:l=>Ni(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"success",onClick:l=>Ti(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("刷新")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"warning",onClick:l=>Hi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("生成")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])),[[Yi,e.loading]])]),(0,p._)("div",j,[(0,p.Wm)(wu,{modelValue:Hn.value,"onUpdate:modelValue":l[9]||(l[9]=e=>Hn.value=e),clearable:"",filterable:"",placeholder:"请选择批量操作",class:"ml-4"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(zn,(e=>(0,p.Wm)(Jt,{key:e.buttonValue,label:e.label,value:e.buttonValue},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),(0,p.Wm)(tn,{class:"ml-4",onClick:l[10]||(l[10]=e=>Mi(Hn.value))},{default:(0,p.w5)((()=>[L])),_:1}),(0,p.Wm)(ku,{class:"my-button"},{default:(0,p.w5)((()=>[(0,p.Wm)(tn,{onClick:Wi},{default:(0,p.w5)((()=>[M])),_:1})])),_:1})])]),Z,E,J])]),(0,p.Wm)(Hu,{show:mn.value,"onUpdate:show":l[21]||(l[21]=e=>mn.value=e),title:"📌修改token信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",K,[(0,p.Wm)(Au,{onSubmit:l[20]||(l[20]=e=>_i())},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[R,(0,p.Wm)(fu,{modelValue:It.value,"onUpdate:modelValue":l[11]||(l[11]=e=>It.value=e),name:"OpenAi邮箱",label:"OpenAi邮箱",placeholder:"OpenAi邮箱",rules:[{required:!0,message:"请填写OpenAi邮箱"}]},null,8,["modelValue"]),Y,(0,p.Wm)(fu,{modelValue:Dt.value,"onUpdate:modelValue":l[12]||(l[12]=e=>Dt.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码",rules:[{required:!0,message:"请填写OpenAi密码"}]},null,8,["modelValue"]),X,(0,p.Wm)(fu,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Zt.value,"onUpdate:modelValue":l[13]||(l[13]=e=>Zt.value=e)},null,8,["modelValue"])])),_:1}),1==Zt.value?((0,p.wg)(),(0,p.iD)("div",G,[F,(0,p.Wm)(fu,{name:"switch",label:"是否使用refreshToken"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Et.value,"onUpdate:modelValue":l[14]||(l[14]=e=>Et.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0),1==Zt.value?((0,p.wg)(),(0,p.iD)("div",Q,[ee,(0,p.Wm)(fu,{name:"switch",label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:qt.value,"onUpdate:modelValue":l[15]||(l[15]=e=>qt.value=e)},null,8,["modelValue"])])),_:1}),1==qt.value?((0,p.wg)(),(0,p.iD)("div",le,[ae,(0,p.Wm)(fu,{name:"switch",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:jt.value,"onUpdate:modelValue":l[16]||(l[16]=e=>jt.value=e)},null,8,["modelValue"])])),_:1}),oe,(0,p.Wm)(fu,{name:"switch",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Lt.value,"onUpdate:modelValue":l[17]||(l[17]=e=>Lt.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0)])):(0,p.kq)("",!0),0==qt.value||0==Zt.value?((0,p.wg)(),(0,p.iD)("div",ne,[te,(0,p.Wm)(fu,{modelValue:Mt.value,"onUpdate:modelValue":l[18]||(l[18]=e=>Mt.value=e),name:"进入Token的密码",label:"进入Token的密码",placeholder:"填了将不会分享给他人!",rules:[{validator:Nt}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),ue,(0,p.Wm)(fu,{modelValue:Ot.value,"onUpdate:modelValue":l[19]||(l[19]=e=>Ot.value=e),label:"Token的值",type:"textarea",maxlength:"5000",placeholder:"请填写OpenAi的Token(选填),session或refresh_token",autosize:{maxHeight:100,minHeight:20},"show-word-limit":""},null,8,["modelValue"]),ie])),_:1}),(0,p._)("div",re,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),se])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:cn.value,"onUpdate:show":l[33]||(l[33]=e=>cn.value=e),title:"✨添加token信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"addTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",de,[(0,p.Wm)(Au,{onSubmit:l[32]||(l[32]=e=>Yu())},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[me,(0,p.Wm)(fu,{modelValue:Gt.value,"onUpdate:modelValue":l[22]||(l[22]=e=>Gt.value=e),name:"Token用户名",label:"Token用户名",placeholder:"Token用户名",rules:[{required:!0,message:"请填写Token用户名"}]},null,8,["modelValue"]),ce,(0,p.Wm)(fu,{modelValue:Ft.value,"onUpdate:modelValue":l[23]||(l[23]=e=>Ft.value=e),name:"OpenAi邮箱",label:"OpenAi邮箱",placeholder:"OpenAi邮箱",rules:[{required:!0,message:"请填写OpenAi邮箱"}]},null,8,["modelValue"]),pe,(0,p.Wm)(fu,{modelValue:Qt.value,"onUpdate:modelValue":l[24]||(l[24]=e=>Qt.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码",rules:[{required:!0,message:"请填写OpenAi密码"}]},null,8,["modelValue"]),ve,(0,p.Wm)(fu,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:nu.value,"onUpdate:modelValue":l[25]||(l[25]=e=>nu.value=e)},null,8,["modelValue"])])),_:1}),1==nu.value?((0,p.wg)(),(0,p.iD)("div",he,[_e,(0,p.Wm)(fu,{name:"switch",label:"是否使用refreshToken"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:tu.value,"onUpdate:modelValue":l[26]||(l[26]=e=>tu.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0),1==nu.value?((0,p.wg)(),(0,p.iD)("div",we,[ke,(0,p.Wm)(fu,{name:"switch",label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:lu.value,"onUpdate:modelValue":l[27]||(l[27]=e=>lu.value=e)},null,8,["modelValue"])])),_:1}),1==lu.value?((0,p.wg)(),(0,p.iD)("div",fe,[be,(0,p.Wm)(fu,{name:"switch",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:au.value,"onUpdate:modelValue":l[28]||(l[28]=e=>au.value=e)},null,8,["modelValue"])])),_:1}),ge,(0,p.Wm)(fu,{name:"switch",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:ou.value,"onUpdate:modelValue":l[29]||(l[29]=e=>ou.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0)])):(0,p.kq)("",!0),""==lu.value?((0,p.wg)(),(0,p.iD)("div",ye,[Ve,(0,p.Wm)(fu,{modelValue:uu.value,"onUpdate:modelValue":l[30]||(l[30]=e=>uu.value=e),name:"进入Token的密码",label:"进入Token的密码",placeholder:"填了将不会分享给他人!",rules:[{validator:Nt}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),1==nu.value?((0,p.wg)(),(0,p.iD)("div",We,[Te,(0,p.Wm)(fu,{rows:"3",type:"textarea",maxlength:"5000","show-word-limit":"",modelValue:eu.value,"onUpdate:modelValue":l[31]||(l[31]=e=>eu.value=e),name:"Token的值",label:"Token的值",placeholder:"选填(可不填,不填则使用账号密码),目前只支持session_token或refresh_token"},null,8,["modelValue"])])):(0,p.kq)("",!0),Ue])),_:1}),(0,p._)("div",xe,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Ae])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:pn.value,"onUpdate:show":l[53]||(l[53]=e=>pn.value=e),title:"🔎token信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"showDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",He,[(0,p.Wm)(Au,null,{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[ze,(0,p.Wm)(fu,{modelValue:Ct.value,"onUpdate:modelValue":l[34]||(l[34]=e=>Ct.value=e),name:"Token用户名",label:"Token用户名",placeholder:"Token用户名","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[35]||(l[35]=e=>Li(Ct.value))},null,8,["modelValue"]),Pe,(0,p.Wm)(fu,{modelValue:Mt.value,"onUpdate:modelValue":l[36]||(l[36]=e=>Mt.value=e),type:"temPassword",name:"进入Token的密码",label:"进入Token的密码",placeholder:"填了将不会分享给他人(如不填则输入Token名即可进入)!","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[37]||(l[37]=e=>Li(Mt.value))},null,8,["modelValue"]),Se,(0,p.Wm)(fu,{modelValue:It.value,"onUpdate:modelValue":l[38]||(l[38]=e=>It.value=e),name:"OpenAi用户名",label:"OpenAi用户名",placeholder:"OpenAi用户名","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[39]||(l[39]=e=>Li(It.value))},null,8,["modelValue"]),Ne,(0,p.Wm)(fu,{modelValue:Dt.value,"onUpdate:modelValue":l[40]||(l[40]=e=>Dt.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[41]||(l[41]=e=>Li(Dt.value))},null,8,["modelValue"]),Ce,(0,p.Wm)(fu,{name:"temShared",readonly:!0,label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:qt.value,"onUpdate:modelValue":l[42]||(l[42]=e=>qt.value=e)},null,8,["modelValue"])])),_:1}),Oe,(0,p.Wm)(fu,{readonly:!0,name:"temShow_user_info",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:jt.value,"onUpdate:modelValue":l[43]||(l[43]=e=>jt.value=e)},null,8,["modelValue"])])),_:1}),$e,(0,p.Wm)(fu,{readonly:!0,name:"temPlus",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:Lt.value,"onUpdate:modelValue":l[44]||(l[44]=e=>Lt.value=e)},null,8,["modelValue"])])),_:1}),Be,(0,p.Wm)(fu,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:Zt.value,"onUpdate:modelValue":l[45]||(l[45]=e=>Zt.value=e)},null,8,["modelValue"])])),_:1}),Ie,(0,p.Wm)(fu,{name:"switch",label:"是否使用refresh_token"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:Et.value,"onUpdate:modelValue":l[46]||(l[46]=e=>Et.value=e)},null,8,["modelValue"])])),_:1}),De,(0,p.Wm)(fu,{modelValue:Ot.value,"onUpdate:modelValue":l[47]||(l[47]=e=>Ot.value=e),label:"Token的值",type:"textarea",maxlength:"5000",placeholder:"请填写OpenAi的Token(session或refresh_token)","show-word-limit":"","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[48]||(l[48]=e=>Li(Ot.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"]),1==Zt.value?((0,p.wg)(),(0,p.iD)("div",qe,[je,(0,p.Wm)(fu,{modelValue:$t.value,"onUpdate:modelValue":l[49]||(l[49]=e=>$t.value=e),label:"access_token",type:"textarea",maxlength:"5000",placeholder:"请填写OpenAi的access_token","show-word-limit":"","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[50]||(l[50]=e=>Li($t.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"]),Le,(0,p.Wm)(fu,{modelValue:Bt.value,"onUpdate:modelValue":l[51]||(l[51]=e=>Bt.value=e),label:"share_token",type:"textarea",maxlength:"200",placeholder:"请填写OpenAi的share_token","show-word-limit":"","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[52]||(l[52]=e=>Li(Bt.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"])])):(0,p.kq)("",!0)])),_:1})])),_:1}),1==Zt.value?((0,p.wg)(),(0,p.iD)("div",Me,[(0,p._)("div",{ref_key:"chart_show",ref:Xu,style:{width:"auto",height:"300px"}},null,512),Ze])):(0,p.kq)("",!0)])])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:vn.value,"onUpdate:show":l[68]||(l[68]=e=>vn.value=e),title:"PandoraNext设置信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requirePandora"},{default:(0,p.w5)((()=>[(0,p._)("div",Ee,[(0,p.Wm)(Au,{onSubmit:l[67]||(l[67]=e=>vi(Xo))},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Je,(0,p.Wm)(fu,{modelValue:$n.value,"onUpdate:modelValue":l[54]||(l[54]=e=>$n.value=e),name:"对话标题",label:"对话标题",placeholder:"隔离对话设置标题"},null,8,["modelValue"]),Ke,(0,p.Wm)(fu,{modelValue:Bn.value,"onUpdate:modelValue":l[55]||(l[55]=e=>Bn.value=e),name:"绑定IP和端口",label:"绑定IP和端口",placeholder:"绑定IP和端口(选填)"},null,8,["modelValue"]),Re,(0,p.Wm)(fu,{modelValue:Zn.value,"onUpdate:modelValue":l[56]||(l[56]=e=>Zn.value=e),name:"DoH主机名",label:"DoH主机名",placeholder:"配置自定义的DoH主机名(选填)"},null,8,["modelValue"]),Ye,(0,p.Wm)(fu,{modelValue:In.value,"onUpdate:modelValue":l[57]||(l[57]=e=>In.value=e),name:"请求超时时间",label:"请求超时时间",placeholder:"请求超时时间(选填)"},null,8,["modelValue"]),Xe,(0,p.Wm)(fu,{name:"switch",label:"是否分享对话(选填)"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:qn.value,"onUpdate:modelValue":l[58]||(l[58]=e=>qn.value=e)},null,8,["modelValue"])])),_:1}),Ge,(0,p.Wm)(fu,{name:"switch",label:"是否配置证书"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:En.value,"onUpdate:modelValue":l[59]||(l[59]=e=>En.value=e)},null,8,["modelValue"])])),_:1}),1==En.value?((0,p.wg)(),(0,p.iD)("div",Fe,[Qe,(0,p.Wm)(fu,{modelValue:Jn.value,"onUpdate:modelValue":l[60]||(l[60]=e=>Jn.value=e),name:"证书文件",label:"证书文件",placeholder:"证书文件"},null,8,["modelValue"]),el,(0,p.Wm)(fu,{modelValue:Kn.value,"onUpdate:modelValue":l[61]||(l[61]=e=>Kn.value=e),name:"密钥文件",label:"密钥文件",placeholder:"密钥文件"},null,8,["modelValue"])])):(0,p.kq)("",!0),ll,(0,p.Wm)(fu,{name:"switch",label:"是否禁用注册"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:jn.value,"onUpdate:modelValue":l[62]||(l[62]=e=>jn.value=e)},null,8,["modelValue"])])),_:1}),al,(0,p.Wm)(fu,{name:"switch",label:"是否自动打码"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Ln.value,"onUpdate:modelValue":l[63]||(l[63]=e=>Ln.value=e)},null,8,["modelValue"])])),_:1}),ol,(0,p.Wm)(fu,{name:"switch",label:"使用文件代理服务"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Mn.value,"onUpdate:modelValue":l[64]||(l[64]=e=>Mn.value=e)},null,8,["modelValue"])])),_:1}),nl,(0,p.Wm)(fu,{modelValue:Dn.value,"onUpdate:modelValue":l[65]||(l[65]=e=>Dn.value=e),name:"代理服务URL",label:"代理服务URL",placeholder:"代理服务URL(选填)"},null,8,["modelValue"]),tl,(0,p.Wm)(fu,{modelValue:ot.value,"onUpdate:modelValue":l[66]||(l[66]=e=>ot.value=e),name:"白名单",label:"白名单",placeholder:"[]限制所有账号(默认为null)"},null,8,["modelValue"]),ul])),_:1}),(0,p._)("div",il,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),rl])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:hn.value,"onUpdate:show":l[80]||(l[80]=e=>hn.value=e),title:"tokensTool设置信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",sl,[(0,p.Wm)(Au,{onSubmit:l[79]||(l[79]=e=>vi(Go))},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[dl,(0,p.Wm)(fu,{modelValue:Xn.value,"onUpdate:modelValue":l[69]||(l[69]=e=>Xn.value=e),name:"登录用户名",label:"登录用户名",placeholder:"tokensTool用户名"},null,8,["modelValue"]),ml,(0,p.Wm)(fu,{modelValue:Gn.value,"onUpdate:modelValue":l[70]||(l[70]=e=>Gn.value=e),name:"登录密码",label:"登录密码",placeholder:"不少于8位,且同时包含数字和字母",rules:[{validator:zt}]},null,8,["modelValue","rules"]),cl,(0,p.Wm)(fu,{modelValue:On.value,"onUpdate:modelValue":l[71]||(l[71]=e=>On.value=e),name:"proxy接口前缀",label:"proxy接口前缀",placeholder:"proxy模式接口后缀,不少于8位,且同时包含数字和字母",rules:[{validator:zt}]},null,8,["modelValue","rules"]),pl,(0,p.Wm)(fu,{modelValue:at.value,"onUpdate:modelValue":l[72]||(l[72]=e=>at.value=e),name:"proxy模式URL",label:"proxy模式URL",placeholder:"http(s)://(ip:port或者域名)/后缀,同公网服务器填default"},null,8,["modelValue"]),vl,(0,p.Wm)(fu,{modelValue:Yn.value,"onUpdate:modelValue":l[73]||(l[73]=e=>Yn.value=e),name:"重载服务密码",label:"重载服务密码",placeholder:"PandoraNext重载服务密码,不少于8位,且同时包含数字和字母",rules:[{validator:zt}]},null,8,["modelValue","rules"]),hl,(0,p.Wm)(fu,{modelValue:Rn.value,"onUpdate:modelValue":l[74]||(l[74]=e=>Rn.value=e),name:"访问密码",label:"访问密码",placeholder:"PandoraNext访问密码,建议开启访问密码",rules:[{validator:Pt}]},null,8,["modelValue","rules"]),_l,(0,p.Wm)(fu,{modelValue:Fn.value,"onUpdate:modelValue":l[75]||(l[75]=e=>Fn.value=e),name:"验证licenseId",label:"验证licenseId",placeholder:"验证licenseId(github上拿到的license_id)"},null,8,["modelValue"]),wl,(0,p.Wm)(fu,{name:"switch",label:"tokensTool接口"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Qn.value,"onUpdate:modelValue":l[76]||(l[76]=e=>Qn.value=e)},null,8,["modelValue"])])),_:1}),1==Qn.value?((0,p.wg)(),(0,p.iD)("div",kl,[fl,(0,p.Wm)(fu,{modelValue:et.value,"onUpdate:modelValue":l[77]||(l[77]=e=>et.value=e),name:"接口密码",label:"接口密码",placeholder:"tokensTool接口密码,用于获取tokens,不少于8位,且同时包含数字和字母",rules:[{validator:zt}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),bl,(0,p.Wm)(fu,{modelValue:lt.value,"onUpdate:modelValue":l[78]||(l[78]=e=>lt.value=e),name:"监管容器名",label:"监管容器名",placeholder:"监管运行的容器名或文件名,默认为PandoraNext",rules:[{required:!0,message:"请填写监管的容器名"}]},null,8,["modelValue"]),gl])),_:1}),(0,p._)("div",yl,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Vl])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:_n.value,"onUpdate:show":l[89]||(l[89]=e=>_n.value=e),title:"PandoraNext验证信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"verify"},{default:(0,p.w5)((()=>[(0,p._)("div",Wl,[(0,p.Wm)(Au,{onSubmit:l[88]||(l[88]=e=>vi(Fo))},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Tl,(0,p.Wm)(fu,{modelValue:nt.value,"onUpdate:modelValue":l[81]||(l[81]=e=>nt.value=e),name:"验证码提供商",label:"验证码提供商",placeholder:"验证码提供商"},null,8,["modelValue"]),Ul,(0,p.Wm)(fu,{modelValue:tt.value,"onUpdate:modelValue":l[82]||(l[82]=e=>tt.value=e),name:"验证码网站参数",label:"验证码网站参数",placeholder:"验证码网站参数"},null,8,["modelValue"]),xl,(0,p.Wm)(fu,{modelValue:ut.value,"onUpdate:modelValue":l[83]||(l[83]=e=>ut.value=e),name:"验证码API Key",label:"验证码API Key",placeholder:"验证码API Key"},null,8,["modelValue"]),Al,(0,p.Wm)(fu,{name:"switch",label:"是否全站密码登录页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:it.value,"onUpdate:modelValue":l[84]||(l[84]=e=>it.value=e)},null,8,["modelValue"])])),_:1}),Hl,(0,p.Wm)(fu,{name:"switch",label:"是否在设置登录页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:rt.value,"onUpdate:modelValue":l[85]||(l[85]=e=>rt.value=e)},null,8,["modelValue"])])),_:1}),zl,(0,p.Wm)(fu,{name:"switch",label:"是否在输入用户名页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:st.value,"onUpdate:modelValue":l[86]||(l[86]=e=>st.value=e)},null,8,["modelValue"])])),_:1}),Pl,(0,p.Wm)(fu,{name:"switch",label:"是否在输入密码页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:dt.value,"onUpdate:modelValue":l[87]||(l[87]=e=>dt.value=e)},null,8,["modelValue"])])),_:1}),Sl])),_:1}),(0,p._)("div",Nl,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Cl])),_:1},8,["show"]),(0,p.Wm)(ii,{modelValue:wn.value,"onUpdate:modelValue":l[95]||(l[95]=e=>wn.value=e),title:"pool_token列表","align-center":"",width:"78%","close-on-click-modal":!1,class:"shareTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Ol,[(0,p.Wm)(Pu,{onClick:l[90]||(l[90]=e=>Li(vt.value+On.value+"/v1/chat/completions"))},{default:(0,p.w5)((()=>[(0,p.Wm)(zu)])),_:1}),(0,p.Wm)(f,null,{default:(0,p.w5)((()=>[(0,p.Uk)("API地址:"+(0,v.zw)(vt.value)+(0,v.zw)(On.value)+"/v1/chat/completions",1)])),_:1})]),(0,p.Wm)((0,h.SU)(W.eI),{data:Rt.value,"default-sort":{prop:"poolTime",prop:"intoOneApi"},onSelectionChange:rn,ref_key:"multipleTableRefPool",ref:on,"row-class-name":qu,class:"poolDateTable"},{default:(0,p.w5)((()=>[(0,p.Wm)(nn,{type:"selection",width:"45"}),(0,p.Wm)(nn,{label:"pool_token名称",prop:"intoOneApi",sortable:"","min-width":"170"},{default:(0,p.w5)((e=>[(0,p.Wm)(bt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{reference:(0,p.w5)((()=>[(0,p._)("div",$l,[1==e.row.intoOneApi?((0,p.wg)(),(0,p.iD)("div",Bl,[(0,p.Wm)(tn,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[Il])),_:1})])):((0,p.wg)(),(0,p.iD)("div",Dl,[(0,p.Wm)(tn,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[ql])),_:1})])),(0,p._)("span",jl,(0,v.zw)(e.row.poolName),1)])])),default:(0,p.w5)((()=>[(0,p.Wm)(dn,null,{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(e.row.poolOneApi_models),1)])),_:2},1024)])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{label:"pool_token值","min-width":"325"},{default:(0,p.w5)((e=>[(0,p._)("div",Ll,[(0,p.Wm)(Pu,{onClick:l=>Li(e.row.poolToken)},{default:(0,p.w5)((()=>[(0,p.Wm)(zu)])),_:2},1032,["onClick"]),(0,p._)("span",Ml,(0,v.zw)(e.row.poolToken),1)])])),_:1}),(0,p.Wm)(nn,{label:"使用token名集合","min-width":"165"},{default:(0,p.w5)((e=>[(0,p.Wm)(bt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(e.row.shareTokens),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(dn,null,{default:(0,p.w5)((()=>[Zl])),_:1})])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{property:"poolTime",label:"更新时间",prop:"poolTime",sortable:"","min-width":"170"}),(0,p.Wm)(nn,{label:"操作方法","min-width":"335"},{default:(0,p.w5)((e=>[(0,p.Wm)(tn,{size:"small",onClick:l=>Zi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"warning",onClick:l=>Si(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("检验")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"danger",onClick:l=>Pi(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"success",onClick:l=>Ui(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("刷新")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"primary",onClick:l=>zi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("更换")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"]),(0,p.Wm)(Ju,{class:"pool-button flex-container"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:Nn.value,"onUpdate:modelValue":l[91]||(l[91]=e=>Nn.value=e),filterable:"",clearable:"",placeholder:"请选择批量操作"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Cn,(e=>(0,p.Wm)(Jt,{key:e.buttonPoolValue,label:e.label,value:e.buttonPoolValue},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),(0,p.Wm)(tn,{onClick:l[92]||(l[92]=e=>Ei(Nn.value))},{default:(0,p.w5)((()=>[El])),_:1}),(0,p.Wm)(Qo,{modelValue:hu.value,"onUpdate:modelValue":l[93]||(l[93]=e=>hu.value=e),shape:"round",clearable:"",placeholder:"请输入搜索pool_token名称",onSearch:l[94]||(l[94]=e=>yu(hu.value)),class:"onPoolToken"},null,8,["modelValue"])])),_:1}),Jl])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:kn.value,"onUpdate:modelValue":l[99]||(l[99]=e=>kn.value=e),title:"PandoraNext余额","align-center":"",width:"auto","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Kl,[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Rl,(0,p.Wm)(fu,{modelValue:Iu.value,"onUpdate:modelValue":l[96]||(l[96]=e=>Iu.value=e),name:"PandoraNext用量",label:"PandoraNext用量",placeholder:"PandoraNext用量"},null,8,["modelValue"]),Yl,(0,p.Wm)(fu,{modelValue:gi.value,"onUpdate:modelValue":l[97]||(l[97]=e=>gi.value=e),name:"绑定IP",label:"绑定IP",placeholder:"绑定IP"},null,8,["modelValue"]),Xl,(0,p.Wm)(fu,{modelValue:yi.value,"onUpdate:modelValue":l[98]||(l[98]=e=>yi.value=e),name:"重置时间",label:"重置时间",placeholder:"重置时间"},null,8,["modelValue"]),Gl])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:fn.value,"onUpdate:modelValue":l[107]||(l[107]=e=>fn.value=e),title:"定时刷新&PandoraNext网址","align-center":"","max-width":"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Fl,[(0,p.Wm)(Au,{onSubmit:l[106]||(l[106]=e=>hi())},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Ql,(0,p.Wm)(fu,{name:"switch",label:"是否自动刷新session_token"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:mt.value,"onUpdate:modelValue":l[100]||(l[100]=e=>mt.value=e)},null,8,["modelValue"])])),_:1}),1==mt.value?((0,p.wg)(),(0,p.iD)("div",ea,[la,(0,p.Wm)(fu,{modelValue:ct.value,"onUpdate:modelValue":l[101]||(l[101]=e=>ct.value=e),name:"刷新session的时间",label:"刷新session的时间","input-align":"right",placeholder:"自动刷新session的时间 (天为单位)"},null,8,["modelValue"]),aa,(0,p.Wm)(fu,{modelValue:pt.value,"onUpdate:modelValue":l[102]||(l[102]=e=>pt.value=e),name:"刷新session的个数",label:"刷新session的个数","input-align":"right",placeholder:"自动刷新session的个数 (个)"},null,8,["modelValue"]),oa])):(0,p.kq)("",!0),(0,p.Wm)(fu,{modelValue:vt.value,"onUpdate:modelValue":l[103]||(l[103]=e=>vt.value=e),name:"PandoraNext的公网访问地址",label:"PandoraNext的公网访问地址","input-align":"right",placeholder:"PandoraNext的公网访问地址"},null,8,["modelValue"]),na,(0,p.Wm)(fu,{modelValue:ht.value,"onUpdate:modelValue":l[104]||(l[104]=e=>ht.value=e),name:"oneApi的公网访问地址",label:"oneApi的公网访问地址","input-align":"right",placeholder:"oneApi的公网访问地址"},null,8,["modelValue"]),ta,(0,p.Wm)(fu,{modelValue:_t.value,"onUpdate:modelValue":l[105]||(l[105]=e=>_t.value=e),name:"oneApi的系统令牌",label:"oneApi的系统令牌","input-align":"right",placeholder:"oneApi的系统令牌"},null,8,["modelValue"]),ua])),_:1}),(0,p._)("div",ia,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:bn.value,"onUpdate:modelValue":l[115]||(l[115]=e=>bn.value=e),title:"✨添加pool_token信息","align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",ra,[(0,p.Wm)(Au,{onSubmit:Su},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[sa,(0,p.Wm)(fu,{modelValue:gt.value,"onUpdate:modelValue":l[108]||(l[108]=e=>gt.value=e),name:"为pool_token名",label:"pool_token名","input-align":"right",placeholder:"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字",rules:[{validator:St}]},null,8,["modelValue","rules"]),da,(0,p.Wm)(fu,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:yt.value,"onUpdate:modelValue":l[109]||(l[109]=e=>yt.value=e)},null,8,["modelValue"])])),_:1}),1==yt.value?((0,p.wg)(),(0,p.iD)("div",ma,[ca,(0,p._)("div",pa,[(0,p.Wm)(si,{label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:Tt.value,"onUpdate:modelValue":l[110]||(l[110]=e=>Tt.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Sn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),va])),_:1}),ha,(0,p.Wm)(si,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(di,{modelValue:Ut.value,"onUpdate:modelValue":l[111]||(l[111]=e=>Ut.value=e),type:"textarea",rows:10,placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),_a,(0,p.Wm)(fu,{modelValue:At.value,"onUpdate:modelValue":l[112]||(l[112]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)"},null,8,["modelValue"]),wa,(0,p.Wm)(fu,{"input-align":"right",name:"checkboxGroup",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:ln.value,"onUpdate:modelValue":l[113]||(l[113]=e=>ln.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),ka,(0,p.Wm)(fu,{modelValue:xt.value,"onUpdate:modelValue":l[114]||(l[114]=e=>xt.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right",placeholder:"自定义PandoraNext地址"},null,8,["modelValue"]),fa])):(0,p.kq)("",!0)])),_:1}),(0,p._)("div",ba,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:gn.value,"onUpdate:modelValue":l[116]||(l[116]=e=>gn.value=e),title:"tokensTool登录日志","align-center":"",width:"50%","close-on-click-modal":!1,class:"showLoginDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",ga,[(0,p.Wm)((0,h.SU)(W.eI),{"row-class-name":qu,data:Xt.value},{default:(0,p.w5)((()=>[(0,p.Wm)(nn,{prop:"ipAddress",label:"登录地区","min-width":"180"},{default:(0,p.w5)((e=>[(0,p._)("div",ya,[(0,p._)("span",Va,(0,v.zw)(e.row.ipAddress),1)])])),_:1}),(0,p.Wm)(nn,{label:"登录IP","min-width":"145"},{default:(0,p.w5)((e=>[(0,p._)("div",Wa,[(0,p.Wm)(Pu,{onClick:l=>Li(e.row.poolToken)},{default:(0,p.w5)((()=>[(0,p.Wm)(zu)])),_:2},1032,["onClick"]),(0,p._)("span",Ta,(0,v.zw)(e.row.requestIp),1)])])),_:1}),(0,p.Wm)(nn,{label:"成功/失败","min-width":"105"},{default:(0,p.w5)((e=>[(0,p._)("div",Ua,[(0,p._)("span",xa,(0,v.zw)(e.row.inRequestNumber)+"/"+(0,v.zw)(e.row.outRequestNumber),1)])])),_:1}),(0,p.Wm)(nn,{property:"lastLoginTime",label:"登录时间",prop:"lastLoginTime","min-width":"180"})])),_:1},8,["data"])]),Aa])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:yn.value,"onUpdate:modelValue":l[125]||(l[125]=e=>yn.value=e),title:"📌修改pool_token信息","align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Ha,[(0,p.Wm)(Au,{onSubmit:$u},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[za,(0,p._)("div",Pa,[(0,p.Wm)(si,{label:"poolToken名"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:wt.value,"onUpdate:modelValue":l[117]||(l[117]=e=>wt.value=e),filterable:"",clearable:"",placeholder:"选择你想要的修改的pool_token名称",onChange:Nu,class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Rt.value,(e=>((0,p.wg)(),(0,p.j4)(Jt,{key:e.poolName,label:e.poolName,value:e.poolName,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),Sa,(0,p.Wm)(fu,{modelValue:Ht.value,"onUpdate:modelValue":l[118]||(l[118]=e=>Ht.value=e),type:"textarea",maxlength:"100",autoSize:"",name:"pool_token的值",label:"pool_token的值","input-align":"right",placeholder:"pool_token的值(不改则不变)"},null,8,["modelValue"]),Na,(0,p.Wm)(fu,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:yt.value,"onUpdate:modelValue":l[119]||(l[119]=e=>yt.value=e)},null,8,["modelValue"])])),_:1}),Ca,1==yt.value?((0,p.wg)(),(0,p.iD)("div",Oa,[$a,(0,p._)("div",Ba,[(0,p.Wm)(si,{label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:Wt.value,"onUpdate:modelValue":l[120]||(l[120]=e=>Wt.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Sn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),Ia])),_:1}),Da,(0,p.Wm)(si,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(di,{modelValue:Vt.value,"onUpdate:modelValue":l[121]||(l[121]=e=>Vt.value=e),type:"textarea",rows:10,placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),qa,(0,p.Wm)(fu,{modelValue:At.value,"onUpdate:modelValue":l[122]||(l[122]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),ja,(0,p.Wm)(fu,{"input-align":"right",name:"checkboxGroup",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:en.value,"onUpdate:modelValue":l[123]||(l[123]=e=>en.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),La,(0,p.Wm)(fu,{modelValue:xt.value,"onUpdate:modelValue":l[124]||(l[124]=e=>xt.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right",placeholder:"自定义PandoraNext地址",rules:[{required:!0,message:"请填写自定义PandoraNext地址"}]},null,8,["modelValue"]),Ma])):(0,p.kq)("",!0)])),_:1}),(0,p._)("div",Za,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:Vn.value,"onUpdate:modelValue":l[126]||(l[126]=e=>Vn.value=e),"align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",{ref_key:"chart",ref:Ji,style:{width:"auto",height:"400px"}},null,512)])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:Wn.value,"onUpdate:modelValue":l[130]||(l[130]=e=>Wn.value=e),title:"OneAPI里的share_token列表","align-center":"",width:"78%","close-on-click-modal":!1,class:"shareTokenDialog"},{default:(0,p.w5)((()=>[(0,p.Wm)(Qo,{modelValue:_u.value,"onUpdate:modelValue":l[128]||(l[128]=e=>_u.value=e),"show-action":"",shape:"round",clearable:"",placeholder:"请输入搜索share_token名称",onSearch:l[129]||(l[129]=e=>gu(_u.value)),class:"onShareToken"},{action:(0,p.w5)((()=>[(0,p.Wm)(tn,{icon:e.Plus,onClick:l[127]||(l[127]=e=>Tn.value=!0)},{default:(0,p.w5)((()=>[Ea])),_:1},8,["icon"])])),_:1},8,["modelValue"]),(0,p.Wm)((0,h.SU)(W.eI),{data:Yt.value,"row-class-name":qu},{default:(0,p.w5)((()=>[(0,p.Wm)(nn,{label:"在one_api的名称",prop:"oneApi_name",width:"180"},{default:(0,p.w5)((e=>[(0,p._)("div",Ja,[(0,p._)("span",Ka,(0,v.zw)(e.row.oneApi_name),1)])])),_:1}),(0,p.Wm)(nn,{label:"来源Token名","min-width":"135"},{default:(0,p.w5)((e=>[(0,p._)("div",Ra,[(0,p._)("span",Ya,(0,v.zw)(e.row.token_name),1)])])),_:1}),(0,p.Wm)(nn,{label:"share_token值","min-width":"355"},{default:(0,p.w5)((e=>[(0,p._)("div",Xa,[(0,p.Wm)(Pu,{onClick:l=>Li(e.row.token_value)},{default:(0,p.w5)((()=>[(0,p.Wm)(zu)])),_:2},1032,["onClick"]),(0,p._)("span",Ga,(0,v.zw)(e.row.token_value),1)])])),_:1}),(0,p.Wm)(nn,{property:"shareTime",label:"更新时间",prop:"shareTime","min-width":"170"}),(0,p.Wm)(nn,{label:"操作方法","min-width":"205"},{default:(0,p.w5)((e=>[(0,p.Wm)(tn,{size:"small",onClick:l=>ri(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"primary",onClick:l=>xi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("修改")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"danger",onClick:l=>Ci(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"]),Fa])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:Tn.value,"onUpdate:modelValue":l[138]||(l[138]=e=>Tn.value=e),title:"✨添加share_token进OneAPI","align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p.Wm)(Au,{onSubmit:Bu},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Qa,(0,p.Wm)(fu,{modelValue:iu.value,"onUpdate:modelValue":l[131]||(l[131]=e=>iu.value=e),name:"oneApi中渠道名称",label:"oneApi中渠道名称","input-align":"right",placeholder:"oneApi中渠道名称",rules:[{required:!0,message:"请填写oneApi中渠道名称"}]},null,8,["modelValue"]),eo,(0,p._)("div",lo,[(0,p.Wm)(si,{label:"Token名","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:ru.value,"onUpdate:modelValue":l[132]||(l[132]=e=>ru.value=e),filterable:"",clearable:"",placeholder:"选择你想要的添加的Token名称",onChange:Cu,class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Ou.value,(e=>((0,p.wg)(),(0,p.j4)(Jt,{key:e.name,label:e.name,value:e.name,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),ao,(0,p._)("div",oo,[(0,p.Wm)(si,{label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:du.value,"onUpdate:modelValue":l[133]||(l[133]=e=>du.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Pn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),no])),_:1}),to,(0,p.Wm)(si,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(di,{modelValue:mu.value,"onUpdate:modelValue":l[134]||(l[134]=e=>mu.value=e),type:"textarea",rows:10,placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),uo,(0,p.Wm)(fu,{modelValue:pu.value,"onUpdate:modelValue":l[135]||(l[135]=e=>pu.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),io,(0,p.Wm)(fu,{"input-align":"right",name:"addOneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:cu.value,"onUpdate:modelValue":l[136]||(l[136]=e=>cu.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),ro,(0,p.Wm)(fu,{modelValue:su.value,"onUpdate:modelValue":l[137]||(l[137]=e=>su.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),so])),_:1}),(0,p._)("div",mo,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:Un.value,"onUpdate:modelValue":l[154]||(l[154]=e=>Un.value=e),title:"🔎查看share_token在OneAPI信息","align-center":"",width:"50vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p.Wm)(Au,{onSubmit:e.shareToken},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[co,(0,p.Wm)(fu,{modelValue:Fu.value,"onUpdate:modelValue":l[139]||(l[139]=e=>Fu.value=e),name:"oneApi中渠道名称",label:"oneApi中渠道名称","input-align":"right",placeholder:"oneApi中渠道名称","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[140]||(l[140]=e=>Li(Fu.value)),rules:[{required:!0,message:"请填写oneApi中渠道名称"}]},null,8,["modelValue"]),po,(0,p.Wm)(fu,{modelValue:ei.value,"onUpdate:modelValue":l[141]||(l[141]=e=>ei.value=e),name:"share_token的值",label:"share_token的值","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[142]||(l[142]=e=>Li(ei.value)),placeholder:"share_token的值"},null,8,["modelValue"]),vo,(0,p.Wm)(fu,{modelValue:Qu.value,"onUpdate:modelValue":l[143]||(l[143]=e=>Qu.value=e),name:"share_token的来源",label:"share_token的来源","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[144]||(l[144]=e=>Li(Qu.value)),placeholder:"share_token的值"},null,8,["modelValue"]),ho,(0,p.Wm)(fu,{modelValue:ni.value,"onUpdate:modelValue":l[145]||(l[145]=e=>ni.value=e),name:"加入的模型",label:"加入的模型","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[146]||(l[146]=e=>Li(ni.value)),placeholder:"加入的模型"},null,8,["modelValue"]),(0,p._)("div",_o,[wo,(0,p.Wm)(si,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(di,{modelValue:oi.value,"onUpdate:modelValue":l[147]||(l[147]=e=>oi.value=e),type:"textarea",autosize:"",placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1}),ko]),(0,p.Wm)(fu,{modelValue:At.value,"onUpdate:modelValue":l[148]||(l[148]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[149]||(l[149]=e=>Li(At.value)),placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),fo,(0,p.Wm)(fu,{modelValue:ti.value,"onUpdate:modelValue":l[150]||(l[150]=e=>ti.value=e),name:"加入的组别",label:"加入的组别","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[151]||(l[151]=e=>Li(ti.value)),placeholder:"加入的组别"},null,8,["modelValue"]),bo,(0,p.Wm)(fu,{modelValue:li.value,"onUpdate:modelValue":l[152]||(l[152]=e=>li.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[153]||(l[153]=e=>Li(li.value)),placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),go])),_:1})])),_:1},8,["onSubmit"])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:xn.value,"onUpdate:modelValue":l[161]||(l[161]=e=>xn.value=e),title:"📌修改share_token在OneAPI的信息","align-center":"",width:"50vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",yo,[(0,p.Wm)(Au,{onSubmit:Ai},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Vo,(0,p._)("div",Wo,[(0,p.Wm)(si,{label:"Token名","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:Qu.value,"onUpdate:modelValue":l[155]||(l[155]=e=>Qu.value=e),filterable:"",clearable:"",placeholder:"选择你想要的添加的Token名称",onChange:Cu,class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Ou.value,(e=>((0,p.wg)(),(0,p.j4)(Jt,{key:e.name,label:e.name,value:e.name,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),To,(0,p._)("div",Uo,[(0,p.Wm)(si,{label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:ai.value,"onUpdate:modelValue":l[156]||(l[156]=e=>ai.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Pn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),xo,(0,p.Wm)(si,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(di,{modelValue:oi.value,"onUpdate:modelValue":l[157]||(l[157]=e=>oi.value=e),type:"textarea",rows:10,placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),Ao,Ho,(0,p.Wm)(fu,{modelValue:At.value,"onUpdate:modelValue":l[158]||(l[158]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),zo,(0,p.Wm)(fu,{"input-align":"right",name:"oneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:ui.value,"onUpdate:modelValue":l[159]||(l[159]=e=>ui.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),Po,(0,p.Wm)(fu,{modelValue:li.value,"onUpdate:modelValue":l[160]||(l[160]=e=>li.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),So])),_:1}),(0,p._)("div",No,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:An.value,"onUpdate:modelValue":l[175]||(l[175]=e=>An.value=e),title:"🔎查看poolToken信息","align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Co,[(0,p.Wm)(Au,null,{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Oo,(0,p.Wm)(fu,{modelValue:kt.value,"onUpdate:modelValue":l[162]||(l[162]=e=>kt.value=e),name:"pool_token名称",label:"pool_token名称",placeholder:"pool_token名称",readonly:!0,"input-align":"right","left-icon":"description-o",onClickLeftIcon:l[163]||(l[163]=e=>Li(kt.value))},null,8,["modelValue"]),$o,(0,p.Wm)(fu,{modelValue:ft.value,"onUpdate:modelValue":l[164]||(l[164]=e=>ft.value=e),label:"使用token名集合",type:"textarea",placeholder:"使用token名集合","left-icon":"description-o",readonly:!0,"input-align":"right",onClickLeftIcon:l[165]||(l[165]=e=>Li($t.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"]),Bo,(0,p.Wm)(fu,{modelValue:Ht.value,"onUpdate:modelValue":l[166]||(l[166]=e=>Ht.value=e),readonly:!0,type:"textarea",maxlength:"100",autoSize:"",name:"pool_token的值",label:"pool_token的值","input-align":"right",placeholder:"pool_token的值(不改则不变)","left-icon":"description-o",onClickLeftIcon:l[167]||(l[167]=e=>Li(Ht.value))},null,8,["modelValue"]),Io,(0,p.Wm)(fu,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:yt.value,"onUpdate:modelValue":l[168]||(l[168]=e=>yt.value=e)},null,8,["modelValue"])])),_:1}),Do,1==yt.value?((0,p.wg)(),(0,p.iD)("div",qo,[jo,(0,p._)("div",Lo,[(0,p.Wm)(si,{disabled:"",label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{disabled:"",modelValue:Wt.value,"onUpdate:modelValue":l[169]||(l[169]=e=>Wt.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Sn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),Mo])),_:1}),Zo,(0,p.Wm)(si,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(di,{modelValue:Vt.value,"onUpdate:modelValue":l[170]||(l[170]=e=>Vt.value=e),type:"textarea",disabled:"",autosize:"",placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),Eo,(0,p.Wm)(fu,{readonly:!0,modelValue:At.value,"onUpdate:modelValue":l[171]||(l[171]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),Jo,(0,p.Wm)(fu,{readonly:!0,"input-align":"right",name:"checkboxGroup",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:en.value,"onUpdate:modelValue":l[172]||(l[172]=e=>en.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),Ko,(0,p.Wm)(fu,{readonly:!0,modelValue:xt.value,"onUpdate:modelValue":l[173]||(l[173]=e=>xt.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right",placeholder:"自定义PandoraNext地址","left-icon":"description-o",onClickLeftIcon:l[174]||(l[174]=e=>Li(xt.value)),rules:[{required:!0,message:"请填写自定义PandoraNext地址"}]},null,8,["modelValue"]),Ro])):(0,p.kq)("",!0)])),_:1})])),_:1})])])),_:1},8,["modelValue"])],64)}}});const en=Qo;var ln=en}}]);
-//# sourceMappingURL=98.13ca7e42.js.map
\ No newline at end of file
+"use strict";(self["webpackChunkPandoraNext_TokensTool"]=self["webpackChunkPandoraNext_TokensTool"]||[]).push([[813],{6521:function(e,l,a){a.r(l),a.d(l,{default:function(){return ln}});var o=a(299),n=(a(8845),a(6773)),t=(a(487),a(2876)),u=(a(492),a(5185)),i=(a(3349),a(5267)),r=(a(1645),a(7630)),d=(a(7034),a(3164)),s=(a(6335),a(157)),m=(a(1897),a(6907)),c=(a(4746),a(294)),p=(a(6870),a(560),a(6252)),v=a(3577),h=a(2262),_=a(1094),w=a(2201),k=a(6154),f=a(844),g=a(1348),b=a(9288),V=a(2534),y=a(3028),W=a(4708),T=a(1893);const U={class:"content"},x=(0,p._)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no"},null,-1),A={class:"home-container"},H=(0,p._)("div",{class:"flex-grow"},null,-1),z=(0,p._)("a",{href:"https://ai.fakeopen.com/auth"},"PandoraNext地址",-1),P=(0,p._)("a",{href:"https://chat.openai.com/api/auth/session"},"OpenAI官网",-1),S=(0,p._)("a",{href:"https://github.com/Yanyutin753/PandoraNext-TokensTool"},"TokensTool地址",-1),N={class:"under"},C={style:{display:"block",transform:"translate(5vw, 2.5vh)"}},O=(0,p._)("div",{class:"flex items-center"},[(0,p._)("span",{class:"font-h4"},"PandoraNext-TokensTool "),(0,p._)("span",{class:"font-h4-tag"},"v0.6.8 ")],-1),$={class:"search"},B={style:{display:"flex",margin:"10px 35px -8px 35px"}},I={style:{display:"flex",transform:"translateX(4vw)",width:"70vw",height:"61vh"}},D={style:{display:"flex","align-items":"center"}},q={style:{"margin-left":"18px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},j={style:{margin:"15px 0px 15px 0px"}},L=(0,p._)("h1",null,"批量操作",-1),M=(0,p._)("h1",null,"全部检查并生成",-1),Z=(0,p._)("br",null,null,-1),E=(0,p._)("br",null,null,-1),J=(0,p._)("br",null,null,-1),K={style:{display:"block"}},R=(0,p._)("br",null,null,-1),Y=(0,p._)("br",null,null,-1),X=(0,p._)("br",null,null,-1),G={key:0},F=(0,p._)("br",null,null,-1),Q={key:1},ee=(0,p._)("br",null,null,-1),le={key:0},ae=(0,p._)("br",null,null,-1),oe=(0,p._)("br",null,null,-1),ne={key:2},te=(0,p._)("br",null,null,-1),ue=(0,p._)("br",null,null,-1),ie=(0,p._)("br",null,null,-1),re={style:{margin:"5.2px"}},de=(0,p._)("br",null,null,-1),se={style:{display:"block"}},me=(0,p._)("br",null,null,-1),ce=(0,p._)("br",null,null,-1),pe=(0,p._)("br",null,null,-1),ve=(0,p._)("br",null,null,-1),he={key:0},_e=(0,p._)("br",null,null,-1),we={key:1},ke=(0,p._)("br",null,null,-1),fe={key:0},ge=(0,p._)("br",null,null,-1),be=(0,p._)("br",null,null,-1),Ve={key:2},ye=(0,p._)("br",null,null,-1),We={key:3},Te=(0,p._)("br",null,null,-1),Ue=(0,p._)("br",null,null,-1),xe={style:{margin:"5.2px"}},Ae=(0,p._)("br",null,null,-1),He={style:{display:"block"}},ze=(0,p._)("br",null,null,-1),Pe=(0,p._)("br",null,null,-1),Se=(0,p._)("br",null,null,-1),Ne=(0,p._)("br",null,null,-1),Ce=(0,p._)("br",null,null,-1),Oe=(0,p._)("br",null,null,-1),$e=(0,p._)("br",null,null,-1),Be=(0,p._)("br",null,null,-1),Ie=(0,p._)("br",null,null,-1),De=(0,p._)("br",null,null,-1),qe={key:0},je=(0,p._)("br",null,null,-1),Le=(0,p._)("br",null,null,-1),Me={key:0},Ze=(0,p._)("br",null,null,-1),Ee={style:{display:"block"}},Je=(0,p._)("br",null,null,-1),Ke=(0,p._)("br",null,null,-1),Re=(0,p._)("br",null,null,-1),Ye=(0,p._)("br",null,null,-1),Xe=(0,p._)("br",null,null,-1),Ge=(0,p._)("br",null,null,-1),Fe={key:0},Qe=(0,p._)("br",null,null,-1),el=(0,p._)("br",null,null,-1),ll=(0,p._)("br",null,null,-1),al=(0,p._)("br",null,null,-1),ol=(0,p._)("br",null,null,-1),nl=(0,p._)("br",null,null,-1),tl=(0,p._)("br",null,null,-1),ul=(0,p._)("br",null,null,-1),il={style:{margin:"5.2px"}},rl=(0,p._)("br",null,null,-1),dl={style:{display:"block"}},sl=(0,p._)("br",null,null,-1),ml=(0,p._)("br",null,null,-1),cl=(0,p._)("br",null,null,-1),pl=(0,p._)("br",null,null,-1),vl=(0,p._)("br",null,null,-1),hl=(0,p._)("br",null,null,-1),_l=(0,p._)("br",null,null,-1),wl=(0,p._)("br",null,null,-1),kl={key:0},fl=(0,p._)("br",null,null,-1),gl=(0,p._)("br",null,null,-1),bl=(0,p._)("br",null,null,-1),Vl={style:{margin:"5.2px"}},yl=(0,p._)("br",null,null,-1),Wl={style:{display:"block"}},Tl=(0,p._)("br",null,null,-1),Ul=(0,p._)("br",null,null,-1),xl=(0,p._)("br",null,null,-1),Al=(0,p._)("br",null,null,-1),Hl=(0,p._)("br",null,null,-1),zl=(0,p._)("br",null,null,-1),Pl=(0,p._)("br",null,null,-1),Sl=(0,p._)("br",null,null,-1),Nl={style:{margin:"5.2px"}},Cl=(0,p._)("br",null,null,-1),Ol={style:{transform:"translate(0vw, -2vh)"}},$l={style:{"margin-left":"15px",display:"flex","align-items":"center"}},Bl={key:0},Il=(0,p._)("h5",null,"oneApi",-1),Dl={key:1},ql=(0,p._)("h5",null,"Json",-1),jl={style:{"margin-left":"25px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Ll={style:{display:"flex","align-items":"center",overflow:"auto"}},Ml={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Zl=(0,p._)("span",{style:{"margin-left":"0px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},"点击此进行查看",-1),El=(0,p._)("h1",null,"批量操作",-1),Jl=(0,p._)("br",null,null,-1),Kl={style:{display:"block"}},Rl=(0,p._)("br",null,null,-1),Yl=(0,p._)("br",null,null,-1),Xl=(0,p._)("br",null,null,-1),Gl=(0,p._)("br",null,null,-1),Fl={style:{display:"block"}},Ql=(0,p._)("br",null,null,-1),ea={key:0},la=(0,p._)("br",null,null,-1),aa=(0,p._)("br",null,null,-1),oa=(0,p._)("br",null,null,-1),na=(0,p._)("br",null,null,-1),ta=(0,p._)("br",null,null,-1),ua=(0,p._)("br",null,null,-1),ia={style:{margin:"5.2px"}},ra={style:{display:"block"}},da=(0,p._)("br",null,null,-1),sa=(0,p._)("br",null,null,-1),ma={key:0},ca=(0,p._)("br",null,null,-1),pa={style:{transform:"translateX(17px)"}},va=(0,p._)("br",null,null,-1),ha=(0,p._)("br",null,null,-1),_a=(0,p._)("br",null,null,-1),wa=(0,p._)("br",null,null,-1),ka=(0,p._)("br",null,null,-1),fa=(0,p._)("br",null,null,-1),ga={style:{margin:"5.2px"}},ba={style:{display:"flex"}},Va={style:{display:"flex","align-items":"center"}},ya={style:{"margin-left":"0px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Wa={style:{display:"flex","align-items":"center",overflow:"auto"}},Ta={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Ua={style:{display:"flex","align-items":"center",overflow:"auto"}},xa={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Aa=(0,p._)("br",null,null,-1),Ha={style:{display:"block"}},za=(0,p._)("br",null,null,-1),Pa={style:{transform:"translateX(17px)"}},Sa=(0,p._)("br",null,null,-1),Na=(0,p._)("br",null,null,-1),Ca=(0,p._)("br",null,null,-1),Oa={key:0},$a=(0,p._)("br",null,null,-1),Ba={style:{transform:"translateX(17px)"}},Ia=(0,p._)("br",null,null,-1),Da=(0,p._)("br",null,null,-1),qa=(0,p._)("br",null,null,-1),ja=(0,p._)("br",null,null,-1),La=(0,p._)("br",null,null,-1),Ma=(0,p._)("br",null,null,-1),Za={style:{margin:"5.2px"}},Ea=(0,p._)("h1",null,"添加share_token到OneAPI",-1),Ja={style:{"margin-left":"15px",display:"flex","align-items":"center"}},Ka={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Ra={style:{display:"flex","align-items":"center",overflow:"auto"}},Ya={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Xa={style:{display:"flex","align-items":"center",overflow:"auto"}},Ga={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Fa=(0,p._)("br",null,null,-1),Qa=(0,p._)("br",null,null,-1),eo=(0,p._)("br",null,null,-1),lo={style:{transform:"translateX(17px)"}},ao=(0,p._)("br",null,null,-1),oo={style:{transform:"translateX(17px)"}},no=(0,p._)("br",null,null,-1),to=(0,p._)("br",null,null,-1),uo=(0,p._)("br",null,null,-1),io=(0,p._)("br",null,null,-1),ro=(0,p._)("br",null,null,-1),so=(0,p._)("br",null,null,-1),mo={style:{margin:"5.2px"}},co=(0,p._)("br",null,null,-1),po=(0,p._)("br",null,null,-1),vo=(0,p._)("br",null,null,-1),ho=(0,p._)("br",null,null,-1),_o={style:{transform:"translateX(17px)"}},wo=(0,p._)("br",null,null,-1),ko=(0,p._)("br",null,null,-1),fo=(0,p._)("br",null,null,-1),go=(0,p._)("br",null,null,-1),bo=(0,p._)("br",null,null,-1),Vo={style:{display:"block"}},yo=(0,p._)("br",null,null,-1),Wo={style:{transform:"translateX(17px)"}},To=(0,p._)("br",null,null,-1),Uo={style:{transform:"translateX(17px)"}},xo=(0,p._)("br",null,null,-1),Ao=(0,p._)("br",null,null,-1),Ho=(0,p._)("br",null,null,-1),zo=(0,p._)("br",null,null,-1),Po=(0,p._)("br",null,null,-1),So=(0,p._)("br",null,null,-1),No={style:{margin:"5.2px"}},Co={style:{display:"block"}},Oo=(0,p._)("br",null,null,-1),$o=(0,p._)("br",null,null,-1),Bo=(0,p._)("br",null,null,-1),Io=(0,p._)("br",null,null,-1),Do=(0,p._)("br",null,null,-1),qo={key:0},jo=(0,p._)("br",null,null,-1),Lo={style:{transform:"translateX(17px)"}},Mo=(0,p._)("br",null,null,-1),Zo=(0,p._)("br",null,null,-1),Eo=(0,p._)("br",null,null,-1),Jo=(0,p._)("br",null,null,-1),Ko=(0,p._)("br",null,null,-1),Ro=(0,p._)("br",null,null,-1),Yo='此项可选,用于修改请求体中的模型名称,\n 为一个 JSON 字符串,键为请求中模型名称,\n 值为要替换的模型名称,例如:\n {\n "gpt-3.5-turbo-301":"gpt-3.5-turbo",\n "gpt-4-8314":"gpt-4", \n "gpt-4-32k-8314":"gpt-4-32k",\n }',Xo=0,Go=1,Fo=2;var Qo=(0,p.aZ)({__name:"homeIndex",setup(e){const l=window.location.pathname,a=l.split("/");let Qo="";a.length>=3&&(Qo="/"+a[1]);const en=(0,h.iH)(["default","svip","vip"]),ln=(0,h.iH)(["default","svip","vip"]),an=(0,h.iH)(),on=(0,h.iH)(),nn=(0,h.iH)([]),tn=(0,h.iH)([]),un=e=>{nn.value=e},rn=e=>{tn.value=e},dn=(0,h.iH)("ALL"),sn=(0,w.tv)(),mn=(0,h.iH)(!1),cn=(0,h.iH)(!1),pn=(0,h.iH)(!1),vn=(0,h.iH)(!1),hn=(0,h.iH)(!1),_n=(0,h.iH)(!1),wn=(0,h.iH)(!1),kn=(0,h.iH)(!1),fn=(0,h.iH)(!1),gn=(0,h.iH)(!1),bn=(0,h.iH)(!1),Vn=(0,h.iH)(!1),yn=(0,h.iH)(!1),Wn=(0,h.iH)(!1),Tn=(0,h.iH)(!1),Un=(0,h.iH)(!1),xn=(0,h.iH)(!1),An=(0,h.iH)(!1),Hn=(0,h.iH)(""),zn=[{buttonValue:"选中删除Token",label:"选中删除Token"},{buttonValue:"选中刷新Token",label:"选中刷新Token"},{buttonValue:"选中合成pool_token",label:"选中合成pool_token"},{buttonValue:"选中修改pool_token",label:"选中修改pool_token"}],Pn=((0,h.iH)(""),[{buttonModel:"gpt-3.5-turbo",label:"gpt-3.5-turbo"},{buttonModel:"gpt-4-s",label:"gpt-4-s"},{buttonModel:"gpt-4-mobile",label:"gpt-4-mobile"},{buttonModel:"gpt-4-vision",label:"gpt-4-vision"},{buttonModel:"gpt-4-classic",label:"gpt-4-classic"},{buttonModel:"gpt-4-vision-preview",label:"gpt-4-vision-preview"}]),Sn=[{buttonModel:"gpt-3.5-turbo",label:"gpt-3.5-turbo"},{buttonModel:"gpt-4",label:"gpt-4"}],Nn=(0,h.iH)(""),Cn=[{buttonPoolValue:"选中检查pool_token",label:"选中检查pool_token"},{buttonPoolValue:"选中删除pool_token",label:"选中删除pool_token"},{buttonPoolValue:"选中刷新pool_token",label:"选中刷新pool_token"},{buttonPoolValue:"选中更换pool_token",label:"选中更换pool_token"}],On=(0,h.iH)(""),$n=(0,h.iH)("*"),Bn=(0,h.iH)(""),In=(0,h.iH)(""),Dn=(0,h.iH)(""),qn=(0,h.iH)(!1),jn=(0,h.iH)(!1),Ln=(0,h.iH)(!1),Mn=(0,h.iH)(!1),Zn=(0,h.iH)(""),En=(0,h.iH)(!1),Jn=(0,h.iH)(""),Kn=(0,h.iH)(""),Rn=(0,h.iH)(""),Yn=(0,h.iH)(""),Xn=(0,h.iH)(""),Gn=(0,h.iH)(""),Fn=(0,h.iH)(""),Qn=(0,h.iH)(!1),et=(0,h.iH)(""),lt=(0,h.iH)("PandoraNext"),at=(0,h.iH)("default"),ot=(0,h.iH)(""),nt=(0,h.iH)(""),tt=(0,h.iH)(""),ut=(0,h.iH)(""),it=(0,h.iH)(!1),rt=(0,h.iH)(!1),dt=(0,h.iH)(!1),st=(0,h.iH)(!1),mt=(0,h.iH)(!1),ct=(0,h.iH)(5),pt=(0,h.iH)(1),vt=(0,h.iH)(""),ht=(0,h.iH)(""),_t=(0,h.iH)(""),wt=(0,h.iH)(""),kt=(0,h.iH)(""),ft=(0,h.iH)(""),gt=((0,h.iH)(""),(0,h.iH)("")),bt=((0,h.iH)(!0),(0,h.iH)("")),Vt=(0,h.iH)(!1),yt=(0,h.iH)(""),Wt=(0,h.iH)([]),Tt=(0,h.iH)([]),Ut=(0,h.iH)(""),xt=(0,h.iH)(vt.value+On.value),At=(0,h.iH)(0),Ht=(0,h.iH)(""),zt=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!!l.test(e)||"此项至少要包含8位且必须包含数字和字母"},Pt=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!(!l.test(e)&&""!=e)||"此项至少要包含8位且必须包含数字和字母"},St=e=>{const l=/^[\u4e00-\u9fa5a-zA-Z0-9]{3,10}$/;return!!l.test(e)||"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字"},Nt=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!(1!=nu.value&&1!=Zt.value&&!l.test(e))||"此项至少要包含8位且必须包含数字和字母"},Ct=(0,h.iH)(""),Ot=(0,h.iH)(""),$t=(0,h.iH)(""),Bt=(0,h.iH)(""),It=(0,h.iH)(""),Dt=(0,h.iH)(""),qt=(0,h.iH)(!1),jt=(0,h.iH)(!1),Lt=(0,h.iH)(!1),Mt=(0,h.iH)(""),Zt=(0,h.iH)(!1),Et=(0,h.iH)(!1),Jt=(0,h.iH)(!0),Kt=(0,h.iH)([]),Rt=(0,h.iH)([]),Yt=(0,h.iH)([]),Xt=(0,h.iH)([]),Gt=(0,h.iH)(""),Ft=(0,h.iH)(""),Qt=(0,h.iH)(""),eu=(0,h.iH)(""),lu=(0,h.iH)(!1),au=(0,h.iH)(!1),ou=(0,h.iH)(!1),nu=(0,h.iH)(!1),tu=(0,h.iH)(!1),uu=(0,h.iH)(""),iu=(0,h.iH)(""),ru=(0,h.iH)(""),du=((0,h.iH)(""),(0,h.iH)("")),su=(0,h.iH)([]),mu=(0,h.iH)(""),cu=(0,h.iH)(["default","svip","vip"]),pu=(0,h.iH)(0),vu=((0,h.iH)(.085*window.innerHeight),(0,h.iH)("")),hu=(0,h.iH)(""),_u=(0,h.iH)(""),wu=localStorage.getItem("jwtToken");wu||sn.replace("/");const ku={Authorization:`Bearer ${wu}`},fu=async()=>{k.Z.post(`${Qo}/api/loginToken?token=`+wu).then((e=>{if(0==e.data.code)return console.error(e.data.data),void sn.replace("/")})).catch((e=>{console.error("请求loginToken接口失败",e),sn.replace("/")}))},gu=e=>{"Web"==e||"WEB"==e?Tu(""):"ALL"==e||"All"==e?yu(""):e.includes("API")?Wu(""):yu(e)},bu=e=>{Au(e)},Vu=e=>{xu(e)},yu=async e=>{const l=await k.Z.get(`${Qo}/api/selectToken?name=${e}`,{headers:ku}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession})));Kt.value=e}},Wu=async e=>{const l=await k.Z.get(`${Qo}/api/selectToken?name=${e}`,{headers:ku}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession}))),l=e.filter((e=>!0===e.setPoolToken));Kt.value=l}},Tu=async e=>{const l=await k.Z.get(`${Qo}/api/selectToken?name=${e}`,{headers:ku}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession}))),l=e.filter((e=>!1===e.setPoolToken));Kt.value=l}},Uu=async()=>{const e=await k.Z.get(`${Qo}/api/selectLogin`,{headers:ku}),l=e.data.data;if(Array.isArray(l)){const e=l.map((e=>({ipAddress:e.ipAddress,requestIp:e.requestIp,outRequestNumber:e.outRequestNumber,inRequestNumber:e.inRequestNumber,lastLoginTime:e.lastLoginTime})));Xt.value=e}},xu=async e=>{const l=await k.Z.get(`${Qo}/api/selectPoolToken?name=${e}`,{headers:ku}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({poolName:e.poolName,poolTime:e.poolTime,poolToken:e.poolToken,shareTokens:e.shareTokens,checkPool:e.checkPool,intoOneApi:e.intoOneApi,poolOneApi_models:e.poolOneApi_models,poolModel_mapping:e.poolModel_mapping,oneApi_pandoraUrl:e.oneApi_pandoraUrl,groupChecked:e.groupChecked,priority:e.priority})));Rt.value=e}},Au=async e=>{const l=y.kN.service({fullscreen:!0}),a=await k.Z.get(`${Qo}/api/selectShareToken?name=${e}`,{headers:ku}),o=a.data.data;if(Array.isArray(o)){const e=o.map((e=>({oneApi_name:e.oneApi_name,token_name:e.token_name,token_value:e.token_value,oneApi_baseUrl:e.oneApi_baseUrl,oneApi_models:e.oneApi_models,model_mapping:e.model_mapping,oneApi_groups:e.oneApi_groups,shareTime:e.shareTime,priority:e.priority})));Yt.value=e}l.close()},Hu=async e=>{const l=await k.Z.get(`${Qo}/api/selectSetting`,{headers:ku}),a=l.data.data;On.value=a.proxy_api_prefix,$n.value=a.isolated_conv_title,Bn.value=a.bing,In.value=a.timeout,Dn.value=a.proxy_url,qn.value=a.public_share,jn.value=a.disable_signup,Ln.value=a.auto_conv_arkose,Mn.value=a.proxy_file_service,Zn.value=a.custom_doh_host,En.value=a.tls.enabled,Jn.value=a.tls.cert_file,Kn.value=a.tls.key_file,Rn.value=a.site_password,Yn.value=a.setup_password,null==a.whitelist?ot.value="null":ot.value=a.whitelist,Xn.value=a.loginUsername,Gn.value=a.loginPassword,Fn.value=a.license_id,Qn.value=a.isGetToken,et.value=a.getTokenPassword,lt.value=a.containerName,at.value=a.autoToken_url,nt.value=a.validation.provider,tt.value=a.validation.site_key,ut.value=a.validation.site_secret,it.value=a.validation.site_login,rt.value=a.validation.setup_login,dt.value=a.validation.oai_username,st.value=a.validation.oai_password,mt.value=a.auto_updateSession,ct.value=a.auto_updateTime,pt.value=a.auto_updateNumber,vt.value=a.pandoraNext_outUrl,vt.value.endsWith("/")?xt.value=vt.value+On.value:xt.value=vt.value+"/"+On.value,ht.value=a.oneAPi_outUrl,_t.value=a.oneAPi_intoToken,zu()},zu=async()=>{"123456"==Gn.value&&"root"==Xn.value&&(f.T.alert("请先修改默认的初始账号和密码,并填写相应的信息,具体可参考网站文档!","温馨提醒",{confirmButtonText:"确定",callback:e=>{(0,g.z8)({type:"info",message:"如果不知道怎么填的话,可以看tokensTool的文档站!"})}}),hn.value=!0,Gn.value="",Xn.value="")},Pu=()=>{const e=nn.value;0!==e.length?gn.value=!0:(0,g.z8)("未选择数据")},Su=async()=>{try{const l=nn.value,a=l.map((e=>e.name)),o=y.kN.service({fullscreen:!0});try{""==Ut.value&&(Ut.value="{}"),JSON.parse(Ut.value)}catch(e){return(0,g.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void o.close()}const n={poolName:bt.value,intoOneApi:Vt.value,poolOneApi_models:Tt.value.toString(),poolModel_mapping:Ut.value,oneApi_pandoraUrl:xt.value,shareTokens:a,groupChecked:ln.value.toString(),priority:At.value},t=await fetch(`${Qo}/api/addPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(n)}),u=await t.json();1===u.code?(bt.value="",xu(""),(0,g.z8)({type:"success",message:u.data}),bt.value="",Vt.value=!1,yt.value="",Wt.value=[],ln.value=["default","svip","vip"],At.value=0):(0,g.z8)({type:"info",message:u.msg}),o.close()}catch(l){(0,g.z8)({type:"info",message:"取消生成pool_token"})}gn.value=!1},Nu=e=>{let l=Rt.value.find((l=>l.poolName===e));null!=l&&(Ht.value=l.poolToken,Vt.value=l.intoOneApi,Wt.value=l.poolOneApi_models.split(","),yt.value=l.poolModel_mapping,xt.value=l.oneApi_pandoraUrl,en.value=l.groupChecked.split(","),At.value=l.priority)},Cu=e=>{Kt.value.find((l=>l.name===e&&!0===l.setPoolToken))},Ou=(0,p.Fl)((()=>Kt.value.filter((e=>!0===e.setPoolToken)))),$u=async()=>{try{const l=y.kN.service({fullscreen:!0});try{""==yt.value&&(yt.value="{}"),JSON.parse(yt.value)}catch(e){return(0,g.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void l.close()}const a=nn.value,o=a.map((e=>e.name)),n={poolName:wt.value,poolToken:Ht.value,intoOneApi:Vt.value,poolOneApi_models:Wt.value.toString(),poolModel_mapping:yt.value,oneApi_pandoraUrl:xt.value,shareTokens:o,groupChecked:en.value.toString(),priority:At.value};console.log(n);const t=await fetch(`${Qo}/api/requirePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(n)}),u=await t.json();1===u.code?(xu(""),(0,g.z8)({type:"success",message:u.data}),wt.value="",Ht.value="",Vt.value=!1,Wt.value=[],yt.value="",ln.value=["default","svip","vip"],At.value=0):(0,g.z8)({type:"info",message:u.msg}),l.close()}catch(l){(0,g.z8)({type:"info",message:"取消修改pool_token"})}Vn.value=!1},Bu=async()=>{const e=y.kN.service({fullscreen:!0});try{try{""==mu.value&&(mu.value="{}"),JSON.parse(mu.value)}catch(l){return(0,g.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void e.close()}const a={oneApi_name:iu.value,token_name:ru.value,oneApi_baseUrl:du.value,oneApi_models:su.value.toString(),model_mapping:mu.value,oneApi_groups:cu.value.toString(),priority:At.value},o=await fetch(`${Qo}/api/addShareToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}),n=await o.json();1===n.code?(Au(""),(0,g.z8)({type:"success",message:n.data}),iu.value="",ru.value="",du.value="",su.value=[],mu.value="",cu.value=["default","svip","vip"],At.value=0):(0,g.z8)({type:"info",message:n.msg})}catch(a){(0,g.z8)({type:"info",message:"取消修改pool_token"})}Tn.value=!1,e.close()},Iu=(0,h.iH)("");(0,p.bv)((async()=>{const e=y.kN.service({fullscreen:!0});fu(),window.innerWidth<=900?sn.replace("/iphone"):sn.replace("/home");try{await Promise.all([gu(vu.value),xu(vu.value),Hu(vu.value)]);const e=await k.Z.get(`${Qo}/api/getPandoraNext`,{headers:ku}),l=e.data.data;null!=l&&(Iu.value=`${l.current}/${l.total}`)}catch(l){console.error("An error occurred:",l)}finally{e.close()}}));const Du=({row:e})=>0==e.checkSession?"warning-row":"",qu=({row:e})=>0==e.checkPool?"warning-row":"",ju=()=>{window.open(vt.value)},Lu=()=>{var e=vt.value;"/"!==e.charAt(e.length-1)&&(e+="/"),window.open(e+"shared.html")},Mu=()=>{var e=vt.value;"/"!==e.charAt(e.length-1)&&(e+="/"),window.open(e+"setup")},Zu=()=>{window.open("https://apifox.com/apidoc/shared-40345b46-9c9c-45cc-b494-6a6a387a978f")},Eu=(0,h.iH)("-1");let Ju="";const Ku=(e,l)=>{console.log("选择准备!")},Ru=()=>{cn.value=!0},Yu=()=>{const e=y.kN.service({fullscreen:!0}),l=new Date,a=`${l.getFullYear()}-${(l.getMonth()+1).toString().padStart(2,"0")}-${l.getDate().toString().padStart(2,"0")} ${l.getHours().toString().padStart(2,"0")}:${l.getMinutes().toString().padStart(2,"0")}:${l.getSeconds().toString().padStart(2,"0")}`;""!=uu.value&&(lu.value=!1,ou.value=!1,au.value=!1),0==nu.value&&(eu.value=Ft.value+","+Qt.value,tu.value=!1,lu.value=!1,ou.value=!1,au.value=!1);let o={name:Gt.value,token:eu.value,username:Ft.value,userPassword:Qt.value,shared:lu.value,auto_shared:lu.value,show_user_info:au.value,plus:ou.value,setPoolToken:nu.value,useRefreshToken:tu.value,password:uu.value,updateTime:a};fetch(`${Qo}/api/addToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(o)}).then((e=>e.json())).then((l=>{1==l.code?(g.z8.success("添加成功!"),Gt.value="",eu.value="",Ft.value="",Qt.value="",lu.value=!1,au.value=!1,ou.value=!1,nu.value=!1,tu.value=!1,uu.value="",""==o.token&&(o.token=l.data,g.z8.success("已为您自动装填token!"))):g.z8.error(l.msg),uu.value="",yu(""),e.close()})).catch((l=>{g.z8.error("获取账号出现问题,请检查刷新网址是否正确!"),e.close()})),cn.value=!1},Xu=(0,h.iH)(null),Gu=async e=>{if(Ct.value=e.name,It.value=e.username,Dt.value=e.userPassword,Ot.value=e.token,$t.value=e.access_token,Bt.value=e.share_token,qt.value=e.shared,jt.value=e.show_user_info,Lt.value=e.plus,Mt.value=e.password,Zt.value=e.setPoolToken,Et.value=e.useRefreshToken,Jt.value=e.checkSession,1!=Zt.value)return void(pn.value=!0);const l={Authorization:`Bearer ${e.access_token}`};if(pn.value=!0,Zt.value){const a=await k.Z.get(`${xt.value}/api/token/info/${e.share_token}`,{headers:l});let o=[],n=[];for(let e in a.data.usage)e.startsWith("range")||(n.push(e),o.push(a.data.usage[e]));0==n.length&&0==o.length&&(n=["gpt-4","gpt-3.5-turbo","gpt-3.5-turbo-0613"],o=[0,0,0]);const t=T.S1(Xu.value),u={title:{text:`今日${a.data.usage["range"]} ${Ct.value}各模型用量`,textStyle:{fontSize:14,color:"#606266"},left:"center",top:"bottom"},tooltip:{},legend:{data:n},xAxis:{data:n},yAxis:{},series:[{name:"对话数量",type:"bar",data:o,barWidth:"25%",itemStyle:{color:function(e){const l=["#3498db","#2ecc71","#f1c40f","#9b59b6","#1abc9c","#e67e22","#ecf0f1","#95a5a6","#34495e","#16a085"];return l[e.dataIndex%l.length]}}}]};t.setOption(u)}},Fu=(0,h.iH)(""),Qu=(0,h.iH)(""),ei=(0,h.iH)(""),li=(0,h.iH)(""),ai=(0,h.iH)([]),oi=(0,h.iH)(""),ni=(0,h.iH)(""),ti=(0,h.iH)(""),ui=(0,h.iH)(["default","svip","vip"]),ii=(0,h.iH)(""),ri=e=>{Fu.value=e.oneApi_name,Qu.value=e.token_name,ei.value=e.token_value,li.value=e.oneApi_baseUrl,ni.value=e.oneApi_models,oi.value=e.model_mapping,ti.value=e.oneApi_groups,At.value=e.priority,ii.value=e.shareTime,Un.value=!0};let di=!1,si=!1,mi="";const ci=(e,l)=>{Ct.value=l.name,It.value=l.username,Dt.value=l.userPassword,Ot.value=l.token,Ju=l.token,qt.value=l.shared,jt.value=l.show_user_info,Lt.value=l.plus,Mt.value=l.password,Zt.value=l.setPoolToken,Et.value=l.useRefreshToken,di=Zt.value,si=Et.value,mi=Ot.value,Jt.value=l.checkSession,$t.value=l.access_token,Bt.value=l.share_token,mn.value=!0},pi=async e=>{0==e?vn.value=!0:1==e?hn.value=!0:2==e&&(_n.value=!0)},vi=e=>{const l=y.kN.service({fullscreen:!0});null!=ot.value&&"null"!=ot.value||(ot.value=""),0==En.value&&(Jn.value="",Kn.value="");const a={enabled:En.value,cert_file:Jn.value,key_file:Kn.value},o={provider:nt.value,site_key:tt.value,site_secret:ut.value,site_login:it.value,setup_login:rt.value,oai_username:dt.value,oai_password:st.value},n={proxy_api_prefix:On.value,isolated_conv_title:$n.value,bing:Bn.value,timeout:In.value,proxy_url:Dn.value,public_share:qn.value,site_password:Rn.value,setup_password:Yn.value,loginUsername:Xn.value,loginPassword:Gn.value,license_id:Fn.value,disable_signup:jn.value,auto_conv_arkose:Ln.value,proxy_file_service:Mn.value,custom_doh_host:Zn.value,isGetToken:Qn.value,getTokenPassword:et.value,containerName:lt.value,autoToken_url:at.value,whitelist:ot.value,validation:o,tls:a};fetch(`${Qo}/api/requireSetting`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(n)}).then((e=>e.json())).then((e=>{1==e.code?g.z8.success(e.data):g.z8.error(e.msg),fu(),l.close()})).catch((e=>{l.close(),console.error("请求requireSetting接口失败",e),g.z8.error("修改失败!")})),0==e?vn.value=!1:1==e?hn.value=!1:2==e&&(_n.value=!1)},hi=()=>{const e=y.kN.service({fullscreen:!0});"/"!==vt.value.charAt(vt.value.length-1)&&(vt.value+="/");const l={auto_updateSession:mt.value,auto_updateTime:ct.value,auto_updateNumber:pt.value,pandoraNext_outUrl:vt.value,oneAPi_outUrl:ht.value,oneAPi_intoToken:_t.value};fetch(`${Qo}/api/controllerTask`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>e.json())).then((l=>{1==l.code?g.z8.success(l.data):g.z8.error(l.msg),e.close()})).catch((l=>{e.close(),console.error("请求controllerTask接口失败",l),g.z8.error("修改失败!")})),fn.value=!1},_i=()=>{const e=y.kN.service({fullscreen:!0});let l="";if(Ju!=Ot.value){const e=new Date;l=`${e.getFullYear()}-${(e.getMonth()+1).toString().padStart(2,"0")}-${e.getDate().toString().padStart(2,"0")} ${e.getHours().toString().padStart(2,"0")}:${e.getMinutes().toString().padStart(2,"0")}:${e.getSeconds().toString().padStart(2,"0")}`}0==Zt.value&&(qt.value=!1,Lt.value=!1,jt.value=!1,Et.value=!1),!0===qt.value?Mt.value="":(Lt.value=!1,jt.value=!1);let a="";a=di!=Zt.value&&mi==Ot.value?0==Zt.value?"您确定要关闭API模型开启web模式,您将无法生成任何的token,但不消耗额度!":1==Et.value?"您确定要开启API模式,并使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!":"您确定要开启API模式,并使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!":si!=Et.value&&mi==Ot.value?1==Et.value?"您确定要切换使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!":"您确定要切换使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!":"修改将要提交,您确定修改好了吗?",f.T.confirm(a,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const l={name:Ct.value,token:Ot.value,username:It.value,userPassword:Dt.value,shared:qt.value,auto_shared:qt.value,show_user_info:jt.value,plus:Lt.value,setPoolToken:Zt.value,useRefreshToken:Et.value,checkSession:Jt.value,password:Mt.value,access_token:$t.value,share_token:Bt.value};fetch(`${Qo}/api/requiredToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>e.json())).then((l=>{1==l.code?(g.z8.success(l.data),yu("")):g.z8.error(l.msg),e.close()})).catch((l=>{e.close(),console.error("请求requireToken接口失败",l),g.z8.error("修改失败!")})),mn.value=!1})).catch((()=>{e.close(),(0,g.z8)({type:"info",message:"编辑取消!"})}))},wi=async()=>{const e=y.kN.service({fullscreen:!0}),l=await k.Z.get(`${Qo}/api/open`,{headers:ku}),a=l.data.data;null!=a&&""!=a?f.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):g.z8.error(l.data.msg),e.close()},ki=async()=>{const e=y.kN.service({fullscreen:!0}),l=await k.Z.get(`${Qo}/api/close`,{headers:ku}),a=l.data.data;null!=a&&""!=a?f.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):g.z8.error(l.data.msg),e.close()},fi=async()=>{const e=y.kN.service({fullscreen:!0}),l=await k.Z.get(`${Qo}/api/restart`,{headers:ku}),a=l.data.data;null!=a&&""!=a?f.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):g.z8.error(l.data.msg),e.close()},gi=async()=>{const e=y.kN.service({fullscreen:!0}),l=await k.Z.get(`${Qo}/api/reload`,{headers:ku}),a=l.data.data;null!=a&&""!=a?f.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):g.z8.error(l.data.msg),e.close()},bi=(0,h.iH)(""),Vi=(0,h.iH)(""),yi=async()=>{const e=await k.Z.get(`${Qo}/api/getPandoraNext`,{headers:ku}),l=e.data.data;if(null!=l){Iu.value=l.current+"/"+l.total,bi.value=l.ip;var a=new Date;const e=new Date(a.getTime()+1e3*l.ttl);var o=e.getFullYear(),n=e.getMonth()+1,t=e.getDate(),u=e.getHours(),i=e.getMinutes(),r=e.getSeconds();Vi.value=o+"-"+n+"-"+t+" "+u+":"+i+":"+r}kn.value=!0},Wi=async()=>{let e="全部检查并生成可能会加载1-3分钟,请您耐心等待!";f.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((async()=>{const e=y.kN.service({fullscreen:!0,text:"正在加载中,请耐心等待..."}),l=await k.Z.get(`${Qo}/api/updateAllToken`,{headers:ku}),a=l.data.data;null!=a&&""!=a?(await Promise.all([yu(""),xu("")]),f.T.alert(a,"温馨提示",{dangerouslyUseHTMLString:!0})):g.z8.error(l.data.msg),e.close()})).catch((()=>{(0,g.z8)({type:"info",message:"全部检查并生成取消!"})}))},Ti=e=>{if(0==e.setPoolToken)return void g.z8.error("未开启API模式,无法刷新");let l="您确定要刷新session_token吗,刷新session_token消耗100额度,请您要仔细认真考虑哦!";e.useRefreshToken&&(l="您确定要刷新refresh_token吗,刷新refresh_token消耗1000额度,请您要仔细认真考虑哦!"),f.T.confirm(l,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const l=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/updateSessionToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((a=>{null!=a&&""!=a&&(null!=a.data?(e.token=a.data,yu(""),f.T.alert("刷新成功!","温馨提醒",{confirmButtonText:"OK"})):g.z8.error(a.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))})).catch((()=>{(0,g.z8)({type:"info",message:"刷新取消!"})}))},Ui=e=>{const l=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/refreshSimplyPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?(xu(""),f.T.alert("刷新成功!","温馨提醒",{confirmButtonText:"OK"})):g.z8.error(e.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},xi=e=>{Fu.value=e.oneApi_name,Qu.value=e.token_name,ei.value=e.token_value,li.value=e.oneApi_baseUrl,ai.value=e.oneApi_models.split(","),oi.value=e.model_mapping,ui.value=e.oneApi_groups.split(","),At.value=e.priority,ii.value=e.shareTime,xn.value=!0},Ai=()=>{const e=y.kN.service({fullscreen:!0}),l={oneApi_name:Fu.value,token_name:Qu.value,token_value:ei.value,oneApi_baseUrl:li.value,oneApi_models:ai.value.toString(),model_mapping:oi.value,oneApi_groups:ui.value.toString(),priority:At.value};fetch(`${Qo}/api/requireShareToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"}):g.z8.error(l.msg)),Au(""),e.close()})).catch((l=>{e.close(),console.error("Error:",l)})),xn.value=!1},Hi=e=>{if(0==e.setPoolToken)return void g.z8.error("未开启API模式,无法生成");const l=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/updateToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?f.T.alert("生成shareToken成功!","温馨提醒",{confirmButtonText:"OK"}):g.z8.error(e.msg)),yu(""),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},zi=e=>{const l=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/changePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?(xu(""),f.T.alert("更换pool_token成功!","温馨提醒",{confirmButtonText:"OK"})):g.z8.error(e.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},Pi=(e,l)=>{const a=y.kN.service({fullscreen:!0});f.T.confirm("您确定要删除这个Pool_Token吗,删除之后就找不到咯,请您要仔细认真考虑哦!","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{fetch(`${Qo}/api/deletePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e.data?(xu(""),g.z8.success(e.data),a.close()):(xu(""),g.z8.error(e.msg),a.close()),gn.value=!1})).catch((e=>{console.error("删除失败",e),xu(""),a.close(),gn.value=!1}))})).catch((()=>{a.close(),(0,g.z8)({type:"info",message:"删除取消!"})}))},Si=(e,l)=>{const a=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/verifySimplyPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?(xu(""),f.T.alert(e.data,"温馨提醒",{confirmButtonText:"OK"})):(xu(""),g.z8.error(e.msg))),a.close()})).catch((e=>{a.close(),console.error("Error:",e)}))},Ni=(e,l)=>{const a=y.kN.service({fullscreen:!0});let o="";f.T.confirm("您确定要删除这个Token吗,删除之后就找不到咯,记得点击全部刷新poolToken","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`${Qo}/api/deleteToken`,l,{headers:ku}).then((async e=>{1==l.setPoolToken&&await k.Z.get(`${Qo}/api/updateAllPoolToken`,{headers:ku}),o=e.data.data,yu(""),(0,g.z8)({type:"success",message:o}),a.close()})).catch((e=>{a.close(),console.error("删除失败",e)}))})).catch((()=>{(0,g.z8)({type:"info",message:"删除取消!"}),a.close()}))},Ci=(e,l)=>{const a=y.kN.service({fullscreen:!0});let o="";f.T.confirm("您确定要删除这个share_Token吗,删除之后就找不到咯","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`${Qo}/api/deleteShareToken`,l,{headers:ku}).then((async e=>{o=e.data.data,Au(""),(0,g.z8)({type:"success",message:o}),a.close()})).catch((e=>{a.close(),console.error("删除失败",e)}))})).catch((()=>{(0,g.z8)({type:"info",message:"删除取消!"}),a.close()}))},Oi=e=>{if(!e)return"";var l=new Date;const a=(0,b.Z)(e.updateTime),o=(0,V.Z)(l,a);return e.token.length>=2e3?o>=80?"已经过去了至少80天":Math.ceil(80-o)+"天":e.token.length<200&&!e.token.includes("fk-")?"永久":o>=10?"已经过去了至少10天":Math.ceil(10-o)+"天"},$i=e=>e.substring(0,30)+"...",Bi=()=>{localStorage.removeItem("jwtToken"),sn.replace("/")},Ii=()=>{wn.value=!0},Di=async()=>{await Au(""),Wn.value=!0},qi=()=>{Uu(),bn.value=!0},ji=()=>{window.open("https://github.com/Yanyutin753/PandoraNext-TokensTool")},Li=e=>{const l=document.createElement("textarea");l.value=e,document.body.appendChild(l),l.select(),document.execCommand("copy"),document.body.removeChild(l),(0,g.z8)({type:"success",message:"复制成功!"})},Mi=e=>{const l=nn.value,a=l.map((e=>e));if(0!==l.length)if("选中删除Token"!=e)if("选中刷新Token"!=e)"选中合成pool_token"==e?Pu():"选中修改pool_token"==e&&(wt.value="",ft.value="",Ht.value="",gt.value="",Vt.value=!1,Wt.value=[],yt.value="",xt.value="",ln.value=[],At.value=0,Vn.value=!0);else{let e=0;const l=nn.value,a=l.map((e=>e));a.forEach(((l,a)=>{l.setPoolToken&&(l.useRefreshToken?e+=1e3:e+=100)}));const o="您确定要花"+e+"积分刷新这"+l.length+"个Token吗,请您要仔细认真考虑哦!";f.T.confirm(o,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/updateSessionTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(yu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):g.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,g.z8)({type:"info",message:"刷新取消!"})}))}else{const e=y.kN.service({fullscreen:!0});let o="";f.T.confirm("您确定要删除这"+l.length+"个Token吗,删除之后就找不到咯","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`${Qo}/api/deleteTokenList`,a,{headers:ku}).then((async l=>{await k.Z.get(`${Qo}/api/updateAllPoolToken`,{headers:ku}),o=l.data.data,yu(""),(0,g.z8)({type:"success",message:o}),e.close()})).catch((l=>{e.close(),console.error("删除失败",l)}))})).catch((()=>{(0,g.z8)({type:"info",message:"删除取消!"}),e.close()}))}else(0,g.z8)("未选择数据")},Zi=e=>{kt.value=e.poolName,ft.value=e.shareTokens,Ht.value=e.poolToken,gt.value=e.poolTime,Vt.value=e.intoOneApi,Wt.value=e.poolOneApi_models.split(","),yt.value=e.poolModel_mapping,xt.value=e.oneApi_pandoraUrl,en.value=e.groupChecked.split(","),At.value=e.priority,An.value=!0},Ei=e=>{const l=tn.value,a=l.map((e=>e));if(0!==a.length)if("选中检查pool_token"!=e)if("选中刷新pool_token"!=e)if("选中更换pool_token"!=e)if("选中删除pool_token"!=e);else{l.length;const e="您确定要删除这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";f.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/deletePoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(xu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):g.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,g.z8)({type:"info",message:"删除取消!"})}))}else{l.length;const e="您确定要更换这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";f.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/changePoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(xu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):g.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,g.z8)({type:"info",message:"更换取消!"})}))}else{const e="您确定要刷新这"+l.length+"个pool_token吗?";f.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/refreshSimplyPoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(xu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):g.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,g.z8)({type:"info",message:"刷新取消!"})}))}else{let e=4*l.length;const o="您确定要花"+e+"积分检查这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";f.T.confirm(o,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/verifySimplyPoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(xu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):g.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,g.z8)({type:"info",message:"检查取消!"})}))}else(0,g.z8)("未选择数据")},Ji=(0,h.iH)(null),Ki=async()=>{yn.value=!0;const e=await k.Z.get(`${Qo}/api/modelsUsage`,{headers:ku});let l=e.data.data.map((e=>e.usage)),a=e.data.data.map((e=>e.model));const o=T.S1(Ji.value),n={title:{text:"tokensTool每日接口对话统计",fontSize:18,color:"#606266"},tooltip:{},legend:{data:a},xAxis:{data:a},yAxis:{},series:[{name:"对话数量",type:"bar",data:l,barWidth:"25%",itemStyle:{color:function(e){const l=["#e74c3c","#3498db","#2ecc71","#f1c40f","#9b59b6","#1abc9c","#e67e22","#ecf0f1","#95a5a6","#34495e","#16a085"];return l[e.dataIndex%l.length]}}}]};o.setOption(n)};return(e,l)=>{const a=(0,p.up)("el-menu-item"),w=c.JO,k=(0,p.up)("el-sub-menu"),f=(0,p.up)("h10"),g=(0,p.up)("el-menu"),b=m.zx,V=(0,p.up)("el-page-header"),y=(0,p.up)("el-radio-button"),T=(0,p.up)("el-radio-group"),Qo=s.ol,nn=(0,p.up)("el-table-column"),tn=(0,p.up)("el-button"),sn=(0,p.up)("el-tag"),gt=(0,p.up)("el-popover"),Jt=(0,p.up)("el-option"),wu=(0,p.up)("el-select"),ku=(0,p.up)("el-button-group"),fu=d.gN,Uu=r.rs,xu=i.TS,Au=u.l0,Hu=t.Vq,zu=(0,p.up)("CopyDocument"),Pu=(0,p.up)("el-icon"),Ju=(0,p.up)("el-select-group"),ii=(0,p.up)("el-dialog"),di=(0,p.up)("el-form-item"),si=(0,p.up)("el-input"),mi=n.XZ,Ri=o.cO,Yi=(0,p.Q2)("loading");return(0,p.wg)(),(0,p.iD)(p.HY,null,[(0,p._)("div",U,[x,(0,p.Wm)(g,{"default-active":Eu.value,class:"el-menu-demo",mode:"horizontal",ellipsis:!1,onSelect:Ku,"active-text-color":"#0ea27e","text-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Wm)(a,null,{default:(0,p.w5)((()=>[(0,p._)("img",{style:{width:"40px"},src:_,alt:"Element logo",onClick:ji})])),_:1}),(0,p.Wm)(a,{onClick:yi},{title:(0,p.w5)((()=>[(0,p._)("div",A,[(0,p._)("h2",null,(0,v.zw)(Iu.value),1)]),(0,p.Wm)(w,{name:"replay",size:"20"})])),_:1}),H,(0,p.Wm)(a,{index:"1",onClick:Ii},{default:(0,p.w5)((()=>[(0,p.Uk)("pool_token列表")])),_:1}),(0,p.Wm)(a,{index:"2",onClick:Di},{default:(0,p.w5)((()=>[(0,p.Uk)("share_token列表")])),_:1}),(0,p.Wm)(k,{index:"3"},{title:(0,p.w5)((()=>[(0,p.Uk)("跳转Web服务")])),default:(0,p.w5)((()=>[(0,p.Wm)(k,{index:"3-1"},{title:(0,p.w5)((()=>[(0,p.Uk)("跳转PandoraWeb服务")])),default:(0,p.w5)((()=>[(0,p.Wm)(a,{index:"3-1-1",onClick:ju},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(lt.value)+"主页",1)])),_:1}),(0,p.Wm)(a,{index:"3-1-2",onClick:Lu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(lt.value)+"共享页",1)])),_:1}),(0,p.Wm)(a,{index:"3-1-3",onClick:Mu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(lt.value)+"修改页",1)])),_:1})])),_:1}),(0,p.Wm)(k,{index:"3-2"},{title:(0,p.w5)((()=>[(0,p.Uk)("获取token地址")])),default:(0,p.w5)((()=>[(0,p.Wm)(a,{index:"3-2-1"},{default:(0,p.w5)((()=>[z])),_:1}),(0,p.Wm)(a,{index:"3-2-2"},{default:(0,p.w5)((()=>[P])),_:1}),(0,p.Wm)(a,{index:"3-2-3"},{default:(0,p.w5)((()=>[S])),_:1})])),_:1}),(0,p.Wm)(a,{index:"3-3",onClick:Zu},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool使用说明")])),_:1})])),_:1}),(0,p.Wm)(k,{index:"5"},{title:(0,p.w5)((()=>[(0,p.Uk)("系统设置")])),default:(0,p.w5)((()=>[(0,p.Wm)(a,{index:"5-1",onClick:l[0]||(l[0]=e=>pi(Xo))},{default:(0,p.w5)((()=>[(0,p.Uk)("PandoraNext设置")])),_:1}),(0,p.Wm)(a,{index:"5-2",onClick:l[1]||(l[1]=e=>pi(Go))},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool设置")])),_:1}),(0,p.Wm)(a,{index:"5-3",onClick:l[2]||(l[2]=e=>pi(Fo))},{default:(0,p.w5)((()=>[(0,p.Uk)("验证码信息设置")])),_:1}),(0,p.Wm)(a,{index:"5-3",onClick:l[3]||(l[3]=e=>fn.value=!0)},{default:(0,p.w5)((()=>[(0,p.Uk)("定时&接口设置")])),_:1})])),_:1}),(0,p.Wm)(k,{index:"6"},{title:(0,p.w5)((()=>[(0,p.Uk)("系统功能")])),default:(0,p.w5)((()=>[(0,p.Wm)(k,{index:"6-1"},{title:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(lt.value)+"状态",1)])),default:(0,p.w5)((()=>[(0,p.Wm)(a,{index:"6-1-1",onClick:wi},{default:(0,p.w5)((()=>[(0,p.Uk)("开启"+(0,v.zw)(lt.value),1)])),_:1}),(0,p.Wm)(a,{index:"6-1-2",onClick:ki},{default:(0,p.w5)((()=>[(0,p.Uk)("暂停"+(0,v.zw)(lt.value),1)])),_:1}),(0,p.Wm)(a,{index:"6-1-3",onClick:fi},{default:(0,p.w5)((()=>[(0,p.Uk)("重启"+(0,v.zw)(lt.value),1)])),_:1}),(0,p.Wm)(a,{index:"6-1-4",onClick:gi},{default:(0,p.w5)((()=>[(0,p.Uk)("重载"+(0,v.zw)(lt.value),1)])),_:1})])),_:1}),(0,p.Wm)(a,{index:"6-3",onClick:Ki},{default:(0,p.w5)((()=>[(0,p.Uk)("copilot每日用量统计")])),_:1}),(0,p.Wm)(a,{index:"6-2",onClick:qi},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool登录日志")])),_:1}),(0,p.Wm)(a,{index:"6-4",onClick:Bi},{default:(0,p.w5)((()=>[(0,p.Wm)(f,{style:{"font-size":"14px"}},{default:(0,p.w5)((()=>[(0,p.Uk)("退出登录")])),_:1})])),_:1})])),_:1})])),_:1},8,["default-active"]),(0,p._)("div",N,[(0,p._)("div",C,[(0,p.Wm)(V,{icon:null,title:" "},{content:(0,p.w5)((()=>[O])),extra:(0,p.w5)((()=>[(0,p._)("div",{class:"addToken",onClick:Ru},[(0,p.Wm)(b,{square:"",icon:"add-o",color:"#0ea27e",class:"addTokenButton"})])])),_:1})]),(0,p._)("div",$,[(0,p._)("div",B,[(0,p.Wm)(Qo,{modelValue:vu.value,"onUpdate:modelValue":l[8]||(l[8]=e=>vu.value=e),"show-action":"",shape:"round",clearable:"",placeholder:"请输入搜索token名称和类型",onSearch:gu},{action:(0,p.w5)((()=>[(0,p.Wm)(T,{modelValue:dn.value,"onUpdate:modelValue":l[7]||(l[7]=e=>dn.value=e),label:"size control"},{default:(0,p.w5)((()=>[(0,p.Wm)(y,{type:"success",plain:"",label:"WEB",onClick:l[4]||(l[4]=e=>Tu(vu.value))},{default:(0,p.w5)((()=>[(0,p.Uk)("WEB")])),_:1}),(0,p.Wm)(y,{type:"success",plain:"",label:"ALL",onClick:l[5]||(l[5]=e=>yu(vu.value))},{default:(0,p.w5)((()=>[(0,p.Uk)("ALL")])),_:1}),(0,p.Wm)(y,{type:"success",plain:"",label:"API",onClick:l[6]||(l[6]=e=>Wu(vu.value))},{default:(0,p.w5)((()=>[(0,p.Uk)("API")])),_:1})])),_:1},8,["modelValue"])])),_:1},8,["modelValue"])]),(0,p._)("div",I,[(0,p.wy)(((0,p.wg)(),(0,p.j4)((0,h.SU)(W.eI),{data:Kt.value,style:{width:"100%"},onSelectionChange:un,ref_key:"multipleTableRef",ref:an,"default-sort":{prop:"updateTime",prop:"setPoolToken"},"row-class-name":Du},{default:(0,p.w5)((()=>[(0,p.Wm)(nn,{type:"selection",width:"45"}),(0,p.Wm)(nn,{label:"名称",prop:"setPoolToken",sortable:"","min-width":"136"},{default:(0,p.w5)((e=>[(0,p._)("div",D,[(0,p.Wm)(tn,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[(0,p._)("h5",null,(0,v.zw)(e.row.setPoolToken?e.row.useRefreshToken?"refAPI":"sesAPI":"Web"),1)])),_:2},1024),(0,p._)("span",q,(0,v.zw)(e.row.name),1)])])),_:1}),(0,p.Wm)(nn,{label:"账号信息","min-width":"200"},{default:(0,p.w5)((e=>[(0,p.Wm)(gt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p._)("div",null,"账号: "+(0,v.zw)(e.row.username),1),(0,p._)("div",null,"密码: "+(0,v.zw)(e.row.userPassword),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(sn,null,{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(e.row.username),1)])),_:2},1024)])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{label:"Token值","min-width":"270"},{default:(0,p.w5)((e=>[(0,p.Wm)(gt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p._)("div",null,"token: "+(0,v.zw)($i(e.row.token)),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(sn,null,{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)($i(e.row.token)),1)])),_:2},1024)])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{prop:"updateTime",sortable:"",label:"有效时间","min-width":"167"},{default:(0,p.w5)((e=>[(0,p.Wm)(gt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p._)("div",null,"注册时间:"+(0,v.zw)(e.row.updateTime),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(sn,null,{default:(0,p.w5)((()=>[(0,p.Uk)("距离过期还有:"+(0,v.zw)(Oi(e.row)),1)])),_:2},1024)])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{label:"操作方法",width:"335"},{default:(0,p.w5)((e=>[(0,p.Wm)(tn,{size:"small",onClick:l=>ci(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("编辑")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"primary",onClick:l=>Gu(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"danger",onClick:l=>Ni(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"success",onClick:l=>Ti(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("刷新")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"warning",onClick:l=>Hi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("生成")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])),[[Yi,e.loading]])]),(0,p._)("div",j,[(0,p.Wm)(wu,{modelValue:Hn.value,"onUpdate:modelValue":l[9]||(l[9]=e=>Hn.value=e),clearable:"",filterable:"",placeholder:"请选择批量操作",class:"ml-4"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(zn,(e=>(0,p.Wm)(Jt,{key:e.buttonValue,label:e.label,value:e.buttonValue},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),(0,p.Wm)(tn,{class:"ml-4",onClick:l[10]||(l[10]=e=>Mi(Hn.value))},{default:(0,p.w5)((()=>[L])),_:1}),(0,p.Wm)(ku,{class:"my-button"},{default:(0,p.w5)((()=>[(0,p.Wm)(tn,{onClick:Wi},{default:(0,p.w5)((()=>[M])),_:1})])),_:1})])]),Z,E,J])]),(0,p.Wm)(Hu,{show:mn.value,"onUpdate:show":l[21]||(l[21]=e=>mn.value=e),title:"📌修改token信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",K,[(0,p.Wm)(Au,{onSubmit:l[20]||(l[20]=e=>_i())},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[R,(0,p.Wm)(fu,{modelValue:It.value,"onUpdate:modelValue":l[11]||(l[11]=e=>It.value=e),name:"OpenAi邮箱",label:"OpenAi邮箱",placeholder:"OpenAi邮箱",rules:[{required:!0,message:"请填写OpenAi邮箱"}]},null,8,["modelValue"]),Y,(0,p.Wm)(fu,{modelValue:Dt.value,"onUpdate:modelValue":l[12]||(l[12]=e=>Dt.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码",rules:[{required:!0,message:"请填写OpenAi密码"}]},null,8,["modelValue"]),X,(0,p.Wm)(fu,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Zt.value,"onUpdate:modelValue":l[13]||(l[13]=e=>Zt.value=e)},null,8,["modelValue"])])),_:1}),1==Zt.value?((0,p.wg)(),(0,p.iD)("div",G,[F,(0,p.Wm)(fu,{name:"switch",label:"是否使用refreshToken"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Et.value,"onUpdate:modelValue":l[14]||(l[14]=e=>Et.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0),1==Zt.value?((0,p.wg)(),(0,p.iD)("div",Q,[ee,(0,p.Wm)(fu,{name:"switch",label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:qt.value,"onUpdate:modelValue":l[15]||(l[15]=e=>qt.value=e)},null,8,["modelValue"])])),_:1}),1==qt.value?((0,p.wg)(),(0,p.iD)("div",le,[ae,(0,p.Wm)(fu,{name:"switch",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:jt.value,"onUpdate:modelValue":l[16]||(l[16]=e=>jt.value=e)},null,8,["modelValue"])])),_:1}),oe,(0,p.Wm)(fu,{name:"switch",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Lt.value,"onUpdate:modelValue":l[17]||(l[17]=e=>Lt.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0)])):(0,p.kq)("",!0),0==qt.value||0==Zt.value?((0,p.wg)(),(0,p.iD)("div",ne,[te,(0,p.Wm)(fu,{modelValue:Mt.value,"onUpdate:modelValue":l[18]||(l[18]=e=>Mt.value=e),name:"进入Token的密码",label:"进入Token的密码",placeholder:"填了将不会分享给他人!",rules:[{validator:Nt}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),ue,(0,p.Wm)(fu,{modelValue:Ot.value,"onUpdate:modelValue":l[19]||(l[19]=e=>Ot.value=e),label:"Token的值",type:"textarea",maxlength:"5000",placeholder:"请填写OpenAi的Token(选填),session或refresh_token",autosize:{maxHeight:100,minHeight:20},"show-word-limit":""},null,8,["modelValue"]),ie])),_:1}),(0,p._)("div",re,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),de])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:cn.value,"onUpdate:show":l[33]||(l[33]=e=>cn.value=e),title:"✨添加token信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"addTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",se,[(0,p.Wm)(Au,{onSubmit:l[32]||(l[32]=e=>Yu())},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[me,(0,p.Wm)(fu,{modelValue:Gt.value,"onUpdate:modelValue":l[22]||(l[22]=e=>Gt.value=e),name:"Token用户名",label:"Token用户名",placeholder:"Token用户名",rules:[{required:!0,message:"请填写Token用户名"}]},null,8,["modelValue"]),ce,(0,p.Wm)(fu,{modelValue:Ft.value,"onUpdate:modelValue":l[23]||(l[23]=e=>Ft.value=e),name:"OpenAi邮箱",label:"OpenAi邮箱",placeholder:"OpenAi邮箱",rules:[{required:!0,message:"请填写OpenAi邮箱"}]},null,8,["modelValue"]),pe,(0,p.Wm)(fu,{modelValue:Qt.value,"onUpdate:modelValue":l[24]||(l[24]=e=>Qt.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码",rules:[{required:!0,message:"请填写OpenAi密码"}]},null,8,["modelValue"]),ve,(0,p.Wm)(fu,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:nu.value,"onUpdate:modelValue":l[25]||(l[25]=e=>nu.value=e)},null,8,["modelValue"])])),_:1}),1==nu.value?((0,p.wg)(),(0,p.iD)("div",he,[_e,(0,p.Wm)(fu,{name:"switch",label:"是否使用refreshToken"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:tu.value,"onUpdate:modelValue":l[26]||(l[26]=e=>tu.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0),1==nu.value?((0,p.wg)(),(0,p.iD)("div",we,[ke,(0,p.Wm)(fu,{name:"switch",label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:lu.value,"onUpdate:modelValue":l[27]||(l[27]=e=>lu.value=e)},null,8,["modelValue"])])),_:1}),1==lu.value?((0,p.wg)(),(0,p.iD)("div",fe,[ge,(0,p.Wm)(fu,{name:"switch",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:au.value,"onUpdate:modelValue":l[28]||(l[28]=e=>au.value=e)},null,8,["modelValue"])])),_:1}),be,(0,p.Wm)(fu,{name:"switch",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:ou.value,"onUpdate:modelValue":l[29]||(l[29]=e=>ou.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0)])):(0,p.kq)("",!0),""==lu.value?((0,p.wg)(),(0,p.iD)("div",Ve,[ye,(0,p.Wm)(fu,{modelValue:uu.value,"onUpdate:modelValue":l[30]||(l[30]=e=>uu.value=e),name:"进入Token的密码",label:"进入Token的密码",placeholder:"填了将不会分享给他人!",rules:[{validator:Nt}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),1==nu.value?((0,p.wg)(),(0,p.iD)("div",We,[Te,(0,p.Wm)(fu,{rows:"3",type:"textarea",maxlength:"5000","show-word-limit":"",modelValue:eu.value,"onUpdate:modelValue":l[31]||(l[31]=e=>eu.value=e),name:"Token的值",label:"Token的值",placeholder:"选填(可不填,不填则使用账号密码),目前只支持session_token或refresh_token"},null,8,["modelValue"])])):(0,p.kq)("",!0),Ue])),_:1}),(0,p._)("div",xe,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Ae])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:pn.value,"onUpdate:show":l[53]||(l[53]=e=>pn.value=e),title:"🔎token信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"showDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",He,[(0,p.Wm)(Au,null,{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[ze,(0,p.Wm)(fu,{modelValue:Ct.value,"onUpdate:modelValue":l[34]||(l[34]=e=>Ct.value=e),name:"Token用户名",label:"Token用户名",placeholder:"Token用户名","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[35]||(l[35]=e=>Li(Ct.value))},null,8,["modelValue"]),Pe,(0,p.Wm)(fu,{modelValue:Mt.value,"onUpdate:modelValue":l[36]||(l[36]=e=>Mt.value=e),type:"temPassword",name:"进入Token的密码",label:"进入Token的密码",placeholder:"填了将不会分享给他人(如不填则输入Token名即可进入)!","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[37]||(l[37]=e=>Li(Mt.value))},null,8,["modelValue"]),Se,(0,p.Wm)(fu,{modelValue:It.value,"onUpdate:modelValue":l[38]||(l[38]=e=>It.value=e),name:"OpenAi用户名",label:"OpenAi用户名",placeholder:"OpenAi用户名","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[39]||(l[39]=e=>Li(It.value))},null,8,["modelValue"]),Ne,(0,p.Wm)(fu,{modelValue:Dt.value,"onUpdate:modelValue":l[40]||(l[40]=e=>Dt.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[41]||(l[41]=e=>Li(Dt.value))},null,8,["modelValue"]),Ce,(0,p.Wm)(fu,{name:"temShared",readonly:!0,label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:qt.value,"onUpdate:modelValue":l[42]||(l[42]=e=>qt.value=e)},null,8,["modelValue"])])),_:1}),Oe,(0,p.Wm)(fu,{readonly:!0,name:"temShow_user_info",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:jt.value,"onUpdate:modelValue":l[43]||(l[43]=e=>jt.value=e)},null,8,["modelValue"])])),_:1}),$e,(0,p.Wm)(fu,{readonly:!0,name:"temPlus",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:Lt.value,"onUpdate:modelValue":l[44]||(l[44]=e=>Lt.value=e)},null,8,["modelValue"])])),_:1}),Be,(0,p.Wm)(fu,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:Zt.value,"onUpdate:modelValue":l[45]||(l[45]=e=>Zt.value=e)},null,8,["modelValue"])])),_:1}),Ie,(0,p.Wm)(fu,{name:"switch",label:"是否使用refresh_token"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:Et.value,"onUpdate:modelValue":l[46]||(l[46]=e=>Et.value=e)},null,8,["modelValue"])])),_:1}),De,(0,p.Wm)(fu,{modelValue:Ot.value,"onUpdate:modelValue":l[47]||(l[47]=e=>Ot.value=e),label:"Token的值",type:"textarea",maxlength:"5000",placeholder:"请填写OpenAi的Token(session或refresh_token)","show-word-limit":"","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[48]||(l[48]=e=>Li(Ot.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"]),1==Zt.value?((0,p.wg)(),(0,p.iD)("div",qe,[je,(0,p.Wm)(fu,{modelValue:$t.value,"onUpdate:modelValue":l[49]||(l[49]=e=>$t.value=e),label:"access_token",type:"textarea",maxlength:"5000",placeholder:"请填写OpenAi的access_token","show-word-limit":"","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[50]||(l[50]=e=>Li($t.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"]),Le,(0,p.Wm)(fu,{modelValue:Bt.value,"onUpdate:modelValue":l[51]||(l[51]=e=>Bt.value=e),label:"share_token",type:"textarea",maxlength:"200",placeholder:"请填写OpenAi的share_token","show-word-limit":"","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[52]||(l[52]=e=>Li(Bt.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"])])):(0,p.kq)("",!0)])),_:1})])),_:1}),1==Zt.value?((0,p.wg)(),(0,p.iD)("div",Me,[(0,p._)("div",{ref_key:"chart_show",ref:Xu,style:{width:"auto",height:"300px"}},null,512),Ze])):(0,p.kq)("",!0)])])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:vn.value,"onUpdate:show":l[68]||(l[68]=e=>vn.value=e),title:"PandoraNext设置信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requirePandora"},{default:(0,p.w5)((()=>[(0,p._)("div",Ee,[(0,p.Wm)(Au,{onSubmit:l[67]||(l[67]=e=>vi(Xo))},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Je,(0,p.Wm)(fu,{modelValue:$n.value,"onUpdate:modelValue":l[54]||(l[54]=e=>$n.value=e),name:"对话标题",label:"对话标题",placeholder:"隔离对话设置标题"},null,8,["modelValue"]),Ke,(0,p.Wm)(fu,{modelValue:Bn.value,"onUpdate:modelValue":l[55]||(l[55]=e=>Bn.value=e),name:"绑定IP和端口",label:"绑定IP和端口",placeholder:"绑定IP和端口(选填)"},null,8,["modelValue"]),Re,(0,p.Wm)(fu,{modelValue:Zn.value,"onUpdate:modelValue":l[56]||(l[56]=e=>Zn.value=e),name:"DoH主机名",label:"DoH主机名",placeholder:"配置自定义的DoH主机名(选填)"},null,8,["modelValue"]),Ye,(0,p.Wm)(fu,{modelValue:In.value,"onUpdate:modelValue":l[57]||(l[57]=e=>In.value=e),name:"请求超时时间",label:"请求超时时间",placeholder:"请求超时时间(选填)"},null,8,["modelValue"]),Xe,(0,p.Wm)(fu,{name:"switch",label:"是否分享对话(选填)"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:qn.value,"onUpdate:modelValue":l[58]||(l[58]=e=>qn.value=e)},null,8,["modelValue"])])),_:1}),Ge,(0,p.Wm)(fu,{name:"switch",label:"是否配置证书"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:En.value,"onUpdate:modelValue":l[59]||(l[59]=e=>En.value=e)},null,8,["modelValue"])])),_:1}),1==En.value?((0,p.wg)(),(0,p.iD)("div",Fe,[Qe,(0,p.Wm)(fu,{modelValue:Jn.value,"onUpdate:modelValue":l[60]||(l[60]=e=>Jn.value=e),name:"证书文件",label:"证书文件",placeholder:"证书文件"},null,8,["modelValue"]),el,(0,p.Wm)(fu,{modelValue:Kn.value,"onUpdate:modelValue":l[61]||(l[61]=e=>Kn.value=e),name:"密钥文件",label:"密钥文件",placeholder:"密钥文件"},null,8,["modelValue"])])):(0,p.kq)("",!0),ll,(0,p.Wm)(fu,{name:"switch",label:"是否禁用注册"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:jn.value,"onUpdate:modelValue":l[62]||(l[62]=e=>jn.value=e)},null,8,["modelValue"])])),_:1}),al,(0,p.Wm)(fu,{name:"switch",label:"是否自动打码"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Ln.value,"onUpdate:modelValue":l[63]||(l[63]=e=>Ln.value=e)},null,8,["modelValue"])])),_:1}),ol,(0,p.Wm)(fu,{name:"switch",label:"使用文件代理服务"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Mn.value,"onUpdate:modelValue":l[64]||(l[64]=e=>Mn.value=e)},null,8,["modelValue"])])),_:1}),nl,(0,p.Wm)(fu,{modelValue:Dn.value,"onUpdate:modelValue":l[65]||(l[65]=e=>Dn.value=e),name:"代理服务URL",label:"代理服务URL",placeholder:"代理服务URL(选填)"},null,8,["modelValue"]),tl,(0,p.Wm)(fu,{modelValue:ot.value,"onUpdate:modelValue":l[66]||(l[66]=e=>ot.value=e),name:"白名单",label:"白名单",placeholder:"[]限制所有账号(默认为null)"},null,8,["modelValue"]),ul])),_:1}),(0,p._)("div",il,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),rl])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:hn.value,"onUpdate:show":l[80]||(l[80]=e=>hn.value=e),title:"tokensTool设置信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",dl,[(0,p.Wm)(Au,{onSubmit:l[79]||(l[79]=e=>vi(Go))},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[sl,(0,p.Wm)(fu,{modelValue:Xn.value,"onUpdate:modelValue":l[69]||(l[69]=e=>Xn.value=e),name:"登录用户名",label:"登录用户名",placeholder:"tokensTool用户名"},null,8,["modelValue"]),ml,(0,p.Wm)(fu,{modelValue:Gn.value,"onUpdate:modelValue":l[70]||(l[70]=e=>Gn.value=e),name:"登录密码",label:"登录密码",placeholder:"不少于8位,且同时包含数字和字母",rules:[{validator:zt}]},null,8,["modelValue","rules"]),cl,(0,p.Wm)(fu,{modelValue:On.value,"onUpdate:modelValue":l[71]||(l[71]=e=>On.value=e),name:"proxy接口前缀",label:"proxy接口前缀",placeholder:"proxy模式接口后缀,不少于8位,且同时包含数字和字母",rules:[{validator:zt}]},null,8,["modelValue","rules"]),pl,(0,p.Wm)(fu,{modelValue:at.value,"onUpdate:modelValue":l[72]||(l[72]=e=>at.value=e),name:"proxy模式URL",label:"proxy模式URL",placeholder:"http(s)://(ip:port或者域名)/后缀,同公网服务器填default"},null,8,["modelValue"]),vl,(0,p.Wm)(fu,{modelValue:Yn.value,"onUpdate:modelValue":l[73]||(l[73]=e=>Yn.value=e),name:"重载服务密码",label:"重载服务密码",placeholder:"PandoraNext重载服务密码,不少于8位,且同时包含数字和字母",rules:[{validator:zt}]},null,8,["modelValue","rules"]),hl,(0,p.Wm)(fu,{modelValue:Rn.value,"onUpdate:modelValue":l[74]||(l[74]=e=>Rn.value=e),name:"访问密码",label:"访问密码",placeholder:"PandoraNext访问密码,建议开启访问密码",rules:[{validator:Pt}]},null,8,["modelValue","rules"]),_l,(0,p.Wm)(fu,{modelValue:Fn.value,"onUpdate:modelValue":l[75]||(l[75]=e=>Fn.value=e),name:"验证licenseId",label:"验证licenseId",placeholder:"验证licenseId(github上拿到的license_id)"},null,8,["modelValue"]),wl,(0,p.Wm)(fu,{name:"switch",label:"tokensTool接口"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Qn.value,"onUpdate:modelValue":l[76]||(l[76]=e=>Qn.value=e)},null,8,["modelValue"])])),_:1}),1==Qn.value?((0,p.wg)(),(0,p.iD)("div",kl,[fl,(0,p.Wm)(fu,{modelValue:et.value,"onUpdate:modelValue":l[77]||(l[77]=e=>et.value=e),name:"接口密码",label:"接口密码",placeholder:"tokensTool接口密码,用于获取tokens,不少于8位,且同时包含数字和字母",rules:[{validator:zt}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),gl,(0,p.Wm)(fu,{modelValue:lt.value,"onUpdate:modelValue":l[78]||(l[78]=e=>lt.value=e),name:"监管容器名",label:"监管容器名",placeholder:"监管运行的容器名或文件名,默认为PandoraNext",rules:[{required:!0,message:"请填写监管的容器名"}]},null,8,["modelValue"]),bl])),_:1}),(0,p._)("div",Vl,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),yl])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:_n.value,"onUpdate:show":l[89]||(l[89]=e=>_n.value=e),title:"PandoraNext验证信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"verify"},{default:(0,p.w5)((()=>[(0,p._)("div",Wl,[(0,p.Wm)(Au,{onSubmit:l[88]||(l[88]=e=>vi(Fo))},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Tl,(0,p.Wm)(fu,{modelValue:nt.value,"onUpdate:modelValue":l[81]||(l[81]=e=>nt.value=e),name:"验证码提供商",label:"验证码提供商",placeholder:"验证码提供商"},null,8,["modelValue"]),Ul,(0,p.Wm)(fu,{modelValue:tt.value,"onUpdate:modelValue":l[82]||(l[82]=e=>tt.value=e),name:"验证码网站参数",label:"验证码网站参数",placeholder:"验证码网站参数"},null,8,["modelValue"]),xl,(0,p.Wm)(fu,{modelValue:ut.value,"onUpdate:modelValue":l[83]||(l[83]=e=>ut.value=e),name:"验证码API Key",label:"验证码API Key",placeholder:"验证码API Key"},null,8,["modelValue"]),Al,(0,p.Wm)(fu,{name:"switch",label:"是否全站密码登录页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:it.value,"onUpdate:modelValue":l[84]||(l[84]=e=>it.value=e)},null,8,["modelValue"])])),_:1}),Hl,(0,p.Wm)(fu,{name:"switch",label:"是否在设置登录页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:rt.value,"onUpdate:modelValue":l[85]||(l[85]=e=>rt.value=e)},null,8,["modelValue"])])),_:1}),zl,(0,p.Wm)(fu,{name:"switch",label:"是否在输入用户名页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:dt.value,"onUpdate:modelValue":l[86]||(l[86]=e=>dt.value=e)},null,8,["modelValue"])])),_:1}),Pl,(0,p.Wm)(fu,{name:"switch",label:"是否在输入密码页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:st.value,"onUpdate:modelValue":l[87]||(l[87]=e=>st.value=e)},null,8,["modelValue"])])),_:1}),Sl])),_:1}),(0,p._)("div",Nl,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Cl])),_:1},8,["show"]),(0,p.Wm)(ii,{modelValue:wn.value,"onUpdate:modelValue":l[95]||(l[95]=e=>wn.value=e),title:"pool_token列表","align-center":"",width:"78%","close-on-click-modal":!1,class:"shareTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Ol,[(0,p.Wm)(Pu,{onClick:l[90]||(l[90]=e=>Li(vt.value+On.value+"/v1/chat/completions"))},{default:(0,p.w5)((()=>[(0,p.Wm)(zu)])),_:1}),(0,p.Wm)(f,null,{default:(0,p.w5)((()=>[(0,p.Uk)("API地址:"+(0,v.zw)(vt.value)+(0,v.zw)(On.value)+"/v1/chat/completions",1)])),_:1})]),(0,p.Wm)((0,h.SU)(W.eI),{data:Rt.value,"default-sort":{prop:"poolTime",prop:"intoOneApi"},onSelectionChange:rn,ref_key:"multipleTableRefPool",ref:on,"row-class-name":qu,class:"poolDateTable"},{default:(0,p.w5)((()=>[(0,p.Wm)(nn,{type:"selection",width:"45"}),(0,p.Wm)(nn,{label:"pool_token名称",prop:"intoOneApi",sortable:"","min-width":"170"},{default:(0,p.w5)((e=>[(0,p.Wm)(gt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{reference:(0,p.w5)((()=>[(0,p._)("div",$l,[1==e.row.intoOneApi?((0,p.wg)(),(0,p.iD)("div",Bl,[(0,p.Wm)(tn,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[Il])),_:1})])):((0,p.wg)(),(0,p.iD)("div",Dl,[(0,p.Wm)(tn,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[ql])),_:1})])),(0,p._)("span",jl,(0,v.zw)(e.row.poolName),1)])])),default:(0,p.w5)((()=>[(0,p.Wm)(sn,null,{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(e.row.poolOneApi_models),1)])),_:2},1024)])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{label:"pool_token值","min-width":"325"},{default:(0,p.w5)((e=>[(0,p._)("div",Ll,[(0,p.Wm)(Pu,{onClick:l=>Li(e.row.poolToken)},{default:(0,p.w5)((()=>[(0,p.Wm)(zu)])),_:2},1032,["onClick"]),(0,p._)("span",Ml,(0,v.zw)(e.row.poolToken),1)])])),_:1}),(0,p.Wm)(nn,{label:"使用token名集合","min-width":"165"},{default:(0,p.w5)((e=>[(0,p.Wm)(gt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(e.row.shareTokens),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(sn,null,{default:(0,p.w5)((()=>[Zl])),_:1})])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{property:"poolTime",label:"更新时间",prop:"poolTime",sortable:"","min-width":"170"}),(0,p.Wm)(nn,{label:"操作方法","min-width":"335"},{default:(0,p.w5)((e=>[(0,p.Wm)(tn,{size:"small",onClick:l=>Zi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"warning",onClick:l=>Si(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("检验")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"danger",onClick:l=>Pi(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"success",onClick:l=>Ui(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("刷新")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"primary",onClick:l=>zi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("更换")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"]),(0,p.Wm)(Ju,{class:"pool-button flex-container"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:Nn.value,"onUpdate:modelValue":l[91]||(l[91]=e=>Nn.value=e),filterable:"",clearable:"",placeholder:"请选择批量操作"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Cn,(e=>(0,p.Wm)(Jt,{key:e.buttonPoolValue,label:e.label,value:e.buttonPoolValue},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),(0,p.Wm)(tn,{onClick:l[92]||(l[92]=e=>Ei(Nn.value))},{default:(0,p.w5)((()=>[El])),_:1}),(0,p.Wm)(Qo,{modelValue:hu.value,"onUpdate:modelValue":l[93]||(l[93]=e=>hu.value=e),shape:"round",clearable:"",placeholder:"请输入搜索pool_token名称",onSearch:l[94]||(l[94]=e=>Vu(hu.value)),class:"onPoolToken"},null,8,["modelValue"])])),_:1}),Jl])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:kn.value,"onUpdate:modelValue":l[99]||(l[99]=e=>kn.value=e),title:"PandoraNext余额","align-center":"",width:"auto","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Kl,[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Rl,(0,p.Wm)(fu,{modelValue:Iu.value,"onUpdate:modelValue":l[96]||(l[96]=e=>Iu.value=e),name:"PandoraNext用量",label:"PandoraNext用量",placeholder:"PandoraNext用量"},null,8,["modelValue"]),Yl,(0,p.Wm)(fu,{modelValue:bi.value,"onUpdate:modelValue":l[97]||(l[97]=e=>bi.value=e),name:"绑定IP",label:"绑定IP",placeholder:"绑定IP"},null,8,["modelValue"]),Xl,(0,p.Wm)(fu,{modelValue:Vi.value,"onUpdate:modelValue":l[98]||(l[98]=e=>Vi.value=e),name:"重置时间",label:"重置时间",placeholder:"重置时间"},null,8,["modelValue"]),Gl])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:fn.value,"onUpdate:modelValue":l[107]||(l[107]=e=>fn.value=e),title:"定时刷新&PandoraNext网址","align-center":"","max-width":"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Fl,[(0,p.Wm)(Au,{onSubmit:l[106]||(l[106]=e=>hi())},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Ql,(0,p.Wm)(fu,{name:"switch",label:"是否自动刷新session_token"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:mt.value,"onUpdate:modelValue":l[100]||(l[100]=e=>mt.value=e)},null,8,["modelValue"])])),_:1}),1==mt.value?((0,p.wg)(),(0,p.iD)("div",ea,[la,(0,p.Wm)(fu,{modelValue:ct.value,"onUpdate:modelValue":l[101]||(l[101]=e=>ct.value=e),name:"刷新session的时间",label:"刷新session的时间","input-align":"right",placeholder:"自动刷新session的时间 (天为单位)"},null,8,["modelValue"]),aa,(0,p.Wm)(fu,{modelValue:pt.value,"onUpdate:modelValue":l[102]||(l[102]=e=>pt.value=e),name:"刷新session的个数",label:"刷新session的个数","input-align":"right",placeholder:"自动刷新session的个数 (个)"},null,8,["modelValue"]),oa])):(0,p.kq)("",!0),(0,p.Wm)(fu,{modelValue:vt.value,"onUpdate:modelValue":l[103]||(l[103]=e=>vt.value=e),name:"PandoraNext的公网访问地址",label:"PandoraNext的公网访问地址","input-align":"right",placeholder:"PandoraNext的公网访问地址"},null,8,["modelValue"]),na,(0,p.Wm)(fu,{modelValue:ht.value,"onUpdate:modelValue":l[104]||(l[104]=e=>ht.value=e),name:"oneApi的公网访问地址",label:"oneApi的公网访问地址","input-align":"right",placeholder:"oneApi的公网访问地址"},null,8,["modelValue"]),ta,(0,p.Wm)(fu,{modelValue:_t.value,"onUpdate:modelValue":l[105]||(l[105]=e=>_t.value=e),name:"oneApi的系统令牌",label:"oneApi的系统令牌","input-align":"right",placeholder:"oneApi的系统令牌"},null,8,["modelValue"]),ua])),_:1}),(0,p._)("div",ia,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:gn.value,"onUpdate:modelValue":l[115]||(l[115]=e=>gn.value=e),title:"✨添加pool_token信息","align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",ra,[(0,p.Wm)(Au,{onSubmit:Su},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[da,(0,p.Wm)(fu,{modelValue:bt.value,"onUpdate:modelValue":l[108]||(l[108]=e=>bt.value=e),name:"为pool_token名",label:"pool_token名","input-align":"right",placeholder:"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字",rules:[{validator:St}]},null,8,["modelValue","rules"]),sa,(0,p.Wm)(fu,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Vt.value,"onUpdate:modelValue":l[109]||(l[109]=e=>Vt.value=e)},null,8,["modelValue"])])),_:1}),1==Vt.value?((0,p.wg)(),(0,p.iD)("div",ma,[ca,(0,p._)("div",pa,[(0,p.Wm)(di,{label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:Tt.value,"onUpdate:modelValue":l[110]||(l[110]=e=>Tt.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Sn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),va])),_:1}),ha,(0,p.Wm)(di,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(si,{modelValue:Ut.value,"onUpdate:modelValue":l[111]||(l[111]=e=>Ut.value=e),type:"textarea",rows:10,placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),_a,(0,p.Wm)(fu,{modelValue:At.value,"onUpdate:modelValue":l[112]||(l[112]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)"},null,8,["modelValue"]),wa,(0,p.Wm)(fu,{"input-align":"right",name:"checkboxGroup",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:ln.value,"onUpdate:modelValue":l[113]||(l[113]=e=>ln.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),ka,(0,p.Wm)(fu,{modelValue:xt.value,"onUpdate:modelValue":l[114]||(l[114]=e=>xt.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right",placeholder:"自定义PandoraNext地址"},null,8,["modelValue"]),fa])):(0,p.kq)("",!0)])),_:1}),(0,p._)("div",ga,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:bn.value,"onUpdate:modelValue":l[116]||(l[116]=e=>bn.value=e),title:"tokensTool登录日志","align-center":"",width:"50%","close-on-click-modal":!1,class:"showLoginDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",ba,[(0,p.Wm)((0,h.SU)(W.eI),{"row-class-name":qu,data:Xt.value},{default:(0,p.w5)((()=>[(0,p.Wm)(nn,{prop:"ipAddress",label:"登录地区","min-width":"180"},{default:(0,p.w5)((e=>[(0,p._)("div",Va,[(0,p._)("span",ya,(0,v.zw)(e.row.ipAddress),1)])])),_:1}),(0,p.Wm)(nn,{label:"登录IP","min-width":"145"},{default:(0,p.w5)((e=>[(0,p._)("div",Wa,[(0,p.Wm)(Pu,{onClick:l=>Li(e.row.poolToken)},{default:(0,p.w5)((()=>[(0,p.Wm)(zu)])),_:2},1032,["onClick"]),(0,p._)("span",Ta,(0,v.zw)(e.row.requestIp),1)])])),_:1}),(0,p.Wm)(nn,{label:"成功/失败","min-width":"105"},{default:(0,p.w5)((e=>[(0,p._)("div",Ua,[(0,p._)("span",xa,(0,v.zw)(e.row.inRequestNumber)+"/"+(0,v.zw)(e.row.outRequestNumber),1)])])),_:1}),(0,p.Wm)(nn,{property:"lastLoginTime",label:"登录时间",prop:"lastLoginTime","min-width":"180"})])),_:1},8,["data"])]),Aa])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:Vn.value,"onUpdate:modelValue":l[125]||(l[125]=e=>Vn.value=e),title:"📌修改pool_token信息","align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Ha,[(0,p.Wm)(Au,{onSubmit:$u},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[za,(0,p._)("div",Pa,[(0,p.Wm)(di,{label:"poolToken名"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:wt.value,"onUpdate:modelValue":l[117]||(l[117]=e=>wt.value=e),filterable:"",clearable:"",placeholder:"选择你想要的修改的pool_token名称",onChange:Nu,class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Rt.value,(e=>((0,p.wg)(),(0,p.j4)(Jt,{key:e.poolName,label:e.poolName,value:e.poolName,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),Sa,(0,p.Wm)(fu,{modelValue:Ht.value,"onUpdate:modelValue":l[118]||(l[118]=e=>Ht.value=e),type:"textarea",maxlength:"100",autoSize:"",name:"pool_token的值",label:"pool_token的值","input-align":"right",placeholder:"pool_token的值(不改则不变)"},null,8,["modelValue"]),Na,(0,p.Wm)(fu,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Vt.value,"onUpdate:modelValue":l[119]||(l[119]=e=>Vt.value=e)},null,8,["modelValue"])])),_:1}),Ca,1==Vt.value?((0,p.wg)(),(0,p.iD)("div",Oa,[$a,(0,p._)("div",Ba,[(0,p.Wm)(di,{label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:Wt.value,"onUpdate:modelValue":l[120]||(l[120]=e=>Wt.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Sn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),Ia])),_:1}),Da,(0,p.Wm)(di,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(si,{modelValue:yt.value,"onUpdate:modelValue":l[121]||(l[121]=e=>yt.value=e),type:"textarea",rows:10,placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),qa,(0,p.Wm)(fu,{modelValue:At.value,"onUpdate:modelValue":l[122]||(l[122]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),ja,(0,p.Wm)(fu,{"input-align":"right",name:"checkboxGroup",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:en.value,"onUpdate:modelValue":l[123]||(l[123]=e=>en.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),La,(0,p.Wm)(fu,{modelValue:xt.value,"onUpdate:modelValue":l[124]||(l[124]=e=>xt.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right",placeholder:"自定义PandoraNext地址",rules:[{required:!0,message:"请填写自定义PandoraNext地址"}]},null,8,["modelValue"]),Ma])):(0,p.kq)("",!0)])),_:1}),(0,p._)("div",Za,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:yn.value,"onUpdate:modelValue":l[126]||(l[126]=e=>yn.value=e),"align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",{ref_key:"chart",ref:Ji,style:{width:"auto",height:"400px"}},null,512)])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:Wn.value,"onUpdate:modelValue":l[130]||(l[130]=e=>Wn.value=e),title:"OneAPI里的share_token列表","align-center":"",width:"78%","close-on-click-modal":!1,class:"shareTokenDialog"},{default:(0,p.w5)((()=>[(0,p.Wm)(Qo,{modelValue:_u.value,"onUpdate:modelValue":l[128]||(l[128]=e=>_u.value=e),"show-action":"",shape:"round",clearable:"",placeholder:"请输入搜索share_token名称",onSearch:l[129]||(l[129]=e=>bu(_u.value)),class:"onShareToken"},{action:(0,p.w5)((()=>[(0,p.Wm)(tn,{icon:e.Plus,onClick:l[127]||(l[127]=e=>Tn.value=!0)},{default:(0,p.w5)((()=>[Ea])),_:1},8,["icon"])])),_:1},8,["modelValue"]),(0,p.Wm)((0,h.SU)(W.eI),{data:Yt.value,"row-class-name":qu},{default:(0,p.w5)((()=>[(0,p.Wm)(nn,{label:"在one_api的名称",prop:"oneApi_name",width:"180"},{default:(0,p.w5)((e=>[(0,p._)("div",Ja,[(0,p._)("span",Ka,(0,v.zw)(e.row.oneApi_name),1)])])),_:1}),(0,p.Wm)(nn,{label:"来源Token名","min-width":"135"},{default:(0,p.w5)((e=>[(0,p._)("div",Ra,[(0,p._)("span",Ya,(0,v.zw)(e.row.token_name),1)])])),_:1}),(0,p.Wm)(nn,{label:"share_token值","min-width":"355"},{default:(0,p.w5)((e=>[(0,p._)("div",Xa,[(0,p.Wm)(Pu,{onClick:l=>Li(e.row.token_value)},{default:(0,p.w5)((()=>[(0,p.Wm)(zu)])),_:2},1032,["onClick"]),(0,p._)("span",Ga,(0,v.zw)(e.row.token_value),1)])])),_:1}),(0,p.Wm)(nn,{property:"shareTime",label:"更新时间",prop:"shareTime","min-width":"170"}),(0,p.Wm)(nn,{label:"操作方法","min-width":"205"},{default:(0,p.w5)((e=>[(0,p.Wm)(tn,{size:"small",onClick:l=>ri(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"primary",onClick:l=>xi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("修改")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"danger",onClick:l=>Ci(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"]),Fa])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:Tn.value,"onUpdate:modelValue":l[138]||(l[138]=e=>Tn.value=e),title:"✨添加share_token进OneAPI","align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p.Wm)(Au,{onSubmit:Bu},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Qa,(0,p.Wm)(fu,{modelValue:iu.value,"onUpdate:modelValue":l[131]||(l[131]=e=>iu.value=e),name:"oneApi中渠道名称",label:"oneApi中渠道名称","input-align":"right",placeholder:"oneApi中渠道名称",rules:[{required:!0,message:"请填写oneApi中渠道名称"}]},null,8,["modelValue"]),eo,(0,p._)("div",lo,[(0,p.Wm)(di,{label:"Token名","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:ru.value,"onUpdate:modelValue":l[132]||(l[132]=e=>ru.value=e),filterable:"",clearable:"",placeholder:"选择你想要的添加的Token名称",onChange:Cu,class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Ou.value,(e=>((0,p.wg)(),(0,p.j4)(Jt,{key:e.name,label:e.name,value:e.name,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),ao,(0,p._)("div",oo,[(0,p.Wm)(di,{label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:su.value,"onUpdate:modelValue":l[133]||(l[133]=e=>su.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Pn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),no])),_:1}),to,(0,p.Wm)(di,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(si,{modelValue:mu.value,"onUpdate:modelValue":l[134]||(l[134]=e=>mu.value=e),type:"textarea",rows:10,placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),uo,(0,p.Wm)(fu,{modelValue:pu.value,"onUpdate:modelValue":l[135]||(l[135]=e=>pu.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),io,(0,p.Wm)(fu,{"input-align":"right",name:"addOneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:cu.value,"onUpdate:modelValue":l[136]||(l[136]=e=>cu.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),ro,(0,p.Wm)(fu,{modelValue:du.value,"onUpdate:modelValue":l[137]||(l[137]=e=>du.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),so])),_:1}),(0,p._)("div",mo,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:Un.value,"onUpdate:modelValue":l[154]||(l[154]=e=>Un.value=e),title:"🔎查看share_token在OneAPI信息","align-center":"",width:"50vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p.Wm)(Au,{onSubmit:e.shareToken},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[co,(0,p.Wm)(fu,{modelValue:Fu.value,"onUpdate:modelValue":l[139]||(l[139]=e=>Fu.value=e),name:"oneApi中渠道名称",label:"oneApi中渠道名称","input-align":"right",placeholder:"oneApi中渠道名称","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[140]||(l[140]=e=>Li(Fu.value)),rules:[{required:!0,message:"请填写oneApi中渠道名称"}]},null,8,["modelValue"]),po,(0,p.Wm)(fu,{modelValue:ei.value,"onUpdate:modelValue":l[141]||(l[141]=e=>ei.value=e),name:"share_token的值",label:"share_token的值","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[142]||(l[142]=e=>Li(ei.value)),placeholder:"share_token的值"},null,8,["modelValue"]),vo,(0,p.Wm)(fu,{modelValue:Qu.value,"onUpdate:modelValue":l[143]||(l[143]=e=>Qu.value=e),name:"share_token的来源",label:"share_token的来源","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[144]||(l[144]=e=>Li(Qu.value)),placeholder:"share_token的值"},null,8,["modelValue"]),ho,(0,p.Wm)(fu,{modelValue:ni.value,"onUpdate:modelValue":l[145]||(l[145]=e=>ni.value=e),name:"加入的模型",label:"加入的模型","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[146]||(l[146]=e=>Li(ni.value)),placeholder:"加入的模型"},null,8,["modelValue"]),(0,p._)("div",_o,[wo,(0,p.Wm)(di,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(si,{modelValue:oi.value,"onUpdate:modelValue":l[147]||(l[147]=e=>oi.value=e),type:"textarea",autosize:"",placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1}),ko]),(0,p.Wm)(fu,{modelValue:At.value,"onUpdate:modelValue":l[148]||(l[148]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[149]||(l[149]=e=>Li(At.value)),placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),fo,(0,p.Wm)(fu,{modelValue:ti.value,"onUpdate:modelValue":l[150]||(l[150]=e=>ti.value=e),name:"加入的组别",label:"加入的组别","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[151]||(l[151]=e=>Li(ti.value)),placeholder:"加入的组别"},null,8,["modelValue"]),go,(0,p.Wm)(fu,{modelValue:li.value,"onUpdate:modelValue":l[152]||(l[152]=e=>li.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[153]||(l[153]=e=>Li(li.value)),placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),bo])),_:1})])),_:1},8,["onSubmit"])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:xn.value,"onUpdate:modelValue":l[161]||(l[161]=e=>xn.value=e),title:"📌修改share_token在OneAPI的信息","align-center":"",width:"50vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Vo,[(0,p.Wm)(Au,{onSubmit:Ai},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[yo,(0,p._)("div",Wo,[(0,p.Wm)(di,{label:"Token名","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:Qu.value,"onUpdate:modelValue":l[155]||(l[155]=e=>Qu.value=e),filterable:"",clearable:"",placeholder:"选择你想要的添加的Token名称",onChange:Cu,class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Ou.value,(e=>((0,p.wg)(),(0,p.j4)(Jt,{key:e.name,label:e.name,value:e.name,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),To,(0,p._)("div",Uo,[(0,p.Wm)(di,{label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:ai.value,"onUpdate:modelValue":l[156]||(l[156]=e=>ai.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Pn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),xo,(0,p.Wm)(di,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(si,{modelValue:oi.value,"onUpdate:modelValue":l[157]||(l[157]=e=>oi.value=e),type:"textarea",rows:10,placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),Ao,Ho,(0,p.Wm)(fu,{modelValue:At.value,"onUpdate:modelValue":l[158]||(l[158]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),zo,(0,p.Wm)(fu,{"input-align":"right",name:"oneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:ui.value,"onUpdate:modelValue":l[159]||(l[159]=e=>ui.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),Po,(0,p.Wm)(fu,{modelValue:li.value,"onUpdate:modelValue":l[160]||(l[160]=e=>li.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),So])),_:1}),(0,p._)("div",No,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:An.value,"onUpdate:modelValue":l[175]||(l[175]=e=>An.value=e),title:"🔎查看poolToken信息","align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Co,[(0,p.Wm)(Au,null,{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Oo,(0,p.Wm)(fu,{modelValue:kt.value,"onUpdate:modelValue":l[162]||(l[162]=e=>kt.value=e),name:"pool_token名称",label:"pool_token名称",placeholder:"pool_token名称",readonly:!0,"input-align":"right","left-icon":"description-o",onClickLeftIcon:l[163]||(l[163]=e=>Li(kt.value))},null,8,["modelValue"]),$o,(0,p.Wm)(fu,{modelValue:ft.value,"onUpdate:modelValue":l[164]||(l[164]=e=>ft.value=e),label:"使用token名集合",type:"textarea",placeholder:"使用token名集合","left-icon":"description-o",readonly:!0,"input-align":"right",onClickLeftIcon:l[165]||(l[165]=e=>Li($t.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"]),Bo,(0,p.Wm)(fu,{modelValue:Ht.value,"onUpdate:modelValue":l[166]||(l[166]=e=>Ht.value=e),readonly:!0,type:"textarea",maxlength:"100",autoSize:"",name:"pool_token的值",label:"pool_token的值","input-align":"right",placeholder:"pool_token的值(不改则不变)","left-icon":"description-o",onClickLeftIcon:l[167]||(l[167]=e=>Li(Ht.value))},null,8,["modelValue"]),Io,(0,p.Wm)(fu,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Vt.value,"onUpdate:modelValue":l[168]||(l[168]=e=>Vt.value=e)},null,8,["modelValue"])])),_:1}),Do,1==Vt.value?((0,p.wg)(),(0,p.iD)("div",qo,[jo,(0,p._)("div",Lo,[(0,p.Wm)(di,{disabled:"",label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{disabled:"",modelValue:Wt.value,"onUpdate:modelValue":l[169]||(l[169]=e=>Wt.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Sn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),Mo])),_:1}),Zo,(0,p.Wm)(di,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(si,{modelValue:yt.value,"onUpdate:modelValue":l[170]||(l[170]=e=>yt.value=e),type:"textarea",disabled:"",autosize:"",placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),Eo,(0,p.Wm)(fu,{readonly:!0,modelValue:At.value,"onUpdate:modelValue":l[171]||(l[171]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),Jo,(0,p.Wm)(fu,{readonly:!0,"input-align":"right",name:"checkboxGroup",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:en.value,"onUpdate:modelValue":l[172]||(l[172]=e=>en.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),Ko,(0,p.Wm)(fu,{readonly:!0,modelValue:xt.value,"onUpdate:modelValue":l[173]||(l[173]=e=>xt.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right",placeholder:"自定义PandoraNext地址","left-icon":"description-o",onClickLeftIcon:l[174]||(l[174]=e=>Li(xt.value)),rules:[{required:!0,message:"请填写自定义PandoraNext地址"}]},null,8,["modelValue"]),Ro])):(0,p.kq)("",!0)])),_:1})])),_:1})])])),_:1},8,["modelValue"])],64)}}});const en=Qo;var ln=en}}]);
+//# sourceMappingURL=813.784e18ef.js.map
\ No newline at end of file
diff --git a/rearServer/src/main/resources/static/js/813.784e18ef.js.map b/rearServer/src/main/resources/static/js/813.784e18ef.js.map
new file mode 100644
index 0000000..0bc18c9
--- /dev/null
+++ b/rearServer/src/main/resources/static/js/813.784e18ef.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"js/813.784e18ef.js","mappings":"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","sources":["webpack://PandoraNext-TokensTool/./src/views/homeIndex.vue","webpack://PandoraNext-TokensTool/./src/views/homeIndex.vue?32ba"],"sourcesContent":["import \"core-js/modules/es.array.push.js\";\nimport { defineComponent as _defineComponent } from 'vue';\nimport { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, resolveDirective as _resolveDirective, openBlock as _openBlock, createBlock as _createBlock, withDirectives as _withDirectives, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode } from \"vue\";\nimport _imports_0 from '../asserts/openAi.jpg';\nconst _hoisted_1 = {\n class: \"content\"\n};\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"meta\", {\n name: \"viewport\",\n content: \"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no\"\n}, null, -1);\nconst _hoisted_3 = {\n class: \"home-container\"\n};\nconst _hoisted_4 = /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"flex-grow\"\n}, null, -1);\nconst _hoisted_5 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://ai.fakeopen.com/auth\"\n}, \"PandoraNext地址\", -1);\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://chat.openai.com/api/auth/session\"\n}, \"OpenAI官网\", -1);\nconst _hoisted_7 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://github.com/Yanyutin753/PandoraNext-TokensTool\"\n}, \"TokensTool地址\", -1);\nconst _hoisted_8 = {\n class: \"under\"\n};\nconst _hoisted_9 = {\n style: {\n \"display\": \"block\",\n \"transform\": \"translate(5vw, 2.5vh)\"\n }\n};\nconst _hoisted_10 = /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"flex items-center\"\n}, [/*#__PURE__*/_createElementVNode(\"span\", {\n class: \"font-h4\"\n}, \"PandoraNext-TokensTool \"), /*#__PURE__*/_createElementVNode(\"span\", {\n class: \"font-h4-tag\"\n}, \"v0.6.8 \")], -1);\nconst _hoisted_11 = {\n class: \"search\"\n};\nconst _hoisted_12 = {\n style: {\n \"display\": \"flex\",\n \"margin\": \"10px 35px -8px 35px\"\n }\n};\nconst _hoisted_13 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translateX(4vw)\",\n \"width\": \"70vw\",\n \"height\": \"61vh\"\n }\n};\nconst _hoisted_14 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_15 = {\n style: {\n \"margin-left\": \"18px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_16 = {\n style: {\n \"margin\": \"15px 0px 15px 0px\"\n }\n};\nconst _hoisted_17 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"批量操作\", -1);\nconst _hoisted_18 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"全部检查并生成\", -1);\nconst _hoisted_19 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_20 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_21 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_22 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_23 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_24 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_25 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_26 = {\n key: 0\n};\nconst _hoisted_27 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_28 = {\n key: 1\n};\nconst _hoisted_29 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_30 = {\n key: 0\n};\nconst _hoisted_31 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_32 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_33 = {\n key: 2\n};\nconst _hoisted_34 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_35 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_36 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_37 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_38 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_39 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_40 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_41 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_42 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_43 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_44 = {\n key: 0\n};\nconst _hoisted_45 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_46 = {\n key: 1\n};\nconst _hoisted_47 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_48 = {\n key: 0\n};\nconst _hoisted_49 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_50 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_51 = {\n key: 2\n};\nconst _hoisted_52 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_53 = {\n key: 3\n};\nconst _hoisted_54 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_55 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_56 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_57 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_58 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_59 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_60 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_61 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_62 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_63 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_64 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_65 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_66 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_67 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_68 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_69 = {\n key: 0\n};\nconst _hoisted_70 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_71 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_72 = {\n key: 0\n};\nconst _hoisted_73 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_74 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_75 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_76 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_77 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_78 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_79 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_80 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_81 = {\n key: 0\n};\nconst _hoisted_82 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_83 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_84 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_85 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_86 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_87 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_88 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_89 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_90 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_91 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_92 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_93 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_94 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_95 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_96 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_97 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_98 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_99 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_100 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_101 = {\n key: 0\n};\nconst _hoisted_102 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_103 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_104 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_105 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_106 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_107 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_108 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_109 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_110 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_111 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_112 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_113 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_114 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_115 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_116 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_117 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_118 = {\n style: {\n \"transform\": \"translate(0vw, -2vh)\"\n }\n};\nconst _hoisted_119 = {\n style: {\n \"margin-left\": \"15px\",\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_120 = {\n key: 0\n};\nconst _hoisted_121 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"oneApi\", -1);\nconst _hoisted_122 = {\n key: 1\n};\nconst _hoisted_123 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"Json\", -1);\nconst _hoisted_124 = {\n style: {\n \"margin-left\": \"25px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_125 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_126 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_127 = /*#__PURE__*/_createElementVNode(\"span\", {\n style: {\n \"margin-left\": \"0px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n}, \"点击此进行查看\", -1);\nconst _hoisted_128 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"批量操作\", -1);\nconst _hoisted_129 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_130 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_131 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_132 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_133 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_134 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_135 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_136 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_137 = {\n key: 0\n};\nconst _hoisted_138 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_139 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_140 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_141 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_142 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_143 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_144 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_145 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_146 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_147 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_148 = {\n key: 0\n};\nconst _hoisted_149 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_150 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_151 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_152 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_153 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_154 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_155 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_156 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_157 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_158 = {\n style: {\n \"display\": \"flex\"\n }\n};\nconst _hoisted_159 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_160 = {\n style: {\n \"margin-left\": \"0px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_161 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_162 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_163 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_164 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_165 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_166 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_167 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_168 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_169 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_170 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_171 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_172 = {\n key: 0\n};\nconst _hoisted_173 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_174 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_175 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_176 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_177 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_178 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_179 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_180 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_181 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_182 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"添加share_token到OneAPI\", -1);\nconst _hoisted_183 = {\n style: {\n \"margin-left\": \"15px\",\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_184 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_185 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_186 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_187 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_188 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_189 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_190 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_191 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_192 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_193 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_194 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_195 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_196 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_197 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_198 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_199 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_200 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_201 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_202 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_203 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_204 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_205 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_206 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_207 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_208 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_209 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_210 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_211 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_212 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_213 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_214 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_215 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_216 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_217 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_218 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_219 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_220 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_221 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_222 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_223 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_224 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_225 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_226 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_227 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_228 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_229 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_230 = {\n key: 0\n};\nconst _hoisted_231 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_232 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_233 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_234 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_235 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_236 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_237 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_238 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nimport { ref, onMounted } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport axios from \"axios\";\nimport { ElMessage, ElMessageBox } from \"element-plus\";\nimport { differenceInDays, parseISO } from \"date-fns\";\nimport { ElLoading } from \"element-plus\";\nimport { ElTable } from \"element-plus\";\nimport * as echarts from \"echarts\";\nimport { computed } from \"vue\";\nconst temModel_mapping = `此项可选,用于修改请求体中的模型名称,\n 为一个 JSON 字符串,键为请求中模型名称,\n 值为要替换的模型名称,例如:\n {\n \"gpt-3.5-turbo-301\":\"gpt-3.5-turbo\",\n \"gpt-4-8314\":\"gpt-4\", \n \"gpt-4-32k-8314\":\"gpt-4-32k\",\n }`;\nconst pandoraNext = 0;\n//tokensTool 为 0\nconst tokensTool = 1;\n//验证信息\nconst validation = 2;\n/**\r\n * 修改系统设置信息\r\n */\nexport default /*#__PURE__*/_defineComponent({\n __name: 'homeIndex',\n setup(__props) {\n // 导入类\n const path = window.location.pathname; // 假设是 \"/api/getData\"\n const parts = path.split(\"/\"); // 分割路径,得到 [\"\", \"api\", \"getData\"]\n let prefix = \"\"; // 默认值为 \"\"\n if (parts.length >= 3) {\n prefix = \"/\" + parts[1]; // 如果parts长度大于或等于3,获取第一个部分\n }\n\n const temGroupChecked = ref([\"default\", \"svip\", \"vip\"]);\n const groupChecked = ref([\"default\", \"svip\", \"vip\"]);\n const multipleTableRef = ref();\n const multipleTableRefPool = ref();\n const multipleSelection = ref([]);\n const multipleSelectionPool = ref([]);\n const handleSelectionChange = val => {\n multipleSelection.value = val;\n };\n const poolSelectionChange = val => {\n multipleSelectionPool.value = val;\n };\n const size = ref(\"ALL\");\n //pandoraNext 为 0\n const router = useRouter();\n /**\r\n * \r\n * \r\n * \r\n *\r\n */\n const show = ref(false);\n const show_1 = ref(false);\n const show_2 = ref(false);\n const show_3 = ref(false);\n const show_4 = ref(false);\n const show_5 = ref(false);\n const show_6 = ref(false);\n const show_7 = ref(false);\n const show_8 = ref(false);\n const show_9 = ref(false);\n const show_10 = ref(false);\n const show_11 = ref(false);\n const show_12 = ref(false);\n const show_13 = ref(false);\n const show_14 = ref(false);\n const show_15 = ref(false);\n const show_16 = ref(false);\n const show_17 = ref(false);\n /**\r\n * 定义User类接口\r\n */\n const buttonValue = ref(\"\");\n const options = [{\n buttonValue: \"选中删除Token\",\n label: \"选中删除Token\"\n }, {\n buttonValue: \"选中刷新Token\",\n label: \"选中刷新Token\"\n }, {\n buttonValue: \"选中合成pool_token\",\n label: \"选中合成pool_token\"\n }, {\n buttonValue: \"选中修改pool_token\",\n label: \"选中修改pool_token\"\n }];\n const buttonModel = ref(\"\");\n const optionsModel = [{\n buttonModel: \"gpt-3.5-turbo\",\n label: \"gpt-3.5-turbo\"\n }, {\n buttonModel: \"gpt-4-s\",\n label: \"gpt-4-s\"\n }, {\n buttonModel: \"gpt-4-mobile\",\n label: \"gpt-4-mobile\"\n }, {\n buttonModel: \"gpt-4-vision\",\n label: \"gpt-4-vision\"\n }, {\n buttonModel: \"gpt-4-classic\",\n label: \"gpt-4-classic\"\n }, {\n buttonModel: \"gpt-4-vision-preview\",\n label: \"gpt-4-vision-preview\"\n }];\n const optionsPoolModel = [{\n buttonModel: \"gpt-3.5-turbo\",\n label: \"gpt-3.5-turbo\"\n }, {\n buttonModel: \"gpt-4\",\n label: \"gpt-4\"\n }];\n const buttonPoolValue = ref(\"\");\n const optionsPool = [{\n buttonPoolValue: \"选中检查pool_token\",\n label: \"选中检查pool_token\"\n }, {\n buttonPoolValue: \"选中删除pool_token\",\n label: \"选中删除pool_token\"\n }, {\n buttonPoolValue: \"选中刷新pool_token\",\n label: \"选中刷新pool_token\"\n }, {\n buttonPoolValue: \"选中更换pool_token\",\n label: \"选中更换pool_token\"\n }];\n /**\r\n * 定义Pool类接口\r\n */\n const proxy_api_prefix = ref(\"\");\n const isolated_conv_title = ref(\"*\");\n const bing = ref(\"\");\n const timeout = ref(\"\");\n const proxy_url = ref(\"\");\n const public_share = ref(false);\n //0.4.9.2\n const disable_signup = ref(false);\n const auto_conv_arkose = ref(false);\n const proxy_file_service = ref(false);\n const custom_doh_host = ref(\"\");\n const enabled = ref(false);\n const cert_file = ref(\"\");\n const key_file = ref(\"\");\n const site_password = ref(\"\");\n const setup_password = ref(\"\");\n const loginUsername = ref(\"\");\n const loginPassword = ref(\"\");\n const license_id = ref(\"\");\n //0.4.8.2\n const isGetToken = ref(false);\n const getTokenPassword = ref(\"\");\n const containerName = ref(\"PandoraNext\");\n const autoToken_url = ref(\"default\");\n const whitelist = ref(\"\");\n const provider = ref(\"\");\n const site_key = ref(\"\");\n const site_secret = ref(\"\");\n const site_login = ref(false);\n const setup_login = ref(false);\n const oai_username = ref(false);\n const oai_password = ref(false);\n //0.4.9.3\n const auto_updateSession = ref(false);\n const auto_updateTime = ref(5);\n const auto_updateNumber = ref(1);\n const pandoraNext_outUrl = ref(\"\");\n const oneAPi_outUrl = ref(\"\");\n const oneAPi_intoToken = ref(\"\");\n // 0.4.8\n const poolName = ref(\"\");\n const temPoolName = ref(\"\");\n const shareTokens = ref(\"\");\n const poolToken = ref(\"\");\n const poolTime = ref(\"\");\n const checkPool = ref(true);\n // 0.5.0\n //上传oneApi\n const poolNameValue = ref(\"\");\n const intoOneApi = ref(false);\n const poolModel_mapping = ref(\"\");\n const poolOneApi_models = ref([]);\n const addPoolOneApi_models = ref([]);\n const addPoolModel_mapping = ref(\"\");\n const oneApi_pandoraUrl = ref(pandoraNext_outUrl.value + proxy_api_prefix.value);\n const priority = ref(0);\n const temPool_token = ref(\"\");\n // 自定义校验函数,直接返回错误提示\n const customValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n const sitePasswordValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (regex.test(value) || value == \"\") {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n const poolNameValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^[\\u4e00-\\u9fa5a-zA-Z0-9]{3,10}$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字\";\n }\n };\n const addPasswordValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (addSetPoolToken.value == true || setPoolToken.value == true || regex.test(value)) {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n /**\r\n * 查看或者修改token信息参数\r\n */\n const temName = ref(\"\");\n const temToken = ref(\"\");\n const temAccessToken = ref(\"\");\n const temShareToken = ref(\"\");\n const temUsername = ref(\"\");\n const temUserPassword = ref(\"\");\n const temShared = ref(false);\n const temShow_user_info = ref(false);\n const temPlus = ref(false);\n const temPassword = ref(\"\");\n const setPoolToken = ref(false);\n const useRefreshToken = ref(false);\n const temCheckSession = ref(true);\n const tableData = ref([]);\n // 0.4.8\n const poolData = ref([]);\n const shareData = ref([]);\n // 0.5.9\n const loginData = ref([]);\n /**\r\n * 添加用户信息参数\r\n */\n const addName = ref(\"\");\n const addUsername = ref(\"\");\n const addUserPassword = ref(\"\");\n const addTokenValue = ref(\"\");\n const addShared = ref(false);\n const addShow_user_info = ref(false);\n const addPlus = ref(false);\n const addSetPoolToken = ref(false);\n const addUseRefreshToken = ref(false);\n const addPassword = ref(\"\");\n /**\r\n * 添加用户信息参数\r\n */\n const addOneApi_name = ref(\"\");\n const addToken_name = ref(\"\");\n const addToken_value = ref(\"\");\n const addOneApi_baseUrl = ref(\"\");\n const addOneApi_models = ref([]);\n const addModel_mapping = ref(\"\");\n const addOneApi_groups = ref([\"default\", \"svip\", \"vip\"]);\n const addPriority = ref(0);\n //Pandora的icon大小\n const iconSize = ref(window.innerHeight * 0.085);\n //搜索值\n const value = ref(\"\");\n const valuePool = ref(\"\");\n const valueShare = ref(\"\");\n /**\r\n * 用jwt令牌验证身份\r\n * 未通过者返回到/\r\n */\n const token = localStorage.getItem(\"jwtToken\"); // 从localStorage获取JWT令牌\n if (!token) {\n router.replace(`/`);\n }\n const headers = {\n Authorization: `Bearer ${token}`\n };\n /**\r\n * 用jwt令牌验证身份函数\r\n */\n const fetchLoginToken = async () => {\n axios.post(`${prefix}/api/loginToken?token=` + token).then(response => {\n if (response.data.code == 0) {\n console.error(response.data.data);\n router.replace(`/`);\n return;\n }\n }).catch(error => {\n console.error(\"请求loginToken接口失败\", error);\n router.replace(`/`);\n });\n };\n const onSearch = value => {\n if (value == \"Web\" || value == \"WEB\") {\n getWebToken(\"\");\n } else if (value == \"ALL\" || value == \"All\") {\n getToken(\"\");\n } else if (value.includes(\"API\")) {\n getAPIToken(\"\");\n } else {\n getToken(value);\n }\n };\n const onSearchShareToken = value => {\n getShare(value);\n };\n const onSearchPoolToken = value => {\n getPool(value);\n };\n /**\r\n * 获取数据操作,并把数据返回到tableData\r\n * 用于展示\r\n */\n const getToken = async value => {\n const response = await axios.get(`${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 将用户数据添加到tableData\n tableData.value = resUsers;\n }\n };\n const getAPIToken = async value => {\n const response = await axios.get(`${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 使用 filter 方法筛选出 setPoolToken 等于 true 的用户\n const filteredUsers = resUsers.filter(user => user.setPoolToken === true);\n // 将筛选后的用户数据添加到 tableData\n tableData.value = filteredUsers;\n }\n };\n const getWebToken = async value => {\n const response = await axios.get(`${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 使用 filter 方法筛选出 setPoolToken 等于 true 的用户\n const filteredUsers = resUsers.filter(user => user.setPoolToken === false);\n // 将筛选后的用户数据添加到 tableData\n tableData.value = filteredUsers;\n }\n };\n /**\r\n * 获取数据操作\r\n * 用于日志数据展示\r\n */\n const getLoginData = async () => {\n const response = await axios.get(`${prefix}/api/selectLogin`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resLogins = data_token.map(item => ({\n ipAddress: item.ipAddress,\n requestIp: item.requestIp,\n outRequestNumber: item.outRequestNumber,\n inRequestNumber: item.inRequestNumber,\n lastLoginTime: item.lastLoginTime\n }));\n // 将用户数据添加到tableData\n loginData.value = resLogins;\n }\n };\n const getPool = async value => {\n const responsePool = await axios.get(`${prefix}/api/selectPoolToken?name=${value}`, {\n headers\n });\n const pool_token = responsePool.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(pool_token)) {\n const resPools = pool_token.map(item => ({\n poolName: item.poolName,\n poolTime: item.poolTime,\n poolToken: item.poolToken,\n shareTokens: item.shareTokens,\n checkPool: item.checkPool,\n intoOneApi: item.intoOneApi,\n poolOneApi_models: item.poolOneApi_models,\n poolModel_mapping: item.poolModel_mapping,\n oneApi_pandoraUrl: item.oneApi_pandoraUrl,\n groupChecked: item.groupChecked,\n priority: item.priority\n }));\n // 将用户数据添加到poolData\n poolData.value = resPools;\n }\n };\n const getShare = async value => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const responseShare = await axios.get(`${prefix}/api/selectShareToken?name=${value}`, {\n headers\n });\n const share_token = responseShare.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(share_token)) {\n const resShares = share_token.map(item => ({\n oneApi_name: item.oneApi_name,\n token_name: item.token_name,\n token_value: item.token_value,\n oneApi_baseUrl: item.oneApi_baseUrl,\n oneApi_models: item.oneApi_models,\n model_mapping: item.model_mapping,\n oneApi_groups: item.oneApi_groups,\n shareTime: item.shareTime,\n priority: item.priority\n }));\n // 将用户数据添加到poolData\n shareData.value = resShares;\n }\n loadingInstance.close();\n };\n const getSetting = async value => {\n const response = await axios.get(`${prefix}/api/selectSetting`, {\n headers\n });\n const data = response.data.data;\n proxy_api_prefix.value = data.proxy_api_prefix;\n isolated_conv_title.value = data.isolated_conv_title;\n bing.value = data.bing;\n timeout.value = data.timeout;\n proxy_url.value = data.proxy_url;\n public_share.value = data.public_share;\n //0.4.9.2\n disable_signup.value = data.disable_signup;\n auto_conv_arkose.value = data.auto_conv_arkose;\n proxy_file_service.value = data.proxy_file_service;\n custom_doh_host.value = data.custom_doh_host;\n enabled.value = data.tls.enabled;\n cert_file.value = data.tls.cert_file;\n key_file.value = data.tls.key_file;\n site_password.value = data.site_password;\n setup_password.value = data.setup_password;\n if (data.whitelist == null) {\n whitelist.value = \"null\";\n } else whitelist.value = data.whitelist;\n loginUsername.value = data.loginUsername;\n loginPassword.value = data.loginPassword;\n license_id.value = data.license_id;\n //0.4.8.2\n isGetToken.value = data.isGetToken;\n getTokenPassword.value = data.getTokenPassword;\n containerName.value = data.containerName;\n autoToken_url.value = data.autoToken_url;\n provider.value = data.validation.provider;\n site_key.value = data.validation.site_key;\n site_secret.value = data.validation.site_secret;\n site_login.value = data.validation.site_login;\n setup_login.value = data.validation.setup_login;\n oai_username.value = data.validation.oai_username;\n oai_password.value = data.validation.oai_password;\n //0.4.9.3\n auto_updateSession.value = data.auto_updateSession;\n auto_updateTime.value = data.auto_updateTime;\n auto_updateNumber.value = data.auto_updateNumber;\n pandoraNext_outUrl.value = data.pandoraNext_outUrl;\n if (!pandoraNext_outUrl.value.endsWith(\"/\")) {\n oneApi_pandoraUrl.value = pandoraNext_outUrl.value + \"/\" + proxy_api_prefix.value;\n } else {\n oneApi_pandoraUrl.value = pandoraNext_outUrl.value + proxy_api_prefix.value;\n }\n //0.5.0\n oneAPi_outUrl.value = data.oneAPi_outUrl;\n oneAPi_intoToken.value = data.oneAPi_intoToken;\n fetchDataAndFillForm();\n };\n const fetchDataAndFillForm = async () => {\n if (loginPassword.value == \"123456\" && loginUsername.value == \"root\") {\n ElMessageBox.alert(\"请先修改默认的初始账号和密码,并填写相应的信息,具体可参考网站文档!\", \"温馨提醒\", {\n confirmButtonText: \"确定\",\n callback: action => {\n ElMessage({\n type: \"info\",\n message: `如果不知道怎么填的话,可以看tokensTool的文档站!`\n });\n }\n });\n show_4.value = true;\n loginPassword.value = \"\";\n loginUsername.value = \"\";\n }\n };\n const getSelectedData = () => {\n const selectedData = multipleSelection.value;\n if (selectedData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n } else {\n show_9.value = true;\n }\n };\n const addSelectPoolToken = async () => {\n try {\n const selectedData = multipleSelection.value;\n const names = selectedData.map(userData => userData.name);\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n if (addPoolModel_mapping.value == \"\") {\n addPoolModel_mapping.value = \"{}\";\n }\n JSON.parse(addPoolModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const addPoolToken = {\n poolName: poolNameValue.value,\n intoOneApi: intoOneApi.value,\n poolOneApi_models: addPoolOneApi_models.value.toString(),\n poolModel_mapping: addPoolModel_mapping.value,\n oneApi_pandoraUrl: oneApi_pandoraUrl.value,\n shareTokens: names,\n groupChecked: groupChecked.value.toString(),\n priority: priority.value\n };\n const response = await fetch(`${prefix}/api/addPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addPoolToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n poolNameValue.value = \"\";\n getPool(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n poolNameValue.value = \"\";\n intoOneApi.value = false;\n poolModel_mapping.value = \"\";\n poolOneApi_models.value = [];\n groupChecked.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n loadingInstance.close();\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消生成pool_token\"\n });\n }\n show_9.value = false;\n };\n const handlePoolNameChange = poolNameValue => {\n let selectedItem = poolData.value.find(item => item.poolName === poolNameValue);\n if (selectedItem != null) {\n temPool_token.value = selectedItem.poolToken;\n intoOneApi.value = selectedItem.intoOneApi;\n poolOneApi_models.value = selectedItem.poolOneApi_models.split(\",\");\n poolModel_mapping.value = selectedItem.poolModel_mapping;\n oneApi_pandoraUrl.value = selectedItem.oneApi_pandoraUrl;\n temGroupChecked.value = selectedItem.groupChecked.split(\",\");\n priority.value = selectedItem.priority;\n }\n };\n const handleShareNameChange = addToken_name => {\n let selectedItem = tableData.value.find(item => item.name === addToken_name && item.setPoolToken === true);\n };\n const filteredTableData = computed(() => {\n return tableData.value.filter(item => item.setPoolToken === true);\n });\n const requirePoolToken = async () => {\n try {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n if (poolModel_mapping.value == \"\") {\n poolModel_mapping.value = \"{}\";\n }\n JSON.parse(poolModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const selectedData = multipleSelection.value;\n const names = selectedData.map(userData => userData.name);\n const addPoolToken = {\n poolName: poolName.value,\n poolToken: temPool_token.value,\n intoOneApi: intoOneApi.value,\n poolOneApi_models: poolOneApi_models.value.toString(),\n poolModel_mapping: poolModel_mapping.value,\n oneApi_pandoraUrl: oneApi_pandoraUrl.value,\n shareTokens: names,\n groupChecked: temGroupChecked.value.toString(),\n priority: priority.value\n };\n console.log(addPoolToken);\n const response = await fetch(`${prefix}/api/requirePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addPoolToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n getPool(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n poolName.value = \"\";\n temPool_token.value = \"\";\n intoOneApi.value = false;\n poolOneApi_models.value = [];\n poolModel_mapping.value = \"\";\n groupChecked.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n loadingInstance.close();\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消修改pool_token\"\n });\n }\n show_11.value = false;\n };\n const addShareToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n try {\n if (addModel_mapping.value == \"\") {\n addModel_mapping.value = \"{}\";\n }\n JSON.parse(addModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const addShareToken = {\n oneApi_name: addOneApi_name.value,\n token_name: addToken_name.value,\n oneApi_baseUrl: addOneApi_baseUrl.value,\n oneApi_models: addOneApi_models.value.toString(),\n model_mapping: addModel_mapping.value,\n oneApi_groups: addOneApi_groups.value.toString(),\n priority: priority.value\n };\n const response = await fetch(`${prefix}/api/addShareToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addShareToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n getShare(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n addOneApi_name.value = \"\";\n addToken_name.value = \"\";\n addOneApi_baseUrl.value = \"\";\n addOneApi_models.value = [];\n addModel_mapping.value = \"\";\n addOneApi_groups.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消修改pool_token\"\n });\n }\n show_14.value = false;\n loadingInstance.close();\n };\n const pandoraUsage = ref(\"\");\n // 在组件加载完成后自动触发数据加载和填充\n onMounted(async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n // 页面重定向\n fetchLoginToken();\n if (window.innerWidth <= 900) {\n router.replace(\"/iphone\");\n } else {\n router.replace(\"/home\");\n }\n try {\n // 并行执行不依赖的函数\n await Promise.all([onSearch(value.value), getPool(value.value), getSetting(value.value)]);\n // 等待获取 Pandora 数据\n const response = await axios.get(`${prefix}/api/getPandoraNext`, {\n headers\n });\n const data = response.data.data;\n if (data != null) {\n pandoraUsage.value = `${data.current}/${data.total}`;\n }\n } catch (error) {\n console.error(\"An error occurred:\", error);\n // 这里可以添加错误处理逻辑\n } finally {\n loadingInstance.close();\n }\n });\n //用来警告session过期\n const tableRowClassName = ({\n row\n }) => {\n if (row.checkSession == false) {\n return \"warning-row\";\n }\n return \"\";\n };\n const poolRowClassName = ({\n row\n }) => {\n if (row.checkPool == false) {\n return \"warning-row\";\n }\n return \"\";\n };\n /**\r\n * 跳转到PandoraNext\r\n */\n const redirectToExternalLink = () => {\n window.open(pandoraNext_outUrl.value);\n };\n /**\r\n * 跳转到PandoraNext分享页\r\n */\n const redirectPandoraNextShare = () => {\n var url = pandoraNext_outUrl.value;\n // 检查最后一个字符是否是 /\n if (url.charAt(url.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n url += \"/\";\n }\n window.open(url + \"shared.html\");\n };\n /**\r\n * 跳转到PandoraNext\r\n */\n const requirePandoraNextLink = () => {\n var url = pandoraNext_outUrl.value;\n // 检查最后一个字符是否是 /\n if (url.charAt(url.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n url += \"/\";\n }\n window.open(url + \"setup\");\n };\n /**\r\n * 跳转到tokensTool使用说明\r\n */\n const requireTokensToolLink = () => {\n window.open(\"https://apifox.com/apidoc/shared-40345b46-9c9c-45cc-b494-6a6a387a978f\");\n };\n /**\r\n * 用于用户信息设置\r\n */\n const activeIndex = ref(\"-1\");\n let temRequireToken = \"\";\n const handleSelect = (key, keyPath) => {\n console.log(\"选择准备!\");\n };\n /**\r\n * 添加token开启函数\r\n * 类user\r\n */\n const addToken = () => {\n show_1.value = true;\n };\n /**\r\n * 添加token函数\r\n * 类user\r\n */\n const onAddToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const now = new Date();\n const formattedTime = `${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, \"0\")}-${now.getDate().toString().padStart(2, \"0\")} ${now.getHours().toString().padStart(2, \"0\")}:${now.getMinutes().toString().padStart(2, \"0\")}:${now.getSeconds().toString().padStart(2, \"0\")}`;\n if (addPassword.value != \"\") {\n addShared.value = false;\n addPlus.value = false;\n addShow_user_info.value = false;\n }\n if (addSetPoolToken.value == false) {\n addTokenValue.value = addUsername.value + \",\" + addUserPassword.value;\n addUseRefreshToken.value = false;\n addShared.value = false;\n addPlus.value = false;\n addShow_user_info.value = false;\n }\n let api = {\n name: addName.value,\n token: addTokenValue.value,\n username: addUsername.value,\n userPassword: addUserPassword.value,\n shared: addShared.value,\n auto_shared: addShared.value,\n show_user_info: addShow_user_info.value,\n plus: addPlus.value,\n setPoolToken: addSetPoolToken.value,\n useRefreshToken: addUseRefreshToken.value,\n password: addPassword.value,\n updateTime: formattedTime\n };\n fetch(`${prefix}/api/addToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(api)\n }).then(response => response.json()) // 将 .json() 放在正确的位置\n .then(data => {\n if (data.code == 1) {\n ElMessage.success(\"添加成功!\");\n addName.value = \"\";\n addTokenValue.value = \"\";\n addUsername.value = \"\";\n addUserPassword.value = \"\";\n addShared.value = false;\n addShow_user_info.value = false;\n addPlus.value = false;\n addSetPoolToken.value = false;\n addUseRefreshToken.value = false;\n addPassword.value = \"\";\n if (api.token == \"\") {\n api.token = data.data;\n ElMessage.success(\"已为您自动装填token!\");\n }\n } else {\n ElMessage.error(data.msg);\n }\n addPassword.value = \"\";\n getToken(\"\");\n loadingInstance.close();\n }).catch(error => {\n ElMessage.error(\"获取账号出现问题,请检查刷新网址是否正确!\");\n loadingInstance.close();\n });\n show_1.value = false;\n };\n /**\r\n * 展示token函数\r\n * 类user\r\n */\n const chart_show = ref(null);\n const showData = async row => {\n temName.value = row.name;\n temUsername.value = row.username;\n temUserPassword.value = row.userPassword;\n temToken.value = row.token;\n temAccessToken.value = row.access_token;\n temShareToken.value = row.share_token;\n temShared.value = row.shared;\n temShow_user_info.value = row.show_user_info;\n temPlus.value = row.plus;\n temPassword.value = row.password;\n setPoolToken.value = row.setPoolToken;\n useRefreshToken.value = row.useRefreshToken;\n temCheckSession.value = row.checkSession;\n if (setPoolToken.value != true) {\n show_2.value = true;\n return;\n }\n const usageHeader = {\n Authorization: `Bearer ${row.access_token}`\n };\n show_2.value = true;\n if (setPoolToken.value) {\n const response = await axios.get(`${oneApi_pandoraUrl.value}/api/token/info/${row.share_token}`, {\n headers: usageHeader\n });\n let usageData = [];\n let modelData = [];\n for (let key in response.data.usage) {\n if (!key.startsWith(\"range\")) {\n modelData.push(key);\n usageData.push(response.data.usage[key]);\n }\n }\n if (modelData.length == 0 && usageData.length == 0) {\n modelData = [\"gpt-4\", \"gpt-3.5-turbo\", \"gpt-3.5-turbo-0613\"];\n usageData = [0, 0, 0];\n }\n const myChart_show = echarts.init(chart_show.value);\n const option = {\n title: {\n text: `今日${response.data.usage[\"range\"]} ${temName.value}各模型用量`,\n textStyle: {\n // 调整字体大小\n fontSize: 14,\n color: \"#606266\" // 这里是深灰色,你可以根据需要更改颜色\n },\n\n // 设置标题位置\n left: \"center\",\n top: \"bottom\" // 放在底部\n },\n\n tooltip: {},\n legend: {\n data: modelData\n },\n xAxis: {\n data: modelData\n },\n yAxis: {},\n series: [{\n name: \"对话数量\",\n type: \"bar\",\n data: usageData,\n barWidth: \"25%\",\n itemStyle: {\n color: function (params) {\n const colorList = [\"#3498db\", \"#2ecc71\", \"#f1c40f\", \"#9b59b6\", \"#1abc9c\", \"#e67e22\", \"#ecf0f1\", \"#95a5a6\", \"#34495e\", \"#16a085\"];\n return colorList[params.dataIndex % colorList.length];\n }\n }\n }]\n };\n myChart_show.setOption(option);\n }\n };\n const oneApi_name = ref(\"\");\n const token_name = ref(\"\");\n const token_value = ref(\"\");\n const oneApi_baseUrl = ref(\"\");\n const oneApi_models = ref([]);\n const model_mapping = ref(\"\");\n const temOneApi_models = ref(\"\");\n const temOneApi_groups = ref(\"\");\n const oneApi_groups = ref([\"default\", \"svip\", \"vip\"]);\n const shareTime = ref(\"\");\n const showShareToken = row => {\n oneApi_name.value = row.oneApi_name;\n token_name.value = row.token_name;\n token_value.value = row.token_value;\n oneApi_baseUrl.value = row.oneApi_baseUrl;\n temOneApi_models.value = row.oneApi_models;\n model_mapping.value = row.model_mapping;\n temOneApi_groups.value = row.oneApi_groups;\n priority.value = row.priority;\n shareTime.value = row.shareTime;\n show_15.value = true;\n };\n let previousSetpoolToken = false;\n let previousUseRefreshToken = false;\n let previousToken = \"\";\n //编辑准备\n const handleEdit = (index, row) => {\n temName.value = row.name;\n temUsername.value = row.username;\n temUserPassword.value = row.userPassword;\n //用来判断token是否更改\n temToken.value = row.token;\n temRequireToken = row.token;\n temShared.value = row.shared;\n temShow_user_info.value = row.show_user_info;\n temPlus.value = row.plus;\n temPassword.value = row.password;\n setPoolToken.value = row.setPoolToken;\n useRefreshToken.value = row.useRefreshToken;\n previousSetpoolToken = setPoolToken.value;\n previousUseRefreshToken = useRefreshToken.value;\n previousToken = temToken.value;\n temCheckSession.value = row.checkSession;\n temAccessToken.value = row.access_token;\n temShareToken.value = row.share_token;\n show.value = true;\n };\n /**\r\n * 修改系统设置函数\r\n */\n const onRequireSetting = async value => {\n if (value == 0) {\n show_3.value = true;\n } else if (value == 1) {\n show_4.value = true;\n } else if (value == 2) {\n show_5.value = true;\n }\n };\n const RequireSetting = value => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n if (whitelist.value == null || whitelist.value == \"null\") {\n whitelist.value = \"\";\n }\n if (enabled.value == false) {\n cert_file.value = \"\";\n key_file.value = \"\";\n }\n const tls = {\n enabled: enabled.value,\n cert_file: cert_file.value,\n key_file: key_file.value\n };\n const validation = {\n provider: provider.value,\n site_key: site_key.value,\n site_secret: site_secret.value,\n site_login: site_login.value,\n setup_login: setup_login.value,\n oai_username: oai_username.value,\n oai_password: oai_password.value\n };\n const setting = {\n proxy_api_prefix: proxy_api_prefix.value,\n isolated_conv_title: isolated_conv_title.value,\n bing: bing.value,\n timeout: timeout.value,\n proxy_url: proxy_url.value,\n public_share: public_share.value,\n site_password: site_password.value,\n setup_password: setup_password.value,\n loginUsername: loginUsername.value,\n loginPassword: loginPassword.value,\n license_id: license_id.value,\n //0.4.9.2\n disable_signup: disable_signup.value,\n auto_conv_arkose: auto_conv_arkose.value,\n proxy_file_service: proxy_file_service.value,\n custom_doh_host: custom_doh_host.value,\n //0.4.8.2\n isGetToken: isGetToken.value,\n getTokenPassword: getTokenPassword.value,\n containerName: containerName.value,\n autoToken_url: autoToken_url.value,\n whitelist: whitelist.value,\n validation: validation,\n tls: tls\n };\n fetch(`${prefix}/api/requireSetting`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(setting)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n } else {\n ElMessage.error(data.msg);\n }\n fetchLoginToken();\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求requireSetting接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n if (value == 0) {\n show_3.value = false;\n } else if (value == 1) {\n show_4.value = false;\n } else if (value == 2) {\n show_5.value = false;\n }\n };\n const RequireAutoUpdate = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n // 检查最后一个字符是否是 /\n if (pandoraNext_outUrl.value.charAt(pandoraNext_outUrl.value.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n pandoraNext_outUrl.value += \"/\";\n }\n const setting = {\n auto_updateSession: auto_updateSession.value,\n auto_updateTime: auto_updateTime.value,\n auto_updateNumber: auto_updateNumber.value,\n pandoraNext_outUrl: pandoraNext_outUrl.value,\n oneAPi_outUrl: oneAPi_outUrl.value,\n oneAPi_intoToken: oneAPi_intoToken.value\n };\n fetch(`${prefix}/api/controllerTask`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(setting)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n } else {\n ElMessage.error(data.msg);\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求controllerTask接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n show_8.value = false;\n };\n /**\r\n * 修改token函数\r\n * 类user\r\n */\n const RequireToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let formattedTime = \"\";\n if (temRequireToken != temToken.value) {\n const now = new Date();\n formattedTime = `${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, \"0\")}-${now.getDate().toString().padStart(2, \"0\")} ${now.getHours().toString().padStart(2, \"0\")}:${now.getMinutes().toString().padStart(2, \"0\")}:${now.getSeconds().toString().padStart(2, \"0\")}`;\n }\n if (setPoolToken.value == false) {\n temShared.value = false;\n temPlus.value = false;\n temShow_user_info.value = false;\n useRefreshToken.value = false;\n }\n if (temShared.value === true) {\n temPassword.value = \"\";\n } else {\n temPlus.value = false;\n temShow_user_info.value = false;\n }\n let msg = \"\";\n if (previousSetpoolToken != setPoolToken.value && previousToken == temToken.value) {\n if (setPoolToken.value == false) {\n msg = \"您确定要关闭API模型开启web模式,您将无法生成任何的token,但不消耗额度!\";\n } else {\n if (useRefreshToken.value == true) {\n msg = \"您确定要开启API模式,并使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!\";\n } else {\n msg = \"您确定要开启API模式,并使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!\";\n }\n }\n } else if (previousUseRefreshToken != useRefreshToken.value && previousToken == temToken.value) {\n if (useRefreshToken.value == true) {\n msg = \"您确定要切换使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!\";\n } else {\n msg = \"您确定要切换使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!\";\n }\n } else {\n msg = \"修改将要提交,您确定修改好了吗?\";\n }\n ElMessageBox.confirm(msg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const api = {\n name: temName.value,\n token: temToken.value,\n username: temUsername.value,\n userPassword: temUserPassword.value,\n shared: temShared.value,\n auto_shared: temShared.value,\n show_user_info: temShow_user_info.value,\n plus: temPlus.value,\n setPoolToken: setPoolToken.value,\n useRefreshToken: useRefreshToken.value,\n checkSession: temCheckSession.value,\n password: temPassword.value,\n access_token: temAccessToken.value,\n share_token: temShareToken.value\n };\n fetch(`${prefix}/api/requiredToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(api)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n getToken(\"\");\n } else {\n ElMessage.error(data.msg);\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求requireToken接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n show.value = false;\n }).catch(() => {\n loadingInstance.close();\n ElMessage({\n type: \"info\",\n message: \"编辑取消!\"\n });\n return;\n });\n };\n /**\r\n * 开启pandora函数\r\n */\n const openPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/open`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 暂停pandora函数\r\n */\n const closePandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/close`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 重启pandora函数\r\n */\n const AgainPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/restart`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 重载pandora函数\r\n */\n const reloadPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/reload`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 查询pandoraNext余额函数\r\n */\n const pandoraIp = ref(\"\");\n const pandoraTime = ref(\"\");\n const getPandoraNext = async () => {\n const response = await axios.get(`${prefix}/api/getPandoraNext`, {\n headers\n });\n const data = response.data.data;\n if (data != null) {\n pandoraUsage.value = data.current + \"/\" + data.total;\n pandoraIp.value = data.ip;\n var currentTime = new Date();\n const futureTime = new Date(currentTime.getTime() + data.ttl * 1000);\n var year = futureTime.getFullYear();\n var month = futureTime.getMonth() + 1; // 月份是从0开始的,所以要加1\n var day = futureTime.getDate();\n var hours = futureTime.getHours();\n var minutes = futureTime.getMinutes();\n var seconds = futureTime.getSeconds();\n pandoraTime.value = year + \"-\" + month + \"-\" + day + \" \" + hours + \":\" + minutes + \":\" + seconds;\n }\n show_7.value = true;\n };\n /**\r\n * 一键全生成\r\n */\n const updateAllShareToken = async () => {\n let reNewMsg = \"全部检查并生成可能会加载1-3分钟,请您耐心等待!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true,\n text: \"正在加载中,请耐心等待...\"\n });\n const response = await axios.get(`${prefix}/api/updateAllToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n await Promise.all([getToken(\"\"), getPool(\"\")]);\n ElMessageBox.alert(data, \"温馨提示\", {\n dangerouslyUseHTMLString: true\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"全部检查并生成取消!\"\n });\n });\n };\n /**\r\n * 一键全刷新pool_token\r\n */\n const updateAllPoolToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/updateAllPoolToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n getPool(\"\");\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 一键全检查pool_token\r\n */\n const verifyAllPoolToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/verifyAllPoolToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n getPool(\"\");\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 刷新Token函数\r\n */\n const reNew = row => {\n if (row.setPoolToken == false) {\n ElMessage.error(\"未开启API模式,无法刷新\");\n return;\n }\n let reNewMsg = \"您确定要刷新session_token吗,刷新session_token消耗100额度,请您要仔细认真考虑哦!\";\n if (row.useRefreshToken) {\n reNewMsg = \"您确定要刷新refresh_token吗,刷新refresh_token消耗1000额度,请您要仔细认真考虑哦!\";\n }\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/updateSessionToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n row.token = data.data;\n getToken(\"\");\n ElMessageBox.alert(\"刷新成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n };\n /**\r\n * 刷新Token函数\r\n */\n const reNewPool = row => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/refreshSimplyPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(\"刷新成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n const reviewShare = row => {\n oneApi_name.value = row.oneApi_name;\n token_name.value = row.token_name;\n token_value.value = row.token_value;\n oneApi_baseUrl.value = row.oneApi_baseUrl;\n oneApi_models.value = row.oneApi_models.split(\",\");\n model_mapping.value = row.model_mapping;\n oneApi_groups.value = row.oneApi_groups.split(\",\");\n priority.value = row.priority;\n shareTime.value = row.shareTime;\n show_16.value = true;\n };\n const requireShareToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const requireShare = {\n oneApi_name: oneApi_name.value,\n token_name: token_name.value,\n token_value: token_value.value,\n oneApi_baseUrl: oneApi_baseUrl.value,\n oneApi_models: oneApi_models.value.toString(),\n model_mapping: model_mapping.value,\n oneApi_groups: oneApi_groups.value.toString(),\n priority: priority.value\n };\n fetch(`${prefix}/api/requireShareToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(requireShare)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n getShare(\"\");\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n show_16.value = false;\n };\n /**\r\n * 生成token操作\r\n */\n const review = row => {\n if (row.setPoolToken == false) {\n ElMessage.error(\"未开启API模式,无法生成\");\n return;\n }\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/updateToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n ElMessageBox.alert(\"生成shareToken成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n getToken(\"\");\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 更新token操作\r\n */\n const reviewPool = row => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/changePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(\"更换pool_token成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 删除PoolToken函数\r\n * 参数 Pool\r\n */\n const deletePoolToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个Pool_Token吗,删除之后就找不到咯,请您要仔细认真考虑哦!\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n fetch(`${prefix}/api/deletePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data.data != null) {\n getPool(\"\");\n ElMessage.success(data.data);\n loadingInstance.close();\n } else {\n getPool(\"\");\n ElMessage.error(data.msg);\n loadingInstance.close();\n }\n show_9.value = false;\n }).catch(error => {\n // 处理完成失败的逻辑\n console.error(\"删除失败\", error);\n getPool(\"\");\n loadingInstance.close();\n show_9.value = false;\n });\n }).catch(() => {\n loadingInstance.close();\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n });\n };\n /**\r\n * 删除PoolToken函数\r\n * 参数 Pool\r\n */\n const verifySimplyPoolToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/verifySimplyPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n getPool(\"\");\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 删除Token函数\r\n * 参数 user\r\n */\n const deleteToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个Token吗,删除之后就找不到咯,记得点击全部刷新poolToken\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`${prefix}/api/deleteToken`, row, {\n headers\n }).then(async response => {\n if (row.setPoolToken == true) {\n await axios.get(`${prefix}/api/updateAllPoolToken`, {\n headers\n });\n }\n msg = response.data.data;\n getToken(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n };\n /**\r\n * 删除Token函数\r\n * 参数 user\r\n */\n const deleteShareToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个share_Token吗,删除之后就找不到咯\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`${prefix}/api/deleteShareToken`, row, {\n headers\n }).then(async response => {\n msg = response.data.data;\n getShare(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n };\n /**\r\n * 获取token的过期时间\r\n */\n const formatDate = value => {\n if (!value) return \"\";\n var nowDay = new Date();\n const timeDay = parseISO(value.updateTime);\n const daysDiff = differenceInDays(nowDay, timeDay);\n if (value.token.length >= 2000) {\n return daysDiff >= 80 ? \"已经过去了至少80天\" : Math.ceil(80 - daysDiff) + \"天\";\n } else if (value.token.length < 200 && !value.token.includes(\"fk-\")) {\n return \"永久\";\n } else {\n return daysDiff >= 10 ? \"已经过去了至少10天\" : Math.ceil(10 - daysDiff) + \"天\";\n }\n };\n /**\r\n * 更改Token显示操作\r\n */\n const dataToken = value => {\n return value.substring(0, 30) + \"...\";\n };\n /**\r\n * 退出登录操作\r\n */\n const logout = () => {\n // 删除本地存储的 token\n localStorage.removeItem(\"jwtToken\");\n // 使用 Vue Router 进行页面跳转到登录页面\n router.replace(`/`);\n };\n const getPoolToken = () => {\n show_6.value = true;\n };\n const getShareToken = async () => {\n await getShare(\"\");\n show_13.value = true;\n };\n const getLogin = () => {\n getLoginData();\n show_10.value = true;\n };\n const redirectToGitHub = () => {\n window.open(\"https://github.com/Yanyutin753/PandoraNext-TokensTool\");\n };\n const copyToken = value => {\n const textarea = document.createElement(\"textarea\");\n // 设置 textarea 的值为要复制的文本\n textarea.value = value;\n // 将 textarea 添加到 DOM 中\n document.body.appendChild(textarea);\n // 选中 textarea 中的文本\n textarea.select();\n // 执行复制操作\n document.execCommand(\"copy\");\n // 从 DOM 中移除 textarea 元素\n document.body.removeChild(textarea);\n ElMessage({\n type: \"success\",\n message: \"复制成功!\"\n });\n };\n const selectChoice = buttonValue => {\n const selectedData = multipleSelection.value;\n const userData = selectedData.map(userData => userData);\n if (selectedData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n }\n if (buttonValue == \"选中删除Token\") {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这\" + selectedData.length + \"个Token吗,删除之后就找不到咯\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`${prefix}/api/deleteTokenList`, userData, {\n headers\n }).then(async response => {\n await axios.get(`${prefix}/api/updateAllPoolToken`, {\n headers\n });\n msg = response.data.data;\n getToken(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n return;\n } else if (buttonValue == \"选中刷新Token\") {\n let count = 0;\n const selectedData = multipleSelection.value;\n const userData = selectedData.map(userData => userData);\n userData.forEach((item, index) => {\n if (item.setPoolToken) {\n if (item.useRefreshToken) {\n count += 1000;\n } else {\n count += 100;\n }\n }\n });\n const reNewMsg = \"您确定要花\" + count + \"积分刷新这\" + selectedData.length + \"个Token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/updateSessionTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(userData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getToken(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中合成pool_token\") {\n getSelectedData();\n } else if (buttonValue == \"选中修改pool_token\") {\n poolName.value = \"\";\n shareTokens.value = \"\";\n temPool_token.value = \"\";\n poolTime.value = \"\";\n intoOneApi.value = false;\n poolOneApi_models.value = [];\n poolModel_mapping.value = \"\";\n oneApi_pandoraUrl.value = \"\";\n groupChecked.value = [];\n priority.value = 0;\n show_11.value = true;\n }\n };\n const showPool = row => {\n temPoolName.value = row.poolName;\n shareTokens.value = row.shareTokens;\n temPool_token.value = row.poolToken;\n poolTime.value = row.poolTime;\n intoOneApi.value = row.intoOneApi;\n poolOneApi_models.value = row.poolOneApi_models.split(\",\");\n poolModel_mapping.value = row.poolModel_mapping;\n oneApi_pandoraUrl.value = row.oneApi_pandoraUrl;\n temGroupChecked.value = row.groupChecked.split(\",\");\n priority.value = row.priority;\n show_17.value = true;\n };\n const selectPoolChoice = buttonValue => {\n const selectedPoolData = multipleSelectionPool.value;\n const temPoolData = selectedPoolData.map(temPoolData => temPoolData);\n if (temPoolData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n }\n if (buttonValue == \"选中检查pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要花\" + count + \"积分检查这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/verifySimplyPoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"检查取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中刷新pool_token\") {\n const reNewMsg = \"您确定要刷新这\" + selectedPoolData.length + \"个pool_token吗?\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/refreshSimplyPoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中更换pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要更换这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/changePoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"更换取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中删除pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要删除这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/deletePoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n });\n return;\n }\n };\n const chart = ref(null);\n const getUsage = async () => {\n show_12.value = true;\n const response = await axios.get(`${prefix}/api/modelsUsage`, {\n headers\n });\n let usageData = response.data.data.map(item => item.usage);\n let modelData = response.data.data.map(item => item.model);\n const myChart = echarts.init(chart.value);\n const option = {\n title: {\n text: \"tokensTool每日接口对话统计\",\n fontSize: 18,\n color: \"#606266\" // 这里是深灰色,你可以根据需要更改颜色\n },\n\n tooltip: {},\n legend: {\n data: modelData\n },\n xAxis: {\n data: modelData\n },\n yAxis: {},\n series: [{\n name: \"对话数量\",\n type: \"bar\",\n data: usageData,\n barWidth: \"25%\",\n itemStyle: {\n color: function (params) {\n const colorList = [\"#e74c3c\", \"#3498db\", \"#2ecc71\", \"#f1c40f\", \"#9b59b6\", \"#1abc9c\", \"#e67e22\", \"#ecf0f1\", \"#95a5a6\", \"#34495e\", \"#16a085\"];\n return colorList[params.dataIndex % colorList.length];\n }\n }\n }]\n };\n myChart.setOption(option);\n };\n return (_ctx, _cache) => {\n const _component_el_menu_item = _resolveComponent(\"el-menu-item\");\n const _component_van_icon = _resolveComponent(\"van-icon\");\n const _component_el_sub_menu = _resolveComponent(\"el-sub-menu\");\n const _component_h10 = _resolveComponent(\"h10\");\n const _component_el_menu = _resolveComponent(\"el-menu\");\n const _component_van_button = _resolveComponent(\"van-button\");\n const _component_el_page_header = _resolveComponent(\"el-page-header\");\n const _component_el_radio_button = _resolveComponent(\"el-radio-button\");\n const _component_el_radio_group = _resolveComponent(\"el-radio-group\");\n const _component_van_search = _resolveComponent(\"van-search\");\n const _component_el_table_column = _resolveComponent(\"el-table-column\");\n const _component_el_button = _resolveComponent(\"el-button\");\n const _component_el_tag = _resolveComponent(\"el-tag\");\n const _component_el_popover = _resolveComponent(\"el-popover\");\n const _component_el_option = _resolveComponent(\"el-option\");\n const _component_el_select = _resolveComponent(\"el-select\");\n const _component_el_button_group = _resolveComponent(\"el-button-group\");\n const _component_van_field = _resolveComponent(\"van-field\");\n const _component_van_switch = _resolveComponent(\"van-switch\");\n const _component_van_cell_group = _resolveComponent(\"van-cell-group\");\n const _component_van_form = _resolveComponent(\"van-form\");\n const _component_van_dialog = _resolveComponent(\"van-dialog\");\n const _component_CopyDocument = _resolveComponent(\"CopyDocument\");\n const _component_el_icon = _resolveComponent(\"el-icon\");\n const _component_el_select_group = _resolveComponent(\"el-select-group\");\n const _component_el_dialog = _resolveComponent(\"el-dialog\");\n const _component_el_form_item = _resolveComponent(\"el-form-item\");\n const _component_el_input = _resolveComponent(\"el-input\");\n const _component_van_checkbox = _resolveComponent(\"van-checkbox\");\n const _component_van_checkbox_group = _resolveComponent(\"van-checkbox-group\");\n const _directive_loading = _resolveDirective(\"loading\");\n return _openBlock(), _createElementBlock(_Fragment, null, [_createElementVNode(\"div\", _hoisted_1, [_hoisted_2, _createVNode(_component_el_menu, {\n \"default-active\": activeIndex.value,\n class: \"el-menu-demo\",\n mode: \"horizontal\",\n ellipsis: false,\n onSelect: handleSelect,\n \"active-text-color\": \"#0ea27e\",\n \"text-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_menu_item, null, {\n default: _withCtx(() => [_createElementVNode(\"img\", {\n style: {\n \"width\": \"40px\"\n },\n src: _imports_0,\n alt: \"Element logo\",\n onClick: redirectToGitHub\n })]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n onClick: getPandoraNext\n }, {\n title: _withCtx(() => [_createElementVNode(\"div\", _hoisted_3, [_createElementVNode(\"h2\", null, _toDisplayString(pandoraUsage.value), 1)]), _createVNode(_component_van_icon, {\n name: \"replay\",\n size: \"20\"\n })]),\n _: 1\n }), _hoisted_4, _createVNode(_component_el_menu_item, {\n index: \"1\",\n onClick: getPoolToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"pool_token列表\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2\",\n onClick: getShareToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"share_token列表\")]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"3\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"跳转Web服务\")]),\n default: _withCtx(() => [_createVNode(_component_el_sub_menu, {\n index: \"3-1\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"跳转PandoraWeb服务\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"3-1-1\",\n onClick: redirectToExternalLink\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"主页\", 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-1-2\",\n onClick: redirectPandoraNextShare\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"共享页\", 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-1-3\",\n onClick: requirePandoraNextLink\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"修改页\", 1)]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"3-2\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"获取token地址\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"3-2-1\"\n }, {\n default: _withCtx(() => [_hoisted_5]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-2-2\"\n }, {\n default: _withCtx(() => [_hoisted_6]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-2-3\"\n }, {\n default: _withCtx(() => [_hoisted_7]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-3\",\n onClick: requireTokensToolLink\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool使用说明\")]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"5\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"系统设置\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"5-1\",\n onClick: _cache[0] || (_cache[0] = $event => onRequireSetting(pandoraNext))\n }, {\n default: _withCtx(() => [_createTextVNode(\"PandoraNext设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"5-2\",\n onClick: _cache[1] || (_cache[1] = $event => onRequireSetting(tokensTool))\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"5-3\",\n onClick: _cache[2] || (_cache[2] = $event => onRequireSetting(validation))\n }, {\n default: _withCtx(() => [_createTextVNode(\"验证码信息设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"5-3\",\n onClick: _cache[3] || (_cache[3] = $event => show_8.value = true)\n }, {\n default: _withCtx(() => [_createTextVNode(\"定时&接口设置\")]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"6\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"系统功能\")]),\n default: _withCtx(() => [_createVNode(_component_el_sub_menu, {\n index: \"6-1\"\n }, {\n title: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"状态\", 1)]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"6-1-1\",\n onClick: openPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"开启\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-1-2\",\n onClick: closePandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"暂停\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-1-3\",\n onClick: AgainPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"重启\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-1-4\",\n onClick: reloadPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"重载\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-3\",\n onClick: getUsage\n }, {\n default: _withCtx(() => [_createTextVNode(\"copilot每日用量统计\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-2\",\n onClick: getLogin\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool登录日志\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-4\",\n onClick: logout\n }, {\n default: _withCtx(() => [_createVNode(_component_h10, {\n style: {\n \"font-size\": \"14px\"\n }\n }, {\n default: _withCtx(() => [_createTextVNode(\"退出登录\")]),\n _: 1\n })]),\n _: 1\n })]),\n _: 1\n })]),\n _: 1\n }, 8, [\"default-active\"]), _createElementVNode(\"div\", _hoisted_8, [_createElementVNode(\"div\", _hoisted_9, [_createVNode(_component_el_page_header, {\n icon: null,\n title: \" \"\n }, {\n content: _withCtx(() => [_hoisted_10]),\n extra: _withCtx(() => [_createElementVNode(\"div\", {\n class: \"addToken\",\n onClick: addToken\n }, [_createVNode(_component_van_button, {\n square: \"\",\n icon: \"add-o\",\n color: \"#0ea27e\",\n class: \"addTokenButton\"\n })])]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_11, [_createElementVNode(\"div\", _hoisted_12, [_createVNode(_component_van_search, {\n modelValue: value.value,\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = $event => value.value = $event),\n \"show-action\": \"\",\n shape: \"round\",\n clearable: \"\",\n placeholder: \"请输入搜索token名称和类型\",\n onSearch: onSearch\n }, {\n action: _withCtx(() => [_createVNode(_component_el_radio_group, {\n modelValue: size.value,\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = $event => size.value = $event),\n label: \"size control\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_radio_button, {\n type: \"success\",\n plain: \"\",\n label: \"WEB\",\n onClick: _cache[4] || (_cache[4] = $event => getWebToken(value.value))\n }, {\n default: _withCtx(() => [_createTextVNode(\"WEB\")]),\n _: 1\n }), _createVNode(_component_el_radio_button, {\n type: \"success\",\n plain: \"\",\n label: \"ALL\",\n onClick: _cache[5] || (_cache[5] = $event => getToken(value.value))\n }, {\n default: _withCtx(() => [_createTextVNode(\"ALL\")]),\n _: 1\n }), _createVNode(_component_el_radio_button, {\n type: \"success\",\n plain: \"\",\n label: \"API\",\n onClick: _cache[6] || (_cache[6] = $event => getAPIToken(value.value))\n }, {\n default: _withCtx(() => [_createTextVNode(\"API\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }, 8, [\"modelValue\"])]), _createElementVNode(\"div\", _hoisted_13, [_withDirectives((_openBlock(), _createBlock(_unref(ElTable), {\n data: tableData.value,\n style: {\n \"width\": \"100%\"\n },\n onSelectionChange: handleSelectionChange,\n ref_key: \"multipleTableRef\",\n ref: multipleTableRef,\n \"default-sort\": {\n prop: 'updateTime',\n prop: 'setPoolToken'\n },\n \"row-class-name\": tableRowClassName\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n type: \"selection\",\n width: \"45\"\n }), _createVNode(_component_el_table_column, {\n label: \"名称\",\n prop: \"setPoolToken\",\n sortable: \"\",\n \"min-width\": \"136\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_14, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"h5\", null, _toDisplayString(scope.row.setPoolToken ? scope.row.useRefreshToken ? \"refAPI\" : \"sesAPI\" : \"Web\"), 1)]),\n _: 2\n }, 1024), _createElementVNode(\"span\", _hoisted_15, _toDisplayString(scope.row.name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"账号信息\",\n \"min-width\": \"200\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", null, \"账号: \" + _toDisplayString(scope.row.username), 1), _createElementVNode(\"div\", null, \"密码: \" + _toDisplayString(scope.row.userPassword), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(scope.row.username), 1)]),\n _: 2\n }, 1024)]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"Token值\",\n \"min-width\": \"270\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", null, \"token: \" + _toDisplayString(dataToken(scope.row.token)), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(dataToken(scope.row.token)), 1)]),\n _: 2\n }, 1024)]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n prop: \"updateTime\",\n sortable: \"\",\n label: \"有效时间\",\n \"min-width\": \"167\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", null, \"注册时间:\" + _toDisplayString(scope.row.updateTime), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(\"距离过期还有:\" + _toDisplayString(formatDate(scope.row)), 1)]),\n _: 2\n }, 1024)]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n width: \"335\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => handleEdit(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"编辑\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => showData(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deleteToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"success\",\n onClick: $event => reNew(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"刷新\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"warning\",\n onClick: $event => review(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"生成\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"])), [[_directive_loading, _ctx.loading]])]), _createElementVNode(\"div\", _hoisted_16, [_createVNode(_component_el_select, {\n modelValue: buttonValue.value,\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = $event => buttonValue.value = $event),\n clearable: \"\",\n filterable: \"\",\n placeholder: \"请选择批量操作\",\n class: \"ml-4\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(options, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonValue,\n label: item.label,\n value: item.buttonValue\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_button, {\n class: \"ml-4\",\n onClick: _cache[10] || (_cache[10] = $event => selectChoice(buttonValue.value))\n }, {\n default: _withCtx(() => [_hoisted_17]),\n _: 1\n }), _createVNode(_component_el_button_group, {\n class: \"my-button\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_button, {\n onClick: updateAllShareToken\n }, {\n default: _withCtx(() => [_hoisted_18]),\n _: 1\n })]),\n _: 1\n })])]), _hoisted_19, _hoisted_20, _hoisted_21])]), _createVNode(_component_van_dialog, {\n show: show.value,\n \"onUpdate:show\": _cache[21] || (_cache[21] = $event => show.value = $event),\n title: \"📌修改token信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_22, [_createVNode(_component_van_form, {\n onSubmit: _cache[20] || (_cache[20] = $event => RequireToken())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_23, _createVNode(_component_van_field, {\n modelValue: temUsername.value,\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = $event => temUsername.value = $event),\n name: \"OpenAi邮箱\",\n label: \"OpenAi邮箱\",\n placeholder: \"OpenAi邮箱\",\n rules: [{\n required: true,\n message: '请填写OpenAi邮箱'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_24, _createVNode(_component_van_field, {\n modelValue: temUserPassword.value,\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = $event => temUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n rules: [{\n required: true,\n message: '请填写OpenAi密码'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_25, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: setPoolToken.value,\n \"onUpdate:modelValue\": _cache[13] || (_cache[13] = $event => setPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_26, [_hoisted_27, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refreshToken\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: useRefreshToken.value,\n \"onUpdate:modelValue\": _cache[14] || (_cache[14] = $event => useRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_28, [_hoisted_29, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temShared.value,\n \"onUpdate:modelValue\": _cache[15] || (_cache[15] = $event => temShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), temShared.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_30, [_hoisted_31, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temShow_user_info.value,\n \"onUpdate:modelValue\": _cache[16] || (_cache[16] = $event => temShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_32, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temPlus.value,\n \"onUpdate:modelValue\": _cache[17] || (_cache[17] = $event => temPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true)])) : _createCommentVNode(\"\", true), temShared.value == false || setPoolToken.value == false ? (_openBlock(), _createElementBlock(\"div\", _hoisted_33, [_hoisted_34, _createVNode(_component_van_field, {\n modelValue: temPassword.value,\n \"onUpdate:modelValue\": _cache[18] || (_cache[18] = $event => temPassword.value = $event),\n name: \"进入Token的密码\",\n label: \"进入Token的密码\",\n placeholder: \"填了将不会分享给他人!\",\n rules: [{\n validator: addPasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), _hoisted_35, _createVNode(_component_van_field, {\n modelValue: temToken.value,\n \"onUpdate:modelValue\": _cache[19] || (_cache[19] = $event => temToken.value = $event),\n label: \"Token的值\",\n type: \"textarea\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的Token(选填),session或refresh_token\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n \"show-word-limit\": \"\"\n }, null, 8, [\"modelValue\"]), _hoisted_36]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_37, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_38]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_1.value,\n \"onUpdate:show\": _cache[33] || (_cache[33] = $event => show_1.value = $event),\n title: \"✨添加token信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"addTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_39, [_createVNode(_component_van_form, {\n onSubmit: _cache[32] || (_cache[32] = $event => onAddToken())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_40, _createVNode(_component_van_field, {\n modelValue: addName.value,\n \"onUpdate:modelValue\": _cache[22] || (_cache[22] = $event => addName.value = $event),\n name: \"Token用户名\",\n label: \"Token用户名\",\n placeholder: \"Token用户名\",\n rules: [{\n required: true,\n message: '请填写Token用户名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_41, _createVNode(_component_van_field, {\n modelValue: addUsername.value,\n \"onUpdate:modelValue\": _cache[23] || (_cache[23] = $event => addUsername.value = $event),\n name: \"OpenAi邮箱\",\n label: \"OpenAi邮箱\",\n placeholder: \"OpenAi邮箱\",\n rules: [{\n required: true,\n message: '请填写OpenAi邮箱'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_42, _createVNode(_component_van_field, {\n modelValue: addUserPassword.value,\n \"onUpdate:modelValue\": _cache[24] || (_cache[24] = $event => addUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n rules: [{\n required: true,\n message: '请填写OpenAi密码'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_43, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addSetPoolToken.value,\n \"onUpdate:modelValue\": _cache[25] || (_cache[25] = $event => addSetPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_44, [_hoisted_45, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refreshToken\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addUseRefreshToken.value,\n \"onUpdate:modelValue\": _cache[26] || (_cache[26] = $event => addUseRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_46, [_hoisted_47, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addShared.value,\n \"onUpdate:modelValue\": _cache[27] || (_cache[27] = $event => addShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), addShared.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_48, [_hoisted_49, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addShow_user_info.value,\n \"onUpdate:modelValue\": _cache[28] || (_cache[28] = $event => addShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_50, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addPlus.value,\n \"onUpdate:modelValue\": _cache[29] || (_cache[29] = $event => addPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true)])) : _createCommentVNode(\"\", true), addShared.value == '' ? (_openBlock(), _createElementBlock(\"div\", _hoisted_51, [_hoisted_52, _createVNode(_component_van_field, {\n modelValue: addPassword.value,\n \"onUpdate:modelValue\": _cache[30] || (_cache[30] = $event => addPassword.value = $event),\n name: \"进入Token的密码\",\n label: \"进入Token的密码\",\n placeholder: \"填了将不会分享给他人!\",\n rules: [{\n validator: addPasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_53, [_hoisted_54, _createVNode(_component_van_field, {\n rows: \"3\",\n type: \"textarea\",\n maxlength: \"5000\",\n \"show-word-limit\": \"\",\n modelValue: addTokenValue.value,\n \"onUpdate:modelValue\": _cache[31] || (_cache[31] = $event => addTokenValue.value = $event),\n name: \"Token的值\",\n label: \"Token的值\",\n placeholder: \"选填(可不填,不填则使用账号密码),目前只支持session_token或refresh_token\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_55]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_56, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_57]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_2.value,\n \"onUpdate:show\": _cache[53] || (_cache[53] = $event => show_2.value = $event),\n title: \"🔎token信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"showDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_58, [_createVNode(_component_van_form, null, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_59, _createVNode(_component_van_field, {\n modelValue: temName.value,\n \"onUpdate:modelValue\": _cache[34] || (_cache[34] = $event => temName.value = $event),\n name: \"Token用户名\",\n label: \"Token用户名\",\n placeholder: \"Token用户名\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[35] || (_cache[35] = $event => copyToken(temName.value))\n }, null, 8, [\"modelValue\"]), _hoisted_60, _createVNode(_component_van_field, {\n modelValue: temPassword.value,\n \"onUpdate:modelValue\": _cache[36] || (_cache[36] = $event => temPassword.value = $event),\n type: \"temPassword\",\n name: \"进入Token的密码\",\n label: \"进入Token的密码\",\n placeholder: \"填了将不会分享给他人(如不填则输入Token名即可进入)!\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[37] || (_cache[37] = $event => copyToken(temPassword.value))\n }, null, 8, [\"modelValue\"]), _hoisted_61, _createVNode(_component_van_field, {\n modelValue: temUsername.value,\n \"onUpdate:modelValue\": _cache[38] || (_cache[38] = $event => temUsername.value = $event),\n name: \"OpenAi用户名\",\n label: \"OpenAi用户名\",\n placeholder: \"OpenAi用户名\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[39] || (_cache[39] = $event => copyToken(temUsername.value))\n }, null, 8, [\"modelValue\"]), _hoisted_62, _createVNode(_component_van_field, {\n modelValue: temUserPassword.value,\n \"onUpdate:modelValue\": _cache[40] || (_cache[40] = $event => temUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[41] || (_cache[41] = $event => copyToken(temUserPassword.value))\n }, null, 8, [\"modelValue\"]), _hoisted_63, _createVNode(_component_van_field, {\n name: \"temShared\",\n readonly: true,\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temShared.value,\n \"onUpdate:modelValue\": _cache[42] || (_cache[42] = $event => temShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_64, _createVNode(_component_van_field, {\n readonly: true,\n name: \"temShow_user_info\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temShow_user_info.value,\n \"onUpdate:modelValue\": _cache[43] || (_cache[43] = $event => temShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_65, _createVNode(_component_van_field, {\n readonly: true,\n name: \"temPlus\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temPlus.value,\n \"onUpdate:modelValue\": _cache[44] || (_cache[44] = $event => temPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_66, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: setPoolToken.value,\n \"onUpdate:modelValue\": _cache[45] || (_cache[45] = $event => setPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_67, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refresh_token\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: useRefreshToken.value,\n \"onUpdate:modelValue\": _cache[46] || (_cache[46] = $event => useRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_68, _createVNode(_component_van_field, {\n modelValue: temToken.value,\n \"onUpdate:modelValue\": _cache[47] || (_cache[47] = $event => temToken.value = $event),\n label: \"Token的值\",\n type: \"textarea\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的Token(session或refresh_token)\",\n \"show-word-limit\": \"\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[48] || (_cache[48] = $event => copyToken(temToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"]), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_69, [_hoisted_70, _createVNode(_component_van_field, {\n modelValue: temAccessToken.value,\n \"onUpdate:modelValue\": _cache[49] || (_cache[49] = $event => temAccessToken.value = $event),\n label: \"access_token\",\n type: \"textarea\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的access_token\",\n \"show-word-limit\": \"\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[50] || (_cache[50] = $event => copyToken(temAccessToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"]), _hoisted_71, _createVNode(_component_van_field, {\n modelValue: temShareToken.value,\n \"onUpdate:modelValue\": _cache[51] || (_cache[51] = $event => temShareToken.value = $event),\n label: \"share_token\",\n type: \"textarea\",\n maxlength: \"200\",\n placeholder: \"请填写OpenAi的share_token\",\n \"show-word-limit\": \"\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[52] || (_cache[52] = $event => copyToken(temShareToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true)]),\n _: 1\n })]),\n _: 1\n }), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_72, [_createElementVNode(\"div\", {\n ref_key: \"chart_show\",\n ref: chart_show,\n style: {\n \"width\": \"auto\",\n \"height\": \"300px\"\n }\n }, null, 512), _hoisted_73])) : _createCommentVNode(\"\", true)])]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_3.value,\n \"onUpdate:show\": _cache[68] || (_cache[68] = $event => show_3.value = $event),\n title: \"PandoraNext设置信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requirePandora\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_74, [_createVNode(_component_van_form, {\n onSubmit: _cache[67] || (_cache[67] = $event => RequireSetting(pandoraNext))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_75, _createVNode(_component_van_field, {\n modelValue: isolated_conv_title.value,\n \"onUpdate:modelValue\": _cache[54] || (_cache[54] = $event => isolated_conv_title.value = $event),\n name: \"对话标题\",\n label: \"对话标题\",\n placeholder: \"隔离对话设置标题\"\n }, null, 8, [\"modelValue\"]), _hoisted_76, _createVNode(_component_van_field, {\n modelValue: bing.value,\n \"onUpdate:modelValue\": _cache[55] || (_cache[55] = $event => bing.value = $event),\n name: \"绑定IP和端口\",\n label: \"绑定IP和端口\",\n placeholder: \"绑定IP和端口(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_77, _createVNode(_component_van_field, {\n modelValue: custom_doh_host.value,\n \"onUpdate:modelValue\": _cache[56] || (_cache[56] = $event => custom_doh_host.value = $event),\n name: \"DoH主机名\",\n label: \"DoH主机名\",\n placeholder: \"配置自定义的DoH主机名(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_78, _createVNode(_component_van_field, {\n modelValue: timeout.value,\n \"onUpdate:modelValue\": _cache[57] || (_cache[57] = $event => timeout.value = $event),\n name: \"请求超时时间\",\n label: \"请求超时时间\",\n placeholder: \"请求超时时间(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_79, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享对话(选填)\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: public_share.value,\n \"onUpdate:modelValue\": _cache[58] || (_cache[58] = $event => public_share.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_80, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否配置证书\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: enabled.value,\n \"onUpdate:modelValue\": _cache[59] || (_cache[59] = $event => enabled.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), enabled.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_81, [_hoisted_82, _createVNode(_component_van_field, {\n modelValue: cert_file.value,\n \"onUpdate:modelValue\": _cache[60] || (_cache[60] = $event => cert_file.value = $event),\n name: \"证书文件\",\n label: \"证书文件\",\n placeholder: \"证书文件\"\n }, null, 8, [\"modelValue\"]), _hoisted_83, _createVNode(_component_van_field, {\n modelValue: key_file.value,\n \"onUpdate:modelValue\": _cache[61] || (_cache[61] = $event => key_file.value = $event),\n name: \"密钥文件\",\n label: \"密钥文件\",\n placeholder: \"密钥文件\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_84, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否禁用注册\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: disable_signup.value,\n \"onUpdate:modelValue\": _cache[62] || (_cache[62] = $event => disable_signup.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_85, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否自动打码\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: auto_conv_arkose.value,\n \"onUpdate:modelValue\": _cache[63] || (_cache[63] = $event => auto_conv_arkose.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_86, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"使用文件代理服务\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: proxy_file_service.value,\n \"onUpdate:modelValue\": _cache[64] || (_cache[64] = $event => proxy_file_service.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_87, _createVNode(_component_van_field, {\n modelValue: proxy_url.value,\n \"onUpdate:modelValue\": _cache[65] || (_cache[65] = $event => proxy_url.value = $event),\n name: \"代理服务URL\",\n label: \"代理服务URL\",\n placeholder: \"代理服务URL(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_88, _createVNode(_component_van_field, {\n modelValue: whitelist.value,\n \"onUpdate:modelValue\": _cache[66] || (_cache[66] = $event => whitelist.value = $event),\n name: \"白名单\",\n label: \"白名单\",\n placeholder: \"[]限制所有账号(默认为null)\"\n }, null, 8, [\"modelValue\"]), _hoisted_89]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_90, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_91]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_4.value,\n \"onUpdate:show\": _cache[80] || (_cache[80] = $event => show_4.value = $event),\n title: \"tokensTool设置信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_92, [_createVNode(_component_van_form, {\n onSubmit: _cache[79] || (_cache[79] = $event => RequireSetting(tokensTool))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_93, _createVNode(_component_van_field, {\n modelValue: loginUsername.value,\n \"onUpdate:modelValue\": _cache[69] || (_cache[69] = $event => loginUsername.value = $event),\n name: \"登录用户名\",\n label: \"登录用户名\",\n placeholder: \"tokensTool用户名\"\n }, null, 8, [\"modelValue\"]), _hoisted_94, _createVNode(_component_van_field, {\n modelValue: loginPassword.value,\n \"onUpdate:modelValue\": _cache[70] || (_cache[70] = $event => loginPassword.value = $event),\n name: \"登录密码\",\n label: \"登录密码\",\n placeholder: \"不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_95, _createVNode(_component_van_field, {\n modelValue: proxy_api_prefix.value,\n \"onUpdate:modelValue\": _cache[71] || (_cache[71] = $event => proxy_api_prefix.value = $event),\n name: \"proxy接口前缀\",\n label: \"proxy接口前缀\",\n placeholder: \"proxy模式接口后缀,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_96, _createVNode(_component_van_field, {\n modelValue: autoToken_url.value,\n \"onUpdate:modelValue\": _cache[72] || (_cache[72] = $event => autoToken_url.value = $event),\n name: \"proxy模式URL\",\n label: \"proxy模式URL\",\n placeholder: \"http(s)://(ip:port或者域名)/后缀,同公网服务器填default\"\n }, null, 8, [\"modelValue\"]), _hoisted_97, _createVNode(_component_van_field, {\n modelValue: setup_password.value,\n \"onUpdate:modelValue\": _cache[73] || (_cache[73] = $event => setup_password.value = $event),\n name: \"重载服务密码\",\n label: \"重载服务密码\",\n placeholder: \"PandoraNext重载服务密码,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_98, _createVNode(_component_van_field, {\n modelValue: site_password.value,\n \"onUpdate:modelValue\": _cache[74] || (_cache[74] = $event => site_password.value = $event),\n name: \"访问密码\",\n label: \"访问密码\",\n placeholder: \"PandoraNext访问密码,建议开启访问密码\",\n rules: [{\n validator: sitePasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_99, _createVNode(_component_van_field, {\n modelValue: license_id.value,\n \"onUpdate:modelValue\": _cache[75] || (_cache[75] = $event => license_id.value = $event),\n name: \"验证licenseId\",\n label: \"验证licenseId\",\n placeholder: \"验证licenseId(github上拿到的license_id)\"\n }, null, 8, [\"modelValue\"]), _hoisted_100, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"tokensTool接口\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: isGetToken.value,\n \"onUpdate:modelValue\": _cache[76] || (_cache[76] = $event => isGetToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), isGetToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_101, [_hoisted_102, _createVNode(_component_van_field, {\n modelValue: getTokenPassword.value,\n \"onUpdate:modelValue\": _cache[77] || (_cache[77] = $event => getTokenPassword.value = $event),\n name: \"接口密码\",\n label: \"接口密码\",\n placeholder: \"tokensTool接口密码,用于获取tokens,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), _hoisted_103, _createVNode(_component_van_field, {\n modelValue: containerName.value,\n \"onUpdate:modelValue\": _cache[78] || (_cache[78] = $event => containerName.value = $event),\n name: \"监管容器名\",\n label: \"监管容器名\",\n placeholder: \"监管运行的容器名或文件名,默认为PandoraNext\",\n rules: [{\n required: true,\n message: '请填写监管的容器名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_104]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_105, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_106]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_5.value,\n \"onUpdate:show\": _cache[89] || (_cache[89] = $event => show_5.value = $event),\n title: \"PandoraNext验证信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"verify\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_107, [_createVNode(_component_van_form, {\n onSubmit: _cache[88] || (_cache[88] = $event => RequireSetting(validation))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_108, _createVNode(_component_van_field, {\n modelValue: provider.value,\n \"onUpdate:modelValue\": _cache[81] || (_cache[81] = $event => provider.value = $event),\n name: \"验证码提供商\",\n label: \"验证码提供商\",\n placeholder: \"验证码提供商\"\n }, null, 8, [\"modelValue\"]), _hoisted_109, _createVNode(_component_van_field, {\n modelValue: site_key.value,\n \"onUpdate:modelValue\": _cache[82] || (_cache[82] = $event => site_key.value = $event),\n name: \"验证码网站参数\",\n label: \"验证码网站参数\",\n placeholder: \"验证码网站参数\"\n }, null, 8, [\"modelValue\"]), _hoisted_110, _createVNode(_component_van_field, {\n modelValue: site_secret.value,\n \"onUpdate:modelValue\": _cache[83] || (_cache[83] = $event => site_secret.value = $event),\n name: \"验证码API Key\",\n label: \"验证码API Key\",\n placeholder: \"验证码API Key\"\n }, null, 8, [\"modelValue\"]), _hoisted_111, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否全站密码登录页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: site_login.value,\n \"onUpdate:modelValue\": _cache[84] || (_cache[84] = $event => site_login.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_112, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在设置登录页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: setup_login.value,\n \"onUpdate:modelValue\": _cache[85] || (_cache[85] = $event => setup_login.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_113, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在输入用户名页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: oai_username.value,\n \"onUpdate:modelValue\": _cache[86] || (_cache[86] = $event => oai_username.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_114, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在输入密码页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: oai_password.value,\n \"onUpdate:modelValue\": _cache[87] || (_cache[87] = $event => oai_password.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_115]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_116, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_117]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_el_dialog, {\n modelValue: show_6.value,\n \"onUpdate:modelValue\": _cache[95] || (_cache[95] = $event => show_6.value = $event),\n title: \"pool_token列表\",\n \"align-center\": \"\",\n width: \"78%\",\n \"close-on-click-modal\": false,\n class: \"shareTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_118, [_createVNode(_component_el_icon, {\n onClick: _cache[90] || (_cache[90] = $event => copyToken(pandoraNext_outUrl.value + proxy_api_prefix.value + '/v1/chat/completions'))\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 1\n }), _createVNode(_component_h10, null, {\n default: _withCtx(() => [_createTextVNode(\"API地址:\" + _toDisplayString(pandoraNext_outUrl.value) + _toDisplayString(proxy_api_prefix.value) + \"/v1/chat/completions\", 1)]),\n _: 1\n })]), _createVNode(_unref(ElTable), {\n data: poolData.value,\n \"default-sort\": {\n prop: 'poolTime',\n prop: 'intoOneApi'\n },\n onSelectionChange: poolSelectionChange,\n ref_key: \"multipleTableRefPool\",\n ref: multipleTableRefPool,\n \"row-class-name\": poolRowClassName,\n class: \"poolDateTable\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n type: \"selection\",\n width: \"45\"\n }), _createVNode(_component_el_table_column, {\n label: \"pool_token名称\",\n prop: \"intoOneApi\",\n sortable: \"\",\n \"min-width\": \"170\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n reference: _withCtx(() => [_createElementVNode(\"div\", _hoisted_119, [scope.row.intoOneApi == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_120, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_121]),\n _: 1\n })])) : (_openBlock(), _createElementBlock(\"div\", _hoisted_122, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_123]),\n _: 1\n })])), _createElementVNode(\"span\", _hoisted_124, _toDisplayString(scope.row.poolName), 1)])]),\n default: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(scope.row.poolOneApi_models), 1)]),\n _: 2\n }, 1024)]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"pool_token值\",\n \"min-width\": \"325\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_125, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.poolToken)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_126, _toDisplayString(scope.row.poolToken), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"使用token名集合\",\n \"min-width\": \"165\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(scope.row.shareTokens), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_hoisted_127]),\n _: 1\n })]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"poolTime\",\n label: \"更新时间\",\n prop: \"poolTime\",\n sortable: \"\",\n \"min-width\": \"170\"\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n \"min-width\": \"335\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => showPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"warning\",\n onClick: $event => verifySimplyPoolToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"检验\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deletePoolToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"success\",\n onClick: $event => reNewPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"刷新\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => reviewPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"更换\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"]), _createVNode(_component_el_select_group, {\n class: \"pool-button flex-container\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: buttonPoolValue.value,\n \"onUpdate:modelValue\": _cache[91] || (_cache[91] = $event => buttonPoolValue.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"请选择批量操作\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPool, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolValue,\n label: item.label,\n value: item.buttonPoolValue\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_button, {\n onClick: _cache[92] || (_cache[92] = $event => selectPoolChoice(buttonPoolValue.value))\n }, {\n default: _withCtx(() => [_hoisted_128]),\n _: 1\n }), _createVNode(_component_van_search, {\n modelValue: valuePool.value,\n \"onUpdate:modelValue\": _cache[93] || (_cache[93] = $event => valuePool.value = $event),\n shape: \"round\",\n clearable: \"\",\n placeholder: \"请输入搜索pool_token名称\",\n onSearch: _cache[94] || (_cache[94] = $event => onSearchPoolToken(valuePool.value)),\n class: \"onPoolToken\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_129]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_7.value,\n \"onUpdate:modelValue\": _cache[99] || (_cache[99] = $event => show_7.value = $event),\n title: \"PandoraNext余额\",\n \"align-center\": \"\",\n width: \"auto\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_130, [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_131, _createVNode(_component_van_field, {\n modelValue: pandoraUsage.value,\n \"onUpdate:modelValue\": _cache[96] || (_cache[96] = $event => pandoraUsage.value = $event),\n name: \"PandoraNext用量\",\n label: \"PandoraNext用量\",\n placeholder: \"PandoraNext用量\"\n }, null, 8, [\"modelValue\"]), _hoisted_132, _createVNode(_component_van_field, {\n modelValue: pandoraIp.value,\n \"onUpdate:modelValue\": _cache[97] || (_cache[97] = $event => pandoraIp.value = $event),\n name: \"绑定IP\",\n label: \"绑定IP\",\n placeholder: \"绑定IP\"\n }, null, 8, [\"modelValue\"]), _hoisted_133, _createVNode(_component_van_field, {\n modelValue: pandoraTime.value,\n \"onUpdate:modelValue\": _cache[98] || (_cache[98] = $event => pandoraTime.value = $event),\n name: \"重置时间\",\n label: \"重置时间\",\n placeholder: \"重置时间\"\n }, null, 8, [\"modelValue\"]), _hoisted_134]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_8.value,\n \"onUpdate:modelValue\": _cache[107] || (_cache[107] = $event => show_8.value = $event),\n title: \"定时刷新&PandoraNext网址\",\n \"align-center\": \"\",\n \"max-width\": \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_135, [_createVNode(_component_van_form, {\n onSubmit: _cache[106] || (_cache[106] = $event => RequireAutoUpdate())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_136, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否自动刷新session_token\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: auto_updateSession.value,\n \"onUpdate:modelValue\": _cache[100] || (_cache[100] = $event => auto_updateSession.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), auto_updateSession.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_137, [_hoisted_138, _createVNode(_component_van_field, {\n modelValue: auto_updateTime.value,\n \"onUpdate:modelValue\": _cache[101] || (_cache[101] = $event => auto_updateTime.value = $event),\n name: \"刷新session的时间\",\n label: \"刷新session的时间\",\n \"input-align\": \"right\",\n placeholder: \"自动刷新session的时间 (天为单位)\"\n }, null, 8, [\"modelValue\"]), _hoisted_139, _createVNode(_component_van_field, {\n modelValue: auto_updateNumber.value,\n \"onUpdate:modelValue\": _cache[102] || (_cache[102] = $event => auto_updateNumber.value = $event),\n name: \"刷新session的个数\",\n label: \"刷新session的个数\",\n \"input-align\": \"right\",\n placeholder: \"自动刷新session的个数 (个)\"\n }, null, 8, [\"modelValue\"]), _hoisted_140])) : _createCommentVNode(\"\", true), _createVNode(_component_van_field, {\n modelValue: pandoraNext_outUrl.value,\n \"onUpdate:modelValue\": _cache[103] || (_cache[103] = $event => pandoraNext_outUrl.value = $event),\n name: \"PandoraNext的公网访问地址\",\n label: \"PandoraNext的公网访问地址\",\n \"input-align\": \"right\",\n placeholder: \"PandoraNext的公网访问地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_141, _createVNode(_component_van_field, {\n modelValue: oneAPi_outUrl.value,\n \"onUpdate:modelValue\": _cache[104] || (_cache[104] = $event => oneAPi_outUrl.value = $event),\n name: \"oneApi的公网访问地址\",\n label: \"oneApi的公网访问地址\",\n \"input-align\": \"right\",\n placeholder: \"oneApi的公网访问地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_142, _createVNode(_component_van_field, {\n modelValue: oneAPi_intoToken.value,\n \"onUpdate:modelValue\": _cache[105] || (_cache[105] = $event => oneAPi_intoToken.value = $event),\n name: \"oneApi的系统令牌\",\n label: \"oneApi的系统令牌\",\n \"input-align\": \"right\",\n placeholder: \"oneApi的系统令牌\"\n }, null, 8, [\"modelValue\"]), _hoisted_143]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_144, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_9.value,\n \"onUpdate:modelValue\": _cache[115] || (_cache[115] = $event => show_9.value = $event),\n title: \"✨添加pool_token信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_145, [_createVNode(_component_van_form, {\n onSubmit: addSelectPoolToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_146, _createVNode(_component_van_field, {\n modelValue: poolNameValue.value,\n \"onUpdate:modelValue\": _cache[108] || (_cache[108] = $event => poolNameValue.value = $event),\n name: \"为pool_token名\",\n label: \"pool_token名\",\n \"input-align\": \"right\",\n placeholder: \"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字\",\n rules: [{\n validator: poolNameValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_147, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[109] || (_cache[109] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_148, [_hoisted_149, _createElementVNode(\"div\", _hoisted_150, [_createVNode(_component_el_form_item, {\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addPoolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[110] || (_cache[110] = $event => addPoolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_151]),\n _: 1\n }), _hoisted_152, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: addPoolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[111] || (_cache[111] = $event => addPoolModel_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_153, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[112] || (_cache[112] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\"\n }, null, 8, [\"modelValue\"]), _hoisted_154, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"checkboxGroup\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: groupChecked.value,\n \"onUpdate:modelValue\": _cache[113] || (_cache[113] = $event => groupChecked.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_155, _createVNode(_component_van_field, {\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[114] || (_cache[114] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义PandoraNext地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_156])) : _createCommentVNode(\"\", true)]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_157, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_10.value,\n \"onUpdate:modelValue\": _cache[116] || (_cache[116] = $event => show_10.value = $event),\n title: \"tokensTool登录日志\",\n \"align-center\": \"\",\n width: \"50%\",\n \"close-on-click-modal\": false,\n class: \"showLoginDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_158, [_createVNode(_unref(ElTable), {\n \"row-class-name\": poolRowClassName,\n data: loginData.value\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n prop: \"ipAddress\",\n label: \"登录地区\",\n \"min-width\": \"180\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_159, [_createElementVNode(\"span\", _hoisted_160, _toDisplayString(scope.row.ipAddress), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"登录IP\",\n \"min-width\": \"145\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_161, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.poolToken)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_162, _toDisplayString(scope.row.requestIp), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"成功/失败\",\n \"min-width\": \"105\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_163, [_createElementVNode(\"span\", _hoisted_164, _toDisplayString(scope.row.inRequestNumber) + \"/\" + _toDisplayString(scope.row.outRequestNumber), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"lastLoginTime\",\n label: \"登录时间\",\n prop: \"lastLoginTime\",\n \"min-width\": \"180\"\n })]),\n _: 1\n }, 8, [\"data\"])]), _hoisted_165]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_11.value,\n \"onUpdate:modelValue\": _cache[125] || (_cache[125] = $event => show_11.value = $event),\n title: \"📌修改pool_token信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_166, [_createVNode(_component_van_form, {\n onSubmit: requirePoolToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_167, _createElementVNode(\"div\", _hoisted_168, [_createVNode(_component_el_form_item, {\n label: \"poolToken名\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: poolName.value,\n \"onUpdate:modelValue\": _cache[117] || (_cache[117] = $event => poolName.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择你想要的修改的pool_token名称\",\n onChange: handlePoolNameChange,\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(poolData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.poolName,\n label: item.poolName,\n value: item.poolName,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_169, _createVNode(_component_van_field, {\n modelValue: temPool_token.value,\n \"onUpdate:modelValue\": _cache[118] || (_cache[118] = $event => temPool_token.value = $event),\n type: \"textarea\",\n maxlength: \"100\",\n autoSize: \"\",\n name: \"pool_token的值\",\n label: \"pool_token的值\",\n \"input-align\": \"right\",\n placeholder: \"pool_token的值(不改则不变)\"\n }, null, 8, [\"modelValue\"]), _hoisted_170, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[119] || (_cache[119] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_171, intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_172, [_hoisted_173, _createElementVNode(\"div\", _hoisted_174, [_createVNode(_component_el_form_item, {\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: poolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[120] || (_cache[120] = $event => poolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_175]),\n _: 1\n }), _hoisted_176, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: poolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[121] || (_cache[121] = $event => poolModel_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_177, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[122] || (_cache[122] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_178, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"checkboxGroup\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: temGroupChecked.value,\n \"onUpdate:modelValue\": _cache[123] || (_cache[123] = $event => temGroupChecked.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_179, _createVNode(_component_van_field, {\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[124] || (_cache[124] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义PandoraNext地址\",\n rules: [{\n required: true,\n message: '请填写自定义PandoraNext地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_180])) : _createCommentVNode(\"\", true)]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_181, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_12.value,\n \"onUpdate:modelValue\": _cache[126] || (_cache[126] = $event => show_12.value = $event),\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", {\n ref_key: \"chart\",\n ref: chart,\n style: {\n \"width\": \"auto\",\n \"height\": \"400px\"\n }\n }, null, 512)]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_13.value,\n \"onUpdate:modelValue\": _cache[130] || (_cache[130] = $event => show_13.value = $event),\n title: \"OneAPI里的share_token列表\",\n \"align-center\": \"\",\n width: \"78%\",\n \"close-on-click-modal\": false,\n class: \"shareTokenDialog\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_search, {\n modelValue: valueShare.value,\n \"onUpdate:modelValue\": _cache[128] || (_cache[128] = $event => valueShare.value = $event),\n \"show-action\": \"\",\n shape: \"round\",\n clearable: \"\",\n placeholder: \"请输入搜索share_token名称\",\n onSearch: _cache[129] || (_cache[129] = $event => onSearchShareToken(valueShare.value)),\n class: \"onShareToken\"\n }, {\n action: _withCtx(() => [_createVNode(_component_el_button, {\n icon: _ctx.Plus,\n onClick: _cache[127] || (_cache[127] = $event => show_14.value = true)\n }, {\n default: _withCtx(() => [_hoisted_182]),\n _: 1\n }, 8, [\"icon\"])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_unref(ElTable), {\n data: shareData.value,\n \"row-class-name\": poolRowClassName\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n label: \"在one_api的名称\",\n prop: \"oneApi_name\",\n width: \"180\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_183, [_createElementVNode(\"span\", _hoisted_184, _toDisplayString(scope.row.oneApi_name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"来源Token名\",\n \"min-width\": \"135\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_185, [_createElementVNode(\"span\", _hoisted_186, _toDisplayString(scope.row.token_name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"share_token值\",\n \"min-width\": \"355\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_187, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.token_value)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_188, _toDisplayString(scope.row.token_value), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"shareTime\",\n label: \"更新时间\",\n prop: \"shareTime\",\n \"min-width\": \"170\"\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n \"min-width\": \"205\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => showShareToken(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => reviewShare(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"修改\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deleteShareToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"]), _hoisted_189]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_14.value,\n \"onUpdate:modelValue\": _cache[138] || (_cache[138] = $event => show_14.value = $event),\n title: \"✨添加share_token进OneAPI\",\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_form, {\n onSubmit: addShareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_190, _createVNode(_component_van_field, {\n modelValue: addOneApi_name.value,\n \"onUpdate:modelValue\": _cache[131] || (_cache[131] = $event => addOneApi_name.value = $event),\n name: \"oneApi中渠道名称\",\n label: \"oneApi中渠道名称\",\n \"input-align\": \"right\",\n placeholder: \"oneApi中渠道名称\",\n rules: [{\n required: true,\n message: '请填写oneApi中渠道名称'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_191, _createElementVNode(\"div\", _hoisted_192, [_createVNode(_component_el_form_item, {\n label: \"Token名\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addToken_name.value,\n \"onUpdate:modelValue\": _cache[132] || (_cache[132] = $event => addToken_name.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择你想要的添加的Token名称\",\n onChange: handleShareNameChange,\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(filteredTableData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.name,\n label: item.name,\n value: item.name,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_193, _createElementVNode(\"div\", _hoisted_194, [_createVNode(_component_el_form_item, {\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addOneApi_models.value,\n \"onUpdate:modelValue\": _cache[133] || (_cache[133] = $event => addOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_195]),\n _: 1\n }), _hoisted_196, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: addModel_mapping.value,\n \"onUpdate:modelValue\": _cache[134] || (_cache[134] = $event => addModel_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_197, _createVNode(_component_van_field, {\n modelValue: addPriority.value,\n \"onUpdate:modelValue\": _cache[135] || (_cache[135] = $event => addPriority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_198, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"addOneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: addOneApi_groups.value,\n \"onUpdate:modelValue\": _cache[136] || (_cache[136] = $event => addOneApi_groups.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_199, _createVNode(_component_van_field, {\n modelValue: addOneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[137] || (_cache[137] = $event => addOneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_200]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_201, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_15.value,\n \"onUpdate:modelValue\": _cache[154] || (_cache[154] = $event => show_15.value = $event),\n title: \"🔎查看share_token在OneAPI信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_form, {\n onSubmit: _ctx.shareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_202, _createVNode(_component_van_field, {\n modelValue: oneApi_name.value,\n \"onUpdate:modelValue\": _cache[139] || (_cache[139] = $event => oneApi_name.value = $event),\n name: \"oneApi中渠道名称\",\n label: \"oneApi中渠道名称\",\n \"input-align\": \"right\",\n placeholder: \"oneApi中渠道名称\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[140] || (_cache[140] = $event => copyToken(oneApi_name.value)),\n rules: [{\n required: true,\n message: '请填写oneApi中渠道名称'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_203, _createVNode(_component_van_field, {\n modelValue: token_value.value,\n \"onUpdate:modelValue\": _cache[141] || (_cache[141] = $event => token_value.value = $event),\n name: \"share_token的值\",\n label: \"share_token的值\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[142] || (_cache[142] = $event => copyToken(token_value.value)),\n placeholder: \"share_token的值\"\n }, null, 8, [\"modelValue\"]), _hoisted_204, _createVNode(_component_van_field, {\n modelValue: token_name.value,\n \"onUpdate:modelValue\": _cache[143] || (_cache[143] = $event => token_name.value = $event),\n name: \"share_token的来源\",\n label: \"share_token的来源\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[144] || (_cache[144] = $event => copyToken(token_name.value)),\n placeholder: \"share_token的值\"\n }, null, 8, [\"modelValue\"]), _hoisted_205, _createVNode(_component_van_field, {\n modelValue: temOneApi_models.value,\n \"onUpdate:modelValue\": _cache[145] || (_cache[145] = $event => temOneApi_models.value = $event),\n name: \"加入的模型\",\n label: \"加入的模型\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[146] || (_cache[146] = $event => copyToken(temOneApi_models.value)),\n placeholder: \"加入的模型\"\n }, null, 8, [\"modelValue\"]), _createElementVNode(\"div\", _hoisted_206, [_hoisted_207, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: model_mapping.value,\n \"onUpdate:modelValue\": _cache[147] || (_cache[147] = $event => model_mapping.value = $event),\n type: \"textarea\",\n autosize: \"\",\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_208]), _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[148] || (_cache[148] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[149] || (_cache[149] = $event => copyToken(priority.value)),\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_209, _createVNode(_component_van_field, {\n modelValue: temOneApi_groups.value,\n \"onUpdate:modelValue\": _cache[150] || (_cache[150] = $event => temOneApi_groups.value = $event),\n name: \"加入的组别\",\n label: \"加入的组别\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[151] || (_cache[151] = $event => copyToken(temOneApi_groups.value)),\n placeholder: \"加入的组别\"\n }, null, 8, [\"modelValue\"]), _hoisted_210, _createVNode(_component_van_field, {\n modelValue: oneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[152] || (_cache[152] = $event => oneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[153] || (_cache[153] = $event => copyToken(oneApi_baseUrl.value)),\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_211]),\n _: 1\n })]),\n _: 1\n }, 8, [\"onSubmit\"])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_16.value,\n \"onUpdate:modelValue\": _cache[161] || (_cache[161] = $event => show_16.value = $event),\n title: \"📌修改share_token在OneAPI的信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_212, [_createVNode(_component_van_form, {\n onSubmit: requireShareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_213, _createElementVNode(\"div\", _hoisted_214, [_createVNode(_component_el_form_item, {\n label: \"Token名\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: token_name.value,\n \"onUpdate:modelValue\": _cache[155] || (_cache[155] = $event => token_name.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择你想要的添加的Token名称\",\n onChange: handleShareNameChange,\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(filteredTableData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.name,\n label: item.name,\n value: item.name,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_215, _createElementVNode(\"div\", _hoisted_216, [_createVNode(_component_el_form_item, {\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: oneApi_models.value,\n \"onUpdate:modelValue\": _cache[156] || (_cache[156] = $event => oneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_217, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: model_mapping.value,\n \"onUpdate:modelValue\": _cache[157] || (_cache[157] = $event => model_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_218, _hoisted_219, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[158] || (_cache[158] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_220, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"oneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: oneApi_groups.value,\n \"onUpdate:modelValue\": _cache[159] || (_cache[159] = $event => oneApi_groups.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_221, _createVNode(_component_van_field, {\n modelValue: oneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[160] || (_cache[160] = $event => oneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_222]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_223, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_17.value,\n \"onUpdate:modelValue\": _cache[175] || (_cache[175] = $event => show_17.value = $event),\n title: \"🔎查看poolToken信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_224, [_createVNode(_component_van_form, null, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_225, _createVNode(_component_van_field, {\n modelValue: temPoolName.value,\n \"onUpdate:modelValue\": _cache[162] || (_cache[162] = $event => temPoolName.value = $event),\n name: \"pool_token名称\",\n label: \"pool_token名称\",\n placeholder: \"pool_token名称\",\n readonly: true,\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[163] || (_cache[163] = $event => copyToken(temPoolName.value))\n }, null, 8, [\"modelValue\"]), _hoisted_226, _createVNode(_component_van_field, {\n modelValue: shareTokens.value,\n \"onUpdate:modelValue\": _cache[164] || (_cache[164] = $event => shareTokens.value = $event),\n label: \"使用token名集合\",\n type: \"textarea\",\n placeholder: \"使用token名集合\",\n \"left-icon\": \"description-o\",\n readonly: true,\n \"input-align\": \"right\",\n onClickLeftIcon: _cache[165] || (_cache[165] = $event => copyToken(temAccessToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"]), _hoisted_227, _createVNode(_component_van_field, {\n modelValue: temPool_token.value,\n \"onUpdate:modelValue\": _cache[166] || (_cache[166] = $event => temPool_token.value = $event),\n readonly: true,\n type: \"textarea\",\n maxlength: \"100\",\n autoSize: \"\",\n name: \"pool_token的值\",\n label: \"pool_token的值\",\n \"input-align\": \"right\",\n placeholder: \"pool_token的值(不改则不变)\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[167] || (_cache[167] = $event => copyToken(temPool_token.value))\n }, null, 8, [\"modelValue\"]), _hoisted_228, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[168] || (_cache[168] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_229, intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_230, [_hoisted_231, _createElementVNode(\"div\", _hoisted_232, [_createVNode(_component_el_form_item, {\n disabled: \"\",\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n disabled: \"\",\n modelValue: poolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[169] || (_cache[169] = $event => poolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_233]),\n _: 1\n }), _hoisted_234, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: poolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[170] || (_cache[170] = $event => poolModel_mapping.value = $event),\n type: \"textarea\",\n disabled: \"\",\n autosize: \"\",\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_235, _createVNode(_component_van_field, {\n readonly: true,\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[171] || (_cache[171] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_236, _createVNode(_component_van_field, {\n readonly: true,\n \"input-align\": \"right\",\n name: \"checkboxGroup\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: temGroupChecked.value,\n \"onUpdate:modelValue\": _cache[172] || (_cache[172] = $event => temGroupChecked.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_237, _createVNode(_component_van_field, {\n readonly: true,\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[173] || (_cache[173] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义PandoraNext地址\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[174] || (_cache[174] = $event => copyToken(oneApi_pandoraUrl.value)),\n rules: [{\n required: true,\n message: '请填写自定义PandoraNext地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_238])) : _createCommentVNode(\"\", true)]),\n _: 1\n })]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"])], 64);\n };\n }\n});","/* unplugin-vue-components disabled */import script from \"./homeIndex.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./homeIndex.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./homeIndex.vue?vue&type=style&index=0&id=7d3a5667&lang=css\"\n\nconst __exports__ = script;\n\nexport default __exports__"],"names":["_hoisted_1","class","_hoisted_2","_","name","content","_hoisted_3","_hoisted_4","_hoisted_5","href","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","style","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","key","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31","_hoisted_32","_hoisted_33","_hoisted_34","_hoisted_35","_hoisted_36","_hoisted_37","_hoisted_38","_hoisted_39","_hoisted_40","_hoisted_41","_hoisted_42","_hoisted_43","_hoisted_44","_hoisted_45","_hoisted_46","_hoisted_47","_hoisted_48","_hoisted_49","_hoisted_50","_hoisted_51","_hoisted_52","_hoisted_53","_hoisted_54","_hoisted_55","_hoisted_56","_hoisted_57","_hoisted_58","_hoisted_59","_hoisted_60","_hoisted_61","_hoisted_62","_hoisted_63","_hoisted_64","_hoisted_65","_hoisted_66","_hoisted_67","_hoisted_68","_hoisted_69","_hoisted_70","_hoisted_71","_hoisted_72","_hoisted_73","_hoisted_74","_hoisted_75","_hoisted_76","_hoisted_77","_hoisted_78","_hoisted_79","_hoisted_80","_hoisted_81","_hoisted_82","_hoisted_83","_hoisted_84","_hoisted_85","_hoisted_86","_hoisted_87","_hoisted_88","_hoisted_89","_hoisted_90","_hoisted_91","_hoisted_92","_hoisted_93","_hoisted_94","_hoisted_95","_hoisted_96","_hoisted_97","_hoisted_98","_hoisted_99","_hoisted_100","_hoisted_101","_hoisted_102","_hoisted_103","_hoisted_104","_hoisted_105","_hoisted_106","_hoisted_107","_hoisted_108","_hoisted_109","_hoisted_110","_hoisted_111","_hoisted_112","_hoisted_113","_hoisted_114","_hoisted_115","_hoisted_116","_hoisted_117","_hoisted_118","_hoisted_119","_hoisted_120","_hoisted_121","_hoisted_122","_hoisted_123","_hoisted_124","_hoisted_125","_hoisted_126","_hoisted_127","_hoisted_128","_hoisted_129","_hoisted_130","_hoisted_131","_hoisted_132","_hoisted_133","_hoisted_134","_hoisted_135","_hoisted_136","_hoisted_137","_hoisted_138","_hoisted_139","_hoisted_140","_hoisted_141","_hoisted_142","_hoisted_143","_hoisted_144","_hoisted_145","_hoisted_146","_hoisted_147","_hoisted_148","_hoisted_149","_hoisted_150","_hoisted_151","_hoisted_152","_hoisted_153","_hoisted_154","_hoisted_155","_hoisted_156","_hoisted_157","_hoisted_158","_hoisted_159","_hoisted_160","_hoisted_161","_hoisted_162","_hoisted_163","_hoisted_164","_hoisted_165","_hoisted_166","_hoisted_167","_hoisted_168","_hoisted_169","_hoisted_170","_hoisted_171","_hoisted_172","_hoisted_173","_hoisted_174","_hoisted_175","_hoisted_176","_hoisted_177","_hoisted_178","_hoisted_179","_hoisted_180","_hoisted_181","_hoisted_182","_hoisted_183","_hoisted_184","_hoisted_185","_hoisted_186","_hoisted_187","_hoisted_188","_hoisted_189","_hoisted_190","_hoisted_191","_hoisted_192","_hoisted_193","_hoisted_194","_hoisted_195","_hoisted_196","_hoisted_197","_hoisted_198","_hoisted_199","_hoisted_200","_hoisted_201","_hoisted_202","_hoisted_203","_hoisted_204","_hoisted_205","_hoisted_206","_hoisted_207","_hoisted_208","_hoisted_209","_hoisted_210","_hoisted_211","_hoisted_212","_hoisted_213","_hoisted_214","_hoisted_215","_hoisted_216","_hoisted_217","_hoisted_218","_hoisted_219","_hoisted_220","_hoisted_221","_hoisted_222","_hoisted_223","_hoisted_224","_hoisted_225","_hoisted_226","_hoisted_227","_hoisted_228","_hoisted_229","_hoisted_230","_hoisted_231","_hoisted_232","_hoisted_233","_hoisted_234","_hoisted_235","_hoisted_236","_hoisted_237","_hoisted_238","temModel_mapping","pandoraNext","tokensTool","validation","__name","setup","__props","path","window","location","pathname","parts","split","prefix","length","temGroupChecked","groupChecked","multipleTableRef","multipleTableRefPool","multipleSelection","multipleSelectionPool","handleSelectionChange","val","value","poolSelectionChange","size","router","show","show_1","show_2","show_3","show_4","show_5","show_6","show_7","show_8","show_9","show_10","show_11","show_12","show_13","show_14","show_15","show_16","show_17","buttonValue","options","label","optionsModel","buttonModel","optionsPoolModel","buttonPoolValue","optionsPool","proxy_api_prefix","isolated_conv_title","bing","timeout","proxy_url","public_share","disable_signup","auto_conv_arkose","proxy_file_service","custom_doh_host","enabled","cert_file","key_file","site_password","setup_password","loginUsername","loginPassword","license_id","isGetToken","getTokenPassword","containerName","autoToken_url","whitelist","provider","site_key","site_secret","site_login","setup_login","oai_username","oai_password","auto_updateSession","auto_updateTime","auto_updateNumber","pandoraNext_outUrl","oneAPi_outUrl","oneAPi_intoToken","poolName","temPoolName","shareTokens","poolTime","poolNameValue","intoOneApi","poolModel_mapping","poolOneApi_models","addPoolOneApi_models","addPoolModel_mapping","oneApi_pandoraUrl","priority","temPool_token","customValidator","regex","test","sitePasswordValidator","poolNameValidator","addPasswordValidator","addSetPoolToken","setPoolToken","temName","temToken","temAccessToken","temShareToken","temUsername","temUserPassword","temShared","temShow_user_info","temPlus","temPassword","useRefreshToken","temCheckSession","tableData","poolData","shareData","loginData","addName","addUsername","addUserPassword","addTokenValue","addShared","addShow_user_info","addPlus","addUseRefreshToken","addPassword","addOneApi_name","addToken_name","addOneApi_baseUrl","addOneApi_models","addModel_mapping","addOneApi_groups","addPriority","innerHeight","valuePool","valueShare","token","localStorage","getItem","replace","headers","Authorization","fetchLoginToken","async","axios","post","then","response","data","code","console","error","catch","onSearch","getWebToken","getToken","includes","getAPIToken","onSearchShareToken","getShare","onSearchPoolToken","getPool","get","data_token","Array","isArray","resUsers","map","item","username","userPassword","access_token","share_token","shared","auto_shared","show_user_info","password","plus","updateTime","checkSession","filteredUsers","filter","user","getLoginData","resLogins","ipAddress","requestIp","outRequestNumber","inRequestNumber","lastLoginTime","responsePool","pool_token","resPools","poolToken","checkPool","loadingInstance","service","fullscreen","responseShare","resShares","oneApi_name","token_name","token_value","oneApi_baseUrl","oneApi_models","model_mapping","oneApi_groups","shareTime","close","getSetting","tls","endsWith","fetchDataAndFillForm","alert","confirmButtonText","callback","action","type","message","getSelectedData","selectedData","addSelectPoolToken","names","userData","JSON","parse","e","addPoolToken","toString","fetch","method","body","stringify","json","msg","handlePoolNameChange","selectedItem","find","handleShareNameChange","filteredTableData","requirePoolToken","log","addShareToken","pandoraUsage","innerWidth","Promise","all","current","total","tableRowClassName","row","poolRowClassName","redirectToExternalLink","open","redirectPandoraNextShare","url","charAt","requirePandoraNextLink","requireTokensToolLink","activeIndex","temRequireToken","handleSelect","keyPath","addToken","onAddToken","now","Date","formattedTime","getFullYear","getMonth","padStart","getDate","getHours","getMinutes","getSeconds","api","success","chart_show","showData","usageHeader","usageData","modelData","usage","startsWith","push","myChart_show","echarts","option","title","text","textStyle","fontSize","color","left","top","tooltip","legend","xAxis","yAxis","series","barWidth","itemStyle","params","colorList","dataIndex","setOption","temOneApi_models","temOneApi_groups","showShareToken","previousSetpoolToken","previousUseRefreshToken","previousToken","handleEdit","index","onRequireSetting","RequireSetting","setting","RequireAutoUpdate","RequireToken","confirm","cancelButtonText","openPandora","closePandora","AgainPandora","reloadPandora","pandoraIp","pandoraTime","getPandoraNext","ip","currentTime","futureTime","getTime","ttl","year","month","day","hours","minutes","seconds","updateAllShareToken","reNewMsg","dangerouslyUseHTMLString","reNew","ok","Error","reNewPool","reviewShare","requireShareToken","requireShare","review","reviewPool","deletePoolToken","verifySimplyPoolToken","deleteToken","put","deleteShareToken","formatDate","nowDay","timeDay","parseISO","daysDiff","differenceInDays","Math","ceil","dataToken","substring","logout","removeItem","getPoolToken","getShareToken","getLogin","redirectToGitHub","copyToken","textarea","document","createElement","appendChild","select","execCommand","removeChild","selectChoice","count","forEach","showPool","selectPoolChoice","selectedPoolData","temPoolData","chart","getUsage","model","myChart","_ctx","_cache","_component_el_menu_item","_component_van_icon","_component_el_sub_menu","_component_h10","_component_el_menu","_component_van_button","_component_el_page_header","_component_el_radio_button","_component_el_radio_group","_component_van_search","_component_el_table_column","_component_el_button","_component_el_tag","_component_el_popover","_component_el_option","_component_el_select","_component_el_button_group","_component_van_field","_component_van_switch","_component_van_cell_group","_component_van_form","_component_van_dialog","_component_CopyDocument","_component_el_icon","_component_el_select_group","_component_el_dialog","_component_el_form_item","_component_el_input","_component_van_checkbox","_component_van_checkbox_group","_directive_loading","mode","ellipsis","onSelect","default","src","alt","onClick","$event","icon","extra","square","modelValue","shape","clearable","placeholder","plain","onSelectionChange","ref_key","ref","prop","width","sortable","scope","circle","effect","trigger","placement","reference","$index","loading","filterable","onSubmit","inset","rules","required","validator","maxlength","autosize","maxHeight","minHeight","round","block","rows","readonly","onClickLeftIcon","disabled","property","multiple","input","direction","onChange","autoSize","Plus","shareToken","__exports__"],"sourceRoot":""}
\ No newline at end of file
diff --git a/rearServer/src/main/resources/static/js/98.13ca7e42.js.map b/rearServer/src/main/resources/static/js/98.13ca7e42.js.map
deleted file mode 100644
index 83cfa39..0000000
--- a/rearServer/src/main/resources/static/js/98.13ca7e42.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"js/98.13ca7e42.js","mappings":"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","sources":["webpack://PandoraNext-TokensTool/./src/views/homeIndex.vue","webpack://PandoraNext-TokensTool/./src/views/homeIndex.vue?32ba"],"sourcesContent":["import \"core-js/modules/es.array.push.js\";\nimport { defineComponent as _defineComponent } from 'vue';\nimport { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, resolveDirective as _resolveDirective, openBlock as _openBlock, createBlock as _createBlock, withDirectives as _withDirectives, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode } from \"vue\";\nimport _imports_0 from '../asserts/openAi.jpg';\nconst _hoisted_1 = {\n class: \"content\"\n};\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"meta\", {\n name: \"viewport\",\n content: \"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no\"\n}, null, -1);\nconst _hoisted_3 = {\n class: \"home-container\"\n};\nconst _hoisted_4 = /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"flex-grow\"\n}, null, -1);\nconst _hoisted_5 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://ai.fakeopen.com/auth\"\n}, \"PandoraNext地址\", -1);\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://chat.openai.com/api/auth/session\"\n}, \"OpenAI官网\", -1);\nconst _hoisted_7 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://github.com/Yanyutin753/PandoraNext-TokensTool\"\n}, \"TokensTool地址\", -1);\nconst _hoisted_8 = {\n class: \"under\"\n};\nconst _hoisted_9 = {\n style: {\n \"display\": \"block\",\n \"transform\": \"translate(5vw, 2.5vh)\"\n }\n};\nconst _hoisted_10 = /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"flex items-center\"\n}, [/*#__PURE__*/_createElementVNode(\"span\", {\n class: \"font-h4\"\n}, \"PandoraNext-TokensTool \"), /*#__PURE__*/_createElementVNode(\"span\", {\n class: \"font-h4-tag\"\n}, \"v0.6.8 \")], -1);\nconst _hoisted_11 = {\n class: \"search\"\n};\nconst _hoisted_12 = {\n style: {\n \"display\": \"flex\",\n \"margin\": \"10px 35px -8px 35px\"\n }\n};\nconst _hoisted_13 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translateX(4vw)\",\n \"width\": \"70vw\",\n \"height\": \"61vh\"\n }\n};\nconst _hoisted_14 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_15 = {\n style: {\n \"margin-left\": \"18px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_16 = {\n style: {\n \"margin\": \"15px 0px 15px 0px\"\n }\n};\nconst _hoisted_17 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"批量操作\", -1);\nconst _hoisted_18 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"全部检查并生成\", -1);\nconst _hoisted_19 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_20 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_21 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_22 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_23 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_24 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_25 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_26 = {\n key: 0\n};\nconst _hoisted_27 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_28 = {\n key: 1\n};\nconst _hoisted_29 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_30 = {\n key: 0\n};\nconst _hoisted_31 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_32 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_33 = {\n key: 2\n};\nconst _hoisted_34 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_35 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_36 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_37 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_38 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_39 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_40 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_41 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_42 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_43 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_44 = {\n key: 0\n};\nconst _hoisted_45 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_46 = {\n key: 1\n};\nconst _hoisted_47 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_48 = {\n key: 0\n};\nconst _hoisted_49 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_50 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_51 = {\n key: 2\n};\nconst _hoisted_52 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_53 = {\n key: 3\n};\nconst _hoisted_54 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_55 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_56 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_57 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_58 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_59 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_60 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_61 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_62 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_63 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_64 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_65 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_66 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_67 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_68 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_69 = {\n key: 0\n};\nconst _hoisted_70 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_71 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_72 = {\n key: 0\n};\nconst _hoisted_73 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_74 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_75 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_76 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_77 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_78 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_79 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_80 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_81 = {\n key: 0\n};\nconst _hoisted_82 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_83 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_84 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_85 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_86 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_87 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_88 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_89 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_90 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_91 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_92 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_93 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_94 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_95 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_96 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_97 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_98 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_99 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_100 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_101 = {\n key: 0\n};\nconst _hoisted_102 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_103 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_104 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_105 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_106 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_107 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_108 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_109 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_110 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_111 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_112 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_113 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_114 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_115 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_116 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_117 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_118 = {\n style: {\n \"transform\": \"translate(0vw, -2vh)\"\n }\n};\nconst _hoisted_119 = {\n style: {\n \"margin-left\": \"15px\",\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_120 = {\n key: 0\n};\nconst _hoisted_121 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"oneApi\", -1);\nconst _hoisted_122 = {\n key: 1\n};\nconst _hoisted_123 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"Json\", -1);\nconst _hoisted_124 = {\n style: {\n \"margin-left\": \"25px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_125 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_126 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_127 = /*#__PURE__*/_createElementVNode(\"span\", {\n style: {\n \"margin-left\": \"0px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n}, \"点击此进行查看\", -1);\nconst _hoisted_128 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"批量操作\", -1);\nconst _hoisted_129 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_130 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_131 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_132 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_133 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_134 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_135 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_136 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_137 = {\n key: 0\n};\nconst _hoisted_138 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_139 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_140 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_141 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_142 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_143 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_144 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_145 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_146 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_147 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_148 = {\n key: 0\n};\nconst _hoisted_149 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_150 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_151 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_152 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_153 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_154 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_155 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_156 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_157 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_158 = {\n style: {\n \"display\": \"flex\"\n }\n};\nconst _hoisted_159 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_160 = {\n style: {\n \"margin-left\": \"0px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_161 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_162 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_163 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_164 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_165 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_166 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_167 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_168 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_169 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_170 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_171 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_172 = {\n key: 0\n};\nconst _hoisted_173 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_174 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_175 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_176 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_177 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_178 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_179 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_180 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_181 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_182 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"添加share_token到OneAPI\", -1);\nconst _hoisted_183 = {\n style: {\n \"margin-left\": \"15px\",\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_184 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_185 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_186 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_187 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_188 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_189 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_190 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_191 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_192 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_193 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_194 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_195 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_196 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_197 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_198 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_199 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_200 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_201 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_202 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_203 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_204 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_205 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_206 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_207 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_208 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_209 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_210 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_211 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_212 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_213 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_214 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_215 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_216 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_217 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_218 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_219 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_220 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_221 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_222 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_223 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_224 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_225 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_226 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_227 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_228 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_229 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_230 = {\n key: 0\n};\nconst _hoisted_231 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_232 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_233 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_234 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_235 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_236 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_237 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_238 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nimport { ref, onMounted } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport axios from \"axios\";\nimport { ElMessage, ElMessageBox } from \"element-plus\";\nimport { differenceInDays, parseISO } from \"date-fns\";\nimport { ElLoading } from \"element-plus\";\nimport { ElTable } from \"element-plus\";\nimport * as echarts from \"echarts\";\nimport { computed } from \"vue\";\nconst temModel_mapping = `此项可选,用于修改请求体中的模型名称,\n 为一个 JSON 字符串,键为请求中模型名称,\n 值为要替换的模型名称,例如:\n {\n \"gpt-3.5-turbo-301\":\"gpt-3.5-turbo\",\n \"gpt-4-8314\":\"gpt-4\", \n \"gpt-4-32k-8314\":\"gpt-4-32k\",\n }`;\nconst pandoraNext = 0;\n//tokensTool 为 0\nconst tokensTool = 1;\n//验证信息\nconst validation = 2;\n/**\r\n * 修改系统设置信息\r\n */\nexport default /*#__PURE__*/_defineComponent({\n __name: 'homeIndex',\n setup(__props) {\n // 导入类\n const path = window.location.pathname; // 假设是 \"/api/getData\"\n const parts = path.split(\"/\"); // 分割路径,得到 [\"\", \"api\", \"getData\"]\n let prefix = \"\"; // 默认值为 \"\"\n if (parts.length >= 3) {\n prefix = \"/\" + parts[1]; // 如果parts长度大于或等于3,获取第一个部分\n }\n\n const temGroupChecked = ref([\"default\", \"svip\", \"vip\"]);\n const groupChecked = ref([\"default\", \"svip\", \"vip\"]);\n const multipleTableRef = ref();\n const multipleTableRefPool = ref();\n const multipleSelection = ref([]);\n const multipleSelectionPool = ref([]);\n const handleSelectionChange = val => {\n multipleSelection.value = val;\n };\n const poolSelectionChange = val => {\n multipleSelectionPool.value = val;\n };\n const size = ref(\"ALL\");\n //pandoraNext 为 0\n const router = useRouter();\n /**\r\n * \r\n * \r\n * \r\n *\r\n */\n const show = ref(false);\n const show_1 = ref(false);\n const show_2 = ref(false);\n const show_3 = ref(false);\n const show_4 = ref(false);\n const show_5 = ref(false);\n const show_6 = ref(false);\n const show_7 = ref(false);\n const show_8 = ref(false);\n const show_9 = ref(false);\n const show_10 = ref(false);\n const show_11 = ref(false);\n const show_12 = ref(false);\n const show_13 = ref(false);\n const show_14 = ref(false);\n const show_15 = ref(false);\n const show_16 = ref(false);\n const show_17 = ref(false);\n /**\r\n * 定义User类接口\r\n */\n const buttonValue = ref(\"\");\n const options = [{\n buttonValue: \"选中删除Token\",\n label: \"选中删除Token\"\n }, {\n buttonValue: \"选中刷新Token\",\n label: \"选中刷新Token\"\n }, {\n buttonValue: \"选中合成pool_token\",\n label: \"选中合成pool_token\"\n }, {\n buttonValue: \"选中修改pool_token\",\n label: \"选中修改pool_token\"\n }];\n const buttonModel = ref(\"\");\n const optionsModel = [{\n buttonModel: \"gpt-3.5-turbo\",\n label: \"gpt-3.5-turbo\"\n }, {\n buttonModel: \"gpt-4-s\",\n label: \"gpt-4-s\"\n }, {\n buttonModel: \"gpt-4-mobile\",\n label: \"gpt-4-mobile\"\n }, {\n buttonModel: \"gpt-4-vision\",\n label: \"gpt-4-vision\"\n }, {\n buttonModel: \"gpt-4-classic\",\n label: \"gpt-4-classic\"\n }, {\n buttonModel: \"gpt-4-vision-preview\",\n label: \"gpt-4-vision-preview\"\n }];\n const optionsPoolModel = [{\n buttonModel: \"gpt-3.5-turbo\",\n label: \"gpt-3.5-turbo\"\n }, {\n buttonModel: \"gpt-4\",\n label: \"gpt-4\"\n }];\n const buttonPoolValue = ref(\"\");\n const optionsPool = [{\n buttonPoolValue: \"选中检查pool_token\",\n label: \"选中检查pool_token\"\n }, {\n buttonPoolValue: \"选中删除pool_token\",\n label: \"选中删除pool_token\"\n }, {\n buttonPoolValue: \"选中刷新pool_token\",\n label: \"选中刷新pool_token\"\n }, {\n buttonPoolValue: \"选中更换pool_token\",\n label: \"选中更换pool_token\"\n }];\n /**\r\n * 定义Pool类接口\r\n */\n const proxy_api_prefix = ref(\"\");\n const isolated_conv_title = ref(\"*\");\n const bing = ref(\"\");\n const timeout = ref(\"\");\n const proxy_url = ref(\"\");\n const public_share = ref(false);\n //0.4.9.2\n const disable_signup = ref(false);\n const auto_conv_arkose = ref(false);\n const proxy_file_service = ref(false);\n const custom_doh_host = ref(\"\");\n const enabled = ref(false);\n const cert_file = ref(\"\");\n const key_file = ref(\"\");\n const site_password = ref(\"\");\n const setup_password = ref(\"\");\n const loginUsername = ref(\"\");\n const loginPassword = ref(\"\");\n const license_id = ref(\"\");\n //0.4.8.2\n const isGetToken = ref(false);\n const getTokenPassword = ref(\"\");\n const containerName = ref(\"PandoraNext\");\n const autoToken_url = ref(\"default\");\n const whitelist = ref(\"\");\n const provider = ref(\"\");\n const site_key = ref(\"\");\n const site_secret = ref(\"\");\n const site_login = ref(false);\n const setup_login = ref(false);\n const oai_username = ref(false);\n const oai_password = ref(false);\n //0.4.9.3\n const auto_updateSession = ref(false);\n const auto_updateTime = ref(5);\n const auto_updateNumber = ref(1);\n const pandoraNext_outUrl = ref(\"\");\n const oneAPi_outUrl = ref(\"\");\n const oneAPi_intoToken = ref(\"\");\n // 0.4.8\n const poolName = ref(\"\");\n const temPoolName = ref(\"\");\n const shareTokens = ref(\"\");\n const poolToken = ref(\"\");\n const poolTime = ref(\"\");\n const checkPool = ref(true);\n // 0.5.0\n //上传oneApi\n const poolNameValue = ref(\"\");\n const intoOneApi = ref(false);\n const poolModel_mapping = ref(\"\");\n const poolOneApi_models = ref([]);\n const addPoolOneApi_models = ref([]);\n const addPoolModel_mapping = ref(\"\");\n const oneApi_pandoraUrl = ref(pandoraNext_outUrl.value + proxy_api_prefix.value);\n const priority = ref(0);\n const temPool_token = ref(\"\");\n // 自定义校验函数,直接返回错误提示\n const customValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n const sitePasswordValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (regex.test(value) || value == \"\") {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n const poolNameValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^[\\u4e00-\\u9fa5a-zA-Z0-9]{3,10}$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字\";\n }\n };\n const addPasswordValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (addSetPoolToken.value == true || setPoolToken.value == true || regex.test(value)) {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n /**\r\n * 查看或者修改token信息参数\r\n */\n const temName = ref(\"\");\n const temToken = ref(\"\");\n const temAccessToken = ref(\"\");\n const temShareToken = ref(\"\");\n const temUsername = ref(\"\");\n const temUserPassword = ref(\"\");\n const temShared = ref(false);\n const temShow_user_info = ref(false);\n const temPlus = ref(false);\n const temPassword = ref(\"\");\n const setPoolToken = ref(false);\n const useRefreshToken = ref(false);\n const temCheckSession = ref(true);\n const tableData = ref([]);\n // 0.4.8\n const poolData = ref([]);\n const shareData = ref([]);\n // 0.5.9\n const loginData = ref([]);\n /**\r\n * 添加用户信息参数\r\n */\n const addName = ref(\"\");\n const addUsername = ref(\"\");\n const addUserPassword = ref(\"\");\n const addTokenValue = ref(\"\");\n const addShared = ref(false);\n const addShow_user_info = ref(false);\n const addPlus = ref(false);\n const addSetPoolToken = ref(false);\n const addUseRefreshToken = ref(false);\n const addPassword = ref(\"\");\n /**\r\n * 添加用户信息参数\r\n */\n const addOneApi_name = ref(\"\");\n const addToken_name = ref(\"\");\n const addToken_value = ref(\"\");\n const addOneApi_baseUrl = ref(\"\");\n const addOneApi_models = ref([]);\n const addModel_mapping = ref(\"\");\n const addOneApi_groups = ref([\"default\", \"svip\", \"vip\"]);\n const addPriority = ref(0);\n //Pandora的icon大小\n const iconSize = ref(window.innerHeight * 0.085);\n //搜索值\n const value = ref(\"\");\n const valuePool = ref(\"\");\n const valueShare = ref(\"\");\n /**\r\n * 用jwt令牌验证身份\r\n * 未通过者返回到/\r\n */\n const token = localStorage.getItem(\"jwtToken\"); // 从localStorage获取JWT令牌\n if (!token) {\n router.replace(`/`);\n }\n const headers = {\n Authorization: `Bearer ${token}`\n };\n /**\r\n * 用jwt令牌验证身份函数\r\n */\n const fetchLoginToken = async () => {\n axios.post(`https://yubb.fun${prefix}/api/loginToken?token=` + token).then(response => {\n if (response.data.code == 0) {\n console.error(response.data.data);\n router.replace(`/`);\n return;\n }\n }).catch(error => {\n console.error(\"请求loginToken接口失败\", error);\n router.replace(`/`);\n });\n };\n const onSearch = value => {\n if (value == \"Web\" || value == \"WEB\") {\n getWebToken(\"\");\n } else if (value == \"ALL\" || value == \"All\") {\n getToken(\"\");\n } else if (value.includes(\"API\")) {\n getAPIToken(\"\");\n } else {\n getToken(value);\n }\n };\n const onSearchShareToken = value => {\n getShare(value);\n };\n const onSearchPoolToken = value => {\n getPool(value);\n };\n /**\r\n * 获取数据操作,并把数据返回到tableData\r\n * 用于展示\r\n */\n const getToken = async value => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 将用户数据添加到tableData\n tableData.value = resUsers;\n }\n };\n const getAPIToken = async value => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 使用 filter 方法筛选出 setPoolToken 等于 true 的用户\n const filteredUsers = resUsers.filter(user => user.setPoolToken === true);\n // 将筛选后的用户数据添加到 tableData\n tableData.value = filteredUsers;\n }\n };\n const getWebToken = async value => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 使用 filter 方法筛选出 setPoolToken 等于 true 的用户\n const filteredUsers = resUsers.filter(user => user.setPoolToken === false);\n // 将筛选后的用户数据添加到 tableData\n tableData.value = filteredUsers;\n }\n };\n /**\r\n * 获取数据操作\r\n * 用于日志数据展示\r\n */\n const getLoginData = async () => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectLogin`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resLogins = data_token.map(item => ({\n ipAddress: item.ipAddress,\n requestIp: item.requestIp,\n outRequestNumber: item.outRequestNumber,\n inRequestNumber: item.inRequestNumber,\n lastLoginTime: item.lastLoginTime\n }));\n // 将用户数据添加到tableData\n loginData.value = resLogins;\n }\n };\n const getPool = async value => {\n const responsePool = await axios.get(`https://yubb.fun${prefix}/api/selectPoolToken?name=${value}`, {\n headers\n });\n const pool_token = responsePool.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(pool_token)) {\n const resPools = pool_token.map(item => ({\n poolName: item.poolName,\n poolTime: item.poolTime,\n poolToken: item.poolToken,\n shareTokens: item.shareTokens,\n checkPool: item.checkPool,\n intoOneApi: item.intoOneApi,\n poolOneApi_models: item.poolOneApi_models,\n poolModel_mapping: item.poolModel_mapping,\n oneApi_pandoraUrl: item.oneApi_pandoraUrl,\n groupChecked: item.groupChecked,\n priority: item.priority\n }));\n // 将用户数据添加到poolData\n poolData.value = resPools;\n }\n };\n const getShare = async value => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const responseShare = await axios.get(`https://yubb.fun${prefix}/api/selectShareToken?name=${value}`, {\n headers\n });\n const share_token = responseShare.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(share_token)) {\n const resShares = share_token.map(item => ({\n oneApi_name: item.oneApi_name,\n token_name: item.token_name,\n token_value: item.token_value,\n oneApi_baseUrl: item.oneApi_baseUrl,\n oneApi_models: item.oneApi_models,\n model_mapping: item.model_mapping,\n oneApi_groups: item.oneApi_groups,\n shareTime: item.shareTime,\n priority: item.priority\n }));\n // 将用户数据添加到poolData\n shareData.value = resShares;\n }\n loadingInstance.close();\n };\n const getSetting = async value => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectSetting`, {\n headers\n });\n const data = response.data.data;\n proxy_api_prefix.value = data.proxy_api_prefix;\n isolated_conv_title.value = data.isolated_conv_title;\n bing.value = data.bing;\n timeout.value = data.timeout;\n proxy_url.value = data.proxy_url;\n public_share.value = data.public_share;\n //0.4.9.2\n disable_signup.value = data.disable_signup;\n auto_conv_arkose.value = data.auto_conv_arkose;\n proxy_file_service.value = data.proxy_file_service;\n custom_doh_host.value = data.custom_doh_host;\n enabled.value = data.tls.enabled;\n cert_file.value = data.tls.cert_file;\n key_file.value = data.tls.key_file;\n site_password.value = data.site_password;\n setup_password.value = data.setup_password;\n if (data.whitelist == null) {\n whitelist.value = \"null\";\n } else whitelist.value = data.whitelist;\n loginUsername.value = data.loginUsername;\n loginPassword.value = data.loginPassword;\n license_id.value = data.license_id;\n //0.4.8.2\n isGetToken.value = data.isGetToken;\n getTokenPassword.value = data.getTokenPassword;\n containerName.value = data.containerName;\n autoToken_url.value = data.autoToken_url;\n provider.value = data.validation.provider;\n site_key.value = data.validation.site_key;\n site_secret.value = data.validation.site_secret;\n site_login.value = data.validation.site_login;\n setup_login.value = data.validation.setup_login;\n oai_username.value = data.validation.oai_username;\n oai_password.value = data.validation.oai_password;\n //0.4.9.3\n auto_updateSession.value = data.auto_updateSession;\n auto_updateTime.value = data.auto_updateTime;\n auto_updateNumber.value = data.auto_updateNumber;\n pandoraNext_outUrl.value = data.pandoraNext_outUrl;\n if (!pandoraNext_outUrl.value.endsWith(\"/\")) {\n oneApi_pandoraUrl.value = pandoraNext_outUrl.value + \"/\" + proxy_api_prefix.value;\n } else {\n oneApi_pandoraUrl.value = pandoraNext_outUrl.value + proxy_api_prefix.value;\n }\n //0.5.0\n oneAPi_outUrl.value = data.oneAPi_outUrl;\n oneAPi_intoToken.value = data.oneAPi_intoToken;\n fetchDataAndFillForm();\n };\n const fetchDataAndFillForm = async () => {\n if (loginPassword.value == \"123456\" && loginUsername.value == \"root\") {\n ElMessageBox.alert(\"请先修改默认的初始账号和密码,并填写相应的信息,具体可参考网站文档!\", \"温馨提醒\", {\n confirmButtonText: \"确定\",\n callback: action => {\n ElMessage({\n type: \"info\",\n message: `如果不知道怎么填的话,可以看tokensTool的文档站!`\n });\n }\n });\n show_4.value = true;\n loginPassword.value = \"\";\n loginUsername.value = \"\";\n }\n };\n const getSelectedData = () => {\n const selectedData = multipleSelection.value;\n if (selectedData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n } else {\n show_9.value = true;\n }\n };\n const addSelectPoolToken = async () => {\n try {\n const selectedData = multipleSelection.value;\n const names = selectedData.map(userData => userData.name);\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n if (addPoolModel_mapping.value == \"\") {\n addPoolModel_mapping.value = \"{}\";\n }\n JSON.parse(addPoolModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const addPoolToken = {\n poolName: poolNameValue.value,\n intoOneApi: intoOneApi.value,\n poolOneApi_models: addPoolOneApi_models.value.toString(),\n poolModel_mapping: addPoolModel_mapping.value,\n oneApi_pandoraUrl: oneApi_pandoraUrl.value,\n shareTokens: names,\n groupChecked: groupChecked.value.toString(),\n priority: priority.value\n };\n const response = await fetch(`https://yubb.fun${prefix}/api/addPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addPoolToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n poolNameValue.value = \"\";\n getPool(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n poolNameValue.value = \"\";\n intoOneApi.value = false;\n poolModel_mapping.value = \"\";\n poolOneApi_models.value = [];\n groupChecked.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n loadingInstance.close();\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消生成pool_token\"\n });\n }\n show_9.value = false;\n };\n const handlePoolNameChange = poolNameValue => {\n let selectedItem = poolData.value.find(item => item.poolName === poolNameValue);\n if (selectedItem != null) {\n temPool_token.value = selectedItem.poolToken;\n intoOneApi.value = selectedItem.intoOneApi;\n poolOneApi_models.value = selectedItem.poolOneApi_models.split(\",\");\n poolModel_mapping.value = selectedItem.poolModel_mapping;\n oneApi_pandoraUrl.value = selectedItem.oneApi_pandoraUrl;\n temGroupChecked.value = selectedItem.groupChecked.split(\",\");\n priority.value = selectedItem.priority;\n }\n };\n const handleShareNameChange = addToken_name => {\n let selectedItem = tableData.value.find(item => item.name === addToken_name && item.setPoolToken === true);\n };\n const filteredTableData = computed(() => {\n return tableData.value.filter(item => item.setPoolToken === true);\n });\n const requirePoolToken = async () => {\n try {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n if (poolModel_mapping.value == \"\") {\n poolModel_mapping.value = \"{}\";\n }\n JSON.parse(poolModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const selectedData = multipleSelection.value;\n const names = selectedData.map(userData => userData.name);\n const addPoolToken = {\n poolName: poolName.value,\n poolToken: temPool_token.value,\n intoOneApi: intoOneApi.value,\n poolOneApi_models: poolOneApi_models.value.toString(),\n poolModel_mapping: poolModel_mapping.value,\n oneApi_pandoraUrl: oneApi_pandoraUrl.value,\n shareTokens: names,\n groupChecked: temGroupChecked.value.toString(),\n priority: priority.value\n };\n console.log(addPoolToken);\n const response = await fetch(`https://yubb.fun${prefix}/api/requirePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addPoolToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n getPool(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n poolName.value = \"\";\n temPool_token.value = \"\";\n intoOneApi.value = false;\n poolOneApi_models.value = [];\n poolModel_mapping.value = \"\";\n groupChecked.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n loadingInstance.close();\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消修改pool_token\"\n });\n }\n show_11.value = false;\n };\n const addShareToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n try {\n if (addModel_mapping.value == \"\") {\n addModel_mapping.value = \"{}\";\n }\n JSON.parse(addModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const addShareToken = {\n oneApi_name: addOneApi_name.value,\n token_name: addToken_name.value,\n oneApi_baseUrl: addOneApi_baseUrl.value,\n oneApi_models: addOneApi_models.value.toString(),\n model_mapping: addModel_mapping.value,\n oneApi_groups: addOneApi_groups.value.toString(),\n priority: priority.value\n };\n const response = await fetch(`https://yubb.fun${prefix}/api/addShareToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addShareToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n getShare(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n addOneApi_name.value = \"\";\n addToken_name.value = \"\";\n addOneApi_baseUrl.value = \"\";\n addOneApi_models.value = [];\n addModel_mapping.value = \"\";\n addOneApi_groups.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消修改pool_token\"\n });\n }\n show_14.value = false;\n loadingInstance.close();\n };\n const pandoraUsage = ref(\"\");\n // 在组件加载完成后自动触发数据加载和填充\n onMounted(async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n // 页面重定向\n fetchLoginToken();\n if (window.innerWidth <= 900) {\n router.replace(\"/iphone\");\n } else {\n router.replace(\"/home\");\n }\n try {\n // 并行执行不依赖的函数\n await Promise.all([onSearch(value.value), getPool(value.value), getSetting(value.value)]);\n // 等待获取 Pandora 数据\n const response = await axios.get(`https://yubb.fun${prefix}/api/getPandoraNext`, {\n headers\n });\n const data = response.data.data;\n if (data != null) {\n pandoraUsage.value = `${data.current}/${data.total}`;\n }\n } catch (error) {\n console.error(\"An error occurred:\", error);\n // 这里可以添加错误处理逻辑\n } finally {\n loadingInstance.close();\n }\n });\n //用来警告session过期\n const tableRowClassName = ({\n row\n }) => {\n if (row.checkSession == false) {\n return \"warning-row\";\n }\n return \"\";\n };\n const poolRowClassName = ({\n row\n }) => {\n if (row.checkPool == false) {\n return \"warning-row\";\n }\n return \"\";\n };\n /**\r\n * 跳转到PandoraNext\r\n */\n const redirectToExternalLink = () => {\n window.open(pandoraNext_outUrl.value);\n };\n /**\r\n * 跳转到PandoraNext分享页\r\n */\n const redirectPandoraNextShare = () => {\n var url = pandoraNext_outUrl.value;\n // 检查最后一个字符是否是 /\n if (url.charAt(url.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n url += \"/\";\n }\n window.open(url + \"shared.html\");\n };\n /**\r\n * 跳转到PandoraNext\r\n */\n const requirePandoraNextLink = () => {\n var url = pandoraNext_outUrl.value;\n // 检查最后一个字符是否是 /\n if (url.charAt(url.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n url += \"/\";\n }\n window.open(url + \"setup\");\n };\n /**\r\n * 跳转到tokensTool使用说明\r\n */\n const requireTokensToolLink = () => {\n window.open(\"https://apifox.com/apidoc/shared-40345b46-9c9c-45cc-b494-6a6a387a978f\");\n };\n /**\r\n * 用于用户信息设置\r\n */\n const activeIndex = ref(\"-1\");\n let temRequireToken = \"\";\n const handleSelect = (key, keyPath) => {\n console.log(\"选择准备!\");\n };\n /**\r\n * 添加token开启函数\r\n * 类user\r\n */\n const addToken = () => {\n show_1.value = true;\n };\n /**\r\n * 添加token函数\r\n * 类user\r\n */\n const onAddToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const now = new Date();\n const formattedTime = `${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, \"0\")}-${now.getDate().toString().padStart(2, \"0\")} ${now.getHours().toString().padStart(2, \"0\")}:${now.getMinutes().toString().padStart(2, \"0\")}:${now.getSeconds().toString().padStart(2, \"0\")}`;\n if (addPassword.value != \"\") {\n addShared.value = false;\n addPlus.value = false;\n addShow_user_info.value = false;\n }\n if (addSetPoolToken.value == false) {\n addTokenValue.value = addUsername.value + \",\" + addUserPassword.value;\n addUseRefreshToken.value = false;\n addShared.value = false;\n addPlus.value = false;\n addShow_user_info.value = false;\n }\n let api = {\n name: addName.value,\n token: addTokenValue.value,\n username: addUsername.value,\n userPassword: addUserPassword.value,\n shared: addShared.value,\n auto_shared: addShared.value,\n show_user_info: addShow_user_info.value,\n plus: addPlus.value,\n setPoolToken: addSetPoolToken.value,\n useRefreshToken: addUseRefreshToken.value,\n password: addPassword.value,\n updateTime: formattedTime\n };\n fetch(`https://yubb.fun${prefix}/api/addToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(api)\n }).then(response => response.json()) // 将 .json() 放在正确的位置\n .then(data => {\n if (data.code == 1) {\n ElMessage.success(\"添加成功!\");\n addName.value = \"\";\n addTokenValue.value = \"\";\n addUsername.value = \"\";\n addUserPassword.value = \"\";\n addShared.value = false;\n addShow_user_info.value = false;\n addPlus.value = false;\n addSetPoolToken.value = false;\n addUseRefreshToken.value = false;\n addPassword.value = \"\";\n if (api.token == \"\") {\n api.token = data.data;\n ElMessage.success(\"已为您自动装填token!\");\n }\n } else {\n ElMessage.error(data.msg);\n }\n addPassword.value = \"\";\n getToken(\"\");\n loadingInstance.close();\n }).catch(error => {\n ElMessage.error(\"获取账号出现问题,请检查刷新网址是否正确!\");\n loadingInstance.close();\n });\n show_1.value = false;\n };\n /**\r\n * 展示token函数\r\n * 类user\r\n */\n const chart_show = ref(null);\n const showData = async row => {\n temName.value = row.name;\n temUsername.value = row.username;\n temUserPassword.value = row.userPassword;\n temToken.value = row.token;\n temAccessToken.value = row.access_token;\n temShareToken.value = row.share_token;\n temShared.value = row.shared;\n temShow_user_info.value = row.show_user_info;\n temPlus.value = row.plus;\n temPassword.value = row.password;\n setPoolToken.value = row.setPoolToken;\n useRefreshToken.value = row.useRefreshToken;\n temCheckSession.value = row.checkSession;\n if (setPoolToken.value != true) {\n show_2.value = true;\n return;\n }\n const usageHeader = {\n Authorization: `Bearer ${row.access_token}`\n };\n show_2.value = true;\n if (setPoolToken.value) {\n const response = await axios.get(`${oneApi_pandoraUrl.value}/api/token/info/${row.share_token}`, {\n headers: usageHeader\n });\n let usageData = [];\n let modelData = [];\n for (let key in response.data.usage) {\n if (!key.startsWith(\"range\")) {\n modelData.push(key);\n usageData.push(response.data.usage[key]);\n }\n }\n if (modelData.length == 0 && usageData.length == 0) {\n modelData = [\"gpt-4\", \"gpt-3.5-turbo\", \"gpt-3.5-turbo-0613\"];\n usageData = [0, 0, 0];\n }\n const myChart_show = echarts.init(chart_show.value);\n const option = {\n title: {\n text: `今日${response.data.usage[\"range\"]} ${temName.value}各模型用量`,\n textStyle: {\n // 调整字体大小\n fontSize: 14,\n color: \"#606266\" // 这里是深灰色,你可以根据需要更改颜色\n },\n\n // 设置标题位置\n left: \"center\",\n top: \"bottom\" // 放在底部\n },\n\n tooltip: {},\n legend: {\n data: modelData\n },\n xAxis: {\n data: modelData\n },\n yAxis: {},\n series: [{\n name: \"对话数量\",\n type: \"bar\",\n data: usageData,\n barWidth: \"25%\",\n itemStyle: {\n color: function (params) {\n const colorList = [\"#3498db\", \"#2ecc71\", \"#f1c40f\", \"#9b59b6\", \"#1abc9c\", \"#e67e22\", \"#ecf0f1\", \"#95a5a6\", \"#34495e\", \"#16a085\"];\n return colorList[params.dataIndex % colorList.length];\n }\n }\n }]\n };\n myChart_show.setOption(option);\n }\n };\n const oneApi_name = ref(\"\");\n const token_name = ref(\"\");\n const token_value = ref(\"\");\n const oneApi_baseUrl = ref(\"\");\n const oneApi_models = ref([]);\n const model_mapping = ref(\"\");\n const temOneApi_models = ref(\"\");\n const temOneApi_groups = ref(\"\");\n const oneApi_groups = ref([\"default\", \"svip\", \"vip\"]);\n const shareTime = ref(\"\");\n const showShareToken = row => {\n oneApi_name.value = row.oneApi_name;\n token_name.value = row.token_name;\n token_value.value = row.token_value;\n oneApi_baseUrl.value = row.oneApi_baseUrl;\n temOneApi_models.value = row.oneApi_models;\n model_mapping.value = row.model_mapping;\n temOneApi_groups.value = row.oneApi_groups;\n priority.value = row.priority;\n shareTime.value = row.shareTime;\n show_15.value = true;\n };\n let previousSetpoolToken = false;\n let previousUseRefreshToken = false;\n let previousToken = \"\";\n //编辑准备\n const handleEdit = (index, row) => {\n temName.value = row.name;\n temUsername.value = row.username;\n temUserPassword.value = row.userPassword;\n //用来判断token是否更改\n temToken.value = row.token;\n temRequireToken = row.token;\n temShared.value = row.shared;\n temShow_user_info.value = row.show_user_info;\n temPlus.value = row.plus;\n temPassword.value = row.password;\n setPoolToken.value = row.setPoolToken;\n useRefreshToken.value = row.useRefreshToken;\n previousSetpoolToken = setPoolToken.value;\n previousUseRefreshToken = useRefreshToken.value;\n previousToken = temToken.value;\n temCheckSession.value = row.checkSession;\n temAccessToken.value = row.access_token;\n temShareToken.value = row.share_token;\n show.value = true;\n };\n /**\r\n * 修改系统设置函数\r\n */\n const onRequireSetting = async value => {\n if (value == 0) {\n show_3.value = true;\n } else if (value == 1) {\n show_4.value = true;\n } else if (value == 2) {\n show_5.value = true;\n }\n };\n const RequireSetting = value => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n if (whitelist.value == null || whitelist.value == \"null\") {\n whitelist.value = \"\";\n }\n if (enabled.value == false) {\n cert_file.value = \"\";\n key_file.value = \"\";\n }\n const tls = {\n enabled: enabled.value,\n cert_file: cert_file.value,\n key_file: key_file.value\n };\n const validation = {\n provider: provider.value,\n site_key: site_key.value,\n site_secret: site_secret.value,\n site_login: site_login.value,\n setup_login: setup_login.value,\n oai_username: oai_username.value,\n oai_password: oai_password.value\n };\n const setting = {\n proxy_api_prefix: proxy_api_prefix.value,\n isolated_conv_title: isolated_conv_title.value,\n bing: bing.value,\n timeout: timeout.value,\n proxy_url: proxy_url.value,\n public_share: public_share.value,\n site_password: site_password.value,\n setup_password: setup_password.value,\n loginUsername: loginUsername.value,\n loginPassword: loginPassword.value,\n license_id: license_id.value,\n //0.4.9.2\n disable_signup: disable_signup.value,\n auto_conv_arkose: auto_conv_arkose.value,\n proxy_file_service: proxy_file_service.value,\n custom_doh_host: custom_doh_host.value,\n //0.4.8.2\n isGetToken: isGetToken.value,\n getTokenPassword: getTokenPassword.value,\n containerName: containerName.value,\n autoToken_url: autoToken_url.value,\n whitelist: whitelist.value,\n validation: validation,\n tls: tls\n };\n fetch(`https://yubb.fun${prefix}/api/requireSetting`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(setting)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n } else {\n ElMessage.error(data.msg);\n }\n fetchLoginToken();\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求requireSetting接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n if (value == 0) {\n show_3.value = false;\n } else if (value == 1) {\n show_4.value = false;\n } else if (value == 2) {\n show_5.value = false;\n }\n };\n const RequireAutoUpdate = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n // 检查最后一个字符是否是 /\n if (pandoraNext_outUrl.value.charAt(pandoraNext_outUrl.value.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n pandoraNext_outUrl.value += \"/\";\n }\n const setting = {\n auto_updateSession: auto_updateSession.value,\n auto_updateTime: auto_updateTime.value,\n auto_updateNumber: auto_updateNumber.value,\n pandoraNext_outUrl: pandoraNext_outUrl.value,\n oneAPi_outUrl: oneAPi_outUrl.value,\n oneAPi_intoToken: oneAPi_intoToken.value\n };\n fetch(`https://yubb.fun${prefix}/api/controllerTask`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(setting)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n } else {\n ElMessage.error(data.msg);\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求controllerTask接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n show_8.value = false;\n };\n /**\r\n * 修改token函数\r\n * 类user\r\n */\n const RequireToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let formattedTime = \"\";\n if (temRequireToken != temToken.value) {\n const now = new Date();\n formattedTime = `${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, \"0\")}-${now.getDate().toString().padStart(2, \"0\")} ${now.getHours().toString().padStart(2, \"0\")}:${now.getMinutes().toString().padStart(2, \"0\")}:${now.getSeconds().toString().padStart(2, \"0\")}`;\n }\n if (setPoolToken.value == false) {\n temShared.value = false;\n temPlus.value = false;\n temShow_user_info.value = false;\n useRefreshToken.value = false;\n }\n if (temShared.value === true) {\n temPassword.value = \"\";\n } else {\n temPlus.value = false;\n temShow_user_info.value = false;\n }\n let msg = \"\";\n if (previousSetpoolToken != setPoolToken.value && previousToken == temToken.value) {\n if (setPoolToken.value == false) {\n msg = \"您确定要关闭API模型开启web模式,您将无法生成任何的token,但不消耗额度!\";\n } else {\n if (useRefreshToken.value == true) {\n msg = \"您确定要开启API模式,并使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!\";\n } else {\n msg = \"您确定要开启API模式,并使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!\";\n }\n }\n } else if (previousUseRefreshToken != useRefreshToken.value && previousToken == temToken.value) {\n if (useRefreshToken.value == true) {\n msg = \"您确定要切换使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!\";\n } else {\n msg = \"您确定要切换使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!\";\n }\n } else {\n msg = \"修改将要提交,您确定修改好了吗?\";\n }\n ElMessageBox.confirm(msg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const api = {\n name: temName.value,\n token: temToken.value,\n username: temUsername.value,\n userPassword: temUserPassword.value,\n shared: temShared.value,\n auto_shared: temShared.value,\n show_user_info: temShow_user_info.value,\n plus: temPlus.value,\n setPoolToken: setPoolToken.value,\n useRefreshToken: useRefreshToken.value,\n checkSession: temCheckSession.value,\n password: temPassword.value,\n access_token: temAccessToken.value,\n share_token: temShareToken.value\n };\n fetch(`https://yubb.fun${prefix}/api/requiredToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(api)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n getToken(\"\");\n } else {\n ElMessage.error(data.msg);\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求requireToken接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n show.value = false;\n }).catch(() => {\n loadingInstance.close();\n ElMessage({\n type: \"info\",\n message: \"编辑取消!\"\n });\n return;\n });\n };\n /**\r\n * 开启pandora函数\r\n */\n const openPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/open`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 暂停pandora函数\r\n */\n const closePandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/close`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 重启pandora函数\r\n */\n const AgainPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/restart`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 重载pandora函数\r\n */\n const reloadPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/reload`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 查询pandoraNext余额函数\r\n */\n const pandoraIp = ref(\"\");\n const pandoraTime = ref(\"\");\n const getPandoraNext = async () => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/getPandoraNext`, {\n headers\n });\n const data = response.data.data;\n if (data != null) {\n pandoraUsage.value = data.current + \"/\" + data.total;\n pandoraIp.value = data.ip;\n var currentTime = new Date();\n const futureTime = new Date(currentTime.getTime() + data.ttl * 1000);\n var year = futureTime.getFullYear();\n var month = futureTime.getMonth() + 1; // 月份是从0开始的,所以要加1\n var day = futureTime.getDate();\n var hours = futureTime.getHours();\n var minutes = futureTime.getMinutes();\n var seconds = futureTime.getSeconds();\n pandoraTime.value = year + \"-\" + month + \"-\" + day + \" \" + hours + \":\" + minutes + \":\" + seconds;\n }\n show_7.value = true;\n };\n /**\r\n * 一键全生成\r\n */\n const updateAllShareToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/updateAllToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n await Promise.all([getToken(\"\"), getPool(\"\")]);\n ElMessageBox.alert(data, \"温馨提示\", {\n dangerouslyUseHTMLString: true\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 一键全刷新pool_token\r\n */\n const updateAllPoolToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/updateAllPoolToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n getPool(\"\");\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 一键全检查pool_token\r\n */\n const verifyAllPoolToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/verifyAllPoolToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n getPool(\"\");\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 刷新Token函数\r\n */\n const reNew = row => {\n if (row.setPoolToken == false) {\n ElMessage.error(\"未开启API模式,无法刷新\");\n return;\n }\n let reNewMsg = \"您确定要刷新session_token吗,刷新session_token消耗100额度,请您要仔细认真考虑哦!\";\n if (row.useRefreshToken) {\n reNewMsg = \"您确定要刷新refresh_token吗,刷新refresh_token消耗1000额度,请您要仔细认真考虑哦!\";\n }\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/updateSessionToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n row.token = data.data;\n getToken(\"\");\n ElMessageBox.alert(\"刷新成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n };\n /**\r\n * 刷新Token函数\r\n */\n const reNewPool = row => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/refreshSimplyPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(\"刷新成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n const reviewShare = row => {\n oneApi_name.value = row.oneApi_name;\n token_name.value = row.token_name;\n token_value.value = row.token_value;\n oneApi_baseUrl.value = row.oneApi_baseUrl;\n oneApi_models.value = row.oneApi_models.split(\",\");\n model_mapping.value = row.model_mapping;\n oneApi_groups.value = row.oneApi_groups.split(\",\");\n priority.value = row.priority;\n shareTime.value = row.shareTime;\n show_16.value = true;\n };\n const requireShareToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const requireShare = {\n oneApi_name: oneApi_name.value,\n token_name: token_name.value,\n token_value: token_value.value,\n oneApi_baseUrl: oneApi_baseUrl.value,\n oneApi_models: oneApi_models.value.toString(),\n model_mapping: model_mapping.value,\n oneApi_groups: oneApi_groups.value.toString(),\n priority: priority.value\n };\n fetch(`https://yubb.fun${prefix}/api/requireShareToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(requireShare)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n getShare(\"\");\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n show_16.value = false;\n };\n /**\r\n * 生成token操作\r\n */\n const review = row => {\n if (row.setPoolToken == false) {\n ElMessage.error(\"未开启API模式,无法生成\");\n return;\n }\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/updateToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n ElMessageBox.alert(\"生成shareToken成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n getToken(\"\");\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 更新token操作\r\n */\n const reviewPool = row => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/changePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(\"更换pool_token成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 删除PoolToken函数\r\n * 参数 Pool\r\n */\n const deletePoolToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个Pool_Token吗,删除之后就找不到咯,请您要仔细认真考虑哦!\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n fetch(`https://yubb.fun${prefix}/api/deletePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data.data != null) {\n getPool(\"\");\n ElMessage.success(data.data);\n loadingInstance.close();\n } else {\n getPool(\"\");\n ElMessage.error(data.msg);\n loadingInstance.close();\n }\n show_9.value = false;\n }).catch(error => {\n // 处理完成失败的逻辑\n console.error(\"删除失败\", error);\n getPool(\"\");\n loadingInstance.close();\n show_9.value = false;\n });\n }).catch(() => {\n loadingInstance.close();\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n });\n };\n /**\r\n * 删除PoolToken函数\r\n * 参数 Pool\r\n */\n const verifySimplyPoolToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/verifySimplyPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n getPool(\"\");\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 删除Token函数\r\n * 参数 user\r\n */\n const deleteToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个Token吗,删除之后就找不到咯,记得点击全部刷新poolToken\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`https://yubb.fun${prefix}/api/deleteToken`, row, {\n headers\n }).then(async response => {\n if (row.setPoolToken == true) {\n await axios.get(`https://yubb.fun${prefix}/api/updateAllPoolToken`, {\n headers\n });\n }\n msg = response.data.data;\n getToken(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n };\n /**\r\n * 删除Token函数\r\n * 参数 user\r\n */\n const deleteShareToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个share_Token吗,删除之后就找不到咯\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`https://yubb.fun${prefix}/api/deleteShareToken`, row, {\n headers\n }).then(async response => {\n msg = response.data.data;\n getShare(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n };\n /**\r\n * 获取token的过期时间\r\n */\n const formatDate = value => {\n if (!value) return \"\";\n var nowDay = new Date();\n const timeDay = parseISO(value.updateTime);\n const daysDiff = differenceInDays(nowDay, timeDay);\n if (value.token.length >= 2000) {\n return daysDiff >= 80 ? \"已经过去了至少80天\" : Math.ceil(80 - daysDiff) + \"天\";\n } else if (value.token.length < 200 && !value.token.includes(\"fk-\")) {\n return \"永久\";\n } else {\n return daysDiff >= 10 ? \"已经过去了至少10天\" : Math.ceil(10 - daysDiff) + \"天\";\n }\n };\n /**\r\n * 更改Token显示操作\r\n */\n const dataToken = value => {\n return value.substring(0, 30) + \"...\";\n };\n /**\r\n * 退出登录操作\r\n */\n const logout = () => {\n // 删除本地存储的 token\n localStorage.removeItem(\"jwtToken\");\n // 使用 Vue Router 进行页面跳转到登录页面\n router.replace(`/`);\n };\n const getPoolToken = () => {\n show_6.value = true;\n };\n const getShareToken = async () => {\n await getShare(\"\");\n show_13.value = true;\n };\n const getLogin = () => {\n getLoginData();\n show_10.value = true;\n };\n const redirectToGitHub = () => {\n window.open(\"https://github.com/Yanyutin753/PandoraNext-TokensTool\");\n };\n const copyToken = value => {\n const textarea = document.createElement(\"textarea\");\n // 设置 textarea 的值为要复制的文本\n textarea.value = value;\n // 将 textarea 添加到 DOM 中\n document.body.appendChild(textarea);\n // 选中 textarea 中的文本\n textarea.select();\n // 执行复制操作\n document.execCommand(\"copy\");\n // 从 DOM 中移除 textarea 元素\n document.body.removeChild(textarea);\n ElMessage({\n type: \"success\",\n message: \"复制成功!\"\n });\n };\n const selectChoice = buttonValue => {\n const selectedData = multipleSelection.value;\n const userData = selectedData.map(userData => userData);\n if (selectedData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n }\n if (buttonValue == \"选中删除Token\") {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这\" + selectedData.length + \"个Token吗,删除之后就找不到咯\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`https://yubb.fun${prefix}/api/deleteTokenList`, userData, {\n headers\n }).then(async response => {\n await axios.get(`https://yubb.fun${prefix}/api/updateAllPoolToken`, {\n headers\n });\n msg = response.data.data;\n getToken(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n return;\n } else if (buttonValue == \"选中刷新Token\") {\n let count = 0;\n const selectedData = multipleSelection.value;\n const userData = selectedData.map(userData => userData);\n userData.forEach((item, index) => {\n if (item.setPoolToken) {\n if (item.useRefreshToken) {\n count += 1000;\n } else {\n count += 100;\n }\n }\n });\n const reNewMsg = \"您确定要花\" + count + \"积分刷新这\" + selectedData.length + \"个Token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/updateSessionTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(userData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getToken(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中合成pool_token\") {\n getSelectedData();\n } else if (buttonValue == \"选中修改pool_token\") {\n poolName.value = \"\";\n shareTokens.value = \"\";\n temPool_token.value = \"\";\n poolTime.value = \"\";\n intoOneApi.value = false;\n poolOneApi_models.value = [];\n poolModel_mapping.value = \"\";\n oneApi_pandoraUrl.value = \"\";\n groupChecked.value = [];\n priority.value = 0;\n show_11.value = true;\n }\n };\n const showPool = row => {\n temPoolName.value = row.poolName;\n shareTokens.value = row.shareTokens;\n temPool_token.value = row.poolToken;\n poolTime.value = row.poolTime;\n intoOneApi.value = row.intoOneApi;\n poolOneApi_models.value = row.poolOneApi_models.split(\",\");\n poolModel_mapping.value = row.poolModel_mapping;\n oneApi_pandoraUrl.value = row.oneApi_pandoraUrl;\n temGroupChecked.value = row.groupChecked.split(\",\");\n priority.value = row.priority;\n show_17.value = true;\n };\n const selectPoolChoice = buttonValue => {\n const selectedPoolData = multipleSelectionPool.value;\n const temPoolData = selectedPoolData.map(temPoolData => temPoolData);\n if (temPoolData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n }\n if (buttonValue == \"选中检查pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要花\" + count + \"积分检查这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/verifySimplyPoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"检查取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中刷新pool_token\") {\n const reNewMsg = \"您确定要刷新这\" + selectedPoolData.length + \"个pool_token吗?\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/refreshSimplyPoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中更换pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要更换这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/changePoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"更换取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中删除pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要删除这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/deletePoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n });\n return;\n }\n };\n const chart = ref(null);\n const getUsage = async () => {\n show_12.value = true;\n const response = await axios.get(`https://yubb.fun${prefix}/api/modelsUsage`, {\n headers\n });\n let usageData = response.data.data.map(item => item.usage);\n let modelData = response.data.data.map(item => item.model);\n const myChart = echarts.init(chart.value);\n const option = {\n title: {\n text: \"tokensTool每日接口对话统计\",\n fontSize: 18,\n color: \"#606266\" // 这里是深灰色,你可以根据需要更改颜色\n },\n\n tooltip: {},\n legend: {\n data: modelData\n },\n xAxis: {\n data: modelData\n },\n yAxis: {},\n series: [{\n name: \"对话数量\",\n type: \"bar\",\n data: usageData,\n barWidth: \"25%\",\n itemStyle: {\n color: function (params) {\n const colorList = [\"#e74c3c\", \"#3498db\", \"#2ecc71\", \"#f1c40f\", \"#9b59b6\", \"#1abc9c\", \"#e67e22\", \"#ecf0f1\", \"#95a5a6\", \"#34495e\", \"#16a085\"];\n return colorList[params.dataIndex % colorList.length];\n }\n }\n }]\n };\n myChart.setOption(option);\n };\n return (_ctx, _cache) => {\n const _component_el_menu_item = _resolveComponent(\"el-menu-item\");\n const _component_van_icon = _resolveComponent(\"van-icon\");\n const _component_el_sub_menu = _resolveComponent(\"el-sub-menu\");\n const _component_h10 = _resolveComponent(\"h10\");\n const _component_el_menu = _resolveComponent(\"el-menu\");\n const _component_van_button = _resolveComponent(\"van-button\");\n const _component_el_page_header = _resolveComponent(\"el-page-header\");\n const _component_el_radio_button = _resolveComponent(\"el-radio-button\");\n const _component_el_radio_group = _resolveComponent(\"el-radio-group\");\n const _component_van_search = _resolveComponent(\"van-search\");\n const _component_el_table_column = _resolveComponent(\"el-table-column\");\n const _component_el_button = _resolveComponent(\"el-button\");\n const _component_el_tag = _resolveComponent(\"el-tag\");\n const _component_el_popover = _resolveComponent(\"el-popover\");\n const _component_el_option = _resolveComponent(\"el-option\");\n const _component_el_select = _resolveComponent(\"el-select\");\n const _component_el_button_group = _resolveComponent(\"el-button-group\");\n const _component_van_field = _resolveComponent(\"van-field\");\n const _component_van_switch = _resolveComponent(\"van-switch\");\n const _component_van_cell_group = _resolveComponent(\"van-cell-group\");\n const _component_van_form = _resolveComponent(\"van-form\");\n const _component_van_dialog = _resolveComponent(\"van-dialog\");\n const _component_CopyDocument = _resolveComponent(\"CopyDocument\");\n const _component_el_icon = _resolveComponent(\"el-icon\");\n const _component_el_select_group = _resolveComponent(\"el-select-group\");\n const _component_el_dialog = _resolveComponent(\"el-dialog\");\n const _component_el_form_item = _resolveComponent(\"el-form-item\");\n const _component_el_input = _resolveComponent(\"el-input\");\n const _component_van_checkbox = _resolveComponent(\"van-checkbox\");\n const _component_van_checkbox_group = _resolveComponent(\"van-checkbox-group\");\n const _directive_loading = _resolveDirective(\"loading\");\n return _openBlock(), _createElementBlock(_Fragment, null, [_createElementVNode(\"div\", _hoisted_1, [_hoisted_2, _createVNode(_component_el_menu, {\n \"default-active\": activeIndex.value,\n class: \"el-menu-demo\",\n mode: \"horizontal\",\n ellipsis: false,\n onSelect: handleSelect,\n \"active-text-color\": \"#0ea27e\",\n \"text-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_menu_item, null, {\n default: _withCtx(() => [_createElementVNode(\"img\", {\n style: {\n \"width\": \"40px\"\n },\n src: _imports_0,\n alt: \"Element logo\",\n onClick: redirectToGitHub\n })]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n onClick: getPandoraNext\n }, {\n title: _withCtx(() => [_createElementVNode(\"div\", _hoisted_3, [_createElementVNode(\"h2\", null, _toDisplayString(pandoraUsage.value), 1)]), _createVNode(_component_van_icon, {\n name: \"replay\",\n size: \"20\"\n })]),\n _: 1\n }), _hoisted_4, _createVNode(_component_el_menu_item, {\n index: \"1\",\n onClick: getPoolToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"pool_token列表\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2\",\n onClick: getShareToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"share_token列表\")]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"3\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"跳转Web服务\")]),\n default: _withCtx(() => [_createVNode(_component_el_sub_menu, {\n index: \"3-1\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"跳转PandoraWeb服务\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"3-1-1\",\n onClick: redirectToExternalLink\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"主页\", 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-1-2\",\n onClick: redirectPandoraNextShare\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"共享页\", 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-1-3\",\n onClick: requirePandoraNextLink\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"修改页\", 1)]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"3-2\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"获取token地址\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"3-2-1\"\n }, {\n default: _withCtx(() => [_hoisted_5]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-2-2\"\n }, {\n default: _withCtx(() => [_hoisted_6]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-2-3\"\n }, {\n default: _withCtx(() => [_hoisted_7]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-3\",\n onClick: requireTokensToolLink\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool使用说明\")]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"5\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"系统设置\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"5-1\",\n onClick: _cache[0] || (_cache[0] = $event => onRequireSetting(pandoraNext))\n }, {\n default: _withCtx(() => [_createTextVNode(\"PandoraNext设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"5-2\",\n onClick: _cache[1] || (_cache[1] = $event => onRequireSetting(tokensTool))\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"5-3\",\n onClick: _cache[2] || (_cache[2] = $event => onRequireSetting(validation))\n }, {\n default: _withCtx(() => [_createTextVNode(\"验证码信息设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"5-3\",\n onClick: _cache[3] || (_cache[3] = $event => show_8.value = true)\n }, {\n default: _withCtx(() => [_createTextVNode(\"定时&接口设置\")]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"6\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"系统功能\")]),\n default: _withCtx(() => [_createVNode(_component_el_sub_menu, {\n index: \"6-1\"\n }, {\n title: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"状态\", 1)]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"6-1-1\",\n onClick: openPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"开启\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-1-2\",\n onClick: closePandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"暂停\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-1-3\",\n onClick: AgainPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"重启\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-1-4\",\n onClick: reloadPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"重载\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-3\",\n onClick: getUsage\n }, {\n default: _withCtx(() => [_createTextVNode(\"copilot每日用量统计\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-2\",\n onClick: getLogin\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool登录日志\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-4\",\n onClick: logout\n }, {\n default: _withCtx(() => [_createVNode(_component_h10, {\n style: {\n \"font-size\": \"14px\"\n }\n }, {\n default: _withCtx(() => [_createTextVNode(\"退出登录\")]),\n _: 1\n })]),\n _: 1\n })]),\n _: 1\n })]),\n _: 1\n }, 8, [\"default-active\"]), _createElementVNode(\"div\", _hoisted_8, [_createElementVNode(\"div\", _hoisted_9, [_createVNode(_component_el_page_header, {\n icon: null,\n title: \" \"\n }, {\n content: _withCtx(() => [_hoisted_10]),\n extra: _withCtx(() => [_createElementVNode(\"div\", {\n class: \"addToken\",\n onClick: addToken\n }, [_createVNode(_component_van_button, {\n square: \"\",\n icon: \"add-o\",\n color: \"#0ea27e\",\n class: \"addTokenButton\"\n })])]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_11, [_createElementVNode(\"div\", _hoisted_12, [_createVNode(_component_van_search, {\n modelValue: value.value,\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = $event => value.value = $event),\n \"show-action\": \"\",\n shape: \"round\",\n clearable: \"\",\n placeholder: \"请输入搜索token名称和类型\",\n onSearch: onSearch\n }, {\n action: _withCtx(() => [_createVNode(_component_el_radio_group, {\n modelValue: size.value,\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = $event => size.value = $event),\n label: \"size control\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_radio_button, {\n type: \"success\",\n plain: \"\",\n label: \"WEB\",\n onClick: _cache[4] || (_cache[4] = $event => getWebToken(value.value))\n }, {\n default: _withCtx(() => [_createTextVNode(\"WEB\")]),\n _: 1\n }), _createVNode(_component_el_radio_button, {\n type: \"success\",\n plain: \"\",\n label: \"ALL\",\n onClick: _cache[5] || (_cache[5] = $event => getToken(value.value))\n }, {\n default: _withCtx(() => [_createTextVNode(\"ALL\")]),\n _: 1\n }), _createVNode(_component_el_radio_button, {\n type: \"success\",\n plain: \"\",\n label: \"API\",\n onClick: _cache[6] || (_cache[6] = $event => getAPIToken(value.value))\n }, {\n default: _withCtx(() => [_createTextVNode(\"API\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }, 8, [\"modelValue\"])]), _createElementVNode(\"div\", _hoisted_13, [_withDirectives((_openBlock(), _createBlock(_unref(ElTable), {\n data: tableData.value,\n style: {\n \"width\": \"100%\"\n },\n onSelectionChange: handleSelectionChange,\n ref_key: \"multipleTableRef\",\n ref: multipleTableRef,\n \"default-sort\": {\n prop: 'updateTime',\n prop: 'setPoolToken'\n },\n \"row-class-name\": tableRowClassName\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n type: \"selection\",\n width: \"45\"\n }), _createVNode(_component_el_table_column, {\n label: \"名称\",\n prop: \"setPoolToken\",\n sortable: \"\",\n \"min-width\": \"136\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_14, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"h5\", null, _toDisplayString(scope.row.setPoolToken ? scope.row.useRefreshToken ? \"refAPI\" : \"sesAPI\" : \"Web\"), 1)]),\n _: 2\n }, 1024), _createElementVNode(\"span\", _hoisted_15, _toDisplayString(scope.row.name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"账号信息\",\n \"min-width\": \"200\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", null, \"账号: \" + _toDisplayString(scope.row.username), 1), _createElementVNode(\"div\", null, \"密码: \" + _toDisplayString(scope.row.userPassword), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(scope.row.username), 1)]),\n _: 2\n }, 1024)]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"Token值\",\n \"min-width\": \"270\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", null, \"token: \" + _toDisplayString(dataToken(scope.row.token)), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(dataToken(scope.row.token)), 1)]),\n _: 2\n }, 1024)]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n prop: \"updateTime\",\n sortable: \"\",\n label: \"有效时间\",\n \"min-width\": \"167\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", null, \"注册时间:\" + _toDisplayString(scope.row.updateTime), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(\"距离过期还有:\" + _toDisplayString(formatDate(scope.row)), 1)]),\n _: 2\n }, 1024)]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n width: \"335\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => handleEdit(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"编辑\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => showData(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deleteToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"success\",\n onClick: $event => reNew(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"刷新\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"warning\",\n onClick: $event => review(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"生成\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"])), [[_directive_loading, _ctx.loading]])]), _createElementVNode(\"div\", _hoisted_16, [_createVNode(_component_el_select, {\n modelValue: buttonValue.value,\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = $event => buttonValue.value = $event),\n clearable: \"\",\n filterable: \"\",\n placeholder: \"请选择批量操作\",\n class: \"ml-4\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(options, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonValue,\n label: item.label,\n value: item.buttonValue\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_button, {\n class: \"ml-4\",\n onClick: _cache[10] || (_cache[10] = $event => selectChoice(buttonValue.value))\n }, {\n default: _withCtx(() => [_hoisted_17]),\n _: 1\n }), _createVNode(_component_el_button_group, {\n class: \"my-button\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_button, {\n onClick: updateAllShareToken\n }, {\n default: _withCtx(() => [_hoisted_18]),\n _: 1\n })]),\n _: 1\n })])]), _hoisted_19, _hoisted_20, _hoisted_21])]), _createVNode(_component_van_dialog, {\n show: show.value,\n \"onUpdate:show\": _cache[21] || (_cache[21] = $event => show.value = $event),\n title: \"📌修改token信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_22, [_createVNode(_component_van_form, {\n onSubmit: _cache[20] || (_cache[20] = $event => RequireToken())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_23, _createVNode(_component_van_field, {\n modelValue: temUsername.value,\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = $event => temUsername.value = $event),\n name: \"OpenAi邮箱\",\n label: \"OpenAi邮箱\",\n placeholder: \"OpenAi邮箱\",\n rules: [{\n required: true,\n message: '请填写OpenAi邮箱'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_24, _createVNode(_component_van_field, {\n modelValue: temUserPassword.value,\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = $event => temUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n rules: [{\n required: true,\n message: '请填写OpenAi密码'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_25, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: setPoolToken.value,\n \"onUpdate:modelValue\": _cache[13] || (_cache[13] = $event => setPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_26, [_hoisted_27, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refreshToken\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: useRefreshToken.value,\n \"onUpdate:modelValue\": _cache[14] || (_cache[14] = $event => useRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_28, [_hoisted_29, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temShared.value,\n \"onUpdate:modelValue\": _cache[15] || (_cache[15] = $event => temShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), temShared.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_30, [_hoisted_31, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temShow_user_info.value,\n \"onUpdate:modelValue\": _cache[16] || (_cache[16] = $event => temShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_32, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temPlus.value,\n \"onUpdate:modelValue\": _cache[17] || (_cache[17] = $event => temPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true)])) : _createCommentVNode(\"\", true), temShared.value == false || setPoolToken.value == false ? (_openBlock(), _createElementBlock(\"div\", _hoisted_33, [_hoisted_34, _createVNode(_component_van_field, {\n modelValue: temPassword.value,\n \"onUpdate:modelValue\": _cache[18] || (_cache[18] = $event => temPassword.value = $event),\n name: \"进入Token的密码\",\n label: \"进入Token的密码\",\n placeholder: \"填了将不会分享给他人!\",\n rules: [{\n validator: addPasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), _hoisted_35, _createVNode(_component_van_field, {\n modelValue: temToken.value,\n \"onUpdate:modelValue\": _cache[19] || (_cache[19] = $event => temToken.value = $event),\n label: \"Token的值\",\n type: \"textarea\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的Token(选填),session或refresh_token\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n \"show-word-limit\": \"\"\n }, null, 8, [\"modelValue\"]), _hoisted_36]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_37, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_38]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_1.value,\n \"onUpdate:show\": _cache[33] || (_cache[33] = $event => show_1.value = $event),\n title: \"✨添加token信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"addTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_39, [_createVNode(_component_van_form, {\n onSubmit: _cache[32] || (_cache[32] = $event => onAddToken())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_40, _createVNode(_component_van_field, {\n modelValue: addName.value,\n \"onUpdate:modelValue\": _cache[22] || (_cache[22] = $event => addName.value = $event),\n name: \"Token用户名\",\n label: \"Token用户名\",\n placeholder: \"Token用户名\",\n rules: [{\n required: true,\n message: '请填写Token用户名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_41, _createVNode(_component_van_field, {\n modelValue: addUsername.value,\n \"onUpdate:modelValue\": _cache[23] || (_cache[23] = $event => addUsername.value = $event),\n name: \"OpenAi邮箱\",\n label: \"OpenAi邮箱\",\n placeholder: \"OpenAi邮箱\",\n rules: [{\n required: true,\n message: '请填写OpenAi邮箱'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_42, _createVNode(_component_van_field, {\n modelValue: addUserPassword.value,\n \"onUpdate:modelValue\": _cache[24] || (_cache[24] = $event => addUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n rules: [{\n required: true,\n message: '请填写OpenAi密码'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_43, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addSetPoolToken.value,\n \"onUpdate:modelValue\": _cache[25] || (_cache[25] = $event => addSetPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_44, [_hoisted_45, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refreshToken\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addUseRefreshToken.value,\n \"onUpdate:modelValue\": _cache[26] || (_cache[26] = $event => addUseRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_46, [_hoisted_47, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addShared.value,\n \"onUpdate:modelValue\": _cache[27] || (_cache[27] = $event => addShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), addShared.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_48, [_hoisted_49, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addShow_user_info.value,\n \"onUpdate:modelValue\": _cache[28] || (_cache[28] = $event => addShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_50, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addPlus.value,\n \"onUpdate:modelValue\": _cache[29] || (_cache[29] = $event => addPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true)])) : _createCommentVNode(\"\", true), addShared.value == '' ? (_openBlock(), _createElementBlock(\"div\", _hoisted_51, [_hoisted_52, _createVNode(_component_van_field, {\n modelValue: addPassword.value,\n \"onUpdate:modelValue\": _cache[30] || (_cache[30] = $event => addPassword.value = $event),\n name: \"进入Token的密码\",\n label: \"进入Token的密码\",\n placeholder: \"填了将不会分享给他人!\",\n rules: [{\n validator: addPasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_53, [_hoisted_54, _createVNode(_component_van_field, {\n rows: \"3\",\n type: \"textarea\",\n maxlength: \"5000\",\n \"show-word-limit\": \"\",\n modelValue: addTokenValue.value,\n \"onUpdate:modelValue\": _cache[31] || (_cache[31] = $event => addTokenValue.value = $event),\n name: \"Token的值\",\n label: \"Token的值\",\n placeholder: \"选填(可不填,不填则使用账号密码),目前只支持session_token或refresh_token\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_55]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_56, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_57]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_2.value,\n \"onUpdate:show\": _cache[53] || (_cache[53] = $event => show_2.value = $event),\n title: \"🔎token信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"showDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_58, [_createVNode(_component_van_form, null, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_59, _createVNode(_component_van_field, {\n modelValue: temName.value,\n \"onUpdate:modelValue\": _cache[34] || (_cache[34] = $event => temName.value = $event),\n name: \"Token用户名\",\n label: \"Token用户名\",\n placeholder: \"Token用户名\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[35] || (_cache[35] = $event => copyToken(temName.value))\n }, null, 8, [\"modelValue\"]), _hoisted_60, _createVNode(_component_van_field, {\n modelValue: temPassword.value,\n \"onUpdate:modelValue\": _cache[36] || (_cache[36] = $event => temPassword.value = $event),\n type: \"temPassword\",\n name: \"进入Token的密码\",\n label: \"进入Token的密码\",\n placeholder: \"填了将不会分享给他人(如不填则输入Token名即可进入)!\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[37] || (_cache[37] = $event => copyToken(temPassword.value))\n }, null, 8, [\"modelValue\"]), _hoisted_61, _createVNode(_component_van_field, {\n modelValue: temUsername.value,\n \"onUpdate:modelValue\": _cache[38] || (_cache[38] = $event => temUsername.value = $event),\n name: \"OpenAi用户名\",\n label: \"OpenAi用户名\",\n placeholder: \"OpenAi用户名\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[39] || (_cache[39] = $event => copyToken(temUsername.value))\n }, null, 8, [\"modelValue\"]), _hoisted_62, _createVNode(_component_van_field, {\n modelValue: temUserPassword.value,\n \"onUpdate:modelValue\": _cache[40] || (_cache[40] = $event => temUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[41] || (_cache[41] = $event => copyToken(temUserPassword.value))\n }, null, 8, [\"modelValue\"]), _hoisted_63, _createVNode(_component_van_field, {\n name: \"temShared\",\n readonly: true,\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temShared.value,\n \"onUpdate:modelValue\": _cache[42] || (_cache[42] = $event => temShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_64, _createVNode(_component_van_field, {\n readonly: true,\n name: \"temShow_user_info\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temShow_user_info.value,\n \"onUpdate:modelValue\": _cache[43] || (_cache[43] = $event => temShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_65, _createVNode(_component_van_field, {\n readonly: true,\n name: \"temPlus\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temPlus.value,\n \"onUpdate:modelValue\": _cache[44] || (_cache[44] = $event => temPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_66, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: setPoolToken.value,\n \"onUpdate:modelValue\": _cache[45] || (_cache[45] = $event => setPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_67, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refresh_token\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: useRefreshToken.value,\n \"onUpdate:modelValue\": _cache[46] || (_cache[46] = $event => useRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_68, _createVNode(_component_van_field, {\n modelValue: temToken.value,\n \"onUpdate:modelValue\": _cache[47] || (_cache[47] = $event => temToken.value = $event),\n label: \"Token的值\",\n type: \"textarea\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的Token(session或refresh_token)\",\n \"show-word-limit\": \"\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[48] || (_cache[48] = $event => copyToken(temToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"]), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_69, [_hoisted_70, _createVNode(_component_van_field, {\n modelValue: temAccessToken.value,\n \"onUpdate:modelValue\": _cache[49] || (_cache[49] = $event => temAccessToken.value = $event),\n label: \"access_token\",\n type: \"textarea\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的access_token\",\n \"show-word-limit\": \"\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[50] || (_cache[50] = $event => copyToken(temAccessToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"]), _hoisted_71, _createVNode(_component_van_field, {\n modelValue: temShareToken.value,\n \"onUpdate:modelValue\": _cache[51] || (_cache[51] = $event => temShareToken.value = $event),\n label: \"share_token\",\n type: \"textarea\",\n maxlength: \"200\",\n placeholder: \"请填写OpenAi的share_token\",\n \"show-word-limit\": \"\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[52] || (_cache[52] = $event => copyToken(temShareToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true)]),\n _: 1\n })]),\n _: 1\n }), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_72, [_createElementVNode(\"div\", {\n ref_key: \"chart_show\",\n ref: chart_show,\n style: {\n \"width\": \"auto\",\n \"height\": \"300px\"\n }\n }, null, 512), _hoisted_73])) : _createCommentVNode(\"\", true)])]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_3.value,\n \"onUpdate:show\": _cache[68] || (_cache[68] = $event => show_3.value = $event),\n title: \"PandoraNext设置信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requirePandora\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_74, [_createVNode(_component_van_form, {\n onSubmit: _cache[67] || (_cache[67] = $event => RequireSetting(pandoraNext))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_75, _createVNode(_component_van_field, {\n modelValue: isolated_conv_title.value,\n \"onUpdate:modelValue\": _cache[54] || (_cache[54] = $event => isolated_conv_title.value = $event),\n name: \"对话标题\",\n label: \"对话标题\",\n placeholder: \"隔离对话设置标题\"\n }, null, 8, [\"modelValue\"]), _hoisted_76, _createVNode(_component_van_field, {\n modelValue: bing.value,\n \"onUpdate:modelValue\": _cache[55] || (_cache[55] = $event => bing.value = $event),\n name: \"绑定IP和端口\",\n label: \"绑定IP和端口\",\n placeholder: \"绑定IP和端口(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_77, _createVNode(_component_van_field, {\n modelValue: custom_doh_host.value,\n \"onUpdate:modelValue\": _cache[56] || (_cache[56] = $event => custom_doh_host.value = $event),\n name: \"DoH主机名\",\n label: \"DoH主机名\",\n placeholder: \"配置自定义的DoH主机名(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_78, _createVNode(_component_van_field, {\n modelValue: timeout.value,\n \"onUpdate:modelValue\": _cache[57] || (_cache[57] = $event => timeout.value = $event),\n name: \"请求超时时间\",\n label: \"请求超时时间\",\n placeholder: \"请求超时时间(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_79, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享对话(选填)\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: public_share.value,\n \"onUpdate:modelValue\": _cache[58] || (_cache[58] = $event => public_share.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_80, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否配置证书\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: enabled.value,\n \"onUpdate:modelValue\": _cache[59] || (_cache[59] = $event => enabled.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), enabled.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_81, [_hoisted_82, _createVNode(_component_van_field, {\n modelValue: cert_file.value,\n \"onUpdate:modelValue\": _cache[60] || (_cache[60] = $event => cert_file.value = $event),\n name: \"证书文件\",\n label: \"证书文件\",\n placeholder: \"证书文件\"\n }, null, 8, [\"modelValue\"]), _hoisted_83, _createVNode(_component_van_field, {\n modelValue: key_file.value,\n \"onUpdate:modelValue\": _cache[61] || (_cache[61] = $event => key_file.value = $event),\n name: \"密钥文件\",\n label: \"密钥文件\",\n placeholder: \"密钥文件\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_84, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否禁用注册\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: disable_signup.value,\n \"onUpdate:modelValue\": _cache[62] || (_cache[62] = $event => disable_signup.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_85, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否自动打码\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: auto_conv_arkose.value,\n \"onUpdate:modelValue\": _cache[63] || (_cache[63] = $event => auto_conv_arkose.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_86, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"使用文件代理服务\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: proxy_file_service.value,\n \"onUpdate:modelValue\": _cache[64] || (_cache[64] = $event => proxy_file_service.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_87, _createVNode(_component_van_field, {\n modelValue: proxy_url.value,\n \"onUpdate:modelValue\": _cache[65] || (_cache[65] = $event => proxy_url.value = $event),\n name: \"代理服务URL\",\n label: \"代理服务URL\",\n placeholder: \"代理服务URL(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_88, _createVNode(_component_van_field, {\n modelValue: whitelist.value,\n \"onUpdate:modelValue\": _cache[66] || (_cache[66] = $event => whitelist.value = $event),\n name: \"白名单\",\n label: \"白名单\",\n placeholder: \"[]限制所有账号(默认为null)\"\n }, null, 8, [\"modelValue\"]), _hoisted_89]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_90, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_91]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_4.value,\n \"onUpdate:show\": _cache[80] || (_cache[80] = $event => show_4.value = $event),\n title: \"tokensTool设置信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_92, [_createVNode(_component_van_form, {\n onSubmit: _cache[79] || (_cache[79] = $event => RequireSetting(tokensTool))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_93, _createVNode(_component_van_field, {\n modelValue: loginUsername.value,\n \"onUpdate:modelValue\": _cache[69] || (_cache[69] = $event => loginUsername.value = $event),\n name: \"登录用户名\",\n label: \"登录用户名\",\n placeholder: \"tokensTool用户名\"\n }, null, 8, [\"modelValue\"]), _hoisted_94, _createVNode(_component_van_field, {\n modelValue: loginPassword.value,\n \"onUpdate:modelValue\": _cache[70] || (_cache[70] = $event => loginPassword.value = $event),\n name: \"登录密码\",\n label: \"登录密码\",\n placeholder: \"不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_95, _createVNode(_component_van_field, {\n modelValue: proxy_api_prefix.value,\n \"onUpdate:modelValue\": _cache[71] || (_cache[71] = $event => proxy_api_prefix.value = $event),\n name: \"proxy接口前缀\",\n label: \"proxy接口前缀\",\n placeholder: \"proxy模式接口后缀,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_96, _createVNode(_component_van_field, {\n modelValue: autoToken_url.value,\n \"onUpdate:modelValue\": _cache[72] || (_cache[72] = $event => autoToken_url.value = $event),\n name: \"proxy模式URL\",\n label: \"proxy模式URL\",\n placeholder: \"http(s)://(ip:port或者域名)/后缀,同公网服务器填default\"\n }, null, 8, [\"modelValue\"]), _hoisted_97, _createVNode(_component_van_field, {\n modelValue: setup_password.value,\n \"onUpdate:modelValue\": _cache[73] || (_cache[73] = $event => setup_password.value = $event),\n name: \"重载服务密码\",\n label: \"重载服务密码\",\n placeholder: \"PandoraNext重载服务密码,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_98, _createVNode(_component_van_field, {\n modelValue: site_password.value,\n \"onUpdate:modelValue\": _cache[74] || (_cache[74] = $event => site_password.value = $event),\n name: \"访问密码\",\n label: \"访问密码\",\n placeholder: \"PandoraNext访问密码,建议开启访问密码\",\n rules: [{\n validator: sitePasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_99, _createVNode(_component_van_field, {\n modelValue: license_id.value,\n \"onUpdate:modelValue\": _cache[75] || (_cache[75] = $event => license_id.value = $event),\n name: \"验证licenseId\",\n label: \"验证licenseId\",\n placeholder: \"验证licenseId(github上拿到的license_id)\"\n }, null, 8, [\"modelValue\"]), _hoisted_100, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"tokensTool接口\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: isGetToken.value,\n \"onUpdate:modelValue\": _cache[76] || (_cache[76] = $event => isGetToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), isGetToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_101, [_hoisted_102, _createVNode(_component_van_field, {\n modelValue: getTokenPassword.value,\n \"onUpdate:modelValue\": _cache[77] || (_cache[77] = $event => getTokenPassword.value = $event),\n name: \"接口密码\",\n label: \"接口密码\",\n placeholder: \"tokensTool接口密码,用于获取tokens,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), _hoisted_103, _createVNode(_component_van_field, {\n modelValue: containerName.value,\n \"onUpdate:modelValue\": _cache[78] || (_cache[78] = $event => containerName.value = $event),\n name: \"监管容器名\",\n label: \"监管容器名\",\n placeholder: \"监管运行的容器名或文件名,默认为PandoraNext\",\n rules: [{\n required: true,\n message: '请填写监管的容器名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_104]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_105, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_106]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_5.value,\n \"onUpdate:show\": _cache[89] || (_cache[89] = $event => show_5.value = $event),\n title: \"PandoraNext验证信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"verify\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_107, [_createVNode(_component_van_form, {\n onSubmit: _cache[88] || (_cache[88] = $event => RequireSetting(validation))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_108, _createVNode(_component_van_field, {\n modelValue: provider.value,\n \"onUpdate:modelValue\": _cache[81] || (_cache[81] = $event => provider.value = $event),\n name: \"验证码提供商\",\n label: \"验证码提供商\",\n placeholder: \"验证码提供商\"\n }, null, 8, [\"modelValue\"]), _hoisted_109, _createVNode(_component_van_field, {\n modelValue: site_key.value,\n \"onUpdate:modelValue\": _cache[82] || (_cache[82] = $event => site_key.value = $event),\n name: \"验证码网站参数\",\n label: \"验证码网站参数\",\n placeholder: \"验证码网站参数\"\n }, null, 8, [\"modelValue\"]), _hoisted_110, _createVNode(_component_van_field, {\n modelValue: site_secret.value,\n \"onUpdate:modelValue\": _cache[83] || (_cache[83] = $event => site_secret.value = $event),\n name: \"验证码API Key\",\n label: \"验证码API Key\",\n placeholder: \"验证码API Key\"\n }, null, 8, [\"modelValue\"]), _hoisted_111, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否全站密码登录页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: site_login.value,\n \"onUpdate:modelValue\": _cache[84] || (_cache[84] = $event => site_login.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_112, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在设置登录页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: setup_login.value,\n \"onUpdate:modelValue\": _cache[85] || (_cache[85] = $event => setup_login.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_113, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在输入用户名页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: oai_username.value,\n \"onUpdate:modelValue\": _cache[86] || (_cache[86] = $event => oai_username.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_114, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在输入密码页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: oai_password.value,\n \"onUpdate:modelValue\": _cache[87] || (_cache[87] = $event => oai_password.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_115]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_116, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_117]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_el_dialog, {\n modelValue: show_6.value,\n \"onUpdate:modelValue\": _cache[95] || (_cache[95] = $event => show_6.value = $event),\n title: \"pool_token列表\",\n \"align-center\": \"\",\n width: \"78%\",\n \"close-on-click-modal\": false,\n class: \"shareTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_118, [_createVNode(_component_el_icon, {\n onClick: _cache[90] || (_cache[90] = $event => copyToken(pandoraNext_outUrl.value + proxy_api_prefix.value + '/v1/chat/completions'))\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 1\n }), _createVNode(_component_h10, null, {\n default: _withCtx(() => [_createTextVNode(\"API地址:\" + _toDisplayString(pandoraNext_outUrl.value) + _toDisplayString(proxy_api_prefix.value) + \"/v1/chat/completions\", 1)]),\n _: 1\n })]), _createVNode(_unref(ElTable), {\n data: poolData.value,\n \"default-sort\": {\n prop: 'poolTime',\n prop: 'intoOneApi'\n },\n onSelectionChange: poolSelectionChange,\n ref_key: \"multipleTableRefPool\",\n ref: multipleTableRefPool,\n \"row-class-name\": poolRowClassName,\n class: \"poolDateTable\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n type: \"selection\",\n width: \"45\"\n }), _createVNode(_component_el_table_column, {\n label: \"pool_token名称\",\n prop: \"intoOneApi\",\n sortable: \"\",\n \"min-width\": \"170\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n reference: _withCtx(() => [_createElementVNode(\"div\", _hoisted_119, [scope.row.intoOneApi == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_120, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_121]),\n _: 1\n })])) : (_openBlock(), _createElementBlock(\"div\", _hoisted_122, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_123]),\n _: 1\n })])), _createElementVNode(\"span\", _hoisted_124, _toDisplayString(scope.row.poolName), 1)])]),\n default: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(scope.row.poolOneApi_models), 1)]),\n _: 2\n }, 1024)]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"pool_token值\",\n \"min-width\": \"325\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_125, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.poolToken)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_126, _toDisplayString(scope.row.poolToken), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"使用token名集合\",\n \"min-width\": \"165\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(scope.row.shareTokens), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_hoisted_127]),\n _: 1\n })]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"poolTime\",\n label: \"更新时间\",\n prop: \"poolTime\",\n sortable: \"\",\n \"min-width\": \"170\"\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n \"min-width\": \"335\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => showPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"warning\",\n onClick: $event => verifySimplyPoolToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"检验\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deletePoolToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"success\",\n onClick: $event => reNewPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"刷新\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => reviewPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"更换\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"]), _createVNode(_component_el_select_group, {\n class: \"pool-button flex-container\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: buttonPoolValue.value,\n \"onUpdate:modelValue\": _cache[91] || (_cache[91] = $event => buttonPoolValue.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"请选择批量操作\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPool, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolValue,\n label: item.label,\n value: item.buttonPoolValue\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_button, {\n onClick: _cache[92] || (_cache[92] = $event => selectPoolChoice(buttonPoolValue.value))\n }, {\n default: _withCtx(() => [_hoisted_128]),\n _: 1\n }), _createVNode(_component_van_search, {\n modelValue: valuePool.value,\n \"onUpdate:modelValue\": _cache[93] || (_cache[93] = $event => valuePool.value = $event),\n shape: \"round\",\n clearable: \"\",\n placeholder: \"请输入搜索pool_token名称\",\n onSearch: _cache[94] || (_cache[94] = $event => onSearchPoolToken(valuePool.value)),\n class: \"onPoolToken\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_129]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_7.value,\n \"onUpdate:modelValue\": _cache[99] || (_cache[99] = $event => show_7.value = $event),\n title: \"PandoraNext余额\",\n \"align-center\": \"\",\n width: \"auto\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_130, [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_131, _createVNode(_component_van_field, {\n modelValue: pandoraUsage.value,\n \"onUpdate:modelValue\": _cache[96] || (_cache[96] = $event => pandoraUsage.value = $event),\n name: \"PandoraNext用量\",\n label: \"PandoraNext用量\",\n placeholder: \"PandoraNext用量\"\n }, null, 8, [\"modelValue\"]), _hoisted_132, _createVNode(_component_van_field, {\n modelValue: pandoraIp.value,\n \"onUpdate:modelValue\": _cache[97] || (_cache[97] = $event => pandoraIp.value = $event),\n name: \"绑定IP\",\n label: \"绑定IP\",\n placeholder: \"绑定IP\"\n }, null, 8, [\"modelValue\"]), _hoisted_133, _createVNode(_component_van_field, {\n modelValue: pandoraTime.value,\n \"onUpdate:modelValue\": _cache[98] || (_cache[98] = $event => pandoraTime.value = $event),\n name: \"重置时间\",\n label: \"重置时间\",\n placeholder: \"重置时间\"\n }, null, 8, [\"modelValue\"]), _hoisted_134]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_8.value,\n \"onUpdate:modelValue\": _cache[107] || (_cache[107] = $event => show_8.value = $event),\n title: \"定时刷新&PandoraNext网址\",\n \"align-center\": \"\",\n \"max-width\": \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_135, [_createVNode(_component_van_form, {\n onSubmit: _cache[106] || (_cache[106] = $event => RequireAutoUpdate())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_136, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否自动刷新session_token\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: auto_updateSession.value,\n \"onUpdate:modelValue\": _cache[100] || (_cache[100] = $event => auto_updateSession.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), auto_updateSession.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_137, [_hoisted_138, _createVNode(_component_van_field, {\n modelValue: auto_updateTime.value,\n \"onUpdate:modelValue\": _cache[101] || (_cache[101] = $event => auto_updateTime.value = $event),\n name: \"刷新session的时间\",\n label: \"刷新session的时间\",\n \"input-align\": \"right\",\n placeholder: \"自动刷新session的时间 (天为单位)\"\n }, null, 8, [\"modelValue\"]), _hoisted_139, _createVNode(_component_van_field, {\n modelValue: auto_updateNumber.value,\n \"onUpdate:modelValue\": _cache[102] || (_cache[102] = $event => auto_updateNumber.value = $event),\n name: \"刷新session的个数\",\n label: \"刷新session的个数\",\n \"input-align\": \"right\",\n placeholder: \"自动刷新session的个数 (个)\"\n }, null, 8, [\"modelValue\"]), _hoisted_140])) : _createCommentVNode(\"\", true), _createVNode(_component_van_field, {\n modelValue: pandoraNext_outUrl.value,\n \"onUpdate:modelValue\": _cache[103] || (_cache[103] = $event => pandoraNext_outUrl.value = $event),\n name: \"PandoraNext的公网访问地址\",\n label: \"PandoraNext的公网访问地址\",\n \"input-align\": \"right\",\n placeholder: \"PandoraNext的公网访问地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_141, _createVNode(_component_van_field, {\n modelValue: oneAPi_outUrl.value,\n \"onUpdate:modelValue\": _cache[104] || (_cache[104] = $event => oneAPi_outUrl.value = $event),\n name: \"oneApi的公网访问地址\",\n label: \"oneApi的公网访问地址\",\n \"input-align\": \"right\",\n placeholder: \"oneApi的公网访问地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_142, _createVNode(_component_van_field, {\n modelValue: oneAPi_intoToken.value,\n \"onUpdate:modelValue\": _cache[105] || (_cache[105] = $event => oneAPi_intoToken.value = $event),\n name: \"oneApi的系统令牌\",\n label: \"oneApi的系统令牌\",\n \"input-align\": \"right\",\n placeholder: \"oneApi的系统令牌\"\n }, null, 8, [\"modelValue\"]), _hoisted_143]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_144, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_9.value,\n \"onUpdate:modelValue\": _cache[115] || (_cache[115] = $event => show_9.value = $event),\n title: \"✨添加pool_token信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_145, [_createVNode(_component_van_form, {\n onSubmit: addSelectPoolToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_146, _createVNode(_component_van_field, {\n modelValue: poolNameValue.value,\n \"onUpdate:modelValue\": _cache[108] || (_cache[108] = $event => poolNameValue.value = $event),\n name: \"为pool_token名\",\n label: \"pool_token名\",\n \"input-align\": \"right\",\n placeholder: \"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字\",\n rules: [{\n validator: poolNameValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_147, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[109] || (_cache[109] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_148, [_hoisted_149, _createElementVNode(\"div\", _hoisted_150, [_createVNode(_component_el_form_item, {\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addPoolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[110] || (_cache[110] = $event => addPoolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_151]),\n _: 1\n }), _hoisted_152, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: addPoolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[111] || (_cache[111] = $event => addPoolModel_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_153, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[112] || (_cache[112] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\"\n }, null, 8, [\"modelValue\"]), _hoisted_154, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"checkboxGroup\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: groupChecked.value,\n \"onUpdate:modelValue\": _cache[113] || (_cache[113] = $event => groupChecked.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_155, _createVNode(_component_van_field, {\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[114] || (_cache[114] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义PandoraNext地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_156])) : _createCommentVNode(\"\", true)]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_157, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_10.value,\n \"onUpdate:modelValue\": _cache[116] || (_cache[116] = $event => show_10.value = $event),\n title: \"tokensTool登录日志\",\n \"align-center\": \"\",\n width: \"50%\",\n \"close-on-click-modal\": false,\n class: \"showLoginDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_158, [_createVNode(_unref(ElTable), {\n \"row-class-name\": poolRowClassName,\n data: loginData.value\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n prop: \"ipAddress\",\n label: \"登录地区\",\n \"min-width\": \"180\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_159, [_createElementVNode(\"span\", _hoisted_160, _toDisplayString(scope.row.ipAddress), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"登录IP\",\n \"min-width\": \"145\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_161, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.poolToken)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_162, _toDisplayString(scope.row.requestIp), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"成功/失败\",\n \"min-width\": \"105\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_163, [_createElementVNode(\"span\", _hoisted_164, _toDisplayString(scope.row.inRequestNumber) + \"/\" + _toDisplayString(scope.row.outRequestNumber), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"lastLoginTime\",\n label: \"登录时间\",\n prop: \"lastLoginTime\",\n \"min-width\": \"180\"\n })]),\n _: 1\n }, 8, [\"data\"])]), _hoisted_165]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_11.value,\n \"onUpdate:modelValue\": _cache[125] || (_cache[125] = $event => show_11.value = $event),\n title: \"📌修改pool_token信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_166, [_createVNode(_component_van_form, {\n onSubmit: requirePoolToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_167, _createElementVNode(\"div\", _hoisted_168, [_createVNode(_component_el_form_item, {\n label: \"poolToken名\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: poolName.value,\n \"onUpdate:modelValue\": _cache[117] || (_cache[117] = $event => poolName.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择你想要的修改的pool_token名称\",\n onChange: handlePoolNameChange,\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(poolData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.poolName,\n label: item.poolName,\n value: item.poolName,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_169, _createVNode(_component_van_field, {\n modelValue: temPool_token.value,\n \"onUpdate:modelValue\": _cache[118] || (_cache[118] = $event => temPool_token.value = $event),\n type: \"textarea\",\n maxlength: \"100\",\n autoSize: \"\",\n name: \"pool_token的值\",\n label: \"pool_token的值\",\n \"input-align\": \"right\",\n placeholder: \"pool_token的值(不改则不变)\"\n }, null, 8, [\"modelValue\"]), _hoisted_170, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[119] || (_cache[119] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_171, intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_172, [_hoisted_173, _createElementVNode(\"div\", _hoisted_174, [_createVNode(_component_el_form_item, {\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: poolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[120] || (_cache[120] = $event => poolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_175]),\n _: 1\n }), _hoisted_176, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: poolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[121] || (_cache[121] = $event => poolModel_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_177, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[122] || (_cache[122] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_178, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"checkboxGroup\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: temGroupChecked.value,\n \"onUpdate:modelValue\": _cache[123] || (_cache[123] = $event => temGroupChecked.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_179, _createVNode(_component_van_field, {\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[124] || (_cache[124] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义PandoraNext地址\",\n rules: [{\n required: true,\n message: '请填写自定义PandoraNext地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_180])) : _createCommentVNode(\"\", true)]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_181, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_12.value,\n \"onUpdate:modelValue\": _cache[126] || (_cache[126] = $event => show_12.value = $event),\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", {\n ref_key: \"chart\",\n ref: chart,\n style: {\n \"width\": \"auto\",\n \"height\": \"400px\"\n }\n }, null, 512)]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_13.value,\n \"onUpdate:modelValue\": _cache[130] || (_cache[130] = $event => show_13.value = $event),\n title: \"OneAPI里的share_token列表\",\n \"align-center\": \"\",\n width: \"78%\",\n \"close-on-click-modal\": false,\n class: \"shareTokenDialog\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_search, {\n modelValue: valueShare.value,\n \"onUpdate:modelValue\": _cache[128] || (_cache[128] = $event => valueShare.value = $event),\n \"show-action\": \"\",\n shape: \"round\",\n clearable: \"\",\n placeholder: \"请输入搜索share_token名称\",\n onSearch: _cache[129] || (_cache[129] = $event => onSearchShareToken(valueShare.value)),\n class: \"onShareToken\"\n }, {\n action: _withCtx(() => [_createVNode(_component_el_button, {\n icon: _ctx.Plus,\n onClick: _cache[127] || (_cache[127] = $event => show_14.value = true)\n }, {\n default: _withCtx(() => [_hoisted_182]),\n _: 1\n }, 8, [\"icon\"])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_unref(ElTable), {\n data: shareData.value,\n \"row-class-name\": poolRowClassName\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n label: \"在one_api的名称\",\n prop: \"oneApi_name\",\n width: \"180\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_183, [_createElementVNode(\"span\", _hoisted_184, _toDisplayString(scope.row.oneApi_name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"来源Token名\",\n \"min-width\": \"135\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_185, [_createElementVNode(\"span\", _hoisted_186, _toDisplayString(scope.row.token_name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"share_token值\",\n \"min-width\": \"355\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_187, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.token_value)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_188, _toDisplayString(scope.row.token_value), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"shareTime\",\n label: \"更新时间\",\n prop: \"shareTime\",\n \"min-width\": \"170\"\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n \"min-width\": \"205\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => showShareToken(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => reviewShare(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"修改\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deleteShareToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"]), _hoisted_189]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_14.value,\n \"onUpdate:modelValue\": _cache[138] || (_cache[138] = $event => show_14.value = $event),\n title: \"✨添加share_token进OneAPI\",\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_form, {\n onSubmit: addShareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_190, _createVNode(_component_van_field, {\n modelValue: addOneApi_name.value,\n \"onUpdate:modelValue\": _cache[131] || (_cache[131] = $event => addOneApi_name.value = $event),\n name: \"oneApi中渠道名称\",\n label: \"oneApi中渠道名称\",\n \"input-align\": \"right\",\n placeholder: \"oneApi中渠道名称\",\n rules: [{\n required: true,\n message: '请填写oneApi中渠道名称'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_191, _createElementVNode(\"div\", _hoisted_192, [_createVNode(_component_el_form_item, {\n label: \"Token名\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addToken_name.value,\n \"onUpdate:modelValue\": _cache[132] || (_cache[132] = $event => addToken_name.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择你想要的添加的Token名称\",\n onChange: handleShareNameChange,\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(filteredTableData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.name,\n label: item.name,\n value: item.name,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_193, _createElementVNode(\"div\", _hoisted_194, [_createVNode(_component_el_form_item, {\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addOneApi_models.value,\n \"onUpdate:modelValue\": _cache[133] || (_cache[133] = $event => addOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_195]),\n _: 1\n }), _hoisted_196, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: addModel_mapping.value,\n \"onUpdate:modelValue\": _cache[134] || (_cache[134] = $event => addModel_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_197, _createVNode(_component_van_field, {\n modelValue: addPriority.value,\n \"onUpdate:modelValue\": _cache[135] || (_cache[135] = $event => addPriority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_198, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"addOneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: addOneApi_groups.value,\n \"onUpdate:modelValue\": _cache[136] || (_cache[136] = $event => addOneApi_groups.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_199, _createVNode(_component_van_field, {\n modelValue: addOneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[137] || (_cache[137] = $event => addOneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_200]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_201, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_15.value,\n \"onUpdate:modelValue\": _cache[154] || (_cache[154] = $event => show_15.value = $event),\n title: \"🔎查看share_token在OneAPI信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_form, {\n onSubmit: _ctx.shareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_202, _createVNode(_component_van_field, {\n modelValue: oneApi_name.value,\n \"onUpdate:modelValue\": _cache[139] || (_cache[139] = $event => oneApi_name.value = $event),\n name: \"oneApi中渠道名称\",\n label: \"oneApi中渠道名称\",\n \"input-align\": \"right\",\n placeholder: \"oneApi中渠道名称\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[140] || (_cache[140] = $event => copyToken(oneApi_name.value)),\n rules: [{\n required: true,\n message: '请填写oneApi中渠道名称'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_203, _createVNode(_component_van_field, {\n modelValue: token_value.value,\n \"onUpdate:modelValue\": _cache[141] || (_cache[141] = $event => token_value.value = $event),\n name: \"share_token的值\",\n label: \"share_token的值\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[142] || (_cache[142] = $event => copyToken(token_value.value)),\n placeholder: \"share_token的值\"\n }, null, 8, [\"modelValue\"]), _hoisted_204, _createVNode(_component_van_field, {\n modelValue: token_name.value,\n \"onUpdate:modelValue\": _cache[143] || (_cache[143] = $event => token_name.value = $event),\n name: \"share_token的来源\",\n label: \"share_token的来源\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[144] || (_cache[144] = $event => copyToken(token_name.value)),\n placeholder: \"share_token的值\"\n }, null, 8, [\"modelValue\"]), _hoisted_205, _createVNode(_component_van_field, {\n modelValue: temOneApi_models.value,\n \"onUpdate:modelValue\": _cache[145] || (_cache[145] = $event => temOneApi_models.value = $event),\n name: \"加入的模型\",\n label: \"加入的模型\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[146] || (_cache[146] = $event => copyToken(temOneApi_models.value)),\n placeholder: \"加入的模型\"\n }, null, 8, [\"modelValue\"]), _createElementVNode(\"div\", _hoisted_206, [_hoisted_207, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: model_mapping.value,\n \"onUpdate:modelValue\": _cache[147] || (_cache[147] = $event => model_mapping.value = $event),\n type: \"textarea\",\n autosize: \"\",\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_208]), _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[148] || (_cache[148] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[149] || (_cache[149] = $event => copyToken(priority.value)),\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_209, _createVNode(_component_van_field, {\n modelValue: temOneApi_groups.value,\n \"onUpdate:modelValue\": _cache[150] || (_cache[150] = $event => temOneApi_groups.value = $event),\n name: \"加入的组别\",\n label: \"加入的组别\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[151] || (_cache[151] = $event => copyToken(temOneApi_groups.value)),\n placeholder: \"加入的组别\"\n }, null, 8, [\"modelValue\"]), _hoisted_210, _createVNode(_component_van_field, {\n modelValue: oneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[152] || (_cache[152] = $event => oneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[153] || (_cache[153] = $event => copyToken(oneApi_baseUrl.value)),\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_211]),\n _: 1\n })]),\n _: 1\n }, 8, [\"onSubmit\"])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_16.value,\n \"onUpdate:modelValue\": _cache[161] || (_cache[161] = $event => show_16.value = $event),\n title: \"📌修改share_token在OneAPI的信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_212, [_createVNode(_component_van_form, {\n onSubmit: requireShareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_213, _createElementVNode(\"div\", _hoisted_214, [_createVNode(_component_el_form_item, {\n label: \"Token名\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: token_name.value,\n \"onUpdate:modelValue\": _cache[155] || (_cache[155] = $event => token_name.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择你想要的添加的Token名称\",\n onChange: handleShareNameChange,\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(filteredTableData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.name,\n label: item.name,\n value: item.name,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_215, _createElementVNode(\"div\", _hoisted_216, [_createVNode(_component_el_form_item, {\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: oneApi_models.value,\n \"onUpdate:modelValue\": _cache[156] || (_cache[156] = $event => oneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_217, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: model_mapping.value,\n \"onUpdate:modelValue\": _cache[157] || (_cache[157] = $event => model_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_218, _hoisted_219, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[158] || (_cache[158] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_220, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"oneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: oneApi_groups.value,\n \"onUpdate:modelValue\": _cache[159] || (_cache[159] = $event => oneApi_groups.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_221, _createVNode(_component_van_field, {\n modelValue: oneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[160] || (_cache[160] = $event => oneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_222]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_223, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_17.value,\n \"onUpdate:modelValue\": _cache[175] || (_cache[175] = $event => show_17.value = $event),\n title: \"🔎查看poolToken信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_224, [_createVNode(_component_van_form, null, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_225, _createVNode(_component_van_field, {\n modelValue: temPoolName.value,\n \"onUpdate:modelValue\": _cache[162] || (_cache[162] = $event => temPoolName.value = $event),\n name: \"pool_token名称\",\n label: \"pool_token名称\",\n placeholder: \"pool_token名称\",\n readonly: true,\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[163] || (_cache[163] = $event => copyToken(temPoolName.value))\n }, null, 8, [\"modelValue\"]), _hoisted_226, _createVNode(_component_van_field, {\n modelValue: shareTokens.value,\n \"onUpdate:modelValue\": _cache[164] || (_cache[164] = $event => shareTokens.value = $event),\n label: \"使用token名集合\",\n type: \"textarea\",\n placeholder: \"使用token名集合\",\n \"left-icon\": \"description-o\",\n readonly: true,\n \"input-align\": \"right\",\n onClickLeftIcon: _cache[165] || (_cache[165] = $event => copyToken(temAccessToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"]), _hoisted_227, _createVNode(_component_van_field, {\n modelValue: temPool_token.value,\n \"onUpdate:modelValue\": _cache[166] || (_cache[166] = $event => temPool_token.value = $event),\n readonly: true,\n type: \"textarea\",\n maxlength: \"100\",\n autoSize: \"\",\n name: \"pool_token的值\",\n label: \"pool_token的值\",\n \"input-align\": \"right\",\n placeholder: \"pool_token的值(不改则不变)\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[167] || (_cache[167] = $event => copyToken(temPool_token.value))\n }, null, 8, [\"modelValue\"]), _hoisted_228, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[168] || (_cache[168] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_229, intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_230, [_hoisted_231, _createElementVNode(\"div\", _hoisted_232, [_createVNode(_component_el_form_item, {\n disabled: \"\",\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n disabled: \"\",\n modelValue: poolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[169] || (_cache[169] = $event => poolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_233]),\n _: 1\n }), _hoisted_234, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: poolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[170] || (_cache[170] = $event => poolModel_mapping.value = $event),\n type: \"textarea\",\n disabled: \"\",\n autosize: \"\",\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_235, _createVNode(_component_van_field, {\n readonly: true,\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[171] || (_cache[171] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_236, _createVNode(_component_van_field, {\n readonly: true,\n \"input-align\": \"right\",\n name: \"checkboxGroup\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: temGroupChecked.value,\n \"onUpdate:modelValue\": _cache[172] || (_cache[172] = $event => temGroupChecked.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_237, _createVNode(_component_van_field, {\n readonly: true,\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[173] || (_cache[173] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义PandoraNext地址\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[174] || (_cache[174] = $event => copyToken(oneApi_pandoraUrl.value)),\n rules: [{\n required: true,\n message: '请填写自定义PandoraNext地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_238])) : _createCommentVNode(\"\", true)]),\n _: 1\n })]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"])], 64);\n };\n }\n});","/* unplugin-vue-components disabled */import script from \"./homeIndex.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./homeIndex.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./homeIndex.vue?vue&type=style&index=0&id=0921b920&lang=css\"\n\nconst __exports__ = script;\n\nexport default __exports__"],"names":["_hoisted_1","class","_hoisted_2","_","name","content","_hoisted_3","_hoisted_4","_hoisted_5","href","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","style","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","key","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31","_hoisted_32","_hoisted_33","_hoisted_34","_hoisted_35","_hoisted_36","_hoisted_37","_hoisted_38","_hoisted_39","_hoisted_40","_hoisted_41","_hoisted_42","_hoisted_43","_hoisted_44","_hoisted_45","_hoisted_46","_hoisted_47","_hoisted_48","_hoisted_49","_hoisted_50","_hoisted_51","_hoisted_52","_hoisted_53","_hoisted_54","_hoisted_55","_hoisted_56","_hoisted_57","_hoisted_58","_hoisted_59","_hoisted_60","_hoisted_61","_hoisted_62","_hoisted_63","_hoisted_64","_hoisted_65","_hoisted_66","_hoisted_67","_hoisted_68","_hoisted_69","_hoisted_70","_hoisted_71","_hoisted_72","_hoisted_73","_hoisted_74","_hoisted_75","_hoisted_76","_hoisted_77","_hoisted_78","_hoisted_79","_hoisted_80","_hoisted_81","_hoisted_82","_hoisted_83","_hoisted_84","_hoisted_85","_hoisted_86","_hoisted_87","_hoisted_88","_hoisted_89","_hoisted_90","_hoisted_91","_hoisted_92","_hoisted_93","_hoisted_94","_hoisted_95","_hoisted_96","_hoisted_97","_hoisted_98","_hoisted_99","_hoisted_100","_hoisted_101","_hoisted_102","_hoisted_103","_hoisted_104","_hoisted_105","_hoisted_106","_hoisted_107","_hoisted_108","_hoisted_109","_hoisted_110","_hoisted_111","_hoisted_112","_hoisted_113","_hoisted_114","_hoisted_115","_hoisted_116","_hoisted_117","_hoisted_118","_hoisted_119","_hoisted_120","_hoisted_121","_hoisted_122","_hoisted_123","_hoisted_124","_hoisted_125","_hoisted_126","_hoisted_127","_hoisted_128","_hoisted_129","_hoisted_130","_hoisted_131","_hoisted_132","_hoisted_133","_hoisted_134","_hoisted_135","_hoisted_136","_hoisted_137","_hoisted_138","_hoisted_139","_hoisted_140","_hoisted_141","_hoisted_142","_hoisted_143","_hoisted_144","_hoisted_145","_hoisted_146","_hoisted_147","_hoisted_148","_hoisted_149","_hoisted_150","_hoisted_151","_hoisted_152","_hoisted_153","_hoisted_154","_hoisted_155","_hoisted_156","_hoisted_157","_hoisted_158","_hoisted_159","_hoisted_160","_hoisted_161","_hoisted_162","_hoisted_163","_hoisted_164","_hoisted_165","_hoisted_166","_hoisted_167","_hoisted_168","_hoisted_169","_hoisted_170","_hoisted_171","_hoisted_172","_hoisted_173","_hoisted_174","_hoisted_175","_hoisted_176","_hoisted_177","_hoisted_178","_hoisted_179","_hoisted_180","_hoisted_181","_hoisted_182","_hoisted_183","_hoisted_184","_hoisted_185","_hoisted_186","_hoisted_187","_hoisted_188","_hoisted_189","_hoisted_190","_hoisted_191","_hoisted_192","_hoisted_193","_hoisted_194","_hoisted_195","_hoisted_196","_hoisted_197","_hoisted_198","_hoisted_199","_hoisted_200","_hoisted_201","_hoisted_202","_hoisted_203","_hoisted_204","_hoisted_205","_hoisted_206","_hoisted_207","_hoisted_208","_hoisted_209","_hoisted_210","_hoisted_211","_hoisted_212","_hoisted_213","_hoisted_214","_hoisted_215","_hoisted_216","_hoisted_217","_hoisted_218","_hoisted_219","_hoisted_220","_hoisted_221","_hoisted_222","_hoisted_223","_hoisted_224","_hoisted_225","_hoisted_226","_hoisted_227","_hoisted_228","_hoisted_229","_hoisted_230","_hoisted_231","_hoisted_232","_hoisted_233","_hoisted_234","_hoisted_235","_hoisted_236","_hoisted_237","_hoisted_238","temModel_mapping","pandoraNext","tokensTool","validation","__name","setup","__props","path","window","location","pathname","parts","split","prefix","length","temGroupChecked","groupChecked","multipleTableRef","multipleTableRefPool","multipleSelection","multipleSelectionPool","handleSelectionChange","val","value","poolSelectionChange","size","router","show","show_1","show_2","show_3","show_4","show_5","show_6","show_7","show_8","show_9","show_10","show_11","show_12","show_13","show_14","show_15","show_16","show_17","buttonValue","options","label","optionsModel","buttonModel","optionsPoolModel","buttonPoolValue","optionsPool","proxy_api_prefix","isolated_conv_title","bing","timeout","proxy_url","public_share","disable_signup","auto_conv_arkose","proxy_file_service","custom_doh_host","enabled","cert_file","key_file","site_password","setup_password","loginUsername","loginPassword","license_id","isGetToken","getTokenPassword","containerName","autoToken_url","whitelist","provider","site_key","site_secret","site_login","setup_login","oai_username","oai_password","auto_updateSession","auto_updateTime","auto_updateNumber","pandoraNext_outUrl","oneAPi_outUrl","oneAPi_intoToken","poolName","temPoolName","shareTokens","poolTime","poolNameValue","intoOneApi","poolModel_mapping","poolOneApi_models","addPoolOneApi_models","addPoolModel_mapping","oneApi_pandoraUrl","priority","temPool_token","customValidator","regex","test","sitePasswordValidator","poolNameValidator","addPasswordValidator","addSetPoolToken","setPoolToken","temName","temToken","temAccessToken","temShareToken","temUsername","temUserPassword","temShared","temShow_user_info","temPlus","temPassword","useRefreshToken","temCheckSession","tableData","poolData","shareData","loginData","addName","addUsername","addUserPassword","addTokenValue","addShared","addShow_user_info","addPlus","addUseRefreshToken","addPassword","addOneApi_name","addToken_name","addOneApi_baseUrl","addOneApi_models","addModel_mapping","addOneApi_groups","addPriority","innerHeight","valuePool","valueShare","token","localStorage","getItem","replace","headers","Authorization","fetchLoginToken","async","axios","post","then","response","data","code","console","error","catch","onSearch","getWebToken","getToken","includes","getAPIToken","onSearchShareToken","getShare","onSearchPoolToken","getPool","get","data_token","Array","isArray","resUsers","map","item","username","userPassword","access_token","share_token","shared","auto_shared","show_user_info","password","plus","updateTime","checkSession","filteredUsers","filter","user","getLoginData","resLogins","ipAddress","requestIp","outRequestNumber","inRequestNumber","lastLoginTime","responsePool","pool_token","resPools","poolToken","checkPool","loadingInstance","service","fullscreen","responseShare","resShares","oneApi_name","token_name","token_value","oneApi_baseUrl","oneApi_models","model_mapping","oneApi_groups","shareTime","close","getSetting","tls","endsWith","fetchDataAndFillForm","alert","confirmButtonText","callback","action","type","message","getSelectedData","selectedData","addSelectPoolToken","names","userData","JSON","parse","e","addPoolToken","toString","fetch","method","body","stringify","json","msg","handlePoolNameChange","selectedItem","find","handleShareNameChange","filteredTableData","requirePoolToken","log","addShareToken","pandoraUsage","innerWidth","Promise","all","current","total","tableRowClassName","row","poolRowClassName","redirectToExternalLink","open","redirectPandoraNextShare","url","charAt","requirePandoraNextLink","requireTokensToolLink","activeIndex","temRequireToken","handleSelect","keyPath","addToken","onAddToken","now","Date","formattedTime","getFullYear","getMonth","padStart","getDate","getHours","getMinutes","getSeconds","api","success","chart_show","showData","usageHeader","usageData","modelData","usage","startsWith","push","myChart_show","echarts","option","title","text","textStyle","fontSize","color","left","top","tooltip","legend","xAxis","yAxis","series","barWidth","itemStyle","params","colorList","dataIndex","setOption","temOneApi_models","temOneApi_groups","showShareToken","previousSetpoolToken","previousUseRefreshToken","previousToken","handleEdit","index","onRequireSetting","RequireSetting","setting","RequireAutoUpdate","RequireToken","confirm","cancelButtonText","openPandora","closePandora","AgainPandora","reloadPandora","pandoraIp","pandoraTime","getPandoraNext","ip","currentTime","futureTime","getTime","ttl","year","month","day","hours","minutes","seconds","updateAllShareToken","dangerouslyUseHTMLString","reNew","reNewMsg","ok","Error","reNewPool","reviewShare","requireShareToken","requireShare","review","reviewPool","deletePoolToken","verifySimplyPoolToken","deleteToken","put","deleteShareToken","formatDate","nowDay","timeDay","parseISO","daysDiff","differenceInDays","Math","ceil","dataToken","substring","logout","removeItem","getPoolToken","getShareToken","getLogin","redirectToGitHub","copyToken","textarea","document","createElement","appendChild","select","execCommand","removeChild","selectChoice","count","forEach","showPool","selectPoolChoice","selectedPoolData","temPoolData","chart","getUsage","model","myChart","_ctx","_cache","_component_el_menu_item","_component_van_icon","_component_el_sub_menu","_component_h10","_component_el_menu","_component_van_button","_component_el_page_header","_component_el_radio_button","_component_el_radio_group","_component_van_search","_component_el_table_column","_component_el_button","_component_el_tag","_component_el_popover","_component_el_option","_component_el_select","_component_el_button_group","_component_van_field","_component_van_switch","_component_van_cell_group","_component_van_form","_component_van_dialog","_component_CopyDocument","_component_el_icon","_component_el_select_group","_component_el_dialog","_component_el_form_item","_component_el_input","_component_van_checkbox","_component_van_checkbox_group","_directive_loading","mode","ellipsis","onSelect","default","src","alt","onClick","$event","icon","extra","square","modelValue","shape","clearable","placeholder","plain","onSelectionChange","ref_key","ref","prop","width","sortable","scope","circle","effect","trigger","placement","reference","$index","loading","filterable","onSubmit","inset","rules","required","validator","maxlength","autosize","maxHeight","minHeight","round","block","rows","readonly","onClickLeftIcon","disabled","property","multiple","input","direction","onChange","autoSize","Plus","shareToken","__exports__"],"sourceRoot":""}
\ No newline at end of file
diff --git a/rearServer/src/main/resources/static/js/app.5746d332.js b/rearServer/src/main/resources/static/js/app.5746d332.js
new file mode 100644
index 0000000..5357e29
--- /dev/null
+++ b/rearServer/src/main/resources/static/js/app.5746d332.js
@@ -0,0 +1,2 @@
+(function(){"use strict";var e={2386:function(e,t,n){n(6284);var o=n(5943),r=(n(262),n(1387)),u=(n(9908),n(1332)),i=(n(8528),n(2779)),a=(n(1746),n(2994)),s=(n(4205),n(5695)),c=(n(7055),n(1819)),f=(n(8845),n(299)),l=(n(487),n(6773)),d=(n(9517),n(5616)),p=(n(4618),n(8498)),m=(n(1763),n(1817)),v=(n(656),n(4326)),h=(n(8001),n(5601)),P=(n(492),n(2876)),b=(n(1897),n(157)),g=(n(4150),n(2495)),Z=(n(9042),n(3383)),y=(n(8825),n(1116)),k=(n(1645),n(5267)),T=(n(6335),n(3164)),w=(n(3349),n(5185)),O=(n(4746),n(6907)),N=(n(9846),n(4188)),x=(n(9840),n(6233)),j=(n(103),n(1206)),C=(n(2824),n(3801)),A=(n(3300),n(8521)),E=(n(6615),n(2406)),S=(n(4164),n(121)),_=(n(8399),n(5420)),L=n(9963),B=n(2403),F=(n(4415),n(6252));const D={id:"app"};function q(e,t,n,o,r,u){const i=(0,F.up)("router-view");return(0,F.wg)(),(0,F.iD)("div",D,[(0,F.Wm)(i)])}var z=(0,F.aZ)({setup(){const e=(e,t)=>{let n;return function(...o){const r=self;n&&clearTimeout(n),n=setTimeout((()=>{e.apply(r,o)}),t)}},t=window.ResizeObserver;window.ResizeObserver=class extends t{constructor(t){t=e(t,20),super(t)}}}}),M=n(3744);const R=(0,M.Z)(z,[["render",q]]);var W=R,H=(n(5110),n(2201));const I=[{path:"/",component:()=>Promise.all([n.e(154),n.e(678)]).then(n.bind(n,1395)),meta:{title:"Welcome to PandoraNext-TokensTool",keepAlive:!0}},{path:"/home",component:()=>Promise.all([n.e(154),n.e(164),n.e(813)]).then(n.bind(n,6521)),meta:{title:"PandoraNext-TokensTool",keepAlive:!0}},{path:"/iphone",component:()=>Promise.all([n.e(154),n.e(164),n.e(666)]).then(n.bind(n,3666)),meta:{title:"PandoraNext-TokensTool",keepAlive:!0}}],K=(0,H.p7)({history:(0,H.r5)(),routes:I});K.beforeEach(((e,t,n)=>{e.meta.title?document.title=`${e.meta.title}`:document.title="PandoraNext-TokensTool",n()}));var U=K,$=n(5781);const G=(0,L.ri)(W);G.use(B.Z),G.use(_.ZP),G.use(S.ZP),G.use(E.ZP),G.use(U),G.use(A.ZP),G.use(C.ZP),G.use(j.ZP),G.use(x.Z),G.use(N.ZP),G.use(O.ZP),G.use(w.ZP),G.use(T.ZP),G.use(k.ZP),G.use(y.ZP),G.use(Z.ZP),G.use(g.ZP),G.use(b.ZP),G.use(P.ZP),G.use(h.ZP),G.use(v.ZP),G.use(m.ZP),G.use(p.ZP),G.use(d.ZP),G.use(l.ZP),G.use(f.ZP),G.use(c.ZP),G.use(s.ZP),G.use(a.ZP),G.use(i.ZP),G.use(u.ZP),G.use(r.ZP),G.use(o.ZP);for(const[J,Q]of Object.entries($))G.component(J,Q);G.mount("#app")}},t={};function n(o){var r=t[o];if(void 0!==r)return r.exports;var u=t[o]={exports:{}};return e[o].call(u.exports,u,u.exports,n),u.exports}n.m=e,function(){var e=[];n.O=function(t,o,r,u){if(!o){var i=1/0;for(f=0;f=u)&&Object.keys(n.O).every((function(e){return n.O[e](o[s])}))?o.splice(s--,1):(a=!1,u0&&e[f-1][2]>u;f--)e[f]=e[f-1];e[f]=[o,r,u]}}(),function(){n.d=function(e,t){for(var o in t)n.o(t,o)&&!n.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})}}(),function(){n.f={},n.e=function(e){return Promise.all(Object.keys(n.f).reduce((function(t,o){return n.f[o](e,t),t}),[]))}}(),function(){n.u=function(e){return"js/"+e+"."+{154:"a30ad9b8",164:"26eb0f21",666:"e7a6709e",678:"15d2c0c6",813:"784e18ef"}[e]+".js"}}(),function(){n.miniCssF=function(e){return"css/"+e+"."+{666:"a0b15fa3",678:"1337824f",813:"7bb6ef32"}[e]+".css"}}(),function(){n.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}()}(),function(){n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}}(),function(){var e={},t="PandoraNext-TokensTool:";n.l=function(o,r,u,i){if(e[o])e[o].push(r);else{var a,s;if(void 0!==u)for(var c=document.getElementsByTagName("script"),f=0;f {\n let tid;\n return function (...args) {\n const ctx = self;\n tid && clearTimeout(tid);\n tid = setTimeout(() => {\n callback.apply(ctx, args);\n }, delay);\n };\n };\n const _ = window.ResizeObserver;\n window.ResizeObserver = class ResizeObserver extends _ {\n constructor(callback) {\n callback = debounce(callback, 20);\n super(callback);\n }\n };\n }\n});","/* unplugin-vue-components disabled */import { render } from \"./App.vue?vue&type=template&id=1a8491d9&ts=true\"\nimport script from \"./App.vue?vue&type=script&lang=ts\"\nexport * from \"./App.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { createRouter, createWebHashHistory } from 'vue-router';\r\n\r\n\r\nconst routes = [\r\n { path: '/', component: () => import('@/views/loginIndex.vue'), meta: { title: 'Welcome to PandoraNext-TokensTool',keepAlive: true }},\r\n { path: '/home', component: () => import('@/views/homeIndex.vue'), meta: { title: 'PandoraNext-TokensTool',keepAlive: true }},\r\n { path: '/iphone', component: () => import('@/views/homeIphone.vue'), meta: { title: 'PandoraNext-TokensTool',keepAlive: true }},\r\n];\r\n\r\nconst router = createRouter({\r\n history: createWebHashHistory(),\r\n routes\r\n});\r\n\r\nrouter.beforeEach((to, from, next) => {\r\n // 检查是否存在to.meta.title,如果存在则设置页面标题为to.meta.title,否则使用默认标题\r\n if (to.meta.title) {\r\n document.title = `${to.meta.title}`; // 使用字符串模板将其转换为字符串\r\n } else {\r\n document.title = 'PandoraNext-TokensTool';\r\n }\r\n next();\r\n});\r\n\r\nexport default router;\r\n","import { createApp } from 'vue';\nimport ElementPlus from 'element-plus'\nimport 'element-plus/dist/index.css'\nimport App from './App.vue';\nimport 'vant/lib/index.css';\n//转向用的\nimport router from './router';\n//标签栏\nimport { Tabbar, TabbarItem } from 'vant';\n//加载图片懒模式\nimport { Swipe, SwipeItem } from 'vant';\nimport { NavBar } from 'vant';\nimport { ContactList } from 'vant';\nimport { AddressEdit } from 'vant';\nimport { FloatingBubble } from 'vant';\nimport { Button } from 'vant';\nimport { Form, Field, CellGroup } from 'vant';\nimport { Uploader } from 'vant';\nimport { Loading } from 'vant';\nimport { Search } from 'vant';\nimport { NoticeBar } from 'vant';\nimport { Dialog } from 'vant';\nimport { BackTop } from 'vant';\nimport { TextEllipsis } from 'vant';\nimport { Slider } from 'vant';\nimport { Toast } from 'vant';\nimport { Notify } from 'vant';\nimport { Checkbox, CheckboxGroup } from 'vant';\nimport { Grid, GridItem } from 'vant';\nimport {\n Skeleton,\n SkeletonTitle,\n SkeletonImage,\n SkeletonAvatar,\n SkeletonParagraph,\n} from 'vant';\nimport * as ElementPlusIconsVue from '@element-plus/icons-vue'\n\n//滑动单元格\n\nconst app = createApp(App)\napp.use(ElementPlus)\napp.use(AddressEdit);\n//滑动单元格\n//积分和代办栏\napp.use(ContactList);\n// 主题栏\napp.use(NavBar);\napp.use(router);//转向用的\n//标签栏\napp.use(Tabbar);\napp.use(TabbarItem);\n//加载图片懒模式\napp.use(Swipe);\n\napp.use(SwipeItem);\n\napp.use(FloatingBubble);\napp.use(Button);\n\napp.use(Form);\napp.use(Field);\napp.use(CellGroup);\n\n// 加载\napp.use(Loading)\n\n// 下载\napp.use(Uploader);\n\n// 通知栏\napp.use(NoticeBar);\n\n// 搜索\napp.use(Search);\n\n// 弹框\napp.use(Dialog);\n\napp.use(BackTop);\n\napp.use(TextEllipsis);\n\napp.use(Slider);\n\napp.use(Toast);\n\napp.use(Notify);\n\napp.use(Checkbox);\n\napp.use(CheckboxGroup);\n\napp.use(Grid);\n\napp.use(GridItem);\n\napp.use(Skeleton);\napp.use(SkeletonTitle);\napp.use(SkeletonImage);\napp.use(SkeletonAvatar);\napp.use(SkeletonParagraph);\n\nfor (const [key, component] of Object.entries(ElementPlusIconsVue)) {\n app.component(key, component)\n}\napp.mount('#app');","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"js/\" + chunkId + \".\" + {\"98\":\"13ca7e42\",\"154\":\"a30ad9b8\",\"164\":\"26eb0f21\",\"386\":\"27cc819e\",\"724\":\"cd26d2dd\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"css/\" + chunkId + \".\" + {\"98\":\"7bb6ef32\",\"386\":\"a0b15fa3\",\"724\":\"97ac894e\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"PandoraNext-TokensTool:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"\";","if (typeof document === \"undefined\") return;\nvar createStylesheet = function(chunkId, fullhref, oldTag, resolve, reject) {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tvar onLinkComplete = function(event) {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + realHref + \")\");\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tif (linkTag.parentNode) linkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\tif (oldTag) {\n\t\toldTag.parentNode.insertBefore(linkTag, oldTag.nextSibling);\n\t} else {\n\t\tdocument.head.appendChild(linkTag);\n\t}\n\treturn linkTag;\n};\nvar findStylesheet = function(href, fullhref) {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = function(chunkId) {\n\treturn new Promise(function(resolve, reject) {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, null, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.miniCss = function(chunkId, promises) {\n\tvar cssChunks = {\"98\":1,\"386\":1,\"724\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(function() {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, function(e) {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkPandoraNext_TokensTool\"] = self[\"webpackChunkPandoraNext_TokensTool\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [998], function() { return __webpack_require__(2386); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["_hoisted_1","id","render","_ctx","_cache","$props","$setup","$data","$options","_component_router_view","setup","debounce","callback","delay","tid","args","ctx","self","clearTimeout","setTimeout","apply","_","window","ResizeObserver","constructor","super","__exports__","routes","path","component","meta","title","keepAlive","router","createRouter","history","createWebHashHistory","beforeEach","to","from","next","document","app","createApp","App","use","ElementPlus","_AddressEdit","_ContactList","_NavBar","_Tabbar","_TabbarItem","_Swipe","_SwipeItem","_FloatingBubble","_Button","_Form","_Field","_CellGroup","_Loading","_Uploader","_NoticeBar","_Search","_Dialog","_BackTop","_TextEllipsis","_Slider","_Toast","_Notify","_Checkbox","_CheckboxGroup","_Grid","_GridItem","_Skeleton","_SkeletonTitle","_SkeletonImage","_SkeletonAvatar","_SkeletonParagraph","key","Object","entries","ElementPlusIconsVue","mount","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","call","m","deferred","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","length","fulfilled","j","keys","every","splice","r","d","definition","o","defineProperty","enumerable","get","f","e","chunkId","Promise","all","reduce","promises","u","miniCssF","g","globalThis","this","Function","obj","prop","prototype","hasOwnProperty","inProgress","dataWebpackPrefix","l","url","done","push","script","needAttach","scripts","getElementsByTagName","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","event","onerror","onload","doneFns","parentNode","removeChild","forEach","bind","type","target","head","appendChild","Symbol","toStringTag","value","p","createStylesheet","fullhref","oldTag","resolve","reject","linkTag","rel","onLinkComplete","errorType","realHref","href","err","Error","code","request","insertBefore","nextSibling","findStylesheet","existingLinkTags","tag","dataHref","existingStyleTags","loadStylesheet","installedCssChunks","miniCss","cssChunks","then","installedChunks","installedChunkData","promise","error","loadingEnded","realSrc","message","name","webpackJsonpCallback","parentChunkLoadingFunction","data","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"file":"js/app.5746d332.js","mappings":"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","sources":["webpack://PandoraNext-TokensTool/./src/App.vue?6124","webpack://PandoraNext-TokensTool/./src/App.vue","webpack://PandoraNext-TokensTool/./src/App.vue?b1e7","webpack://PandoraNext-TokensTool/./src/router/index.ts","webpack://PandoraNext-TokensTool/./src/main.ts","webpack://PandoraNext-TokensTool/webpack/bootstrap","webpack://PandoraNext-TokensTool/webpack/runtime/chunk loaded","webpack://PandoraNext-TokensTool/webpack/runtime/define property getters","webpack://PandoraNext-TokensTool/webpack/runtime/ensure chunk","webpack://PandoraNext-TokensTool/webpack/runtime/get javascript chunk filename","webpack://PandoraNext-TokensTool/webpack/runtime/get mini-css chunk filename","webpack://PandoraNext-TokensTool/webpack/runtime/global","webpack://PandoraNext-TokensTool/webpack/runtime/hasOwnProperty shorthand","webpack://PandoraNext-TokensTool/webpack/runtime/load script","webpack://PandoraNext-TokensTool/webpack/runtime/make namespace object","webpack://PandoraNext-TokensTool/webpack/runtime/publicPath","webpack://PandoraNext-TokensTool/webpack/runtime/css loading","webpack://PandoraNext-TokensTool/webpack/runtime/jsonp chunk loading","webpack://PandoraNext-TokensTool/webpack/startup"],"sourcesContent":["import { resolveComponent as _resolveComponent, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\";\nconst _hoisted_1 = {\n id: \"app\"\n};\nexport function render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_router_view = _resolveComponent(\"router-view\");\n return _openBlock(), _createElementBlock(\"div\", _hoisted_1, [_createVNode(_component_router_view)]);\n}","import { defineComponent } from \"vue\";\nexport default defineComponent({\n setup() {\n const debounce = (callback, delay) => {\n let tid;\n return function (...args) {\n const ctx = self;\n tid && clearTimeout(tid);\n tid = setTimeout(() => {\n callback.apply(ctx, args);\n }, delay);\n };\n };\n const _ = window.ResizeObserver;\n window.ResizeObserver = class ResizeObserver extends _ {\n constructor(callback) {\n callback = debounce(callback, 20);\n super(callback);\n }\n };\n }\n});","/* unplugin-vue-components disabled */import { render } from \"./App.vue?vue&type=template&id=1a8491d9&ts=true\"\nimport script from \"./App.vue?vue&type=script&lang=ts\"\nexport * from \"./App.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { createRouter, createWebHashHistory } from 'vue-router';\r\n\r\n\r\nconst routes = [\r\n { path: '/', component: () => import('@/views/loginIndex.vue'), meta: { title: 'Welcome to PandoraNext-TokensTool',keepAlive: true }},\r\n { path: '/home', component: () => import('@/views/homeIndex.vue'), meta: { title: 'PandoraNext-TokensTool',keepAlive: true }},\r\n { path: '/iphone', component: () => import('@/views/homeIphone.vue'), meta: { title: 'PandoraNext-TokensTool',keepAlive: true }},\r\n];\r\n\r\nconst router = createRouter({\r\n history: createWebHashHistory(),\r\n routes\r\n});\r\n\r\nrouter.beforeEach((to, from, next) => {\r\n // 检查是否存在to.meta.title,如果存在则设置页面标题为to.meta.title,否则使用默认标题\r\n if (to.meta.title) {\r\n document.title = `${to.meta.title}`; // 使用字符串模板将其转换为字符串\r\n } else {\r\n document.title = 'PandoraNext-TokensTool';\r\n }\r\n next();\r\n});\r\n\r\nexport default router;\r\n","import { createApp } from 'vue';\nimport ElementPlus from 'element-plus'\nimport 'element-plus/dist/index.css'\nimport App from './App.vue';\nimport 'vant/lib/index.css';\n//转向用的\nimport router from './router';\n//标签栏\nimport { Tabbar, TabbarItem } from 'vant';\n//加载图片懒模式\nimport { Swipe, SwipeItem } from 'vant';\nimport { NavBar } from 'vant';\nimport { ContactList } from 'vant';\nimport { AddressEdit } from 'vant';\nimport { FloatingBubble } from 'vant';\nimport { Button } from 'vant';\nimport { Form, Field, CellGroup } from 'vant';\nimport { Uploader } from 'vant';\nimport { Loading } from 'vant';\nimport { Search } from 'vant';\nimport { NoticeBar } from 'vant';\nimport { Dialog } from 'vant';\nimport { BackTop } from 'vant';\nimport { TextEllipsis } from 'vant';\nimport { Slider } from 'vant';\nimport { Toast } from 'vant';\nimport { Notify } from 'vant';\nimport { Checkbox, CheckboxGroup } from 'vant';\nimport { Grid, GridItem } from 'vant';\nimport {\n Skeleton,\n SkeletonTitle,\n SkeletonImage,\n SkeletonAvatar,\n SkeletonParagraph,\n} from 'vant';\nimport * as ElementPlusIconsVue from '@element-plus/icons-vue'\n\n//滑动单元格\n\nconst app = createApp(App)\napp.use(ElementPlus)\napp.use(AddressEdit);\n//滑动单元格\n//积分和代办栏\napp.use(ContactList);\n// 主题栏\napp.use(NavBar);\napp.use(router);//转向用的\n//标签栏\napp.use(Tabbar);\napp.use(TabbarItem);\n//加载图片懒模式\napp.use(Swipe);\n\napp.use(SwipeItem);\n\napp.use(FloatingBubble);\napp.use(Button);\n\napp.use(Form);\napp.use(Field);\napp.use(CellGroup);\n\n// 加载\napp.use(Loading)\n\n// 下载\napp.use(Uploader);\n\n// 通知栏\napp.use(NoticeBar);\n\n// 搜索\napp.use(Search);\n\n// 弹框\napp.use(Dialog);\n\napp.use(BackTop);\n\napp.use(TextEllipsis);\n\napp.use(Slider);\n\napp.use(Toast);\n\napp.use(Notify);\n\napp.use(Checkbox);\n\napp.use(CheckboxGroup);\n\napp.use(Grid);\n\napp.use(GridItem);\n\napp.use(Skeleton);\napp.use(SkeletonTitle);\napp.use(SkeletonImage);\napp.use(SkeletonAvatar);\napp.use(SkeletonParagraph);\n\nfor (const [key, component] of Object.entries(ElementPlusIconsVue)) {\n app.component(key, component)\n}\napp.mount('#app');","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"js/\" + chunkId + \".\" + {\"154\":\"a30ad9b8\",\"164\":\"26eb0f21\",\"666\":\"e7a6709e\",\"678\":\"15d2c0c6\",\"813\":\"784e18ef\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"css/\" + chunkId + \".\" + {\"666\":\"a0b15fa3\",\"678\":\"1337824f\",\"813\":\"7bb6ef32\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"PandoraNext-TokensTool:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"\";","if (typeof document === \"undefined\") return;\nvar createStylesheet = function(chunkId, fullhref, oldTag, resolve, reject) {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tvar onLinkComplete = function(event) {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + realHref + \")\");\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tif (linkTag.parentNode) linkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\tif (oldTag) {\n\t\toldTag.parentNode.insertBefore(linkTag, oldTag.nextSibling);\n\t} else {\n\t\tdocument.head.appendChild(linkTag);\n\t}\n\treturn linkTag;\n};\nvar findStylesheet = function(href, fullhref) {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = function(chunkId) {\n\treturn new Promise(function(resolve, reject) {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, null, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.miniCss = function(chunkId, promises) {\n\tvar cssChunks = {\"666\":1,\"678\":1,\"813\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(function() {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, function(e) {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkPandoraNext_TokensTool\"] = self[\"webpackChunkPandoraNext_TokensTool\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [998], function() { return __webpack_require__(2386); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["_hoisted_1","id","render","_ctx","_cache","$props","$setup","$data","$options","_component_router_view","setup","debounce","callback","delay","tid","args","ctx","self","clearTimeout","setTimeout","apply","_","window","ResizeObserver","constructor","super","__exports__","routes","path","component","meta","title","keepAlive","router","createRouter","history","createWebHashHistory","beforeEach","to","from","next","document","app","createApp","App","use","ElementPlus","_AddressEdit","_ContactList","_NavBar","_Tabbar","_TabbarItem","_Swipe","_SwipeItem","_FloatingBubble","_Button","_Form","_Field","_CellGroup","_Loading","_Uploader","_NoticeBar","_Search","_Dialog","_BackTop","_TextEllipsis","_Slider","_Toast","_Notify","_Checkbox","_CheckboxGroup","_Grid","_GridItem","_Skeleton","_SkeletonTitle","_SkeletonImage","_SkeletonAvatar","_SkeletonParagraph","key","Object","entries","ElementPlusIconsVue","mount","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","call","m","deferred","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","length","fulfilled","j","keys","every","splice","r","d","definition","o","defineProperty","enumerable","get","f","e","chunkId","Promise","all","reduce","promises","u","miniCssF","g","globalThis","this","Function","obj","prop","prototype","hasOwnProperty","inProgress","dataWebpackPrefix","l","url","done","push","script","needAttach","scripts","getElementsByTagName","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","event","onerror","onload","doneFns","parentNode","removeChild","forEach","bind","type","target","head","appendChild","Symbol","toStringTag","value","p","createStylesheet","fullhref","oldTag","resolve","reject","linkTag","rel","onLinkComplete","errorType","realHref","href","err","Error","code","request","insertBefore","nextSibling","findStylesheet","existingLinkTags","tag","dataHref","existingStyleTags","loadStylesheet","installedCssChunks","miniCss","cssChunks","then","installedChunks","installedChunkData","promise","error","loadingEnded","realSrc","message","name","webpackJsonpCallback","parentChunkLoadingFunction","data","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}
\ No newline at end of file
diff --git a/rearServer/src/main/resources/static/js/app.91a873ef.js b/rearServer/src/main/resources/static/js/app.91a873ef.js
deleted file mode 100644
index c8bcbe0..0000000
--- a/rearServer/src/main/resources/static/js/app.91a873ef.js
+++ /dev/null
@@ -1,2 +0,0 @@
-(function(){"use strict";var e={2386:function(e,t,n){n(6284);var o=n(5943),r=(n(262),n(1387)),u=(n(9908),n(1332)),i=(n(8528),n(2779)),a=(n(1746),n(2994)),s=(n(4205),n(5695)),c=(n(7055),n(1819)),l=(n(8845),n(299)),f=(n(487),n(6773)),d=(n(9517),n(5616)),p=(n(4618),n(8498)),m=(n(1763),n(1817)),v=(n(656),n(4326)),h=(n(8001),n(5601)),P=(n(492),n(2876)),b=(n(1897),n(157)),g=(n(4150),n(2495)),Z=(n(9042),n(3383)),y=(n(8825),n(1116)),k=(n(1645),n(5267)),T=(n(6335),n(3164)),w=(n(3349),n(5185)),O=(n(4746),n(6907)),N=(n(9846),n(4188)),x=(n(9840),n(6233)),j=(n(103),n(1206)),C=(n(2824),n(3801)),A=(n(3300),n(8521)),E=(n(6615),n(2406)),S=(n(4164),n(121)),_=(n(8399),n(5420)),L=n(9963),B=n(2403),F=(n(4415),n(6252));const D={id:"app"};function q(e,t,n,o,r,u){const i=(0,F.up)("router-view");return(0,F.wg)(),(0,F.iD)("div",D,[(0,F.Wm)(i)])}var z=(0,F.aZ)({setup(){const e=(e,t)=>{let n;return function(...o){const r=self;n&&clearTimeout(n),n=setTimeout((()=>{e.apply(r,o)}),t)}},t=window.ResizeObserver;window.ResizeObserver=class extends t{constructor(t){t=e(t,20),super(t)}}}}),M=n(3744);const R=(0,M.Z)(z,[["render",q]]);var W=R,H=(n(5110),n(2201));const I=[{path:"/",component:()=>Promise.all([n.e(154),n.e(724)]).then(n.bind(n,1769)),meta:{title:"Welcome to PandoraNext-TokensTool",keepAlive:!0}},{path:"/home",component:()=>Promise.all([n.e(154),n.e(164),n.e(98)]).then(n.bind(n,2098)),meta:{title:"PandoraNext-TokensTool",keepAlive:!0}},{path:"/iphone",component:()=>Promise.all([n.e(154),n.e(164),n.e(386)]).then(n.bind(n,386)),meta:{title:"PandoraNext-TokensTool",keepAlive:!0}}],K=(0,H.p7)({history:(0,H.r5)(),routes:I});K.beforeEach(((e,t,n)=>{e.meta.title?document.title=`${e.meta.title}`:document.title="PandoraNext-TokensTool",n()}));var U=K,$=n(5781);const G=(0,L.ri)(W);G.use(B.Z),G.use(_.ZP),G.use(S.ZP),G.use(E.ZP),G.use(U),G.use(A.ZP),G.use(C.ZP),G.use(j.ZP),G.use(x.Z),G.use(N.ZP),G.use(O.ZP),G.use(w.ZP),G.use(T.ZP),G.use(k.ZP),G.use(y.ZP),G.use(Z.ZP),G.use(g.ZP),G.use(b.ZP),G.use(P.ZP),G.use(h.ZP),G.use(v.ZP),G.use(m.ZP),G.use(p.ZP),G.use(d.ZP),G.use(f.ZP),G.use(l.ZP),G.use(c.ZP),G.use(s.ZP),G.use(a.ZP),G.use(i.ZP),G.use(u.ZP),G.use(r.ZP),G.use(o.ZP);for(const[J,Q]of Object.entries($))G.component(J,Q);G.mount("#app")}},t={};function n(o){var r=t[o];if(void 0!==r)return r.exports;var u=t[o]={exports:{}};return e[o].call(u.exports,u,u.exports,n),u.exports}n.m=e,function(){var e=[];n.O=function(t,o,r,u){if(!o){var i=1/0;for(l=0;l=u)&&Object.keys(n.O).every((function(e){return n.O[e](o[s])}))?o.splice(s--,1):(a=!1,u0&&e[l-1][2]>u;l--)e[l]=e[l-1];e[l]=[o,r,u]}}(),function(){n.d=function(e,t){for(var o in t)n.o(t,o)&&!n.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})}}(),function(){n.f={},n.e=function(e){return Promise.all(Object.keys(n.f).reduce((function(t,o){return n.f[o](e,t),t}),[]))}}(),function(){n.u=function(e){return"js/"+e+"."+{98:"13ca7e42",154:"a30ad9b8",164:"26eb0f21",386:"27cc819e",724:"cd26d2dd"}[e]+".js"}}(),function(){n.miniCssF=function(e){return"css/"+e+"."+{98:"7bb6ef32",386:"a0b15fa3",724:"97ac894e"}[e]+".css"}}(),function(){n.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}()}(),function(){n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}}(),function(){var e={},t="PandoraNext-TokensTool:";n.l=function(o,r,u,i){if(e[o])e[o].push(r);else{var a,s;if(void 0!==u)for(var c=document.getElementsByTagName("script"),l=0;lWelcome to PandoraNext-TokensTool
\ No newline at end of file
+Welcome to PandoraNext-TokensTool
\ No newline at end of file
diff --git a/rearServer/target/classes/static/js/386.27cc819e.js b/rearServer/target/classes/static/js/386.27cc819e.js
deleted file mode 100644
index 55f83d5..0000000
--- a/rearServer/target/classes/static/js/386.27cc819e.js
+++ /dev/null
@@ -1,2 +0,0 @@
-"use strict";(self["webpackChunkPandoraNext_TokensTool"]=self["webpackChunkPandoraNext_TokensTool"]||[]).push([[386],{386:function(e,l,a){a.r(l),a.d(l,{default:function(){return ht}});var o=a(299),t=(a(8845),a(6773)),n=(a(487),a(2876)),u=(a(492),a(5185)),i=(a(3349),a(5267)),r=(a(1645),a(7630)),s=(a(7034),a(3164)),d=(a(6335),a(157)),m=(a(1897),a(6907)),c=(a(4746),a(294)),p=(a(6870),a(560),a(6252)),v=a(3577),h=a(2262),_=a(1094),w=a(2201),k=a(6154),b=a(844),f=a(1348),g=a(9288),y=a(2534),V=a(3028),W=a(4708),T=a(1893);const x={class:"content"},U=(0,p._)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no"},null,-1),H=(0,p._)("img",{style:{width:"25px"},src:_},null,-1),A={class:"home-container"},z=(0,p._)("div",{class:"flex-grow"},null,-1),P=(0,p._)("a",{href:"https://ai.fakeopen.com/auth"},"PandoraNext地址",-1),S=(0,p._)("a",{href:"https://chat.openai.com/api/auth/session"},"OpenAI官网",-1),N=(0,p._)("a",{href:"https://github.com/Yanyutin753/PandoraNext-TokensTool"},"TokensTool地址",-1),O={style:{display:"block"}},C=(0,p._)("div",{class:"flex items-center"},[(0,p._)("span",{class:"font-h4"},"PandoraNext-TokensTool "),(0,p._)("span",{class:"font-h4-tag"},"v0.6.8 ")],-1),$={class:"under"},I={class:"search"},B={style:{display:"flex",margin:"0px 0px -20px 0px"}},D={style:{display:"flex",width:"88vw",height:"63vh",transform:"translateX(0vw)"}},q={style:{display:"flex","align-items":"center"}},j={style:{"margin-left":"15px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},L={style:{"margin-left":"15px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},M={style:{margin:"13px",transform:"translateX(7px)"}},Z=(0,p._)("h1",null,"批量操作",-1),J=(0,p._)("br",null,null,-1),K={style:{display:"block"}},E=(0,p._)("br",null,null,-1),R=(0,p._)("br",null,null,-1),Y=(0,p._)("br",null,null,-1),X={key:0},F=(0,p._)("br",null,null,-1),G=(0,p._)("br",null,null,-1),Q={key:0},ee=(0,p._)("br",null,null,-1),le=(0,p._)("br",null,null,-1),ae={key:1},oe=(0,p._)("br",null,null,-1),te=(0,p._)("br",null,null,-1),ne=(0,p._)("br",null,null,-1),ue={style:{margin:"5.2px"}},ie=(0,p._)("br",null,null,-1),re={style:{display:"block"}},se=(0,p._)("br",null,null,-1),de=(0,p._)("br",null,null,-1),me=(0,p._)("br",null,null,-1),ce=(0,p._)("br",null,null,-1),pe={key:0},ve=(0,p._)("br",null,null,-1),he={key:1},_e=(0,p._)("br",null,null,-1),we={key:0},ke=(0,p._)("br",null,null,-1),be=(0,p._)("br",null,null,-1),fe={key:2},ge=(0,p._)("br",null,null,-1),ye={key:3},Ve=(0,p._)("br",null,null,-1),We=(0,p._)("br",null,null,-1),Te={style:{margin:"5.2px"}},xe=(0,p._)("br",null,null,-1),Ue={style:{display:"block"}},He=(0,p._)("br",null,null,-1),Ae=(0,p._)("br",null,null,-1),ze=(0,p._)("br",null,null,-1),Pe=(0,p._)("br",null,null,-1),Se=(0,p._)("br",null,null,-1),Ne=(0,p._)("br",null,null,-1),Oe=(0,p._)("br",null,null,-1),Ce=(0,p._)("br",null,null,-1),$e=(0,p._)("br",null,null,-1),Ie=(0,p._)("br",null,null,-1),Be={key:0},De=(0,p._)("br",null,null,-1),qe=(0,p._)("br",null,null,-1),je={key:0},Le=(0,p._)("br",null,null,-1),Me={style:{display:"block"}},Ze=(0,p._)("br",null,null,-1),Je=(0,p._)("br",null,null,-1),Ke=(0,p._)("br",null,null,-1),Ee=(0,p._)("br",null,null,-1),Re=(0,p._)("br",null,null,-1),Ye=(0,p._)("br",null,null,-1),Xe={key:0},Fe=(0,p._)("br",null,null,-1),Ge=(0,p._)("br",null,null,-1),Qe=(0,p._)("br",null,null,-1),el=(0,p._)("br",null,null,-1),ll=(0,p._)("br",null,null,-1),al=(0,p._)("br",null,null,-1),ol=(0,p._)("br",null,null,-1),tl=(0,p._)("br",null,null,-1),nl={style:{margin:"5.2px"}},ul=(0,p._)("br",null,null,-1),il={style:{display:"block"}},rl=(0,p._)("br",null,null,-1),sl=(0,p._)("br",null,null,-1),dl=(0,p._)("br",null,null,-1),ml=(0,p._)("br",null,null,-1),cl=(0,p._)("br",null,null,-1),pl=(0,p._)("br",null,null,-1),vl=(0,p._)("br",null,null,-1),hl=(0,p._)("br",null,null,-1),_l={key:0},wl=(0,p._)("br",null,null,-1),kl=(0,p._)("br",null,null,-1),bl=(0,p._)("br",null,null,-1),fl={style:{margin:"5.2px"}},gl=(0,p._)("br",null,null,-1),yl={style:{display:"block"}},Vl=(0,p._)("br",null,null,-1),Wl=(0,p._)("br",null,null,-1),Tl=(0,p._)("br",null,null,-1),xl=(0,p._)("br",null,null,-1),Ul=(0,p._)("br",null,null,-1),Hl=(0,p._)("br",null,null,-1),Al=(0,p._)("br",null,null,-1),zl=(0,p._)("br",null,null,-1),Pl={style:{margin:"5.2px"}},Sl=(0,p._)("br",null,null,-1),Nl={style:{display:"flex",transform:"translate(0vw, -2vh)"}},Ol={style:{display:"flex",transform:"translate(calc(-2.5% - 20px), 0vh)",width:"calc(102.5% + 40px)"}},Cl={style:{"margin-left":"10px",display:"flex","align-items":"center"}},$l={key:0},Il=(0,p._)("h5",null,"oneApi4",-1),Bl={key:1},Dl=(0,p._)("h5",null,"oneApi3",-1),ql={key:2},jl=(0,p._)("h5",null,"Json",-1),Ll={style:{"margin-left":"20px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Ml={style:{display:"flex","align-items":"center",overflow:"auto"}},Zl={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Jl=(0,p._)("span",{style:{"margin-left":"0px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},"点击此进行查看",-1),Kl={style:{margin:"10px 0px 10px 0px"}},El=(0,p._)("h1",null,"批量操作",-1),Rl=(0,p._)("br",null,null,-1),Yl={style:{display:"block"}},Xl=(0,p._)("br",null,null,-1),Fl=(0,p._)("br",null,null,-1),Gl=(0,p._)("br",null,null,-1),Ql=(0,p._)("br",null,null,-1),ea={style:{display:"block"}},la=(0,p._)("br",null,null,-1),aa={key:0},oa=(0,p._)("br",null,null,-1),ta=(0,p._)("br",null,null,-1),na=(0,p._)("br",null,null,-1),ua=(0,p._)("br",null,null,-1),ia=(0,p._)("br",null,null,-1),ra=(0,p._)("br",null,null,-1),sa={style:{margin:"5.2px"}},da=(0,p._)("br",null,null,-1),ma={style:{display:"block"}},ca=(0,p._)("br",null,null,-1),pa={key:0},va=(0,p._)("br",null,null,-1),ha={style:{transform:"translateX(16px)"}},_a=(0,p._)("br",null,null,-1),wa=(0,p._)("br",null,null,-1),ka=(0,p._)("br",null,null,-1),ba=(0,p._)("br",null,null,-1),fa={style:{"margin-bottom":"5px"}},ga={style:{"margin-bottom":"5px"}},ya=(0,p._)("br",null,null,-1),Va=(0,p._)("br",null,null,-1),Wa={style:{margin:"5.2px"}},Ta=(0,p._)("br",null,null,-1),xa={style:{display:"flex",transform:"translate(calc(-2.5% - 20px), 0vh)",width:"calc(100% + 2.5% + 40px)"}},Ua={style:{display:"flex","align-items":"center"}},Ha={style:{"margin-left":"0px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Aa={style:{display:"flex","align-items":"center",overflow:"auto"}},za={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Pa={style:{display:"flex","align-items":"center",overflow:"auto"}},Sa={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Na=(0,p._)("br",null,null,-1),Oa={style:{display:"block"}},Ca=(0,p._)("br",null,null,-1),$a={style:{transform:"translateX(16px)"}},Ia=(0,p._)("br",null,null,-1),Ba=(0,p._)("br",null,null,-1),Da=(0,p._)("br",null,null,-1),qa={key:0},ja=(0,p._)("br",null,null,-1),La={style:{transform:"translateX(16px)"}},Ma=(0,p._)("br",null,null,-1),Za=(0,p._)("br",null,null,-1),Ja=(0,p._)("br",null,null,-1),Ka={style:{"margin-bottom":"5px"}},Ea={style:{"margin-bottom":"5px"}},Ra=(0,p._)("br",null,null,-1),Ya=(0,p._)("br",null,null,-1),Xa={style:{margin:"5.2px"}},Fa=(0,p._)("br",null,null,-1),Ga=(0,p._)("h1",null,"添加到OneAPI",-1),Qa={style:{display:"flex",transform:"translate(calc(-2.5% - 20px), 0vh)",width:"calc(102.5% + 40px)"}},eo={style:{"margin-left":"15px",display:"flex","align-items":"center"}},lo={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},ao={style:{display:"flex","align-items":"center",overflow:"auto"}},oo={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},to={style:{display:"flex","align-items":"center",overflow:"auto"}},no={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},uo=(0,p._)("br",null,null,-1),io={style:{display:"block"}},ro=(0,p._)("br",null,null,-1),so=(0,p._)("br",null,null,-1),mo={style:{transform:"translateX(16px)"}},co=(0,p._)("br",null,null,-1),po={style:{transform:"translateX(16px)"}},vo=(0,p._)("br",null,null,-1),ho=(0,p._)("br",null,null,-1),_o=(0,p._)("br",null,null,-1),wo={style:{"margin-bottom":"5px"}},ko={style:{"margin-bottom":"5px"}},bo=(0,p._)("br",null,null,-1),fo=(0,p._)("br",null,null,-1),go={style:{margin:"5.2px"}},yo={style:{display:"block"}},Vo=(0,p._)("br",null,null,-1),Wo=(0,p._)("br",null,null,-1),To=(0,p._)("br",null,null,-1),xo=(0,p._)("br",null,null,-1),Uo={style:{transform:"translateX(16px)"}},Ho=(0,p._)("br",null,null,-1),Ao=(0,p._)("br",null,null,-1),zo=(0,p._)("br",null,null,-1),Po=(0,p._)("br",null,null,-1),So=(0,p._)("br",null,null,-1),No={style:{display:"block"}},Oo=(0,p._)("br",null,null,-1),Co={style:{transform:"translateX(16px)"}},$o=(0,p._)("br",null,null,-1),Io={style:{transform:"translateX(16px)"}},Bo=(0,p._)("br",null,null,-1),Do=(0,p._)("br",null,null,-1),qo=(0,p._)("br",null,null,-1),jo={style:{"margin-bottom":"5px"}},Lo={style:{"margin-bottom":"5px"}},Mo=(0,p._)("br",null,null,-1),Zo=(0,p._)("br",null,null,-1),Jo={style:{margin:"5.2px"}},Ko={style:{display:"block"}},Eo=(0,p._)("br",null,null,-1),Ro=(0,p._)("br",null,null,-1),Yo=(0,p._)("br",null,null,-1),Xo=(0,p._)("br",null,null,-1),Fo=(0,p._)("br",null,null,-1),Go={key:0},Qo=(0,p._)("br",null,null,-1),et={style:{transform:"translateX(17px)"}},lt=(0,p._)("br",null,null,-1),at=(0,p._)("br",null,null,-1),ot=(0,p._)("br",null,null,-1),tt=(0,p._)("br",null,null,-1),nt={style:{"margin-bottom":"5px"}},ut={style:{"margin-bottom":"5px"}},it=(0,p._)("br",null,null,-1),rt=(0,p._)("br",null,null,-1),st='此项可选,用于修改请求体中的模型名称,\n 为一个 JSON 字符串,键为请求中模型名称,\n 值为要替换的模型名称,例如:\n {\n "gpt-3.5-turbo-301":"gpt-3.5-turbo",\n "gpt-4-8314":"gpt-4", \n "gpt-4-32k-8314":"gpt-4-32k",\n }',dt=0,mt=1,ct=2;var pt=(0,p.aZ)({__name:"homeIphone",setup(e){const l=window.location.pathname,a=l.split("/");let _="";a.length>=3&&(_="/"+a[1]);const pt=(0,h.iH)(["default","svip","vip"]),vt=(0,h.iH)(["default","svip","vip"]),ht=((0,h.iH)(),(0,h.iH)()),_t=(0,h.iH)([]),wt=(0,h.iH)([]),kt=e=>{_t.value=e},bt=e=>{wt.value=e},ft=((0,h.iH)("ALL"),(0,w.tv)()),gt=(0,h.iH)(!1),yt=(0,h.iH)(!1),Vt=(0,h.iH)(!1),Wt=(0,h.iH)(!1),Tt=(0,h.iH)(!1),xt=(0,h.iH)(!1),Ut=(0,h.iH)(!1),Ht=(0,h.iH)(!1),At=(0,h.iH)(!1),zt=(0,h.iH)(!1),Pt=(0,h.iH)(!1),St=(0,h.iH)(!1),Nt=(0,h.iH)(!1),Ot=(0,h.iH)(!1),Ct=(0,h.iH)(!1),$t=(0,h.iH)(!1),It=(0,h.iH)(!1),Bt=(0,h.iH)(!1),Dt=(0,h.iH)(""),qt=[{buttonValue:"选中删除Token",label:"选中删除Token"},{buttonValue:"选中刷新Token",label:"选中刷新Token"},{buttonValue:"选中合成pool_token",label:"选中合成pool_token"},{buttonValue:"选中修改pool_token",label:"选中修改pool_token"}],jt=((0,h.iH)(""),[{buttonModel:"gpt-3.5-turbo",label:"gpt-3.5-turbo"},{buttonModel:"gpt-4-s",label:"gpt-4-s"},{buttonModel:"gpt-4-mobile",label:"gpt-4-mobile"},{buttonModel:"gpt-4-vision",label:"gpt-4-vision"},{buttonModel:"gpt-4-classic",label:"gpt-4-classic"},{buttonModel:"gpt-4-vision-preview",label:"gpt-4-vision-preview"}]),Lt=((0,h.iH)(""),[{buttonPoolModel:"gpt-3.5-turbo",label:"gpt-3.5-turbo"},{buttonPoolModel:"gpt-4",label:"gpt-4"}]),Mt=(0,h.iH)(""),Zt=[{buttonPoolValue:"选中检查pool_token",label:"选中检查pool_token"},{buttonPoolValue:"选中删除pool_token",label:"选中删除pool_token"},{buttonPoolValue:"选中刷新pool_token",label:"选中刷新pool_token"},{buttonPoolValue:"选中更换pool_token",label:"选中更换pool_token"}],Jt=(0,h.iH)(""),Kt=(0,h.iH)("*"),Et=(0,h.iH)(""),Rt=(0,h.iH)(""),Yt=(0,h.iH)(""),Xt=(0,h.iH)(!1),Ft=(0,h.iH)(!1),Gt=(0,h.iH)(!1),Qt=(0,h.iH)(!1),en=(0,h.iH)(""),ln=(0,h.iH)(!1),an=(0,h.iH)(""),on=(0,h.iH)(""),tn=(0,h.iH)(""),nn=(0,h.iH)(""),un=(0,h.iH)(""),rn=(0,h.iH)(""),sn=(0,h.iH)(""),dn=(0,h.iH)(!1),mn=(0,h.iH)(""),cn=(0,h.iH)("PandoraNext"),pn=(0,h.iH)("default"),vn=(0,h.iH)(""),hn=(0,h.iH)(""),_n=(0,h.iH)(""),wn=(0,h.iH)(""),kn=(0,h.iH)(!1),bn=(0,h.iH)(!1),fn=(0,h.iH)(!1),gn=(0,h.iH)(!1),yn=(0,h.iH)(!1),Vn=(0,h.iH)(5),Wn=(0,h.iH)(1),Tn=(0,h.iH)(""),xn=(0,h.iH)(""),Un=(0,h.iH)(""),Hn=(0,h.iH)(""),An=(0,h.iH)(""),zn=(0,h.iH)(""),Pn=((0,h.iH)(""),(0,h.iH)("")),Sn=((0,h.iH)(!0),(0,h.iH)("")),Nn=(0,h.iH)(!1),On=(0,h.iH)(""),Cn=(0,h.iH)([]),$n=(0,h.iH)([]),In=(0,h.iH)(""),Bn=(0,h.iH)(Tn.value+Jt.value),Dn=(0,h.iH)(0),qn=(0,h.iH)(""),jn=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!!l.test(e)||"此项至少要包含8位且必须包含数字和字母"},Ln=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!(!l.test(e)&&""!=e)||"此项至少要包含8位且必须包含数字和字母"},Mn=e=>{const l=/^[\u4e00-\u9fa5a-zA-Z0-9]{3,10}$/;return!!l.test(e)||"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字"},Zn=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!(1!=hu.value&&1!=lu.value&&!l.test(e))||"此项至少要包含8位且必须包含数字和字母"},Jn=(0,h.iH)(""),Kn=(0,h.iH)(""),En=(0,h.iH)(""),Rn=(0,h.iH)(""),Yn=(0,h.iH)(""),Xn=(0,h.iH)(""),Fn=(0,h.iH)(!1),Gn=(0,h.iH)(!1),Qn=(0,h.iH)(!1),eu=(0,h.iH)(""),lu=(0,h.iH)(!1),au=(0,h.iH)(!1),ou=(0,h.iH)(!0),tu=(0,h.iH)([]),nu=(0,h.iH)([]),uu=(0,h.iH)([]),iu=(0,h.iH)([]),ru=(0,h.iH)(""),su=(0,h.iH)(""),du=(0,h.iH)(""),mu=(0,h.iH)(""),cu=(0,h.iH)(!1),pu=(0,h.iH)(!1),vu=(0,h.iH)(!1),hu=(0,h.iH)(!1),_u=(0,h.iH)(!1),wu=(0,h.iH)(""),ku=(0,h.iH)(""),bu=(0,h.iH)(""),fu=((0,h.iH)(""),(0,h.iH)("")),gu=(0,h.iH)([]),yu=(0,h.iH)(""),Vu=(0,h.iH)(["default","svip","vip"]),Wu=(0,h.iH)(0),Tu=((0,h.iH)(.085*window.innerHeight),(0,h.iH)("")),xu=((0,h.iH)(""),(0,h.iH)("")),Uu=localStorage.getItem("jwtToken");Uu||ft.replace("/");const Hu={Authorization:`Bearer ${Uu}`},Au=async()=>{k.Z.post(`https://yubb.fun${_}/api/loginToken?token=`+Uu).then((e=>{if(0==e.data.code)return console.error(e.data.data),void ft.replace("/")})).catch((e=>{console.error("请求loginToken接口失败",e),ft.replace("/")}))},zu=e=>{"Web"==e||"WEB"==e?Ou(""):"ALL"==e||"All"==e?Su(""):e.includes("API")?Nu(""):Su(e)},Pu=e=>{Iu(e)},Su=async e=>{const l=await k.Z.get(`https://yubb.fun${_}/api/selectToken?name=${e}`,{headers:Hu}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession})));tu.value=e}},Nu=async e=>{const l=await k.Z.get(`https://yubb.fun${_}/api/selectToken?name=${e}`,{headers:Hu}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession}))),l=e.filter((e=>!0===e.setPoolToken));tu.value=l}},Ou=async e=>{const l=await k.Z.get(`https://yubb.fun${_}/api/selectToken?name=${e}`,{headers:Hu}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession}))),l=e.filter((e=>!1===e.setPoolToken));tu.value=l}},Cu=async()=>{const e=await k.Z.get(`https://yubb.fun${_}/api/selectLogin`,{headers:Hu}),l=e.data.data;if(Array.isArray(l)){const e=l.map((e=>({ipAddress:e.ipAddress,requestIp:e.requestIp,outRequestNumber:e.outRequestNumber,inRequestNumber:e.inRequestNumber,lastLoginTime:e.lastLoginTime})));iu.value=e}},$u=async e=>{const l=await k.Z.get(`https://yubb.fun${_}/api/selectPoolToken?name=${e}`,{headers:Hu}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({poolName:e.poolName,poolTime:e.poolTime,poolToken:e.poolToken,shareTokens:e.shareTokens,checkPool:e.checkPool,intoOneApi:e.intoOneApi,poolOneApi_models:e.poolOneApi_models,poolModel_mapping:e.poolModel_mapping,oneApi_pandoraUrl:e.oneApi_pandoraUrl,groupChecked:e.groupChecked,priority:e.priority})));nu.value=e}},Iu=async e=>{const l=V.kN.service({fullscreen:!0}),a=await k.Z.get(`https://yubb.fun${_}/api/selectShareToken?name=${e}`,{headers:Hu}),o=a.data.data;if(Array.isArray(o)){const e=o.map((e=>({oneApi_name:e.oneApi_name,token_name:e.token_name,token_value:e.token_value,oneApi_baseUrl:e.oneApi_baseUrl,oneApi_models:e.oneApi_models,model_mapping:e.model_mapping,oneApi_groups:e.oneApi_groups,shareTime:e.shareTime,priority:e.priority})));uu.value=e}l.close()},Bu=async e=>{const l=await k.Z.get(`https://yubb.fun${_}/api/selectSetting`,{headers:Hu}),a=l.data.data;Jt.value=a.proxy_api_prefix,Kt.value=a.isolated_conv_title,Et.value=a.bing,Rt.value=a.timeout,Yt.value=a.proxy_url,Xt.value=a.public_share,Ft.value=a.disable_signup,Gt.value=a.auto_conv_arkose,Qt.value=a.proxy_file_service,en.value=a.custom_doh_host,ln.value=a.tls.enabled,an.value=a.tls.cert_file,on.value=a.tls.key_file,tn.value=a.site_password,nn.value=a.setup_password,null==a.whitelist?vn.value="null":vn.value=a.whitelist,un.value=a.loginUsername,rn.value=a.loginPassword,sn.value=a.license_id,dn.value=a.isGetToken,mn.value=a.getTokenPassword,cn.value=a.containerName,pn.value=a.autoToken_url,hn.value=a.validation.provider,_n.value=a.validation.site_key,wn.value=a.validation.site_secret,kn.value=a.validation.site_login,bn.value=a.validation.setup_login,fn.value=a.validation.oai_username,gn.value=a.validation.oai_password,yn.value=a.auto_updateSession,Vn.value=a.auto_updateTime,Wn.value=a.auto_updateNumber,Tn.value=a.pandoraNext_outUrl,Tn.value.endsWith("/")?Bn.value=Tn.value+Jt.value:Bn.value=Tn.value+"/"+Jt.value,xn.value=a.oneAPi_outUrl,Un.value=a.oneAPi_intoToken,Du()},Du=async()=>{"123456"==rn.value&&"root"==un.value&&(b.T.alert("请先修改默认的初始账号和密码,并填写相应的信息,具体可参考网站文档!","温馨提醒",{confirmButtonText:"确定",callback:e=>{(0,f.z8)({type:"info",message:"如果不知道怎么填的话,可以看tokensTool的文档站!"})}}),Tt.value=!0,rn.value="",un.value="")},qu=()=>{const e=_t.value;0!==e.length?zt.value=!0:(0,f.z8)("未选择数据")},ju=async()=>{try{const l=_t.value,a=l.map((e=>e.name)),o=V.kN.service({fullscreen:!0});try{""==In.value&&(In.value="{}"),JSON.parse(In.value)}catch(e){return(0,f.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void o.close()}const t={poolName:Sn.value,intoOneApi:Nn.value,poolOneApi_models:$n.value.toString(),poolModel_mapping:In.value,oneApi_pandoraUrl:Bn.value,shareTokens:a,groupChecked:vt.value.toString(),priority:Dn.value},n=await fetch(`https://yubb.fun${_}/api/addPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(t)}),u=await n.json();1===u.code?(Sn.value="",$u(""),(0,f.z8)({type:"success",message:u.data}),Sn.value="",Nn.value=!1,vt.value=["default","svip","vip"],Dn.value=0,In.value="",$n.value=[]):(0,f.z8)({type:"info",message:u.msg}),o.close()}catch(l){(0,f.z8)({type:"info",message:"取消生成pool_token"})}zt.value=!1},Lu=e=>{let l=nu.value.find((l=>l.poolName===e));null!=l&&(qn.value=l.poolToken,Nn.value=l.intoOneApi,Cn.value=l.poolOneApi_models.split(","),On.value=l.poolModel_mapping,Bn.value=l.oneApi_pandoraUrl,pt.value=l.groupChecked.split(","),Dn.value=l.priority)},Mu=e=>{tu.value.find((l=>l.name===e&&!0===l.setPoolToken))},Zu=(0,p.Fl)((()=>tu.value.filter((e=>!0===e.setPoolToken)))),Ju=async()=>{try{const l=V.kN.service({fullscreen:!0});try{""==On.value&&(On.value="{}"),JSON.parse(On.value)}catch(e){return(0,f.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void l.close()}const a=_t.value,o=a.map((e=>e.name)),t={poolName:Hn.value,poolToken:qn.value,intoOneApi:Nn.value,poolOneApi_models:Cn.value.toString(),poolModel_mapping:On.value,oneApi_pandoraUrl:Bn.value,shareTokens:o,groupChecked:pt.value.toString(),priority:Dn.value};console.log(t);const n=await fetch(`https://yubb.fun${_}/api/requirePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(t)}),u=await n.json();1===u.code?($u(""),(0,f.z8)({type:"success",message:u.data}),Hn.value="",qn.value="",Nn.value=!1,Cn.value=[],On.value="",vt.value=["default","svip","vip"],Dn.value=0):(0,f.z8)({type:"info",message:u.msg}),l.close()}catch(l){(0,f.z8)({type:"info",message:"取消修改pool_token"})}St.value=!1},Ku=async()=>{const e=V.kN.service({fullscreen:!0});try{try{""==yu.value&&(yu.value="{}"),JSON.parse(yu.value)}catch(l){return(0,f.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void e.close()}const a={oneApi_name:ku.value,token_name:bu.value,oneApi_baseUrl:fu.value,oneApi_models:gu.value.toString(),model_mapping:yu.value,oneApi_groups:Vu.value.toString(),priority:Dn.value},o=await fetch(`https://yubb.fun${_}/api/addShareToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}),t=await o.json();1===t.code?(Iu(""),(0,f.z8)({type:"success",message:t.data}),ku.value="",bu.value="",fu.value="",gu.value=[],yu.value="",Vu.value=["default","svip","vip"],Dn.value=0):(0,f.z8)({type:"info",message:t.msg})}catch(a){(0,f.z8)({type:"info",message:"取消修改pool_token"})}Ct.value=!1,e.close()},Eu=(0,h.iH)("");(0,p.bv)((async()=>{const e=V.kN.service({fullscreen:!0});Au(),window.innerWidth<=900?ft.replace("/iphone"):ft.replace("/home");try{await Promise.all([zu(Tu.value),$u(Tu.value),Bu(Tu.value)]);const e=await k.Z.get(`https://yubb.fun${_}/api/getPandoraNext`,{headers:Hu}),l=e.data.data;null!=l&&(Eu.value=`${l.current}/${l.total}`)}catch(l){console.error("An error occurred:",l)}finally{e.close()}}));const Ru=({row:e})=>0==e.checkSession?"warning-row":"",Yu=({row:e})=>0==e.checkPool?"warning-row":"",Xu=()=>{window.open(Tn.value)},Fu=()=>{var e=Tn.value;"/"!==e.charAt(e.length-1)&&(e+="/"),window.open(e+"shared.html")},Gu=()=>{var e=Tn.value;"/"!==e.charAt(e.length-1)&&(e+="/"),window.open(e+"setup")},Qu=()=>{window.open("https://apifox.com/apidoc/shared-40345b46-9c9c-45cc-b494-6a6a387a978f")},ei=(0,h.iH)("-1");let li="";const ai=(e,l)=>{console.log("选择准备!")},oi=()=>{yt.value=!0},ti=()=>{const e=V.kN.service({fullscreen:!0}),l=new Date,a=`${l.getFullYear()}-${(l.getMonth()+1).toString().padStart(2,"0")}-${l.getDate().toString().padStart(2,"0")} ${l.getHours().toString().padStart(2,"0")}:${l.getMinutes().toString().padStart(2,"0")}:${l.getSeconds().toString().padStart(2,"0")}`;""!=wu.value&&(cu.value=!1,vu.value=!1,pu.value=!1),0==hu.value&&(mu.value=su.value+","+du.value,_u.value=!1,cu.value=!1,vu.value=!1,pu.value=!1);let o={name:ru.value,token:mu.value,username:su.value,userPassword:du.value,shared:cu.value,auto_shared:cu.value,show_user_info:pu.value,plus:vu.value,setPoolToken:hu.value,useRefreshToken:_u.value,password:wu.value,updateTime:a};fetch(`https://yubb.fun${_}/api/addToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(o)}).then((e=>e.json())).then((l=>{1==l.code?(f.z8.success("添加成功!"),ru.value="",mu.value="",su.value="",du.value="",cu.value=!1,pu.value=!1,vu.value=!1,hu.value=!1,_u.value=!1,wu.value="",""==o.token&&(o.token=l.data,f.z8.success("已为您自动装填token!"))):f.z8.error(l.msg),wu.value="",Su(""),e.close()})).catch((l=>{f.z8.error("获取账号出现问题,请检查刷新网址是否正确!"),e.close()})),yt.value=!1},ni=(0,h.iH)(null),ui=async e=>{if(Jn.value=e.name,Yn.value=e.username,Xn.value=e.userPassword,Kn.value=e.token,En.value=e.access_token,Rn.value=e.share_token,Fn.value=e.shared,Gn.value=e.show_user_info,Qn.value=e.plus,eu.value=e.password,lu.value=e.setPoolToken,au.value=e.useRefreshToken,ou.value=e.checkSession,1!=lu.value)return void(Vt.value=!0);const l={Authorization:`Bearer ${e.access_token}`};if(Vt.value=!0,lu.value){const a=await k.Z.get(`${Bn.value}/api/token/info/${e.share_token}`,{headers:l});let o=[],t=[];for(let e in a.data.usage)e.startsWith("range")||(t.push(e),o.push(a.data.usage[e]));0==t.length&&0==o.length&&(t=["gpt-4","gpt-3.5-turbo","gpt-3.5-turbo-0613"],o=[0,0,0]);const n=T.S1(ni.value),u={title:{text:`今日${a.data.usage["range"]} ${Jn.value}各模型用量`,textStyle:{fontSize:14,color:"#606266"},left:"center",top:"bottom"},tooltip:{},legend:{data:t},xAxis:{data:t},yAxis:{},series:[{name:"对话数量",type:"bar",data:o,barWidth:"25%",itemStyle:{color:function(e){const l=["#3498db","#2ecc71","#f1c40f","#9b59b6","#1abc9c","#e67e22","#ecf0f1","#95a5a6","#34495e","#16a085"];return l[e.dataIndex%l.length]}}}]};n.setOption(u)}},ii=(0,h.iH)(""),ri=(0,h.iH)(""),si=(0,h.iH)(""),di=(0,h.iH)(""),mi=(0,h.iH)([]),ci=(0,h.iH)(""),pi=(0,h.iH)(""),vi=(0,h.iH)(""),hi=(0,h.iH)(["default","svip","vip"]),_i=(0,h.iH)(""),wi=e=>{ii.value=e.oneApi_name,ri.value=e.token_name,si.value=e.token_value,di.value=e.oneApi_baseUrl,pi.value=e.oneApi_models,ci.value=e.model_mapping,vi.value=e.oneApi_groups,Dn.value=e.priority,_i.value=e.shareTime,$t.value=!0};let ki=!1,bi=!1,fi="";const gi=(e,l)=>{Jn.value=l.name,Yn.value=l.username,Xn.value=l.userPassword,Kn.value=l.token,li=l.token,Fn.value=l.shared,Gn.value=l.show_user_info,Qn.value=l.plus,eu.value=l.password,lu.value=l.setPoolToken,au.value=l.useRefreshToken,ki=lu.value,bi=au.value,fi=Kn.value,ou.value=l.checkSession,En.value=l.access_token,Rn.value=l.share_token,gt.value=!0},yi=async e=>{0==e?Wt.value=!0:1==e?Tt.value=!0:2==e&&(xt.value=!0)},Vi=e=>{const l=V.kN.service({fullscreen:!0});null!=vn.value&&"null"!=vn.value||(vn.value=""),0==ln.value&&(an.value="",on.value="");const a={enabled:ln.value,cert_file:an.value,key_file:on.value},o={provider:hn.value,site_key:_n.value,site_secret:wn.value,site_login:kn.value,setup_login:bn.value,oai_username:fn.value,oai_password:gn.value},t={proxy_api_prefix:Jt.value,isolated_conv_title:Kt.value,bing:Et.value,timeout:Rt.value,proxy_url:Yt.value,public_share:Xt.value,site_password:tn.value,setup_password:nn.value,loginUsername:un.value,loginPassword:rn.value,license_id:sn.value,disable_signup:Ft.value,auto_conv_arkose:Gt.value,proxy_file_service:Qt.value,custom_doh_host:en.value,isGetToken:dn.value,getTokenPassword:mn.value,containerName:cn.value,autoToken_url:pn.value,whitelist:vn.value,validation:o,tls:a};fetch(`https://yubb.fun${_}/api/requireSetting`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(t)}).then((e=>e.json())).then((e=>{1==e.code?f.z8.success(e.data):f.z8.error(e.msg),Au(),l.close()})).catch((e=>{l.close(),console.error("请求requireSetting接口失败",e),f.z8.error("修改失败!")})),0==e?Wt.value=!1:1==e?Tt.value=!1:2==e&&(xt.value=!1)},Wi=()=>{const e=V.kN.service({fullscreen:!0});"/"!==Tn.value.charAt(Tn.value.length-1)&&(Tn.value+="/");const l={auto_updateSession:yn.value,auto_updateTime:Vn.value,auto_updateNumber:Wn.value,pandoraNext_outUrl:Tn.value,oneAPi_outUrl:xn.value,oneAPi_intoToken:Un.value};fetch(`https://yubb.fun${_}/api/controllerTask`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>e.json())).then((l=>{1==l.code?f.z8.success(l.data):f.z8.error(l.msg),e.close()})).catch((l=>{e.close(),console.error("请求controllerTask接口失败",l),f.z8.error("修改失败!")})),At.value=!1},Ti=()=>{const e=V.kN.service({fullscreen:!0});let l="";if(li!=Kn.value){const e=new Date;l=`${e.getFullYear()}-${(e.getMonth()+1).toString().padStart(2,"0")}-${e.getDate().toString().padStart(2,"0")} ${e.getHours().toString().padStart(2,"0")}:${e.getMinutes().toString().padStart(2,"0")}:${e.getSeconds().toString().padStart(2,"0")}`}0==lu.value&&(Fn.value=!1,Qn.value=!1,Gn.value=!1,au.value=!1),!0===Fn.value?eu.value="":(Qn.value=!1,Gn.value=!1);let a="";a=ki!=lu.value&&fi==Kn.value?0==lu.value?"您确定要关闭API模型开启web模式,您将无法生成任何的token,但不消耗额度!":1==au.value?"您确定要开启API模式,并使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!":"您确定要开启API模式,并使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!":bi!=au.value&&fi==Kn.value?1==au.value?"您确定要切换使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!":"您确定要切换使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!":"修改将要提交,您确定修改好了吗?",b.T.confirm(a,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const l={name:Jn.value,token:Kn.value,username:Yn.value,userPassword:Xn.value,shared:Fn.value,auto_shared:Fn.value,show_user_info:Gn.value,plus:Qn.value,setPoolToken:lu.value,useRefreshToken:au.value,checkSession:ou.value,password:eu.value,access_token:En.value,share_token:Rn.value};fetch(`https://yubb.fun${_}/api/requiredToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>e.json())).then((l=>{1==l.code?(f.z8.success(l.data),Su("")):f.z8.error(l.msg),e.close()})).catch((l=>{e.close(),console.error("请求requireToken接口失败",l),f.z8.error("修改失败!")})),gt.value=!1})).catch((()=>{e.close(),(0,f.z8)({type:"info",message:"编辑取消!"})}))},xi=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${_}/api/open`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?b.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.data.msg),e.close()},Ui=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${_}/api/close`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?b.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.data.msg),e.close()},Hi=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${_}/api/restart`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?b.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.data.msg),e.close()},Ai=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${_}/api/reload`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?b.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.data.msg),e.close()},zi=(0,h.iH)(""),Pi=(0,h.iH)(""),Si=async()=>{const e=await k.Z.get(`https://yubb.fun${_}/api/getPandoraNext`,{headers:Hu}),l=e.data.data;if(null!=l){Eu.value=l.current+"/"+l.total,zi.value=l.ip;var a=new Date;const e=new Date(a.getTime()+1e3*l.ttl);var o=e.getFullYear(),t=e.getMonth()+1,n=e.getDate(),u=e.getHours(),i=e.getMinutes(),r=e.getSeconds();Pi.value=o+"-"+t+"-"+n+" "+u+":"+i+":"+r}Ht.value=!0},Ni=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${_}/api/updateAllToken`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?(await Promise.all([Su(""),$u("")]),b.T.alert(a,"温馨提示",{dangerouslyUseHTMLString:!0})):f.z8.error(l.data.msg),e.close()},Oi=e=>{if(0==e.setPoolToken)return void f.z8.error("未开启API模式,无法刷新");let l="您确定要刷新session_token吗,刷新session_token消耗100额度,请您要仔细认真考虑哦!";e.useRefreshToken&&(l="您确定要刷新refresh_token吗,刷新refresh_token消耗1000额度,请您要仔细认真考虑哦!"),b.T.confirm(l,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const l=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/updateSessionToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((a=>{null!=a&&""!=a&&(null!=a.data?(e.token=a.data,Su(""),b.T.alert("刷新成功!","温馨提醒",{confirmButtonText:"OK"})):f.z8.error(a.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))})).catch((()=>{(0,f.z8)({type:"info",message:"刷新取消!"})}))},Ci=e=>{const l=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/refreshSimplyPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?($u(""),b.T.alert("刷新成功!","温馨提醒",{confirmButtonText:"OK"})):f.z8.error(e.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},$i=e=>{ii.value=e.oneApi_name,ri.value=e.token_name,si.value=e.token_value,di.value=e.oneApi_baseUrl,mi.value=e.oneApi_models.split(","),ci.value=e.model_mapping,hi.value=e.oneApi_groups.split(","),Dn.value=e.priority,_i.value=e.shareTime,It.value=!0},Ii=()=>{const e=V.kN.service({fullscreen:!0}),l={oneApi_name:ii.value,token_name:ri.value,token_value:si.value,oneApi_baseUrl:di.value,oneApi_models:mi.value.toString(),model_mapping:ci.value,oneApi_groups:hi.value.toString(),priority:Dn.value};fetch(`https://yubb.fun${_}/api/requireShareToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?b.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.msg)),Iu(""),e.close()})).catch((l=>{e.close(),console.error("Error:",l)})),It.value=!1},Bi=e=>{if(0==e.setPoolToken)return void f.z8.error("未开启API模式,无法生成");const l=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/updateToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?b.T.alert("生成shareToken成功!","温馨提醒",{confirmButtonText:"OK"}):f.z8.error(e.msg)),Su(""),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},Di=e=>{const l=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/changePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?($u(""),b.T.alert("更换pool_token成功!","温馨提醒",{confirmButtonText:"OK"})):f.z8.error(e.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},qi=(e,l)=>{const a=V.kN.service({fullscreen:!0});b.T.confirm("您确定要删除这个Pool_Token吗,删除之后就找不到咯,请您要仔细认真考虑哦!","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{fetch(`https://yubb.fun${_}/api/deletePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e.data?($u(""),f.z8.success(e.data),a.close()):($u(""),f.z8.error(e.msg),a.close()),zt.value=!1})).catch((e=>{console.error("删除失败",e),$u(""),a.close(),zt.value=!1}))})).catch((()=>{a.close(),(0,f.z8)({type:"info",message:"删除取消!"})}))},ji=(e,l)=>{const a=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/verifySimplyPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?($u(""),b.T.alert(e.data,"温馨提醒",{confirmButtonText:"OK"})):($u(""),f.z8.error(e.msg))),a.close()})).catch((e=>{a.close(),console.error("Error:",e)}))},Li=(e,l)=>{const a=V.kN.service({fullscreen:!0});let o="";b.T.confirm("您确定要删除这个Token吗,删除之后就找不到咯,记得点击全部刷新poolToken","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`https://yubb.fun${_}/api/deleteToken`,l,{headers:Hu}).then((async e=>{1==l.setPoolToken&&await k.Z.get(`https://yubb.fun${_}/api/updateAllPoolToken`,{headers:Hu}),o=e.data.data,Su(""),(0,f.z8)({type:"success",message:o}),a.close()})).catch((e=>{a.close(),console.error("删除失败",e)}))})).catch((()=>{(0,f.z8)({type:"info",message:"删除取消!"}),a.close()}))},Mi=(e,l)=>{const a=V.kN.service({fullscreen:!0});let o="";b.T.confirm("您确定要删除这个share_Token吗,删除之后就找不到咯","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`https://yubb.fun${_}/api/deleteShareToken`,l,{headers:Hu}).then((async e=>{o=e.data.data,Iu(""),(0,f.z8)({type:"success",message:o}),a.close()})).catch((e=>{a.close(),console.error("删除失败",e)}))})).catch((()=>{(0,f.z8)({type:"info",message:"删除取消!"}),a.close()}))},Zi=e=>{if(!e)return"";var l=new Date;const a=(0,g.Z)(e.updateTime),o=(0,y.Z)(l,a);return e.token.length>=2e3?o>=80?"已经过去了至少80天":Math.ceil(80-o)+"天":e.token.length<200&&!e.token.includes("fk-")?"永久":o>=10?"已经过去了至少10天":Math.ceil(10-o)+"天"},Ji=()=>{localStorage.removeItem("jwtToken"),ft.replace("/")},Ki=()=>{Ut.value=!0},Ei=async()=>{await Iu(""),Ot.value=!0},Ri=()=>{Cu(),Pt.value=!0},Yi=e=>{const l=document.createElement("textarea");l.value=e,document.body.appendChild(l),l.select(),document.execCommand("copy"),document.body.removeChild(l),(0,f.z8)({type:"success",message:"复制成功!"})},Xi=e=>{const l=_t.value,a=l.map((e=>e));if(0!==l.length)if("选中删除Token"!=e)if("选中刷新Token"!=e)"选中合成pool_token"==e?qu():"选中修改pool_token"==e&&(Hn.value="",zn.value="",qn.value="",Pn.value="",Nn.value=!1,Cn.value=[],On.value="",Bn.value="",pt.value=[],Dn.value=0,St.value=!0);else{let e=0;const l=_t.value,a=l.map((e=>e));a.forEach(((l,a)=>{l.setPoolToken&&(l.useRefreshToken?e+=1e3:e+=100)}));const o="您确定要花"+e+"积分刷新这"+l.length+"个Token吗,请您要仔细认真考虑哦!";b.T.confirm(o,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/updateSessionTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(Su(""),b.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"刷新取消!"})}))}else{const e=V.kN.service({fullscreen:!0});let o="";b.T.confirm("您确定要删除这"+l.length+"个Token吗,删除之后就找不到咯","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`https://yubb.fun${_}/api/deleteTokenList`,a,{headers:Hu}).then((async l=>{await k.Z.get(`https://yubb.fun${_}/api/updateAllPoolToken`,{headers:Hu}),o=l.data.data,Su(""),(0,f.z8)({type:"success",message:o}),e.close()})).catch((l=>{e.close(),console.error("删除失败",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"删除取消!"}),e.close()}))}else(0,f.z8)("未选择数据")},Fi=e=>{An.value=e.poolName,zn.value=e.shareTokens,qn.value=e.poolToken,Pn.value=e.poolTime,Nn.value=e.intoOneApi,Cn.value=e.poolOneApi_models.split(","),On.value=e.poolModel_mapping,Bn.value=e.oneApi_pandoraUrl,pt.value=e.groupChecked.split(","),Dn.value=e.priority,Bt.value=!0},Gi=e=>{const l=wt.value,a=l.map((e=>e));if(0!==a.length)if("选中检查pool_token"!=e)if("选中刷新pool_token"!=e)if("选中更换pool_token"!=e)if("选中删除pool_token"!=e);else{l.length;const e="您确定要删除这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";b.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/deletePoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?($u(""),b.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"删除取消!"})}))}else{l.length;const e="您确定要更换这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";b.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/changePoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?($u(""),b.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"更换取消!"})}))}else{const e="您确定要刷新这"+l.length+"个pool_token吗?";b.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/refreshSimplyPoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?($u(""),b.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"刷新取消!"})}))}else{let e=4*l.length;const o="您确定要花"+e+"积分检查这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";b.T.confirm(o,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${_}/api/verifySimplyPoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?($u(""),b.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"检查取消!"})}))}else(0,f.z8)("未选择数据")},Qi=(0,h.iH)(null),er=async()=>{Nt.value=!0;const e=await k.Z.get(`https://yubb.fun${_}/api/modelsUsage`,{headers:Hu});let l=e.data.data.map((e=>e.usage)),a=e.data.data.map((e=>e.model));const o=T.S1(Qi.value),t={title:{text:"copilot每日对话统计",fontSize:18,color:"#606266"},tooltip:{},legend:{data:a},xAxis:{data:a},yAxis:{},series:[{name:"对话数量",type:"bar",data:l,barWidth:"40%",itemStyle:{color:function(e){const l=["#3498db","#2ecc71","#f1c40f","#9b59b6","#1abc9c","#e67e22","#ecf0f1","#95a5a6","#34495e","#16a085"];return l[e.dataIndex%l.length]}}}]};o.setOption(t)};return(e,l)=>{const a=c.JO,_=(0,p.up)("el-menu-item"),w=(0,p.up)("el-sub-menu"),k=(0,p.up)("el-menu"),b=m.zx,f=(0,p.up)("el-page-header"),g=d.ol,y=(0,p.up)("el-table-column"),V=(0,p.up)("el-button"),T=(0,p.up)("el-tag"),_t=(0,p.up)("el-popover"),wt=(0,p.up)("el-option"),ft=(0,p.up)("el-select"),Pn=s.gN,ou=r.rs,Uu=i.TS,Hu=u.l0,Au=n.Vq,Su=(0,p.up)("CopyDocument"),Nu=(0,p.up)("el-icon"),Ou=(0,p.up)("h10"),Cu=(0,p.up)("el-select-group"),$u=(0,p.up)("el-dialog"),Iu=(0,p.up)("el-form-item"),Bu=(0,p.up)("el-input"),Du=t.XZ,qu=o.cO,li=(0,p.Q2)("loading");return(0,p.wg)(),(0,p.iD)(p.HY,null,[(0,p._)("div",x,[U,(0,p.Wm)(k,{"default-active":ei.value,class:"el-menu-demo",mode:"horizontal",ellipsis:!1,onSelect:ai,"active-text-color":"#0ea27e","text-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"0"},{title:(0,p.w5)((()=>[(0,p._)("div",A,[(0,p._)("h2",null,(0,v.zw)(Eu.value),1)]),(0,p.Wm)(a,{name:"replay",size:"20",onClick:Si})])),default:(0,p.w5)((()=>[H])),_:1}),z,(0,p.Wm)(w,{index:"3"},{title:(0,p.w5)((()=>[(0,p.Uk)("列表")])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"3-3",onClick:Ni},{default:(0,p.w5)((()=>[(0,p.Uk)("全部检查并生成")])),_:1}),(0,p.Wm)(_,{index:"3-1",onClick:Ki},{default:(0,p.w5)((()=>[(0,p.Uk)("pool_token列表")])),_:1}),(0,p.Wm)(_,{index:"3-2",onClick:Ei},{default:(0,p.w5)((()=>[(0,p.Uk)("share_token列表")])),_:1}),(0,p.Wm)(_,{index:"3-5",onClick:er},{default:(0,p.w5)((()=>[(0,p.Uk)("copilot每日用量统计")])),_:1}),(0,p.Wm)(_,{index:"3-4",onClick:Ri},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool登录日志")])),_:1})])),_:1}),(0,p.Wm)(w,{index:"1"},{title:(0,p.w5)((()=>[(0,p.Uk)("设置")])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"1-1",onClick:l[0]||(l[0]=e=>yi(dt))},{default:(0,p.w5)((()=>[(0,p.Uk)("PandoraNext设置")])),_:1}),(0,p.Wm)(_,{index:"1-2",onClick:l[1]||(l[1]=e=>yi(mt))},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool设置")])),_:1}),(0,p.Wm)(_,{index:"1-3",onClick:l[2]||(l[2]=e=>yi(ct))},{default:(0,p.w5)((()=>[(0,p.Uk)("验证码信息设置")])),_:1}),(0,p.Wm)(_,{index:"1-4",onClick:l[3]||(l[3]=e=>At.value=!0)},{default:(0,p.w5)((()=>[(0,p.Uk)("定时&接口设置")])),_:1}),(0,p.Wm)(_,{index:"1-5",onClick:Qu},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool使用手册")])),_:1})])),_:1}),(0,p.Wm)(w,{index:"2"},{title:(0,p.w5)((()=>[(0,p.Uk)("状态")])),default:(0,p.w5)((()=>[(0,p.Wm)(w,{index:"2-1"},{title:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(cn.value)+"状态",1)])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"2-1-1",onClick:xi},{default:(0,p.w5)((()=>[(0,p.Uk)("开启"+(0,v.zw)(cn.value),1)])),_:1}),(0,p.Wm)(_,{index:"2-1-2",onClick:Ui},{default:(0,p.w5)((()=>[(0,p.Uk)("暂停"+(0,v.zw)(cn.value),1)])),_:1}),(0,p.Wm)(_,{index:"2-1-3",onClick:Hi},{default:(0,p.w5)((()=>[(0,p.Uk)("重启"+(0,v.zw)(cn.value),1)])),_:1}),(0,p.Wm)(_,{index:"2-1-4",onClick:Ai},{default:(0,p.w5)((()=>[(0,p.Uk)("重载"+(0,v.zw)(cn.value),1)])),_:1})])),_:1}),(0,p.Wm)(w,{index:"2-2"},{title:(0,p.w5)((()=>[(0,p.Uk)("跳转Web服务")])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"2-2-1",onClick:Xu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(cn.value)+"主页",1)])),_:1}),(0,p.Wm)(_,{index:"2-2-2",onClick:Fu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(cn.value)+"共享页",1)])),_:1}),(0,p.Wm)(_,{index:"2-2-3",onClick:Gu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(cn.value)+"修改页",1)])),_:1})])),_:1}),(0,p.Wm)(w,{index:"2-3"},{title:(0,p.w5)((()=>[(0,p.Uk)("获取token地址")])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"2-3-1"},{default:(0,p.w5)((()=>[P])),_:1}),(0,p.Wm)(_,{index:"2-3-2"},{default:(0,p.w5)((()=>[S])),_:1}),(0,p.Wm)(_,{index:"2-3-3"},{default:(0,p.w5)((()=>[N])),_:1})])),_:1}),(0,p.Wm)(_,{index:"2-4",onClick:Ji},{default:(0,p.w5)((()=>[(0,p.Uk)("退出登录")])),_:1})])),_:1})])),_:1},8,["default-active"]),(0,p._)("div",O,[(0,p.Wm)(f,{icon:null,title:" "},{content:(0,p.w5)((()=>[C])),extra:(0,p.w5)((()=>[(0,p._)("div",{class:"addToken",onClick:oi},[(0,p.Wm)(b,{square:"",icon:"add-o",color:"#0ea27e",class:"addTokenButton"})])])),_:1})]),(0,p._)("div",$,[(0,p._)("div",I,[(0,p._)("div",B,[(0,p.Wm)(g,{modelValue:Tu.value,"onUpdate:modelValue":l[4]||(l[4]=e=>Tu.value=e),shape:"round",clearable:"",placeholder:"请输入搜索token名称或类型",onSearch:zu},null,8,["modelValue"])]),(0,p._)("div",D,[(0,p.wy)(((0,p.wg)(),(0,p.j4)((0,h.SU)(W.eI),{data:tu.value,style:{width:"100%"},onSelectionChange:kt,class:"tokenTable","default-sort":{prop:"updateTime",prop:"setPoolToken"},"row-class-name":Ru},{default:(0,p.w5)((()=>[(0,p.Wm)(y,{type:"selection",width:"45"}),(0,p.Wm)(y,{label:"名称",width:"160",prop:"setPoolToken",sortable:""},{default:(0,p.w5)((e=>[(0,p._)("div",q,[(0,p._)("div",null,[(0,p.Wm)(V,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[(0,p._)("h5",null,(0,v.zw)(e.row.setPoolToken?e.row.useRefreshToken?"refAPI":"sesAPI":"Web"),1)])),_:2},1024)]),(0,p._)("span",j,(0,v.zw)(e.row.name),1)])])),_:1}),(0,p.Wm)(y,{prop:"updateTime",sortable:"",label:"有效时间",width:"117"},{default:(0,p.w5)((e=>[(0,p.Wm)(_t,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p._)("div",null,"注册时间:"+(0,v.zw)(e.row.updateTime),1)])),reference:(0,p.w5)((()=>[(0,p._)("span",L,[(0,p.Wm)(T,null,{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(Zi(e.row)),1)])),_:2},1024)])])),_:2},1024)])),_:1}),(0,p.Wm)(y,{label:"操作方法",width:"370"},{default:(0,p.w5)((e=>[(0,p.Wm)(V,{size:"small",onClick:l=>gi(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("编辑")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"primary",onClick:l=>ui(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"danger",onClick:l=>Li(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"success",onClick:l=>Oi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("刷新")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"warning",onClick:l=>Bi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("生成")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])),[[li,e.loading]])]),(0,p._)("div",M,[(0,p.Wm)(ft,{modelValue:Dt.value,"onUpdate:modelValue":l[5]||(l[5]=e=>Dt.value=e),clearable:"",filterable:"",placeholder:"请选择批量操作"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(qt,(e=>(0,p.Wm)(wt,{key:e.buttonValue,label:e.label,value:e.buttonValue},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),(0,p.Wm)(V,{class:"my-button",onClick:l[6]||(l[6]=e=>Xi(Dt.value))},{default:(0,p.w5)((()=>[Z])),_:1})])])]),J]),(0,p.Wm)(Au,{show:gt.value,"onUpdate:show":l[17]||(l[17]=e=>gt.value=e),title:"📌修改token信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",K,[(0,p.Wm)(Hu,{onSubmit:l[16]||(l[16]=e=>Ti())},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[E,(0,p.Wm)(Pn,{modelValue:Yn.value,"onUpdate:modelValue":l[7]||(l[7]=e=>Yn.value=e),name:"OpenAi邮箱",label:"OpenAi邮箱","input-align":"center",placeholder:"OpenAi邮箱",rules:[{required:!0,message:"请填写OpenAi邮箱"}]},null,8,["modelValue"]),R,(0,p.Wm)(Pn,{modelValue:Xn.value,"onUpdate:modelValue":l[8]||(l[8]=e=>Xn.value=e),name:"OpenAi密码","input-align":"center",label:"OpenAi密码",placeholder:"OpenAi密码",rules:[{required:!0,message:"请填写OpenAi密码"}]},null,8,["modelValue"]),Y,(0,p.Wm)(Pn,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:lu.value,"onUpdate:modelValue":l[9]||(l[9]=e=>lu.value=e)},null,8,["modelValue"])])),_:1}),1==lu.value?((0,p.wg)(),(0,p.iD)("div",X,[F,(0,p.Wm)(Pn,{name:"switch",label:"是否使用refreshToken"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:au.value,"onUpdate:modelValue":l[10]||(l[10]=e=>au.value=e)},null,8,["modelValue"])])),_:1}),G,(0,p.Wm)(Pn,{name:"switch",label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Fn.value,"onUpdate:modelValue":l[11]||(l[11]=e=>Fn.value=e)},null,8,["modelValue"])])),_:1}),1==Fn.value?((0,p.wg)(),(0,p.iD)("div",Q,[ee,(0,p.Wm)(Pn,{name:"switch",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Gn.value,"onUpdate:modelValue":l[12]||(l[12]=e=>Gn.value=e)},null,8,["modelValue"])])),_:1}),le,(0,p.Wm)(Pn,{name:"switch",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Qn.value,"onUpdate:modelValue":l[13]||(l[13]=e=>Qn.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0)])):(0,p.kq)("",!0),0==Fn.value||0==lu.value?((0,p.wg)(),(0,p.iD)("div",ae,[oe,(0,p.Wm)(Pn,{rows:"2",type:"textarea",autoSize:"",modelValue:eu.value,"onUpdate:modelValue":l[14]||(l[14]=e=>eu.value=e),name:"Token的密码","input-align":"center",label:"Token的密码",placeholder:"填了将不会分享给他人(如不填则输入Token名即可进入)",rules:[{validator:Zn}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),te,(0,p.Wm)(Pn,{modelValue:Kn.value,"onUpdate:modelValue":l[15]||(l[15]=e=>Kn.value=e),label:"Token的值",type:"textarea","input-align":"center",maxlength:"5000",placeholder:"请填写OpenAi的Token(选填),session或refresh_token",autosize:{maxHeight:100,minHeight:50},"show-word-limit":""},null,8,["modelValue"]),ne])),_:1}),(0,p._)("div",ue,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),ie])),_:1},8,["show"]),(0,p.Wm)(Au,{show:yt.value,"onUpdate:show":l[29]||(l[29]=e=>yt.value=e),title:"✨添加token信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"addTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",re,[(0,p.Wm)(Hu,{onSubmit:l[28]||(l[28]=e=>ti())},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[se,(0,p.Wm)(Pn,{modelValue:ru.value,"onUpdate:modelValue":l[18]||(l[18]=e=>ru.value=e),name:"Token用户名",label:"Token用户名",placeholder:"Token用户名",rules:[{required:!0,message:"请填写Token用户名"}]},null,8,["modelValue"]),de,(0,p.Wm)(Pn,{modelValue:su.value,"onUpdate:modelValue":l[19]||(l[19]=e=>su.value=e),name:"OpenAi用户名",label:"OpenAi用户名",placeholder:"OpenAi用户名",rules:[{required:!0,message:"请填写OpenAi用户名"}]},null,8,["modelValue"]),me,(0,p.Wm)(Pn,{modelValue:du.value,"onUpdate:modelValue":l[20]||(l[20]=e=>du.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码",rules:[{required:!0,message:"请填写OpenAi密码"}]},null,8,["modelValue"]),ce,(0,p.Wm)(Pn,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:hu.value,"onUpdate:modelValue":l[21]||(l[21]=e=>hu.value=e)},null,8,["modelValue"])])),_:1}),1==hu.value?((0,p.wg)(),(0,p.iD)("div",pe,[ve,(0,p.Wm)(Pn,{name:"switch",label:"是否使用refreshToken"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:_u.value,"onUpdate:modelValue":l[22]||(l[22]=e=>_u.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0),1==hu.value?((0,p.wg)(),(0,p.iD)("div",he,[_e,(0,p.Wm)(Pn,{name:"switch",label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:cu.value,"onUpdate:modelValue":l[23]||(l[23]=e=>cu.value=e)},null,8,["modelValue"])])),_:1}),1==cu.value?((0,p.wg)(),(0,p.iD)("div",we,[ke,(0,p.Wm)(Pn,{name:"switch",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:pu.value,"onUpdate:modelValue":l[24]||(l[24]=e=>pu.value=e)},null,8,["modelValue"])])),_:1}),be,(0,p.Wm)(Pn,{name:"switch",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:vu.value,"onUpdate:modelValue":l[25]||(l[25]=e=>vu.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0)])):(0,p.kq)("",!0),""==cu.value?((0,p.wg)(),(0,p.iD)("div",fe,[ge,(0,p.Wm)(Pn,{rows:"3",type:"textarea",autoSize:"",modelValue:wu.value,"onUpdate:modelValue":l[26]||(l[26]=e=>wu.value=e),name:"Token的密码",label:"Token的密码","input-align":"center",placeholder:"填了将不会分享给他人(如不填则输入Token名即可进入)",rules:[{validator:Zn}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),1==hu.value?((0,p.wg)(),(0,p.iD)("div",ye,[Ve,(0,p.Wm)(Pn,{rows:"3",type:"textarea",maxlength:"5000","show-word-limit":"",modelValue:mu.value,"onUpdate:modelValue":l[27]||(l[27]=e=>mu.value=e),name:"Token的值",label:"Token的值",placeholder:"选填(可不填,不填则使用账号密码),目前只支持session_token或refresh_token"},null,8,["modelValue"])])):(0,p.kq)("",!0),We])),_:1}),(0,p._)("div",Te,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),xe])),_:1},8,["show"]),(0,p.Wm)(Au,{show:Vt.value,"onUpdate:show":l[49]||(l[49]=e=>Vt.value=e),title:"🔎token信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"showDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Ue,[(0,p.Wm)(Hu,null,{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[He,(0,p.Wm)(Pn,{modelValue:Jn.value,"onUpdate:modelValue":l[30]||(l[30]=e=>Jn.value=e),name:"Token用户名",label:"Token用户名",placeholder:"Token用户名","left-icon":"description-o","input-align":"center",readonly:!0,onClickLeftIcon:l[31]||(l[31]=e=>Yi(Jn.value))},null,8,["modelValue"]),Ae,(0,p.Wm)(Pn,{modelValue:eu.value,"onUpdate:modelValue":l[32]||(l[32]=e=>eu.value=e),type:"temPassword",name:"Token的密码",label:"Token的密码",placeholder:"Token的密码","input-align":"center","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[33]||(l[33]=e=>Yi(eu.value))},null,8,["modelValue"]),ze,(0,p.Wm)(Pn,{modelValue:Yn.value,"onUpdate:modelValue":l[34]||(l[34]=e=>Yn.value=e),name:"OpenAi邮箱",label:"OpenAi邮箱",placeholder:"OpenAi邮箱","left-icon":"description-o","input-align":"center",readonly:!0,onClickLeftIcon:l[35]||(l[35]=e=>Yi(Yn.value))},null,8,["modelValue"]),Pe,(0,p.Wm)(Pn,{modelValue:Xn.value,"onUpdate:modelValue":l[36]||(l[36]=e=>Xn.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码","left-icon":"description-o","input-align":"center",readonly:!0,onClickLeftIcon:l[37]||(l[37]=e=>Yi(Xn.value))},null,8,["modelValue"]),Se,(0,p.Wm)(Pn,{name:"temShared",readonly:!0,label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:Fn.value,"onUpdate:modelValue":l[38]||(l[38]=e=>Fn.value=e)},null,8,["modelValue"])])),_:1}),Ne,(0,p.Wm)(Pn,{readonly:!0,name:"temShow_user_info",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:Gn.value,"onUpdate:modelValue":l[39]||(l[39]=e=>Gn.value=e)},null,8,["modelValue"])])),_:1}),Oe,(0,p.Wm)(Pn,{readonly:!0,name:"temPlus",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:Qn.value,"onUpdate:modelValue":l[40]||(l[40]=e=>Qn.value=e)},null,8,["modelValue"])])),_:1}),Ce,(0,p.Wm)(Pn,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:lu.value,"onUpdate:modelValue":l[41]||(l[41]=e=>lu.value=e)},null,8,["modelValue"])])),_:1}),$e,(0,p.Wm)(Pn,{name:"switch",label:"是否使用refresh_token"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:au.value,"onUpdate:modelValue":l[42]||(l[42]=e=>au.value=e)},null,8,["modelValue"])])),_:1}),Ie,(0,p.Wm)(Pn,{modelValue:Kn.value,"onUpdate:modelValue":l[43]||(l[43]=e=>Kn.value=e),label:"Token的值",type:"textarea",maxlength:"5000",placeholder:"请填写OpenAi的Token(session或refresh_token)","show-word-limit":"","input-align":"center","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[44]||(l[44]=e=>Yi(Kn.value)),autosize:{maxHeight:100,minHeight:50}},null,8,["modelValue"]),1==lu.value?((0,p.wg)(),(0,p.iD)("div",Be,[De,(0,p.Wm)(Pn,{modelValue:En.value,"onUpdate:modelValue":l[45]||(l[45]=e=>En.value=e),label:"access_token",type:"textarea",maxlength:"5000","input-align":"center",placeholder:"请填写OpenAi的access_token","show-word-limit":"","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[46]||(l[46]=e=>Yi(En.value)),autosize:{maxHeight:100,minHeight:50}},null,8,["modelValue"]),qe,(0,p.Wm)(Pn,{modelValue:Rn.value,"onUpdate:modelValue":l[47]||(l[47]=e=>Rn.value=e),label:"share_token",type:"textarea",maxlength:"200","input-align":"center",placeholder:"请填写OpenAi的share_token","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[48]||(l[48]=e=>Yi(Rn.value)),autosize:{maxHeight:100,minHeight:50}},null,8,["modelValue"])])):(0,p.kq)("",!0)])),_:1})])),_:1}),1==lu.value?((0,p.wg)(),(0,p.iD)("div",je,[(0,p._)("div",{ref_key:"chart_show",ref:ni,style:{width:"auto",height:"300px"}},null,512),Le])):(0,p.kq)("",!0)])])),_:1},8,["show"]),(0,p.Wm)(Au,{show:Wt.value,"onUpdate:show":l[64]||(l[64]=e=>Wt.value=e),title:"PandoraNext设置信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Me,[(0,p.Wm)(Hu,{onSubmit:l[63]||(l[63]=e=>Vi(dt))},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[Ze,(0,p.Wm)(Pn,{modelValue:Kt.value,"onUpdate:modelValue":l[50]||(l[50]=e=>Kt.value=e),name:"对话标题",label:"对话标题",placeholder:"隔离对话设置标题"},null,8,["modelValue"]),Je,(0,p.Wm)(Pn,{modelValue:Et.value,"onUpdate:modelValue":l[51]||(l[51]=e=>Et.value=e),name:"绑定IP和端口",label:"绑定IP和端口",placeholder:"绑定IP和端口(选填)"},null,8,["modelValue"]),Ke,(0,p.Wm)(Pn,{modelValue:en.value,"onUpdate:modelValue":l[52]||(l[52]=e=>en.value=e),name:"DoH主机名",label:"DoH主机名",placeholder:"配置自定义的DoH主机名(选填)"},null,8,["modelValue"]),Ee,(0,p.Wm)(Pn,{modelValue:Rt.value,"onUpdate:modelValue":l[53]||(l[53]=e=>Rt.value=e),name:"请求超时时间",label:"请求超时时间",placeholder:"请求超时时间(选填)"},null,8,["modelValue"]),Re,(0,p.Wm)(Pn,{name:"switch",label:"是否分享对话(选填)"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Xt.value,"onUpdate:modelValue":l[54]||(l[54]=e=>Xt.value=e)},null,8,["modelValue"])])),_:1}),Ye,(0,p.Wm)(Pn,{name:"switch",label:"是否配置证书"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:ln.value,"onUpdate:modelValue":l[55]||(l[55]=e=>ln.value=e)},null,8,["modelValue"])])),_:1}),1==ln.value?((0,p.wg)(),(0,p.iD)("div",Xe,[Fe,(0,p.Wm)(Pn,{modelValue:an.value,"onUpdate:modelValue":l[56]||(l[56]=e=>an.value=e),name:"证书文件",label:"证书文件",placeholder:"证书文件"},null,8,["modelValue"]),Ge,(0,p.Wm)(Pn,{modelValue:on.value,"onUpdate:modelValue":l[57]||(l[57]=e=>on.value=e),name:"密钥文件",label:"密钥文件",placeholder:"密钥文件"},null,8,["modelValue"])])):(0,p.kq)("",!0),Qe,(0,p.Wm)(Pn,{name:"switch",label:"是否禁用注册"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Ft.value,"onUpdate:modelValue":l[58]||(l[58]=e=>Ft.value=e)},null,8,["modelValue"])])),_:1}),el,(0,p.Wm)(Pn,{name:"switch",label:"是否自动打码"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Gt.value,"onUpdate:modelValue":l[59]||(l[59]=e=>Gt.value=e)},null,8,["modelValue"])])),_:1}),ll,(0,p.Wm)(Pn,{name:"switch",label:"使用文件代理服务"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Qt.value,"onUpdate:modelValue":l[60]||(l[60]=e=>Qt.value=e)},null,8,["modelValue"])])),_:1}),al,(0,p.Wm)(Pn,{modelValue:Yt.value,"onUpdate:modelValue":l[61]||(l[61]=e=>Yt.value=e),name:"代理服务URL",label:"代理服务URL",placeholder:"代理服务URL(选填)"},null,8,["modelValue"]),ol,(0,p.Wm)(Pn,{modelValue:vn.value,"onUpdate:modelValue":l[62]||(l[62]=e=>vn.value=e),name:"白名单",label:"白名单",placeholder:"[]限制所有账号(默认为null)"},null,8,["modelValue"]),tl])),_:1}),(0,p._)("div",nl,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),ul])),_:1},8,["show"]),(0,p.Wm)(Au,{show:Tt.value,"onUpdate:show":l[76]||(l[76]=e=>Tt.value=e),title:"tokensTool设置信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",il,[(0,p.Wm)(Hu,{onSubmit:l[75]||(l[75]=e=>Vi(mt))},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[rl,(0,p.Wm)(Pn,{modelValue:un.value,"onUpdate:modelValue":l[65]||(l[65]=e=>un.value=e),name:"登录用户名",label:"登录用户名",placeholder:"tokensTool用户名"},null,8,["modelValue"]),sl,(0,p.Wm)(Pn,{modelValue:rn.value,"onUpdate:modelValue":l[66]||(l[66]=e=>rn.value=e),name:"登录密码",label:"登录密码",placeholder:"不少于8位,且同时包含数字和字母",rules:[{validator:jn}]},null,8,["modelValue","rules"]),dl,(0,p.Wm)(Pn,{modelValue:Jt.value,"onUpdate:modelValue":l[67]||(l[67]=e=>Jt.value=e),name:"proxy接口前缀",label:"proxy接口前缀",placeholder:"proxy模式接口后缀,不少于8位,且同时包含数字和字母",rules:[{validator:jn}]},null,8,["modelValue","rules"]),ml,(0,p.Wm)(Pn,{modelValue:pn.value,"onUpdate:modelValue":l[68]||(l[68]=e=>pn.value=e),name:"proxy模式URL",label:"proxy模式URL",placeholder:"http(s)://(ip:port或者域名)/后缀,同公网服务器填default"},null,8,["modelValue"]),cl,(0,p.Wm)(Pn,{modelValue:nn.value,"onUpdate:modelValue":l[69]||(l[69]=e=>nn.value=e),name:"重载服务密码",label:"重载服务密码",placeholder:"PandoraNext重载服务密码,不少于8位,且同时包含数字和字母",rules:[{validator:jn}]},null,8,["modelValue","rules"]),pl,(0,p.Wm)(Pn,{modelValue:tn.value,"onUpdate:modelValue":l[70]||(l[70]=e=>tn.value=e),name:"访问密码",label:"访问密码",placeholder:"PandoraNext访问密码,建议开启访问密码",rules:[{validator:Ln}]},null,8,["modelValue","rules"]),vl,(0,p.Wm)(Pn,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:sn.value,"onUpdate:modelValue":l[71]||(l[71]=e=>sn.value=e),name:"验证licenseId",label:"验证licenseId",placeholder:"验证licenseId(github上拿到的license_id)"},null,8,["modelValue"]),hl,(0,p.Wm)(Pn,{name:"switch",label:"tokensTool接口"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:dn.value,"onUpdate:modelValue":l[72]||(l[72]=e=>dn.value=e)},null,8,["modelValue"])])),_:1}),1==dn.value?((0,p.wg)(),(0,p.iD)("div",_l,[wl,(0,p.Wm)(Pn,{modelValue:mn.value,"onUpdate:modelValue":l[73]||(l[73]=e=>mn.value=e),name:"接口密码",label:"接口密码",placeholder:"tokensTool接口密码,用于获取tokens,不少于8位,且同时包含数字和字母",rules:[{validator:jn}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),kl,(0,p.Wm)(Pn,{modelValue:cn.value,"onUpdate:modelValue":l[74]||(l[74]=e=>cn.value=e),name:"监管容器名",label:"监管容器名",placeholder:"监管运行的容器名或文件名,默认为PandoraNext",rules:[{required:!0,message:"请填写监管的容器名"}]},null,8,["modelValue"]),bl])),_:1}),(0,p._)("div",fl,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),gl])),_:1},8,["show"]),(0,p.Wm)(Au,{show:xt.value,"onUpdate:show":l[85]||(l[85]=e=>xt.value=e),title:"PandoraNext验证信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",yl,[(0,p.Wm)(Hu,{onSubmit:l[84]||(l[84]=e=>Vi(ct))},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[Vl,(0,p.Wm)(Pn,{modelValue:hn.value,"onUpdate:modelValue":l[77]||(l[77]=e=>hn.value=e),name:"验证码提供商",label:"验证码提供商",placeholder:"验证码提供商"},null,8,["modelValue"]),Wl,(0,p.Wm)(Pn,{modelValue:_n.value,"onUpdate:modelValue":l[78]||(l[78]=e=>_n.value=e),name:"验证码网站参数",label:"验证码网站参数",placeholder:"验证码网站参数"},null,8,["modelValue"]),Tl,(0,p.Wm)(Pn,{modelValue:wn.value,"onUpdate:modelValue":l[79]||(l[79]=e=>wn.value=e),name:"验证码API Key",label:"验证码API Key",placeholder:"验证码API Key"},null,8,["modelValue"]),xl,(0,p.Wm)(Pn,{name:"switch",label:"是否全站密码登录页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:kn.value,"onUpdate:modelValue":l[80]||(l[80]=e=>kn.value=e)},null,8,["modelValue"])])),_:1}),Ul,(0,p.Wm)(Pn,{name:"switch",label:"是否在设置登录页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:bn.value,"onUpdate:modelValue":l[81]||(l[81]=e=>bn.value=e)},null,8,["modelValue"])])),_:1}),Hl,(0,p.Wm)(Pn,{name:"switch",label:"是否在输入用户名页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:fn.value,"onUpdate:modelValue":l[82]||(l[82]=e=>fn.value=e)},null,8,["modelValue"])])),_:1}),Al,(0,p.Wm)(Pn,{name:"switch",label:"是否在输入密码页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:gn.value,"onUpdate:modelValue":l[83]||(l[83]=e=>gn.value=e)},null,8,["modelValue"])])),_:1}),zl])),_:1}),(0,p._)("div",Pl,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Sl])),_:1},8,["show"]),(0,p.Wm)($u,{modelValue:Ut.value,"onUpdate:modelValue":l[89]||(l[89]=e=>Ut.value=e),title:"pool_token列表","align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Nl,[(0,p.Wm)(Nu,{onClick:l[86]||(l[86]=e=>Yi(Tn.value+Jt.value+"/v1/chat/completions"))},{default:(0,p.w5)((()=>[(0,p.Wm)(Su)])),_:1}),(0,p.Wm)(Ou,{style:{"white-space":"nowrap",overflow:"hidden","text-overflow":"ellipsis"}},{default:(0,p.w5)((()=>[(0,p.Uk)(" API地址:"+(0,v.zw)(Tn.value)+(0,v.zw)(Jt.value)+"/v1/chat/completions ",1)])),_:1})]),(0,p._)("div",Ol,[(0,p.Wm)((0,h.SU)(W.eI),{"row-class-name":Yu,data:nu.value,onSelectionChange:bt,ref_key:"multipleTableRefPool",ref:ht},{default:(0,p.w5)((()=>[(0,p.Wm)(y,{type:"selection",width:"45"}),(0,p.Wm)(y,{prop:"intoOneApi",label:"pool_token名称",sortable:"","min-width":"170","default-sort":{prop:"poolTime",prop:"intoOneApi"}},{default:(0,p.w5)((e=>[(0,p._)("div",Cl,[1==e.row.intoOneApi&&e.row.poolOneApi_models.includes("gpt-4")?((0,p.wg)(),(0,p.iD)("div",$l,[(0,p.Wm)(V,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[Il])),_:1})])):1==e.row.intoOneApi?((0,p.wg)(),(0,p.iD)("div",Bl,[(0,p.Wm)(V,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[Dl])),_:1})])):((0,p.wg)(),(0,p.iD)("div",ql,[(0,p.Wm)(V,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[jl])),_:1})])),(0,p._)("span",Ll,(0,v.zw)(e.row.poolName),1)])])),_:1}),(0,p.Wm)(y,{label:"pool_token值","min-width":"235"},{default:(0,p.w5)((e=>[(0,p._)("div",Ml,[(0,p.Wm)(Nu,{onClick:l=>Yi(e.row.poolToken)},{default:(0,p.w5)((()=>[(0,p.Wm)(Su)])),_:2},1032,["onClick"]),(0,p._)("span",Zl,(0,v.zw)(e.row.poolToken),1)])])),_:1}),(0,p.Wm)(y,{label:"使用token名集合","min-width":"165"},{default:(0,p.w5)((e=>[(0,p.Wm)(_t,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(e.row.shareTokens),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(T,null,{default:(0,p.w5)((()=>[Jl])),_:1})])),_:2},1024)])),_:1}),(0,p.Wm)(y,{property:"poolTime",label:"更新时间",prop:"poolTime",sortable:"","min-width":"180"}),(0,p.Wm)(y,{label:"操作方法","min-width":"355"},{default:(0,p.w5)((e=>[(0,p.Wm)(V,{size:"small",onClick:l=>Fi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"warning",onClick:l=>ji(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("检验")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"danger",onClick:l=>qi(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"success",onClick:l=>Ci(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("刷新")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"primary",onClick:l=>Di(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("更换")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])]),(0,p._)("div",Kl,[(0,p.Wm)(Cu,{class:"pool-button"},{default:(0,p.w5)((()=>[(0,p.Wm)(ft,{modelValue:Mt.value,"onUpdate:modelValue":l[87]||(l[87]=e=>Mt.value=e),filterable:"",clearable:"",placeholder:"请选择批量操作"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Zt,(e=>(0,p.Wm)(wt,{key:e.buttonPoolValue,label:e.label,value:e.buttonPoolValue},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),(0,p.Wm)(V,{onClick:l[88]||(l[88]=e=>Gi(Mt.value))},{default:(0,p.w5)((()=>[El])),_:1})])),_:1})]),Rl])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:Ht.value,"onUpdate:modelValue":l[93]||(l[93]=e=>Ht.value=e),title:"PandoraNext余额","align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Yl,[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[Xl,(0,p.Wm)(Pn,{modelValue:Eu.value,"onUpdate:modelValue":l[90]||(l[90]=e=>Eu.value=e),name:"PandoraNext用量",label:"PandoraNext用量",placeholder:"PandoraNext用量"},null,8,["modelValue"]),Fl,(0,p.Wm)(Pn,{modelValue:zi.value,"onUpdate:modelValue":l[91]||(l[91]=e=>zi.value=e),name:"绑定IP",label:"绑定IP",placeholder:"绑定IP"},null,8,["modelValue"]),Gl,(0,p.Wm)(Pn,{modelValue:Pi.value,"onUpdate:modelValue":l[92]||(l[92]=e=>Pi.value=e),name:"重置时间",label:"重置时间",placeholder:"重置时间"},null,8,["modelValue"]),Ql])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(Au,{show:At.value,"onUpdate:show":l[101]||(l[101]=e=>At.value=e),title:"定时刷新&PandoraNext网址","align-center":"",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",ea,[(0,p.Wm)(Hu,{onSubmit:l[100]||(l[100]=e=>Wi())},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[la,(0,p.Wm)(Pn,{name:"switch",label:"是否自动刷新session_token"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:yn.value,"onUpdate:modelValue":l[94]||(l[94]=e=>yn.value=e)},null,8,["modelValue"])])),_:1}),1==yn.value?((0,p.wg)(),(0,p.iD)("div",aa,[oa,(0,p.Wm)(Pn,{modelValue:Vn.value,"onUpdate:modelValue":l[95]||(l[95]=e=>Vn.value=e),name:"自动刷新session的间隔天数",label:"自动刷新session的间隔天数","input-align":"right",placeholder:"自动刷新session的时间 (天为单位)"},null,8,["modelValue"]),ta,(0,p.Wm)(Pn,{modelValue:Wn.value,"onUpdate:modelValue":l[96]||(l[96]=e=>Wn.value=e),name:"自动刷新session的个数",label:"自动刷新session的个数","input-align":"right",placeholder:"自动刷新session的个数 (个)"},null,8,["modelValue"])])):(0,p.kq)("",!0),na,(0,p.Wm)(Pn,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:Tn.value,"onUpdate:modelValue":l[97]||(l[97]=e=>Tn.value=e),name:"PandoraNext的公网访问地址",label:"PandoraNext的公网访问地址",placeholder:"PandoraNext的公网访问地址"},null,8,["modelValue"]),ua,(0,p.Wm)(Pn,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:xn.value,"onUpdate:modelValue":l[98]||(l[98]=e=>xn.value=e),name:"oneApi的公网访问地址",label:"oneApi的公网访问地址","input-align":"right",placeholder:"oneApi的公网访问地址"},null,8,["modelValue"]),ia,(0,p.Wm)(Pn,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:Un.value,"onUpdate:modelValue":l[99]||(l[99]=e=>Un.value=e),name:"oneApi的系统令牌",label:"oneApi的系统令牌","input-align":"right",placeholder:"oneApi的系统令牌"},null,8,["modelValue"]),ra])),_:1}),(0,p._)("div",sa,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),da])),_:1},8,["show"]),(0,p.Wm)(Au,{show:zt.value,"onUpdate:show":l[109]||(l[109]=e=>zt.value=e),title:"✨添加pool_token信息",width:"95vw","align-center":"","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",ma,[(0,p.Wm)(Hu,{onSubmit:ju},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[(0,p.Wm)(Pn,{modelValue:Sn.value,"onUpdate:modelValue":l[102]||(l[102]=e=>Sn.value=e),name:"pool_token名",label:"pool_token名","input-align":"right",placeholder:"3到10个字符",rules:[{validator:Mn}]},null,8,["modelValue","rules"]),ca,(0,p.Wm)(Pn,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Nn.value,"onUpdate:modelValue":l[103]||(l[103]=e=>Nn.value=e)},null,8,["modelValue"])])),_:1}),1==Nn.value?((0,p.wg)(),(0,p.iD)("div",pa,[va,(0,p.Wm)(Pn,{modelValue:Dn.value,"onUpdate:modelValue":l[104]||(l[104]=e=>Dn.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)"},null,8,["modelValue"]),(0,p._)("div",ha,[_a,wa,(0,p.Wm)(Iu,{label:"选择模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(ft,{modelValue:$n.value,"onUpdate:modelValue":l[105]||(l[105]=e=>$n.value=e),multiple:"",filterable:"","allow-create":"",placeholder:"填写或选择模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Lt,(e=>(0,p.Wm)(wt,{key:e.buttonPoolModel,label:e.label,value:e.buttonPoolModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),ka,(0,p.Wm)(Iu,{label:"重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:In.value,"onUpdate:modelValue":l[106]||(l[106]=e=>In.value=e),type:"textarea",autosize:{maxHeight:100,minHeight:20},placeholder:st,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),ba,(0,p.Wm)(Pn,{name:"checkboxGroup",label:"在one-api的组别","input-align":"right"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:vt.value,"onUpdate:modelValue":l[107]||(l[107]=e=>vt.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",fa,[(0,p.Wm)(Du,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",ga,[(0,p.Wm)(Du,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),ya,(0,p.Wm)(Pn,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:Bn.value,"onUpdate:modelValue":l[108]||(l[108]=e=>Bn.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right",placeholder:"自定义PandoraNext地址"},null,8,["modelValue"]),Va])):(0,p.kq)("",!0)])),_:1}),(0,p._)("div",Wa,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Ta])),_:1},8,["show"]),(0,p.Wm)($u,{modelValue:Pt.value,"onUpdate:modelValue":l[110]||(l[110]=e=>Pt.value=e),title:"tokensTool登录日志","align-center":"",width:"90%","close-on-click-modal":!1,class:"showLoginDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",xa,[(0,p.Wm)((0,h.SU)(W.eI),{"row-class-name":Yu,data:iu.value},{default:(0,p.w5)((()=>[(0,p.Wm)(y,{prop:"ipAddress",label:"登录地区","min-width":"160"},{default:(0,p.w5)((e=>[(0,p._)("div",Ua,[(0,p._)("span",Ha,(0,v.zw)(e.row.ipAddress),1)])])),_:1}),(0,p.Wm)(y,{label:"登录IP","min-width":"155"},{default:(0,p.w5)((e=>[(0,p._)("div",Aa,[(0,p.Wm)(Nu,{onClick:l=>Yi(e.row.poolToken)},{default:(0,p.w5)((()=>[(0,p.Wm)(Su)])),_:2},1032,["onClick"]),(0,p._)("span",za,(0,v.zw)(e.row.requestIp),1)])])),_:1}),(0,p.Wm)(y,{label:"成功/失败","min-width":"105"},{default:(0,p.w5)((e=>[(0,p._)("div",Pa,[(0,p._)("span",Sa,(0,v.zw)(e.row.inRequestNumber)+"/"+(0,v.zw)(e.row.outRequestNumber),1)])])),_:1}),(0,p.Wm)(y,{property:"lastLoginTime",label:"登录时间",prop:"lastLoginTime","min-width":"180"})])),_:1},8,["data"])]),Na])),_:1},8,["modelValue"]),(0,p.Wm)(Au,{show:St.value,"onUpdate:show":l[119]||(l[119]=e=>St.value=e),title:"📌修改pool_token信息",width:"95vw","align-center":"","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Oa,[(0,p.Wm)(Hu,{onSubmit:Ju},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[Ca,(0,p._)("div",$a,[(0,p.Wm)(Iu,{label:"poolToken名"},{default:(0,p.w5)((()=>[(0,p.Wm)(ft,{modelValue:Hn.value,"onUpdate:modelValue":l[111]||(l[111]=e=>Hn.value=e),filterable:"",clearable:"",placeholder:"选择要修改的pool名",onChange:Lu,class:"selectPool_token"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(nu.value,(e=>((0,p.wg)(),(0,p.j4)(wt,{key:e.poolName,label:e.poolName,value:e.poolName,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),Ia,(0,p.Wm)(Pn,{modelValue:qn.value,"onUpdate:modelValue":l[112]||(l[112]=e=>qn.value=e),type:"textarea",autosize:{maxHeight:100,minHeight:20},name:"pool_token的值",label:"pool_token的值",placeholder:"pool_token的值(不改则不变)"},null,8,["modelValue"]),Ba,(0,p.Wm)(Pn,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Nn.value,"onUpdate:modelValue":l[113]||(l[113]=e=>Nn.value=e)},null,8,["modelValue"])])),_:1}),Da,1==Nn.value?((0,p.wg)(),(0,p.iD)("div",qa,[ja,(0,p._)("div",La,[(0,p.Wm)(Iu,{label:"选择模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(ft,{modelValue:Cn.value,"onUpdate:modelValue":l[114]||(l[114]=e=>Cn.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"填写或选择模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Lt,(e=>(0,p.Wm)(wt,{key:e.buttonPoolModel,label:e.label,value:e.buttonPoolModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),Ma,(0,p.Wm)(Iu,{label:"重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:On.value,"onUpdate:modelValue":l[115]||(l[115]=e=>On.value=e),type:"textarea",autosize:{maxHeight:100,minHeight:20},placeholder:st,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),Za,(0,p.Wm)(Pn,{modelValue:Dn.value,"onUpdate:modelValue":l[116]||(l[116]=e=>Dn.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),Ja,(0,p.Wm)(Pn,{name:"checkboxGroup",label:"在one-api的组别","input-align":"right"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:pt.value,"onUpdate:modelValue":l[117]||(l[117]=e=>pt.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",Ka,[(0,p.Wm)(Du,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",Ea,[(0,p.Wm)(Du,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),Ra,(0,p.Wm)(Pn,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:Bn.value,"onUpdate:modelValue":l[118]||(l[118]=e=>Bn.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址",placeholder:"自定义PandoraNext地址",rules:[{required:!0,message:"请填写自定义PandoraNext地址"}]},null,8,["modelValue"]),Ya])):(0,p.kq)("",!0)])),_:1}),(0,p._)("div",Xa,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Fa])),_:1},8,["show"]),(0,p.Wm)($u,{modelValue:Nt.value,"onUpdate:modelValue":l[120]||(l[120]=e=>Nt.value=e),"align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",{ref_key:"chart",ref:Qi,style:{width:"auto",height:"350px"}},null,512)])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:Ot.value,"onUpdate:modelValue":l[124]||(l[124]=e=>Ot.value=e),title:"OneAPI里的share_token列表","align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p.Wm)(g,{modelValue:xu.value,"onUpdate:modelValue":l[122]||(l[122]=e=>xu.value=e),"show-action":"",clearable:"",shape:"round",placeholder:"请输入搜索share_token名称",onSearch:l[123]||(l[123]=e=>Pu(xu.value)),class:"onShareToken"},{action:(0,p.w5)((()=>[(0,p.Wm)(V,{onClick:l[121]||(l[121]=e=>Ct.value=!0)},{default:(0,p.w5)((()=>[Ga])),_:1})])),_:1},8,["modelValue"]),(0,p._)("div",Qa,[(0,p.Wm)((0,h.SU)(W.eI),{data:uu.value,"row-class-name":Yu},{default:(0,p.w5)((()=>[(0,p.Wm)(y,{label:"在OneAPI的名称",prop:"oneApi_name",width:"180"},{default:(0,p.w5)((e=>[(0,p._)("div",eo,[(0,p._)("span",lo,(0,v.zw)(e.row.oneApi_name),1)])])),_:1}),(0,p.Wm)(y,{label:"来源Token名","min-width":"135"},{default:(0,p.w5)((e=>[(0,p._)("div",ao,[(0,p._)("span",oo,(0,v.zw)(e.row.token_name),1)])])),_:1}),(0,p.Wm)(y,{label:"share_token值","min-width":"355"},{default:(0,p.w5)((e=>[(0,p._)("div",to,[(0,p.Wm)(Nu,{onClick:l=>Yi(e.row.token_value)},{default:(0,p.w5)((()=>[(0,p.Wm)(Su)])),_:2},1032,["onClick"]),(0,p._)("span",no,(0,v.zw)(e.row.token_value),1)])])),_:1}),(0,p.Wm)(y,{property:"shareTime",label:"更新时间",prop:"shareTime","min-width":"170"}),(0,p.Wm)(y,{label:"操作方法","min-width":"235"},{default:(0,p.w5)((e=>[(0,p.Wm)(V,{size:"small",onClick:l=>wi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"primary",onClick:l=>$i(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("修改")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"danger",onClick:l=>Mi(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])]),uo])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:Ct.value,"onUpdate:modelValue":l[132]||(l[132]=e=>Ct.value=e),title:"添加shareToken进one_api","align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",io,[(0,p.Wm)(Hu,{onSubmit:Ku},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:"",class:"groupCell"},{default:(0,p.w5)((()=>[ro,(0,p.Wm)(Pn,{modelValue:ku.value,"onUpdate:modelValue":l[125]||(l[125]=e=>ku.value=e),name:"oneApi中渠道名称",label:"oneApi中渠道名称","input-align":"right",placeholder:"oneApi中渠道名称",rules:[{required:!0,message:"请填写oneApi中渠道名称"}]},null,8,["modelValue"]),so,(0,p._)("div",mo,[(0,p.Wm)(Iu,{label:"Token名","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(ft,{modelValue:bu.value,"onUpdate:modelValue":l[126]||(l[126]=e=>bu.value=e),filterable:"",clearable:"",placeholder:"选择要添加的Token名",onChange:Mu,class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Zu.value,(e=>((0,p.wg)(),(0,p.j4)(wt,{key:e.name,label:e.name,value:e.name,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),co,(0,p._)("div",po,[(0,p.Wm)(Iu,{label:"选择模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(ft,{modelValue:gu.value,"onUpdate:modelValue":l[127]||(l[127]=e=>gu.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"填写或选择模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(jt,(e=>(0,p.Wm)(wt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),vo,(0,p.Wm)(Iu,{label:"重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:yu.value,"onUpdate:modelValue":l[128]||(l[128]=e=>yu.value=e),type:"textarea",rows:10,placeholder:st,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),ho,(0,p.Wm)(Pn,{modelValue:Wu.value,"onUpdate:modelValue":l[129]||(l[129]=e=>Wu.value=e),name:"渠道优先级",label:"渠道优先级",placeholder:"渠道优先级(默认为0)","input-align":"center",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),_o,(0,p.Wm)(Pn,{"input-align":"right",name:"addOneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:Vu.value,"onUpdate:modelValue":l[130]||(l[130]=e=>Vu.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",wo,[(0,p.Wm)(Du,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",ko,[(0,p.Wm)(Du,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),bo,(0,p.Wm)(Pn,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:fu.value,"onUpdate:modelValue":l[131]||(l[131]=e=>fu.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),fo])),_:1}),(0,p._)("div",go,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:$t.value,"onUpdate:modelValue":l[149]||(l[149]=e=>$t.value=e),title:"🔎查看share_token在OneAPI信息","align-center":"",width:"95vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",yo,[(0,p.Wm)(Hu,{onSubmit:e.shareToken},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:"",class:"groupCell"},{default:(0,p.w5)((()=>[Vo,(0,p.Wm)(Pn,{modelValue:ii.value,"onUpdate:modelValue":l[133]||(l[133]=e=>ii.value=e),name:"OneAPI中渠道名称",label:"OneAPI中渠道名称",placeholder:"OneAPI中渠道名称","left-icon":"description-o",readonly:!0,"input-align":"right",onClickLeftIcon:l[134]||(l[134]=e=>Yi(ii.value)),rules:[{required:!0,message:"请填写OneAPI中渠道名称"}]},null,8,["modelValue"]),Wo,(0,p.Wm)(Pn,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:si.value,"onUpdate:modelValue":l[135]||(l[135]=e=>si.value=e),name:"share_token的值",label:"share_token的值","input-align":"right",placeholder:"share_token的值","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[136]||(l[136]=e=>Yi(si.value))},null,8,["modelValue"]),To,(0,p.Wm)(Pn,{modelValue:ri.value,"onUpdate:modelValue":l[137]||(l[137]=e=>ri.value=e),name:"share_token的来源",label:"share_token的来源","input-align":"right",placeholder:"share_token的值","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[138]||(l[138]=e=>Yi(ri.value))},null,8,["modelValue"]),xo,(0,p.Wm)(Pn,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:pi.value,"onUpdate:modelValue":l[139]||(l[139]=e=>pi.value=e),name:"模型",label:"模型","input-align":"right",placeholder:"加入的模型","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[140]||(l[140]=e=>Yi(pi.value))},null,8,["modelValue"]),(0,p._)("div",Uo,[Ho,(0,p.Wm)(Iu,{readonly:!0,type:"textarea",label:"🧩重定向",autosize:"",prop:"addModel_mapping",class:"model_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:ci.value,"onUpdate:modelValue":l[141]||(l[141]=e=>ci.value=e),type:"textarea",autosize:"",disabled:"",placeholder:st,onClickLeftIcon:l[142]||(l[142]=e=>Yi(ci.value))},null,8,["modelValue"])])),_:1})]),Ao,(0,p.Wm)(Pn,{modelValue:Dn.value,"onUpdate:modelValue":l[143]||(l[143]=e=>Dn.value=e),name:"渠道优先级",label:"渠道优先级",placeholder:"渠道优先级(默认为0)","left-icon":"description-o",readonly:!0,"input-align":"right",onClickLeftIcon:l[144]||(l[144]=e=>Yi(Dn.value)),rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),zo,(0,p.Wm)(Pn,{type:"textarea",autoSize:"",modelValue:vi.value,"onUpdate:modelValue":l[145]||(l[145]=e=>vi.value=e),name:"加入的组别",label:"加入的组别","input-align":"right",placeholder:"加入的组别","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[146]||(l[146]=e=>Yi(vi.value))},null,8,["modelValue"]),Po,(0,p.Wm)(Pn,{type:"textarea",autoSize:"",modelValue:di.value,"onUpdate:modelValue":l[147]||(l[147]=e=>di.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[148]||(l[148]=e=>Yi(di.value)),rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),So])),_:1})])),_:1},8,["onSubmit"])])])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:It.value,"onUpdate:modelValue":l[156]||(l[156]=e=>It.value=e),title:"📌修改shareToken在OneAPI的信息","align-center":"",width:"95vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",No,[(0,p.Wm)(Hu,{onSubmit:Ii},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:"",class:"groupCell"},{default:(0,p.w5)((()=>[Oo,(0,p._)("div",Co,[(0,p.Wm)(Iu,{label:"Token名","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(ft,{modelValue:ri.value,"onUpdate:modelValue":l[150]||(l[150]=e=>ri.value=e),filterable:"",clearable:"",placeholder:"选择添加的Token名称",onChange:Mu,class:"selectPool_token"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Zu.value,(e=>((0,p.wg)(),(0,p.j4)(wt,{key:e.name,label:e.name,value:e.name,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),$o,(0,p._)("div",Io,[(0,p.Wm)(Iu,{label:"选择模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(ft,{modelValue:mi.value,"onUpdate:modelValue":l[151]||(l[151]=e=>mi.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"填写或选择模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(jt,(e=>(0,p.Wm)(wt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),Bo,(0,p.Wm)(Iu,{label:"重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:ci.value,"onUpdate:modelValue":l[152]||(l[152]=e=>ci.value=e),"label-position":"top",type:"textarea",rows:10,placeholder:st,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),Do,(0,p.Wm)(Pn,{modelValue:Dn.value,"onUpdate:modelValue":l[153]||(l[153]=e=>Dn.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"center",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),qo,(0,p.Wm)(Pn,{"input-align":"right",name:"oneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:hi.value,"onUpdate:modelValue":l[154]||(l[154]=e=>hi.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",jo,[(0,p.Wm)(Du,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",Lo,[(0,p.Wm)(Du,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),Mo,(0,p.Wm)(Pn,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:di.value,"onUpdate:modelValue":l[155]||(l[155]=e=>di.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),Zo])),_:1}),(0,p._)("div",Jo,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:Bt.value,"onUpdate:modelValue":l[170]||(l[170]=e=>Bt.value=e),title:"🔎查看pool_token的信息","align-center":"",width:"95vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Ko,[(0,p.Wm)(Hu,null,{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:"",class:"groupCell"},{default:(0,p.w5)((()=>[Eo,(0,p.Wm)(Pn,{modelValue:An.value,"onUpdate:modelValue":l[157]||(l[157]=e=>An.value=e),name:"pool_token名称",label:"pool_token名称",placeholder:"pool_token名称",readonly:!0,"left-icon":"description-o",onClickLeftIcon:l[158]||(l[158]=e=>Yi(An.value)),"input-align":"right"},null,8,["modelValue"]),Ro,(0,p.Wm)(Pn,{modelValue:zn.value,"onUpdate:modelValue":l[159]||(l[159]=e=>zn.value=e),label:"使用token名集合",type:"textarea",placeholder:"使用token名集合","left-icon":"description-o",readonly:!0,"input-align":"right",onClickLeftIcon:l[160]||(l[160]=e=>Yi(En.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"]),Yo,(0,p.Wm)(Pn,{modelValue:qn.value,"onUpdate:modelValue":l[161]||(l[161]=e=>qn.value=e),readonly:!0,type:"textarea",autosize:{maxHeight:100,minHeight:20},name:"pool_token的值",label:"pool_token的值","input-align":"right","left-icon":"description-o",onClickLeftIcon:l[162]||(l[162]=e=>Yi(qn.value)),placeholder:"pool_token的值(不改则不变)"},null,8,["modelValue"]),Xo,(0,p.Wm)(Pn,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Nn.value,"onUpdate:modelValue":l[163]||(l[163]=e=>Nn.value=e)},null,8,["modelValue"])])),_:1}),Fo,1==Nn.value?((0,p.wg)(),(0,p.iD)("div",Go,[Qo,(0,p._)("div",et,[(0,p.Wm)(Iu,{disabled:"",label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(ft,{disabled:"",modelValue:Cn.value,"onUpdate:modelValue":l[164]||(l[164]=e=>Cn.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Lt,(e=>(0,p.Wm)(wt,{key:e.buttonPoolModel,label:e.label,value:e.buttonPoolModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),lt])),_:1}),at,(0,p.Wm)(Iu,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:On.value,"onUpdate:modelValue":l[165]||(l[165]=e=>On.value=e),type:"textarea",disabled:"",filterable:"",autosize:"",placeholder:st,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),ot,(0,p.Wm)(Pn,{readonly:!0,modelValue:Dn.value,"onUpdate:modelValue":l[166]||(l[166]=e=>Dn.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),tt,(0,p.Wm)(Pn,{"input-align":"right",name:"oneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:pt.value,"onUpdate:modelValue":l[167]||(l[167]=e=>pt.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",nt,[(0,p.Wm)(Du,{name:"default",disabled:"","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",ut,[(0,p.Wm)(Du,{name:"vip",disabled:"","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip",disabled:"","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),it,(0,p.Wm)(Pn,{readonly:!0,type:"textarea",autoSize:"",modelValue:Bn.value,"onUpdate:modelValue":l[168]||(l[168]=e=>Bn.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right","left-icon":"description-o",onClickLeftIcon:l[169]||(l[169]=e=>Yi(Bn.value)),placeholder:"自定义PandoraNext地址",rules:[{required:!0,message:"请填写自定义PandoraNext地址"}]},null,8,["modelValue"]),rt])):(0,p.kq)("",!0)])),_:1})])),_:1})])])),_:1},8,["modelValue"])],64)}}});const vt=pt;var ht=vt}}]);
-//# sourceMappingURL=386.27cc819e.js.map
\ No newline at end of file
diff --git a/rearServer/target/classes/static/js/386.27cc819e.js.map b/rearServer/target/classes/static/js/386.27cc819e.js.map
deleted file mode 100644
index 9653aa2..0000000
--- a/rearServer/target/classes/static/js/386.27cc819e.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"js/386.27cc819e.js","mappings":"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","sources":["webpack://PandoraNext-TokensTool/./src/views/homeIphone.vue","webpack://PandoraNext-TokensTool/./src/views/homeIphone.vue?1abb"],"sourcesContent":["import \"core-js/modules/es.array.push.js\";\nimport { defineComponent as _defineComponent } from 'vue';\nimport { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, resolveComponent as _resolveComponent, createVNode as _createVNode, withCtx as _withCtx, createTextVNode as _createTextVNode, unref as _unref, resolveDirective as _resolveDirective, openBlock as _openBlock, createBlock as _createBlock, withDirectives as _withDirectives, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode } from \"vue\";\nimport _imports_0 from '../asserts/openAi.jpg';\nconst _hoisted_1 = {\n class: \"content\"\n};\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"meta\", {\n name: \"viewport\",\n content: \"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no\"\n}, null, -1);\nconst _hoisted_3 = /*#__PURE__*/_createElementVNode(\"img\", {\n style: {\n \"width\": \"25px\"\n },\n src: _imports_0\n}, null, -1);\nconst _hoisted_4 = {\n class: \"home-container\"\n};\nconst _hoisted_5 = /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"flex-grow\"\n}, null, -1);\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://ai.fakeopen.com/auth\"\n}, \"PandoraNext地址\", -1);\nconst _hoisted_7 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://chat.openai.com/api/auth/session\"\n}, \"OpenAI官网\", -1);\nconst _hoisted_8 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://github.com/Yanyutin753/PandoraNext-TokensTool\"\n}, \"TokensTool地址\", -1);\nconst _hoisted_9 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_10 = /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"flex items-center\"\n}, [/*#__PURE__*/_createElementVNode(\"span\", {\n class: \"font-h4\"\n}, \"PandoraNext-TokensTool \"), /*#__PURE__*/_createElementVNode(\"span\", {\n class: \"font-h4-tag\"\n}, \"v0.6.8 \")], -1);\nconst _hoisted_11 = {\n class: \"under\"\n};\nconst _hoisted_12 = {\n class: \"search\"\n};\nconst _hoisted_13 = {\n style: {\n \"display\": \"flex\",\n \"margin\": \"0px 0px -20px 0px\"\n }\n};\nconst _hoisted_14 = {\n style: {\n \"display\": \"flex\",\n \"width\": \"88vw\",\n \"height\": \"63vh\",\n \"transform\": \"translateX(0vw)\"\n }\n};\nconst _hoisted_15 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_16 = {\n style: {\n \"margin-left\": \"15px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_17 = {\n style: {\n \"margin-left\": \"15px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_18 = {\n style: {\n \"margin\": \"13px\",\n \"transform\": \"translateX(7px)\"\n }\n};\nconst _hoisted_19 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"批量操作\", -1);\nconst _hoisted_20 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_21 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_22 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_23 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_24 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_25 = {\n key: 0\n};\nconst _hoisted_26 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_27 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_28 = {\n key: 0\n};\nconst _hoisted_29 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_30 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_31 = {\n key: 1\n};\nconst _hoisted_32 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_33 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_34 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_35 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_36 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_37 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_38 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_39 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_40 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_41 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_42 = {\n key: 0\n};\nconst _hoisted_43 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_44 = {\n key: 1\n};\nconst _hoisted_45 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_46 = {\n key: 0\n};\nconst _hoisted_47 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_48 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_49 = {\n key: 2\n};\nconst _hoisted_50 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_51 = {\n key: 3\n};\nconst _hoisted_52 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_53 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_54 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_55 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_56 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_57 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_58 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_59 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_60 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_61 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_62 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_63 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_64 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_65 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_66 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_67 = {\n key: 0\n};\nconst _hoisted_68 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_69 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_70 = {\n key: 0\n};\nconst _hoisted_71 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_72 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_73 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_74 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_75 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_76 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_77 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_78 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_79 = {\n key: 0\n};\nconst _hoisted_80 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_81 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_82 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_83 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_84 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_85 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_86 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_87 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_88 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_89 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_90 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_91 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_92 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_93 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_94 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_95 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_96 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_97 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_98 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_99 = {\n key: 0\n};\nconst _hoisted_100 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_101 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_102 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_103 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_104 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_105 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_106 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_107 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_108 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_109 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_110 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_111 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_112 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_113 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_114 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_115 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_116 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(0vw, -2vh)\"\n }\n};\nconst _hoisted_117 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(calc(-2.5% - 20px), 0vh)\",\n \"width\": \"calc(102.5% + 40px)\"\n }\n};\nconst _hoisted_118 = {\n style: {\n \"margin-left\": \"10px\",\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_119 = {\n key: 0\n};\nconst _hoisted_120 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"oneApi4\", -1);\nconst _hoisted_121 = {\n key: 1\n};\nconst _hoisted_122 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"oneApi3\", -1);\nconst _hoisted_123 = {\n key: 2\n};\nconst _hoisted_124 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"Json\", -1);\nconst _hoisted_125 = {\n style: {\n \"margin-left\": \"20px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_126 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_127 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_128 = /*#__PURE__*/_createElementVNode(\"span\", {\n style: {\n \"margin-left\": \"0px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n}, \"点击此进行查看\", -1);\nconst _hoisted_129 = {\n style: {\n \"margin\": \"10px 0px 10px 0px\"\n }\n};\nconst _hoisted_130 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"批量操作\", -1);\nconst _hoisted_131 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_132 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_133 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_134 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_135 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_136 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_137 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_138 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_139 = {\n key: 0\n};\nconst _hoisted_140 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_141 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_142 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_143 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_144 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_145 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_146 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_147 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_148 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_149 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_150 = {\n key: 0\n};\nconst _hoisted_151 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_152 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_153 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_154 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_155 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_156 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_157 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_158 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_159 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_160 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_161 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_162 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_163 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(calc(-2.5% - 20px), 0vh)\",\n \"width\": \"calc(100% + 2.5% + 40px)\"\n }\n};\nconst _hoisted_164 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_165 = {\n style: {\n \"margin-left\": \"0px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_166 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_167 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_168 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_169 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_170 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_171 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_172 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_173 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_174 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_175 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_176 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_177 = {\n key: 0\n};\nconst _hoisted_178 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_179 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_180 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_181 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_182 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_183 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_184 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_185 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_186 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_187 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_188 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_189 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"添加到OneAPI\", -1);\nconst _hoisted_190 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(calc(-2.5% - 20px), 0vh)\",\n \"width\": \"calc(102.5% + 40px)\"\n }\n};\nconst _hoisted_191 = {\n style: {\n \"margin-left\": \"15px\",\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_192 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_193 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_194 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_195 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_196 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_197 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_198 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_199 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_200 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_201 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_202 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_203 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_204 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_205 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_206 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_207 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_208 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_209 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_210 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_211 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_212 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_213 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_214 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_215 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_216 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_217 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_218 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_219 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_220 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_221 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_222 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_223 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_224 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_225 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_226 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_227 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_228 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_229 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_230 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_231 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_232 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_233 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_234 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_235 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_236 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_237 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_238 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_239 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_240 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_241 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_242 = {\n key: 0\n};\nconst _hoisted_243 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_244 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_245 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_246 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_247 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_248 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_249 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_250 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_251 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_252 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nimport { ref, onMounted } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport axios from \"axios\";\nimport { ElMessage, ElMessageBox } from \"element-plus\";\nimport { differenceInDays, parseISO } from \"date-fns\";\nimport { ElLoading } from \"element-plus\";\nimport { ElTable } from \"element-plus\";\nimport * as echarts from \"echarts\";\nimport { computed } from \"vue\";\nconst temModel_mapping = `此项可选,用于修改请求体中的模型名称,\n 为一个 JSON 字符串,键为请求中模型名称,\n 值为要替换的模型名称,例如:\n {\n \"gpt-3.5-turbo-301\":\"gpt-3.5-turbo\",\n \"gpt-4-8314\":\"gpt-4\", \n \"gpt-4-32k-8314\":\"gpt-4-32k\",\n }`;\nconst pandoraNext = 0;\n//tokensTool 为 0\nconst tokensTool = 1;\n//验证信息\nconst validation = 2;\n/**\r\n * 修改系统设置信息\r\n */\nexport default /*#__PURE__*/_defineComponent({\n __name: 'homeIphone',\n setup(__props) {\n // 导入类\n const path = window.location.pathname; // 假设是 \"/api/getData\"\n const parts = path.split(\"/\"); // 分割路径,得到 [\"\", \"api\", \"getData\"]\n let prefix = \"\"; // 默认值为 \"\"\n if (parts.length >= 3) {\n prefix = \"/\" + parts[1]; // 如果parts长度大于或等于3,获取第一个部分\n }\n\n const temGroupChecked = ref([\"default\", \"svip\", \"vip\"]);\n const groupChecked = ref([\"default\", \"svip\", \"vip\"]);\n const multipleTableRef = ref();\n const multipleTableRefPool = ref();\n const multipleSelection = ref([]);\n const multipleSelectionPool = ref([]);\n const handleSelectionChange = val => {\n multipleSelection.value = val;\n };\n const poolSelectionChange = val => {\n multipleSelectionPool.value = val;\n };\n const size = ref(\"ALL\");\n //pandoraNext 为 0\n const router = useRouter();\n /**\r\n * \r\n * \r\n * \r\n *\r\n */\n const show = ref(false);\n const show_1 = ref(false);\n const show_2 = ref(false);\n const show_3 = ref(false);\n const show_4 = ref(false);\n const show_5 = ref(false);\n const show_6 = ref(false);\n const show_7 = ref(false);\n const show_8 = ref(false);\n const show_9 = ref(false);\n const show_10 = ref(false);\n const show_11 = ref(false);\n const show_12 = ref(false);\n const show_13 = ref(false);\n const show_14 = ref(false);\n const show_15 = ref(false);\n const show_16 = ref(false);\n const show_17 = ref(false);\n /**\r\n * 定义User类接口\r\n */\n const buttonValue = ref(\"\");\n const options = [{\n buttonValue: \"选中删除Token\",\n label: \"选中删除Token\"\n }, {\n buttonValue: \"选中刷新Token\",\n label: \"选中刷新Token\"\n }, {\n buttonValue: \"选中合成pool_token\",\n label: \"选中合成pool_token\"\n }, {\n buttonValue: \"选中修改pool_token\",\n label: \"选中修改pool_token\"\n }];\n const buttonModel = ref(\"\");\n const optionsModel = [{\n buttonModel: \"gpt-3.5-turbo\",\n label: \"gpt-3.5-turbo\"\n }, {\n buttonModel: \"gpt-4-s\",\n label: \"gpt-4-s\"\n }, {\n buttonModel: \"gpt-4-mobile\",\n label: \"gpt-4-mobile\"\n }, {\n buttonModel: \"gpt-4-vision\",\n label: \"gpt-4-vision\"\n }, {\n buttonModel: \"gpt-4-classic\",\n label: \"gpt-4-classic\"\n }, {\n buttonModel: \"gpt-4-vision-preview\",\n label: \"gpt-4-vision-preview\"\n }];\n const buttonPoolModel = ref(\"\");\n const optionsPoolModel = [{\n buttonPoolModel: \"gpt-3.5-turbo\",\n label: \"gpt-3.5-turbo\"\n }, {\n buttonPoolModel: \"gpt-4\",\n label: \"gpt-4\"\n }];\n const buttonPoolValue = ref(\"\");\n const optionsPool = [{\n buttonPoolValue: \"选中检查pool_token\",\n label: \"选中检查pool_token\"\n }, {\n buttonPoolValue: \"选中删除pool_token\",\n label: \"选中删除pool_token\"\n }, {\n buttonPoolValue: \"选中刷新pool_token\",\n label: \"选中刷新pool_token\"\n }, {\n buttonPoolValue: \"选中更换pool_token\",\n label: \"选中更换pool_token\"\n }];\n /**\r\n * 定义Pool类接口\r\n */\n const proxy_api_prefix = ref(\"\");\n const isolated_conv_title = ref(\"*\");\n const bing = ref(\"\");\n const timeout = ref(\"\");\n const proxy_url = ref(\"\");\n const public_share = ref(false);\n //0.4.9.2\n const disable_signup = ref(false);\n const auto_conv_arkose = ref(false);\n const proxy_file_service = ref(false);\n const custom_doh_host = ref(\"\");\n const enabled = ref(false);\n const cert_file = ref(\"\");\n const key_file = ref(\"\");\n const site_password = ref(\"\");\n const setup_password = ref(\"\");\n const loginUsername = ref(\"\");\n const loginPassword = ref(\"\");\n const license_id = ref(\"\");\n //0.4.8.2\n const isGetToken = ref(false);\n const getTokenPassword = ref(\"\");\n const containerName = ref(\"PandoraNext\");\n const autoToken_url = ref(\"default\");\n const whitelist = ref(\"\");\n const provider = ref(\"\");\n const site_key = ref(\"\");\n const site_secret = ref(\"\");\n const site_login = ref(false);\n const setup_login = ref(false);\n const oai_username = ref(false);\n const oai_password = ref(false);\n //0.4.9.3\n const auto_updateSession = ref(false);\n const auto_updateTime = ref(5);\n const auto_updateNumber = ref(1);\n const pandoraNext_outUrl = ref(\"\");\n const oneAPi_outUrl = ref(\"\");\n const oneAPi_intoToken = ref(\"\");\n // 0.4.8\n const poolName = ref(\"\");\n const temPoolName = ref(\"\");\n const shareTokens = ref(\"\");\n const poolToken = ref(\"\");\n const poolTime = ref(\"\");\n const checkPool = ref(true);\n // 0.5.0\n //上传oneApi\n const poolNameValue = ref(\"\");\n const intoOneApi = ref(false);\n const poolModel_mapping = ref(\"\");\n const poolOneApi_models = ref([]);\n const addPoolOneApi_models = ref([]);\n const addPoolModel_mapping = ref(\"\");\n const oneApi_pandoraUrl = ref(pandoraNext_outUrl.value + proxy_api_prefix.value);\n const priority = ref(0);\n const temPool_token = ref(\"\");\n // 自定义校验函数,直接返回错误提示\n const customValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n const sitePasswordValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (regex.test(value) || value == \"\") {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n const poolNameValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^[\\u4e00-\\u9fa5a-zA-Z0-9]{3,10}$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字\";\n }\n };\n const addPasswordValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (addSetPoolToken.value == true || setPoolToken.value == true || regex.test(value)) {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n /**\r\n * 查看或者修改token信息参数\r\n */\n const temName = ref(\"\");\n const temToken = ref(\"\");\n const temAccessToken = ref(\"\");\n const temShareToken = ref(\"\");\n const temUsername = ref(\"\");\n const temUserPassword = ref(\"\");\n const temShared = ref(false);\n const temShow_user_info = ref(false);\n const temPlus = ref(false);\n const temPassword = ref(\"\");\n const setPoolToken = ref(false);\n const useRefreshToken = ref(false);\n const temCheckSession = ref(true);\n const tableData = ref([]);\n // 0.4.8\n const poolData = ref([]);\n const shareData = ref([]);\n // 0.5.9\n const loginData = ref([]);\n /**\r\n * 添加用户信息参数\r\n */\n const addName = ref(\"\");\n const addUsername = ref(\"\");\n const addUserPassword = ref(\"\");\n const addTokenValue = ref(\"\");\n const addShared = ref(false);\n const addShow_user_info = ref(false);\n const addPlus = ref(false);\n const addSetPoolToken = ref(false);\n const addUseRefreshToken = ref(false);\n const addPassword = ref(\"\");\n /**\r\n * 添加用户信息参数\r\n */\n const addOneApi_name = ref(\"\");\n const addToken_name = ref(\"\");\n const addToken_value = ref(\"\");\n const addOneApi_baseUrl = ref(\"\");\n const addOneApi_models = ref([]);\n const addModel_mapping = ref(\"\");\n const addOneApi_groups = ref([\"default\", \"svip\", \"vip\"]);\n const addPriority = ref(0);\n //Pandora的icon大小\n const iconSize = ref(window.innerHeight * 0.085);\n //搜索值\n const value = ref(\"\");\n const valuePool = ref(\"\");\n const valueShare = ref(\"\");\n /**\r\n * 用jwt令牌验证身份\r\n * 未通过者返回到/\r\n */\n const token = localStorage.getItem(\"jwtToken\"); // 从localStorage获取JWT令牌\n if (!token) {\n router.replace(`/`);\n }\n const headers = {\n Authorization: `Bearer ${token}`\n };\n /**\r\n * 用jwt令牌验证身份函数\r\n */\n const fetchLoginToken = async () => {\n axios.post(`https://yubb.fun${prefix}/api/loginToken?token=` + token).then(response => {\n if (response.data.code == 0) {\n console.error(response.data.data);\n router.replace(`/`);\n return;\n }\n }).catch(error => {\n console.error(\"请求loginToken接口失败\", error);\n router.replace(`/`);\n });\n };\n const onSearch = value => {\n if (value == \"Web\" || value == \"WEB\") {\n getWebToken(\"\");\n } else if (value == \"ALL\" || value == \"All\") {\n getToken(\"\");\n } else if (value.includes(\"API\")) {\n getAPIToken(\"\");\n } else {\n getToken(value);\n }\n };\n const onSearchShareToken = value => {\n getShare(value);\n };\n const onSearchPoolToken = value => {\n getPool(value);\n };\n /**\r\n * 获取数据操作,并把数据返回到tableData\r\n * 用于展示\r\n */\n const getToken = async value => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 将用户数据添加到tableData\n tableData.value = resUsers;\n }\n };\n const getAPIToken = async value => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 使用 filter 方法筛选出 setPoolToken 等于 true 的用户\n const filteredUsers = resUsers.filter(user => user.setPoolToken === true);\n // 将筛选后的用户数据添加到 tableData\n tableData.value = filteredUsers;\n }\n };\n const getWebToken = async value => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 使用 filter 方法筛选出 setPoolToken 等于 true 的用户\n const filteredUsers = resUsers.filter(user => user.setPoolToken === false);\n // 将筛选后的用户数据添加到 tableData\n tableData.value = filteredUsers;\n }\n };\n /**\r\n * 获取数据操作\r\n * 用于日志数据展示\r\n */\n const getLoginData = async () => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectLogin`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resLogins = data_token.map(item => ({\n ipAddress: item.ipAddress,\n requestIp: item.requestIp,\n outRequestNumber: item.outRequestNumber,\n inRequestNumber: item.inRequestNumber,\n lastLoginTime: item.lastLoginTime\n }));\n // 将用户数据添加到tableData\n loginData.value = resLogins;\n }\n };\n const getPool = async value => {\n const responsePool = await axios.get(`https://yubb.fun${prefix}/api/selectPoolToken?name=${value}`, {\n headers\n });\n const pool_token = responsePool.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(pool_token)) {\n const resPools = pool_token.map(item => ({\n poolName: item.poolName,\n poolTime: item.poolTime,\n poolToken: item.poolToken,\n shareTokens: item.shareTokens,\n checkPool: item.checkPool,\n intoOneApi: item.intoOneApi,\n poolOneApi_models: item.poolOneApi_models,\n poolModel_mapping: item.poolModel_mapping,\n oneApi_pandoraUrl: item.oneApi_pandoraUrl,\n groupChecked: item.groupChecked,\n priority: item.priority\n }));\n // 将用户数据添加到poolData\n poolData.value = resPools;\n }\n };\n const getShare = async value => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const responseShare = await axios.get(`https://yubb.fun${prefix}/api/selectShareToken?name=${value}`, {\n headers\n });\n const share_token = responseShare.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(share_token)) {\n const resShares = share_token.map(item => ({\n oneApi_name: item.oneApi_name,\n token_name: item.token_name,\n token_value: item.token_value,\n oneApi_baseUrl: item.oneApi_baseUrl,\n oneApi_models: item.oneApi_models,\n model_mapping: item.model_mapping,\n oneApi_groups: item.oneApi_groups,\n shareTime: item.shareTime,\n priority: item.priority\n }));\n // 将用户数据添加到poolData\n shareData.value = resShares;\n }\n loadingInstance.close();\n };\n const getSetting = async value => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectSetting`, {\n headers\n });\n const data = response.data.data;\n proxy_api_prefix.value = data.proxy_api_prefix;\n isolated_conv_title.value = data.isolated_conv_title;\n bing.value = data.bing;\n timeout.value = data.timeout;\n proxy_url.value = data.proxy_url;\n public_share.value = data.public_share;\n //0.4.9.2\n disable_signup.value = data.disable_signup;\n auto_conv_arkose.value = data.auto_conv_arkose;\n proxy_file_service.value = data.proxy_file_service;\n custom_doh_host.value = data.custom_doh_host;\n enabled.value = data.tls.enabled;\n cert_file.value = data.tls.cert_file;\n key_file.value = data.tls.key_file;\n site_password.value = data.site_password;\n setup_password.value = data.setup_password;\n if (data.whitelist == null) {\n whitelist.value = \"null\";\n } else whitelist.value = data.whitelist;\n loginUsername.value = data.loginUsername;\n loginPassword.value = data.loginPassword;\n license_id.value = data.license_id;\n //0.4.8.2\n isGetToken.value = data.isGetToken;\n getTokenPassword.value = data.getTokenPassword;\n containerName.value = data.containerName;\n autoToken_url.value = data.autoToken_url;\n provider.value = data.validation.provider;\n site_key.value = data.validation.site_key;\n site_secret.value = data.validation.site_secret;\n site_login.value = data.validation.site_login;\n setup_login.value = data.validation.setup_login;\n oai_username.value = data.validation.oai_username;\n oai_password.value = data.validation.oai_password;\n //0.4.9.3\n auto_updateSession.value = data.auto_updateSession;\n auto_updateTime.value = data.auto_updateTime;\n auto_updateNumber.value = data.auto_updateNumber;\n pandoraNext_outUrl.value = data.pandoraNext_outUrl;\n if (!pandoraNext_outUrl.value.endsWith(\"/\")) {\n oneApi_pandoraUrl.value = pandoraNext_outUrl.value + \"/\" + proxy_api_prefix.value;\n } else {\n oneApi_pandoraUrl.value = pandoraNext_outUrl.value + proxy_api_prefix.value;\n }\n //0.5.0\n oneAPi_outUrl.value = data.oneAPi_outUrl;\n oneAPi_intoToken.value = data.oneAPi_intoToken;\n fetchDataAndFillForm();\n };\n const fetchDataAndFillForm = async () => {\n if (loginPassword.value == \"123456\" && loginUsername.value == \"root\") {\n ElMessageBox.alert(\"请先修改默认的初始账号和密码,并填写相应的信息,具体可参考网站文档!\", \"温馨提醒\", {\n confirmButtonText: \"确定\",\n callback: action => {\n ElMessage({\n type: \"info\",\n message: `如果不知道怎么填的话,可以看tokensTool的文档站!`\n });\n }\n });\n show_4.value = true;\n loginPassword.value = \"\";\n loginUsername.value = \"\";\n }\n };\n const getSelectedData = () => {\n const selectedData = multipleSelection.value;\n if (selectedData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n } else {\n show_9.value = true;\n }\n };\n const addSelectPoolToken = async () => {\n try {\n const selectedData = multipleSelection.value;\n const names = selectedData.map(userData => userData.name);\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n if (addPoolModel_mapping.value == \"\") {\n addPoolModel_mapping.value = \"{}\";\n }\n JSON.parse(addPoolModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const addPoolToken = {\n poolName: poolNameValue.value,\n intoOneApi: intoOneApi.value,\n poolOneApi_models: addPoolOneApi_models.value.toString(),\n poolModel_mapping: addPoolModel_mapping.value,\n oneApi_pandoraUrl: oneApi_pandoraUrl.value,\n shareTokens: names,\n groupChecked: groupChecked.value.toString(),\n priority: priority.value\n };\n const response = await fetch(`https://yubb.fun${prefix}/api/addPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addPoolToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n poolNameValue.value = \"\";\n getPool(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n poolNameValue.value = \"\";\n intoOneApi.value = false;\n groupChecked.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n addPoolModel_mapping.value = \"\";\n addPoolOneApi_models.value = [];\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n loadingInstance.close();\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消生成pool_token\"\n });\n }\n show_9.value = false;\n };\n const handlePoolNameChange = poolNameValue => {\n let selectedItem = poolData.value.find(item => item.poolName === poolNameValue);\n if (selectedItem != null) {\n temPool_token.value = selectedItem.poolToken;\n intoOneApi.value = selectedItem.intoOneApi;\n poolOneApi_models.value = selectedItem.poolOneApi_models.split(\",\");\n poolModel_mapping.value = selectedItem.poolModel_mapping;\n oneApi_pandoraUrl.value = selectedItem.oneApi_pandoraUrl;\n temGroupChecked.value = selectedItem.groupChecked.split(\",\");\n priority.value = selectedItem.priority;\n }\n };\n const handleShareNameChange = addToken_name => {\n let selectedItem = tableData.value.find(item => item.name === addToken_name && item.setPoolToken === true);\n };\n const filteredTableData = computed(() => {\n return tableData.value.filter(item => item.setPoolToken === true);\n });\n const requirePoolToken = async () => {\n try {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n if (poolModel_mapping.value == \"\") {\n poolModel_mapping.value = \"{}\";\n }\n JSON.parse(poolModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const selectedData = multipleSelection.value;\n const names = selectedData.map(userData => userData.name);\n const addPoolToken = {\n poolName: poolName.value,\n poolToken: temPool_token.value,\n intoOneApi: intoOneApi.value,\n poolOneApi_models: poolOneApi_models.value.toString(),\n poolModel_mapping: poolModel_mapping.value,\n oneApi_pandoraUrl: oneApi_pandoraUrl.value,\n shareTokens: names,\n groupChecked: temGroupChecked.value.toString(),\n priority: priority.value\n };\n console.log(addPoolToken);\n const response = await fetch(`https://yubb.fun${prefix}/api/requirePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addPoolToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n getPool(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n poolName.value = \"\";\n temPool_token.value = \"\";\n intoOneApi.value = false;\n poolOneApi_models.value = [];\n poolModel_mapping.value = \"\";\n groupChecked.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n loadingInstance.close();\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消修改pool_token\"\n });\n }\n show_11.value = false;\n };\n const addShareToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n try {\n if (addModel_mapping.value == \"\") {\n addModel_mapping.value = \"{}\";\n }\n JSON.parse(addModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const addShareToken = {\n oneApi_name: addOneApi_name.value,\n token_name: addToken_name.value,\n oneApi_baseUrl: addOneApi_baseUrl.value,\n oneApi_models: addOneApi_models.value.toString(),\n model_mapping: addModel_mapping.value,\n oneApi_groups: addOneApi_groups.value.toString(),\n priority: priority.value\n };\n const response = await fetch(`https://yubb.fun${prefix}/api/addShareToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addShareToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n getShare(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n addOneApi_name.value = \"\";\n addToken_name.value = \"\";\n addOneApi_baseUrl.value = \"\";\n addOneApi_models.value = [];\n addModel_mapping.value = \"\";\n addOneApi_groups.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消修改pool_token\"\n });\n }\n show_14.value = false;\n loadingInstance.close();\n };\n const pandoraUsage = ref(\"\");\n // 在组件加载完成后自动触发数据加载和填充\n onMounted(async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetchLoginToken();\n // 页面重定向\n if (window.innerWidth <= 900) {\n router.replace(\"/iphone\");\n } else {\n router.replace(\"/home\");\n }\n try {\n // 并行执行不依赖的函数\n await Promise.all([onSearch(value.value), getPool(value.value), getSetting(value.value)]);\n // 等待获取 Pandora 数据\n const response = await axios.get(`https://yubb.fun${prefix}/api/getPandoraNext`, {\n headers\n });\n const data = response.data.data;\n if (data != null) {\n pandoraUsage.value = `${data.current}/${data.total}`;\n }\n } catch (error) {\n console.error(\"An error occurred:\", error);\n // 这里可以添加错误处理逻辑\n } finally {\n loadingInstance.close();\n }\n });\n //用来警告session过期\n const tableRowClassName = ({\n row\n }) => {\n if (row.checkSession == false) {\n return \"warning-row\";\n }\n return \"\";\n };\n const poolRowClassName = ({\n row\n }) => {\n if (row.checkPool == false) {\n return \"warning-row\";\n }\n return \"\";\n };\n /**\r\n * 跳转到PandoraNext\r\n */\n const redirectToExternalLink = () => {\n window.open(pandoraNext_outUrl.value);\n };\n /**\r\n * 跳转到PandoraNext分享页\r\n */\n const redirectPandoraNextShare = () => {\n var url = pandoraNext_outUrl.value;\n // 检查最后一个字符是否是 /\n if (url.charAt(url.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n url += \"/\";\n }\n window.open(url + \"shared.html\");\n };\n /**\r\n * 跳转到PandoraNext\r\n */\n const requirePandoraNextLink = () => {\n var url = pandoraNext_outUrl.value;\n // 检查最后一个字符是否是 /\n if (url.charAt(url.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n url += \"/\";\n }\n window.open(url + \"setup\");\n };\n /**\r\n * 跳转到tokensTool使用说明\r\n */\n const requireTokensToolLink = () => {\n window.open(\"https://apifox.com/apidoc/shared-40345b46-9c9c-45cc-b494-6a6a387a978f\");\n };\n /**\r\n * 用于用户信息设置\r\n */\n const activeIndex = ref(\"-1\");\n let temRequireToken = \"\";\n const handleSelect = (key, keyPath) => {\n console.log(\"选择准备!\");\n };\n /**\r\n * 添加token开启函数\r\n * 类user\r\n */\n const addToken = () => {\n show_1.value = true;\n };\n /**\r\n * 添加token函数\r\n * 类user\r\n */\n const onAddToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const now = new Date();\n const formattedTime = `${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, \"0\")}-${now.getDate().toString().padStart(2, \"0\")} ${now.getHours().toString().padStart(2, \"0\")}:${now.getMinutes().toString().padStart(2, \"0\")}:${now.getSeconds().toString().padStart(2, \"0\")}`;\n if (addPassword.value != \"\") {\n addShared.value = false;\n addPlus.value = false;\n addShow_user_info.value = false;\n }\n if (addSetPoolToken.value == false) {\n addTokenValue.value = addUsername.value + \",\" + addUserPassword.value;\n addUseRefreshToken.value = false;\n addShared.value = false;\n addPlus.value = false;\n addShow_user_info.value = false;\n }\n let api = {\n name: addName.value,\n token: addTokenValue.value,\n username: addUsername.value,\n userPassword: addUserPassword.value,\n shared: addShared.value,\n auto_shared: addShared.value,\n show_user_info: addShow_user_info.value,\n plus: addPlus.value,\n setPoolToken: addSetPoolToken.value,\n useRefreshToken: addUseRefreshToken.value,\n password: addPassword.value,\n updateTime: formattedTime\n };\n fetch(`https://yubb.fun${prefix}/api/addToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(api)\n }).then(response => response.json()) // 将 .json() 放在正确的位置\n .then(data => {\n if (data.code == 1) {\n ElMessage.success(\"添加成功!\");\n addName.value = \"\";\n addTokenValue.value = \"\";\n addUsername.value = \"\";\n addUserPassword.value = \"\";\n addShared.value = false;\n addShow_user_info.value = false;\n addPlus.value = false;\n addSetPoolToken.value = false;\n addUseRefreshToken.value = false;\n addPassword.value = \"\";\n if (api.token == \"\") {\n api.token = data.data;\n ElMessage.success(\"已为您自动装填token!\");\n }\n } else {\n ElMessage.error(data.msg);\n }\n addPassword.value = \"\";\n getToken(\"\");\n loadingInstance.close();\n }).catch(error => {\n ElMessage.error(\"获取账号出现问题,请检查刷新网址是否正确!\");\n loadingInstance.close();\n });\n show_1.value = false;\n };\n /**\r\n * 展示token函数\r\n * 类user\r\n */\n const chart_show = ref(null);\n const showData = async row => {\n temName.value = row.name;\n temUsername.value = row.username;\n temUserPassword.value = row.userPassword;\n temToken.value = row.token;\n temAccessToken.value = row.access_token;\n temShareToken.value = row.share_token;\n temShared.value = row.shared;\n temShow_user_info.value = row.show_user_info;\n temPlus.value = row.plus;\n temPassword.value = row.password;\n setPoolToken.value = row.setPoolToken;\n useRefreshToken.value = row.useRefreshToken;\n temCheckSession.value = row.checkSession;\n if (setPoolToken.value != true) {\n show_2.value = true;\n return;\n }\n const usageHeader = {\n Authorization: `Bearer ${row.access_token}`\n };\n show_2.value = true;\n if (setPoolToken.value) {\n const response = await axios.get(`${oneApi_pandoraUrl.value}/api/token/info/${row.share_token}`, {\n headers: usageHeader\n });\n let usageData = [];\n let modelData = [];\n for (let key in response.data.usage) {\n if (!key.startsWith(\"range\")) {\n modelData.push(key);\n usageData.push(response.data.usage[key]);\n }\n }\n if (modelData.length == 0 && usageData.length == 0) {\n modelData = [\"gpt-4\", \"gpt-3.5-turbo\", \"gpt-3.5-turbo-0613\"];\n usageData = [0, 0, 0];\n }\n const myChart_show = echarts.init(chart_show.value);\n const option = {\n title: {\n text: `今日${response.data.usage[\"range\"]} ${temName.value}各模型用量`,\n textStyle: {\n // 调整字体大小\n fontSize: 14,\n color: \"#606266\" // 这里是深灰色,你可以根据需要更改颜色\n },\n\n // 设置标题位置\n left: \"center\",\n top: \"bottom\" // 放在底部\n },\n\n tooltip: {},\n legend: {\n data: modelData\n },\n xAxis: {\n data: modelData\n },\n yAxis: {},\n series: [{\n name: \"对话数量\",\n type: \"bar\",\n data: usageData,\n barWidth: \"25%\",\n itemStyle: {\n color: function (params) {\n const colorList = [\"#3498db\", \"#2ecc71\", \"#f1c40f\", \"#9b59b6\", \"#1abc9c\", \"#e67e22\", \"#ecf0f1\", \"#95a5a6\", \"#34495e\", \"#16a085\"];\n return colorList[params.dataIndex % colorList.length];\n }\n }\n }]\n };\n myChart_show.setOption(option);\n }\n };\n const oneApi_name = ref(\"\");\n const token_name = ref(\"\");\n const token_value = ref(\"\");\n const oneApi_baseUrl = ref(\"\");\n const oneApi_models = ref([]);\n const model_mapping = ref(\"\");\n const temOneApi_models = ref(\"\");\n const temOneApi_groups = ref(\"\");\n const oneApi_groups = ref([\"default\", \"svip\", \"vip\"]);\n const shareTime = ref(\"\");\n const showShareToken = row => {\n oneApi_name.value = row.oneApi_name;\n token_name.value = row.token_name;\n token_value.value = row.token_value;\n oneApi_baseUrl.value = row.oneApi_baseUrl;\n temOneApi_models.value = row.oneApi_models;\n model_mapping.value = row.model_mapping;\n temOneApi_groups.value = row.oneApi_groups;\n priority.value = row.priority;\n shareTime.value = row.shareTime;\n show_15.value = true;\n };\n let previousSetpoolToken = false;\n let previousUseRefreshToken = false;\n let previousToken = \"\";\n //编辑准备\n const handleEdit = (index, row) => {\n temName.value = row.name;\n temUsername.value = row.username;\n temUserPassword.value = row.userPassword;\n //用来判断token是否更改\n temToken.value = row.token;\n temRequireToken = row.token;\n temShared.value = row.shared;\n temShow_user_info.value = row.show_user_info;\n temPlus.value = row.plus;\n temPassword.value = row.password;\n setPoolToken.value = row.setPoolToken;\n useRefreshToken.value = row.useRefreshToken;\n previousSetpoolToken = setPoolToken.value;\n previousUseRefreshToken = useRefreshToken.value;\n previousToken = temToken.value;\n temCheckSession.value = row.checkSession;\n temAccessToken.value = row.access_token;\n temShareToken.value = row.share_token;\n show.value = true;\n };\n /**\r\n * 修改系统设置函数\r\n */\n const onRequireSetting = async value => {\n if (value == 0) {\n show_3.value = true;\n } else if (value == 1) {\n show_4.value = true;\n } else if (value == 2) {\n show_5.value = true;\n }\n };\n const RequireSetting = value => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n if (whitelist.value == null || whitelist.value == \"null\") {\n whitelist.value = \"\";\n }\n if (enabled.value == false) {\n cert_file.value = \"\";\n key_file.value = \"\";\n }\n const tls = {\n enabled: enabled.value,\n cert_file: cert_file.value,\n key_file: key_file.value\n };\n const validation = {\n provider: provider.value,\n site_key: site_key.value,\n site_secret: site_secret.value,\n site_login: site_login.value,\n setup_login: setup_login.value,\n oai_username: oai_username.value,\n oai_password: oai_password.value\n };\n const setting = {\n proxy_api_prefix: proxy_api_prefix.value,\n isolated_conv_title: isolated_conv_title.value,\n bing: bing.value,\n timeout: timeout.value,\n proxy_url: proxy_url.value,\n public_share: public_share.value,\n site_password: site_password.value,\n setup_password: setup_password.value,\n loginUsername: loginUsername.value,\n loginPassword: loginPassword.value,\n license_id: license_id.value,\n //0.4.9.2\n disable_signup: disable_signup.value,\n auto_conv_arkose: auto_conv_arkose.value,\n proxy_file_service: proxy_file_service.value,\n custom_doh_host: custom_doh_host.value,\n //0.4.8.2\n isGetToken: isGetToken.value,\n getTokenPassword: getTokenPassword.value,\n containerName: containerName.value,\n autoToken_url: autoToken_url.value,\n whitelist: whitelist.value,\n validation: validation,\n tls: tls\n };\n fetch(`https://yubb.fun${prefix}/api/requireSetting`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(setting)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n } else {\n ElMessage.error(data.msg);\n }\n fetchLoginToken();\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求requireSetting接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n if (value == 0) {\n show_3.value = false;\n } else if (value == 1) {\n show_4.value = false;\n } else if (value == 2) {\n show_5.value = false;\n }\n };\n const RequireAutoUpdate = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n // 检查最后一个字符是否是 /\n if (pandoraNext_outUrl.value.charAt(pandoraNext_outUrl.value.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n pandoraNext_outUrl.value += \"/\";\n }\n const setting = {\n auto_updateSession: auto_updateSession.value,\n auto_updateTime: auto_updateTime.value,\n auto_updateNumber: auto_updateNumber.value,\n pandoraNext_outUrl: pandoraNext_outUrl.value,\n oneAPi_outUrl: oneAPi_outUrl.value,\n oneAPi_intoToken: oneAPi_intoToken.value\n };\n fetch(`https://yubb.fun${prefix}/api/controllerTask`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(setting)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n } else {\n ElMessage.error(data.msg);\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求controllerTask接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n show_8.value = false;\n };\n /**\r\n * 修改token函数\r\n * 类user\r\n */\n const RequireToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let formattedTime = \"\";\n if (temRequireToken != temToken.value) {\n const now = new Date();\n formattedTime = `${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, \"0\")}-${now.getDate().toString().padStart(2, \"0\")} ${now.getHours().toString().padStart(2, \"0\")}:${now.getMinutes().toString().padStart(2, \"0\")}:${now.getSeconds().toString().padStart(2, \"0\")}`;\n }\n if (setPoolToken.value == false) {\n temShared.value = false;\n temPlus.value = false;\n temShow_user_info.value = false;\n useRefreshToken.value = false;\n }\n if (temShared.value === true) {\n temPassword.value = \"\";\n } else {\n temPlus.value = false;\n temShow_user_info.value = false;\n }\n let msg = \"\";\n if (previousSetpoolToken != setPoolToken.value && previousToken == temToken.value) {\n if (setPoolToken.value == false) {\n msg = \"您确定要关闭API模型开启web模式,您将无法生成任何的token,但不消耗额度!\";\n } else {\n if (useRefreshToken.value == true) {\n msg = \"您确定要开启API模式,并使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!\";\n } else {\n msg = \"您确定要开启API模式,并使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!\";\n }\n }\n } else if (previousUseRefreshToken != useRefreshToken.value && previousToken == temToken.value) {\n if (useRefreshToken.value == true) {\n msg = \"您确定要切换使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!\";\n } else {\n msg = \"您确定要切换使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!\";\n }\n } else {\n msg = \"修改将要提交,您确定修改好了吗?\";\n }\n ElMessageBox.confirm(msg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const api = {\n name: temName.value,\n token: temToken.value,\n username: temUsername.value,\n userPassword: temUserPassword.value,\n shared: temShared.value,\n auto_shared: temShared.value,\n show_user_info: temShow_user_info.value,\n plus: temPlus.value,\n setPoolToken: setPoolToken.value,\n useRefreshToken: useRefreshToken.value,\n checkSession: temCheckSession.value,\n password: temPassword.value,\n access_token: temAccessToken.value,\n share_token: temShareToken.value\n };\n fetch(`https://yubb.fun${prefix}/api/requiredToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(api)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n getToken(\"\");\n } else {\n ElMessage.error(data.msg);\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求requireToken接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n show.value = false;\n }).catch(() => {\n loadingInstance.close();\n ElMessage({\n type: \"info\",\n message: \"编辑取消!\"\n });\n return;\n });\n };\n /**\r\n * 开启pandora函数\r\n */\n const openPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/open`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 暂停pandora函数\r\n */\n const closePandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/close`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 重启pandora函数\r\n */\n const AgainPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/restart`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 重载pandora函数\r\n */\n const reloadPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/reload`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 查询pandoraNext余额函数\r\n */\n const pandoraIp = ref(\"\");\n const pandoraTime = ref(\"\");\n const getPandoraNext = async () => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/getPandoraNext`, {\n headers\n });\n const data = response.data.data;\n if (data != null) {\n pandoraUsage.value = data.current + \"/\" + data.total;\n pandoraIp.value = data.ip;\n var currentTime = new Date();\n const futureTime = new Date(currentTime.getTime() + data.ttl * 1000);\n var year = futureTime.getFullYear();\n var month = futureTime.getMonth() + 1; // 月份是从0开始的,所以要加1\n var day = futureTime.getDate();\n var hours = futureTime.getHours();\n var minutes = futureTime.getMinutes();\n var seconds = futureTime.getSeconds();\n pandoraTime.value = year + \"-\" + month + \"-\" + day + \" \" + hours + \":\" + minutes + \":\" + seconds;\n }\n show_7.value = true;\n };\n /**\r\n * 一键全生成\r\n */\n const updateAllShareToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/updateAllToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n await Promise.all([getToken(\"\"), getPool(\"\")]);\n ElMessageBox.alert(data, \"温馨提示\", {\n dangerouslyUseHTMLString: true\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 一键全刷新pool_token\r\n */\n const updateAllPoolToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/updateAllPoolToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n getPool(\"\");\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 一键全检查pool_token\r\n */\n const verifyAllPoolToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/verifyAllPoolToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n getPool(\"\");\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 刷新Token函数\r\n */\n const reNew = row => {\n if (row.setPoolToken == false) {\n ElMessage.error(\"未开启API模式,无法刷新\");\n return;\n }\n let reNewMsg = \"您确定要刷新session_token吗,刷新session_token消耗100额度,请您要仔细认真考虑哦!\";\n if (row.useRefreshToken) {\n reNewMsg = \"您确定要刷新refresh_token吗,刷新refresh_token消耗1000额度,请您要仔细认真考虑哦!\";\n }\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/updateSessionToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n row.token = data.data;\n getToken(\"\");\n ElMessageBox.alert(\"刷新成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n };\n /**\r\n * 刷新Token函数\r\n */\n const reNewPool = row => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/refreshSimplyPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(\"刷新成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n const reviewShare = row => {\n oneApi_name.value = row.oneApi_name;\n token_name.value = row.token_name;\n token_value.value = row.token_value;\n oneApi_baseUrl.value = row.oneApi_baseUrl;\n oneApi_models.value = row.oneApi_models.split(\",\");\n model_mapping.value = row.model_mapping;\n oneApi_groups.value = row.oneApi_groups.split(\",\");\n priority.value = row.priority;\n shareTime.value = row.shareTime;\n show_16.value = true;\n };\n const requireShareToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const requireShare = {\n oneApi_name: oneApi_name.value,\n token_name: token_name.value,\n token_value: token_value.value,\n oneApi_baseUrl: oneApi_baseUrl.value,\n oneApi_models: oneApi_models.value.toString(),\n model_mapping: model_mapping.value,\n oneApi_groups: oneApi_groups.value.toString(),\n priority: priority.value\n };\n fetch(`https://yubb.fun${prefix}/api/requireShareToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(requireShare)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n getShare(\"\");\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n show_16.value = false;\n };\n /**\r\n * 生成token操作\r\n */\n const review = row => {\n if (row.setPoolToken == false) {\n ElMessage.error(\"未开启API模式,无法生成\");\n return;\n }\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/updateToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n ElMessageBox.alert(\"生成shareToken成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n getToken(\"\");\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 更新token操作\r\n */\n const reviewPool = row => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/changePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(\"更换pool_token成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 删除PoolToken函数\r\n * 参数 Pool\r\n */\n const deletePoolToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个Pool_Token吗,删除之后就找不到咯,请您要仔细认真考虑哦!\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n fetch(`https://yubb.fun${prefix}/api/deletePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data.data != null) {\n getPool(\"\");\n ElMessage.success(data.data);\n loadingInstance.close();\n } else {\n getPool(\"\");\n ElMessage.error(data.msg);\n loadingInstance.close();\n }\n show_9.value = false;\n }).catch(error => {\n // 处理完成失败的逻辑\n console.error(\"删除失败\", error);\n getPool(\"\");\n loadingInstance.close();\n show_9.value = false;\n });\n }).catch(() => {\n loadingInstance.close();\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n });\n };\n /**\r\n * 删除PoolToken函数\r\n * 参数 Pool\r\n */\n const verifySimplyPoolToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/verifySimplyPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n getPool(\"\");\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 删除Token函数\r\n * 参数 user\r\n */\n const deleteToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个Token吗,删除之后就找不到咯,记得点击全部刷新poolToken\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`https://yubb.fun${prefix}/api/deleteToken`, row, {\n headers\n }).then(async response => {\n if (row.setPoolToken == true) {\n await axios.get(`https://yubb.fun${prefix}/api/updateAllPoolToken`, {\n headers\n });\n }\n msg = response.data.data;\n getToken(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n };\n /**\r\n * 删除Token函数\r\n * 参数 user\r\n */\n const deleteShareToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个share_Token吗,删除之后就找不到咯\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`https://yubb.fun${prefix}/api/deleteShareToken`, row, {\n headers\n }).then(async response => {\n msg = response.data.data;\n getShare(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n };\n /**\r\n * 获取token的过期时间\r\n */\n const formatDate = value => {\n if (!value) return \"\";\n var nowDay = new Date();\n const timeDay = parseISO(value.updateTime);\n const daysDiff = differenceInDays(nowDay, timeDay);\n if (value.token.length >= 2000) {\n return daysDiff >= 80 ? \"已经过去了至少80天\" : Math.ceil(80 - daysDiff) + \"天\";\n } else if (value.token.length < 200 && !value.token.includes(\"fk-\")) {\n return \"永久\";\n } else {\n return daysDiff >= 10 ? \"已经过去了至少10天\" : Math.ceil(10 - daysDiff) + \"天\";\n }\n };\n /**\r\n * 更改Token显示操作\r\n */\n const dataToken = value => {\n return value.substring(0, 30) + \"...\";\n };\n /**\r\n * 退出登录操作\r\n */\n const logout = () => {\n // 删除本地存储的 token\n localStorage.removeItem(\"jwtToken\");\n // 使用 Vue Router 进行页面跳转到登录页面\n router.replace(`/`);\n };\n const getPoolToken = () => {\n show_6.value = true;\n };\n const getShareToken = async () => {\n await getShare(\"\");\n show_13.value = true;\n };\n const getLogin = () => {\n getLoginData();\n show_10.value = true;\n };\n const redirectToGitHub = () => {\n window.open(\"https://github.com/Yanyutin753/PandoraNext-TokensTool\");\n };\n const copyToken = value => {\n const textarea = document.createElement(\"textarea\");\n // 设置 textarea 的值为要复制的文本\n textarea.value = value;\n // 将 textarea 添加到 DOM 中\n document.body.appendChild(textarea);\n // 选中 textarea 中的文本\n textarea.select();\n // 执行复制操作\n document.execCommand(\"copy\");\n // 从 DOM 中移除 textarea 元素\n document.body.removeChild(textarea);\n ElMessage({\n type: \"success\",\n message: \"复制成功!\"\n });\n };\n const selectChoice = buttonValue => {\n const selectedData = multipleSelection.value;\n const userData = selectedData.map(userData => userData);\n if (selectedData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n }\n if (buttonValue == \"选中删除Token\") {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这\" + selectedData.length + \"个Token吗,删除之后就找不到咯\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`https://yubb.fun${prefix}/api/deleteTokenList`, userData, {\n headers\n }).then(async response => {\n await axios.get(`https://yubb.fun${prefix}/api/updateAllPoolToken`, {\n headers\n });\n msg = response.data.data;\n getToken(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n return;\n } else if (buttonValue == \"选中刷新Token\") {\n let count = 0;\n const selectedData = multipleSelection.value;\n const userData = selectedData.map(userData => userData);\n userData.forEach((item, index) => {\n if (item.setPoolToken) {\n if (item.useRefreshToken) {\n count += 1000;\n } else {\n count += 100;\n }\n }\n });\n const reNewMsg = \"您确定要花\" + count + \"积分刷新这\" + selectedData.length + \"个Token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/updateSessionTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(userData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getToken(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中合成pool_token\") {\n getSelectedData();\n } else if (buttonValue == \"选中修改pool_token\") {\n poolName.value = \"\";\n shareTokens.value = \"\";\n temPool_token.value = \"\";\n poolTime.value = \"\";\n intoOneApi.value = false;\n poolOneApi_models.value = [];\n poolModel_mapping.value = \"\";\n oneApi_pandoraUrl.value = \"\";\n temGroupChecked.value = [];\n priority.value = 0;\n show_11.value = true;\n }\n };\n const showPool = row => {\n temPoolName.value = row.poolName;\n shareTokens.value = row.shareTokens;\n temPool_token.value = row.poolToken;\n poolTime.value = row.poolTime;\n intoOneApi.value = row.intoOneApi;\n poolOneApi_models.value = row.poolOneApi_models.split(\",\");\n poolModel_mapping.value = row.poolModel_mapping;\n oneApi_pandoraUrl.value = row.oneApi_pandoraUrl;\n temGroupChecked.value = row.groupChecked.split(\",\");\n priority.value = row.priority;\n show_17.value = true;\n };\n const selectPoolChoice = buttonValue => {\n const selectedPoolData = multipleSelectionPool.value;\n const temPoolData = selectedPoolData.map(temPoolData => temPoolData);\n if (temPoolData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n }\n if (buttonValue == \"选中检查pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要花\" + count + \"积分检查这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/verifySimplyPoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"检查取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中刷新pool_token\") {\n const reNewMsg = \"您确定要刷新这\" + selectedPoolData.length + \"个pool_token吗?\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/refreshSimplyPoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中更换pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要更换这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/changePoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"更换取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中删除pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要删除这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/deletePoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n });\n return;\n }\n };\n const chart = ref(null);\n const getUsage = async () => {\n show_12.value = true;\n const response = await axios.get(`https://yubb.fun${prefix}/api/modelsUsage`, {\n headers\n });\n let usageData = response.data.data.map(item => item.usage);\n let modelData = response.data.data.map(item => item.model);\n const myChart = echarts.init(chart.value);\n const option = {\n title: {\n text: \"copilot每日对话统计\",\n fontSize: 18,\n color: \"#606266\" // 这里是深灰色,你可以根据需要更改颜色\n },\n\n tooltip: {},\n legend: {\n data: modelData\n },\n xAxis: {\n data: modelData\n },\n yAxis: {},\n series: [{\n name: \"对话数量\",\n type: \"bar\",\n data: usageData,\n barWidth: \"40%\",\n itemStyle: {\n color: function (params) {\n const colorList = [\"#3498db\", \"#2ecc71\", \"#f1c40f\", \"#9b59b6\", \"#1abc9c\", \"#e67e22\", \"#ecf0f1\", \"#95a5a6\", \"#34495e\", \"#16a085\"];\n return colorList[params.dataIndex % colorList.length];\n }\n }\n }]\n };\n myChart.setOption(option);\n };\n return (_ctx, _cache) => {\n const _component_van_icon = _resolveComponent(\"van-icon\");\n const _component_el_menu_item = _resolveComponent(\"el-menu-item\");\n const _component_el_sub_menu = _resolveComponent(\"el-sub-menu\");\n const _component_el_menu = _resolveComponent(\"el-menu\");\n const _component_van_button = _resolveComponent(\"van-button\");\n const _component_el_page_header = _resolveComponent(\"el-page-header\");\n const _component_van_search = _resolveComponent(\"van-search\");\n const _component_el_table_column = _resolveComponent(\"el-table-column\");\n const _component_el_button = _resolveComponent(\"el-button\");\n const _component_el_tag = _resolveComponent(\"el-tag\");\n const _component_el_popover = _resolveComponent(\"el-popover\");\n const _component_el_option = _resolveComponent(\"el-option\");\n const _component_el_select = _resolveComponent(\"el-select\");\n const _component_van_field = _resolveComponent(\"van-field\");\n const _component_van_switch = _resolveComponent(\"van-switch\");\n const _component_van_cell_group = _resolveComponent(\"van-cell-group\");\n const _component_van_form = _resolveComponent(\"van-form\");\n const _component_van_dialog = _resolveComponent(\"van-dialog\");\n const _component_CopyDocument = _resolveComponent(\"CopyDocument\");\n const _component_el_icon = _resolveComponent(\"el-icon\");\n const _component_h10 = _resolveComponent(\"h10\");\n const _component_el_select_group = _resolveComponent(\"el-select-group\");\n const _component_el_dialog = _resolveComponent(\"el-dialog\");\n const _component_el_form_item = _resolveComponent(\"el-form-item\");\n const _component_el_input = _resolveComponent(\"el-input\");\n const _component_van_checkbox = _resolveComponent(\"van-checkbox\");\n const _component_van_checkbox_group = _resolveComponent(\"van-checkbox-group\");\n const _directive_loading = _resolveDirective(\"loading\");\n return _openBlock(), _createElementBlock(_Fragment, null, [_createElementVNode(\"div\", _hoisted_1, [_hoisted_2, _createVNode(_component_el_menu, {\n \"default-active\": activeIndex.value,\n class: \"el-menu-demo\",\n mode: \"horizontal\",\n ellipsis: false,\n onSelect: handleSelect,\n \"active-text-color\": \"#0ea27e\",\n \"text-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"0\"\n }, {\n title: _withCtx(() => [_createElementVNode(\"div\", _hoisted_4, [_createElementVNode(\"h2\", null, _toDisplayString(pandoraUsage.value), 1)]), _createVNode(_component_van_icon, {\n name: \"replay\",\n size: \"20\",\n onClick: getPandoraNext\n })]),\n default: _withCtx(() => [_hoisted_3]),\n _: 1\n }), _hoisted_5, _createVNode(_component_el_sub_menu, {\n index: \"3\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"列表\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"3-3\",\n onClick: updateAllShareToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"全部检查并生成\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-1\",\n onClick: getPoolToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"pool_token列表\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-2\",\n onClick: getShareToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"share_token列表\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-5\",\n onClick: getUsage\n }, {\n default: _withCtx(() => [_createTextVNode(\"copilot每日用量统计\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-4\",\n onClick: getLogin\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool登录日志\")]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"1\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"设置\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"1-1\",\n onClick: _cache[0] || (_cache[0] = $event => onRequireSetting(pandoraNext))\n }, {\n default: _withCtx(() => [_createTextVNode(\"PandoraNext设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"1-2\",\n onClick: _cache[1] || (_cache[1] = $event => onRequireSetting(tokensTool))\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"1-3\",\n onClick: _cache[2] || (_cache[2] = $event => onRequireSetting(validation))\n }, {\n default: _withCtx(() => [_createTextVNode(\"验证码信息设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"1-4\",\n onClick: _cache[3] || (_cache[3] = $event => show_8.value = true)\n }, {\n default: _withCtx(() => [_createTextVNode(\"定时&接口设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"1-5\",\n onClick: requireTokensToolLink\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool使用手册\")]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"2\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"状态\")]),\n default: _withCtx(() => [_createVNode(_component_el_sub_menu, {\n index: \"2-1\"\n }, {\n title: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"状态\", 1)]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"2-1-1\",\n onClick: openPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"开启\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-1-2\",\n onClick: closePandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"暂停\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-1-3\",\n onClick: AgainPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"重启\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-1-4\",\n onClick: reloadPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"重载\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"2-2\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"跳转Web服务\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"2-2-1\",\n onClick: redirectToExternalLink\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"主页\", 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-2-2\",\n onClick: redirectPandoraNextShare\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"共享页\", 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-2-3\",\n onClick: requirePandoraNextLink\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"修改页\", 1)]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"2-3\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"获取token地址\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"2-3-1\"\n }, {\n default: _withCtx(() => [_hoisted_6]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-3-2\"\n }, {\n default: _withCtx(() => [_hoisted_7]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-3-3\"\n }, {\n default: _withCtx(() => [_hoisted_8]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-4\",\n onClick: logout\n }, {\n default: _withCtx(() => [_createTextVNode(\"退出登录\")]),\n _: 1\n })]),\n _: 1\n })]),\n _: 1\n }, 8, [\"default-active\"]), _createElementVNode(\"div\", _hoisted_9, [_createVNode(_component_el_page_header, {\n icon: null,\n title: \" \"\n }, {\n content: _withCtx(() => [_hoisted_10]),\n extra: _withCtx(() => [_createElementVNode(\"div\", {\n class: \"addToken\",\n onClick: addToken\n }, [_createVNode(_component_van_button, {\n square: \"\",\n icon: \"add-o\",\n color: \"#0ea27e\",\n class: \"addTokenButton\"\n })])]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_11, [_createElementVNode(\"div\", _hoisted_12, [_createElementVNode(\"div\", _hoisted_13, [_createVNode(_component_van_search, {\n modelValue: value.value,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => value.value = $event),\n shape: \"round\",\n clearable: \"\",\n placeholder: \"请输入搜索token名称或类型\",\n onSearch: onSearch\n }, null, 8, [\"modelValue\"])]), _createElementVNode(\"div\", _hoisted_14, [_withDirectives((_openBlock(), _createBlock(_unref(ElTable), {\n data: tableData.value,\n style: {\n \"width\": \"100%\"\n },\n onSelectionChange: handleSelectionChange,\n class: \"tokenTable\",\n \"default-sort\": {\n prop: 'updateTime',\n prop: 'setPoolToken'\n },\n \"row-class-name\": tableRowClassName\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n type: \"selection\",\n width: \"45\"\n }), _createVNode(_component_el_table_column, {\n label: \"名称\",\n width: \"160\",\n prop: \"setPoolToken\",\n sortable: \"\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_15, [_createElementVNode(\"div\", null, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"h5\", null, _toDisplayString(scope.row.setPoolToken ? scope.row.useRefreshToken ? \"refAPI\" : \"sesAPI\" : \"Web\"), 1)]),\n _: 2\n }, 1024)]), _createElementVNode(\"span\", _hoisted_16, _toDisplayString(scope.row.name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n prop: \"updateTime\",\n sortable: \"\",\n label: \"有效时间\",\n width: \"117\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", null, \"注册时间:\" + _toDisplayString(scope.row.updateTime), 1)]),\n reference: _withCtx(() => [_createElementVNode(\"span\", _hoisted_17, [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(formatDate(scope.row)), 1)]),\n _: 2\n }, 1024)])]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n width: \"370\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => handleEdit(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"编辑\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => showData(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deleteToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"success\",\n onClick: $event => reNew(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"刷新\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"warning\",\n onClick: $event => review(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"生成\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"])), [[_directive_loading, _ctx.loading]])]), _createElementVNode(\"div\", _hoisted_18, [_createVNode(_component_el_select, {\n modelValue: buttonValue.value,\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = $event => buttonValue.value = $event),\n clearable: \"\",\n filterable: \"\",\n placeholder: \"请选择批量操作\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(options, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonValue,\n label: item.label,\n value: item.buttonValue\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_button, {\n class: \"my-button\",\n onClick: _cache[6] || (_cache[6] = $event => selectChoice(buttonValue.value))\n }, {\n default: _withCtx(() => [_hoisted_19]),\n _: 1\n })])])]), _hoisted_20]), _createVNode(_component_van_dialog, {\n show: show.value,\n \"onUpdate:show\": _cache[17] || (_cache[17] = $event => show.value = $event),\n title: \"📌修改token信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_21, [_createVNode(_component_van_form, {\n onSubmit: _cache[16] || (_cache[16] = $event => RequireToken())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_22, _createVNode(_component_van_field, {\n modelValue: temUsername.value,\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = $event => temUsername.value = $event),\n name: \"OpenAi邮箱\",\n label: \"OpenAi邮箱\",\n \"input-align\": \"center\",\n placeholder: \"OpenAi邮箱\",\n rules: [{\n required: true,\n message: '请填写OpenAi邮箱'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_23, _createVNode(_component_van_field, {\n modelValue: temUserPassword.value,\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = $event => temUserPassword.value = $event),\n name: \"OpenAi密码\",\n \"input-align\": \"center\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n rules: [{\n required: true,\n message: '请填写OpenAi密码'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_24, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: setPoolToken.value,\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = $event => setPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_25, [_hoisted_26, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refreshToken\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: useRefreshToken.value,\n \"onUpdate:modelValue\": _cache[10] || (_cache[10] = $event => useRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_27, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temShared.value,\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = $event => temShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), temShared.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_28, [_hoisted_29, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temShow_user_info.value,\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = $event => temShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_30, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temPlus.value,\n \"onUpdate:modelValue\": _cache[13] || (_cache[13] = $event => temPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true)])) : _createCommentVNode(\"\", true), temShared.value == false || setPoolToken.value == false ? (_openBlock(), _createElementBlock(\"div\", _hoisted_31, [_hoisted_32, _createVNode(_component_van_field, {\n rows: \"2\",\n type: \"textarea\",\n autoSize: \"\",\n modelValue: temPassword.value,\n \"onUpdate:modelValue\": _cache[14] || (_cache[14] = $event => temPassword.value = $event),\n name: \"Token的密码\",\n \"input-align\": \"center\",\n label: \"Token的密码\",\n placeholder: \"填了将不会分享给他人(如不填则输入Token名即可进入)\",\n rules: [{\n validator: addPasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), _hoisted_33, _createVNode(_component_van_field, {\n modelValue: temToken.value,\n \"onUpdate:modelValue\": _cache[15] || (_cache[15] = $event => temToken.value = $event),\n label: \"Token的值\",\n type: \"textarea\",\n \"input-align\": \"center\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的Token(选填),session或refresh_token\",\n autosize: {\n maxHeight: 100,\n minHeight: 50\n },\n \"show-word-limit\": \"\"\n }, null, 8, [\"modelValue\"]), _hoisted_34]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_35, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_36]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_1.value,\n \"onUpdate:show\": _cache[29] || (_cache[29] = $event => show_1.value = $event),\n title: \"✨添加token信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"addTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_37, [_createVNode(_component_van_form, {\n onSubmit: _cache[28] || (_cache[28] = $event => onAddToken())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_38, _createVNode(_component_van_field, {\n modelValue: addName.value,\n \"onUpdate:modelValue\": _cache[18] || (_cache[18] = $event => addName.value = $event),\n name: \"Token用户名\",\n label: \"Token用户名\",\n placeholder: \"Token用户名\",\n rules: [{\n required: true,\n message: '请填写Token用户名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_39, _createVNode(_component_van_field, {\n modelValue: addUsername.value,\n \"onUpdate:modelValue\": _cache[19] || (_cache[19] = $event => addUsername.value = $event),\n name: \"OpenAi用户名\",\n label: \"OpenAi用户名\",\n placeholder: \"OpenAi用户名\",\n rules: [{\n required: true,\n message: '请填写OpenAi用户名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_40, _createVNode(_component_van_field, {\n modelValue: addUserPassword.value,\n \"onUpdate:modelValue\": _cache[20] || (_cache[20] = $event => addUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n rules: [{\n required: true,\n message: '请填写OpenAi密码'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_41, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addSetPoolToken.value,\n \"onUpdate:modelValue\": _cache[21] || (_cache[21] = $event => addSetPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_42, [_hoisted_43, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refreshToken\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addUseRefreshToken.value,\n \"onUpdate:modelValue\": _cache[22] || (_cache[22] = $event => addUseRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_44, [_hoisted_45, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addShared.value,\n \"onUpdate:modelValue\": _cache[23] || (_cache[23] = $event => addShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), addShared.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_46, [_hoisted_47, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addShow_user_info.value,\n \"onUpdate:modelValue\": _cache[24] || (_cache[24] = $event => addShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_48, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addPlus.value,\n \"onUpdate:modelValue\": _cache[25] || (_cache[25] = $event => addPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true)])) : _createCommentVNode(\"\", true), addShared.value == '' ? (_openBlock(), _createElementBlock(\"div\", _hoisted_49, [_hoisted_50, _createVNode(_component_van_field, {\n rows: \"3\",\n type: \"textarea\",\n autoSize: \"\",\n modelValue: addPassword.value,\n \"onUpdate:modelValue\": _cache[26] || (_cache[26] = $event => addPassword.value = $event),\n name: \"Token的密码\",\n label: \"Token的密码\",\n \"input-align\": \"center\",\n placeholder: \"填了将不会分享给他人(如不填则输入Token名即可进入)\",\n rules: [{\n validator: addPasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_51, [_hoisted_52, _createVNode(_component_van_field, {\n rows: \"3\",\n type: \"textarea\",\n maxlength: \"5000\",\n \"show-word-limit\": \"\",\n modelValue: addTokenValue.value,\n \"onUpdate:modelValue\": _cache[27] || (_cache[27] = $event => addTokenValue.value = $event),\n name: \"Token的值\",\n label: \"Token的值\",\n placeholder: \"选填(可不填,不填则使用账号密码),目前只支持session_token或refresh_token\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_53]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_54, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_55]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_2.value,\n \"onUpdate:show\": _cache[49] || (_cache[49] = $event => show_2.value = $event),\n title: \"🔎token信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"showDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_56, [_createVNode(_component_van_form, null, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_57, _createVNode(_component_van_field, {\n modelValue: temName.value,\n \"onUpdate:modelValue\": _cache[30] || (_cache[30] = $event => temName.value = $event),\n name: \"Token用户名\",\n label: \"Token用户名\",\n placeholder: \"Token用户名\",\n \"left-icon\": \"description-o\",\n \"input-align\": \"center\",\n readonly: true,\n onClickLeftIcon: _cache[31] || (_cache[31] = $event => copyToken(temName.value))\n }, null, 8, [\"modelValue\"]), _hoisted_58, _createVNode(_component_van_field, {\n modelValue: temPassword.value,\n \"onUpdate:modelValue\": _cache[32] || (_cache[32] = $event => temPassword.value = $event),\n type: \"temPassword\",\n name: \"Token的密码\",\n label: \"Token的密码\",\n placeholder: \"Token的密码\",\n \"input-align\": \"center\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[33] || (_cache[33] = $event => copyToken(temPassword.value))\n }, null, 8, [\"modelValue\"]), _hoisted_59, _createVNode(_component_van_field, {\n modelValue: temUsername.value,\n \"onUpdate:modelValue\": _cache[34] || (_cache[34] = $event => temUsername.value = $event),\n name: \"OpenAi邮箱\",\n label: \"OpenAi邮箱\",\n placeholder: \"OpenAi邮箱\",\n \"left-icon\": \"description-o\",\n \"input-align\": \"center\",\n readonly: true,\n onClickLeftIcon: _cache[35] || (_cache[35] = $event => copyToken(temUsername.value))\n }, null, 8, [\"modelValue\"]), _hoisted_60, _createVNode(_component_van_field, {\n modelValue: temUserPassword.value,\n \"onUpdate:modelValue\": _cache[36] || (_cache[36] = $event => temUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n \"left-icon\": \"description-o\",\n \"input-align\": \"center\",\n readonly: true,\n onClickLeftIcon: _cache[37] || (_cache[37] = $event => copyToken(temUserPassword.value))\n }, null, 8, [\"modelValue\"]), _hoisted_61, _createVNode(_component_van_field, {\n name: \"temShared\",\n readonly: true,\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temShared.value,\n \"onUpdate:modelValue\": _cache[38] || (_cache[38] = $event => temShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_62, _createVNode(_component_van_field, {\n readonly: true,\n name: \"temShow_user_info\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temShow_user_info.value,\n \"onUpdate:modelValue\": _cache[39] || (_cache[39] = $event => temShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_63, _createVNode(_component_van_field, {\n readonly: true,\n name: \"temPlus\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temPlus.value,\n \"onUpdate:modelValue\": _cache[40] || (_cache[40] = $event => temPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_64, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: setPoolToken.value,\n \"onUpdate:modelValue\": _cache[41] || (_cache[41] = $event => setPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_65, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refresh_token\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: useRefreshToken.value,\n \"onUpdate:modelValue\": _cache[42] || (_cache[42] = $event => useRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_66, _createVNode(_component_van_field, {\n modelValue: temToken.value,\n \"onUpdate:modelValue\": _cache[43] || (_cache[43] = $event => temToken.value = $event),\n label: \"Token的值\",\n type: \"textarea\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的Token(session或refresh_token)\",\n \"show-word-limit\": \"\",\n \"input-align\": \"center\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[44] || (_cache[44] = $event => copyToken(temToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 50\n }\n }, null, 8, [\"modelValue\"]), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_67, [_hoisted_68, _createVNode(_component_van_field, {\n modelValue: temAccessToken.value,\n \"onUpdate:modelValue\": _cache[45] || (_cache[45] = $event => temAccessToken.value = $event),\n label: \"access_token\",\n type: \"textarea\",\n maxlength: \"5000\",\n \"input-align\": \"center\",\n placeholder: \"请填写OpenAi的access_token\",\n \"show-word-limit\": \"\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[46] || (_cache[46] = $event => copyToken(temAccessToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 50\n }\n }, null, 8, [\"modelValue\"]), _hoisted_69, _createVNode(_component_van_field, {\n modelValue: temShareToken.value,\n \"onUpdate:modelValue\": _cache[47] || (_cache[47] = $event => temShareToken.value = $event),\n label: \"share_token\",\n type: \"textarea\",\n maxlength: \"200\",\n \"input-align\": \"center\",\n placeholder: \"请填写OpenAi的share_token\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[48] || (_cache[48] = $event => copyToken(temShareToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 50\n }\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true)]),\n _: 1\n })]),\n _: 1\n }), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_70, [_createElementVNode(\"div\", {\n ref_key: \"chart_show\",\n ref: chart_show,\n style: {\n \"width\": \"auto\",\n \"height\": \"300px\"\n }\n }, null, 512), _hoisted_71])) : _createCommentVNode(\"\", true)])]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_3.value,\n \"onUpdate:show\": _cache[64] || (_cache[64] = $event => show_3.value = $event),\n title: \"PandoraNext设置信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_72, [_createVNode(_component_van_form, {\n onSubmit: _cache[63] || (_cache[63] = $event => RequireSetting(pandoraNext))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_73, _createVNode(_component_van_field, {\n modelValue: isolated_conv_title.value,\n \"onUpdate:modelValue\": _cache[50] || (_cache[50] = $event => isolated_conv_title.value = $event),\n name: \"对话标题\",\n label: \"对话标题\",\n placeholder: \"隔离对话设置标题\"\n }, null, 8, [\"modelValue\"]), _hoisted_74, _createVNode(_component_van_field, {\n modelValue: bing.value,\n \"onUpdate:modelValue\": _cache[51] || (_cache[51] = $event => bing.value = $event),\n name: \"绑定IP和端口\",\n label: \"绑定IP和端口\",\n placeholder: \"绑定IP和端口(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_75, _createVNode(_component_van_field, {\n modelValue: custom_doh_host.value,\n \"onUpdate:modelValue\": _cache[52] || (_cache[52] = $event => custom_doh_host.value = $event),\n name: \"DoH主机名\",\n label: \"DoH主机名\",\n placeholder: \"配置自定义的DoH主机名(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_76, _createVNode(_component_van_field, {\n modelValue: timeout.value,\n \"onUpdate:modelValue\": _cache[53] || (_cache[53] = $event => timeout.value = $event),\n name: \"请求超时时间\",\n label: \"请求超时时间\",\n placeholder: \"请求超时时间(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_77, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享对话(选填)\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: public_share.value,\n \"onUpdate:modelValue\": _cache[54] || (_cache[54] = $event => public_share.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_78, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否配置证书\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: enabled.value,\n \"onUpdate:modelValue\": _cache[55] || (_cache[55] = $event => enabled.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), enabled.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_79, [_hoisted_80, _createVNode(_component_van_field, {\n modelValue: cert_file.value,\n \"onUpdate:modelValue\": _cache[56] || (_cache[56] = $event => cert_file.value = $event),\n name: \"证书文件\",\n label: \"证书文件\",\n placeholder: \"证书文件\"\n }, null, 8, [\"modelValue\"]), _hoisted_81, _createVNode(_component_van_field, {\n modelValue: key_file.value,\n \"onUpdate:modelValue\": _cache[57] || (_cache[57] = $event => key_file.value = $event),\n name: \"密钥文件\",\n label: \"密钥文件\",\n placeholder: \"密钥文件\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_82, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否禁用注册\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: disable_signup.value,\n \"onUpdate:modelValue\": _cache[58] || (_cache[58] = $event => disable_signup.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_83, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否自动打码\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: auto_conv_arkose.value,\n \"onUpdate:modelValue\": _cache[59] || (_cache[59] = $event => auto_conv_arkose.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_84, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"使用文件代理服务\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: proxy_file_service.value,\n \"onUpdate:modelValue\": _cache[60] || (_cache[60] = $event => proxy_file_service.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_85, _createVNode(_component_van_field, {\n modelValue: proxy_url.value,\n \"onUpdate:modelValue\": _cache[61] || (_cache[61] = $event => proxy_url.value = $event),\n name: \"代理服务URL\",\n label: \"代理服务URL\",\n placeholder: \"代理服务URL(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_86, _createVNode(_component_van_field, {\n modelValue: whitelist.value,\n \"onUpdate:modelValue\": _cache[62] || (_cache[62] = $event => whitelist.value = $event),\n name: \"白名单\",\n label: \"白名单\",\n placeholder: \"[]限制所有账号(默认为null)\"\n }, null, 8, [\"modelValue\"]), _hoisted_87]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_88, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_89]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_4.value,\n \"onUpdate:show\": _cache[76] || (_cache[76] = $event => show_4.value = $event),\n title: \"tokensTool设置信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_90, [_createVNode(_component_van_form, {\n onSubmit: _cache[75] || (_cache[75] = $event => RequireSetting(tokensTool))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_91, _createVNode(_component_van_field, {\n modelValue: loginUsername.value,\n \"onUpdate:modelValue\": _cache[65] || (_cache[65] = $event => loginUsername.value = $event),\n name: \"登录用户名\",\n label: \"登录用户名\",\n placeholder: \"tokensTool用户名\"\n }, null, 8, [\"modelValue\"]), _hoisted_92, _createVNode(_component_van_field, {\n modelValue: loginPassword.value,\n \"onUpdate:modelValue\": _cache[66] || (_cache[66] = $event => loginPassword.value = $event),\n name: \"登录密码\",\n label: \"登录密码\",\n placeholder: \"不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_93, _createVNode(_component_van_field, {\n modelValue: proxy_api_prefix.value,\n \"onUpdate:modelValue\": _cache[67] || (_cache[67] = $event => proxy_api_prefix.value = $event),\n name: \"proxy接口前缀\",\n label: \"proxy接口前缀\",\n placeholder: \"proxy模式接口后缀,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_94, _createVNode(_component_van_field, {\n modelValue: autoToken_url.value,\n \"onUpdate:modelValue\": _cache[68] || (_cache[68] = $event => autoToken_url.value = $event),\n name: \"proxy模式URL\",\n label: \"proxy模式URL\",\n placeholder: \"http(s)://(ip:port或者域名)/后缀,同公网服务器填default\"\n }, null, 8, [\"modelValue\"]), _hoisted_95, _createVNode(_component_van_field, {\n modelValue: setup_password.value,\n \"onUpdate:modelValue\": _cache[69] || (_cache[69] = $event => setup_password.value = $event),\n name: \"重载服务密码\",\n label: \"重载服务密码\",\n placeholder: \"PandoraNext重载服务密码,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_96, _createVNode(_component_van_field, {\n modelValue: site_password.value,\n \"onUpdate:modelValue\": _cache[70] || (_cache[70] = $event => site_password.value = $event),\n name: \"访问密码\",\n label: \"访问密码\",\n placeholder: \"PandoraNext访问密码,建议开启访问密码\",\n rules: [{\n validator: sitePasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_97, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: license_id.value,\n \"onUpdate:modelValue\": _cache[71] || (_cache[71] = $event => license_id.value = $event),\n name: \"验证licenseId\",\n label: \"验证licenseId\",\n placeholder: \"验证licenseId(github上拿到的license_id)\"\n }, null, 8, [\"modelValue\"]), _hoisted_98, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"tokensTool接口\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: isGetToken.value,\n \"onUpdate:modelValue\": _cache[72] || (_cache[72] = $event => isGetToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), isGetToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_99, [_hoisted_100, _createVNode(_component_van_field, {\n modelValue: getTokenPassword.value,\n \"onUpdate:modelValue\": _cache[73] || (_cache[73] = $event => getTokenPassword.value = $event),\n name: \"接口密码\",\n label: \"接口密码\",\n placeholder: \"tokensTool接口密码,用于获取tokens,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), _hoisted_101, _createVNode(_component_van_field, {\n modelValue: containerName.value,\n \"onUpdate:modelValue\": _cache[74] || (_cache[74] = $event => containerName.value = $event),\n name: \"监管容器名\",\n label: \"监管容器名\",\n placeholder: \"监管运行的容器名或文件名,默认为PandoraNext\",\n rules: [{\n required: true,\n message: '请填写监管的容器名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_102]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_103, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_104]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_5.value,\n \"onUpdate:show\": _cache[85] || (_cache[85] = $event => show_5.value = $event),\n title: \"PandoraNext验证信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_105, [_createVNode(_component_van_form, {\n onSubmit: _cache[84] || (_cache[84] = $event => RequireSetting(validation))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_106, _createVNode(_component_van_field, {\n modelValue: provider.value,\n \"onUpdate:modelValue\": _cache[77] || (_cache[77] = $event => provider.value = $event),\n name: \"验证码提供商\",\n label: \"验证码提供商\",\n placeholder: \"验证码提供商\"\n }, null, 8, [\"modelValue\"]), _hoisted_107, _createVNode(_component_van_field, {\n modelValue: site_key.value,\n \"onUpdate:modelValue\": _cache[78] || (_cache[78] = $event => site_key.value = $event),\n name: \"验证码网站参数\",\n label: \"验证码网站参数\",\n placeholder: \"验证码网站参数\"\n }, null, 8, [\"modelValue\"]), _hoisted_108, _createVNode(_component_van_field, {\n modelValue: site_secret.value,\n \"onUpdate:modelValue\": _cache[79] || (_cache[79] = $event => site_secret.value = $event),\n name: \"验证码API Key\",\n label: \"验证码API Key\",\n placeholder: \"验证码API Key\"\n }, null, 8, [\"modelValue\"]), _hoisted_109, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否全站密码登录页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: site_login.value,\n \"onUpdate:modelValue\": _cache[80] || (_cache[80] = $event => site_login.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_110, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在设置登录页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: setup_login.value,\n \"onUpdate:modelValue\": _cache[81] || (_cache[81] = $event => setup_login.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_111, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在输入用户名页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: oai_username.value,\n \"onUpdate:modelValue\": _cache[82] || (_cache[82] = $event => oai_username.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_112, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在输入密码页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: oai_password.value,\n \"onUpdate:modelValue\": _cache[83] || (_cache[83] = $event => oai_password.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_113]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_114, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_115]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_el_dialog, {\n modelValue: show_6.value,\n \"onUpdate:modelValue\": _cache[89] || (_cache[89] = $event => show_6.value = $event),\n title: \"pool_token列表\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_116, [_createVNode(_component_el_icon, {\n onClick: _cache[86] || (_cache[86] = $event => copyToken(pandoraNext_outUrl.value + proxy_api_prefix.value + '/v1/chat/completions'))\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 1\n }), _createVNode(_component_h10, {\n style: {\n \"white-space\": \"nowrap\",\n \"overflow\": \"hidden\",\n \"text-overflow\": \"ellipsis\"\n }\n }, {\n default: _withCtx(() => [_createTextVNode(\" API地址:\" + _toDisplayString(pandoraNext_outUrl.value) + _toDisplayString(proxy_api_prefix.value) + \"/v1/chat/completions \", 1)]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_117, [_createVNode(_unref(ElTable), {\n \"row-class-name\": poolRowClassName,\n data: poolData.value,\n onSelectionChange: poolSelectionChange,\n ref_key: \"multipleTableRefPool\",\n ref: multipleTableRefPool\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n type: \"selection\",\n width: \"45\"\n }), _createVNode(_component_el_table_column, {\n prop: \"intoOneApi\",\n label: \"pool_token名称\",\n sortable: \"\",\n \"min-width\": \"170\",\n \"default-sort\": {\n prop: 'poolTime',\n prop: 'intoOneApi'\n }\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_118, [scope.row.intoOneApi == true && scope.row.poolOneApi_models.includes('gpt-4') ? (_openBlock(), _createElementBlock(\"div\", _hoisted_119, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_120]),\n _: 1\n })])) : scope.row.intoOneApi == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_121, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_122]),\n _: 1\n })])) : (_openBlock(), _createElementBlock(\"div\", _hoisted_123, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_124]),\n _: 1\n })])), _createElementVNode(\"span\", _hoisted_125, _toDisplayString(scope.row.poolName), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"pool_token值\",\n \"min-width\": \"235\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_126, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.poolToken)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_127, _toDisplayString(scope.row.poolToken), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"使用token名集合\",\n \"min-width\": \"165\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(scope.row.shareTokens), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_hoisted_128]),\n _: 1\n })]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"poolTime\",\n label: \"更新时间\",\n prop: \"poolTime\",\n sortable: \"\",\n \"min-width\": \"180\"\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n \"min-width\": \"355\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => showPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"warning\",\n onClick: $event => verifySimplyPoolToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"检验\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deletePoolToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"success\",\n onClick: $event => reNewPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"刷新\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => reviewPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"更换\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"])]), _createElementVNode(\"div\", _hoisted_129, [_createVNode(_component_el_select_group, {\n class: \"pool-button\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: buttonPoolValue.value,\n \"onUpdate:modelValue\": _cache[87] || (_cache[87] = $event => buttonPoolValue.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"请选择批量操作\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPool, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolValue,\n label: item.label,\n value: item.buttonPoolValue\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_button, {\n onClick: _cache[88] || (_cache[88] = $event => selectPoolChoice(buttonPoolValue.value))\n }, {\n default: _withCtx(() => [_hoisted_130]),\n _: 1\n })]),\n _: 1\n })]), _hoisted_131]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_7.value,\n \"onUpdate:modelValue\": _cache[93] || (_cache[93] = $event => show_7.value = $event),\n title: \"PandoraNext余额\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_132, [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_133, _createVNode(_component_van_field, {\n modelValue: pandoraUsage.value,\n \"onUpdate:modelValue\": _cache[90] || (_cache[90] = $event => pandoraUsage.value = $event),\n name: \"PandoraNext用量\",\n label: \"PandoraNext用量\",\n placeholder: \"PandoraNext用量\"\n }, null, 8, [\"modelValue\"]), _hoisted_134, _createVNode(_component_van_field, {\n modelValue: pandoraIp.value,\n \"onUpdate:modelValue\": _cache[91] || (_cache[91] = $event => pandoraIp.value = $event),\n name: \"绑定IP\",\n label: \"绑定IP\",\n placeholder: \"绑定IP\"\n }, null, 8, [\"modelValue\"]), _hoisted_135, _createVNode(_component_van_field, {\n modelValue: pandoraTime.value,\n \"onUpdate:modelValue\": _cache[92] || (_cache[92] = $event => pandoraTime.value = $event),\n name: \"重置时间\",\n label: \"重置时间\",\n placeholder: \"重置时间\"\n }, null, 8, [\"modelValue\"]), _hoisted_136]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_van_dialog, {\n show: show_8.value,\n \"onUpdate:show\": _cache[101] || (_cache[101] = $event => show_8.value = $event),\n title: \"定时刷新&PandoraNext网址\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_137, [_createVNode(_component_van_form, {\n onSubmit: _cache[100] || (_cache[100] = $event => RequireAutoUpdate())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_138, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否自动刷新session_token\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: auto_updateSession.value,\n \"onUpdate:modelValue\": _cache[94] || (_cache[94] = $event => auto_updateSession.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), auto_updateSession.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_139, [_hoisted_140, _createVNode(_component_van_field, {\n modelValue: auto_updateTime.value,\n \"onUpdate:modelValue\": _cache[95] || (_cache[95] = $event => auto_updateTime.value = $event),\n name: \"自动刷新session的间隔天数\",\n label: \"自动刷新session的间隔天数\",\n \"input-align\": \"right\",\n placeholder: \"自动刷新session的时间 (天为单位)\"\n }, null, 8, [\"modelValue\"]), _hoisted_141, _createVNode(_component_van_field, {\n modelValue: auto_updateNumber.value,\n \"onUpdate:modelValue\": _cache[96] || (_cache[96] = $event => auto_updateNumber.value = $event),\n name: \"自动刷新session的个数\",\n label: \"自动刷新session的个数\",\n \"input-align\": \"right\",\n placeholder: \"自动刷新session的个数 (个)\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_142, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: pandoraNext_outUrl.value,\n \"onUpdate:modelValue\": _cache[97] || (_cache[97] = $event => pandoraNext_outUrl.value = $event),\n name: \"PandoraNext的公网访问地址\",\n label: \"PandoraNext的公网访问地址\",\n placeholder: \"PandoraNext的公网访问地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_143, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: oneAPi_outUrl.value,\n \"onUpdate:modelValue\": _cache[98] || (_cache[98] = $event => oneAPi_outUrl.value = $event),\n name: \"oneApi的公网访问地址\",\n label: \"oneApi的公网访问地址\",\n \"input-align\": \"right\",\n placeholder: \"oneApi的公网访问地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_144, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: oneAPi_intoToken.value,\n \"onUpdate:modelValue\": _cache[99] || (_cache[99] = $event => oneAPi_intoToken.value = $event),\n name: \"oneApi的系统令牌\",\n label: \"oneApi的系统令牌\",\n \"input-align\": \"right\",\n placeholder: \"oneApi的系统令牌\"\n }, null, 8, [\"modelValue\"]), _hoisted_145]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_146, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_147]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_9.value,\n \"onUpdate:show\": _cache[109] || (_cache[109] = $event => show_9.value = $event),\n title: \"✨添加pool_token信息\",\n width: \"95vw\",\n \"align-center\": \"\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_148, [_createVNode(_component_van_form, {\n onSubmit: addSelectPoolToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_field, {\n modelValue: poolNameValue.value,\n \"onUpdate:modelValue\": _cache[102] || (_cache[102] = $event => poolNameValue.value = $event),\n name: \"pool_token名\",\n label: \"pool_token名\",\n \"input-align\": \"right\",\n placeholder: \"3到10个字符\",\n rules: [{\n validator: poolNameValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_149, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[103] || (_cache[103] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_150, [_hoisted_151, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[104] || (_cache[104] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\"\n }, null, 8, [\"modelValue\"]), _createElementVNode(\"div\", _hoisted_152, [_hoisted_153, _hoisted_154, _createVNode(_component_el_form_item, {\n label: \"选择模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addPoolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[105] || (_cache[105] = $event => addPoolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n placeholder: \"填写或选择模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolModel,\n label: item.label,\n value: item.buttonPoolModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_155, _createVNode(_component_el_form_item, {\n label: \"重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: addPoolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[106] || (_cache[106] = $event => addPoolModel_mapping.value = $event),\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_156, _createVNode(_component_van_field, {\n name: \"checkboxGroup\",\n label: \"在one-api的组别\",\n \"input-align\": \"right\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: groupChecked.value,\n \"onUpdate:modelValue\": _cache[107] || (_cache[107] = $event => groupChecked.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_157, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_158, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_159, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[108] || (_cache[108] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义PandoraNext地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_160])) : _createCommentVNode(\"\", true)]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_161, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_162]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_el_dialog, {\n modelValue: show_10.value,\n \"onUpdate:modelValue\": _cache[110] || (_cache[110] = $event => show_10.value = $event),\n title: \"tokensTool登录日志\",\n \"align-center\": \"\",\n width: \"90%\",\n \"close-on-click-modal\": false,\n class: \"showLoginDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_163, [_createVNode(_unref(ElTable), {\n \"row-class-name\": poolRowClassName,\n data: loginData.value\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n prop: \"ipAddress\",\n label: \"登录地区\",\n \"min-width\": \"160\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_164, [_createElementVNode(\"span\", _hoisted_165, _toDisplayString(scope.row.ipAddress), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"登录IP\",\n \"min-width\": \"155\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_166, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.poolToken)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_167, _toDisplayString(scope.row.requestIp), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"成功/失败\",\n \"min-width\": \"105\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_168, [_createElementVNode(\"span\", _hoisted_169, _toDisplayString(scope.row.inRequestNumber) + \"/\" + _toDisplayString(scope.row.outRequestNumber), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"lastLoginTime\",\n label: \"登录时间\",\n prop: \"lastLoginTime\",\n \"min-width\": \"180\"\n })]),\n _: 1\n }, 8, [\"data\"])]), _hoisted_170]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_van_dialog, {\n show: show_11.value,\n \"onUpdate:show\": _cache[119] || (_cache[119] = $event => show_11.value = $event),\n title: \"📌修改pool_token信息\",\n width: \"95vw\",\n \"align-center\": \"\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_171, [_createVNode(_component_van_form, {\n onSubmit: requirePoolToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_172, _createElementVNode(\"div\", _hoisted_173, [_createVNode(_component_el_form_item, {\n label: \"poolToken名\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: poolName.value,\n \"onUpdate:modelValue\": _cache[111] || (_cache[111] = $event => poolName.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择要修改的pool名\",\n onChange: handlePoolNameChange,\n class: \"selectPool_token\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(poolData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.poolName,\n label: item.poolName,\n value: item.poolName,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_174, _createVNode(_component_van_field, {\n modelValue: temPool_token.value,\n \"onUpdate:modelValue\": _cache[112] || (_cache[112] = $event => temPool_token.value = $event),\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n name: \"pool_token的值\",\n label: \"pool_token的值\",\n placeholder: \"pool_token的值(不改则不变)\"\n }, null, 8, [\"modelValue\"]), _hoisted_175, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[113] || (_cache[113] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_176, intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_177, [_hoisted_178, _createElementVNode(\"div\", _hoisted_179, [_createVNode(_component_el_form_item, {\n label: \"选择模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: poolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[114] || (_cache[114] = $event => poolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"填写或选择模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolModel,\n label: item.label,\n value: item.buttonPoolModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_180, _createVNode(_component_el_form_item, {\n label: \"重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: poolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[115] || (_cache[115] = $event => poolModel_mapping.value = $event),\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_181, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[116] || (_cache[116] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_182, _createVNode(_component_van_field, {\n name: \"checkboxGroup\",\n label: \"在one-api的组别\",\n \"input-align\": \"right\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: temGroupChecked.value,\n \"onUpdate:modelValue\": _cache[117] || (_cache[117] = $event => temGroupChecked.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_183, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_184, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_185, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[118] || (_cache[118] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n placeholder: \"自定义PandoraNext地址\",\n rules: [{\n required: true,\n message: '请填写自定义PandoraNext地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_186])) : _createCommentVNode(\"\", true)]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_187, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_188]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_el_dialog, {\n modelValue: show_12.value,\n \"onUpdate:modelValue\": _cache[120] || (_cache[120] = $event => show_12.value = $event),\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", {\n ref_key: \"chart\",\n ref: chart,\n style: {\n \"width\": \"auto\",\n \"height\": \"350px\"\n }\n }, null, 512)]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_13.value,\n \"onUpdate:modelValue\": _cache[124] || (_cache[124] = $event => show_13.value = $event),\n title: \"OneAPI里的share_token列表\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_search, {\n modelValue: valueShare.value,\n \"onUpdate:modelValue\": _cache[122] || (_cache[122] = $event => valueShare.value = $event),\n \"show-action\": \"\",\n clearable: \"\",\n shape: \"round\",\n placeholder: \"请输入搜索share_token名称\",\n onSearch: _cache[123] || (_cache[123] = $event => onSearchShareToken(valueShare.value)),\n class: \"onShareToken\"\n }, {\n action: _withCtx(() => [_createVNode(_component_el_button, {\n onClick: _cache[121] || (_cache[121] = $event => show_14.value = true)\n }, {\n default: _withCtx(() => [_hoisted_189]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"]), _createElementVNode(\"div\", _hoisted_190, [_createVNode(_unref(ElTable), {\n data: shareData.value,\n \"row-class-name\": poolRowClassName\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n label: \"在OneAPI的名称\",\n prop: \"oneApi_name\",\n width: \"180\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_191, [_createElementVNode(\"span\", _hoisted_192, _toDisplayString(scope.row.oneApi_name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"来源Token名\",\n \"min-width\": \"135\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_193, [_createElementVNode(\"span\", _hoisted_194, _toDisplayString(scope.row.token_name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"share_token值\",\n \"min-width\": \"355\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_195, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.token_value)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_196, _toDisplayString(scope.row.token_value), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"shareTime\",\n label: \"更新时间\",\n prop: \"shareTime\",\n \"min-width\": \"170\"\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n \"min-width\": \"235\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => showShareToken(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => reviewShare(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"修改\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deleteShareToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"])]), _hoisted_197]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_14.value,\n \"onUpdate:modelValue\": _cache[132] || (_cache[132] = $event => show_14.value = $event),\n title: \"添加shareToken进one_api\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_198, [_createVNode(_component_van_form, {\n onSubmit: addShareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\",\n class: \"groupCell\"\n }, {\n default: _withCtx(() => [_hoisted_199, _createVNode(_component_van_field, {\n modelValue: addOneApi_name.value,\n \"onUpdate:modelValue\": _cache[125] || (_cache[125] = $event => addOneApi_name.value = $event),\n name: \"oneApi中渠道名称\",\n label: \"oneApi中渠道名称\",\n \"input-align\": \"right\",\n placeholder: \"oneApi中渠道名称\",\n rules: [{\n required: true,\n message: '请填写oneApi中渠道名称'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_200, _createElementVNode(\"div\", _hoisted_201, [_createVNode(_component_el_form_item, {\n label: \"Token名\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addToken_name.value,\n \"onUpdate:modelValue\": _cache[126] || (_cache[126] = $event => addToken_name.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择要添加的Token名\",\n onChange: handleShareNameChange,\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(filteredTableData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.name,\n label: item.name,\n value: item.name,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_202, _createElementVNode(\"div\", _hoisted_203, [_createVNode(_component_el_form_item, {\n label: \"选择模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addOneApi_models.value,\n \"onUpdate:modelValue\": _cache[127] || (_cache[127] = $event => addOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"填写或选择模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_204, _createVNode(_component_el_form_item, {\n label: \"重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: addModel_mapping.value,\n \"onUpdate:modelValue\": _cache[128] || (_cache[128] = $event => addModel_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_205, _createVNode(_component_van_field, {\n modelValue: addPriority.value,\n \"onUpdate:modelValue\": _cache[129] || (_cache[129] = $event => addPriority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n placeholder: \"渠道优先级(默认为0)\",\n \"input-align\": \"center\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_206, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"addOneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: addOneApi_groups.value,\n \"onUpdate:modelValue\": _cache[130] || (_cache[130] = $event => addOneApi_groups.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_207, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_208, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_209, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: addOneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[131] || (_cache[131] = $event => addOneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_210]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_211, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_15.value,\n \"onUpdate:modelValue\": _cache[149] || (_cache[149] = $event => show_15.value = $event),\n title: \"🔎查看share_token在OneAPI信息\",\n \"align-center\": \"\",\n width: \"95vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_212, [_createVNode(_component_van_form, {\n onSubmit: _ctx.shareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\",\n class: \"groupCell\"\n }, {\n default: _withCtx(() => [_hoisted_213, _createVNode(_component_van_field, {\n modelValue: oneApi_name.value,\n \"onUpdate:modelValue\": _cache[133] || (_cache[133] = $event => oneApi_name.value = $event),\n name: \"OneAPI中渠道名称\",\n label: \"OneAPI中渠道名称\",\n placeholder: \"OneAPI中渠道名称\",\n \"left-icon\": \"description-o\",\n readonly: true,\n \"input-align\": \"right\",\n onClickLeftIcon: _cache[134] || (_cache[134] = $event => copyToken(oneApi_name.value)),\n rules: [{\n required: true,\n message: '请填写OneAPI中渠道名称'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_214, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: token_value.value,\n \"onUpdate:modelValue\": _cache[135] || (_cache[135] = $event => token_value.value = $event),\n name: \"share_token的值\",\n label: \"share_token的值\",\n \"input-align\": \"right\",\n placeholder: \"share_token的值\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[136] || (_cache[136] = $event => copyToken(token_value.value))\n }, null, 8, [\"modelValue\"]), _hoisted_215, _createVNode(_component_van_field, {\n modelValue: token_name.value,\n \"onUpdate:modelValue\": _cache[137] || (_cache[137] = $event => token_name.value = $event),\n name: \"share_token的来源\",\n label: \"share_token的来源\",\n \"input-align\": \"right\",\n placeholder: \"share_token的值\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[138] || (_cache[138] = $event => copyToken(token_name.value))\n }, null, 8, [\"modelValue\"]), _hoisted_216, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: temOneApi_models.value,\n \"onUpdate:modelValue\": _cache[139] || (_cache[139] = $event => temOneApi_models.value = $event),\n name: \"模型\",\n label: \"模型\",\n \"input-align\": \"right\",\n placeholder: \"加入的模型\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[140] || (_cache[140] = $event => copyToken(temOneApi_models.value))\n }, null, 8, [\"modelValue\"]), _createElementVNode(\"div\", _hoisted_217, [_hoisted_218, _createVNode(_component_el_form_item, {\n readonly: true,\n type: \"textarea\",\n label: \"🧩重定向\",\n autosize: \"\",\n prop: \"addModel_mapping\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: model_mapping.value,\n \"onUpdate:modelValue\": _cache[141] || (_cache[141] = $event => model_mapping.value = $event),\n type: \"textarea\",\n autosize: \"\",\n disabled: \"\",\n placeholder: temModel_mapping,\n onClickLeftIcon: _cache[142] || (_cache[142] = $event => copyToken(model_mapping.value))\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_219, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[143] || (_cache[143] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n placeholder: \"渠道优先级(默认为0)\",\n \"left-icon\": \"description-o\",\n readonly: true,\n \"input-align\": \"right\",\n onClickLeftIcon: _cache[144] || (_cache[144] = $event => copyToken(priority.value)),\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_220, _createVNode(_component_van_field, {\n type: \"textarea\",\n autoSize: \"\",\n modelValue: temOneApi_groups.value,\n \"onUpdate:modelValue\": _cache[145] || (_cache[145] = $event => temOneApi_groups.value = $event),\n name: \"加入的组别\",\n label: \"加入的组别\",\n \"input-align\": \"right\",\n placeholder: \"加入的组别\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[146] || (_cache[146] = $event => copyToken(temOneApi_groups.value))\n }, null, 8, [\"modelValue\"]), _hoisted_221, _createVNode(_component_van_field, {\n type: \"textarea\",\n autoSize: \"\",\n modelValue: oneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[147] || (_cache[147] = $event => oneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[148] || (_cache[148] = $event => copyToken(oneApi_baseUrl.value)),\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_222]),\n _: 1\n })]),\n _: 1\n }, 8, [\"onSubmit\"])])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_16.value,\n \"onUpdate:modelValue\": _cache[156] || (_cache[156] = $event => show_16.value = $event),\n title: \"📌修改shareToken在OneAPI的信息\",\n \"align-center\": \"\",\n width: \"95vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_223, [_createVNode(_component_van_form, {\n onSubmit: requireShareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\",\n class: \"groupCell\"\n }, {\n default: _withCtx(() => [_hoisted_224, _createElementVNode(\"div\", _hoisted_225, [_createVNode(_component_el_form_item, {\n label: \"Token名\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: token_name.value,\n \"onUpdate:modelValue\": _cache[150] || (_cache[150] = $event => token_name.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择添加的Token名称\",\n onChange: handleShareNameChange,\n class: \"selectPool_token\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(filteredTableData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.name,\n label: item.name,\n value: item.name,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_226, _createElementVNode(\"div\", _hoisted_227, [_createVNode(_component_el_form_item, {\n label: \"选择模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: oneApi_models.value,\n \"onUpdate:modelValue\": _cache[151] || (_cache[151] = $event => oneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"填写或选择模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_228, _createVNode(_component_el_form_item, {\n label: \"重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: model_mapping.value,\n \"onUpdate:modelValue\": _cache[152] || (_cache[152] = $event => model_mapping.value = $event),\n \"label-position\": \"top\",\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_229, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[153] || (_cache[153] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"center\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_230, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"oneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: oneApi_groups.value,\n \"onUpdate:modelValue\": _cache[154] || (_cache[154] = $event => oneApi_groups.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_231, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_232, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_233, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: oneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[155] || (_cache[155] = $event => oneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_234]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_235, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_17.value,\n \"onUpdate:modelValue\": _cache[170] || (_cache[170] = $event => show_17.value = $event),\n title: \"🔎查看pool_token的信息\",\n \"align-center\": \"\",\n width: \"95vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_236, [_createVNode(_component_van_form, null, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\",\n class: \"groupCell\"\n }, {\n default: _withCtx(() => [_hoisted_237, _createVNode(_component_van_field, {\n modelValue: temPoolName.value,\n \"onUpdate:modelValue\": _cache[157] || (_cache[157] = $event => temPoolName.value = $event),\n name: \"pool_token名称\",\n label: \"pool_token名称\",\n placeholder: \"pool_token名称\",\n readonly: true,\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[158] || (_cache[158] = $event => copyToken(temPoolName.value)),\n \"input-align\": \"right\"\n }, null, 8, [\"modelValue\"]), _hoisted_238, _createVNode(_component_van_field, {\n modelValue: shareTokens.value,\n \"onUpdate:modelValue\": _cache[159] || (_cache[159] = $event => shareTokens.value = $event),\n label: \"使用token名集合\",\n type: \"textarea\",\n placeholder: \"使用token名集合\",\n \"left-icon\": \"description-o\",\n readonly: true,\n \"input-align\": \"right\",\n onClickLeftIcon: _cache[160] || (_cache[160] = $event => copyToken(temAccessToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"]), _hoisted_239, _createVNode(_component_van_field, {\n modelValue: temPool_token.value,\n \"onUpdate:modelValue\": _cache[161] || (_cache[161] = $event => temPool_token.value = $event),\n readonly: true,\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n name: \"pool_token的值\",\n label: \"pool_token的值\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[162] || (_cache[162] = $event => copyToken(temPool_token.value)),\n placeholder: \"pool_token的值(不改则不变)\"\n }, null, 8, [\"modelValue\"]), _hoisted_240, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[163] || (_cache[163] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_241, intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_242, [_hoisted_243, _createElementVNode(\"div\", _hoisted_244, [_createVNode(_component_el_form_item, {\n disabled: \"\",\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n disabled: \"\",\n modelValue: poolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[164] || (_cache[164] = $event => poolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolModel,\n label: item.label,\n value: item.buttonPoolModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_245]),\n _: 1\n }), _hoisted_246, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: poolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[165] || (_cache[165] = $event => poolModel_mapping.value = $event),\n type: \"textarea\",\n disabled: \"\",\n filterable: \"\",\n autosize: \"\",\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_247, _createVNode(_component_van_field, {\n readonly: true,\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[166] || (_cache[166] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_248, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"oneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: temGroupChecked.value,\n \"onUpdate:modelValue\": _cache[167] || (_cache[167] = $event => temGroupChecked.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_249, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n disabled: \"\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_250, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n disabled: \"\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n disabled: \"\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_251, _createVNode(_component_van_field, {\n readonly: true,\n type: \"textarea\",\n autoSize: \"\",\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[168] || (_cache[168] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[169] || (_cache[169] = $event => copyToken(oneApi_pandoraUrl.value)),\n placeholder: \"自定义PandoraNext地址\",\n rules: [{\n required: true,\n message: '请填写自定义PandoraNext地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_252])) : _createCommentVNode(\"\", true)]),\n _: 1\n })]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"])], 64);\n };\n }\n});","/* unplugin-vue-components disabled */import script from \"./homeIphone.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./homeIphone.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./homeIphone.vue?vue&type=style&index=0&id=28ccace8&lang=css\"\n\nconst __exports__ = script;\n\nexport default __exports__"],"names":["_hoisted_1","class","_hoisted_2","_","name","content","_hoisted_3","style","src","_hoisted_4","_hoisted_5","_hoisted_6","href","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","key","_hoisted_26","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31","_hoisted_32","_hoisted_33","_hoisted_34","_hoisted_35","_hoisted_36","_hoisted_37","_hoisted_38","_hoisted_39","_hoisted_40","_hoisted_41","_hoisted_42","_hoisted_43","_hoisted_44","_hoisted_45","_hoisted_46","_hoisted_47","_hoisted_48","_hoisted_49","_hoisted_50","_hoisted_51","_hoisted_52","_hoisted_53","_hoisted_54","_hoisted_55","_hoisted_56","_hoisted_57","_hoisted_58","_hoisted_59","_hoisted_60","_hoisted_61","_hoisted_62","_hoisted_63","_hoisted_64","_hoisted_65","_hoisted_66","_hoisted_67","_hoisted_68","_hoisted_69","_hoisted_70","_hoisted_71","_hoisted_72","_hoisted_73","_hoisted_74","_hoisted_75","_hoisted_76","_hoisted_77","_hoisted_78","_hoisted_79","_hoisted_80","_hoisted_81","_hoisted_82","_hoisted_83","_hoisted_84","_hoisted_85","_hoisted_86","_hoisted_87","_hoisted_88","_hoisted_89","_hoisted_90","_hoisted_91","_hoisted_92","_hoisted_93","_hoisted_94","_hoisted_95","_hoisted_96","_hoisted_97","_hoisted_98","_hoisted_99","_hoisted_100","_hoisted_101","_hoisted_102","_hoisted_103","_hoisted_104","_hoisted_105","_hoisted_106","_hoisted_107","_hoisted_108","_hoisted_109","_hoisted_110","_hoisted_111","_hoisted_112","_hoisted_113","_hoisted_114","_hoisted_115","_hoisted_116","_hoisted_117","_hoisted_118","_hoisted_119","_hoisted_120","_hoisted_121","_hoisted_122","_hoisted_123","_hoisted_124","_hoisted_125","_hoisted_126","_hoisted_127","_hoisted_128","_hoisted_129","_hoisted_130","_hoisted_131","_hoisted_132","_hoisted_133","_hoisted_134","_hoisted_135","_hoisted_136","_hoisted_137","_hoisted_138","_hoisted_139","_hoisted_140","_hoisted_141","_hoisted_142","_hoisted_143","_hoisted_144","_hoisted_145","_hoisted_146","_hoisted_147","_hoisted_148","_hoisted_149","_hoisted_150","_hoisted_151","_hoisted_152","_hoisted_153","_hoisted_154","_hoisted_155","_hoisted_156","_hoisted_157","_hoisted_158","_hoisted_159","_hoisted_160","_hoisted_161","_hoisted_162","_hoisted_163","_hoisted_164","_hoisted_165","_hoisted_166","_hoisted_167","_hoisted_168","_hoisted_169","_hoisted_170","_hoisted_171","_hoisted_172","_hoisted_173","_hoisted_174","_hoisted_175","_hoisted_176","_hoisted_177","_hoisted_178","_hoisted_179","_hoisted_180","_hoisted_181","_hoisted_182","_hoisted_183","_hoisted_184","_hoisted_185","_hoisted_186","_hoisted_187","_hoisted_188","_hoisted_189","_hoisted_190","_hoisted_191","_hoisted_192","_hoisted_193","_hoisted_194","_hoisted_195","_hoisted_196","_hoisted_197","_hoisted_198","_hoisted_199","_hoisted_200","_hoisted_201","_hoisted_202","_hoisted_203","_hoisted_204","_hoisted_205","_hoisted_206","_hoisted_207","_hoisted_208","_hoisted_209","_hoisted_210","_hoisted_211","_hoisted_212","_hoisted_213","_hoisted_214","_hoisted_215","_hoisted_216","_hoisted_217","_hoisted_218","_hoisted_219","_hoisted_220","_hoisted_221","_hoisted_222","_hoisted_223","_hoisted_224","_hoisted_225","_hoisted_226","_hoisted_227","_hoisted_228","_hoisted_229","_hoisted_230","_hoisted_231","_hoisted_232","_hoisted_233","_hoisted_234","_hoisted_235","_hoisted_236","_hoisted_237","_hoisted_238","_hoisted_239","_hoisted_240","_hoisted_241","_hoisted_242","_hoisted_243","_hoisted_244","_hoisted_245","_hoisted_246","_hoisted_247","_hoisted_248","_hoisted_249","_hoisted_250","_hoisted_251","_hoisted_252","temModel_mapping","pandoraNext","tokensTool","validation","__name","setup","__props","path","window","location","pathname","parts","split","prefix","length","temGroupChecked","groupChecked","multipleTableRefPool","multipleSelection","multipleSelectionPool","handleSelectionChange","val","value","poolSelectionChange","router","show","show_1","show_2","show_3","show_4","show_5","show_6","show_7","show_8","show_9","show_10","show_11","show_12","show_13","show_14","show_15","show_16","show_17","buttonValue","options","label","optionsModel","buttonModel","optionsPoolModel","buttonPoolModel","buttonPoolValue","optionsPool","proxy_api_prefix","isolated_conv_title","bing","timeout","proxy_url","public_share","disable_signup","auto_conv_arkose","proxy_file_service","custom_doh_host","enabled","cert_file","key_file","site_password","setup_password","loginUsername","loginPassword","license_id","isGetToken","getTokenPassword","containerName","autoToken_url","whitelist","provider","site_key","site_secret","site_login","setup_login","oai_username","oai_password","auto_updateSession","auto_updateTime","auto_updateNumber","pandoraNext_outUrl","oneAPi_outUrl","oneAPi_intoToken","poolName","temPoolName","shareTokens","poolTime","poolNameValue","intoOneApi","poolModel_mapping","poolOneApi_models","addPoolOneApi_models","addPoolModel_mapping","oneApi_pandoraUrl","priority","temPool_token","customValidator","regex","test","sitePasswordValidator","poolNameValidator","addPasswordValidator","addSetPoolToken","setPoolToken","temName","temToken","temAccessToken","temShareToken","temUsername","temUserPassword","temShared","temShow_user_info","temPlus","temPassword","useRefreshToken","temCheckSession","tableData","poolData","shareData","loginData","addName","addUsername","addUserPassword","addTokenValue","addShared","addShow_user_info","addPlus","addUseRefreshToken","addPassword","addOneApi_name","addToken_name","addOneApi_baseUrl","addOneApi_models","addModel_mapping","addOneApi_groups","addPriority","innerHeight","valueShare","token","localStorage","getItem","replace","headers","Authorization","fetchLoginToken","async","axios","post","then","response","data","code","console","error","catch","onSearch","getWebToken","getToken","includes","getAPIToken","onSearchShareToken","getShare","get","data_token","Array","isArray","resUsers","map","item","username","userPassword","access_token","share_token","shared","auto_shared","show_user_info","password","plus","updateTime","checkSession","filteredUsers","filter","user","getLoginData","resLogins","ipAddress","requestIp","outRequestNumber","inRequestNumber","lastLoginTime","getPool","responsePool","pool_token","resPools","poolToken","checkPool","loadingInstance","service","fullscreen","responseShare","resShares","oneApi_name","token_name","token_value","oneApi_baseUrl","oneApi_models","model_mapping","oneApi_groups","shareTime","close","getSetting","tls","endsWith","fetchDataAndFillForm","alert","confirmButtonText","callback","action","type","message","getSelectedData","selectedData","addSelectPoolToken","names","userData","JSON","parse","e","addPoolToken","toString","fetch","method","body","stringify","json","msg","handlePoolNameChange","selectedItem","find","handleShareNameChange","filteredTableData","requirePoolToken","log","addShareToken","pandoraUsage","innerWidth","Promise","all","current","total","tableRowClassName","row","poolRowClassName","redirectToExternalLink","open","redirectPandoraNextShare","url","charAt","requirePandoraNextLink","requireTokensToolLink","activeIndex","temRequireToken","handleSelect","keyPath","addToken","onAddToken","now","Date","formattedTime","getFullYear","getMonth","padStart","getDate","getHours","getMinutes","getSeconds","api","success","chart_show","showData","usageHeader","usageData","modelData","usage","startsWith","push","myChart_show","echarts","option","title","text","textStyle","fontSize","color","left","top","tooltip","legend","xAxis","yAxis","series","barWidth","itemStyle","params","colorList","dataIndex","setOption","temOneApi_models","temOneApi_groups","showShareToken","previousSetpoolToken","previousUseRefreshToken","previousToken","handleEdit","index","onRequireSetting","RequireSetting","setting","RequireAutoUpdate","RequireToken","confirm","cancelButtonText","openPandora","closePandora","AgainPandora","reloadPandora","pandoraIp","pandoraTime","getPandoraNext","ip","currentTime","futureTime","getTime","ttl","year","month","day","hours","minutes","seconds","updateAllShareToken","dangerouslyUseHTMLString","reNew","reNewMsg","ok","Error","reNewPool","reviewShare","requireShareToken","requireShare","review","reviewPool","deletePoolToken","verifySimplyPoolToken","deleteToken","put","deleteShareToken","formatDate","nowDay","timeDay","parseISO","daysDiff","differenceInDays","Math","ceil","logout","removeItem","getPoolToken","getShareToken","getLogin","copyToken","textarea","document","createElement","appendChild","select","execCommand","removeChild","selectChoice","count","forEach","showPool","selectPoolChoice","selectedPoolData","temPoolData","chart","getUsage","model","myChart","_ctx","_cache","_component_van_icon","_component_el_menu_item","_component_el_sub_menu","_component_el_menu","_component_van_button","_component_el_page_header","_component_van_search","_component_el_table_column","_component_el_button","_component_el_tag","_component_el_popover","_component_el_option","_component_el_select","_component_van_field","_component_van_switch","_component_van_cell_group","_component_van_form","_component_van_dialog","_component_CopyDocument","_component_el_icon","_component_h10","_component_el_select_group","_component_el_dialog","_component_el_form_item","_component_el_input","_component_van_checkbox","_component_van_checkbox_group","_directive_loading","mode","ellipsis","onSelect","default","size","onClick","$event","icon","extra","square","modelValue","shape","clearable","placeholder","onSelectionChange","prop","width","sortable","scope","circle","effect","trigger","placement","reference","$index","loading","filterable","onSubmit","inset","rules","required","rows","autoSize","validator","maxlength","autosize","maxHeight","minHeight","round","block","readonly","onClickLeftIcon","disabled","ref_key","ref","property","multiple","input","onChange","shareToken","__exports__"],"sourceRoot":""}
\ No newline at end of file
diff --git a/rearServer/target/classes/static/js/666.e7a6709e.js b/rearServer/target/classes/static/js/666.e7a6709e.js
new file mode 100644
index 0000000..3c17b2b
--- /dev/null
+++ b/rearServer/target/classes/static/js/666.e7a6709e.js
@@ -0,0 +1,2 @@
+"use strict";(self["webpackChunkPandoraNext_TokensTool"]=self["webpackChunkPandoraNext_TokensTool"]||[]).push([[666],{3666:function(e,l,a){a.r(l),a.d(l,{default:function(){return _n}});var o=a(299),n=(a(8845),a(6773)),t=(a(487),a(2876)),u=(a(492),a(5185)),i=(a(3349),a(5267)),r=(a(1645),a(7630)),s=(a(7034),a(3164)),d=(a(6335),a(157)),m=(a(1897),a(6907)),c=(a(4746),a(294)),p=(a(6870),a(560),a(6252)),v=a(3577),h=a(2262),_=a(1094),w=a(2201),k=a(6154),g=a(844),f=a(1348),b=a(9288),y=a(2534),V=a(3028),W=a(4708),T=a(1893);const x={class:"content"},U=(0,p._)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no"},null,-1),H=(0,p._)("img",{style:{width:"25px"},src:_},null,-1),A={class:"home-container"},z=(0,p._)("div",{class:"flex-grow"},null,-1),P=(0,p._)("a",{href:"https://ai.fakeopen.com/auth"},"PandoraNext地址",-1),S=(0,p._)("a",{href:"https://chat.openai.com/api/auth/session"},"OpenAI官网",-1),N=(0,p._)("a",{href:"https://github.com/Yanyutin753/PandoraNext-TokensTool"},"TokensTool地址",-1),O={style:{display:"block"}},C=(0,p._)("div",{class:"flex items-center"},[(0,p._)("span",{class:"font-h4"},"PandoraNext-TokensTool "),(0,p._)("span",{class:"font-h4-tag"},"v0.6.8 ")],-1),$={class:"under"},I={class:"search"},B={style:{display:"flex",margin:"0px 0px -20px 0px"}},D={style:{display:"flex",width:"88vw",height:"63vh",transform:"translateX(0vw)"}},q={style:{display:"flex","align-items":"center"}},j={style:{"margin-left":"15px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},L={style:{"margin-left":"15px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},M={style:{margin:"13px",transform:"translateX(7px)"}},Z=(0,p._)("h1",null,"批量操作",-1),J=(0,p._)("br",null,null,-1),K={style:{display:"block"}},E=(0,p._)("br",null,null,-1),R=(0,p._)("br",null,null,-1),Y=(0,p._)("br",null,null,-1),X={key:0},F=(0,p._)("br",null,null,-1),G=(0,p._)("br",null,null,-1),Q={key:0},ee=(0,p._)("br",null,null,-1),le=(0,p._)("br",null,null,-1),ae={key:1},oe=(0,p._)("br",null,null,-1),ne=(0,p._)("br",null,null,-1),te=(0,p._)("br",null,null,-1),ue={style:{margin:"5.2px"}},ie=(0,p._)("br",null,null,-1),re={style:{display:"block"}},se=(0,p._)("br",null,null,-1),de=(0,p._)("br",null,null,-1),me=(0,p._)("br",null,null,-1),ce=(0,p._)("br",null,null,-1),pe={key:0},ve=(0,p._)("br",null,null,-1),he={key:1},_e=(0,p._)("br",null,null,-1),we={key:0},ke=(0,p._)("br",null,null,-1),ge=(0,p._)("br",null,null,-1),fe={key:2},be=(0,p._)("br",null,null,-1),ye={key:3},Ve=(0,p._)("br",null,null,-1),We=(0,p._)("br",null,null,-1),Te={style:{margin:"5.2px"}},xe=(0,p._)("br",null,null,-1),Ue={style:{display:"block"}},He=(0,p._)("br",null,null,-1),Ae=(0,p._)("br",null,null,-1),ze=(0,p._)("br",null,null,-1),Pe=(0,p._)("br",null,null,-1),Se=(0,p._)("br",null,null,-1),Ne=(0,p._)("br",null,null,-1),Oe=(0,p._)("br",null,null,-1),Ce=(0,p._)("br",null,null,-1),$e=(0,p._)("br",null,null,-1),Ie=(0,p._)("br",null,null,-1),Be={key:0},De=(0,p._)("br",null,null,-1),qe=(0,p._)("br",null,null,-1),je={key:0},Le=(0,p._)("br",null,null,-1),Me={style:{display:"block"}},Ze=(0,p._)("br",null,null,-1),Je=(0,p._)("br",null,null,-1),Ke=(0,p._)("br",null,null,-1),Ee=(0,p._)("br",null,null,-1),Re=(0,p._)("br",null,null,-1),Ye=(0,p._)("br",null,null,-1),Xe={key:0},Fe=(0,p._)("br",null,null,-1),Ge=(0,p._)("br",null,null,-1),Qe=(0,p._)("br",null,null,-1),el=(0,p._)("br",null,null,-1),ll=(0,p._)("br",null,null,-1),al=(0,p._)("br",null,null,-1),ol=(0,p._)("br",null,null,-1),nl=(0,p._)("br",null,null,-1),tl={style:{margin:"5.2px"}},ul=(0,p._)("br",null,null,-1),il={style:{display:"block"}},rl=(0,p._)("br",null,null,-1),sl=(0,p._)("br",null,null,-1),dl=(0,p._)("br",null,null,-1),ml=(0,p._)("br",null,null,-1),cl=(0,p._)("br",null,null,-1),pl=(0,p._)("br",null,null,-1),vl=(0,p._)("br",null,null,-1),hl=(0,p._)("br",null,null,-1),_l={key:0},wl=(0,p._)("br",null,null,-1),kl=(0,p._)("br",null,null,-1),gl=(0,p._)("br",null,null,-1),fl={style:{margin:"5.2px"}},bl=(0,p._)("br",null,null,-1),yl={style:{display:"block"}},Vl=(0,p._)("br",null,null,-1),Wl=(0,p._)("br",null,null,-1),Tl=(0,p._)("br",null,null,-1),xl=(0,p._)("br",null,null,-1),Ul=(0,p._)("br",null,null,-1),Hl=(0,p._)("br",null,null,-1),Al=(0,p._)("br",null,null,-1),zl=(0,p._)("br",null,null,-1),Pl={style:{margin:"5.2px"}},Sl=(0,p._)("br",null,null,-1),Nl={style:{display:"flex",transform:"translate(0vw, -2vh)"}},Ol={style:{display:"flex",transform:"translate(calc(-2.5% - 20px), 0vh)",width:"calc(102.5% + 40px)"}},Cl={style:{"margin-left":"10px",display:"flex","align-items":"center"}},$l={key:0},Il=(0,p._)("h5",null,"oneApi4",-1),Bl={key:1},Dl=(0,p._)("h5",null,"oneApi3",-1),ql={key:2},jl=(0,p._)("h5",null,"Json",-1),Ll={style:{"margin-left":"20px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Ml={style:{display:"flex","align-items":"center",overflow:"auto"}},Zl={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Jl=(0,p._)("span",{style:{"margin-left":"0px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},"点击此进行查看",-1),Kl={style:{margin:"10px 0px 10px 0px"}},El=(0,p._)("h1",null,"批量操作",-1),Rl=(0,p._)("br",null,null,-1),Yl={style:{display:"block"}},Xl=(0,p._)("br",null,null,-1),Fl=(0,p._)("br",null,null,-1),Gl=(0,p._)("br",null,null,-1),Ql=(0,p._)("br",null,null,-1),ea={style:{display:"block"}},la=(0,p._)("br",null,null,-1),aa={key:0},oa=(0,p._)("br",null,null,-1),na=(0,p._)("br",null,null,-1),ta=(0,p._)("br",null,null,-1),ua=(0,p._)("br",null,null,-1),ia=(0,p._)("br",null,null,-1),ra=(0,p._)("br",null,null,-1),sa={style:{margin:"5.2px"}},da=(0,p._)("br",null,null,-1),ma={style:{display:"block"}},ca=(0,p._)("br",null,null,-1),pa={key:0},va=(0,p._)("br",null,null,-1),ha={style:{transform:"translateX(16px)"}},_a=(0,p._)("br",null,null,-1),wa=(0,p._)("br",null,null,-1),ka=(0,p._)("br",null,null,-1),ga=(0,p._)("br",null,null,-1),fa={style:{"margin-bottom":"5px"}},ba={style:{"margin-bottom":"5px"}},ya=(0,p._)("br",null,null,-1),Va=(0,p._)("br",null,null,-1),Wa={style:{margin:"5.2px"}},Ta=(0,p._)("br",null,null,-1),xa={style:{display:"flex",transform:"translate(calc(-2.5% - 20px), 0vh)",width:"calc(100% + 2.5% + 40px)"}},Ua={style:{display:"flex","align-items":"center"}},Ha={style:{"margin-left":"0px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Aa={style:{display:"flex","align-items":"center",overflow:"auto"}},za={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Pa={style:{display:"flex","align-items":"center",overflow:"auto"}},Sa={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Na=(0,p._)("br",null,null,-1),Oa={style:{display:"block"}},Ca=(0,p._)("br",null,null,-1),$a={style:{transform:"translateX(16px)"}},Ia=(0,p._)("br",null,null,-1),Ba=(0,p._)("br",null,null,-1),Da=(0,p._)("br",null,null,-1),qa={key:0},ja=(0,p._)("br",null,null,-1),La={style:{transform:"translateX(16px)"}},Ma=(0,p._)("br",null,null,-1),Za=(0,p._)("br",null,null,-1),Ja=(0,p._)("br",null,null,-1),Ka={style:{"margin-bottom":"5px"}},Ea={style:{"margin-bottom":"5px"}},Ra=(0,p._)("br",null,null,-1),Ya=(0,p._)("br",null,null,-1),Xa={style:{margin:"5.2px"}},Fa=(0,p._)("br",null,null,-1),Ga=(0,p._)("h1",null,"添加到OneAPI",-1),Qa={style:{display:"flex",transform:"translate(calc(-2.5% - 20px), 0vh)",width:"calc(102.5% + 40px)"}},eo={style:{"margin-left":"15px",display:"flex","align-items":"center"}},lo={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},ao={style:{display:"flex","align-items":"center",overflow:"auto"}},oo={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},no={style:{display:"flex","align-items":"center",overflow:"auto"}},to={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},uo=(0,p._)("br",null,null,-1),io={style:{display:"block"}},ro=(0,p._)("br",null,null,-1),so=(0,p._)("br",null,null,-1),mo={style:{transform:"translateX(16px)"}},co=(0,p._)("br",null,null,-1),po={style:{transform:"translateX(16px)"}},vo=(0,p._)("br",null,null,-1),ho=(0,p._)("br",null,null,-1),_o=(0,p._)("br",null,null,-1),wo={style:{"margin-bottom":"5px"}},ko={style:{"margin-bottom":"5px"}},go=(0,p._)("br",null,null,-1),fo=(0,p._)("br",null,null,-1),bo={style:{margin:"5.2px"}},yo={style:{display:"block"}},Vo=(0,p._)("br",null,null,-1),Wo=(0,p._)("br",null,null,-1),To=(0,p._)("br",null,null,-1),xo=(0,p._)("br",null,null,-1),Uo={style:{transform:"translateX(16px)"}},Ho=(0,p._)("br",null,null,-1),Ao=(0,p._)("br",null,null,-1),zo=(0,p._)("br",null,null,-1),Po=(0,p._)("br",null,null,-1),So=(0,p._)("br",null,null,-1),No={style:{display:"block"}},Oo=(0,p._)("br",null,null,-1),Co={style:{transform:"translateX(16px)"}},$o=(0,p._)("br",null,null,-1),Io={style:{transform:"translateX(16px)"}},Bo=(0,p._)("br",null,null,-1),Do=(0,p._)("br",null,null,-1),qo=(0,p._)("br",null,null,-1),jo={style:{"margin-bottom":"5px"}},Lo={style:{"margin-bottom":"5px"}},Mo=(0,p._)("br",null,null,-1),Zo=(0,p._)("br",null,null,-1),Jo={style:{margin:"5.2px"}},Ko={style:{display:"block"}},Eo=(0,p._)("br",null,null,-1),Ro=(0,p._)("br",null,null,-1),Yo=(0,p._)("br",null,null,-1),Xo=(0,p._)("br",null,null,-1),Fo=(0,p._)("br",null,null,-1),Go={key:0},Qo=(0,p._)("br",null,null,-1),en={style:{transform:"translateX(17px)"}},ln=(0,p._)("br",null,null,-1),an=(0,p._)("br",null,null,-1),on=(0,p._)("br",null,null,-1),nn=(0,p._)("br",null,null,-1),tn={style:{"margin-bottom":"5px"}},un={style:{"margin-bottom":"5px"}},rn=(0,p._)("br",null,null,-1),sn=(0,p._)("br",null,null,-1),dn='此项可选,用于修改请求体中的模型名称,\n 为一个 JSON 字符串,键为请求中模型名称,\n 值为要替换的模型名称,例如:\n {\n "gpt-3.5-turbo-301":"gpt-3.5-turbo",\n "gpt-4-8314":"gpt-4", \n "gpt-4-32k-8314":"gpt-4-32k",\n }',mn=0,cn=1,pn=2;var vn=(0,p.aZ)({__name:"homeIphone",setup(e){const l=window.location.pathname,a=l.split("/");let _="";a.length>=3&&(_="/"+a[1]);const vn=(0,h.iH)(["default","svip","vip"]),hn=(0,h.iH)(["default","svip","vip"]),_n=((0,h.iH)(),(0,h.iH)()),wn=(0,h.iH)([]),kn=(0,h.iH)([]),gn=e=>{wn.value=e},fn=e=>{kn.value=e},bn=((0,h.iH)("ALL"),(0,w.tv)()),yn=(0,h.iH)(!1),Vn=(0,h.iH)(!1),Wn=(0,h.iH)(!1),Tn=(0,h.iH)(!1),xn=(0,h.iH)(!1),Un=(0,h.iH)(!1),Hn=(0,h.iH)(!1),An=(0,h.iH)(!1),zn=(0,h.iH)(!1),Pn=(0,h.iH)(!1),Sn=(0,h.iH)(!1),Nn=(0,h.iH)(!1),On=(0,h.iH)(!1),Cn=(0,h.iH)(!1),$n=(0,h.iH)(!1),In=(0,h.iH)(!1),Bn=(0,h.iH)(!1),Dn=(0,h.iH)(!1),qn=(0,h.iH)(""),jn=[{buttonValue:"选中删除Token",label:"选中删除Token"},{buttonValue:"选中刷新Token",label:"选中刷新Token"},{buttonValue:"选中合成pool_token",label:"选中合成pool_token"},{buttonValue:"选中修改pool_token",label:"选中修改pool_token"}],Ln=((0,h.iH)(""),[{buttonModel:"gpt-3.5-turbo",label:"gpt-3.5-turbo"},{buttonModel:"gpt-4-s",label:"gpt-4-s"},{buttonModel:"gpt-4-mobile",label:"gpt-4-mobile"},{buttonModel:"gpt-4-vision",label:"gpt-4-vision"},{buttonModel:"gpt-4-classic",label:"gpt-4-classic"},{buttonModel:"gpt-4-vision-preview",label:"gpt-4-vision-preview"}]),Mn=((0,h.iH)(""),[{buttonPoolModel:"gpt-3.5-turbo",label:"gpt-3.5-turbo"},{buttonPoolModel:"gpt-4",label:"gpt-4"}]),Zn=(0,h.iH)(""),Jn=[{buttonPoolValue:"选中检查pool_token",label:"选中检查pool_token"},{buttonPoolValue:"选中删除pool_token",label:"选中删除pool_token"},{buttonPoolValue:"选中刷新pool_token",label:"选中刷新pool_token"},{buttonPoolValue:"选中更换pool_token",label:"选中更换pool_token"}],Kn=(0,h.iH)(""),En=(0,h.iH)("*"),Rn=(0,h.iH)(""),Yn=(0,h.iH)(""),Xn=(0,h.iH)(""),Fn=(0,h.iH)(!1),Gn=(0,h.iH)(!1),Qn=(0,h.iH)(!1),et=(0,h.iH)(!1),lt=(0,h.iH)(""),at=(0,h.iH)(!1),ot=(0,h.iH)(""),nt=(0,h.iH)(""),tt=(0,h.iH)(""),ut=(0,h.iH)(""),it=(0,h.iH)(""),rt=(0,h.iH)(""),st=(0,h.iH)(""),dt=(0,h.iH)(!1),mt=(0,h.iH)(""),ct=(0,h.iH)("PandoraNext"),pt=(0,h.iH)("default"),vt=(0,h.iH)(""),ht=(0,h.iH)(""),_t=(0,h.iH)(""),wt=(0,h.iH)(""),kt=(0,h.iH)(!1),gt=(0,h.iH)(!1),ft=(0,h.iH)(!1),bt=(0,h.iH)(!1),yt=(0,h.iH)(!1),Vt=(0,h.iH)(5),Wt=(0,h.iH)(1),Tt=(0,h.iH)(""),xt=(0,h.iH)(""),Ut=(0,h.iH)(""),Ht=(0,h.iH)(""),At=(0,h.iH)(""),zt=(0,h.iH)(""),Pt=((0,h.iH)(""),(0,h.iH)("")),St=((0,h.iH)(!0),(0,h.iH)("")),Nt=(0,h.iH)(!1),Ot=(0,h.iH)(""),Ct=(0,h.iH)([]),$t=(0,h.iH)([]),It=(0,h.iH)(""),Bt=(0,h.iH)(Tt.value+Kn.value),Dt=(0,h.iH)(0),qt=(0,h.iH)(""),jt=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!!l.test(e)||"此项至少要包含8位且必须包含数字和字母"},Lt=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!(!l.test(e)&&""!=e)||"此项至少要包含8位且必须包含数字和字母"},Mt=e=>{const l=/^[\u4e00-\u9fa5a-zA-Z0-9]{3,10}$/;return!!l.test(e)||"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字"},Zt=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!(1!=hu.value&&1!=lu.value&&!l.test(e))||"此项至少要包含8位且必须包含数字和字母"},Jt=(0,h.iH)(""),Kt=(0,h.iH)(""),Et=(0,h.iH)(""),Rt=(0,h.iH)(""),Yt=(0,h.iH)(""),Xt=(0,h.iH)(""),Ft=(0,h.iH)(!1),Gt=(0,h.iH)(!1),Qt=(0,h.iH)(!1),eu=(0,h.iH)(""),lu=(0,h.iH)(!1),au=(0,h.iH)(!1),ou=(0,h.iH)(!0),nu=(0,h.iH)([]),tu=(0,h.iH)([]),uu=(0,h.iH)([]),iu=(0,h.iH)([]),ru=(0,h.iH)(""),su=(0,h.iH)(""),du=(0,h.iH)(""),mu=(0,h.iH)(""),cu=(0,h.iH)(!1),pu=(0,h.iH)(!1),vu=(0,h.iH)(!1),hu=(0,h.iH)(!1),_u=(0,h.iH)(!1),wu=(0,h.iH)(""),ku=(0,h.iH)(""),gu=(0,h.iH)(""),fu=((0,h.iH)(""),(0,h.iH)("")),bu=(0,h.iH)([]),yu=(0,h.iH)(""),Vu=(0,h.iH)(["default","svip","vip"]),Wu=(0,h.iH)(0),Tu=((0,h.iH)(.085*window.innerHeight),(0,h.iH)("")),xu=((0,h.iH)(""),(0,h.iH)("")),Uu=localStorage.getItem("jwtToken");Uu||bn.replace("/");const Hu={Authorization:`Bearer ${Uu}`},Au=async()=>{k.Z.post(`${_}/api/loginToken?token=`+Uu).then((e=>{if(0==e.data.code)return console.error(e.data.data),void bn.replace("/")})).catch((e=>{console.error("请求loginToken接口失败",e),bn.replace("/")}))},zu=e=>{"Web"==e||"WEB"==e?Ou(""):"ALL"==e||"All"==e?Su(""):e.includes("API")?Nu(""):Su(e)},Pu=e=>{Iu(e)},Su=async e=>{const l=await k.Z.get(`${_}/api/selectToken?name=${e}`,{headers:Hu}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession})));nu.value=e}},Nu=async e=>{const l=await k.Z.get(`${_}/api/selectToken?name=${e}`,{headers:Hu}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession}))),l=e.filter((e=>!0===e.setPoolToken));nu.value=l}},Ou=async e=>{const l=await k.Z.get(`${_}/api/selectToken?name=${e}`,{headers:Hu}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession}))),l=e.filter((e=>!1===e.setPoolToken));nu.value=l}},Cu=async()=>{const e=await k.Z.get(`${_}/api/selectLogin`,{headers:Hu}),l=e.data.data;if(Array.isArray(l)){const e=l.map((e=>({ipAddress:e.ipAddress,requestIp:e.requestIp,outRequestNumber:e.outRequestNumber,inRequestNumber:e.inRequestNumber,lastLoginTime:e.lastLoginTime})));iu.value=e}},$u=async e=>{const l=await k.Z.get(`${_}/api/selectPoolToken?name=${e}`,{headers:Hu}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({poolName:e.poolName,poolTime:e.poolTime,poolToken:e.poolToken,shareTokens:e.shareTokens,checkPool:e.checkPool,intoOneApi:e.intoOneApi,poolOneApi_models:e.poolOneApi_models,poolModel_mapping:e.poolModel_mapping,oneApi_pandoraUrl:e.oneApi_pandoraUrl,groupChecked:e.groupChecked,priority:e.priority})));tu.value=e}},Iu=async e=>{const l=V.kN.service({fullscreen:!0}),a=await k.Z.get(`${_}/api/selectShareToken?name=${e}`,{headers:Hu}),o=a.data.data;if(Array.isArray(o)){const e=o.map((e=>({oneApi_name:e.oneApi_name,token_name:e.token_name,token_value:e.token_value,oneApi_baseUrl:e.oneApi_baseUrl,oneApi_models:e.oneApi_models,model_mapping:e.model_mapping,oneApi_groups:e.oneApi_groups,shareTime:e.shareTime,priority:e.priority})));uu.value=e}l.close()},Bu=async e=>{const l=await k.Z.get(`${_}/api/selectSetting`,{headers:Hu}),a=l.data.data;Kn.value=a.proxy_api_prefix,En.value=a.isolated_conv_title,Rn.value=a.bing,Yn.value=a.timeout,Xn.value=a.proxy_url,Fn.value=a.public_share,Gn.value=a.disable_signup,Qn.value=a.auto_conv_arkose,et.value=a.proxy_file_service,lt.value=a.custom_doh_host,at.value=a.tls.enabled,ot.value=a.tls.cert_file,nt.value=a.tls.key_file,tt.value=a.site_password,ut.value=a.setup_password,null==a.whitelist?vt.value="null":vt.value=a.whitelist,it.value=a.loginUsername,rt.value=a.loginPassword,st.value=a.license_id,dt.value=a.isGetToken,mt.value=a.getTokenPassword,ct.value=a.containerName,pt.value=a.autoToken_url,ht.value=a.validation.provider,_t.value=a.validation.site_key,wt.value=a.validation.site_secret,kt.value=a.validation.site_login,gt.value=a.validation.setup_login,ft.value=a.validation.oai_username,bt.value=a.validation.oai_password,yt.value=a.auto_updateSession,Vt.value=a.auto_updateTime,Wt.value=a.auto_updateNumber,Tt.value=a.pandoraNext_outUrl,Tt.value.endsWith("/")?Bt.value=Tt.value+Kn.value:Bt.value=Tt.value+"/"+Kn.value,xt.value=a.oneAPi_outUrl,Ut.value=a.oneAPi_intoToken,Du()},Du=async()=>{"123456"==rt.value&&"root"==it.value&&(g.T.alert("请先修改默认的初始账号和密码,并填写相应的信息,具体可参考网站文档!","温馨提醒",{confirmButtonText:"确定",callback:e=>{(0,f.z8)({type:"info",message:"如果不知道怎么填的话,可以看tokensTool的文档站!"})}}),xn.value=!0,rt.value="",it.value="")},qu=()=>{const e=wn.value;0!==e.length?Pn.value=!0:(0,f.z8)("未选择数据")},ju=async()=>{try{const l=wn.value,a=l.map((e=>e.name)),o=V.kN.service({fullscreen:!0});try{""==It.value&&(It.value="{}"),JSON.parse(It.value)}catch(e){return(0,f.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void o.close()}const n={poolName:St.value,intoOneApi:Nt.value,poolOneApi_models:$t.value.toString(),poolModel_mapping:It.value,oneApi_pandoraUrl:Bt.value,shareTokens:a,groupChecked:hn.value.toString(),priority:Dt.value},t=await fetch(`${_}/api/addPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(n)}),u=await t.json();1===u.code?(St.value="",$u(""),(0,f.z8)({type:"success",message:u.data}),St.value="",Nt.value=!1,hn.value=["default","svip","vip"],Dt.value=0,It.value="",$t.value=[]):(0,f.z8)({type:"info",message:u.msg}),o.close()}catch(l){(0,f.z8)({type:"info",message:"取消生成pool_token"})}Pn.value=!1},Lu=e=>{let l=tu.value.find((l=>l.poolName===e));null!=l&&(qt.value=l.poolToken,Nt.value=l.intoOneApi,Ct.value=l.poolOneApi_models.split(","),Ot.value=l.poolModel_mapping,Bt.value=l.oneApi_pandoraUrl,vn.value=l.groupChecked.split(","),Dt.value=l.priority)},Mu=e=>{nu.value.find((l=>l.name===e&&!0===l.setPoolToken))},Zu=(0,p.Fl)((()=>nu.value.filter((e=>!0===e.setPoolToken)))),Ju=async()=>{try{const l=V.kN.service({fullscreen:!0});try{""==Ot.value&&(Ot.value="{}"),JSON.parse(Ot.value)}catch(e){return(0,f.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void l.close()}const a=wn.value,o=a.map((e=>e.name)),n={poolName:Ht.value,poolToken:qt.value,intoOneApi:Nt.value,poolOneApi_models:Ct.value.toString(),poolModel_mapping:Ot.value,oneApi_pandoraUrl:Bt.value,shareTokens:o,groupChecked:vn.value.toString(),priority:Dt.value};console.log(n);const t=await fetch(`${_}/api/requirePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(n)}),u=await t.json();1===u.code?($u(""),(0,f.z8)({type:"success",message:u.data}),Ht.value="",qt.value="",Nt.value=!1,Ct.value=[],Ot.value="",hn.value=["default","svip","vip"],Dt.value=0):(0,f.z8)({type:"info",message:u.msg}),l.close()}catch(l){(0,f.z8)({type:"info",message:"取消修改pool_token"})}Nn.value=!1},Ku=async()=>{const e=V.kN.service({fullscreen:!0});try{try{""==yu.value&&(yu.value="{}"),JSON.parse(yu.value)}catch(l){return(0,f.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void e.close()}const a={oneApi_name:ku.value,token_name:gu.value,oneApi_baseUrl:fu.value,oneApi_models:bu.value.toString(),model_mapping:yu.value,oneApi_groups:Vu.value.toString(),priority:Dt.value},o=await fetch(`${_}/api/addShareToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}),n=await o.json();1===n.code?(Iu(""),(0,f.z8)({type:"success",message:n.data}),ku.value="",gu.value="",fu.value="",bu.value=[],yu.value="",Vu.value=["default","svip","vip"],Dt.value=0):(0,f.z8)({type:"info",message:n.msg})}catch(a){(0,f.z8)({type:"info",message:"取消修改pool_token"})}$n.value=!1,e.close()},Eu=(0,h.iH)("");(0,p.bv)((async()=>{const e=V.kN.service({fullscreen:!0});Au(),window.innerWidth<=900?bn.replace("/iphone"):bn.replace("/home");try{await Promise.all([zu(Tu.value),$u(Tu.value),Bu(Tu.value)]);const e=await k.Z.get(`${_}/api/getPandoraNext`,{headers:Hu}),l=e.data.data;null!=l&&(Eu.value=`${l.current}/${l.total}`)}catch(l){console.error("An error occurred:",l)}finally{e.close()}}));const Ru=({row:e})=>0==e.checkSession?"warning-row":"",Yu=({row:e})=>0==e.checkPool?"warning-row":"",Xu=()=>{window.open(Tt.value)},Fu=()=>{var e=Tt.value;"/"!==e.charAt(e.length-1)&&(e+="/"),window.open(e+"shared.html")},Gu=()=>{var e=Tt.value;"/"!==e.charAt(e.length-1)&&(e+="/"),window.open(e+"setup")},Qu=()=>{window.open("https://apifox.com/apidoc/shared-40345b46-9c9c-45cc-b494-6a6a387a978f")},ei=(0,h.iH)("-1");let li="";const ai=(e,l)=>{console.log("选择准备!")},oi=()=>{Vn.value=!0},ni=()=>{const e=V.kN.service({fullscreen:!0}),l=new Date,a=`${l.getFullYear()}-${(l.getMonth()+1).toString().padStart(2,"0")}-${l.getDate().toString().padStart(2,"0")} ${l.getHours().toString().padStart(2,"0")}:${l.getMinutes().toString().padStart(2,"0")}:${l.getSeconds().toString().padStart(2,"0")}`;""!=wu.value&&(cu.value=!1,vu.value=!1,pu.value=!1),0==hu.value&&(mu.value=su.value+","+du.value,_u.value=!1,cu.value=!1,vu.value=!1,pu.value=!1);let o={name:ru.value,token:mu.value,username:su.value,userPassword:du.value,shared:cu.value,auto_shared:cu.value,show_user_info:pu.value,plus:vu.value,setPoolToken:hu.value,useRefreshToken:_u.value,password:wu.value,updateTime:a};fetch(`${_}/api/addToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(o)}).then((e=>e.json())).then((l=>{1==l.code?(f.z8.success("添加成功!"),ru.value="",mu.value="",su.value="",du.value="",cu.value=!1,pu.value=!1,vu.value=!1,hu.value=!1,_u.value=!1,wu.value="",""==o.token&&(o.token=l.data,f.z8.success("已为您自动装填token!"))):f.z8.error(l.msg),wu.value="",Su(""),e.close()})).catch((l=>{f.z8.error("获取账号出现问题,请检查刷新网址是否正确!"),e.close()})),Vn.value=!1},ti=(0,h.iH)(null),ui=async e=>{if(Jt.value=e.name,Yt.value=e.username,Xt.value=e.userPassword,Kt.value=e.token,Et.value=e.access_token,Rt.value=e.share_token,Ft.value=e.shared,Gt.value=e.show_user_info,Qt.value=e.plus,eu.value=e.password,lu.value=e.setPoolToken,au.value=e.useRefreshToken,ou.value=e.checkSession,1!=lu.value)return void(Wn.value=!0);const l={Authorization:`Bearer ${e.access_token}`};if(Wn.value=!0,lu.value){const a=await k.Z.get(`${Bt.value}/api/token/info/${e.share_token}`,{headers:l});let o=[],n=[];for(let e in a.data.usage)e.startsWith("range")||(n.push(e),o.push(a.data.usage[e]));0==n.length&&0==o.length&&(n=["gpt-4","gpt-3.5-turbo","gpt-3.5-turbo-0613"],o=[0,0,0]);const t=T.S1(ti.value),u={title:{text:`今日${a.data.usage["range"]} ${Jt.value}各模型用量`,textStyle:{fontSize:14,color:"#606266"},left:"center",top:"bottom"},tooltip:{},legend:{data:n},xAxis:{data:n},yAxis:{},series:[{name:"对话数量",type:"bar",data:o,barWidth:"25%",itemStyle:{color:function(e){const l=["#3498db","#2ecc71","#f1c40f","#9b59b6","#1abc9c","#e67e22","#ecf0f1","#95a5a6","#34495e","#16a085"];return l[e.dataIndex%l.length]}}}]};t.setOption(u)}},ii=(0,h.iH)(""),ri=(0,h.iH)(""),si=(0,h.iH)(""),di=(0,h.iH)(""),mi=(0,h.iH)([]),ci=(0,h.iH)(""),pi=(0,h.iH)(""),vi=(0,h.iH)(""),hi=(0,h.iH)(["default","svip","vip"]),_i=(0,h.iH)(""),wi=e=>{ii.value=e.oneApi_name,ri.value=e.token_name,si.value=e.token_value,di.value=e.oneApi_baseUrl,pi.value=e.oneApi_models,ci.value=e.model_mapping,vi.value=e.oneApi_groups,Dt.value=e.priority,_i.value=e.shareTime,In.value=!0};let ki=!1,gi=!1,fi="";const bi=(e,l)=>{Jt.value=l.name,Yt.value=l.username,Xt.value=l.userPassword,Kt.value=l.token,li=l.token,Ft.value=l.shared,Gt.value=l.show_user_info,Qt.value=l.plus,eu.value=l.password,lu.value=l.setPoolToken,au.value=l.useRefreshToken,ki=lu.value,gi=au.value,fi=Kt.value,ou.value=l.checkSession,Et.value=l.access_token,Rt.value=l.share_token,yn.value=!0},yi=async e=>{0==e?Tn.value=!0:1==e?xn.value=!0:2==e&&(Un.value=!0)},Vi=e=>{const l=V.kN.service({fullscreen:!0});null!=vt.value&&"null"!=vt.value||(vt.value=""),0==at.value&&(ot.value="",nt.value="");const a={enabled:at.value,cert_file:ot.value,key_file:nt.value},o={provider:ht.value,site_key:_t.value,site_secret:wt.value,site_login:kt.value,setup_login:gt.value,oai_username:ft.value,oai_password:bt.value},n={proxy_api_prefix:Kn.value,isolated_conv_title:En.value,bing:Rn.value,timeout:Yn.value,proxy_url:Xn.value,public_share:Fn.value,site_password:tt.value,setup_password:ut.value,loginUsername:it.value,loginPassword:rt.value,license_id:st.value,disable_signup:Gn.value,auto_conv_arkose:Qn.value,proxy_file_service:et.value,custom_doh_host:lt.value,isGetToken:dt.value,getTokenPassword:mt.value,containerName:ct.value,autoToken_url:pt.value,whitelist:vt.value,validation:o,tls:a};fetch(`${_}/api/requireSetting`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(n)}).then((e=>e.json())).then((e=>{1==e.code?f.z8.success(e.data):f.z8.error(e.msg),Au(),l.close()})).catch((e=>{l.close(),console.error("请求requireSetting接口失败",e),f.z8.error("修改失败!")})),0==e?Tn.value=!1:1==e?xn.value=!1:2==e&&(Un.value=!1)},Wi=()=>{const e=V.kN.service({fullscreen:!0});"/"!==Tt.value.charAt(Tt.value.length-1)&&(Tt.value+="/");const l={auto_updateSession:yt.value,auto_updateTime:Vt.value,auto_updateNumber:Wt.value,pandoraNext_outUrl:Tt.value,oneAPi_outUrl:xt.value,oneAPi_intoToken:Ut.value};fetch(`${_}/api/controllerTask`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>e.json())).then((l=>{1==l.code?f.z8.success(l.data):f.z8.error(l.msg),e.close()})).catch((l=>{e.close(),console.error("请求controllerTask接口失败",l),f.z8.error("修改失败!")})),zn.value=!1},Ti=()=>{const e=V.kN.service({fullscreen:!0});let l="";if(li!=Kt.value){const e=new Date;l=`${e.getFullYear()}-${(e.getMonth()+1).toString().padStart(2,"0")}-${e.getDate().toString().padStart(2,"0")} ${e.getHours().toString().padStart(2,"0")}:${e.getMinutes().toString().padStart(2,"0")}:${e.getSeconds().toString().padStart(2,"0")}`}0==lu.value&&(Ft.value=!1,Qt.value=!1,Gt.value=!1,au.value=!1),!0===Ft.value?eu.value="":(Qt.value=!1,Gt.value=!1);let a="";a=ki!=lu.value&&fi==Kt.value?0==lu.value?"您确定要关闭API模型开启web模式,您将无法生成任何的token,但不消耗额度!":1==au.value?"您确定要开启API模式,并使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!":"您确定要开启API模式,并使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!":gi!=au.value&&fi==Kt.value?1==au.value?"您确定要切换使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!":"您确定要切换使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!":"修改将要提交,您确定修改好了吗?",g.T.confirm(a,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const l={name:Jt.value,token:Kt.value,username:Yt.value,userPassword:Xt.value,shared:Ft.value,auto_shared:Ft.value,show_user_info:Gt.value,plus:Qt.value,setPoolToken:lu.value,useRefreshToken:au.value,checkSession:ou.value,password:eu.value,access_token:Et.value,share_token:Rt.value};fetch(`${_}/api/requiredToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>e.json())).then((l=>{1==l.code?(f.z8.success(l.data),Su("")):f.z8.error(l.msg),e.close()})).catch((l=>{e.close(),console.error("请求requireToken接口失败",l),f.z8.error("修改失败!")})),yn.value=!1})).catch((()=>{e.close(),(0,f.z8)({type:"info",message:"编辑取消!"})}))},xi=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`${_}/api/open`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?g.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.data.msg),e.close()},Ui=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`${_}/api/close`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?g.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.data.msg),e.close()},Hi=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`${_}/api/restart`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?g.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.data.msg),e.close()},Ai=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`${_}/api/reload`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?g.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.data.msg),e.close()},zi=(0,h.iH)(""),Pi=(0,h.iH)(""),Si=async()=>{const e=await k.Z.get(`${_}/api/getPandoraNext`,{headers:Hu}),l=e.data.data;if(null!=l){Eu.value=l.current+"/"+l.total,zi.value=l.ip;var a=new Date;const e=new Date(a.getTime()+1e3*l.ttl);var o=e.getFullYear(),n=e.getMonth()+1,t=e.getDate(),u=e.getHours(),i=e.getMinutes(),r=e.getSeconds();Pi.value=o+"-"+n+"-"+t+" "+u+":"+i+":"+r}An.value=!0},Ni=async()=>{let e="全部检查并生成可能会加载1-3分钟,请您耐心等待!";g.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((async()=>{const e=V.kN.service({fullscreen:!0,text:"正在加载中,请耐心等待..."}),l=await k.Z.get(`${_}/api/updateAllToken`,{headers:Hu}),a=l.data.data;null!=a&&""!=a?(await Promise.all([Su(""),$u("")]),g.T.alert(a,"温馨提示",{dangerouslyUseHTMLString:!0})):f.z8.error(l.data.msg),e.close()})).catch((()=>{(0,f.z8)({type:"info",message:"全部检查并生成取消!"})}))},Oi=e=>{if(0==e.setPoolToken)return void f.z8.error("未开启API模式,无法刷新");let l="您确定要刷新session_token吗,刷新session_token消耗100额度,请您要仔细认真考虑哦!";e.useRefreshToken&&(l="您确定要刷新refresh_token吗,刷新refresh_token消耗1000额度,请您要仔细认真考虑哦!"),g.T.confirm(l,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const l=V.kN.service({fullscreen:!0});fetch(`${_}/api/updateSessionToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((a=>{null!=a&&""!=a&&(null!=a.data?(e.token=a.data,Su(""),g.T.alert("刷新成功!","温馨提醒",{confirmButtonText:"OK"})):f.z8.error(a.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))})).catch((()=>{(0,f.z8)({type:"info",message:"刷新取消!"})}))},Ci=e=>{const l=V.kN.service({fullscreen:!0});fetch(`${_}/api/refreshSimplyPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?($u(""),g.T.alert("刷新成功!","温馨提醒",{confirmButtonText:"OK"})):f.z8.error(e.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},$i=e=>{ii.value=e.oneApi_name,ri.value=e.token_name,si.value=e.token_value,di.value=e.oneApi_baseUrl,mi.value=e.oneApi_models.split(","),ci.value=e.model_mapping,hi.value=e.oneApi_groups.split(","),Dt.value=e.priority,_i.value=e.shareTime,Bn.value=!0},Ii=()=>{const e=V.kN.service({fullscreen:!0}),l={oneApi_name:ii.value,token_name:ri.value,token_value:si.value,oneApi_baseUrl:di.value,oneApi_models:mi.value.toString(),model_mapping:ci.value,oneApi_groups:hi.value.toString(),priority:Dt.value};fetch(`${_}/api/requireShareToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?g.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"}):f.z8.error(l.msg)),Iu(""),e.close()})).catch((l=>{e.close(),console.error("Error:",l)})),Bn.value=!1},Bi=e=>{if(0==e.setPoolToken)return void f.z8.error("未开启API模式,无法生成");const l=V.kN.service({fullscreen:!0});fetch(`${_}/api/updateToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?g.T.alert("生成shareToken成功!","温馨提醒",{confirmButtonText:"OK"}):f.z8.error(e.msg)),Su(""),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},Di=e=>{const l=V.kN.service({fullscreen:!0});fetch(`${_}/api/changePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?($u(""),g.T.alert("更换pool_token成功!","温馨提醒",{confirmButtonText:"OK"})):f.z8.error(e.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},qi=(e,l)=>{const a=V.kN.service({fullscreen:!0});g.T.confirm("您确定要删除这个Pool_Token吗,删除之后就找不到咯,请您要仔细认真考虑哦!","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{fetch(`${_}/api/deletePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e.data?($u(""),f.z8.success(e.data),a.close()):($u(""),f.z8.error(e.msg),a.close()),Pn.value=!1})).catch((e=>{console.error("删除失败",e),$u(""),a.close(),Pn.value=!1}))})).catch((()=>{a.close(),(0,f.z8)({type:"info",message:"删除取消!"})}))},ji=(e,l)=>{const a=V.kN.service({fullscreen:!0});fetch(`${_}/api/verifySimplyPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?($u(""),g.T.alert(e.data,"温馨提醒",{confirmButtonText:"OK"})):($u(""),f.z8.error(e.msg))),a.close()})).catch((e=>{a.close(),console.error("Error:",e)}))},Li=(e,l)=>{const a=V.kN.service({fullscreen:!0});let o="";g.T.confirm("您确定要删除这个Token吗,删除之后就找不到咯,记得点击全部刷新poolToken","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`${_}/api/deleteToken`,l,{headers:Hu}).then((async e=>{1==l.setPoolToken&&await k.Z.get(`${_}/api/updateAllPoolToken`,{headers:Hu}),o=e.data.data,Su(""),(0,f.z8)({type:"success",message:o}),a.close()})).catch((e=>{a.close(),console.error("删除失败",e)}))})).catch((()=>{(0,f.z8)({type:"info",message:"删除取消!"}),a.close()}))},Mi=(e,l)=>{const a=V.kN.service({fullscreen:!0});let o="";g.T.confirm("您确定要删除这个share_Token吗,删除之后就找不到咯","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`${_}/api/deleteShareToken`,l,{headers:Hu}).then((async e=>{o=e.data.data,Iu(""),(0,f.z8)({type:"success",message:o}),a.close()})).catch((e=>{a.close(),console.error("删除失败",e)}))})).catch((()=>{(0,f.z8)({type:"info",message:"删除取消!"}),a.close()}))},Zi=e=>{if(!e)return"";var l=new Date;const a=(0,b.Z)(e.updateTime),o=(0,y.Z)(l,a);return e.token.length>=2e3?o>=80?"已经过去了至少80天":Math.ceil(80-o)+"天":e.token.length<200&&!e.token.includes("fk-")?"永久":o>=10?"已经过去了至少10天":Math.ceil(10-o)+"天"},Ji=()=>{localStorage.removeItem("jwtToken"),bn.replace("/")},Ki=()=>{Hn.value=!0},Ei=async()=>{await Iu(""),Cn.value=!0},Ri=()=>{Cu(),Sn.value=!0},Yi=e=>{const l=document.createElement("textarea");l.value=e,document.body.appendChild(l),l.select(),document.execCommand("copy"),document.body.removeChild(l),(0,f.z8)({type:"success",message:"复制成功!"})},Xi=e=>{const l=wn.value,a=l.map((e=>e));if(0!==l.length)if("选中删除Token"!=e)if("选中刷新Token"!=e)"选中合成pool_token"==e?qu():"选中修改pool_token"==e&&(Ht.value="",zt.value="",qt.value="",Pt.value="",Nt.value=!1,Ct.value=[],Ot.value="",Bt.value="",vn.value=[],Dt.value=0,Nn.value=!0);else{let e=0;const l=wn.value,a=l.map((e=>e));a.forEach(((l,a)=>{l.setPoolToken&&(l.useRefreshToken?e+=1e3:e+=100)}));const o="您确定要花"+e+"积分刷新这"+l.length+"个Token吗,请您要仔细认真考虑哦!";g.T.confirm(o,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`${_}/api/updateSessionTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(Su(""),g.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"刷新取消!"})}))}else{const e=V.kN.service({fullscreen:!0});let o="";g.T.confirm("您确定要删除这"+l.length+"个Token吗,删除之后就找不到咯","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`${_}/api/deleteTokenList`,a,{headers:Hu}).then((async l=>{await k.Z.get(`${_}/api/updateAllPoolToken`,{headers:Hu}),o=l.data.data,Su(""),(0,f.z8)({type:"success",message:o}),e.close()})).catch((l=>{e.close(),console.error("删除失败",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"删除取消!"}),e.close()}))}else(0,f.z8)("未选择数据")},Fi=e=>{At.value=e.poolName,zt.value=e.shareTokens,qt.value=e.poolToken,Pt.value=e.poolTime,Nt.value=e.intoOneApi,Ct.value=e.poolOneApi_models.split(","),Ot.value=e.poolModel_mapping,Bt.value=e.oneApi_pandoraUrl,vn.value=e.groupChecked.split(","),Dt.value=e.priority,Dn.value=!0},Gi=e=>{const l=kn.value,a=l.map((e=>e));if(0!==a.length)if("选中检查pool_token"!=e)if("选中刷新pool_token"!=e)if("选中更换pool_token"!=e)if("选中删除pool_token"!=e);else{l.length;const e="您确定要删除这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";g.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`${_}/api/deletePoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?($u(""),g.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"删除取消!"})}))}else{l.length;const e="您确定要更换这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";g.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`${_}/api/changePoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?($u(""),g.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"更换取消!"})}))}else{const e="您确定要刷新这"+l.length+"个pool_token吗?";g.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`${_}/api/refreshSimplyPoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?($u(""),g.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"刷新取消!"})}))}else{let e=4*l.length;const o="您确定要花"+e+"积分检查这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";g.T.confirm(o,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`${_}/api/verifySimplyPoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Uu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?($u(""),g.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):f.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,f.z8)({type:"info",message:"检查取消!"})}))}else(0,f.z8)("未选择数据")},Qi=(0,h.iH)(null),er=async()=>{On.value=!0;const e=await k.Z.get(`${_}/api/modelsUsage`,{headers:Hu});let l=e.data.data.map((e=>e.usage)),a=e.data.data.map((e=>e.model));const o=T.S1(Qi.value),n={title:{text:"copilot每日对话统计",fontSize:18,color:"#606266"},tooltip:{},legend:{data:a},xAxis:{data:a},yAxis:{},series:[{name:"对话数量",type:"bar",data:l,barWidth:"40%",itemStyle:{color:function(e){const l=["#3498db","#2ecc71","#f1c40f","#9b59b6","#1abc9c","#e67e22","#ecf0f1","#95a5a6","#34495e","#16a085"];return l[e.dataIndex%l.length]}}}]};o.setOption(n)};return(e,l)=>{const a=c.JO,_=(0,p.up)("el-menu-item"),w=(0,p.up)("el-sub-menu"),k=(0,p.up)("el-menu"),g=m.zx,f=(0,p.up)("el-page-header"),b=d.ol,y=(0,p.up)("el-table-column"),V=(0,p.up)("el-button"),T=(0,p.up)("el-tag"),wn=(0,p.up)("el-popover"),kn=(0,p.up)("el-option"),bn=(0,p.up)("el-select"),Pt=s.gN,ou=r.rs,Uu=i.TS,Hu=u.l0,Au=t.Vq,Su=(0,p.up)("CopyDocument"),Nu=(0,p.up)("el-icon"),Ou=(0,p.up)("h10"),Cu=(0,p.up)("el-select-group"),$u=(0,p.up)("el-dialog"),Iu=(0,p.up)("el-form-item"),Bu=(0,p.up)("el-input"),Du=n.XZ,qu=o.cO,li=(0,p.Q2)("loading");return(0,p.wg)(),(0,p.iD)(p.HY,null,[(0,p._)("div",x,[U,(0,p.Wm)(k,{"default-active":ei.value,class:"el-menu-demo",mode:"horizontal",ellipsis:!1,onSelect:ai,"active-text-color":"#0ea27e","text-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"0"},{title:(0,p.w5)((()=>[(0,p._)("div",A,[(0,p._)("h2",null,(0,v.zw)(Eu.value),1)]),(0,p.Wm)(a,{name:"replay",size:"20",onClick:Si})])),default:(0,p.w5)((()=>[H])),_:1}),z,(0,p.Wm)(w,{index:"3"},{title:(0,p.w5)((()=>[(0,p.Uk)("列表")])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"3-3",onClick:Ni},{default:(0,p.w5)((()=>[(0,p.Uk)("全部检查并生成")])),_:1}),(0,p.Wm)(_,{index:"3-1",onClick:Ki},{default:(0,p.w5)((()=>[(0,p.Uk)("pool_token列表")])),_:1}),(0,p.Wm)(_,{index:"3-2",onClick:Ei},{default:(0,p.w5)((()=>[(0,p.Uk)("share_token列表")])),_:1}),(0,p.Wm)(_,{index:"3-5",onClick:er},{default:(0,p.w5)((()=>[(0,p.Uk)("copilot每日用量统计")])),_:1}),(0,p.Wm)(_,{index:"3-4",onClick:Ri},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool登录日志")])),_:1})])),_:1}),(0,p.Wm)(w,{index:"1"},{title:(0,p.w5)((()=>[(0,p.Uk)("设置")])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"1-1",onClick:l[0]||(l[0]=e=>yi(mn))},{default:(0,p.w5)((()=>[(0,p.Uk)("PandoraNext设置")])),_:1}),(0,p.Wm)(_,{index:"1-2",onClick:l[1]||(l[1]=e=>yi(cn))},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool设置")])),_:1}),(0,p.Wm)(_,{index:"1-3",onClick:l[2]||(l[2]=e=>yi(pn))},{default:(0,p.w5)((()=>[(0,p.Uk)("验证码信息设置")])),_:1}),(0,p.Wm)(_,{index:"1-4",onClick:l[3]||(l[3]=e=>zn.value=!0)},{default:(0,p.w5)((()=>[(0,p.Uk)("定时&接口设置")])),_:1}),(0,p.Wm)(_,{index:"1-5",onClick:Qu},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool使用手册")])),_:1})])),_:1}),(0,p.Wm)(w,{index:"2"},{title:(0,p.w5)((()=>[(0,p.Uk)("状态")])),default:(0,p.w5)((()=>[(0,p.Wm)(w,{index:"2-1"},{title:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(ct.value)+"状态",1)])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"2-1-1",onClick:xi},{default:(0,p.w5)((()=>[(0,p.Uk)("开启"+(0,v.zw)(ct.value),1)])),_:1}),(0,p.Wm)(_,{index:"2-1-2",onClick:Ui},{default:(0,p.w5)((()=>[(0,p.Uk)("暂停"+(0,v.zw)(ct.value),1)])),_:1}),(0,p.Wm)(_,{index:"2-1-3",onClick:Hi},{default:(0,p.w5)((()=>[(0,p.Uk)("重启"+(0,v.zw)(ct.value),1)])),_:1}),(0,p.Wm)(_,{index:"2-1-4",onClick:Ai},{default:(0,p.w5)((()=>[(0,p.Uk)("重载"+(0,v.zw)(ct.value),1)])),_:1})])),_:1}),(0,p.Wm)(w,{index:"2-2"},{title:(0,p.w5)((()=>[(0,p.Uk)("跳转Web服务")])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"2-2-1",onClick:Xu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(ct.value)+"主页",1)])),_:1}),(0,p.Wm)(_,{index:"2-2-2",onClick:Fu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(ct.value)+"共享页",1)])),_:1}),(0,p.Wm)(_,{index:"2-2-3",onClick:Gu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(ct.value)+"修改页",1)])),_:1})])),_:1}),(0,p.Wm)(w,{index:"2-3"},{title:(0,p.w5)((()=>[(0,p.Uk)("获取token地址")])),default:(0,p.w5)((()=>[(0,p.Wm)(_,{index:"2-3-1"},{default:(0,p.w5)((()=>[P])),_:1}),(0,p.Wm)(_,{index:"2-3-2"},{default:(0,p.w5)((()=>[S])),_:1}),(0,p.Wm)(_,{index:"2-3-3"},{default:(0,p.w5)((()=>[N])),_:1})])),_:1}),(0,p.Wm)(_,{index:"2-4",onClick:Ji},{default:(0,p.w5)((()=>[(0,p.Uk)("退出登录")])),_:1})])),_:1})])),_:1},8,["default-active"]),(0,p._)("div",O,[(0,p.Wm)(f,{icon:null,title:" "},{content:(0,p.w5)((()=>[C])),extra:(0,p.w5)((()=>[(0,p._)("div",{class:"addToken",onClick:oi},[(0,p.Wm)(g,{square:"",icon:"add-o",color:"#0ea27e",class:"addTokenButton"})])])),_:1})]),(0,p._)("div",$,[(0,p._)("div",I,[(0,p._)("div",B,[(0,p.Wm)(b,{modelValue:Tu.value,"onUpdate:modelValue":l[4]||(l[4]=e=>Tu.value=e),shape:"round",clearable:"",placeholder:"请输入搜索token名称或类型",onSearch:zu},null,8,["modelValue"])]),(0,p._)("div",D,[(0,p.wy)(((0,p.wg)(),(0,p.j4)((0,h.SU)(W.eI),{data:nu.value,style:{width:"100%"},onSelectionChange:gn,class:"tokenTable","default-sort":{prop:"updateTime",prop:"setPoolToken"},"row-class-name":Ru},{default:(0,p.w5)((()=>[(0,p.Wm)(y,{type:"selection",width:"45"}),(0,p.Wm)(y,{label:"名称",width:"160",prop:"setPoolToken",sortable:""},{default:(0,p.w5)((e=>[(0,p._)("div",q,[(0,p._)("div",null,[(0,p.Wm)(V,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[(0,p._)("h5",null,(0,v.zw)(e.row.setPoolToken?e.row.useRefreshToken?"refAPI":"sesAPI":"Web"),1)])),_:2},1024)]),(0,p._)("span",j,(0,v.zw)(e.row.name),1)])])),_:1}),(0,p.Wm)(y,{prop:"updateTime",sortable:"",label:"有效时间",width:"117"},{default:(0,p.w5)((e=>[(0,p.Wm)(wn,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p._)("div",null,"注册时间:"+(0,v.zw)(e.row.updateTime),1)])),reference:(0,p.w5)((()=>[(0,p._)("span",L,[(0,p.Wm)(T,null,{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(Zi(e.row)),1)])),_:2},1024)])])),_:2},1024)])),_:1}),(0,p.Wm)(y,{label:"操作方法",width:"370"},{default:(0,p.w5)((e=>[(0,p.Wm)(V,{size:"small",onClick:l=>bi(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("编辑")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"primary",onClick:l=>ui(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"danger",onClick:l=>Li(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"success",onClick:l=>Oi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("刷新")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"warning",onClick:l=>Bi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("生成")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])),[[li,e.loading]])]),(0,p._)("div",M,[(0,p.Wm)(bn,{modelValue:qn.value,"onUpdate:modelValue":l[5]||(l[5]=e=>qn.value=e),clearable:"",filterable:"",placeholder:"请选择批量操作"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(jn,(e=>(0,p.Wm)(kn,{key:e.buttonValue,label:e.label,value:e.buttonValue},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),(0,p.Wm)(V,{class:"my-button",onClick:l[6]||(l[6]=e=>Xi(qn.value))},{default:(0,p.w5)((()=>[Z])),_:1})])])]),J]),(0,p.Wm)(Au,{show:yn.value,"onUpdate:show":l[17]||(l[17]=e=>yn.value=e),title:"📌修改token信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",K,[(0,p.Wm)(Hu,{onSubmit:l[16]||(l[16]=e=>Ti())},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[E,(0,p.Wm)(Pt,{modelValue:Yt.value,"onUpdate:modelValue":l[7]||(l[7]=e=>Yt.value=e),name:"OpenAi邮箱",label:"OpenAi邮箱","input-align":"center",placeholder:"OpenAi邮箱",rules:[{required:!0,message:"请填写OpenAi邮箱"}]},null,8,["modelValue"]),R,(0,p.Wm)(Pt,{modelValue:Xt.value,"onUpdate:modelValue":l[8]||(l[8]=e=>Xt.value=e),name:"OpenAi密码","input-align":"center",label:"OpenAi密码",placeholder:"OpenAi密码",rules:[{required:!0,message:"请填写OpenAi密码"}]},null,8,["modelValue"]),Y,(0,p.Wm)(Pt,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:lu.value,"onUpdate:modelValue":l[9]||(l[9]=e=>lu.value=e)},null,8,["modelValue"])])),_:1}),1==lu.value?((0,p.wg)(),(0,p.iD)("div",X,[F,(0,p.Wm)(Pt,{name:"switch",label:"是否使用refreshToken"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:au.value,"onUpdate:modelValue":l[10]||(l[10]=e=>au.value=e)},null,8,["modelValue"])])),_:1}),G,(0,p.Wm)(Pt,{name:"switch",label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Ft.value,"onUpdate:modelValue":l[11]||(l[11]=e=>Ft.value=e)},null,8,["modelValue"])])),_:1}),1==Ft.value?((0,p.wg)(),(0,p.iD)("div",Q,[ee,(0,p.Wm)(Pt,{name:"switch",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Gt.value,"onUpdate:modelValue":l[12]||(l[12]=e=>Gt.value=e)},null,8,["modelValue"])])),_:1}),le,(0,p.Wm)(Pt,{name:"switch",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Qt.value,"onUpdate:modelValue":l[13]||(l[13]=e=>Qt.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0)])):(0,p.kq)("",!0),0==Ft.value||0==lu.value?((0,p.wg)(),(0,p.iD)("div",ae,[oe,(0,p.Wm)(Pt,{rows:"2",type:"textarea",autoSize:"",modelValue:eu.value,"onUpdate:modelValue":l[14]||(l[14]=e=>eu.value=e),name:"Token的密码","input-align":"center",label:"Token的密码",placeholder:"填了将不会分享给他人(如不填则输入Token名即可进入)",rules:[{validator:Zt}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),ne,(0,p.Wm)(Pt,{modelValue:Kt.value,"onUpdate:modelValue":l[15]||(l[15]=e=>Kt.value=e),label:"Token的值",type:"textarea","input-align":"center",maxlength:"5000",placeholder:"请填写OpenAi的Token(选填),session或refresh_token",autosize:{maxHeight:100,minHeight:50},"show-word-limit":""},null,8,["modelValue"]),te])),_:1}),(0,p._)("div",ue,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),ie])),_:1},8,["show"]),(0,p.Wm)(Au,{show:Vn.value,"onUpdate:show":l[29]||(l[29]=e=>Vn.value=e),title:"✨添加token信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"addTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",re,[(0,p.Wm)(Hu,{onSubmit:l[28]||(l[28]=e=>ni())},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[se,(0,p.Wm)(Pt,{modelValue:ru.value,"onUpdate:modelValue":l[18]||(l[18]=e=>ru.value=e),name:"Token用户名",label:"Token用户名",placeholder:"Token用户名",rules:[{required:!0,message:"请填写Token用户名"}]},null,8,["modelValue"]),de,(0,p.Wm)(Pt,{modelValue:su.value,"onUpdate:modelValue":l[19]||(l[19]=e=>su.value=e),name:"OpenAi用户名",label:"OpenAi用户名",placeholder:"OpenAi用户名",rules:[{required:!0,message:"请填写OpenAi用户名"}]},null,8,["modelValue"]),me,(0,p.Wm)(Pt,{modelValue:du.value,"onUpdate:modelValue":l[20]||(l[20]=e=>du.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码",rules:[{required:!0,message:"请填写OpenAi密码"}]},null,8,["modelValue"]),ce,(0,p.Wm)(Pt,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:hu.value,"onUpdate:modelValue":l[21]||(l[21]=e=>hu.value=e)},null,8,["modelValue"])])),_:1}),1==hu.value?((0,p.wg)(),(0,p.iD)("div",pe,[ve,(0,p.Wm)(Pt,{name:"switch",label:"是否使用refreshToken"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:_u.value,"onUpdate:modelValue":l[22]||(l[22]=e=>_u.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0),1==hu.value?((0,p.wg)(),(0,p.iD)("div",he,[_e,(0,p.Wm)(Pt,{name:"switch",label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:cu.value,"onUpdate:modelValue":l[23]||(l[23]=e=>cu.value=e)},null,8,["modelValue"])])),_:1}),1==cu.value?((0,p.wg)(),(0,p.iD)("div",we,[ke,(0,p.Wm)(Pt,{name:"switch",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:pu.value,"onUpdate:modelValue":l[24]||(l[24]=e=>pu.value=e)},null,8,["modelValue"])])),_:1}),ge,(0,p.Wm)(Pt,{name:"switch",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:vu.value,"onUpdate:modelValue":l[25]||(l[25]=e=>vu.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0)])):(0,p.kq)("",!0),""==cu.value?((0,p.wg)(),(0,p.iD)("div",fe,[be,(0,p.Wm)(Pt,{rows:"3",type:"textarea",autoSize:"",modelValue:wu.value,"onUpdate:modelValue":l[26]||(l[26]=e=>wu.value=e),name:"Token的密码",label:"Token的密码","input-align":"center",placeholder:"填了将不会分享给他人(如不填则输入Token名即可进入)",rules:[{validator:Zt}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),1==hu.value?((0,p.wg)(),(0,p.iD)("div",ye,[Ve,(0,p.Wm)(Pt,{rows:"3",type:"textarea",maxlength:"5000","show-word-limit":"",modelValue:mu.value,"onUpdate:modelValue":l[27]||(l[27]=e=>mu.value=e),name:"Token的值",label:"Token的值",placeholder:"选填(可不填,不填则使用账号密码),目前只支持session_token或refresh_token"},null,8,["modelValue"])])):(0,p.kq)("",!0),We])),_:1}),(0,p._)("div",Te,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),xe])),_:1},8,["show"]),(0,p.Wm)(Au,{show:Wn.value,"onUpdate:show":l[49]||(l[49]=e=>Wn.value=e),title:"🔎token信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"showDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Ue,[(0,p.Wm)(Hu,null,{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[He,(0,p.Wm)(Pt,{modelValue:Jt.value,"onUpdate:modelValue":l[30]||(l[30]=e=>Jt.value=e),name:"Token用户名",label:"Token用户名",placeholder:"Token用户名","left-icon":"description-o","input-align":"center",readonly:!0,onClickLeftIcon:l[31]||(l[31]=e=>Yi(Jt.value))},null,8,["modelValue"]),Ae,(0,p.Wm)(Pt,{modelValue:eu.value,"onUpdate:modelValue":l[32]||(l[32]=e=>eu.value=e),type:"temPassword",name:"Token的密码",label:"Token的密码",placeholder:"Token的密码","input-align":"center","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[33]||(l[33]=e=>Yi(eu.value))},null,8,["modelValue"]),ze,(0,p.Wm)(Pt,{modelValue:Yt.value,"onUpdate:modelValue":l[34]||(l[34]=e=>Yt.value=e),name:"OpenAi邮箱",label:"OpenAi邮箱",placeholder:"OpenAi邮箱","left-icon":"description-o","input-align":"center",readonly:!0,onClickLeftIcon:l[35]||(l[35]=e=>Yi(Yt.value))},null,8,["modelValue"]),Pe,(0,p.Wm)(Pt,{modelValue:Xt.value,"onUpdate:modelValue":l[36]||(l[36]=e=>Xt.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码","left-icon":"description-o","input-align":"center",readonly:!0,onClickLeftIcon:l[37]||(l[37]=e=>Yi(Xt.value))},null,8,["modelValue"]),Se,(0,p.Wm)(Pt,{name:"temShared",readonly:!0,label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:Ft.value,"onUpdate:modelValue":l[38]||(l[38]=e=>Ft.value=e)},null,8,["modelValue"])])),_:1}),Ne,(0,p.Wm)(Pt,{readonly:!0,name:"temShow_user_info",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:Gt.value,"onUpdate:modelValue":l[39]||(l[39]=e=>Gt.value=e)},null,8,["modelValue"])])),_:1}),Oe,(0,p.Wm)(Pt,{readonly:!0,name:"temPlus",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:Qt.value,"onUpdate:modelValue":l[40]||(l[40]=e=>Qt.value=e)},null,8,["modelValue"])])),_:1}),Ce,(0,p.Wm)(Pt,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:lu.value,"onUpdate:modelValue":l[41]||(l[41]=e=>lu.value=e)},null,8,["modelValue"])])),_:1}),$e,(0,p.Wm)(Pt,{name:"switch",label:"是否使用refresh_token"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{disabled:"","active-color":"#0ea27e",modelValue:au.value,"onUpdate:modelValue":l[42]||(l[42]=e=>au.value=e)},null,8,["modelValue"])])),_:1}),Ie,(0,p.Wm)(Pt,{modelValue:Kt.value,"onUpdate:modelValue":l[43]||(l[43]=e=>Kt.value=e),label:"Token的值",type:"textarea",maxlength:"5000",placeholder:"请填写OpenAi的Token(session或refresh_token)","show-word-limit":"","input-align":"center","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[44]||(l[44]=e=>Yi(Kt.value)),autosize:{maxHeight:100,minHeight:50}},null,8,["modelValue"]),1==lu.value?((0,p.wg)(),(0,p.iD)("div",Be,[De,(0,p.Wm)(Pt,{modelValue:Et.value,"onUpdate:modelValue":l[45]||(l[45]=e=>Et.value=e),label:"access_token",type:"textarea",maxlength:"5000","input-align":"center",placeholder:"请填写OpenAi的access_token","show-word-limit":"","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[46]||(l[46]=e=>Yi(Et.value)),autosize:{maxHeight:100,minHeight:50}},null,8,["modelValue"]),qe,(0,p.Wm)(Pt,{modelValue:Rt.value,"onUpdate:modelValue":l[47]||(l[47]=e=>Rt.value=e),label:"share_token",type:"textarea",maxlength:"200","input-align":"center",placeholder:"请填写OpenAi的share_token","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[48]||(l[48]=e=>Yi(Rt.value)),autosize:{maxHeight:100,minHeight:50}},null,8,["modelValue"])])):(0,p.kq)("",!0)])),_:1})])),_:1}),1==lu.value?((0,p.wg)(),(0,p.iD)("div",je,[(0,p._)("div",{ref_key:"chart_show",ref:ti,style:{width:"auto",height:"300px"}},null,512),Le])):(0,p.kq)("",!0)])])),_:1},8,["show"]),(0,p.Wm)(Au,{show:Tn.value,"onUpdate:show":l[64]||(l[64]=e=>Tn.value=e),title:"PandoraNext设置信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Me,[(0,p.Wm)(Hu,{onSubmit:l[63]||(l[63]=e=>Vi(mn))},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[Ze,(0,p.Wm)(Pt,{modelValue:En.value,"onUpdate:modelValue":l[50]||(l[50]=e=>En.value=e),name:"对话标题",label:"对话标题",placeholder:"隔离对话设置标题"},null,8,["modelValue"]),Je,(0,p.Wm)(Pt,{modelValue:Rn.value,"onUpdate:modelValue":l[51]||(l[51]=e=>Rn.value=e),name:"绑定IP和端口",label:"绑定IP和端口",placeholder:"绑定IP和端口(选填)"},null,8,["modelValue"]),Ke,(0,p.Wm)(Pt,{modelValue:lt.value,"onUpdate:modelValue":l[52]||(l[52]=e=>lt.value=e),name:"DoH主机名",label:"DoH主机名",placeholder:"配置自定义的DoH主机名(选填)"},null,8,["modelValue"]),Ee,(0,p.Wm)(Pt,{modelValue:Yn.value,"onUpdate:modelValue":l[53]||(l[53]=e=>Yn.value=e),name:"请求超时时间",label:"请求超时时间",placeholder:"请求超时时间(选填)"},null,8,["modelValue"]),Re,(0,p.Wm)(Pt,{name:"switch",label:"是否分享对话(选填)"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Fn.value,"onUpdate:modelValue":l[54]||(l[54]=e=>Fn.value=e)},null,8,["modelValue"])])),_:1}),Ye,(0,p.Wm)(Pt,{name:"switch",label:"是否配置证书"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:at.value,"onUpdate:modelValue":l[55]||(l[55]=e=>at.value=e)},null,8,["modelValue"])])),_:1}),1==at.value?((0,p.wg)(),(0,p.iD)("div",Xe,[Fe,(0,p.Wm)(Pt,{modelValue:ot.value,"onUpdate:modelValue":l[56]||(l[56]=e=>ot.value=e),name:"证书文件",label:"证书文件",placeholder:"证书文件"},null,8,["modelValue"]),Ge,(0,p.Wm)(Pt,{modelValue:nt.value,"onUpdate:modelValue":l[57]||(l[57]=e=>nt.value=e),name:"密钥文件",label:"密钥文件",placeholder:"密钥文件"},null,8,["modelValue"])])):(0,p.kq)("",!0),Qe,(0,p.Wm)(Pt,{name:"switch",label:"是否禁用注册"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Gn.value,"onUpdate:modelValue":l[58]||(l[58]=e=>Gn.value=e)},null,8,["modelValue"])])),_:1}),el,(0,p.Wm)(Pt,{name:"switch",label:"是否自动打码"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Qn.value,"onUpdate:modelValue":l[59]||(l[59]=e=>Qn.value=e)},null,8,["modelValue"])])),_:1}),ll,(0,p.Wm)(Pt,{name:"switch",label:"使用文件代理服务"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:et.value,"onUpdate:modelValue":l[60]||(l[60]=e=>et.value=e)},null,8,["modelValue"])])),_:1}),al,(0,p.Wm)(Pt,{modelValue:Xn.value,"onUpdate:modelValue":l[61]||(l[61]=e=>Xn.value=e),name:"代理服务URL",label:"代理服务URL",placeholder:"代理服务URL(选填)"},null,8,["modelValue"]),ol,(0,p.Wm)(Pt,{modelValue:vt.value,"onUpdate:modelValue":l[62]||(l[62]=e=>vt.value=e),name:"白名单",label:"白名单",placeholder:"[]限制所有账号(默认为null)"},null,8,["modelValue"]),nl])),_:1}),(0,p._)("div",tl,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),ul])),_:1},8,["show"]),(0,p.Wm)(Au,{show:xn.value,"onUpdate:show":l[76]||(l[76]=e=>xn.value=e),title:"tokensTool设置信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",il,[(0,p.Wm)(Hu,{onSubmit:l[75]||(l[75]=e=>Vi(cn))},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[rl,(0,p.Wm)(Pt,{modelValue:it.value,"onUpdate:modelValue":l[65]||(l[65]=e=>it.value=e),name:"登录用户名",label:"登录用户名",placeholder:"tokensTool用户名"},null,8,["modelValue"]),sl,(0,p.Wm)(Pt,{modelValue:rt.value,"onUpdate:modelValue":l[66]||(l[66]=e=>rt.value=e),name:"登录密码",label:"登录密码",placeholder:"不少于8位,且同时包含数字和字母",rules:[{validator:jt}]},null,8,["modelValue","rules"]),dl,(0,p.Wm)(Pt,{modelValue:Kn.value,"onUpdate:modelValue":l[67]||(l[67]=e=>Kn.value=e),name:"proxy接口前缀",label:"proxy接口前缀",placeholder:"proxy模式接口后缀,不少于8位,且同时包含数字和字母",rules:[{validator:jt}]},null,8,["modelValue","rules"]),ml,(0,p.Wm)(Pt,{modelValue:pt.value,"onUpdate:modelValue":l[68]||(l[68]=e=>pt.value=e),name:"proxy模式URL",label:"proxy模式URL",placeholder:"http(s)://(ip:port或者域名)/后缀,同公网服务器填default"},null,8,["modelValue"]),cl,(0,p.Wm)(Pt,{modelValue:ut.value,"onUpdate:modelValue":l[69]||(l[69]=e=>ut.value=e),name:"重载服务密码",label:"重载服务密码",placeholder:"PandoraNext重载服务密码,不少于8位,且同时包含数字和字母",rules:[{validator:jt}]},null,8,["modelValue","rules"]),pl,(0,p.Wm)(Pt,{modelValue:tt.value,"onUpdate:modelValue":l[70]||(l[70]=e=>tt.value=e),name:"访问密码",label:"访问密码",placeholder:"PandoraNext访问密码,建议开启访问密码",rules:[{validator:Lt}]},null,8,["modelValue","rules"]),vl,(0,p.Wm)(Pt,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:st.value,"onUpdate:modelValue":l[71]||(l[71]=e=>st.value=e),name:"验证licenseId",label:"验证licenseId",placeholder:"验证licenseId(github上拿到的license_id)"},null,8,["modelValue"]),hl,(0,p.Wm)(Pt,{name:"switch",label:"tokensTool接口"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:dt.value,"onUpdate:modelValue":l[72]||(l[72]=e=>dt.value=e)},null,8,["modelValue"])])),_:1}),1==dt.value?((0,p.wg)(),(0,p.iD)("div",_l,[wl,(0,p.Wm)(Pt,{modelValue:mt.value,"onUpdate:modelValue":l[73]||(l[73]=e=>mt.value=e),name:"接口密码",label:"接口密码",placeholder:"tokensTool接口密码,用于获取tokens,不少于8位,且同时包含数字和字母",rules:[{validator:jt}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),kl,(0,p.Wm)(Pt,{modelValue:ct.value,"onUpdate:modelValue":l[74]||(l[74]=e=>ct.value=e),name:"监管容器名",label:"监管容器名",placeholder:"监管运行的容器名或文件名,默认为PandoraNext",rules:[{required:!0,message:"请填写监管的容器名"}]},null,8,["modelValue"]),gl])),_:1}),(0,p._)("div",fl,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),bl])),_:1},8,["show"]),(0,p.Wm)(Au,{show:Un.value,"onUpdate:show":l[85]||(l[85]=e=>Un.value=e),title:"PandoraNext验证信息",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",yl,[(0,p.Wm)(Hu,{onSubmit:l[84]||(l[84]=e=>Vi(pn))},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[Vl,(0,p.Wm)(Pt,{modelValue:ht.value,"onUpdate:modelValue":l[77]||(l[77]=e=>ht.value=e),name:"验证码提供商",label:"验证码提供商",placeholder:"验证码提供商"},null,8,["modelValue"]),Wl,(0,p.Wm)(Pt,{modelValue:_t.value,"onUpdate:modelValue":l[78]||(l[78]=e=>_t.value=e),name:"验证码网站参数",label:"验证码网站参数",placeholder:"验证码网站参数"},null,8,["modelValue"]),Tl,(0,p.Wm)(Pt,{modelValue:wt.value,"onUpdate:modelValue":l[79]||(l[79]=e=>wt.value=e),name:"验证码API Key",label:"验证码API Key",placeholder:"验证码API Key"},null,8,["modelValue"]),xl,(0,p.Wm)(Pt,{name:"switch",label:"是否全站密码登录页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:kt.value,"onUpdate:modelValue":l[80]||(l[80]=e=>kt.value=e)},null,8,["modelValue"])])),_:1}),Ul,(0,p.Wm)(Pt,{name:"switch",label:"是否在设置登录页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:gt.value,"onUpdate:modelValue":l[81]||(l[81]=e=>gt.value=e)},null,8,["modelValue"])])),_:1}),Hl,(0,p.Wm)(Pt,{name:"switch",label:"是否在输入用户名页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:ft.value,"onUpdate:modelValue":l[82]||(l[82]=e=>ft.value=e)},null,8,["modelValue"])])),_:1}),Al,(0,p.Wm)(Pt,{name:"switch",label:"是否在输入密码页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:bt.value,"onUpdate:modelValue":l[83]||(l[83]=e=>bt.value=e)},null,8,["modelValue"])])),_:1}),zl])),_:1}),(0,p._)("div",Pl,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Sl])),_:1},8,["show"]),(0,p.Wm)($u,{modelValue:Hn.value,"onUpdate:modelValue":l[89]||(l[89]=e=>Hn.value=e),title:"pool_token列表","align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Nl,[(0,p.Wm)(Nu,{onClick:l[86]||(l[86]=e=>Yi(Tt.value+Kn.value+"/v1/chat/completions"))},{default:(0,p.w5)((()=>[(0,p.Wm)(Su)])),_:1}),(0,p.Wm)(Ou,{style:{"white-space":"nowrap",overflow:"hidden","text-overflow":"ellipsis"}},{default:(0,p.w5)((()=>[(0,p.Uk)(" API地址:"+(0,v.zw)(Tt.value)+(0,v.zw)(Kn.value)+"/v1/chat/completions ",1)])),_:1})]),(0,p._)("div",Ol,[(0,p.Wm)((0,h.SU)(W.eI),{"row-class-name":Yu,data:tu.value,onSelectionChange:fn,ref_key:"multipleTableRefPool",ref:_n},{default:(0,p.w5)((()=>[(0,p.Wm)(y,{type:"selection",width:"45"}),(0,p.Wm)(y,{prop:"intoOneApi",label:"pool_token名称",sortable:"","min-width":"170","default-sort":{prop:"poolTime",prop:"intoOneApi"}},{default:(0,p.w5)((e=>[(0,p._)("div",Cl,[1==e.row.intoOneApi&&e.row.poolOneApi_models.includes("gpt-4")?((0,p.wg)(),(0,p.iD)("div",$l,[(0,p.Wm)(V,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[Il])),_:1})])):1==e.row.intoOneApi?((0,p.wg)(),(0,p.iD)("div",Bl,[(0,p.Wm)(V,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[Dl])),_:1})])):((0,p.wg)(),(0,p.iD)("div",ql,[(0,p.Wm)(V,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[jl])),_:1})])),(0,p._)("span",Ll,(0,v.zw)(e.row.poolName),1)])])),_:1}),(0,p.Wm)(y,{label:"pool_token值","min-width":"235"},{default:(0,p.w5)((e=>[(0,p._)("div",Ml,[(0,p.Wm)(Nu,{onClick:l=>Yi(e.row.poolToken)},{default:(0,p.w5)((()=>[(0,p.Wm)(Su)])),_:2},1032,["onClick"]),(0,p._)("span",Zl,(0,v.zw)(e.row.poolToken),1)])])),_:1}),(0,p.Wm)(y,{label:"使用token名集合","min-width":"165"},{default:(0,p.w5)((e=>[(0,p.Wm)(wn,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(e.row.shareTokens),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(T,null,{default:(0,p.w5)((()=>[Jl])),_:1})])),_:2},1024)])),_:1}),(0,p.Wm)(y,{property:"poolTime",label:"更新时间",prop:"poolTime",sortable:"","min-width":"180"}),(0,p.Wm)(y,{label:"操作方法","min-width":"355"},{default:(0,p.w5)((e=>[(0,p.Wm)(V,{size:"small",onClick:l=>Fi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"warning",onClick:l=>ji(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("检验")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"danger",onClick:l=>qi(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"success",onClick:l=>Ci(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("刷新")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"primary",onClick:l=>Di(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("更换")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])]),(0,p._)("div",Kl,[(0,p.Wm)(Cu,{class:"pool-button"},{default:(0,p.w5)((()=>[(0,p.Wm)(bn,{modelValue:Zn.value,"onUpdate:modelValue":l[87]||(l[87]=e=>Zn.value=e),filterable:"",clearable:"",placeholder:"请选择批量操作"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Jn,(e=>(0,p.Wm)(kn,{key:e.buttonPoolValue,label:e.label,value:e.buttonPoolValue},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),(0,p.Wm)(V,{onClick:l[88]||(l[88]=e=>Gi(Zn.value))},{default:(0,p.w5)((()=>[El])),_:1})])),_:1})]),Rl])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:An.value,"onUpdate:modelValue":l[93]||(l[93]=e=>An.value=e),title:"PandoraNext余额","align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Yl,[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[Xl,(0,p.Wm)(Pt,{modelValue:Eu.value,"onUpdate:modelValue":l[90]||(l[90]=e=>Eu.value=e),name:"PandoraNext用量",label:"PandoraNext用量",placeholder:"PandoraNext用量"},null,8,["modelValue"]),Fl,(0,p.Wm)(Pt,{modelValue:zi.value,"onUpdate:modelValue":l[91]||(l[91]=e=>zi.value=e),name:"绑定IP",label:"绑定IP",placeholder:"绑定IP"},null,8,["modelValue"]),Gl,(0,p.Wm)(Pt,{modelValue:Pi.value,"onUpdate:modelValue":l[92]||(l[92]=e=>Pi.value=e),name:"重置时间",label:"重置时间",placeholder:"重置时间"},null,8,["modelValue"]),Ql])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(Au,{show:zn.value,"onUpdate:show":l[101]||(l[101]=e=>zn.value=e),title:"定时刷新&PandoraNext网址","align-center":"",width:"95vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",ea,[(0,p.Wm)(Hu,{onSubmit:l[100]||(l[100]=e=>Wi())},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[la,(0,p.Wm)(Pt,{name:"switch",label:"是否自动刷新session_token"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:yt.value,"onUpdate:modelValue":l[94]||(l[94]=e=>yt.value=e)},null,8,["modelValue"])])),_:1}),1==yt.value?((0,p.wg)(),(0,p.iD)("div",aa,[oa,(0,p.Wm)(Pt,{modelValue:Vt.value,"onUpdate:modelValue":l[95]||(l[95]=e=>Vt.value=e),name:"自动刷新session的间隔天数",label:"自动刷新session的间隔天数","input-align":"right",placeholder:"自动刷新session的时间 (天为单位)"},null,8,["modelValue"]),na,(0,p.Wm)(Pt,{modelValue:Wt.value,"onUpdate:modelValue":l[96]||(l[96]=e=>Wt.value=e),name:"自动刷新session的个数",label:"自动刷新session的个数","input-align":"right",placeholder:"自动刷新session的个数 (个)"},null,8,["modelValue"])])):(0,p.kq)("",!0),ta,(0,p.Wm)(Pt,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:Tt.value,"onUpdate:modelValue":l[97]||(l[97]=e=>Tt.value=e),name:"PandoraNext的公网访问地址",label:"PandoraNext的公网访问地址",placeholder:"PandoraNext的公网访问地址"},null,8,["modelValue"]),ua,(0,p.Wm)(Pt,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:xt.value,"onUpdate:modelValue":l[98]||(l[98]=e=>xt.value=e),name:"oneApi的公网访问地址",label:"oneApi的公网访问地址","input-align":"right",placeholder:"oneApi的公网访问地址"},null,8,["modelValue"]),ia,(0,p.Wm)(Pt,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:Ut.value,"onUpdate:modelValue":l[99]||(l[99]=e=>Ut.value=e),name:"oneApi的系统令牌",label:"oneApi的系统令牌","input-align":"right",placeholder:"oneApi的系统令牌"},null,8,["modelValue"]),ra])),_:1}),(0,p._)("div",sa,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),da])),_:1},8,["show"]),(0,p.Wm)(Au,{show:Pn.value,"onUpdate:show":l[109]||(l[109]=e=>Pn.value=e),title:"✨添加pool_token信息",width:"95vw","align-center":"","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",ma,[(0,p.Wm)(Hu,{onSubmit:ju},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[(0,p.Wm)(Pt,{modelValue:St.value,"onUpdate:modelValue":l[102]||(l[102]=e=>St.value=e),name:"pool_token名",label:"pool_token名","input-align":"right",placeholder:"3到10个字符",rules:[{validator:Mt}]},null,8,["modelValue","rules"]),ca,(0,p.Wm)(Pt,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Nt.value,"onUpdate:modelValue":l[103]||(l[103]=e=>Nt.value=e)},null,8,["modelValue"])])),_:1}),1==Nt.value?((0,p.wg)(),(0,p.iD)("div",pa,[va,(0,p.Wm)(Pt,{modelValue:Dt.value,"onUpdate:modelValue":l[104]||(l[104]=e=>Dt.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)"},null,8,["modelValue"]),(0,p._)("div",ha,[_a,wa,(0,p.Wm)(Iu,{label:"选择模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(bn,{modelValue:$t.value,"onUpdate:modelValue":l[105]||(l[105]=e=>$t.value=e),multiple:"",filterable:"","allow-create":"",placeholder:"填写或选择模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Mn,(e=>(0,p.Wm)(kn,{key:e.buttonPoolModel,label:e.label,value:e.buttonPoolModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),ka,(0,p.Wm)(Iu,{label:"重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:It.value,"onUpdate:modelValue":l[106]||(l[106]=e=>It.value=e),type:"textarea",autosize:{maxHeight:100,minHeight:20},placeholder:dn,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),ga,(0,p.Wm)(Pt,{name:"checkboxGroup",label:"在one-api的组别","input-align":"right"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:hn.value,"onUpdate:modelValue":l[107]||(l[107]=e=>hn.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",fa,[(0,p.Wm)(Du,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",ba,[(0,p.Wm)(Du,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),ya,(0,p.Wm)(Pt,{autosize:{maxHeight:100,minHeight:20},type:"textarea",modelValue:Bt.value,"onUpdate:modelValue":l[108]||(l[108]=e=>Bt.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right",placeholder:"自定义PandoraNext地址"},null,8,["modelValue"]),Va])):(0,p.kq)("",!0)])),_:1}),(0,p._)("div",Wa,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Ta])),_:1},8,["show"]),(0,p.Wm)($u,{modelValue:Sn.value,"onUpdate:modelValue":l[110]||(l[110]=e=>Sn.value=e),title:"tokensTool登录日志","align-center":"",width:"90%","close-on-click-modal":!1,class:"showLoginDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",xa,[(0,p.Wm)((0,h.SU)(W.eI),{"row-class-name":Yu,data:iu.value},{default:(0,p.w5)((()=>[(0,p.Wm)(y,{prop:"ipAddress",label:"登录地区","min-width":"160"},{default:(0,p.w5)((e=>[(0,p._)("div",Ua,[(0,p._)("span",Ha,(0,v.zw)(e.row.ipAddress),1)])])),_:1}),(0,p.Wm)(y,{label:"登录IP","min-width":"155"},{default:(0,p.w5)((e=>[(0,p._)("div",Aa,[(0,p.Wm)(Nu,{onClick:l=>Yi(e.row.poolToken)},{default:(0,p.w5)((()=>[(0,p.Wm)(Su)])),_:2},1032,["onClick"]),(0,p._)("span",za,(0,v.zw)(e.row.requestIp),1)])])),_:1}),(0,p.Wm)(y,{label:"成功/失败","min-width":"105"},{default:(0,p.w5)((e=>[(0,p._)("div",Pa,[(0,p._)("span",Sa,(0,v.zw)(e.row.inRequestNumber)+"/"+(0,v.zw)(e.row.outRequestNumber),1)])])),_:1}),(0,p.Wm)(y,{property:"lastLoginTime",label:"登录时间",prop:"lastLoginTime","min-width":"180"})])),_:1},8,["data"])]),Na])),_:1},8,["modelValue"]),(0,p.Wm)(Au,{show:Nn.value,"onUpdate:show":l[119]||(l[119]=e=>Nn.value=e),title:"📌修改pool_token信息",width:"95vw","align-center":"","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Oa,[(0,p.Wm)(Hu,{onSubmit:Ju},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:""},{default:(0,p.w5)((()=>[Ca,(0,p._)("div",$a,[(0,p.Wm)(Iu,{label:"poolToken名"},{default:(0,p.w5)((()=>[(0,p.Wm)(bn,{modelValue:Ht.value,"onUpdate:modelValue":l[111]||(l[111]=e=>Ht.value=e),filterable:"",clearable:"",placeholder:"选择要修改的pool名",onChange:Lu,class:"selectPool_token"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(tu.value,(e=>((0,p.wg)(),(0,p.j4)(kn,{key:e.poolName,label:e.poolName,value:e.poolName,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),Ia,(0,p.Wm)(Pt,{modelValue:qt.value,"onUpdate:modelValue":l[112]||(l[112]=e=>qt.value=e),type:"textarea",autosize:{maxHeight:100,minHeight:20},name:"pool_token的值",label:"pool_token的值","input-align":"right",placeholder:"pool_token的值(不改则不变)"},null,8,["modelValue"]),Ba,(0,p.Wm)(Pt,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Nt.value,"onUpdate:modelValue":l[113]||(l[113]=e=>Nt.value=e)},null,8,["modelValue"])])),_:1}),Da,1==Nt.value?((0,p.wg)(),(0,p.iD)("div",qa,[ja,(0,p._)("div",La,[(0,p.Wm)(Iu,{label:"选择模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(bn,{modelValue:Ct.value,"onUpdate:modelValue":l[114]||(l[114]=e=>Ct.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"填写或选择模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Mn,(e=>(0,p.Wm)(kn,{key:e.buttonPoolModel,label:e.label,value:e.buttonPoolModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),Ma,(0,p.Wm)(Iu,{label:"重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:Ot.value,"onUpdate:modelValue":l[115]||(l[115]=e=>Ot.value=e),type:"textarea",autosize:{maxHeight:100,minHeight:20},placeholder:dn,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),Za,(0,p.Wm)(Pt,{modelValue:Dt.value,"onUpdate:modelValue":l[116]||(l[116]=e=>Dt.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),Ja,(0,p.Wm)(Pt,{name:"checkboxGroup",label:"在one-api的组别","input-align":"right"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:vn.value,"onUpdate:modelValue":l[117]||(l[117]=e=>vn.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",Ka,[(0,p.Wm)(Du,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",Ea,[(0,p.Wm)(Du,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),Ra,(0,p.Wm)(Pt,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:Bt.value,"onUpdate:modelValue":l[118]||(l[118]=e=>Bt.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right",placeholder:"自定义PandoraNext地址",rules:[{required:!0,message:"请填写自定义PandoraNext地址"}]},null,8,["modelValue"]),Ya])):(0,p.kq)("",!0)])),_:1}),(0,p._)("div",Xa,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Fa])),_:1},8,["show"]),(0,p.Wm)($u,{modelValue:On.value,"onUpdate:modelValue":l[120]||(l[120]=e=>On.value=e),"align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",{ref_key:"chart",ref:Qi,style:{width:"auto",height:"350px"}},null,512)])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:Cn.value,"onUpdate:modelValue":l[124]||(l[124]=e=>Cn.value=e),title:"OneAPI里的share_token列表","align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p.Wm)(b,{modelValue:xu.value,"onUpdate:modelValue":l[122]||(l[122]=e=>xu.value=e),"show-action":"",clearable:"",shape:"round",placeholder:"请输入搜索share_token名称",onSearch:l[123]||(l[123]=e=>Pu(xu.value)),class:"onShareToken"},{action:(0,p.w5)((()=>[(0,p.Wm)(V,{onClick:l[121]||(l[121]=e=>$n.value=!0)},{default:(0,p.w5)((()=>[Ga])),_:1})])),_:1},8,["modelValue"]),(0,p._)("div",Qa,[(0,p.Wm)((0,h.SU)(W.eI),{data:uu.value,"row-class-name":Yu},{default:(0,p.w5)((()=>[(0,p.Wm)(y,{label:"在OneAPI的名称",prop:"oneApi_name",width:"180"},{default:(0,p.w5)((e=>[(0,p._)("div",eo,[(0,p._)("span",lo,(0,v.zw)(e.row.oneApi_name),1)])])),_:1}),(0,p.Wm)(y,{label:"来源Token名","min-width":"135"},{default:(0,p.w5)((e=>[(0,p._)("div",ao,[(0,p._)("span",oo,(0,v.zw)(e.row.token_name),1)])])),_:1}),(0,p.Wm)(y,{label:"share_token值","min-width":"355"},{default:(0,p.w5)((e=>[(0,p._)("div",no,[(0,p.Wm)(Nu,{onClick:l=>Yi(e.row.token_value)},{default:(0,p.w5)((()=>[(0,p.Wm)(Su)])),_:2},1032,["onClick"]),(0,p._)("span",to,(0,v.zw)(e.row.token_value),1)])])),_:1}),(0,p.Wm)(y,{property:"shareTime",label:"更新时间",prop:"shareTime","min-width":"170"}),(0,p.Wm)(y,{label:"操作方法","min-width":"235"},{default:(0,p.w5)((e=>[(0,p.Wm)(V,{size:"small",onClick:l=>wi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"primary",onClick:l=>$i(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("修改")])),_:2},1032,["onClick"]),(0,p.Wm)(V,{size:"small",type:"danger",onClick:l=>Mi(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])]),uo])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:$n.value,"onUpdate:modelValue":l[132]||(l[132]=e=>$n.value=e),title:"添加shareToken进one_api","align-center":"",width:"95vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",io,[(0,p.Wm)(Hu,{onSubmit:Ku},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:"",class:"groupCell"},{default:(0,p.w5)((()=>[ro,(0,p.Wm)(Pt,{modelValue:ku.value,"onUpdate:modelValue":l[125]||(l[125]=e=>ku.value=e),name:"oneApi中渠道名称",label:"oneApi中渠道名称","input-align":"right",placeholder:"oneApi中渠道名称",rules:[{required:!0,message:"请填写oneApi中渠道名称"}]},null,8,["modelValue"]),so,(0,p._)("div",mo,[(0,p.Wm)(Iu,{label:"Token名","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(bn,{modelValue:gu.value,"onUpdate:modelValue":l[126]||(l[126]=e=>gu.value=e),filterable:"",clearable:"",placeholder:"选择要添加的Token名",onChange:Mu,class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Zu.value,(e=>((0,p.wg)(),(0,p.j4)(kn,{key:e.name,label:e.name,value:e.name,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),co,(0,p._)("div",po,[(0,p.Wm)(Iu,{label:"选择模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(bn,{modelValue:bu.value,"onUpdate:modelValue":l[127]||(l[127]=e=>bu.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"填写或选择模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Ln,(e=>(0,p.Wm)(kn,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),vo,(0,p.Wm)(Iu,{label:"重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:yu.value,"onUpdate:modelValue":l[128]||(l[128]=e=>yu.value=e),type:"textarea",rows:10,placeholder:dn,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),ho,(0,p.Wm)(Pt,{modelValue:Wu.value,"onUpdate:modelValue":l[129]||(l[129]=e=>Wu.value=e),name:"渠道优先级",label:"渠道优先级",placeholder:"渠道优先级(默认为0)","input-align":"center",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),_o,(0,p.Wm)(Pt,{"input-align":"right",name:"addOneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:Vu.value,"onUpdate:modelValue":l[130]||(l[130]=e=>Vu.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",wo,[(0,p.Wm)(Du,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",ko,[(0,p.Wm)(Du,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),go,(0,p.Wm)(Pt,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:fu.value,"onUpdate:modelValue":l[131]||(l[131]=e=>fu.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),fo])),_:1}),(0,p._)("div",bo,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:In.value,"onUpdate:modelValue":l[149]||(l[149]=e=>In.value=e),title:"🔎查看share_token在OneAPI信息","align-center":"",width:"95vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",yo,[(0,p.Wm)(Hu,{onSubmit:e.shareToken},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:"",class:"groupCell"},{default:(0,p.w5)((()=>[Vo,(0,p.Wm)(Pt,{modelValue:ii.value,"onUpdate:modelValue":l[133]||(l[133]=e=>ii.value=e),name:"OneAPI中渠道名称",label:"OneAPI中渠道名称",placeholder:"OneAPI中渠道名称","left-icon":"description-o",readonly:!0,"input-align":"right",onClickLeftIcon:l[134]||(l[134]=e=>Yi(ii.value)),rules:[{required:!0,message:"请填写OneAPI中渠道名称"}]},null,8,["modelValue"]),Wo,(0,p.Wm)(Pt,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:si.value,"onUpdate:modelValue":l[135]||(l[135]=e=>si.value=e),name:"share_token的值",label:"share_token的值","input-align":"right",placeholder:"share_token的值","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[136]||(l[136]=e=>Yi(si.value))},null,8,["modelValue"]),To,(0,p.Wm)(Pt,{modelValue:ri.value,"onUpdate:modelValue":l[137]||(l[137]=e=>ri.value=e),name:"share_token的来源",label:"share_token的来源","input-align":"right",placeholder:"share_token的值","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[138]||(l[138]=e=>Yi(ri.value))},null,8,["modelValue"]),xo,(0,p.Wm)(Pt,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:pi.value,"onUpdate:modelValue":l[139]||(l[139]=e=>pi.value=e),name:"模型",label:"模型","input-align":"right",placeholder:"加入的模型","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[140]||(l[140]=e=>Yi(pi.value))},null,8,["modelValue"]),(0,p._)("div",Uo,[Ho,(0,p.Wm)(Iu,{readonly:!0,type:"textarea",label:"🧩重定向",autosize:"",prop:"addModel_mapping",class:"model_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:ci.value,"onUpdate:modelValue":l[141]||(l[141]=e=>ci.value=e),type:"textarea",autosize:"",disabled:"",placeholder:dn,onClickLeftIcon:l[142]||(l[142]=e=>Yi(ci.value))},null,8,["modelValue"])])),_:1})]),Ao,(0,p.Wm)(Pt,{modelValue:Dt.value,"onUpdate:modelValue":l[143]||(l[143]=e=>Dt.value=e),name:"渠道优先级",label:"渠道优先级",placeholder:"渠道优先级(默认为0)","left-icon":"description-o",readonly:!0,"input-align":"right",onClickLeftIcon:l[144]||(l[144]=e=>Yi(Dt.value)),rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),zo,(0,p.Wm)(Pt,{type:"textarea",autoSize:"",modelValue:vi.value,"onUpdate:modelValue":l[145]||(l[145]=e=>vi.value=e),name:"加入的组别",label:"加入的组别","input-align":"right",placeholder:"加入的组别","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[146]||(l[146]=e=>Yi(vi.value))},null,8,["modelValue"]),Po,(0,p.Wm)(Pt,{type:"textarea",autoSize:"",modelValue:di.value,"onUpdate:modelValue":l[147]||(l[147]=e=>di.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[148]||(l[148]=e=>Yi(di.value)),rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),So])),_:1})])),_:1},8,["onSubmit"])])])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:Bn.value,"onUpdate:modelValue":l[156]||(l[156]=e=>Bn.value=e),title:"📌修改share_token的信息","align-center":"",width:"95vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",No,[(0,p.Wm)(Hu,{onSubmit:Ii},{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:"",class:"groupCell"},{default:(0,p.w5)((()=>[Oo,(0,p._)("div",Co,[(0,p.Wm)(Iu,{label:"Token名","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(bn,{modelValue:ri.value,"onUpdate:modelValue":l[150]||(l[150]=e=>ri.value=e),filterable:"",clearable:"",placeholder:"选择添加的Token名称",onChange:Mu,class:"selectPool_token"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Zu.value,(e=>((0,p.wg)(),(0,p.j4)(kn,{key:e.name,label:e.name,value:e.name,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),$o,(0,p._)("div",Io,[(0,p.Wm)(Iu,{label:"选择模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(bn,{modelValue:mi.value,"onUpdate:modelValue":l[151]||(l[151]=e=>mi.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"填写或选择模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Ln,(e=>(0,p.Wm)(kn,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),Bo,(0,p.Wm)(Iu,{label:"重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:ci.value,"onUpdate:modelValue":l[152]||(l[152]=e=>ci.value=e),"label-position":"top",type:"textarea",rows:10,placeholder:dn,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),Do,(0,p.Wm)(Pt,{modelValue:Dt.value,"onUpdate:modelValue":l[153]||(l[153]=e=>Dt.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),qo,(0,p.Wm)(Pt,{"input-align":"right",name:"oneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:hi.value,"onUpdate:modelValue":l[154]||(l[154]=e=>hi.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",jo,[(0,p.Wm)(Du,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",Lo,[(0,p.Wm)(Du,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),Mo,(0,p.Wm)(Pt,{type:"textarea",autosize:{maxHeight:100,minHeight:20},modelValue:di.value,"onUpdate:modelValue":l[155]||(l[155]=e=>di.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),Zo])),_:1}),(0,p._)("div",Jo,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)($u,{modelValue:Dn.value,"onUpdate:modelValue":l[170]||(l[170]=e=>Dn.value=e),title:"🔎查看pool_token的信息","align-center":"",width:"95vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Ko,[(0,p.Wm)(Hu,null,{default:(0,p.w5)((()=>[(0,p.Wm)(Uu,{inset:"",class:"groupCell"},{default:(0,p.w5)((()=>[Eo,(0,p.Wm)(Pt,{modelValue:At.value,"onUpdate:modelValue":l[157]||(l[157]=e=>At.value=e),name:"pool_token名称",label:"pool_token名称",placeholder:"pool_token名称",readonly:!0,"left-icon":"description-o",onClickLeftIcon:l[158]||(l[158]=e=>Yi(At.value)),"input-align":"right"},null,8,["modelValue"]),Ro,(0,p.Wm)(Pt,{modelValue:zt.value,"onUpdate:modelValue":l[159]||(l[159]=e=>zt.value=e),label:"使用token名集合",type:"textarea",placeholder:"使用token名集合","left-icon":"description-o",readonly:!0,"input-align":"right",onClickLeftIcon:l[160]||(l[160]=e=>Yi(Et.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"]),Yo,(0,p.Wm)(Pt,{modelValue:qt.value,"onUpdate:modelValue":l[161]||(l[161]=e=>qt.value=e),readonly:!0,type:"textarea",autosize:{maxHeight:100,minHeight:20},name:"pool_token的值",label:"pool_token的值","input-align":"right","left-icon":"description-o",onClickLeftIcon:l[162]||(l[162]=e=>Yi(qt.value)),placeholder:"pool_token的值(不改则不变)"},null,8,["modelValue"]),Xo,(0,p.Wm)(Pt,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(ou,{"active-color":"#0ea27e",modelValue:Nt.value,"onUpdate:modelValue":l[163]||(l[163]=e=>Nt.value=e)},null,8,["modelValue"])])),_:1}),Fo,1==Nt.value?((0,p.wg)(),(0,p.iD)("div",Go,[Qo,(0,p._)("div",en,[(0,p.Wm)(Iu,{disabled:"",label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(bn,{disabled:"",modelValue:Ct.value,"onUpdate:modelValue":l[164]||(l[164]=e=>Ct.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Mn,(e=>(0,p.Wm)(kn,{key:e.buttonPoolModel,label:e.label,value:e.buttonPoolModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),ln])),_:1}),an,(0,p.Wm)(Iu,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(Bu,{modelValue:Ot.value,"onUpdate:modelValue":l[165]||(l[165]=e=>Ot.value=e),type:"textarea",disabled:"",filterable:"",autosize:"",placeholder:dn,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),on,(0,p.Wm)(Pt,{readonly:!0,modelValue:Dt.value,"onUpdate:modelValue":l[166]||(l[166]=e=>Dt.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),nn,(0,p.Wm)(Pt,{"input-align":"right",name:"oneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(qu,{modelValue:vn.value,"onUpdate:modelValue":l[167]||(l[167]=e=>vn.value=e)},{default:(0,p.w5)((()=>[(0,p._)("div",tn,[(0,p.Wm)(Du,{name:"default",disabled:"","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1})]),(0,p._)("div",un,[(0,p.Wm)(Du,{name:"vip",disabled:"","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1})]),(0,p.Wm)(Du,{name:"svip",disabled:"","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),rn,(0,p.Wm)(Pt,{readonly:!0,type:"textarea",autoSize:"",modelValue:Bt.value,"onUpdate:modelValue":l[168]||(l[168]=e=>Bt.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right","left-icon":"description-o",onClickLeftIcon:l[169]||(l[169]=e=>Yi(Bt.value)),placeholder:"自定义PandoraNext地址",rules:[{required:!0,message:"请填写自定义PandoraNext地址"}]},null,8,["modelValue"]),sn])):(0,p.kq)("",!0)])),_:1})])),_:1})])])),_:1},8,["modelValue"])],64)}}});const hn=vn;var _n=hn}}]);
+//# sourceMappingURL=666.e7a6709e.js.map
\ No newline at end of file
diff --git a/rearServer/target/classes/static/js/666.e7a6709e.js.map b/rearServer/target/classes/static/js/666.e7a6709e.js.map
new file mode 100644
index 0000000..df92bc1
--- /dev/null
+++ b/rearServer/target/classes/static/js/666.e7a6709e.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"js/666.e7a6709e.js","mappings":"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","sources":["webpack://PandoraNext-TokensTool/./src/views/homeIphone.vue","webpack://PandoraNext-TokensTool/./src/views/homeIphone.vue?1abb"],"sourcesContent":["import \"core-js/modules/es.array.push.js\";\nimport { defineComponent as _defineComponent } from 'vue';\nimport { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, resolveComponent as _resolveComponent, createVNode as _createVNode, withCtx as _withCtx, createTextVNode as _createTextVNode, unref as _unref, resolveDirective as _resolveDirective, openBlock as _openBlock, createBlock as _createBlock, withDirectives as _withDirectives, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode } from \"vue\";\nimport _imports_0 from '../asserts/openAi.jpg';\nconst _hoisted_1 = {\n class: \"content\"\n};\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"meta\", {\n name: \"viewport\",\n content: \"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no\"\n}, null, -1);\nconst _hoisted_3 = /*#__PURE__*/_createElementVNode(\"img\", {\n style: {\n \"width\": \"25px\"\n },\n src: _imports_0\n}, null, -1);\nconst _hoisted_4 = {\n class: \"home-container\"\n};\nconst _hoisted_5 = /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"flex-grow\"\n}, null, -1);\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://ai.fakeopen.com/auth\"\n}, \"PandoraNext地址\", -1);\nconst _hoisted_7 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://chat.openai.com/api/auth/session\"\n}, \"OpenAI官网\", -1);\nconst _hoisted_8 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://github.com/Yanyutin753/PandoraNext-TokensTool\"\n}, \"TokensTool地址\", -1);\nconst _hoisted_9 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_10 = /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"flex items-center\"\n}, [/*#__PURE__*/_createElementVNode(\"span\", {\n class: \"font-h4\"\n}, \"PandoraNext-TokensTool \"), /*#__PURE__*/_createElementVNode(\"span\", {\n class: \"font-h4-tag\"\n}, \"v0.6.8 \")], -1);\nconst _hoisted_11 = {\n class: \"under\"\n};\nconst _hoisted_12 = {\n class: \"search\"\n};\nconst _hoisted_13 = {\n style: {\n \"display\": \"flex\",\n \"margin\": \"0px 0px -20px 0px\"\n }\n};\nconst _hoisted_14 = {\n style: {\n \"display\": \"flex\",\n \"width\": \"88vw\",\n \"height\": \"63vh\",\n \"transform\": \"translateX(0vw)\"\n }\n};\nconst _hoisted_15 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_16 = {\n style: {\n \"margin-left\": \"15px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_17 = {\n style: {\n \"margin-left\": \"15px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_18 = {\n style: {\n \"margin\": \"13px\",\n \"transform\": \"translateX(7px)\"\n }\n};\nconst _hoisted_19 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"批量操作\", -1);\nconst _hoisted_20 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_21 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_22 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_23 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_24 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_25 = {\n key: 0\n};\nconst _hoisted_26 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_27 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_28 = {\n key: 0\n};\nconst _hoisted_29 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_30 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_31 = {\n key: 1\n};\nconst _hoisted_32 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_33 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_34 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_35 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_36 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_37 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_38 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_39 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_40 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_41 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_42 = {\n key: 0\n};\nconst _hoisted_43 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_44 = {\n key: 1\n};\nconst _hoisted_45 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_46 = {\n key: 0\n};\nconst _hoisted_47 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_48 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_49 = {\n key: 2\n};\nconst _hoisted_50 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_51 = {\n key: 3\n};\nconst _hoisted_52 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_53 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_54 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_55 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_56 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_57 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_58 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_59 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_60 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_61 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_62 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_63 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_64 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_65 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_66 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_67 = {\n key: 0\n};\nconst _hoisted_68 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_69 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_70 = {\n key: 0\n};\nconst _hoisted_71 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_72 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_73 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_74 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_75 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_76 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_77 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_78 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_79 = {\n key: 0\n};\nconst _hoisted_80 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_81 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_82 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_83 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_84 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_85 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_86 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_87 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_88 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_89 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_90 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_91 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_92 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_93 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_94 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_95 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_96 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_97 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_98 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_99 = {\n key: 0\n};\nconst _hoisted_100 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_101 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_102 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_103 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_104 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_105 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_106 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_107 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_108 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_109 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_110 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_111 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_112 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_113 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_114 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_115 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_116 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(0vw, -2vh)\"\n }\n};\nconst _hoisted_117 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(calc(-2.5% - 20px), 0vh)\",\n \"width\": \"calc(102.5% + 40px)\"\n }\n};\nconst _hoisted_118 = {\n style: {\n \"margin-left\": \"10px\",\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_119 = {\n key: 0\n};\nconst _hoisted_120 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"oneApi4\", -1);\nconst _hoisted_121 = {\n key: 1\n};\nconst _hoisted_122 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"oneApi3\", -1);\nconst _hoisted_123 = {\n key: 2\n};\nconst _hoisted_124 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"Json\", -1);\nconst _hoisted_125 = {\n style: {\n \"margin-left\": \"20px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_126 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_127 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_128 = /*#__PURE__*/_createElementVNode(\"span\", {\n style: {\n \"margin-left\": \"0px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n}, \"点击此进行查看\", -1);\nconst _hoisted_129 = {\n style: {\n \"margin\": \"10px 0px 10px 0px\"\n }\n};\nconst _hoisted_130 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"批量操作\", -1);\nconst _hoisted_131 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_132 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_133 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_134 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_135 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_136 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_137 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_138 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_139 = {\n key: 0\n};\nconst _hoisted_140 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_141 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_142 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_143 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_144 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_145 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_146 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_147 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_148 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_149 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_150 = {\n key: 0\n};\nconst _hoisted_151 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_152 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_153 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_154 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_155 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_156 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_157 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_158 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_159 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_160 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_161 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_162 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_163 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(calc(-2.5% - 20px), 0vh)\",\n \"width\": \"calc(100% + 2.5% + 40px)\"\n }\n};\nconst _hoisted_164 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_165 = {\n style: {\n \"margin-left\": \"0px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_166 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_167 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_168 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_169 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_170 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_171 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_172 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_173 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_174 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_175 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_176 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_177 = {\n key: 0\n};\nconst _hoisted_178 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_179 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_180 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_181 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_182 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_183 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_184 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_185 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_186 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_187 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_188 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_189 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"添加到OneAPI\", -1);\nconst _hoisted_190 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(calc(-2.5% - 20px), 0vh)\",\n \"width\": \"calc(102.5% + 40px)\"\n }\n};\nconst _hoisted_191 = {\n style: {\n \"margin-left\": \"15px\",\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_192 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_193 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_194 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_195 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_196 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_197 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_198 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_199 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_200 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_201 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_202 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_203 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_204 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_205 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_206 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_207 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_208 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_209 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_210 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_211 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_212 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_213 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_214 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_215 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_216 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_217 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_218 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_219 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_220 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_221 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_222 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_223 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_224 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_225 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_226 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_227 = {\n style: {\n \"transform\": \"translateX(16px)\"\n }\n};\nconst _hoisted_228 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_229 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_230 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_231 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_232 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_233 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_234 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_235 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_236 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_237 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_238 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_239 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_240 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_241 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_242 = {\n key: 0\n};\nconst _hoisted_243 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_244 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_245 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_246 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_247 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_248 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_249 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_250 = {\n style: {\n \"margin-bottom\": \"5px\"\n }\n};\nconst _hoisted_251 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_252 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nimport { ref, onMounted } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport axios from \"axios\";\nimport { ElMessage, ElMessageBox } from \"element-plus\";\nimport { differenceInDays, parseISO } from \"date-fns\";\nimport { ElLoading } from \"element-plus\";\nimport { ElTable } from \"element-plus\";\nimport * as echarts from \"echarts\";\nimport { computed } from \"vue\";\nconst temModel_mapping = `此项可选,用于修改请求体中的模型名称,\n 为一个 JSON 字符串,键为请求中模型名称,\n 值为要替换的模型名称,例如:\n {\n \"gpt-3.5-turbo-301\":\"gpt-3.5-turbo\",\n \"gpt-4-8314\":\"gpt-4\", \n \"gpt-4-32k-8314\":\"gpt-4-32k\",\n }`;\nconst pandoraNext = 0;\n//tokensTool 为 0\nconst tokensTool = 1;\n//验证信息\nconst validation = 2;\n/**\r\n * 修改系统设置信息\r\n */\nexport default /*#__PURE__*/_defineComponent({\n __name: 'homeIphone',\n setup(__props) {\n // 导入类\n const path = window.location.pathname; // 假设是 \"/api/getData\"\n const parts = path.split(\"/\"); // 分割路径,得到 [\"\", \"api\", \"getData\"]\n let prefix = \"\"; // 默认值为 \"\"\n if (parts.length >= 3) {\n prefix = \"/\" + parts[1]; // 如果parts长度大于或等于3,获取第一个部分\n }\n\n const temGroupChecked = ref([\"default\", \"svip\", \"vip\"]);\n const groupChecked = ref([\"default\", \"svip\", \"vip\"]);\n const multipleTableRef = ref();\n const multipleTableRefPool = ref();\n const multipleSelection = ref([]);\n const multipleSelectionPool = ref([]);\n const handleSelectionChange = val => {\n multipleSelection.value = val;\n };\n const poolSelectionChange = val => {\n multipleSelectionPool.value = val;\n };\n const size = ref(\"ALL\");\n //pandoraNext 为 0\n const router = useRouter();\n /**\r\n * \r\n * \r\n * \r\n *\r\n */\n const show = ref(false);\n const show_1 = ref(false);\n const show_2 = ref(false);\n const show_3 = ref(false);\n const show_4 = ref(false);\n const show_5 = ref(false);\n const show_6 = ref(false);\n const show_7 = ref(false);\n const show_8 = ref(false);\n const show_9 = ref(false);\n const show_10 = ref(false);\n const show_11 = ref(false);\n const show_12 = ref(false);\n const show_13 = ref(false);\n const show_14 = ref(false);\n const show_15 = ref(false);\n const show_16 = ref(false);\n const show_17 = ref(false);\n /**\r\n * 定义User类接口\r\n */\n const buttonValue = ref(\"\");\n const options = [{\n buttonValue: \"选中删除Token\",\n label: \"选中删除Token\"\n }, {\n buttonValue: \"选中刷新Token\",\n label: \"选中刷新Token\"\n }, {\n buttonValue: \"选中合成pool_token\",\n label: \"选中合成pool_token\"\n }, {\n buttonValue: \"选中修改pool_token\",\n label: \"选中修改pool_token\"\n }];\n const buttonModel = ref(\"\");\n const optionsModel = [{\n buttonModel: \"gpt-3.5-turbo\",\n label: \"gpt-3.5-turbo\"\n }, {\n buttonModel: \"gpt-4-s\",\n label: \"gpt-4-s\"\n }, {\n buttonModel: \"gpt-4-mobile\",\n label: \"gpt-4-mobile\"\n }, {\n buttonModel: \"gpt-4-vision\",\n label: \"gpt-4-vision\"\n }, {\n buttonModel: \"gpt-4-classic\",\n label: \"gpt-4-classic\"\n }, {\n buttonModel: \"gpt-4-vision-preview\",\n label: \"gpt-4-vision-preview\"\n }];\n const buttonPoolModel = ref(\"\");\n const optionsPoolModel = [{\n buttonPoolModel: \"gpt-3.5-turbo\",\n label: \"gpt-3.5-turbo\"\n }, {\n buttonPoolModel: \"gpt-4\",\n label: \"gpt-4\"\n }];\n const buttonPoolValue = ref(\"\");\n const optionsPool = [{\n buttonPoolValue: \"选中检查pool_token\",\n label: \"选中检查pool_token\"\n }, {\n buttonPoolValue: \"选中删除pool_token\",\n label: \"选中删除pool_token\"\n }, {\n buttonPoolValue: \"选中刷新pool_token\",\n label: \"选中刷新pool_token\"\n }, {\n buttonPoolValue: \"选中更换pool_token\",\n label: \"选中更换pool_token\"\n }];\n /**\r\n * 定义Pool类接口\r\n */\n const proxy_api_prefix = ref(\"\");\n const isolated_conv_title = ref(\"*\");\n const bing = ref(\"\");\n const timeout = ref(\"\");\n const proxy_url = ref(\"\");\n const public_share = ref(false);\n //0.4.9.2\n const disable_signup = ref(false);\n const auto_conv_arkose = ref(false);\n const proxy_file_service = ref(false);\n const custom_doh_host = ref(\"\");\n const enabled = ref(false);\n const cert_file = ref(\"\");\n const key_file = ref(\"\");\n const site_password = ref(\"\");\n const setup_password = ref(\"\");\n const loginUsername = ref(\"\");\n const loginPassword = ref(\"\");\n const license_id = ref(\"\");\n //0.4.8.2\n const isGetToken = ref(false);\n const getTokenPassword = ref(\"\");\n const containerName = ref(\"PandoraNext\");\n const autoToken_url = ref(\"default\");\n const whitelist = ref(\"\");\n const provider = ref(\"\");\n const site_key = ref(\"\");\n const site_secret = ref(\"\");\n const site_login = ref(false);\n const setup_login = ref(false);\n const oai_username = ref(false);\n const oai_password = ref(false);\n //0.4.9.3\n const auto_updateSession = ref(false);\n const auto_updateTime = ref(5);\n const auto_updateNumber = ref(1);\n const pandoraNext_outUrl = ref(\"\");\n const oneAPi_outUrl = ref(\"\");\n const oneAPi_intoToken = ref(\"\");\n // 0.4.8\n const poolName = ref(\"\");\n const temPoolName = ref(\"\");\n const shareTokens = ref(\"\");\n const poolToken = ref(\"\");\n const poolTime = ref(\"\");\n const checkPool = ref(true);\n // 0.5.0\n //上传oneApi\n const poolNameValue = ref(\"\");\n const intoOneApi = ref(false);\n const poolModel_mapping = ref(\"\");\n const poolOneApi_models = ref([]);\n const addPoolOneApi_models = ref([]);\n const addPoolModel_mapping = ref(\"\");\n const oneApi_pandoraUrl = ref(pandoraNext_outUrl.value + proxy_api_prefix.value);\n const priority = ref(0);\n const temPool_token = ref(\"\");\n // 自定义校验函数,直接返回错误提示\n const customValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n const sitePasswordValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (regex.test(value) || value == \"\") {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n const poolNameValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^[\\u4e00-\\u9fa5a-zA-Z0-9]{3,10}$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字\";\n }\n };\n const addPasswordValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (addSetPoolToken.value == true || setPoolToken.value == true || regex.test(value)) {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n /**\r\n * 查看或者修改token信息参数\r\n */\n const temName = ref(\"\");\n const temToken = ref(\"\");\n const temAccessToken = ref(\"\");\n const temShareToken = ref(\"\");\n const temUsername = ref(\"\");\n const temUserPassword = ref(\"\");\n const temShared = ref(false);\n const temShow_user_info = ref(false);\n const temPlus = ref(false);\n const temPassword = ref(\"\");\n const setPoolToken = ref(false);\n const useRefreshToken = ref(false);\n const temCheckSession = ref(true);\n const tableData = ref([]);\n // 0.4.8\n const poolData = ref([]);\n const shareData = ref([]);\n // 0.5.9\n const loginData = ref([]);\n /**\r\n * 添加用户信息参数\r\n */\n const addName = ref(\"\");\n const addUsername = ref(\"\");\n const addUserPassword = ref(\"\");\n const addTokenValue = ref(\"\");\n const addShared = ref(false);\n const addShow_user_info = ref(false);\n const addPlus = ref(false);\n const addSetPoolToken = ref(false);\n const addUseRefreshToken = ref(false);\n const addPassword = ref(\"\");\n /**\r\n * 添加用户信息参数\r\n */\n const addOneApi_name = ref(\"\");\n const addToken_name = ref(\"\");\n const addToken_value = ref(\"\");\n const addOneApi_baseUrl = ref(\"\");\n const addOneApi_models = ref([]);\n const addModel_mapping = ref(\"\");\n const addOneApi_groups = ref([\"default\", \"svip\", \"vip\"]);\n const addPriority = ref(0);\n //Pandora的icon大小\n const iconSize = ref(window.innerHeight * 0.085);\n //搜索值\n const value = ref(\"\");\n const valuePool = ref(\"\");\n const valueShare = ref(\"\");\n /**\r\n * 用jwt令牌验证身份\r\n * 未通过者返回到/\r\n */\n const token = localStorage.getItem(\"jwtToken\"); // 从localStorage获取JWT令牌\n if (!token) {\n router.replace(`/`);\n }\n const headers = {\n Authorization: `Bearer ${token}`\n };\n /**\r\n * 用jwt令牌验证身份函数\r\n */\n const fetchLoginToken = async () => {\n axios.post(`${prefix}/api/loginToken?token=` + token).then(response => {\n if (response.data.code == 0) {\n console.error(response.data.data);\n router.replace(`/`);\n return;\n }\n }).catch(error => {\n console.error(\"请求loginToken接口失败\", error);\n router.replace(`/`);\n });\n };\n const onSearch = value => {\n if (value == \"Web\" || value == \"WEB\") {\n getWebToken(\"\");\n } else if (value == \"ALL\" || value == \"All\") {\n getToken(\"\");\n } else if (value.includes(\"API\")) {\n getAPIToken(\"\");\n } else {\n getToken(value);\n }\n };\n const onSearchShareToken = value => {\n getShare(value);\n };\n const onSearchPoolToken = value => {\n getPool(value);\n };\n /**\r\n * 获取数据操作,并把数据返回到tableData\r\n * 用于展示\r\n */\n const getToken = async value => {\n const response = await axios.get(`${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 将用户数据添加到tableData\n tableData.value = resUsers;\n }\n };\n const getAPIToken = async value => {\n const response = await axios.get(`${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 使用 filter 方法筛选出 setPoolToken 等于 true 的用户\n const filteredUsers = resUsers.filter(user => user.setPoolToken === true);\n // 将筛选后的用户数据添加到 tableData\n tableData.value = filteredUsers;\n }\n };\n const getWebToken = async value => {\n const response = await axios.get(`${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 使用 filter 方法筛选出 setPoolToken 等于 true 的用户\n const filteredUsers = resUsers.filter(user => user.setPoolToken === false);\n // 将筛选后的用户数据添加到 tableData\n tableData.value = filteredUsers;\n }\n };\n /**\r\n * 获取数据操作\r\n * 用于日志数据展示\r\n */\n const getLoginData = async () => {\n const response = await axios.get(`${prefix}/api/selectLogin`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resLogins = data_token.map(item => ({\n ipAddress: item.ipAddress,\n requestIp: item.requestIp,\n outRequestNumber: item.outRequestNumber,\n inRequestNumber: item.inRequestNumber,\n lastLoginTime: item.lastLoginTime\n }));\n // 将用户数据添加到tableData\n loginData.value = resLogins;\n }\n };\n const getPool = async value => {\n const responsePool = await axios.get(`${prefix}/api/selectPoolToken?name=${value}`, {\n headers\n });\n const pool_token = responsePool.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(pool_token)) {\n const resPools = pool_token.map(item => ({\n poolName: item.poolName,\n poolTime: item.poolTime,\n poolToken: item.poolToken,\n shareTokens: item.shareTokens,\n checkPool: item.checkPool,\n intoOneApi: item.intoOneApi,\n poolOneApi_models: item.poolOneApi_models,\n poolModel_mapping: item.poolModel_mapping,\n oneApi_pandoraUrl: item.oneApi_pandoraUrl,\n groupChecked: item.groupChecked,\n priority: item.priority\n }));\n // 将用户数据添加到poolData\n poolData.value = resPools;\n }\n };\n const getShare = async value => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const responseShare = await axios.get(`${prefix}/api/selectShareToken?name=${value}`, {\n headers\n });\n const share_token = responseShare.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(share_token)) {\n const resShares = share_token.map(item => ({\n oneApi_name: item.oneApi_name,\n token_name: item.token_name,\n token_value: item.token_value,\n oneApi_baseUrl: item.oneApi_baseUrl,\n oneApi_models: item.oneApi_models,\n model_mapping: item.model_mapping,\n oneApi_groups: item.oneApi_groups,\n shareTime: item.shareTime,\n priority: item.priority\n }));\n // 将用户数据添加到poolData\n shareData.value = resShares;\n }\n loadingInstance.close();\n };\n const getSetting = async value => {\n const response = await axios.get(`${prefix}/api/selectSetting`, {\n headers\n });\n const data = response.data.data;\n proxy_api_prefix.value = data.proxy_api_prefix;\n isolated_conv_title.value = data.isolated_conv_title;\n bing.value = data.bing;\n timeout.value = data.timeout;\n proxy_url.value = data.proxy_url;\n public_share.value = data.public_share;\n //0.4.9.2\n disable_signup.value = data.disable_signup;\n auto_conv_arkose.value = data.auto_conv_arkose;\n proxy_file_service.value = data.proxy_file_service;\n custom_doh_host.value = data.custom_doh_host;\n enabled.value = data.tls.enabled;\n cert_file.value = data.tls.cert_file;\n key_file.value = data.tls.key_file;\n site_password.value = data.site_password;\n setup_password.value = data.setup_password;\n if (data.whitelist == null) {\n whitelist.value = \"null\";\n } else whitelist.value = data.whitelist;\n loginUsername.value = data.loginUsername;\n loginPassword.value = data.loginPassword;\n license_id.value = data.license_id;\n //0.4.8.2\n isGetToken.value = data.isGetToken;\n getTokenPassword.value = data.getTokenPassword;\n containerName.value = data.containerName;\n autoToken_url.value = data.autoToken_url;\n provider.value = data.validation.provider;\n site_key.value = data.validation.site_key;\n site_secret.value = data.validation.site_secret;\n site_login.value = data.validation.site_login;\n setup_login.value = data.validation.setup_login;\n oai_username.value = data.validation.oai_username;\n oai_password.value = data.validation.oai_password;\n //0.4.9.3\n auto_updateSession.value = data.auto_updateSession;\n auto_updateTime.value = data.auto_updateTime;\n auto_updateNumber.value = data.auto_updateNumber;\n pandoraNext_outUrl.value = data.pandoraNext_outUrl;\n if (!pandoraNext_outUrl.value.endsWith(\"/\")) {\n oneApi_pandoraUrl.value = pandoraNext_outUrl.value + \"/\" + proxy_api_prefix.value;\n } else {\n oneApi_pandoraUrl.value = pandoraNext_outUrl.value + proxy_api_prefix.value;\n }\n //0.5.0\n oneAPi_outUrl.value = data.oneAPi_outUrl;\n oneAPi_intoToken.value = data.oneAPi_intoToken;\n fetchDataAndFillForm();\n };\n const fetchDataAndFillForm = async () => {\n if (loginPassword.value == \"123456\" && loginUsername.value == \"root\") {\n ElMessageBox.alert(\"请先修改默认的初始账号和密码,并填写相应的信息,具体可参考网站文档!\", \"温馨提醒\", {\n confirmButtonText: \"确定\",\n callback: action => {\n ElMessage({\n type: \"info\",\n message: `如果不知道怎么填的话,可以看tokensTool的文档站!`\n });\n }\n });\n show_4.value = true;\n loginPassword.value = \"\";\n loginUsername.value = \"\";\n }\n };\n const getSelectedData = () => {\n const selectedData = multipleSelection.value;\n if (selectedData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n } else {\n show_9.value = true;\n }\n };\n const addSelectPoolToken = async () => {\n try {\n const selectedData = multipleSelection.value;\n const names = selectedData.map(userData => userData.name);\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n if (addPoolModel_mapping.value == \"\") {\n addPoolModel_mapping.value = \"{}\";\n }\n JSON.parse(addPoolModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const addPoolToken = {\n poolName: poolNameValue.value,\n intoOneApi: intoOneApi.value,\n poolOneApi_models: addPoolOneApi_models.value.toString(),\n poolModel_mapping: addPoolModel_mapping.value,\n oneApi_pandoraUrl: oneApi_pandoraUrl.value,\n shareTokens: names,\n groupChecked: groupChecked.value.toString(),\n priority: priority.value\n };\n const response = await fetch(`${prefix}/api/addPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addPoolToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n poolNameValue.value = \"\";\n getPool(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n poolNameValue.value = \"\";\n intoOneApi.value = false;\n groupChecked.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n addPoolModel_mapping.value = \"\";\n addPoolOneApi_models.value = [];\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n loadingInstance.close();\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消生成pool_token\"\n });\n }\n show_9.value = false;\n };\n const handlePoolNameChange = poolNameValue => {\n let selectedItem = poolData.value.find(item => item.poolName === poolNameValue);\n if (selectedItem != null) {\n temPool_token.value = selectedItem.poolToken;\n intoOneApi.value = selectedItem.intoOneApi;\n poolOneApi_models.value = selectedItem.poolOneApi_models.split(\",\");\n poolModel_mapping.value = selectedItem.poolModel_mapping;\n oneApi_pandoraUrl.value = selectedItem.oneApi_pandoraUrl;\n temGroupChecked.value = selectedItem.groupChecked.split(\",\");\n priority.value = selectedItem.priority;\n }\n };\n const handleShareNameChange = addToken_name => {\n let selectedItem = tableData.value.find(item => item.name === addToken_name && item.setPoolToken === true);\n };\n const filteredTableData = computed(() => {\n return tableData.value.filter(item => item.setPoolToken === true);\n });\n const requirePoolToken = async () => {\n try {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n if (poolModel_mapping.value == \"\") {\n poolModel_mapping.value = \"{}\";\n }\n JSON.parse(poolModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const selectedData = multipleSelection.value;\n const names = selectedData.map(userData => userData.name);\n const addPoolToken = {\n poolName: poolName.value,\n poolToken: temPool_token.value,\n intoOneApi: intoOneApi.value,\n poolOneApi_models: poolOneApi_models.value.toString(),\n poolModel_mapping: poolModel_mapping.value,\n oneApi_pandoraUrl: oneApi_pandoraUrl.value,\n shareTokens: names,\n groupChecked: temGroupChecked.value.toString(),\n priority: priority.value\n };\n console.log(addPoolToken);\n const response = await fetch(`${prefix}/api/requirePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addPoolToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n getPool(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n poolName.value = \"\";\n temPool_token.value = \"\";\n intoOneApi.value = false;\n poolOneApi_models.value = [];\n poolModel_mapping.value = \"\";\n groupChecked.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n loadingInstance.close();\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消修改pool_token\"\n });\n }\n show_11.value = false;\n };\n const addShareToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n try {\n if (addModel_mapping.value == \"\") {\n addModel_mapping.value = \"{}\";\n }\n JSON.parse(addModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const addShareToken = {\n oneApi_name: addOneApi_name.value,\n token_name: addToken_name.value,\n oneApi_baseUrl: addOneApi_baseUrl.value,\n oneApi_models: addOneApi_models.value.toString(),\n model_mapping: addModel_mapping.value,\n oneApi_groups: addOneApi_groups.value.toString(),\n priority: priority.value\n };\n const response = await fetch(`${prefix}/api/addShareToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addShareToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n getShare(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n addOneApi_name.value = \"\";\n addToken_name.value = \"\";\n addOneApi_baseUrl.value = \"\";\n addOneApi_models.value = [];\n addModel_mapping.value = \"\";\n addOneApi_groups.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消修改pool_token\"\n });\n }\n show_14.value = false;\n loadingInstance.close();\n };\n const pandoraUsage = ref(\"\");\n // 在组件加载完成后自动触发数据加载和填充\n onMounted(async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetchLoginToken();\n // 页面重定向\n if (window.innerWidth <= 900) {\n router.replace(\"/iphone\");\n } else {\n router.replace(\"/home\");\n }\n try {\n // 并行执行不依赖的函数\n await Promise.all([onSearch(value.value), getPool(value.value), getSetting(value.value)]);\n // 等待获取 Pandora 数据\n const response = await axios.get(`${prefix}/api/getPandoraNext`, {\n headers\n });\n const data = response.data.data;\n if (data != null) {\n pandoraUsage.value = `${data.current}/${data.total}`;\n }\n } catch (error) {\n console.error(\"An error occurred:\", error);\n // 这里可以添加错误处理逻辑\n } finally {\n loadingInstance.close();\n }\n });\n //用来警告session过期\n const tableRowClassName = ({\n row\n }) => {\n if (row.checkSession == false) {\n return \"warning-row\";\n }\n return \"\";\n };\n const poolRowClassName = ({\n row\n }) => {\n if (row.checkPool == false) {\n return \"warning-row\";\n }\n return \"\";\n };\n /**\r\n * 跳转到PandoraNext\r\n */\n const redirectToExternalLink = () => {\n window.open(pandoraNext_outUrl.value);\n };\n /**\r\n * 跳转到PandoraNext分享页\r\n */\n const redirectPandoraNextShare = () => {\n var url = pandoraNext_outUrl.value;\n // 检查最后一个字符是否是 /\n if (url.charAt(url.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n url += \"/\";\n }\n window.open(url + \"shared.html\");\n };\n /**\r\n * 跳转到PandoraNext\r\n */\n const requirePandoraNextLink = () => {\n var url = pandoraNext_outUrl.value;\n // 检查最后一个字符是否是 /\n if (url.charAt(url.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n url += \"/\";\n }\n window.open(url + \"setup\");\n };\n /**\r\n * 跳转到tokensTool使用说明\r\n */\n const requireTokensToolLink = () => {\n window.open(\"https://apifox.com/apidoc/shared-40345b46-9c9c-45cc-b494-6a6a387a978f\");\n };\n /**\r\n * 用于用户信息设置\r\n */\n const activeIndex = ref(\"-1\");\n let temRequireToken = \"\";\n const handleSelect = (key, keyPath) => {\n console.log(\"选择准备!\");\n };\n /**\r\n * 添加token开启函数\r\n * 类user\r\n */\n const addToken = () => {\n show_1.value = true;\n };\n /**\r\n * 添加token函数\r\n * 类user\r\n */\n const onAddToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const now = new Date();\n const formattedTime = `${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, \"0\")}-${now.getDate().toString().padStart(2, \"0\")} ${now.getHours().toString().padStart(2, \"0\")}:${now.getMinutes().toString().padStart(2, \"0\")}:${now.getSeconds().toString().padStart(2, \"0\")}`;\n if (addPassword.value != \"\") {\n addShared.value = false;\n addPlus.value = false;\n addShow_user_info.value = false;\n }\n if (addSetPoolToken.value == false) {\n addTokenValue.value = addUsername.value + \",\" + addUserPassword.value;\n addUseRefreshToken.value = false;\n addShared.value = false;\n addPlus.value = false;\n addShow_user_info.value = false;\n }\n let api = {\n name: addName.value,\n token: addTokenValue.value,\n username: addUsername.value,\n userPassword: addUserPassword.value,\n shared: addShared.value,\n auto_shared: addShared.value,\n show_user_info: addShow_user_info.value,\n plus: addPlus.value,\n setPoolToken: addSetPoolToken.value,\n useRefreshToken: addUseRefreshToken.value,\n password: addPassword.value,\n updateTime: formattedTime\n };\n fetch(`${prefix}/api/addToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(api)\n }).then(response => response.json()) // 将 .json() 放在正确的位置\n .then(data => {\n if (data.code == 1) {\n ElMessage.success(\"添加成功!\");\n addName.value = \"\";\n addTokenValue.value = \"\";\n addUsername.value = \"\";\n addUserPassword.value = \"\";\n addShared.value = false;\n addShow_user_info.value = false;\n addPlus.value = false;\n addSetPoolToken.value = false;\n addUseRefreshToken.value = false;\n addPassword.value = \"\";\n if (api.token == \"\") {\n api.token = data.data;\n ElMessage.success(\"已为您自动装填token!\");\n }\n } else {\n ElMessage.error(data.msg);\n }\n addPassword.value = \"\";\n getToken(\"\");\n loadingInstance.close();\n }).catch(error => {\n ElMessage.error(\"获取账号出现问题,请检查刷新网址是否正确!\");\n loadingInstance.close();\n });\n show_1.value = false;\n };\n /**\r\n * 展示token函数\r\n * 类user\r\n */\n const chart_show = ref(null);\n const showData = async row => {\n temName.value = row.name;\n temUsername.value = row.username;\n temUserPassword.value = row.userPassword;\n temToken.value = row.token;\n temAccessToken.value = row.access_token;\n temShareToken.value = row.share_token;\n temShared.value = row.shared;\n temShow_user_info.value = row.show_user_info;\n temPlus.value = row.plus;\n temPassword.value = row.password;\n setPoolToken.value = row.setPoolToken;\n useRefreshToken.value = row.useRefreshToken;\n temCheckSession.value = row.checkSession;\n if (setPoolToken.value != true) {\n show_2.value = true;\n return;\n }\n const usageHeader = {\n Authorization: `Bearer ${row.access_token}`\n };\n show_2.value = true;\n if (setPoolToken.value) {\n const response = await axios.get(`${oneApi_pandoraUrl.value}/api/token/info/${row.share_token}`, {\n headers: usageHeader\n });\n let usageData = [];\n let modelData = [];\n for (let key in response.data.usage) {\n if (!key.startsWith(\"range\")) {\n modelData.push(key);\n usageData.push(response.data.usage[key]);\n }\n }\n if (modelData.length == 0 && usageData.length == 0) {\n modelData = [\"gpt-4\", \"gpt-3.5-turbo\", \"gpt-3.5-turbo-0613\"];\n usageData = [0, 0, 0];\n }\n const myChart_show = echarts.init(chart_show.value);\n const option = {\n title: {\n text: `今日${response.data.usage[\"range\"]} ${temName.value}各模型用量`,\n textStyle: {\n // 调整字体大小\n fontSize: 14,\n color: \"#606266\" // 这里是深灰色,你可以根据需要更改颜色\n },\n\n // 设置标题位置\n left: \"center\",\n top: \"bottom\" // 放在底部\n },\n\n tooltip: {},\n legend: {\n data: modelData\n },\n xAxis: {\n data: modelData\n },\n yAxis: {},\n series: [{\n name: \"对话数量\",\n type: \"bar\",\n data: usageData,\n barWidth: \"25%\",\n itemStyle: {\n color: function (params) {\n const colorList = [\"#3498db\", \"#2ecc71\", \"#f1c40f\", \"#9b59b6\", \"#1abc9c\", \"#e67e22\", \"#ecf0f1\", \"#95a5a6\", \"#34495e\", \"#16a085\"];\n return colorList[params.dataIndex % colorList.length];\n }\n }\n }]\n };\n myChart_show.setOption(option);\n }\n };\n const oneApi_name = ref(\"\");\n const token_name = ref(\"\");\n const token_value = ref(\"\");\n const oneApi_baseUrl = ref(\"\");\n const oneApi_models = ref([]);\n const model_mapping = ref(\"\");\n const temOneApi_models = ref(\"\");\n const temOneApi_groups = ref(\"\");\n const oneApi_groups = ref([\"default\", \"svip\", \"vip\"]);\n const shareTime = ref(\"\");\n const showShareToken = row => {\n oneApi_name.value = row.oneApi_name;\n token_name.value = row.token_name;\n token_value.value = row.token_value;\n oneApi_baseUrl.value = row.oneApi_baseUrl;\n temOneApi_models.value = row.oneApi_models;\n model_mapping.value = row.model_mapping;\n temOneApi_groups.value = row.oneApi_groups;\n priority.value = row.priority;\n shareTime.value = row.shareTime;\n show_15.value = true;\n };\n let previousSetpoolToken = false;\n let previousUseRefreshToken = false;\n let previousToken = \"\";\n //编辑准备\n const handleEdit = (index, row) => {\n temName.value = row.name;\n temUsername.value = row.username;\n temUserPassword.value = row.userPassword;\n //用来判断token是否更改\n temToken.value = row.token;\n temRequireToken = row.token;\n temShared.value = row.shared;\n temShow_user_info.value = row.show_user_info;\n temPlus.value = row.plus;\n temPassword.value = row.password;\n setPoolToken.value = row.setPoolToken;\n useRefreshToken.value = row.useRefreshToken;\n previousSetpoolToken = setPoolToken.value;\n previousUseRefreshToken = useRefreshToken.value;\n previousToken = temToken.value;\n temCheckSession.value = row.checkSession;\n temAccessToken.value = row.access_token;\n temShareToken.value = row.share_token;\n show.value = true;\n };\n /**\r\n * 修改系统设置函数\r\n */\n const onRequireSetting = async value => {\n if (value == 0) {\n show_3.value = true;\n } else if (value == 1) {\n show_4.value = true;\n } else if (value == 2) {\n show_5.value = true;\n }\n };\n const RequireSetting = value => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n if (whitelist.value == null || whitelist.value == \"null\") {\n whitelist.value = \"\";\n }\n if (enabled.value == false) {\n cert_file.value = \"\";\n key_file.value = \"\";\n }\n const tls = {\n enabled: enabled.value,\n cert_file: cert_file.value,\n key_file: key_file.value\n };\n const validation = {\n provider: provider.value,\n site_key: site_key.value,\n site_secret: site_secret.value,\n site_login: site_login.value,\n setup_login: setup_login.value,\n oai_username: oai_username.value,\n oai_password: oai_password.value\n };\n const setting = {\n proxy_api_prefix: proxy_api_prefix.value,\n isolated_conv_title: isolated_conv_title.value,\n bing: bing.value,\n timeout: timeout.value,\n proxy_url: proxy_url.value,\n public_share: public_share.value,\n site_password: site_password.value,\n setup_password: setup_password.value,\n loginUsername: loginUsername.value,\n loginPassword: loginPassword.value,\n license_id: license_id.value,\n //0.4.9.2\n disable_signup: disable_signup.value,\n auto_conv_arkose: auto_conv_arkose.value,\n proxy_file_service: proxy_file_service.value,\n custom_doh_host: custom_doh_host.value,\n //0.4.8.2\n isGetToken: isGetToken.value,\n getTokenPassword: getTokenPassword.value,\n containerName: containerName.value,\n autoToken_url: autoToken_url.value,\n whitelist: whitelist.value,\n validation: validation,\n tls: tls\n };\n fetch(`${prefix}/api/requireSetting`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(setting)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n } else {\n ElMessage.error(data.msg);\n }\n fetchLoginToken();\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求requireSetting接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n if (value == 0) {\n show_3.value = false;\n } else if (value == 1) {\n show_4.value = false;\n } else if (value == 2) {\n show_5.value = false;\n }\n };\n const RequireAutoUpdate = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n // 检查最后一个字符是否是 /\n if (pandoraNext_outUrl.value.charAt(pandoraNext_outUrl.value.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n pandoraNext_outUrl.value += \"/\";\n }\n const setting = {\n auto_updateSession: auto_updateSession.value,\n auto_updateTime: auto_updateTime.value,\n auto_updateNumber: auto_updateNumber.value,\n pandoraNext_outUrl: pandoraNext_outUrl.value,\n oneAPi_outUrl: oneAPi_outUrl.value,\n oneAPi_intoToken: oneAPi_intoToken.value\n };\n fetch(`${prefix}/api/controllerTask`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(setting)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n } else {\n ElMessage.error(data.msg);\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求controllerTask接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n show_8.value = false;\n };\n /**\r\n * 修改token函数\r\n * 类user\r\n */\n const RequireToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let formattedTime = \"\";\n if (temRequireToken != temToken.value) {\n const now = new Date();\n formattedTime = `${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, \"0\")}-${now.getDate().toString().padStart(2, \"0\")} ${now.getHours().toString().padStart(2, \"0\")}:${now.getMinutes().toString().padStart(2, \"0\")}:${now.getSeconds().toString().padStart(2, \"0\")}`;\n }\n if (setPoolToken.value == false) {\n temShared.value = false;\n temPlus.value = false;\n temShow_user_info.value = false;\n useRefreshToken.value = false;\n }\n if (temShared.value === true) {\n temPassword.value = \"\";\n } else {\n temPlus.value = false;\n temShow_user_info.value = false;\n }\n let msg = \"\";\n if (previousSetpoolToken != setPoolToken.value && previousToken == temToken.value) {\n if (setPoolToken.value == false) {\n msg = \"您确定要关闭API模型开启web模式,您将无法生成任何的token,但不消耗额度!\";\n } else {\n if (useRefreshToken.value == true) {\n msg = \"您确定要开启API模式,并使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!\";\n } else {\n msg = \"您确定要开启API模式,并使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!\";\n }\n }\n } else if (previousUseRefreshToken != useRefreshToken.value && previousToken == temToken.value) {\n if (useRefreshToken.value == true) {\n msg = \"您确定要切换使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!\";\n } else {\n msg = \"您确定要切换使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!\";\n }\n } else {\n msg = \"修改将要提交,您确定修改好了吗?\";\n }\n ElMessageBox.confirm(msg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const api = {\n name: temName.value,\n token: temToken.value,\n username: temUsername.value,\n userPassword: temUserPassword.value,\n shared: temShared.value,\n auto_shared: temShared.value,\n show_user_info: temShow_user_info.value,\n plus: temPlus.value,\n setPoolToken: setPoolToken.value,\n useRefreshToken: useRefreshToken.value,\n checkSession: temCheckSession.value,\n password: temPassword.value,\n access_token: temAccessToken.value,\n share_token: temShareToken.value\n };\n fetch(`${prefix}/api/requiredToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(api)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n getToken(\"\");\n } else {\n ElMessage.error(data.msg);\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求requireToken接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n show.value = false;\n }).catch(() => {\n loadingInstance.close();\n ElMessage({\n type: \"info\",\n message: \"编辑取消!\"\n });\n return;\n });\n };\n /**\r\n * 开启pandora函数\r\n */\n const openPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/open`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 暂停pandora函数\r\n */\n const closePandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/close`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 重启pandora函数\r\n */\n const AgainPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/restart`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 重载pandora函数\r\n */\n const reloadPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/reload`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 查询pandoraNext余额函数\r\n */\n const pandoraIp = ref(\"\");\n const pandoraTime = ref(\"\");\n const getPandoraNext = async () => {\n const response = await axios.get(`${prefix}/api/getPandoraNext`, {\n headers\n });\n const data = response.data.data;\n if (data != null) {\n pandoraUsage.value = data.current + \"/\" + data.total;\n pandoraIp.value = data.ip;\n var currentTime = new Date();\n const futureTime = new Date(currentTime.getTime() + data.ttl * 1000);\n var year = futureTime.getFullYear();\n var month = futureTime.getMonth() + 1; // 月份是从0开始的,所以要加1\n var day = futureTime.getDate();\n var hours = futureTime.getHours();\n var minutes = futureTime.getMinutes();\n var seconds = futureTime.getSeconds();\n pandoraTime.value = year + \"-\" + month + \"-\" + day + \" \" + hours + \":\" + minutes + \":\" + seconds;\n }\n show_7.value = true;\n };\n /**\r\n * 一键全生成\r\n */\n const updateAllShareToken = async () => {\n let reNewMsg = \"全部检查并生成可能会加载1-3分钟,请您耐心等待!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true,\n text: \"正在加载中,请耐心等待...\"\n });\n const response = await axios.get(`${prefix}/api/updateAllToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n await Promise.all([getToken(\"\"), getPool(\"\")]);\n ElMessageBox.alert(data, \"温馨提示\", {\n dangerouslyUseHTMLString: true\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"全部检查并生成取消!\"\n });\n });\n };\n /**\r\n * 一键全刷新pool_token\r\n */\n const updateAllPoolToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/updateAllPoolToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n getPool(\"\");\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 一键全检查pool_token\r\n */\n const verifyAllPoolToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/verifyAllPoolToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n getPool(\"\");\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 刷新Token函数\r\n */\n const reNew = row => {\n if (row.setPoolToken == false) {\n ElMessage.error(\"未开启API模式,无法刷新\");\n return;\n }\n let reNewMsg = \"您确定要刷新session_token吗,刷新session_token消耗100额度,请您要仔细认真考虑哦!\";\n if (row.useRefreshToken) {\n reNewMsg = \"您确定要刷新refresh_token吗,刷新refresh_token消耗1000额度,请您要仔细认真考虑哦!\";\n }\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/updateSessionToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n row.token = data.data;\n getToken(\"\");\n ElMessageBox.alert(\"刷新成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n };\n /**\r\n * 刷新Token函数\r\n */\n const reNewPool = row => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/refreshSimplyPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(\"刷新成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n const reviewShare = row => {\n oneApi_name.value = row.oneApi_name;\n token_name.value = row.token_name;\n token_value.value = row.token_value;\n oneApi_baseUrl.value = row.oneApi_baseUrl;\n oneApi_models.value = row.oneApi_models.split(\",\");\n model_mapping.value = row.model_mapping;\n oneApi_groups.value = row.oneApi_groups.split(\",\");\n priority.value = row.priority;\n shareTime.value = row.shareTime;\n show_16.value = true;\n };\n const requireShareToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const requireShare = {\n oneApi_name: oneApi_name.value,\n token_name: token_name.value,\n token_value: token_value.value,\n oneApi_baseUrl: oneApi_baseUrl.value,\n oneApi_models: oneApi_models.value.toString(),\n model_mapping: model_mapping.value,\n oneApi_groups: oneApi_groups.value.toString(),\n priority: priority.value\n };\n fetch(`${prefix}/api/requireShareToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(requireShare)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n getShare(\"\");\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n show_16.value = false;\n };\n /**\r\n * 生成token操作\r\n */\n const review = row => {\n if (row.setPoolToken == false) {\n ElMessage.error(\"未开启API模式,无法生成\");\n return;\n }\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/updateToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n ElMessageBox.alert(\"生成shareToken成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n getToken(\"\");\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 更新token操作\r\n */\n const reviewPool = row => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/changePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(\"更换pool_token成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 删除PoolToken函数\r\n * 参数 Pool\r\n */\n const deletePoolToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个Pool_Token吗,删除之后就找不到咯,请您要仔细认真考虑哦!\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n fetch(`${prefix}/api/deletePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data.data != null) {\n getPool(\"\");\n ElMessage.success(data.data);\n loadingInstance.close();\n } else {\n getPool(\"\");\n ElMessage.error(data.msg);\n loadingInstance.close();\n }\n show_9.value = false;\n }).catch(error => {\n // 处理完成失败的逻辑\n console.error(\"删除失败\", error);\n getPool(\"\");\n loadingInstance.close();\n show_9.value = false;\n });\n }).catch(() => {\n loadingInstance.close();\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n });\n };\n /**\r\n * 删除PoolToken函数\r\n * 参数 Pool\r\n */\n const verifySimplyPoolToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/verifySimplyPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n getPool(\"\");\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 删除Token函数\r\n * 参数 user\r\n */\n const deleteToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个Token吗,删除之后就找不到咯,记得点击全部刷新poolToken\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`${prefix}/api/deleteToken`, row, {\n headers\n }).then(async response => {\n if (row.setPoolToken == true) {\n await axios.get(`${prefix}/api/updateAllPoolToken`, {\n headers\n });\n }\n msg = response.data.data;\n getToken(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n };\n /**\r\n * 删除Token函数\r\n * 参数 user\r\n */\n const deleteShareToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个share_Token吗,删除之后就找不到咯\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`${prefix}/api/deleteShareToken`, row, {\n headers\n }).then(async response => {\n msg = response.data.data;\n getShare(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n };\n /**\r\n * 获取token的过期时间\r\n */\n const formatDate = value => {\n if (!value) return \"\";\n var nowDay = new Date();\n const timeDay = parseISO(value.updateTime);\n const daysDiff = differenceInDays(nowDay, timeDay);\n if (value.token.length >= 2000) {\n return daysDiff >= 80 ? \"已经过去了至少80天\" : Math.ceil(80 - daysDiff) + \"天\";\n } else if (value.token.length < 200 && !value.token.includes(\"fk-\")) {\n return \"永久\";\n } else {\n return daysDiff >= 10 ? \"已经过去了至少10天\" : Math.ceil(10 - daysDiff) + \"天\";\n }\n };\n /**\r\n * 更改Token显示操作\r\n */\n const dataToken = value => {\n return value.substring(0, 30) + \"...\";\n };\n /**\r\n * 退出登录操作\r\n */\n const logout = () => {\n // 删除本地存储的 token\n localStorage.removeItem(\"jwtToken\");\n // 使用 Vue Router 进行页面跳转到登录页面\n router.replace(`/`);\n };\n const getPoolToken = () => {\n show_6.value = true;\n };\n const getShareToken = async () => {\n await getShare(\"\");\n show_13.value = true;\n };\n const getLogin = () => {\n getLoginData();\n show_10.value = true;\n };\n const redirectToGitHub = () => {\n window.open(\"https://github.com/Yanyutin753/PandoraNext-TokensTool\");\n };\n const copyToken = value => {\n const textarea = document.createElement(\"textarea\");\n // 设置 textarea 的值为要复制的文本\n textarea.value = value;\n // 将 textarea 添加到 DOM 中\n document.body.appendChild(textarea);\n // 选中 textarea 中的文本\n textarea.select();\n // 执行复制操作\n document.execCommand(\"copy\");\n // 从 DOM 中移除 textarea 元素\n document.body.removeChild(textarea);\n ElMessage({\n type: \"success\",\n message: \"复制成功!\"\n });\n };\n const selectChoice = buttonValue => {\n const selectedData = multipleSelection.value;\n const userData = selectedData.map(userData => userData);\n if (selectedData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n }\n if (buttonValue == \"选中删除Token\") {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这\" + selectedData.length + \"个Token吗,删除之后就找不到咯\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`${prefix}/api/deleteTokenList`, userData, {\n headers\n }).then(async response => {\n await axios.get(`${prefix}/api/updateAllPoolToken`, {\n headers\n });\n msg = response.data.data;\n getToken(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n return;\n } else if (buttonValue == \"选中刷新Token\") {\n let count = 0;\n const selectedData = multipleSelection.value;\n const userData = selectedData.map(userData => userData);\n userData.forEach((item, index) => {\n if (item.setPoolToken) {\n if (item.useRefreshToken) {\n count += 1000;\n } else {\n count += 100;\n }\n }\n });\n const reNewMsg = \"您确定要花\" + count + \"积分刷新这\" + selectedData.length + \"个Token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/updateSessionTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(userData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getToken(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中合成pool_token\") {\n getSelectedData();\n } else if (buttonValue == \"选中修改pool_token\") {\n poolName.value = \"\";\n shareTokens.value = \"\";\n temPool_token.value = \"\";\n poolTime.value = \"\";\n intoOneApi.value = false;\n poolOneApi_models.value = [];\n poolModel_mapping.value = \"\";\n oneApi_pandoraUrl.value = \"\";\n temGroupChecked.value = [];\n priority.value = 0;\n show_11.value = true;\n }\n };\n const showPool = row => {\n temPoolName.value = row.poolName;\n shareTokens.value = row.shareTokens;\n temPool_token.value = row.poolToken;\n poolTime.value = row.poolTime;\n intoOneApi.value = row.intoOneApi;\n poolOneApi_models.value = row.poolOneApi_models.split(\",\");\n poolModel_mapping.value = row.poolModel_mapping;\n oneApi_pandoraUrl.value = row.oneApi_pandoraUrl;\n temGroupChecked.value = row.groupChecked.split(\",\");\n priority.value = row.priority;\n show_17.value = true;\n };\n const selectPoolChoice = buttonValue => {\n const selectedPoolData = multipleSelectionPool.value;\n const temPoolData = selectedPoolData.map(temPoolData => temPoolData);\n if (temPoolData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n }\n if (buttonValue == \"选中检查pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要花\" + count + \"积分检查这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/verifySimplyPoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"检查取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中刷新pool_token\") {\n const reNewMsg = \"您确定要刷新这\" + selectedPoolData.length + \"个pool_token吗?\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/refreshSimplyPoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中更换pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要更换这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/changePoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"更换取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中删除pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要删除这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/deletePoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n });\n return;\n }\n };\n const chart = ref(null);\n const getUsage = async () => {\n show_12.value = true;\n const response = await axios.get(`${prefix}/api/modelsUsage`, {\n headers\n });\n let usageData = response.data.data.map(item => item.usage);\n let modelData = response.data.data.map(item => item.model);\n const myChart = echarts.init(chart.value);\n const option = {\n title: {\n text: \"copilot每日对话统计\",\n fontSize: 18,\n color: \"#606266\" // 这里是深灰色,你可以根据需要更改颜色\n },\n\n tooltip: {},\n legend: {\n data: modelData\n },\n xAxis: {\n data: modelData\n },\n yAxis: {},\n series: [{\n name: \"对话数量\",\n type: \"bar\",\n data: usageData,\n barWidth: \"40%\",\n itemStyle: {\n color: function (params) {\n const colorList = [\"#3498db\", \"#2ecc71\", \"#f1c40f\", \"#9b59b6\", \"#1abc9c\", \"#e67e22\", \"#ecf0f1\", \"#95a5a6\", \"#34495e\", \"#16a085\"];\n return colorList[params.dataIndex % colorList.length];\n }\n }\n }]\n };\n myChart.setOption(option);\n };\n return (_ctx, _cache) => {\n const _component_van_icon = _resolveComponent(\"van-icon\");\n const _component_el_menu_item = _resolveComponent(\"el-menu-item\");\n const _component_el_sub_menu = _resolveComponent(\"el-sub-menu\");\n const _component_el_menu = _resolveComponent(\"el-menu\");\n const _component_van_button = _resolveComponent(\"van-button\");\n const _component_el_page_header = _resolveComponent(\"el-page-header\");\n const _component_van_search = _resolveComponent(\"van-search\");\n const _component_el_table_column = _resolveComponent(\"el-table-column\");\n const _component_el_button = _resolveComponent(\"el-button\");\n const _component_el_tag = _resolveComponent(\"el-tag\");\n const _component_el_popover = _resolveComponent(\"el-popover\");\n const _component_el_option = _resolveComponent(\"el-option\");\n const _component_el_select = _resolveComponent(\"el-select\");\n const _component_van_field = _resolveComponent(\"van-field\");\n const _component_van_switch = _resolveComponent(\"van-switch\");\n const _component_van_cell_group = _resolveComponent(\"van-cell-group\");\n const _component_van_form = _resolveComponent(\"van-form\");\n const _component_van_dialog = _resolveComponent(\"van-dialog\");\n const _component_CopyDocument = _resolveComponent(\"CopyDocument\");\n const _component_el_icon = _resolveComponent(\"el-icon\");\n const _component_h10 = _resolveComponent(\"h10\");\n const _component_el_select_group = _resolveComponent(\"el-select-group\");\n const _component_el_dialog = _resolveComponent(\"el-dialog\");\n const _component_el_form_item = _resolveComponent(\"el-form-item\");\n const _component_el_input = _resolveComponent(\"el-input\");\n const _component_van_checkbox = _resolveComponent(\"van-checkbox\");\n const _component_van_checkbox_group = _resolveComponent(\"van-checkbox-group\");\n const _directive_loading = _resolveDirective(\"loading\");\n return _openBlock(), _createElementBlock(_Fragment, null, [_createElementVNode(\"div\", _hoisted_1, [_hoisted_2, _createVNode(_component_el_menu, {\n \"default-active\": activeIndex.value,\n class: \"el-menu-demo\",\n mode: \"horizontal\",\n ellipsis: false,\n onSelect: handleSelect,\n \"active-text-color\": \"#0ea27e\",\n \"text-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"0\"\n }, {\n title: _withCtx(() => [_createElementVNode(\"div\", _hoisted_4, [_createElementVNode(\"h2\", null, _toDisplayString(pandoraUsage.value), 1)]), _createVNode(_component_van_icon, {\n name: \"replay\",\n size: \"20\",\n onClick: getPandoraNext\n })]),\n default: _withCtx(() => [_hoisted_3]),\n _: 1\n }), _hoisted_5, _createVNode(_component_el_sub_menu, {\n index: \"3\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"列表\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"3-3\",\n onClick: updateAllShareToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"全部检查并生成\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-1\",\n onClick: getPoolToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"pool_token列表\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-2\",\n onClick: getShareToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"share_token列表\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-5\",\n onClick: getUsage\n }, {\n default: _withCtx(() => [_createTextVNode(\"copilot每日用量统计\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-4\",\n onClick: getLogin\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool登录日志\")]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"1\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"设置\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"1-1\",\n onClick: _cache[0] || (_cache[0] = $event => onRequireSetting(pandoraNext))\n }, {\n default: _withCtx(() => [_createTextVNode(\"PandoraNext设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"1-2\",\n onClick: _cache[1] || (_cache[1] = $event => onRequireSetting(tokensTool))\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"1-3\",\n onClick: _cache[2] || (_cache[2] = $event => onRequireSetting(validation))\n }, {\n default: _withCtx(() => [_createTextVNode(\"验证码信息设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"1-4\",\n onClick: _cache[3] || (_cache[3] = $event => show_8.value = true)\n }, {\n default: _withCtx(() => [_createTextVNode(\"定时&接口设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"1-5\",\n onClick: requireTokensToolLink\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool使用手册\")]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"2\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"状态\")]),\n default: _withCtx(() => [_createVNode(_component_el_sub_menu, {\n index: \"2-1\"\n }, {\n title: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"状态\", 1)]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"2-1-1\",\n onClick: openPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"开启\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-1-2\",\n onClick: closePandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"暂停\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-1-3\",\n onClick: AgainPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"重启\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-1-4\",\n onClick: reloadPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"重载\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"2-2\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"跳转Web服务\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"2-2-1\",\n onClick: redirectToExternalLink\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"主页\", 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-2-2\",\n onClick: redirectPandoraNextShare\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"共享页\", 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-2-3\",\n onClick: requirePandoraNextLink\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"修改页\", 1)]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"2-3\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"获取token地址\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"2-3-1\"\n }, {\n default: _withCtx(() => [_hoisted_6]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-3-2\"\n }, {\n default: _withCtx(() => [_hoisted_7]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-3-3\"\n }, {\n default: _withCtx(() => [_hoisted_8]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2-4\",\n onClick: logout\n }, {\n default: _withCtx(() => [_createTextVNode(\"退出登录\")]),\n _: 1\n })]),\n _: 1\n })]),\n _: 1\n }, 8, [\"default-active\"]), _createElementVNode(\"div\", _hoisted_9, [_createVNode(_component_el_page_header, {\n icon: null,\n title: \" \"\n }, {\n content: _withCtx(() => [_hoisted_10]),\n extra: _withCtx(() => [_createElementVNode(\"div\", {\n class: \"addToken\",\n onClick: addToken\n }, [_createVNode(_component_van_button, {\n square: \"\",\n icon: \"add-o\",\n color: \"#0ea27e\",\n class: \"addTokenButton\"\n })])]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_11, [_createElementVNode(\"div\", _hoisted_12, [_createElementVNode(\"div\", _hoisted_13, [_createVNode(_component_van_search, {\n modelValue: value.value,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => value.value = $event),\n shape: \"round\",\n clearable: \"\",\n placeholder: \"请输入搜索token名称或类型\",\n onSearch: onSearch\n }, null, 8, [\"modelValue\"])]), _createElementVNode(\"div\", _hoisted_14, [_withDirectives((_openBlock(), _createBlock(_unref(ElTable), {\n data: tableData.value,\n style: {\n \"width\": \"100%\"\n },\n onSelectionChange: handleSelectionChange,\n class: \"tokenTable\",\n \"default-sort\": {\n prop: 'updateTime',\n prop: 'setPoolToken'\n },\n \"row-class-name\": tableRowClassName\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n type: \"selection\",\n width: \"45\"\n }), _createVNode(_component_el_table_column, {\n label: \"名称\",\n width: \"160\",\n prop: \"setPoolToken\",\n sortable: \"\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_15, [_createElementVNode(\"div\", null, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"h5\", null, _toDisplayString(scope.row.setPoolToken ? scope.row.useRefreshToken ? \"refAPI\" : \"sesAPI\" : \"Web\"), 1)]),\n _: 2\n }, 1024)]), _createElementVNode(\"span\", _hoisted_16, _toDisplayString(scope.row.name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n prop: \"updateTime\",\n sortable: \"\",\n label: \"有效时间\",\n width: \"117\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", null, \"注册时间:\" + _toDisplayString(scope.row.updateTime), 1)]),\n reference: _withCtx(() => [_createElementVNode(\"span\", _hoisted_17, [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(formatDate(scope.row)), 1)]),\n _: 2\n }, 1024)])]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n width: \"370\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => handleEdit(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"编辑\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => showData(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deleteToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"success\",\n onClick: $event => reNew(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"刷新\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"warning\",\n onClick: $event => review(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"生成\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"])), [[_directive_loading, _ctx.loading]])]), _createElementVNode(\"div\", _hoisted_18, [_createVNode(_component_el_select, {\n modelValue: buttonValue.value,\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = $event => buttonValue.value = $event),\n clearable: \"\",\n filterable: \"\",\n placeholder: \"请选择批量操作\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(options, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonValue,\n label: item.label,\n value: item.buttonValue\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_button, {\n class: \"my-button\",\n onClick: _cache[6] || (_cache[6] = $event => selectChoice(buttonValue.value))\n }, {\n default: _withCtx(() => [_hoisted_19]),\n _: 1\n })])])]), _hoisted_20]), _createVNode(_component_van_dialog, {\n show: show.value,\n \"onUpdate:show\": _cache[17] || (_cache[17] = $event => show.value = $event),\n title: \"📌修改token信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_21, [_createVNode(_component_van_form, {\n onSubmit: _cache[16] || (_cache[16] = $event => RequireToken())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_22, _createVNode(_component_van_field, {\n modelValue: temUsername.value,\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = $event => temUsername.value = $event),\n name: \"OpenAi邮箱\",\n label: \"OpenAi邮箱\",\n \"input-align\": \"center\",\n placeholder: \"OpenAi邮箱\",\n rules: [{\n required: true,\n message: '请填写OpenAi邮箱'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_23, _createVNode(_component_van_field, {\n modelValue: temUserPassword.value,\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = $event => temUserPassword.value = $event),\n name: \"OpenAi密码\",\n \"input-align\": \"center\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n rules: [{\n required: true,\n message: '请填写OpenAi密码'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_24, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: setPoolToken.value,\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = $event => setPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_25, [_hoisted_26, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refreshToken\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: useRefreshToken.value,\n \"onUpdate:modelValue\": _cache[10] || (_cache[10] = $event => useRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_27, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temShared.value,\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = $event => temShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), temShared.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_28, [_hoisted_29, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temShow_user_info.value,\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = $event => temShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_30, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temPlus.value,\n \"onUpdate:modelValue\": _cache[13] || (_cache[13] = $event => temPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true)])) : _createCommentVNode(\"\", true), temShared.value == false || setPoolToken.value == false ? (_openBlock(), _createElementBlock(\"div\", _hoisted_31, [_hoisted_32, _createVNode(_component_van_field, {\n rows: \"2\",\n type: \"textarea\",\n autoSize: \"\",\n modelValue: temPassword.value,\n \"onUpdate:modelValue\": _cache[14] || (_cache[14] = $event => temPassword.value = $event),\n name: \"Token的密码\",\n \"input-align\": \"center\",\n label: \"Token的密码\",\n placeholder: \"填了将不会分享给他人(如不填则输入Token名即可进入)\",\n rules: [{\n validator: addPasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), _hoisted_33, _createVNode(_component_van_field, {\n modelValue: temToken.value,\n \"onUpdate:modelValue\": _cache[15] || (_cache[15] = $event => temToken.value = $event),\n label: \"Token的值\",\n type: \"textarea\",\n \"input-align\": \"center\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的Token(选填),session或refresh_token\",\n autosize: {\n maxHeight: 100,\n minHeight: 50\n },\n \"show-word-limit\": \"\"\n }, null, 8, [\"modelValue\"]), _hoisted_34]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_35, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_36]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_1.value,\n \"onUpdate:show\": _cache[29] || (_cache[29] = $event => show_1.value = $event),\n title: \"✨添加token信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"addTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_37, [_createVNode(_component_van_form, {\n onSubmit: _cache[28] || (_cache[28] = $event => onAddToken())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_38, _createVNode(_component_van_field, {\n modelValue: addName.value,\n \"onUpdate:modelValue\": _cache[18] || (_cache[18] = $event => addName.value = $event),\n name: \"Token用户名\",\n label: \"Token用户名\",\n placeholder: \"Token用户名\",\n rules: [{\n required: true,\n message: '请填写Token用户名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_39, _createVNode(_component_van_field, {\n modelValue: addUsername.value,\n \"onUpdate:modelValue\": _cache[19] || (_cache[19] = $event => addUsername.value = $event),\n name: \"OpenAi用户名\",\n label: \"OpenAi用户名\",\n placeholder: \"OpenAi用户名\",\n rules: [{\n required: true,\n message: '请填写OpenAi用户名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_40, _createVNode(_component_van_field, {\n modelValue: addUserPassword.value,\n \"onUpdate:modelValue\": _cache[20] || (_cache[20] = $event => addUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n rules: [{\n required: true,\n message: '请填写OpenAi密码'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_41, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addSetPoolToken.value,\n \"onUpdate:modelValue\": _cache[21] || (_cache[21] = $event => addSetPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_42, [_hoisted_43, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refreshToken\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addUseRefreshToken.value,\n \"onUpdate:modelValue\": _cache[22] || (_cache[22] = $event => addUseRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_44, [_hoisted_45, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addShared.value,\n \"onUpdate:modelValue\": _cache[23] || (_cache[23] = $event => addShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), addShared.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_46, [_hoisted_47, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addShow_user_info.value,\n \"onUpdate:modelValue\": _cache[24] || (_cache[24] = $event => addShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_48, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addPlus.value,\n \"onUpdate:modelValue\": _cache[25] || (_cache[25] = $event => addPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true)])) : _createCommentVNode(\"\", true), addShared.value == '' ? (_openBlock(), _createElementBlock(\"div\", _hoisted_49, [_hoisted_50, _createVNode(_component_van_field, {\n rows: \"3\",\n type: \"textarea\",\n autoSize: \"\",\n modelValue: addPassword.value,\n \"onUpdate:modelValue\": _cache[26] || (_cache[26] = $event => addPassword.value = $event),\n name: \"Token的密码\",\n label: \"Token的密码\",\n \"input-align\": \"center\",\n placeholder: \"填了将不会分享给他人(如不填则输入Token名即可进入)\",\n rules: [{\n validator: addPasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_51, [_hoisted_52, _createVNode(_component_van_field, {\n rows: \"3\",\n type: \"textarea\",\n maxlength: \"5000\",\n \"show-word-limit\": \"\",\n modelValue: addTokenValue.value,\n \"onUpdate:modelValue\": _cache[27] || (_cache[27] = $event => addTokenValue.value = $event),\n name: \"Token的值\",\n label: \"Token的值\",\n placeholder: \"选填(可不填,不填则使用账号密码),目前只支持session_token或refresh_token\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_53]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_54, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_55]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_2.value,\n \"onUpdate:show\": _cache[49] || (_cache[49] = $event => show_2.value = $event),\n title: \"🔎token信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"showDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_56, [_createVNode(_component_van_form, null, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_57, _createVNode(_component_van_field, {\n modelValue: temName.value,\n \"onUpdate:modelValue\": _cache[30] || (_cache[30] = $event => temName.value = $event),\n name: \"Token用户名\",\n label: \"Token用户名\",\n placeholder: \"Token用户名\",\n \"left-icon\": \"description-o\",\n \"input-align\": \"center\",\n readonly: true,\n onClickLeftIcon: _cache[31] || (_cache[31] = $event => copyToken(temName.value))\n }, null, 8, [\"modelValue\"]), _hoisted_58, _createVNode(_component_van_field, {\n modelValue: temPassword.value,\n \"onUpdate:modelValue\": _cache[32] || (_cache[32] = $event => temPassword.value = $event),\n type: \"temPassword\",\n name: \"Token的密码\",\n label: \"Token的密码\",\n placeholder: \"Token的密码\",\n \"input-align\": \"center\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[33] || (_cache[33] = $event => copyToken(temPassword.value))\n }, null, 8, [\"modelValue\"]), _hoisted_59, _createVNode(_component_van_field, {\n modelValue: temUsername.value,\n \"onUpdate:modelValue\": _cache[34] || (_cache[34] = $event => temUsername.value = $event),\n name: \"OpenAi邮箱\",\n label: \"OpenAi邮箱\",\n placeholder: \"OpenAi邮箱\",\n \"left-icon\": \"description-o\",\n \"input-align\": \"center\",\n readonly: true,\n onClickLeftIcon: _cache[35] || (_cache[35] = $event => copyToken(temUsername.value))\n }, null, 8, [\"modelValue\"]), _hoisted_60, _createVNode(_component_van_field, {\n modelValue: temUserPassword.value,\n \"onUpdate:modelValue\": _cache[36] || (_cache[36] = $event => temUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n \"left-icon\": \"description-o\",\n \"input-align\": \"center\",\n readonly: true,\n onClickLeftIcon: _cache[37] || (_cache[37] = $event => copyToken(temUserPassword.value))\n }, null, 8, [\"modelValue\"]), _hoisted_61, _createVNode(_component_van_field, {\n name: \"temShared\",\n readonly: true,\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temShared.value,\n \"onUpdate:modelValue\": _cache[38] || (_cache[38] = $event => temShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_62, _createVNode(_component_van_field, {\n readonly: true,\n name: \"temShow_user_info\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temShow_user_info.value,\n \"onUpdate:modelValue\": _cache[39] || (_cache[39] = $event => temShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_63, _createVNode(_component_van_field, {\n readonly: true,\n name: \"temPlus\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temPlus.value,\n \"onUpdate:modelValue\": _cache[40] || (_cache[40] = $event => temPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_64, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: setPoolToken.value,\n \"onUpdate:modelValue\": _cache[41] || (_cache[41] = $event => setPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_65, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refresh_token\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: useRefreshToken.value,\n \"onUpdate:modelValue\": _cache[42] || (_cache[42] = $event => useRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_66, _createVNode(_component_van_field, {\n modelValue: temToken.value,\n \"onUpdate:modelValue\": _cache[43] || (_cache[43] = $event => temToken.value = $event),\n label: \"Token的值\",\n type: \"textarea\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的Token(session或refresh_token)\",\n \"show-word-limit\": \"\",\n \"input-align\": \"center\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[44] || (_cache[44] = $event => copyToken(temToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 50\n }\n }, null, 8, [\"modelValue\"]), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_67, [_hoisted_68, _createVNode(_component_van_field, {\n modelValue: temAccessToken.value,\n \"onUpdate:modelValue\": _cache[45] || (_cache[45] = $event => temAccessToken.value = $event),\n label: \"access_token\",\n type: \"textarea\",\n maxlength: \"5000\",\n \"input-align\": \"center\",\n placeholder: \"请填写OpenAi的access_token\",\n \"show-word-limit\": \"\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[46] || (_cache[46] = $event => copyToken(temAccessToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 50\n }\n }, null, 8, [\"modelValue\"]), _hoisted_69, _createVNode(_component_van_field, {\n modelValue: temShareToken.value,\n \"onUpdate:modelValue\": _cache[47] || (_cache[47] = $event => temShareToken.value = $event),\n label: \"share_token\",\n type: \"textarea\",\n maxlength: \"200\",\n \"input-align\": \"center\",\n placeholder: \"请填写OpenAi的share_token\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[48] || (_cache[48] = $event => copyToken(temShareToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 50\n }\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true)]),\n _: 1\n })]),\n _: 1\n }), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_70, [_createElementVNode(\"div\", {\n ref_key: \"chart_show\",\n ref: chart_show,\n style: {\n \"width\": \"auto\",\n \"height\": \"300px\"\n }\n }, null, 512), _hoisted_71])) : _createCommentVNode(\"\", true)])]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_3.value,\n \"onUpdate:show\": _cache[64] || (_cache[64] = $event => show_3.value = $event),\n title: \"PandoraNext设置信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_72, [_createVNode(_component_van_form, {\n onSubmit: _cache[63] || (_cache[63] = $event => RequireSetting(pandoraNext))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_73, _createVNode(_component_van_field, {\n modelValue: isolated_conv_title.value,\n \"onUpdate:modelValue\": _cache[50] || (_cache[50] = $event => isolated_conv_title.value = $event),\n name: \"对话标题\",\n label: \"对话标题\",\n placeholder: \"隔离对话设置标题\"\n }, null, 8, [\"modelValue\"]), _hoisted_74, _createVNode(_component_van_field, {\n modelValue: bing.value,\n \"onUpdate:modelValue\": _cache[51] || (_cache[51] = $event => bing.value = $event),\n name: \"绑定IP和端口\",\n label: \"绑定IP和端口\",\n placeholder: \"绑定IP和端口(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_75, _createVNode(_component_van_field, {\n modelValue: custom_doh_host.value,\n \"onUpdate:modelValue\": _cache[52] || (_cache[52] = $event => custom_doh_host.value = $event),\n name: \"DoH主机名\",\n label: \"DoH主机名\",\n placeholder: \"配置自定义的DoH主机名(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_76, _createVNode(_component_van_field, {\n modelValue: timeout.value,\n \"onUpdate:modelValue\": _cache[53] || (_cache[53] = $event => timeout.value = $event),\n name: \"请求超时时间\",\n label: \"请求超时时间\",\n placeholder: \"请求超时时间(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_77, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享对话(选填)\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: public_share.value,\n \"onUpdate:modelValue\": _cache[54] || (_cache[54] = $event => public_share.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_78, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否配置证书\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: enabled.value,\n \"onUpdate:modelValue\": _cache[55] || (_cache[55] = $event => enabled.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), enabled.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_79, [_hoisted_80, _createVNode(_component_van_field, {\n modelValue: cert_file.value,\n \"onUpdate:modelValue\": _cache[56] || (_cache[56] = $event => cert_file.value = $event),\n name: \"证书文件\",\n label: \"证书文件\",\n placeholder: \"证书文件\"\n }, null, 8, [\"modelValue\"]), _hoisted_81, _createVNode(_component_van_field, {\n modelValue: key_file.value,\n \"onUpdate:modelValue\": _cache[57] || (_cache[57] = $event => key_file.value = $event),\n name: \"密钥文件\",\n label: \"密钥文件\",\n placeholder: \"密钥文件\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_82, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否禁用注册\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: disable_signup.value,\n \"onUpdate:modelValue\": _cache[58] || (_cache[58] = $event => disable_signup.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_83, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否自动打码\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: auto_conv_arkose.value,\n \"onUpdate:modelValue\": _cache[59] || (_cache[59] = $event => auto_conv_arkose.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_84, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"使用文件代理服务\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: proxy_file_service.value,\n \"onUpdate:modelValue\": _cache[60] || (_cache[60] = $event => proxy_file_service.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_85, _createVNode(_component_van_field, {\n modelValue: proxy_url.value,\n \"onUpdate:modelValue\": _cache[61] || (_cache[61] = $event => proxy_url.value = $event),\n name: \"代理服务URL\",\n label: \"代理服务URL\",\n placeholder: \"代理服务URL(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_86, _createVNode(_component_van_field, {\n modelValue: whitelist.value,\n \"onUpdate:modelValue\": _cache[62] || (_cache[62] = $event => whitelist.value = $event),\n name: \"白名单\",\n label: \"白名单\",\n placeholder: \"[]限制所有账号(默认为null)\"\n }, null, 8, [\"modelValue\"]), _hoisted_87]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_88, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_89]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_4.value,\n \"onUpdate:show\": _cache[76] || (_cache[76] = $event => show_4.value = $event),\n title: \"tokensTool设置信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_90, [_createVNode(_component_van_form, {\n onSubmit: _cache[75] || (_cache[75] = $event => RequireSetting(tokensTool))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_91, _createVNode(_component_van_field, {\n modelValue: loginUsername.value,\n \"onUpdate:modelValue\": _cache[65] || (_cache[65] = $event => loginUsername.value = $event),\n name: \"登录用户名\",\n label: \"登录用户名\",\n placeholder: \"tokensTool用户名\"\n }, null, 8, [\"modelValue\"]), _hoisted_92, _createVNode(_component_van_field, {\n modelValue: loginPassword.value,\n \"onUpdate:modelValue\": _cache[66] || (_cache[66] = $event => loginPassword.value = $event),\n name: \"登录密码\",\n label: \"登录密码\",\n placeholder: \"不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_93, _createVNode(_component_van_field, {\n modelValue: proxy_api_prefix.value,\n \"onUpdate:modelValue\": _cache[67] || (_cache[67] = $event => proxy_api_prefix.value = $event),\n name: \"proxy接口前缀\",\n label: \"proxy接口前缀\",\n placeholder: \"proxy模式接口后缀,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_94, _createVNode(_component_van_field, {\n modelValue: autoToken_url.value,\n \"onUpdate:modelValue\": _cache[68] || (_cache[68] = $event => autoToken_url.value = $event),\n name: \"proxy模式URL\",\n label: \"proxy模式URL\",\n placeholder: \"http(s)://(ip:port或者域名)/后缀,同公网服务器填default\"\n }, null, 8, [\"modelValue\"]), _hoisted_95, _createVNode(_component_van_field, {\n modelValue: setup_password.value,\n \"onUpdate:modelValue\": _cache[69] || (_cache[69] = $event => setup_password.value = $event),\n name: \"重载服务密码\",\n label: \"重载服务密码\",\n placeholder: \"PandoraNext重载服务密码,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_96, _createVNode(_component_van_field, {\n modelValue: site_password.value,\n \"onUpdate:modelValue\": _cache[70] || (_cache[70] = $event => site_password.value = $event),\n name: \"访问密码\",\n label: \"访问密码\",\n placeholder: \"PandoraNext访问密码,建议开启访问密码\",\n rules: [{\n validator: sitePasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_97, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: license_id.value,\n \"onUpdate:modelValue\": _cache[71] || (_cache[71] = $event => license_id.value = $event),\n name: \"验证licenseId\",\n label: \"验证licenseId\",\n placeholder: \"验证licenseId(github上拿到的license_id)\"\n }, null, 8, [\"modelValue\"]), _hoisted_98, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"tokensTool接口\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: isGetToken.value,\n \"onUpdate:modelValue\": _cache[72] || (_cache[72] = $event => isGetToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), isGetToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_99, [_hoisted_100, _createVNode(_component_van_field, {\n modelValue: getTokenPassword.value,\n \"onUpdate:modelValue\": _cache[73] || (_cache[73] = $event => getTokenPassword.value = $event),\n name: \"接口密码\",\n label: \"接口密码\",\n placeholder: \"tokensTool接口密码,用于获取tokens,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), _hoisted_101, _createVNode(_component_van_field, {\n modelValue: containerName.value,\n \"onUpdate:modelValue\": _cache[74] || (_cache[74] = $event => containerName.value = $event),\n name: \"监管容器名\",\n label: \"监管容器名\",\n placeholder: \"监管运行的容器名或文件名,默认为PandoraNext\",\n rules: [{\n required: true,\n message: '请填写监管的容器名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_102]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_103, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_104]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_5.value,\n \"onUpdate:show\": _cache[85] || (_cache[85] = $event => show_5.value = $event),\n title: \"PandoraNext验证信息\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_105, [_createVNode(_component_van_form, {\n onSubmit: _cache[84] || (_cache[84] = $event => RequireSetting(validation))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_106, _createVNode(_component_van_field, {\n modelValue: provider.value,\n \"onUpdate:modelValue\": _cache[77] || (_cache[77] = $event => provider.value = $event),\n name: \"验证码提供商\",\n label: \"验证码提供商\",\n placeholder: \"验证码提供商\"\n }, null, 8, [\"modelValue\"]), _hoisted_107, _createVNode(_component_van_field, {\n modelValue: site_key.value,\n \"onUpdate:modelValue\": _cache[78] || (_cache[78] = $event => site_key.value = $event),\n name: \"验证码网站参数\",\n label: \"验证码网站参数\",\n placeholder: \"验证码网站参数\"\n }, null, 8, [\"modelValue\"]), _hoisted_108, _createVNode(_component_van_field, {\n modelValue: site_secret.value,\n \"onUpdate:modelValue\": _cache[79] || (_cache[79] = $event => site_secret.value = $event),\n name: \"验证码API Key\",\n label: \"验证码API Key\",\n placeholder: \"验证码API Key\"\n }, null, 8, [\"modelValue\"]), _hoisted_109, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否全站密码登录页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: site_login.value,\n \"onUpdate:modelValue\": _cache[80] || (_cache[80] = $event => site_login.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_110, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在设置登录页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: setup_login.value,\n \"onUpdate:modelValue\": _cache[81] || (_cache[81] = $event => setup_login.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_111, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在输入用户名页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: oai_username.value,\n \"onUpdate:modelValue\": _cache[82] || (_cache[82] = $event => oai_username.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_112, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在输入密码页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: oai_password.value,\n \"onUpdate:modelValue\": _cache[83] || (_cache[83] = $event => oai_password.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_113]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_114, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_115]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_el_dialog, {\n modelValue: show_6.value,\n \"onUpdate:modelValue\": _cache[89] || (_cache[89] = $event => show_6.value = $event),\n title: \"pool_token列表\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_116, [_createVNode(_component_el_icon, {\n onClick: _cache[86] || (_cache[86] = $event => copyToken(pandoraNext_outUrl.value + proxy_api_prefix.value + '/v1/chat/completions'))\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 1\n }), _createVNode(_component_h10, {\n style: {\n \"white-space\": \"nowrap\",\n \"overflow\": \"hidden\",\n \"text-overflow\": \"ellipsis\"\n }\n }, {\n default: _withCtx(() => [_createTextVNode(\" API地址:\" + _toDisplayString(pandoraNext_outUrl.value) + _toDisplayString(proxy_api_prefix.value) + \"/v1/chat/completions \", 1)]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_117, [_createVNode(_unref(ElTable), {\n \"row-class-name\": poolRowClassName,\n data: poolData.value,\n onSelectionChange: poolSelectionChange,\n ref_key: \"multipleTableRefPool\",\n ref: multipleTableRefPool\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n type: \"selection\",\n width: \"45\"\n }), _createVNode(_component_el_table_column, {\n prop: \"intoOneApi\",\n label: \"pool_token名称\",\n sortable: \"\",\n \"min-width\": \"170\",\n \"default-sort\": {\n prop: 'poolTime',\n prop: 'intoOneApi'\n }\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_118, [scope.row.intoOneApi == true && scope.row.poolOneApi_models.includes('gpt-4') ? (_openBlock(), _createElementBlock(\"div\", _hoisted_119, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_120]),\n _: 1\n })])) : scope.row.intoOneApi == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_121, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_122]),\n _: 1\n })])) : (_openBlock(), _createElementBlock(\"div\", _hoisted_123, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_124]),\n _: 1\n })])), _createElementVNode(\"span\", _hoisted_125, _toDisplayString(scope.row.poolName), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"pool_token值\",\n \"min-width\": \"235\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_126, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.poolToken)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_127, _toDisplayString(scope.row.poolToken), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"使用token名集合\",\n \"min-width\": \"165\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(scope.row.shareTokens), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_hoisted_128]),\n _: 1\n })]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"poolTime\",\n label: \"更新时间\",\n prop: \"poolTime\",\n sortable: \"\",\n \"min-width\": \"180\"\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n \"min-width\": \"355\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => showPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"warning\",\n onClick: $event => verifySimplyPoolToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"检验\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deletePoolToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"success\",\n onClick: $event => reNewPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"刷新\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => reviewPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"更换\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"])]), _createElementVNode(\"div\", _hoisted_129, [_createVNode(_component_el_select_group, {\n class: \"pool-button\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: buttonPoolValue.value,\n \"onUpdate:modelValue\": _cache[87] || (_cache[87] = $event => buttonPoolValue.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"请选择批量操作\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPool, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolValue,\n label: item.label,\n value: item.buttonPoolValue\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_button, {\n onClick: _cache[88] || (_cache[88] = $event => selectPoolChoice(buttonPoolValue.value))\n }, {\n default: _withCtx(() => [_hoisted_130]),\n _: 1\n })]),\n _: 1\n })]), _hoisted_131]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_7.value,\n \"onUpdate:modelValue\": _cache[93] || (_cache[93] = $event => show_7.value = $event),\n title: \"PandoraNext余额\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_132, [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_133, _createVNode(_component_van_field, {\n modelValue: pandoraUsage.value,\n \"onUpdate:modelValue\": _cache[90] || (_cache[90] = $event => pandoraUsage.value = $event),\n name: \"PandoraNext用量\",\n label: \"PandoraNext用量\",\n placeholder: \"PandoraNext用量\"\n }, null, 8, [\"modelValue\"]), _hoisted_134, _createVNode(_component_van_field, {\n modelValue: pandoraIp.value,\n \"onUpdate:modelValue\": _cache[91] || (_cache[91] = $event => pandoraIp.value = $event),\n name: \"绑定IP\",\n label: \"绑定IP\",\n placeholder: \"绑定IP\"\n }, null, 8, [\"modelValue\"]), _hoisted_135, _createVNode(_component_van_field, {\n modelValue: pandoraTime.value,\n \"onUpdate:modelValue\": _cache[92] || (_cache[92] = $event => pandoraTime.value = $event),\n name: \"重置时间\",\n label: \"重置时间\",\n placeholder: \"重置时间\"\n }, null, 8, [\"modelValue\"]), _hoisted_136]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_van_dialog, {\n show: show_8.value,\n \"onUpdate:show\": _cache[101] || (_cache[101] = $event => show_8.value = $event),\n title: \"定时刷新&PandoraNext网址\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_137, [_createVNode(_component_van_form, {\n onSubmit: _cache[100] || (_cache[100] = $event => RequireAutoUpdate())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_138, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否自动刷新session_token\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: auto_updateSession.value,\n \"onUpdate:modelValue\": _cache[94] || (_cache[94] = $event => auto_updateSession.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), auto_updateSession.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_139, [_hoisted_140, _createVNode(_component_van_field, {\n modelValue: auto_updateTime.value,\n \"onUpdate:modelValue\": _cache[95] || (_cache[95] = $event => auto_updateTime.value = $event),\n name: \"自动刷新session的间隔天数\",\n label: \"自动刷新session的间隔天数\",\n \"input-align\": \"right\",\n placeholder: \"自动刷新session的时间 (天为单位)\"\n }, null, 8, [\"modelValue\"]), _hoisted_141, _createVNode(_component_van_field, {\n modelValue: auto_updateNumber.value,\n \"onUpdate:modelValue\": _cache[96] || (_cache[96] = $event => auto_updateNumber.value = $event),\n name: \"自动刷新session的个数\",\n label: \"自动刷新session的个数\",\n \"input-align\": \"right\",\n placeholder: \"自动刷新session的个数 (个)\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_142, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: pandoraNext_outUrl.value,\n \"onUpdate:modelValue\": _cache[97] || (_cache[97] = $event => pandoraNext_outUrl.value = $event),\n name: \"PandoraNext的公网访问地址\",\n label: \"PandoraNext的公网访问地址\",\n placeholder: \"PandoraNext的公网访问地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_143, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: oneAPi_outUrl.value,\n \"onUpdate:modelValue\": _cache[98] || (_cache[98] = $event => oneAPi_outUrl.value = $event),\n name: \"oneApi的公网访问地址\",\n label: \"oneApi的公网访问地址\",\n \"input-align\": \"right\",\n placeholder: \"oneApi的公网访问地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_144, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: oneAPi_intoToken.value,\n \"onUpdate:modelValue\": _cache[99] || (_cache[99] = $event => oneAPi_intoToken.value = $event),\n name: \"oneApi的系统令牌\",\n label: \"oneApi的系统令牌\",\n \"input-align\": \"right\",\n placeholder: \"oneApi的系统令牌\"\n }, null, 8, [\"modelValue\"]), _hoisted_145]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_146, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_147]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_9.value,\n \"onUpdate:show\": _cache[109] || (_cache[109] = $event => show_9.value = $event),\n title: \"✨添加pool_token信息\",\n width: \"95vw\",\n \"align-center\": \"\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_148, [_createVNode(_component_van_form, {\n onSubmit: addSelectPoolToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_field, {\n modelValue: poolNameValue.value,\n \"onUpdate:modelValue\": _cache[102] || (_cache[102] = $event => poolNameValue.value = $event),\n name: \"pool_token名\",\n label: \"pool_token名\",\n \"input-align\": \"right\",\n placeholder: \"3到10个字符\",\n rules: [{\n validator: poolNameValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_149, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[103] || (_cache[103] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_150, [_hoisted_151, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[104] || (_cache[104] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\"\n }, null, 8, [\"modelValue\"]), _createElementVNode(\"div\", _hoisted_152, [_hoisted_153, _hoisted_154, _createVNode(_component_el_form_item, {\n label: \"选择模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addPoolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[105] || (_cache[105] = $event => addPoolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n placeholder: \"填写或选择模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolModel,\n label: item.label,\n value: item.buttonPoolModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_155, _createVNode(_component_el_form_item, {\n label: \"重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: addPoolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[106] || (_cache[106] = $event => addPoolModel_mapping.value = $event),\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_156, _createVNode(_component_van_field, {\n name: \"checkboxGroup\",\n label: \"在one-api的组别\",\n \"input-align\": \"right\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: groupChecked.value,\n \"onUpdate:modelValue\": _cache[107] || (_cache[107] = $event => groupChecked.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_157, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_158, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_159, _createVNode(_component_van_field, {\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n type: \"textarea\",\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[108] || (_cache[108] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义PandoraNext地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_160])) : _createCommentVNode(\"\", true)]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_161, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_162]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_el_dialog, {\n modelValue: show_10.value,\n \"onUpdate:modelValue\": _cache[110] || (_cache[110] = $event => show_10.value = $event),\n title: \"tokensTool登录日志\",\n \"align-center\": \"\",\n width: \"90%\",\n \"close-on-click-modal\": false,\n class: \"showLoginDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_163, [_createVNode(_unref(ElTable), {\n \"row-class-name\": poolRowClassName,\n data: loginData.value\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n prop: \"ipAddress\",\n label: \"登录地区\",\n \"min-width\": \"160\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_164, [_createElementVNode(\"span\", _hoisted_165, _toDisplayString(scope.row.ipAddress), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"登录IP\",\n \"min-width\": \"155\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_166, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.poolToken)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_167, _toDisplayString(scope.row.requestIp), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"成功/失败\",\n \"min-width\": \"105\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_168, [_createElementVNode(\"span\", _hoisted_169, _toDisplayString(scope.row.inRequestNumber) + \"/\" + _toDisplayString(scope.row.outRequestNumber), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"lastLoginTime\",\n label: \"登录时间\",\n prop: \"lastLoginTime\",\n \"min-width\": \"180\"\n })]),\n _: 1\n }, 8, [\"data\"])]), _hoisted_170]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_van_dialog, {\n show: show_11.value,\n \"onUpdate:show\": _cache[119] || (_cache[119] = $event => show_11.value = $event),\n title: \"📌修改pool_token信息\",\n width: \"95vw\",\n \"align-center\": \"\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_171, [_createVNode(_component_van_form, {\n onSubmit: requirePoolToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_172, _createElementVNode(\"div\", _hoisted_173, [_createVNode(_component_el_form_item, {\n label: \"poolToken名\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: poolName.value,\n \"onUpdate:modelValue\": _cache[111] || (_cache[111] = $event => poolName.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择要修改的pool名\",\n onChange: handlePoolNameChange,\n class: \"selectPool_token\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(poolData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.poolName,\n label: item.poolName,\n value: item.poolName,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_174, _createVNode(_component_van_field, {\n modelValue: temPool_token.value,\n \"onUpdate:modelValue\": _cache[112] || (_cache[112] = $event => temPool_token.value = $event),\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n name: \"pool_token的值\",\n label: \"pool_token的值\",\n \"input-align\": \"right\",\n placeholder: \"pool_token的值(不改则不变)\"\n }, null, 8, [\"modelValue\"]), _hoisted_175, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[113] || (_cache[113] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_176, intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_177, [_hoisted_178, _createElementVNode(\"div\", _hoisted_179, [_createVNode(_component_el_form_item, {\n label: \"选择模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: poolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[114] || (_cache[114] = $event => poolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"填写或选择模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolModel,\n label: item.label,\n value: item.buttonPoolModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_180, _createVNode(_component_el_form_item, {\n label: \"重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: poolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[115] || (_cache[115] = $event => poolModel_mapping.value = $event),\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_181, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[116] || (_cache[116] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_182, _createVNode(_component_van_field, {\n name: \"checkboxGroup\",\n label: \"在one-api的组别\",\n \"input-align\": \"right\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: temGroupChecked.value,\n \"onUpdate:modelValue\": _cache[117] || (_cache[117] = $event => temGroupChecked.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_183, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_184, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_185, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[118] || (_cache[118] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义PandoraNext地址\",\n rules: [{\n required: true,\n message: '请填写自定义PandoraNext地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_186])) : _createCommentVNode(\"\", true)]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_187, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_188]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_el_dialog, {\n modelValue: show_12.value,\n \"onUpdate:modelValue\": _cache[120] || (_cache[120] = $event => show_12.value = $event),\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", {\n ref_key: \"chart\",\n ref: chart,\n style: {\n \"width\": \"auto\",\n \"height\": \"350px\"\n }\n }, null, 512)]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_13.value,\n \"onUpdate:modelValue\": _cache[124] || (_cache[124] = $event => show_13.value = $event),\n title: \"OneAPI里的share_token列表\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_search, {\n modelValue: valueShare.value,\n \"onUpdate:modelValue\": _cache[122] || (_cache[122] = $event => valueShare.value = $event),\n \"show-action\": \"\",\n clearable: \"\",\n shape: \"round\",\n placeholder: \"请输入搜索share_token名称\",\n onSearch: _cache[123] || (_cache[123] = $event => onSearchShareToken(valueShare.value)),\n class: \"onShareToken\"\n }, {\n action: _withCtx(() => [_createVNode(_component_el_button, {\n onClick: _cache[121] || (_cache[121] = $event => show_14.value = true)\n }, {\n default: _withCtx(() => [_hoisted_189]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"]), _createElementVNode(\"div\", _hoisted_190, [_createVNode(_unref(ElTable), {\n data: shareData.value,\n \"row-class-name\": poolRowClassName\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n label: \"在OneAPI的名称\",\n prop: \"oneApi_name\",\n width: \"180\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_191, [_createElementVNode(\"span\", _hoisted_192, _toDisplayString(scope.row.oneApi_name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"来源Token名\",\n \"min-width\": \"135\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_193, [_createElementVNode(\"span\", _hoisted_194, _toDisplayString(scope.row.token_name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"share_token值\",\n \"min-width\": \"355\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_195, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.token_value)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_196, _toDisplayString(scope.row.token_value), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"shareTime\",\n label: \"更新时间\",\n prop: \"shareTime\",\n \"min-width\": \"170\"\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n \"min-width\": \"235\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => showShareToken(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => reviewShare(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"修改\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deleteShareToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"])]), _hoisted_197]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_14.value,\n \"onUpdate:modelValue\": _cache[132] || (_cache[132] = $event => show_14.value = $event),\n title: \"添加shareToken进one_api\",\n \"align-center\": \"\",\n width: \"95vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_198, [_createVNode(_component_van_form, {\n onSubmit: addShareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\",\n class: \"groupCell\"\n }, {\n default: _withCtx(() => [_hoisted_199, _createVNode(_component_van_field, {\n modelValue: addOneApi_name.value,\n \"onUpdate:modelValue\": _cache[125] || (_cache[125] = $event => addOneApi_name.value = $event),\n name: \"oneApi中渠道名称\",\n label: \"oneApi中渠道名称\",\n \"input-align\": \"right\",\n placeholder: \"oneApi中渠道名称\",\n rules: [{\n required: true,\n message: '请填写oneApi中渠道名称'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_200, _createElementVNode(\"div\", _hoisted_201, [_createVNode(_component_el_form_item, {\n label: \"Token名\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addToken_name.value,\n \"onUpdate:modelValue\": _cache[126] || (_cache[126] = $event => addToken_name.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择要添加的Token名\",\n onChange: handleShareNameChange,\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(filteredTableData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.name,\n label: item.name,\n value: item.name,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_202, _createElementVNode(\"div\", _hoisted_203, [_createVNode(_component_el_form_item, {\n label: \"选择模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addOneApi_models.value,\n \"onUpdate:modelValue\": _cache[127] || (_cache[127] = $event => addOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"填写或选择模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_204, _createVNode(_component_el_form_item, {\n label: \"重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: addModel_mapping.value,\n \"onUpdate:modelValue\": _cache[128] || (_cache[128] = $event => addModel_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_205, _createVNode(_component_van_field, {\n modelValue: addPriority.value,\n \"onUpdate:modelValue\": _cache[129] || (_cache[129] = $event => addPriority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n placeholder: \"渠道优先级(默认为0)\",\n \"input-align\": \"center\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_206, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"addOneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: addOneApi_groups.value,\n \"onUpdate:modelValue\": _cache[130] || (_cache[130] = $event => addOneApi_groups.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_207, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_208, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_209, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: addOneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[131] || (_cache[131] = $event => addOneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_210]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_211, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_15.value,\n \"onUpdate:modelValue\": _cache[149] || (_cache[149] = $event => show_15.value = $event),\n title: \"🔎查看share_token在OneAPI信息\",\n \"align-center\": \"\",\n width: \"95vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_212, [_createVNode(_component_van_form, {\n onSubmit: _ctx.shareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\",\n class: \"groupCell\"\n }, {\n default: _withCtx(() => [_hoisted_213, _createVNode(_component_van_field, {\n modelValue: oneApi_name.value,\n \"onUpdate:modelValue\": _cache[133] || (_cache[133] = $event => oneApi_name.value = $event),\n name: \"OneAPI中渠道名称\",\n label: \"OneAPI中渠道名称\",\n placeholder: \"OneAPI中渠道名称\",\n \"left-icon\": \"description-o\",\n readonly: true,\n \"input-align\": \"right\",\n onClickLeftIcon: _cache[134] || (_cache[134] = $event => copyToken(oneApi_name.value)),\n rules: [{\n required: true,\n message: '请填写OneAPI中渠道名称'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_214, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: token_value.value,\n \"onUpdate:modelValue\": _cache[135] || (_cache[135] = $event => token_value.value = $event),\n name: \"share_token的值\",\n label: \"share_token的值\",\n \"input-align\": \"right\",\n placeholder: \"share_token的值\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[136] || (_cache[136] = $event => copyToken(token_value.value))\n }, null, 8, [\"modelValue\"]), _hoisted_215, _createVNode(_component_van_field, {\n modelValue: token_name.value,\n \"onUpdate:modelValue\": _cache[137] || (_cache[137] = $event => token_name.value = $event),\n name: \"share_token的来源\",\n label: \"share_token的来源\",\n \"input-align\": \"right\",\n placeholder: \"share_token的值\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[138] || (_cache[138] = $event => copyToken(token_name.value))\n }, null, 8, [\"modelValue\"]), _hoisted_216, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: temOneApi_models.value,\n \"onUpdate:modelValue\": _cache[139] || (_cache[139] = $event => temOneApi_models.value = $event),\n name: \"模型\",\n label: \"模型\",\n \"input-align\": \"right\",\n placeholder: \"加入的模型\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[140] || (_cache[140] = $event => copyToken(temOneApi_models.value))\n }, null, 8, [\"modelValue\"]), _createElementVNode(\"div\", _hoisted_217, [_hoisted_218, _createVNode(_component_el_form_item, {\n readonly: true,\n type: \"textarea\",\n label: \"🧩重定向\",\n autosize: \"\",\n prop: \"addModel_mapping\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: model_mapping.value,\n \"onUpdate:modelValue\": _cache[141] || (_cache[141] = $event => model_mapping.value = $event),\n type: \"textarea\",\n autosize: \"\",\n disabled: \"\",\n placeholder: temModel_mapping,\n onClickLeftIcon: _cache[142] || (_cache[142] = $event => copyToken(model_mapping.value))\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_219, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[143] || (_cache[143] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n placeholder: \"渠道优先级(默认为0)\",\n \"left-icon\": \"description-o\",\n readonly: true,\n \"input-align\": \"right\",\n onClickLeftIcon: _cache[144] || (_cache[144] = $event => copyToken(priority.value)),\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_220, _createVNode(_component_van_field, {\n type: \"textarea\",\n autoSize: \"\",\n modelValue: temOneApi_groups.value,\n \"onUpdate:modelValue\": _cache[145] || (_cache[145] = $event => temOneApi_groups.value = $event),\n name: \"加入的组别\",\n label: \"加入的组别\",\n \"input-align\": \"right\",\n placeholder: \"加入的组别\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[146] || (_cache[146] = $event => copyToken(temOneApi_groups.value))\n }, null, 8, [\"modelValue\"]), _hoisted_221, _createVNode(_component_van_field, {\n type: \"textarea\",\n autoSize: \"\",\n modelValue: oneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[147] || (_cache[147] = $event => oneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[148] || (_cache[148] = $event => copyToken(oneApi_baseUrl.value)),\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_222]),\n _: 1\n })]),\n _: 1\n }, 8, [\"onSubmit\"])])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_16.value,\n \"onUpdate:modelValue\": _cache[156] || (_cache[156] = $event => show_16.value = $event),\n title: \"📌修改share_token的信息\",\n \"align-center\": \"\",\n width: \"95vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_223, [_createVNode(_component_van_form, {\n onSubmit: requireShareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\",\n class: \"groupCell\"\n }, {\n default: _withCtx(() => [_hoisted_224, _createElementVNode(\"div\", _hoisted_225, [_createVNode(_component_el_form_item, {\n label: \"Token名\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: token_name.value,\n \"onUpdate:modelValue\": _cache[150] || (_cache[150] = $event => token_name.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择添加的Token名称\",\n onChange: handleShareNameChange,\n class: \"selectPool_token\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(filteredTableData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.name,\n label: item.name,\n value: item.name,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_226, _createElementVNode(\"div\", _hoisted_227, [_createVNode(_component_el_form_item, {\n label: \"选择模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: oneApi_models.value,\n \"onUpdate:modelValue\": _cache[151] || (_cache[151] = $event => oneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"填写或选择模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_228, _createVNode(_component_el_form_item, {\n label: \"重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: model_mapping.value,\n \"onUpdate:modelValue\": _cache[152] || (_cache[152] = $event => model_mapping.value = $event),\n \"label-position\": \"top\",\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_229, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[153] || (_cache[153] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_230, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"oneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: oneApi_groups.value,\n \"onUpdate:modelValue\": _cache[154] || (_cache[154] = $event => oneApi_groups.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_231, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_232, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_233, _createVNode(_component_van_field, {\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n modelValue: oneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[155] || (_cache[155] = $event => oneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_234]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_235, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_17.value,\n \"onUpdate:modelValue\": _cache[170] || (_cache[170] = $event => show_17.value = $event),\n title: \"🔎查看pool_token的信息\",\n \"align-center\": \"\",\n width: \"95vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_236, [_createVNode(_component_van_form, null, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\",\n class: \"groupCell\"\n }, {\n default: _withCtx(() => [_hoisted_237, _createVNode(_component_van_field, {\n modelValue: temPoolName.value,\n \"onUpdate:modelValue\": _cache[157] || (_cache[157] = $event => temPoolName.value = $event),\n name: \"pool_token名称\",\n label: \"pool_token名称\",\n placeholder: \"pool_token名称\",\n readonly: true,\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[158] || (_cache[158] = $event => copyToken(temPoolName.value)),\n \"input-align\": \"right\"\n }, null, 8, [\"modelValue\"]), _hoisted_238, _createVNode(_component_van_field, {\n modelValue: shareTokens.value,\n \"onUpdate:modelValue\": _cache[159] || (_cache[159] = $event => shareTokens.value = $event),\n label: \"使用token名集合\",\n type: \"textarea\",\n placeholder: \"使用token名集合\",\n \"left-icon\": \"description-o\",\n readonly: true,\n \"input-align\": \"right\",\n onClickLeftIcon: _cache[160] || (_cache[160] = $event => copyToken(temAccessToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"]), _hoisted_239, _createVNode(_component_van_field, {\n modelValue: temPool_token.value,\n \"onUpdate:modelValue\": _cache[161] || (_cache[161] = $event => temPool_token.value = $event),\n readonly: true,\n type: \"textarea\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n name: \"pool_token的值\",\n label: \"pool_token的值\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[162] || (_cache[162] = $event => copyToken(temPool_token.value)),\n placeholder: \"pool_token的值(不改则不变)\"\n }, null, 8, [\"modelValue\"]), _hoisted_240, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[163] || (_cache[163] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_241, intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_242, [_hoisted_243, _createElementVNode(\"div\", _hoisted_244, [_createVNode(_component_el_form_item, {\n disabled: \"\",\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n disabled: \"\",\n modelValue: poolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[164] || (_cache[164] = $event => poolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolModel,\n label: item.label,\n value: item.buttonPoolModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_245]),\n _: 1\n }), _hoisted_246, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: poolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[165] || (_cache[165] = $event => poolModel_mapping.value = $event),\n type: \"textarea\",\n disabled: \"\",\n filterable: \"\",\n autosize: \"\",\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_247, _createVNode(_component_van_field, {\n readonly: true,\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[166] || (_cache[166] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_248, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"oneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: temGroupChecked.value,\n \"onUpdate:modelValue\": _cache[167] || (_cache[167] = $event => temGroupChecked.value = $event)\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_249, [_createVNode(_component_van_checkbox, {\n name: \"default\",\n disabled: \"\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_250, [_createVNode(_component_van_checkbox, {\n name: \"vip\",\n disabled: \"\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n })]), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n disabled: \"\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_251, _createVNode(_component_van_field, {\n readonly: true,\n type: \"textarea\",\n autoSize: \"\",\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[168] || (_cache[168] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[169] || (_cache[169] = $event => copyToken(oneApi_pandoraUrl.value)),\n placeholder: \"自定义PandoraNext地址\",\n rules: [{\n required: true,\n message: '请填写自定义PandoraNext地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_252])) : _createCommentVNode(\"\", true)]),\n _: 1\n })]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"])], 64);\n };\n }\n});","/* unplugin-vue-components disabled */import script from \"./homeIphone.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./homeIphone.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./homeIphone.vue?vue&type=style&index=0&id=d54bf1e2&lang=css\"\n\nconst __exports__ = script;\n\nexport default __exports__"],"names":["_hoisted_1","class","_hoisted_2","_","name","content","_hoisted_3","style","src","_hoisted_4","_hoisted_5","_hoisted_6","href","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","key","_hoisted_26","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31","_hoisted_32","_hoisted_33","_hoisted_34","_hoisted_35","_hoisted_36","_hoisted_37","_hoisted_38","_hoisted_39","_hoisted_40","_hoisted_41","_hoisted_42","_hoisted_43","_hoisted_44","_hoisted_45","_hoisted_46","_hoisted_47","_hoisted_48","_hoisted_49","_hoisted_50","_hoisted_51","_hoisted_52","_hoisted_53","_hoisted_54","_hoisted_55","_hoisted_56","_hoisted_57","_hoisted_58","_hoisted_59","_hoisted_60","_hoisted_61","_hoisted_62","_hoisted_63","_hoisted_64","_hoisted_65","_hoisted_66","_hoisted_67","_hoisted_68","_hoisted_69","_hoisted_70","_hoisted_71","_hoisted_72","_hoisted_73","_hoisted_74","_hoisted_75","_hoisted_76","_hoisted_77","_hoisted_78","_hoisted_79","_hoisted_80","_hoisted_81","_hoisted_82","_hoisted_83","_hoisted_84","_hoisted_85","_hoisted_86","_hoisted_87","_hoisted_88","_hoisted_89","_hoisted_90","_hoisted_91","_hoisted_92","_hoisted_93","_hoisted_94","_hoisted_95","_hoisted_96","_hoisted_97","_hoisted_98","_hoisted_99","_hoisted_100","_hoisted_101","_hoisted_102","_hoisted_103","_hoisted_104","_hoisted_105","_hoisted_106","_hoisted_107","_hoisted_108","_hoisted_109","_hoisted_110","_hoisted_111","_hoisted_112","_hoisted_113","_hoisted_114","_hoisted_115","_hoisted_116","_hoisted_117","_hoisted_118","_hoisted_119","_hoisted_120","_hoisted_121","_hoisted_122","_hoisted_123","_hoisted_124","_hoisted_125","_hoisted_126","_hoisted_127","_hoisted_128","_hoisted_129","_hoisted_130","_hoisted_131","_hoisted_132","_hoisted_133","_hoisted_134","_hoisted_135","_hoisted_136","_hoisted_137","_hoisted_138","_hoisted_139","_hoisted_140","_hoisted_141","_hoisted_142","_hoisted_143","_hoisted_144","_hoisted_145","_hoisted_146","_hoisted_147","_hoisted_148","_hoisted_149","_hoisted_150","_hoisted_151","_hoisted_152","_hoisted_153","_hoisted_154","_hoisted_155","_hoisted_156","_hoisted_157","_hoisted_158","_hoisted_159","_hoisted_160","_hoisted_161","_hoisted_162","_hoisted_163","_hoisted_164","_hoisted_165","_hoisted_166","_hoisted_167","_hoisted_168","_hoisted_169","_hoisted_170","_hoisted_171","_hoisted_172","_hoisted_173","_hoisted_174","_hoisted_175","_hoisted_176","_hoisted_177","_hoisted_178","_hoisted_179","_hoisted_180","_hoisted_181","_hoisted_182","_hoisted_183","_hoisted_184","_hoisted_185","_hoisted_186","_hoisted_187","_hoisted_188","_hoisted_189","_hoisted_190","_hoisted_191","_hoisted_192","_hoisted_193","_hoisted_194","_hoisted_195","_hoisted_196","_hoisted_197","_hoisted_198","_hoisted_199","_hoisted_200","_hoisted_201","_hoisted_202","_hoisted_203","_hoisted_204","_hoisted_205","_hoisted_206","_hoisted_207","_hoisted_208","_hoisted_209","_hoisted_210","_hoisted_211","_hoisted_212","_hoisted_213","_hoisted_214","_hoisted_215","_hoisted_216","_hoisted_217","_hoisted_218","_hoisted_219","_hoisted_220","_hoisted_221","_hoisted_222","_hoisted_223","_hoisted_224","_hoisted_225","_hoisted_226","_hoisted_227","_hoisted_228","_hoisted_229","_hoisted_230","_hoisted_231","_hoisted_232","_hoisted_233","_hoisted_234","_hoisted_235","_hoisted_236","_hoisted_237","_hoisted_238","_hoisted_239","_hoisted_240","_hoisted_241","_hoisted_242","_hoisted_243","_hoisted_244","_hoisted_245","_hoisted_246","_hoisted_247","_hoisted_248","_hoisted_249","_hoisted_250","_hoisted_251","_hoisted_252","temModel_mapping","pandoraNext","tokensTool","validation","__name","setup","__props","path","window","location","pathname","parts","split","prefix","length","temGroupChecked","groupChecked","multipleTableRefPool","multipleSelection","multipleSelectionPool","handleSelectionChange","val","value","poolSelectionChange","router","show","show_1","show_2","show_3","show_4","show_5","show_6","show_7","show_8","show_9","show_10","show_11","show_12","show_13","show_14","show_15","show_16","show_17","buttonValue","options","label","optionsModel","buttonModel","optionsPoolModel","buttonPoolModel","buttonPoolValue","optionsPool","proxy_api_prefix","isolated_conv_title","bing","timeout","proxy_url","public_share","disable_signup","auto_conv_arkose","proxy_file_service","custom_doh_host","enabled","cert_file","key_file","site_password","setup_password","loginUsername","loginPassword","license_id","isGetToken","getTokenPassword","containerName","autoToken_url","whitelist","provider","site_key","site_secret","site_login","setup_login","oai_username","oai_password","auto_updateSession","auto_updateTime","auto_updateNumber","pandoraNext_outUrl","oneAPi_outUrl","oneAPi_intoToken","poolName","temPoolName","shareTokens","poolTime","poolNameValue","intoOneApi","poolModel_mapping","poolOneApi_models","addPoolOneApi_models","addPoolModel_mapping","oneApi_pandoraUrl","priority","temPool_token","customValidator","regex","test","sitePasswordValidator","poolNameValidator","addPasswordValidator","addSetPoolToken","setPoolToken","temName","temToken","temAccessToken","temShareToken","temUsername","temUserPassword","temShared","temShow_user_info","temPlus","temPassword","useRefreshToken","temCheckSession","tableData","poolData","shareData","loginData","addName","addUsername","addUserPassword","addTokenValue","addShared","addShow_user_info","addPlus","addUseRefreshToken","addPassword","addOneApi_name","addToken_name","addOneApi_baseUrl","addOneApi_models","addModel_mapping","addOneApi_groups","addPriority","innerHeight","valueShare","token","localStorage","getItem","replace","headers","Authorization","fetchLoginToken","async","axios","post","then","response","data","code","console","error","catch","onSearch","getWebToken","getToken","includes","getAPIToken","onSearchShareToken","getShare","get","data_token","Array","isArray","resUsers","map","item","username","userPassword","access_token","share_token","shared","auto_shared","show_user_info","password","plus","updateTime","checkSession","filteredUsers","filter","user","getLoginData","resLogins","ipAddress","requestIp","outRequestNumber","inRequestNumber","lastLoginTime","getPool","responsePool","pool_token","resPools","poolToken","checkPool","loadingInstance","service","fullscreen","responseShare","resShares","oneApi_name","token_name","token_value","oneApi_baseUrl","oneApi_models","model_mapping","oneApi_groups","shareTime","close","getSetting","tls","endsWith","fetchDataAndFillForm","alert","confirmButtonText","callback","action","type","message","getSelectedData","selectedData","addSelectPoolToken","names","userData","JSON","parse","e","addPoolToken","toString","fetch","method","body","stringify","json","msg","handlePoolNameChange","selectedItem","find","handleShareNameChange","filteredTableData","requirePoolToken","log","addShareToken","pandoraUsage","innerWidth","Promise","all","current","total","tableRowClassName","row","poolRowClassName","redirectToExternalLink","open","redirectPandoraNextShare","url","charAt","requirePandoraNextLink","requireTokensToolLink","activeIndex","temRequireToken","handleSelect","keyPath","addToken","onAddToken","now","Date","formattedTime","getFullYear","getMonth","padStart","getDate","getHours","getMinutes","getSeconds","api","success","chart_show","showData","usageHeader","usageData","modelData","usage","startsWith","push","myChart_show","echarts","option","title","text","textStyle","fontSize","color","left","top","tooltip","legend","xAxis","yAxis","series","barWidth","itemStyle","params","colorList","dataIndex","setOption","temOneApi_models","temOneApi_groups","showShareToken","previousSetpoolToken","previousUseRefreshToken","previousToken","handleEdit","index","onRequireSetting","RequireSetting","setting","RequireAutoUpdate","RequireToken","confirm","cancelButtonText","openPandora","closePandora","AgainPandora","reloadPandora","pandoraIp","pandoraTime","getPandoraNext","ip","currentTime","futureTime","getTime","ttl","year","month","day","hours","minutes","seconds","updateAllShareToken","reNewMsg","dangerouslyUseHTMLString","reNew","ok","Error","reNewPool","reviewShare","requireShareToken","requireShare","review","reviewPool","deletePoolToken","verifySimplyPoolToken","deleteToken","put","deleteShareToken","formatDate","nowDay","timeDay","parseISO","daysDiff","differenceInDays","Math","ceil","logout","removeItem","getPoolToken","getShareToken","getLogin","copyToken","textarea","document","createElement","appendChild","select","execCommand","removeChild","selectChoice","count","forEach","showPool","selectPoolChoice","selectedPoolData","temPoolData","chart","getUsage","model","myChart","_ctx","_cache","_component_van_icon","_component_el_menu_item","_component_el_sub_menu","_component_el_menu","_component_van_button","_component_el_page_header","_component_van_search","_component_el_table_column","_component_el_button","_component_el_tag","_component_el_popover","_component_el_option","_component_el_select","_component_van_field","_component_van_switch","_component_van_cell_group","_component_van_form","_component_van_dialog","_component_CopyDocument","_component_el_icon","_component_h10","_component_el_select_group","_component_el_dialog","_component_el_form_item","_component_el_input","_component_van_checkbox","_component_van_checkbox_group","_directive_loading","mode","ellipsis","onSelect","default","size","onClick","$event","icon","extra","square","modelValue","shape","clearable","placeholder","onSelectionChange","prop","width","sortable","scope","circle","effect","trigger","placement","reference","$index","loading","filterable","onSubmit","inset","rules","required","rows","autoSize","validator","maxlength","autosize","maxHeight","minHeight","round","block","readonly","onClickLeftIcon","disabled","ref_key","ref","property","multiple","input","onChange","shareToken","__exports__"],"sourceRoot":""}
\ No newline at end of file
diff --git a/rearServer/target/classes/static/js/678.15d2c0c6.js b/rearServer/target/classes/static/js/678.15d2c0c6.js
new file mode 100644
index 0000000..d7876ea
--- /dev/null
+++ b/rearServer/target/classes/static/js/678.15d2c0c6.js
@@ -0,0 +1,2 @@
+"use strict";(self["webpackChunkPandoraNext_TokensTool"]=self["webpackChunkPandoraNext_TokensTool"]||[]).push([[678],{1395:function(e,a,t){t.r(a),t.d(a,{default:function(){return z}});var l=t(5185),o=(t(3349),t(6907)),n=(t(4746),t(5267)),s=(t(1645),t(6773)),r=(t(487),t(3164)),i=(t(6335),t(6252)),c=t(2262),d=t(2201),m=t(6154),u=(t.p,t(1348)),v=t(3028);const p=e=>((0,i.dD)("data-v-8f916fe6"),e=e(),(0,i.Cn)(),e),h={class:"content_login"},f=p((()=>(0,i._)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no"},null,-1))),g=p((()=>(0,i._)("div",{class:"login-container"},[(0,i._)("h4",null,"PandoraNext-TokensTool")],-1))),w={class:"container"},_={style:{display:"flex",transform:"translate(0vw, 2vh)","font-size":"14.6px","justify-content":"center"}},y={style:{display:"flex",transform:"translate(0vw, 2vh)","margin-top":"5vh","font-size":"14.6px","justify-content":"center"}},b={style:{display:"flex",transform:"translate(0.5vw, 0vh)","margin-top":"6vh"}},x={style:{margin:"3.5vh 16px 0px 16px","justify-content":"center"}},k=p((()=>(0,i._)("div",{class:"bottom"},[(0,i._)("div",{style:{"text-align":"center",transform:"translateY(0vh)"}},[(0,i._)("h3",null,[(0,i._)("a",{href:"https://github.com/Yanyutin753/PandoraNext-TokensTool"},"Powered by tokensTool v0.6.8")])])],-1)));var S=(0,i.aZ)({__name:"loginIndex",setup(e){const a=(0,d.tv)(),t=window.location.pathname,p=t.split("/");let S="";p.length>=3&&(S="/"+p[1]);const T=(0,c.iH)(""),I=(0,c.iH)(""),z=(0,c.iH)(""),P=(0,c.iH)(!0);(0,i.bv)((async()=>{const e=localStorage.getItem("savedUsername"),a=localStorage.getItem("savedPassword"),t=localStorage.getItem("savedRemember");"true"===t&&(T.value=e||"",I.value=a||"",z.value="true"),window.innerWidth>767&&(P.value=!1),N()}));const W=e=>{const a=/^[^\s]*$/;return!!a.test(e)||"此项不允许包含空格"},U=localStorage.getItem("jwtToken"),N=async()=>{m.Z.post(`${S}/api/loginToken?token=`+U).then((e=>{1!=e.data.code?u.z8.error("令牌失效,请重新登录!"):window.innerWidth<=1e3?a.replace("/iphone"):a.replace("/home")})).catch((e=>{u.z8.error("令牌失效,请重新登录!")}))},V=()=>{const e=v.kN.service({fullscreen:!0});z.value?(localStorage.setItem("savedUsername",T.value),localStorage.setItem("savedPassword",I.value),localStorage.setItem("savedRemember","true")):(localStorage.removeItem("savedUsername"),localStorage.removeItem("savedPassword"),localStorage.removeItem("savedRemember"));let t={loginUsername:T.value,loginPassword:I.value};fetch(`${S}/api/login`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${t}`},body:JSON.stringify(t)}).then((e=>e.json())).then((t=>{if(1===t.code){const e=t.data;localStorage.setItem("jwtToken",e),u.z8.success("登录成功!"),window.innerWidth<=1e3?a.replace("/iphone"):a.replace("/home")}else u.z8.error(t.msg);e.close()})).catch((a=>{console.error("登录时出现错误:",a),u.z8.error("账号或密码错误!"),e.close()}))};return(e,a)=>{const t=r.gN,c=(0,i.up)("h9"),d=s.XZ,m=n.TS,u=o.zx,v=l.l0;return(0,i.wg)(),(0,i.iD)("div",h,[f,g,(0,i._)("div",w,[(0,i.Wm)(v,{onSubmit:V},{default:(0,i.w5)((()=>[(0,i.Wm)(m,{inset:""},{default:(0,i.w5)((()=>[(0,i._)("div",_,[(0,i.Wm)(t,{modelValue:T.value,"onUpdate:modelValue":a[0]||(a[0]=e=>T.value=e),clearable:"",name:"username",label:"Username",placeholder:"username",class:"userName","input-align":"center",rules:[{validator:W}]},null,8,["modelValue","rules"])]),(0,i._)("div",y,[(0,i.Wm)(t,{modelValue:I.value,"onUpdate:modelValue":a[1]||(a[1]=e=>I.value=e),clearable:"",type:"password",name:"password",label:"Password",placeholder:"password",class:"userName","input-align":"center",rules:[{validator:W}]},null,8,["modelValue","rules"])]),(0,i._)("div",b,[(0,i.Wm)(d,{class:"remember",modelValue:z.value,"onUpdate:modelValue":a[2]||(a[2]=e=>z.value=e),"checked-color":"#0ea27e","icon-size":"13.5px"},{default:(0,i.w5)((()=>[(0,i.Wm)(c,{style:{"font-size":"13.5px",transform:"translateX(7px)"}},{default:(0,i.w5)((()=>[(0,i.Uk)("Remember me")])),_:1})])),_:1},8,["modelValue"])])])),_:1}),(0,i._)("div",x,[(0,i.Wm)(u,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,i.w5)((()=>[(0,i.Wm)(c,{style:{"font-weight":"bold"}},{default:(0,i.w5)((()=>[(0,i.Uk)("Continue")])),_:1})])),_:1})])])),_:1})]),k])}}}),T=t(3744);const I=(0,T.Z)(S,[["__scopeId","data-v-8f916fe6"]]);var z=I}}]);
+//# sourceMappingURL=678.15d2c0c6.js.map
\ No newline at end of file
diff --git a/rearServer/target/classes/static/js/678.15d2c0c6.js.map b/rearServer/target/classes/static/js/678.15d2c0c6.js.map
new file mode 100644
index 0000000..430d82b
--- /dev/null
+++ b/rearServer/target/classes/static/js/678.15d2c0c6.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"js/678.15d2c0c6.js","mappings":"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","sources":["webpack://PandoraNext-TokensTool/./src/views/loginIndex.vue","webpack://PandoraNext-TokensTool/./src/views/loginIndex.vue?41fe"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue';\nimport { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, createTextVNode as _createTextVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\";\nconst _withScopeId = n => (_pushScopeId(\"data-v-8f916fe6\"), n = n(), _popScopeId(), n);\nconst _hoisted_1 = {\n class: \"content_login\"\n};\nconst _hoisted_2 = /*#__PURE__*/_withScopeId(() => /*#__PURE__*/_createElementVNode(\"meta\", {\n name: \"viewport\",\n content: \"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no\"\n}, null, -1));\nconst _hoisted_3 = /*#__PURE__*/_withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"login-container\"\n}, [/*#__PURE__*/_createElementVNode(\"h4\", null, \"PandoraNext-TokensTool\")], -1));\nconst _hoisted_4 = {\n class: \"container\"\n};\nconst _hoisted_5 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(0vw, 2vh)\",\n \"font-size\": \"14.6px\",\n \"justify-content\": \"center\"\n }\n};\nconst _hoisted_6 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(0vw, 2vh)\",\n \"margin-top\": \"5vh\",\n \"font-size\": \"14.6px\",\n \"justify-content\": \"center\"\n }\n};\nconst _hoisted_7 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(0.5vw, 0vh)\",\n \"margin-top\": \"6vh\"\n }\n};\nconst _hoisted_8 = {\n style: {\n \"margin\": \"3.5vh 16px 0px 16px\",\n \"justify-content\": \"center\"\n }\n};\nconst _hoisted_9 = /*#__PURE__*/_withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"bottom\"\n}, [/*#__PURE__*/_createElementVNode(\"div\", {\n style: {\n \"text-align\": \"center\",\n \"transform\": \"translateY(0vh)\"\n }\n}, [/*#__PURE__*/_createElementVNode(\"h3\", null, [/*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://github.com/Yanyutin753/PandoraNext-TokensTool\"\n}, \"Powered by tokensTool v0.6.8\")])])], -1));\nimport { ref, onMounted } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport axios from \"axios\";\nimport png from \"../asserts/chatGpt.jpg\";\nimport { ElMessage } from \"element-plus\";\nimport { ElLoading } from \"element-plus\";\nexport default /*#__PURE__*/_defineComponent({\n __name: 'loginIndex',\n setup(__props) {\n const router = useRouter();\n const path = window.location.pathname; // 假设是 \"/api/getData\"\n const parts = path.split(\"/\"); // 分割路径,得到 [\"\", \"api\", \"getData\"]\n let prefix = \"\"; // 默认值为 \"\"\n if (parts.length >= 3) {\n prefix = \"/\" + parts[1]; // 如果parts长度大于或等于3,获取第一个部分\n }\n\n const username = ref(\"\");\n const password = ref(\"\");\n const checked = ref(\"\");\n const image = png;\n const page = ref(true);\n onMounted(async () => {\n const savedUsername = localStorage.getItem(\"savedUsername\");\n const savedPassword = localStorage.getItem(\"savedPassword\");\n const savedRemember = localStorage.getItem(\"savedRemember\");\n if (savedRemember === \"true\") {\n username.value = savedUsername || \"\";\n password.value = savedPassword || \"\";\n checked.value = \"true\";\n }\n if (window.innerWidth > 767) {\n page.value = false;\n }\n fetchLoginToken();\n });\n // 自定义校验函数,直接返回错误提示\n const customValidator = value => {\n // 不允许有空格和回车符\n const regex = /^[^\\s]*$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项不允许包含空格\";\n }\n };\n /**\r\n * 用jwt令牌验证身份\r\n * 未通过者返回到/login\r\n */\n const token = localStorage.getItem(\"jwtToken\"); // 从localStorage获取JWT令牌\n const headers = {\n Authorization: `Bearer ${token}`\n };\n /**\r\n * 用jwt令牌验证身份函数\r\n */\n const fetchLoginToken = async () => {\n axios.post(`${prefix}/api/loginToken?token=` + token).then(response => {\n if (response.data.code == 1) {\n if (window.innerWidth <= 1000) {\n router.replace(`/iphone`);\n } else {\n router.replace(`/home`);\n }\n return;\n } else {\n ElMessage.error(\"令牌失效,请重新登录!\");\n }\n }).catch(error => {\n ElMessage.error(\"令牌失效,请重新登录!\");\n });\n };\n const submit = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n // 处理登录逻辑\n if (checked.value) {\n // 如果记住密码被选中,将用户名和密码保存到本地存储\n localStorage.setItem(\"savedUsername\", username.value);\n localStorage.setItem(\"savedPassword\", password.value);\n localStorage.setItem(\"savedRemember\", \"true\");\n } else {\n // 如果不记住密码,清除本地存储中的信息\n localStorage.removeItem(\"savedUsername\");\n localStorage.removeItem(\"savedPassword\");\n localStorage.removeItem(\"savedRemember\");\n }\n let setting = {\n loginUsername: username.value,\n loginPassword: password.value\n };\n fetch(`${prefix}/api/login`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${setting}`\n },\n body: JSON.stringify(setting)\n }).then(response => response.json()).then(data => {\n if (data.code === 1) {\n const token = data.data;\n localStorage.setItem(\"jwtToken\", token);\n ElMessage.success(\"登录成功!\");\n if (window.innerWidth <= 1000) {\n router.replace(`/iphone`);\n } else {\n router.replace(`/home`);\n }\n } else {\n ElMessage.error(data.msg);\n }\n loadingInstance.close();\n }).catch(error => {\n console.error(\"登录时出现错误:\", error);\n ElMessage.error(\"账号或密码错误!\");\n loadingInstance.close();\n });\n };\n return (_ctx, _cache) => {\n const _component_van_field = _resolveComponent(\"van-field\");\n const _component_h9 = _resolveComponent(\"h9\");\n const _component_van_checkbox = _resolveComponent(\"van-checkbox\");\n const _component_van_cell_group = _resolveComponent(\"van-cell-group\");\n const _component_van_button = _resolveComponent(\"van-button\");\n const _component_van_form = _resolveComponent(\"van-form\");\n return _openBlock(), _createElementBlock(\"div\", _hoisted_1, [_hoisted_2, _hoisted_3, _createElementVNode(\"div\", _hoisted_4, [_createVNode(_component_van_form, {\n onSubmit: submit\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_5, [_createVNode(_component_van_field, {\n modelValue: username.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => username.value = $event),\n clearable: \"\",\n name: \"username\",\n label: \"Username\",\n placeholder: \"username\",\n class: \"userName\",\n \"input-align\": \"center\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])]), _createElementVNode(\"div\", _hoisted_6, [_createVNode(_component_van_field, {\n modelValue: password.value,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => password.value = $event),\n clearable: \"\",\n type: \"password\",\n name: \"password\",\n label: \"Password\",\n placeholder: \"password\",\n class: \"userName\",\n \"input-align\": \"center\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])]), _createElementVNode(\"div\", _hoisted_7, [_createVNode(_component_van_checkbox, {\n class: \"remember\",\n modelValue: checked.value,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => checked.value = $event),\n \"checked-color\": \"#0ea27e\",\n \"icon-size\": \"13.5px\"\n }, {\n default: _withCtx(() => [_createVNode(_component_h9, {\n style: {\n \"font-size\": \"13.5px\",\n \"transform\": \"translateX(7px)\"\n }\n }, {\n default: _withCtx(() => [_createTextVNode(\"Remember me\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])])]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_8, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createVNode(_component_h9, {\n style: {\n \"font-weight\": \"bold\"\n }\n }, {\n default: _withCtx(() => [_createTextVNode(\"Continue\")]),\n _: 1\n })]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_9]);\n };\n }\n});","/* unplugin-vue-components disabled */import script from \"./loginIndex.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./loginIndex.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./loginIndex.vue?vue&type=style&index=0&id=8f916fe6&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-8f916fe6\"]])\n\nexport default __exports__"],"names":["_withScopeId","n","_hoisted_1","class","_hoisted_2","_","name","content","_hoisted_3","_hoisted_4","_hoisted_5","style","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","href","__name","setup","__props","router","path","window","location","pathname","parts","split","prefix","length","username","password","checked","page","async","savedUsername","localStorage","getItem","savedPassword","savedRemember","value","innerWidth","fetchLoginToken","customValidator","regex","test","token","axios","post","then","response","data","code","error","replace","catch","submit","loadingInstance","service","fullscreen","setItem","removeItem","setting","loginUsername","loginPassword","fetch","method","headers","Authorization","body","JSON","stringify","json","success","msg","close","console","_ctx","_cache","_component_van_field","_component_h9","_component_van_checkbox","_component_van_cell_group","_component_van_button","_component_van_form","onSubmit","default","inset","modelValue","$event","clearable","label","placeholder","rules","validator","type","round","block","color","__exports__"],"sourceRoot":""}
\ No newline at end of file
diff --git a/rearServer/target/classes/static/js/724.cd26d2dd.js b/rearServer/target/classes/static/js/724.cd26d2dd.js
deleted file mode 100644
index a00654a..0000000
--- a/rearServer/target/classes/static/js/724.cd26d2dd.js
+++ /dev/null
@@ -1,2 +0,0 @@
-"use strict";(self["webpackChunkPandoraNext_TokensTool"]=self["webpackChunkPandoraNext_TokensTool"]||[]).push([[724],{1769:function(e,a,t){t.r(a),t.d(a,{default:function(){return I}});var l=t(5185),o=(t(3349),t(6907)),n=(t(4746),t(5267)),s=(t(1645),t(6773)),r=(t(487),t(3164)),i=(t(6335),t(6252)),d=t(2262),c=t(2201),m=t(6154),u=(t.p,t(1348));const v=e=>((0,i.dD)("data-v-a6617242"),e=e(),(0,i.Cn)(),e),p={class:"content_login"},h=v((()=>(0,i._)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no"},null,-1))),g=v((()=>(0,i._)("div",{class:"login-container"},[(0,i._)("h4",null,"PandoraNext-TokensTool")],-1))),w={class:"container"},f={style:{display:"flex",transform:"translate(0vw, 2vh)","font-size":"14.6px","justify-content":"center"}},b={style:{display:"flex",transform:"translate(0vw, 2vh)","margin-top":"5vh","font-size":"14.6px","justify-content":"center"}},_={style:{display:"flex",transform:"translate(0.5vw, 0vh)","margin-top":"6vh"}},y={style:{margin:"3.5vh 16px 0px 16px","justify-content":"center"}},x=v((()=>(0,i._)("div",{class:"bottom"},[(0,i._)("div",{style:{"text-align":"center",transform:"translateY(0vh)"}},[(0,i._)("h3",null,[(0,i._)("a",{href:"https://github.com/Yanyutin753/PandoraNext-TokensTool"},"Powered by tokensTool v0.6.8")])])],-1)));var k=(0,i.aZ)({__name:"loginIndex",setup(e){const a=(0,c.tv)(),t=window.location.pathname,v=t.split("/");let k="";v.length>=3&&(k="/"+v[1]);const T=(0,d.iH)(""),S=(0,d.iH)(""),I=(0,d.iH)(""),z=(0,d.iH)(!0);(0,i.bv)((async()=>{const e=localStorage.getItem("savedUsername"),a=localStorage.getItem("savedPassword"),t=localStorage.getItem("savedRemember");"true"===t&&(T.value=e||"",S.value=a||"",I.value="true"),window.innerWidth>767&&(z.value=!1),U()}));const P=e=>{const a=/^[^\s]*$/;return!!a.test(e)||"此项不允许包含空格"},W=localStorage.getItem("jwtToken"),U=async()=>{m.Z.post(`https://yubb.fun${k}/api/loginToken?token=`+W).then((e=>{1!=e.data.code?u.z8.error("令牌失效,请重新登录!"):window.innerWidth<=1e3?a.replace("/iphone"):a.replace("/home")})).catch((e=>{u.z8.error("令牌失效,请重新登录!")}))},V=()=>{I.value?(localStorage.setItem("savedUsername",T.value),localStorage.setItem("savedPassword",S.value),localStorage.setItem("savedRemember","true")):(localStorage.removeItem("savedUsername"),localStorage.removeItem("savedPassword"),localStorage.removeItem("savedRemember"));let e={loginUsername:T.value,loginPassword:S.value};fetch(`https://yubb.fun${k}/api/login`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${e}`},body:JSON.stringify(e)}).then((e=>e.json())).then((e=>{if(1===e.code){const t=e.data;localStorage.setItem("jwtToken",t),u.z8.success("登录成功!"),setTimeout((()=>{window.innerWidth<=1e3?a.replace("/iphone"):a.replace("/home")}),1e3)}else u.z8.error(e.msg)})).catch((e=>{console.error("登录时出现错误:",e),u.z8.error("账号或密码错误!")}))};return(e,a)=>{const t=r.gN,d=(0,i.up)("h9"),c=s.XZ,m=n.TS,u=o.zx,v=l.l0;return(0,i.wg)(),(0,i.iD)("div",p,[h,g,(0,i._)("div",w,[(0,i.Wm)(v,{onSubmit:V},{default:(0,i.w5)((()=>[(0,i.Wm)(m,{inset:""},{default:(0,i.w5)((()=>[(0,i._)("div",f,[(0,i.Wm)(t,{modelValue:T.value,"onUpdate:modelValue":a[0]||(a[0]=e=>T.value=e),clearable:"",name:"username",label:"Username",placeholder:"username",class:"userName","input-align":"center",rules:[{validator:P}]},null,8,["modelValue","rules"])]),(0,i._)("div",b,[(0,i.Wm)(t,{modelValue:S.value,"onUpdate:modelValue":a[1]||(a[1]=e=>S.value=e),clearable:"",type:"password",name:"password",label:"Password",placeholder:"password",class:"userName","input-align":"center",rules:[{validator:P}]},null,8,["modelValue","rules"])]),(0,i._)("div",_,[(0,i.Wm)(c,{class:"remember",modelValue:I.value,"onUpdate:modelValue":a[2]||(a[2]=e=>I.value=e),"checked-color":"#0ea27e","icon-size":"13.5px"},{default:(0,i.w5)((()=>[(0,i.Wm)(d,{style:{"font-size":"13.5px",transform:"translateX(7px)"}},{default:(0,i.w5)((()=>[(0,i.Uk)("Remember me")])),_:1})])),_:1},8,["modelValue"])])])),_:1}),(0,i._)("div",y,[(0,i.Wm)(u,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,i.w5)((()=>[(0,i.Wm)(d,{style:{"font-weight":"bold"}},{default:(0,i.w5)((()=>[(0,i.Uk)("Continue")])),_:1})])),_:1})])])),_:1})]),x])}}}),T=t(3744);const S=(0,T.Z)(k,[["__scopeId","data-v-a6617242"]]);var I=S}}]);
-//# sourceMappingURL=724.cd26d2dd.js.map
\ No newline at end of file
diff --git a/rearServer/target/classes/static/js/724.cd26d2dd.js.map b/rearServer/target/classes/static/js/724.cd26d2dd.js.map
deleted file mode 100644
index 53a04f8..0000000
--- a/rearServer/target/classes/static/js/724.cd26d2dd.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"js/724.cd26d2dd.js","mappings":"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","sources":["webpack://PandoraNext-TokensTool/./src/views/loginIndex.vue","webpack://PandoraNext-TokensTool/./src/views/loginIndex.vue?41fe"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue';\nimport { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, createTextVNode as _createTextVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\";\nconst _withScopeId = n => (_pushScopeId(\"data-v-a6617242\"), n = n(), _popScopeId(), n);\nconst _hoisted_1 = {\n class: \"content_login\"\n};\nconst _hoisted_2 = /*#__PURE__*/_withScopeId(() => /*#__PURE__*/_createElementVNode(\"meta\", {\n name: \"viewport\",\n content: \"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no\"\n}, null, -1));\nconst _hoisted_3 = /*#__PURE__*/_withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"login-container\"\n}, [/*#__PURE__*/_createElementVNode(\"h4\", null, \"PandoraNext-TokensTool\")], -1));\nconst _hoisted_4 = {\n class: \"container\"\n};\nconst _hoisted_5 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(0vw, 2vh)\",\n \"font-size\": \"14.6px\",\n \"justify-content\": \"center\"\n }\n};\nconst _hoisted_6 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(0vw, 2vh)\",\n \"margin-top\": \"5vh\",\n \"font-size\": \"14.6px\",\n \"justify-content\": \"center\"\n }\n};\nconst _hoisted_7 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translate(0.5vw, 0vh)\",\n \"margin-top\": \"6vh\"\n }\n};\nconst _hoisted_8 = {\n style: {\n \"margin\": \"3.5vh 16px 0px 16px\",\n \"justify-content\": \"center\"\n }\n};\nconst _hoisted_9 = /*#__PURE__*/_withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"bottom\"\n}, [/*#__PURE__*/_createElementVNode(\"div\", {\n style: {\n \"text-align\": \"center\",\n \"transform\": \"translateY(0vh)\"\n }\n}, [/*#__PURE__*/_createElementVNode(\"h3\", null, [/*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://github.com/Yanyutin753/PandoraNext-TokensTool\"\n}, \"Powered by tokensTool v0.6.8\")])])], -1));\nimport { ref, onMounted } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport axios from \"axios\";\nimport png from \"../asserts/chatGpt.jpg\";\nimport { ElMessage } from \"element-plus\";\nexport default /*#__PURE__*/_defineComponent({\n __name: 'loginIndex',\n setup(__props) {\n const router = useRouter();\n const path = window.location.pathname; // 假设是 \"/api/getData\"\n const parts = path.split(\"/\"); // 分割路径,得到 [\"\", \"api\", \"getData\"]\n let prefix = \"\"; // 默认值为 \"\"\n if (parts.length >= 3) {\n prefix = \"/\" + parts[1]; // 如果parts长度大于或等于3,获取第一个部分\n }\n\n const username = ref(\"\");\n const password = ref(\"\");\n const checked = ref(\"\");\n const image = png;\n const page = ref(true);\n onMounted(async () => {\n const savedUsername = localStorage.getItem(\"savedUsername\");\n const savedPassword = localStorage.getItem(\"savedPassword\");\n const savedRemember = localStorage.getItem(\"savedRemember\");\n if (savedRemember === \"true\") {\n username.value = savedUsername || \"\";\n password.value = savedPassword || \"\";\n checked.value = \"true\";\n }\n if (window.innerWidth > 767) {\n page.value = false;\n }\n fetchLoginToken();\n });\n // 自定义校验函数,直接返回错误提示\n const customValidator = value => {\n // 不允许有空格和回车符\n const regex = /^[^\\s]*$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项不允许包含空格\";\n }\n };\n /**\r\n * 用jwt令牌验证身份\r\n * 未通过者返回到/login\r\n */\n const token = localStorage.getItem(\"jwtToken\"); // 从localStorage获取JWT令牌\n const headers = {\n Authorization: `Bearer ${token}`\n };\n /**\r\n * 用jwt令牌验证身份函数\r\n */\n const fetchLoginToken = async () => {\n axios.post(`https://yubb.fun${prefix}/api/loginToken?token=` + token).then(response => {\n if (response.data.code == 1) {\n if (window.innerWidth <= 1000) {\n router.replace(`/iphone`);\n } else {\n router.replace(`/home`);\n }\n return;\n } else {\n ElMessage.error(\"令牌失效,请重新登录!\");\n }\n }).catch(error => {\n ElMessage.error(\"令牌失效,请重新登录!\");\n });\n };\n const submit = () => {\n // 处理登录逻辑\n if (checked.value) {\n // 如果记住密码被选中,将用户名和密码保存到本地存储\n localStorage.setItem(\"savedUsername\", username.value);\n localStorage.setItem(\"savedPassword\", password.value);\n localStorage.setItem(\"savedRemember\", \"true\");\n } else {\n // 如果不记住密码,清除本地存储中的信息\n localStorage.removeItem(\"savedUsername\");\n localStorage.removeItem(\"savedPassword\");\n localStorage.removeItem(\"savedRemember\");\n }\n let setting = {\n loginUsername: username.value,\n loginPassword: password.value\n };\n fetch(`https://yubb.fun${prefix}/api/login`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${setting}`\n },\n body: JSON.stringify(setting)\n }).then(response => response.json()).then(data => {\n if (data.code === 1) {\n const token = data.data;\n localStorage.setItem(\"jwtToken\", token);\n ElMessage.success(\"登录成功!\");\n setTimeout(() => {\n if (window.innerWidth <= 1000) {\n router.replace(`/iphone`);\n } else {\n router.replace(`/home`);\n }\n }, 1000);\n } else {\n ElMessage.error(data.msg);\n }\n }).catch(error => {\n console.error(\"登录时出现错误:\", error);\n ElMessage.error(\"账号或密码错误!\");\n });\n };\n return (_ctx, _cache) => {\n const _component_van_field = _resolveComponent(\"van-field\");\n const _component_h9 = _resolveComponent(\"h9\");\n const _component_van_checkbox = _resolveComponent(\"van-checkbox\");\n const _component_van_cell_group = _resolveComponent(\"van-cell-group\");\n const _component_van_button = _resolveComponent(\"van-button\");\n const _component_van_form = _resolveComponent(\"van-form\");\n return _openBlock(), _createElementBlock(\"div\", _hoisted_1, [_hoisted_2, _hoisted_3, _createElementVNode(\"div\", _hoisted_4, [_createVNode(_component_van_form, {\n onSubmit: submit\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_5, [_createVNode(_component_van_field, {\n modelValue: username.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => username.value = $event),\n clearable: \"\",\n name: \"username\",\n label: \"Username\",\n placeholder: \"username\",\n class: \"userName\",\n \"input-align\": \"center\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])]), _createElementVNode(\"div\", _hoisted_6, [_createVNode(_component_van_field, {\n modelValue: password.value,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => password.value = $event),\n clearable: \"\",\n type: \"password\",\n name: \"password\",\n label: \"Password\",\n placeholder: \"password\",\n class: \"userName\",\n \"input-align\": \"center\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])]), _createElementVNode(\"div\", _hoisted_7, [_createVNode(_component_van_checkbox, {\n class: \"remember\",\n modelValue: checked.value,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => checked.value = $event),\n \"checked-color\": \"#0ea27e\",\n \"icon-size\": \"13.5px\"\n }, {\n default: _withCtx(() => [_createVNode(_component_h9, {\n style: {\n \"font-size\": \"13.5px\",\n \"transform\": \"translateX(7px)\"\n }\n }, {\n default: _withCtx(() => [_createTextVNode(\"Remember me\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])])]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_8, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createVNode(_component_h9, {\n style: {\n \"font-weight\": \"bold\"\n }\n }, {\n default: _withCtx(() => [_createTextVNode(\"Continue\")]),\n _: 1\n })]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_9]);\n };\n }\n});","/* unplugin-vue-components disabled */import script from \"./loginIndex.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./loginIndex.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./loginIndex.vue?vue&type=style&index=0&id=a6617242&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-a6617242\"]])\n\nexport default __exports__"],"names":["_withScopeId","n","_hoisted_1","class","_hoisted_2","_","name","content","_hoisted_3","_hoisted_4","_hoisted_5","style","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","href","__name","setup","__props","router","path","window","location","pathname","parts","split","prefix","length","username","password","checked","page","async","savedUsername","localStorage","getItem","savedPassword","savedRemember","value","innerWidth","fetchLoginToken","customValidator","regex","test","token","axios","post","then","response","data","code","error","replace","catch","submit","setItem","removeItem","setting","loginUsername","loginPassword","fetch","method","headers","Authorization","body","JSON","stringify","json","success","setTimeout","msg","console","_ctx","_cache","_component_van_field","_component_h9","_component_van_checkbox","_component_van_cell_group","_component_van_button","_component_van_form","onSubmit","default","inset","modelValue","$event","clearable","label","placeholder","rules","validator","type","round","block","color","__exports__"],"sourceRoot":""}
\ No newline at end of file
diff --git a/rearServer/target/classes/static/js/98.13ca7e42.js b/rearServer/target/classes/static/js/813.784e18ef.js
similarity index 53%
rename from rearServer/target/classes/static/js/98.13ca7e42.js
rename to rearServer/target/classes/static/js/813.784e18ef.js
index 91ae2a7..3696d26 100644
--- a/rearServer/target/classes/static/js/98.13ca7e42.js
+++ b/rearServer/target/classes/static/js/813.784e18ef.js
@@ -1,2 +1,2 @@
-"use strict";(self["webpackChunkPandoraNext_TokensTool"]=self["webpackChunkPandoraNext_TokensTool"]||[]).push([[98],{2098:function(e,l,a){a.r(l),a.d(l,{default:function(){return ln}});var o=a(299),n=(a(8845),a(6773)),t=(a(487),a(2876)),u=(a(492),a(5185)),i=(a(3349),a(5267)),r=(a(1645),a(7630)),s=(a(7034),a(3164)),d=(a(6335),a(157)),m=(a(1897),a(6907)),c=(a(4746),a(294)),p=(a(6870),a(560),a(6252)),v=a(3577),h=a(2262),_=a(1094),w=a(2201),k=a(6154),f=a(844),b=a(1348),g=a(9288),y=a(2534),V=a(3028),W=a(4708),T=a(1893);const U={class:"content"},x=(0,p._)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no"},null,-1),A={class:"home-container"},H=(0,p._)("div",{class:"flex-grow"},null,-1),z=(0,p._)("a",{href:"https://ai.fakeopen.com/auth"},"PandoraNext地址",-1),P=(0,p._)("a",{href:"https://chat.openai.com/api/auth/session"},"OpenAI官网",-1),S=(0,p._)("a",{href:"https://github.com/Yanyutin753/PandoraNext-TokensTool"},"TokensTool地址",-1),N={class:"under"},C={style:{display:"block",transform:"translate(5vw, 2.5vh)"}},O=(0,p._)("div",{class:"flex items-center"},[(0,p._)("span",{class:"font-h4"},"PandoraNext-TokensTool "),(0,p._)("span",{class:"font-h4-tag"},"v0.6.8 ")],-1),$={class:"search"},B={style:{display:"flex",margin:"10px 35px -8px 35px"}},I={style:{display:"flex",transform:"translateX(4vw)",width:"70vw",height:"61vh"}},D={style:{display:"flex","align-items":"center"}},q={style:{"margin-left":"18px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},j={style:{margin:"15px 0px 15px 0px"}},L=(0,p._)("h1",null,"批量操作",-1),M=(0,p._)("h1",null,"全部检查并生成",-1),Z=(0,p._)("br",null,null,-1),E=(0,p._)("br",null,null,-1),J=(0,p._)("br",null,null,-1),K={style:{display:"block"}},R=(0,p._)("br",null,null,-1),Y=(0,p._)("br",null,null,-1),X=(0,p._)("br",null,null,-1),G={key:0},F=(0,p._)("br",null,null,-1),Q={key:1},ee=(0,p._)("br",null,null,-1),le={key:0},ae=(0,p._)("br",null,null,-1),oe=(0,p._)("br",null,null,-1),ne={key:2},te=(0,p._)("br",null,null,-1),ue=(0,p._)("br",null,null,-1),ie=(0,p._)("br",null,null,-1),re={style:{margin:"5.2px"}},se=(0,p._)("br",null,null,-1),de={style:{display:"block"}},me=(0,p._)("br",null,null,-1),ce=(0,p._)("br",null,null,-1),pe=(0,p._)("br",null,null,-1),ve=(0,p._)("br",null,null,-1),he={key:0},_e=(0,p._)("br",null,null,-1),we={key:1},ke=(0,p._)("br",null,null,-1),fe={key:0},be=(0,p._)("br",null,null,-1),ge=(0,p._)("br",null,null,-1),ye={key:2},Ve=(0,p._)("br",null,null,-1),We={key:3},Te=(0,p._)("br",null,null,-1),Ue=(0,p._)("br",null,null,-1),xe={style:{margin:"5.2px"}},Ae=(0,p._)("br",null,null,-1),He={style:{display:"block"}},ze=(0,p._)("br",null,null,-1),Pe=(0,p._)("br",null,null,-1),Se=(0,p._)("br",null,null,-1),Ne=(0,p._)("br",null,null,-1),Ce=(0,p._)("br",null,null,-1),Oe=(0,p._)("br",null,null,-1),$e=(0,p._)("br",null,null,-1),Be=(0,p._)("br",null,null,-1),Ie=(0,p._)("br",null,null,-1),De=(0,p._)("br",null,null,-1),qe={key:0},je=(0,p._)("br",null,null,-1),Le=(0,p._)("br",null,null,-1),Me={key:0},Ze=(0,p._)("br",null,null,-1),Ee={style:{display:"block"}},Je=(0,p._)("br",null,null,-1),Ke=(0,p._)("br",null,null,-1),Re=(0,p._)("br",null,null,-1),Ye=(0,p._)("br",null,null,-1),Xe=(0,p._)("br",null,null,-1),Ge=(0,p._)("br",null,null,-1),Fe={key:0},Qe=(0,p._)("br",null,null,-1),el=(0,p._)("br",null,null,-1),ll=(0,p._)("br",null,null,-1),al=(0,p._)("br",null,null,-1),ol=(0,p._)("br",null,null,-1),nl=(0,p._)("br",null,null,-1),tl=(0,p._)("br",null,null,-1),ul=(0,p._)("br",null,null,-1),il={style:{margin:"5.2px"}},rl=(0,p._)("br",null,null,-1),sl={style:{display:"block"}},dl=(0,p._)("br",null,null,-1),ml=(0,p._)("br",null,null,-1),cl=(0,p._)("br",null,null,-1),pl=(0,p._)("br",null,null,-1),vl=(0,p._)("br",null,null,-1),hl=(0,p._)("br",null,null,-1),_l=(0,p._)("br",null,null,-1),wl=(0,p._)("br",null,null,-1),kl={key:0},fl=(0,p._)("br",null,null,-1),bl=(0,p._)("br",null,null,-1),gl=(0,p._)("br",null,null,-1),yl={style:{margin:"5.2px"}},Vl=(0,p._)("br",null,null,-1),Wl={style:{display:"block"}},Tl=(0,p._)("br",null,null,-1),Ul=(0,p._)("br",null,null,-1),xl=(0,p._)("br",null,null,-1),Al=(0,p._)("br",null,null,-1),Hl=(0,p._)("br",null,null,-1),zl=(0,p._)("br",null,null,-1),Pl=(0,p._)("br",null,null,-1),Sl=(0,p._)("br",null,null,-1),Nl={style:{margin:"5.2px"}},Cl=(0,p._)("br",null,null,-1),Ol={style:{transform:"translate(0vw, -2vh)"}},$l={style:{"margin-left":"15px",display:"flex","align-items":"center"}},Bl={key:0},Il=(0,p._)("h5",null,"oneApi",-1),Dl={key:1},ql=(0,p._)("h5",null,"Json",-1),jl={style:{"margin-left":"25px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Ll={style:{display:"flex","align-items":"center",overflow:"auto"}},Ml={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Zl=(0,p._)("span",{style:{"margin-left":"0px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},"点击此进行查看",-1),El=(0,p._)("h1",null,"批量操作",-1),Jl=(0,p._)("br",null,null,-1),Kl={style:{display:"block"}},Rl=(0,p._)("br",null,null,-1),Yl=(0,p._)("br",null,null,-1),Xl=(0,p._)("br",null,null,-1),Gl=(0,p._)("br",null,null,-1),Fl={style:{display:"block"}},Ql=(0,p._)("br",null,null,-1),ea={key:0},la=(0,p._)("br",null,null,-1),aa=(0,p._)("br",null,null,-1),oa=(0,p._)("br",null,null,-1),na=(0,p._)("br",null,null,-1),ta=(0,p._)("br",null,null,-1),ua=(0,p._)("br",null,null,-1),ia={style:{margin:"5.2px"}},ra={style:{display:"block"}},sa=(0,p._)("br",null,null,-1),da=(0,p._)("br",null,null,-1),ma={key:0},ca=(0,p._)("br",null,null,-1),pa={style:{transform:"translateX(17px)"}},va=(0,p._)("br",null,null,-1),ha=(0,p._)("br",null,null,-1),_a=(0,p._)("br",null,null,-1),wa=(0,p._)("br",null,null,-1),ka=(0,p._)("br",null,null,-1),fa=(0,p._)("br",null,null,-1),ba={style:{margin:"5.2px"}},ga={style:{display:"flex"}},ya={style:{display:"flex","align-items":"center"}},Va={style:{"margin-left":"0px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Wa={style:{display:"flex","align-items":"center",overflow:"auto"}},Ta={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Ua={style:{display:"flex","align-items":"center",overflow:"auto"}},xa={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Aa=(0,p._)("br",null,null,-1),Ha={style:{display:"block"}},za=(0,p._)("br",null,null,-1),Pa={style:{transform:"translateX(17px)"}},Sa=(0,p._)("br",null,null,-1),Na=(0,p._)("br",null,null,-1),Ca=(0,p._)("br",null,null,-1),Oa={key:0},$a=(0,p._)("br",null,null,-1),Ba={style:{transform:"translateX(17px)"}},Ia=(0,p._)("br",null,null,-1),Da=(0,p._)("br",null,null,-1),qa=(0,p._)("br",null,null,-1),ja=(0,p._)("br",null,null,-1),La=(0,p._)("br",null,null,-1),Ma=(0,p._)("br",null,null,-1),Za={style:{margin:"5.2px"}},Ea=(0,p._)("h1",null,"添加share_token到OneAPI",-1),Ja={style:{"margin-left":"15px",display:"flex","align-items":"center"}},Ka={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Ra={style:{display:"flex","align-items":"center",overflow:"auto"}},Ya={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Xa={style:{display:"flex","align-items":"center",overflow:"auto"}},Ga={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Fa=(0,p._)("br",null,null,-1),Qa=(0,p._)("br",null,null,-1),eo=(0,p._)("br",null,null,-1),lo={style:{transform:"translateX(17px)"}},ao=(0,p._)("br",null,null,-1),oo={style:{transform:"translateX(17px)"}},no=(0,p._)("br",null,null,-1),to=(0,p._)("br",null,null,-1),uo=(0,p._)("br",null,null,-1),io=(0,p._)("br",null,null,-1),ro=(0,p._)("br",null,null,-1),so=(0,p._)("br",null,null,-1),mo={style:{margin:"5.2px"}},co=(0,p._)("br",null,null,-1),po=(0,p._)("br",null,null,-1),vo=(0,p._)("br",null,null,-1),ho=(0,p._)("br",null,null,-1),_o={style:{transform:"translateX(17px)"}},wo=(0,p._)("br",null,null,-1),ko=(0,p._)("br",null,null,-1),fo=(0,p._)("br",null,null,-1),bo=(0,p._)("br",null,null,-1),go=(0,p._)("br",null,null,-1),yo={style:{display:"block"}},Vo=(0,p._)("br",null,null,-1),Wo={style:{transform:"translateX(17px)"}},To=(0,p._)("br",null,null,-1),Uo={style:{transform:"translateX(17px)"}},xo=(0,p._)("br",null,null,-1),Ao=(0,p._)("br",null,null,-1),Ho=(0,p._)("br",null,null,-1),zo=(0,p._)("br",null,null,-1),Po=(0,p._)("br",null,null,-1),So=(0,p._)("br",null,null,-1),No={style:{margin:"5.2px"}},Co={style:{display:"block"}},Oo=(0,p._)("br",null,null,-1),$o=(0,p._)("br",null,null,-1),Bo=(0,p._)("br",null,null,-1),Io=(0,p._)("br",null,null,-1),Do=(0,p._)("br",null,null,-1),qo={key:0},jo=(0,p._)("br",null,null,-1),Lo={style:{transform:"translateX(17px)"}},Mo=(0,p._)("br",null,null,-1),Zo=(0,p._)("br",null,null,-1),Eo=(0,p._)("br",null,null,-1),Jo=(0,p._)("br",null,null,-1),Ko=(0,p._)("br",null,null,-1),Ro=(0,p._)("br",null,null,-1),Yo='此项可选,用于修改请求体中的模型名称,\n 为一个 JSON 字符串,键为请求中模型名称,\n 值为要替换的模型名称,例如:\n {\n "gpt-3.5-turbo-301":"gpt-3.5-turbo",\n "gpt-4-8314":"gpt-4", \n "gpt-4-32k-8314":"gpt-4-32k",\n }',Xo=0,Go=1,Fo=2;var Qo=(0,p.aZ)({__name:"homeIndex",setup(e){const l=window.location.pathname,a=l.split("/");let Qo="";a.length>=3&&(Qo="/"+a[1]);const en=(0,h.iH)(["default","svip","vip"]),ln=(0,h.iH)(["default","svip","vip"]),an=(0,h.iH)(),on=(0,h.iH)(),nn=(0,h.iH)([]),tn=(0,h.iH)([]),un=e=>{nn.value=e},rn=e=>{tn.value=e},sn=(0,h.iH)("ALL"),dn=(0,w.tv)(),mn=(0,h.iH)(!1),cn=(0,h.iH)(!1),pn=(0,h.iH)(!1),vn=(0,h.iH)(!1),hn=(0,h.iH)(!1),_n=(0,h.iH)(!1),wn=(0,h.iH)(!1),kn=(0,h.iH)(!1),fn=(0,h.iH)(!1),bn=(0,h.iH)(!1),gn=(0,h.iH)(!1),yn=(0,h.iH)(!1),Vn=(0,h.iH)(!1),Wn=(0,h.iH)(!1),Tn=(0,h.iH)(!1),Un=(0,h.iH)(!1),xn=(0,h.iH)(!1),An=(0,h.iH)(!1),Hn=(0,h.iH)(""),zn=[{buttonValue:"选中删除Token",label:"选中删除Token"},{buttonValue:"选中刷新Token",label:"选中刷新Token"},{buttonValue:"选中合成pool_token",label:"选中合成pool_token"},{buttonValue:"选中修改pool_token",label:"选中修改pool_token"}],Pn=((0,h.iH)(""),[{buttonModel:"gpt-3.5-turbo",label:"gpt-3.5-turbo"},{buttonModel:"gpt-4-s",label:"gpt-4-s"},{buttonModel:"gpt-4-mobile",label:"gpt-4-mobile"},{buttonModel:"gpt-4-vision",label:"gpt-4-vision"},{buttonModel:"gpt-4-classic",label:"gpt-4-classic"},{buttonModel:"gpt-4-vision-preview",label:"gpt-4-vision-preview"}]),Sn=[{buttonModel:"gpt-3.5-turbo",label:"gpt-3.5-turbo"},{buttonModel:"gpt-4",label:"gpt-4"}],Nn=(0,h.iH)(""),Cn=[{buttonPoolValue:"选中检查pool_token",label:"选中检查pool_token"},{buttonPoolValue:"选中删除pool_token",label:"选中删除pool_token"},{buttonPoolValue:"选中刷新pool_token",label:"选中刷新pool_token"},{buttonPoolValue:"选中更换pool_token",label:"选中更换pool_token"}],On=(0,h.iH)(""),$n=(0,h.iH)("*"),Bn=(0,h.iH)(""),In=(0,h.iH)(""),Dn=(0,h.iH)(""),qn=(0,h.iH)(!1),jn=(0,h.iH)(!1),Ln=(0,h.iH)(!1),Mn=(0,h.iH)(!1),Zn=(0,h.iH)(""),En=(0,h.iH)(!1),Jn=(0,h.iH)(""),Kn=(0,h.iH)(""),Rn=(0,h.iH)(""),Yn=(0,h.iH)(""),Xn=(0,h.iH)(""),Gn=(0,h.iH)(""),Fn=(0,h.iH)(""),Qn=(0,h.iH)(!1),et=(0,h.iH)(""),lt=(0,h.iH)("PandoraNext"),at=(0,h.iH)("default"),ot=(0,h.iH)(""),nt=(0,h.iH)(""),tt=(0,h.iH)(""),ut=(0,h.iH)(""),it=(0,h.iH)(!1),rt=(0,h.iH)(!1),st=(0,h.iH)(!1),dt=(0,h.iH)(!1),mt=(0,h.iH)(!1),ct=(0,h.iH)(5),pt=(0,h.iH)(1),vt=(0,h.iH)(""),ht=(0,h.iH)(""),_t=(0,h.iH)(""),wt=(0,h.iH)(""),kt=(0,h.iH)(""),ft=(0,h.iH)(""),bt=((0,h.iH)(""),(0,h.iH)("")),gt=((0,h.iH)(!0),(0,h.iH)("")),yt=(0,h.iH)(!1),Vt=(0,h.iH)(""),Wt=(0,h.iH)([]),Tt=(0,h.iH)([]),Ut=(0,h.iH)(""),xt=(0,h.iH)(vt.value+On.value),At=(0,h.iH)(0),Ht=(0,h.iH)(""),zt=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!!l.test(e)||"此项至少要包含8位且必须包含数字和字母"},Pt=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!(!l.test(e)&&""!=e)||"此项至少要包含8位且必须包含数字和字母"},St=e=>{const l=/^[\u4e00-\u9fa5a-zA-Z0-9]{3,10}$/;return!!l.test(e)||"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字"},Nt=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!(1!=nu.value&&1!=Zt.value&&!l.test(e))||"此项至少要包含8位且必须包含数字和字母"},Ct=(0,h.iH)(""),Ot=(0,h.iH)(""),$t=(0,h.iH)(""),Bt=(0,h.iH)(""),It=(0,h.iH)(""),Dt=(0,h.iH)(""),qt=(0,h.iH)(!1),jt=(0,h.iH)(!1),Lt=(0,h.iH)(!1),Mt=(0,h.iH)(""),Zt=(0,h.iH)(!1),Et=(0,h.iH)(!1),Jt=(0,h.iH)(!0),Kt=(0,h.iH)([]),Rt=(0,h.iH)([]),Yt=(0,h.iH)([]),Xt=(0,h.iH)([]),Gt=(0,h.iH)(""),Ft=(0,h.iH)(""),Qt=(0,h.iH)(""),eu=(0,h.iH)(""),lu=(0,h.iH)(!1),au=(0,h.iH)(!1),ou=(0,h.iH)(!1),nu=(0,h.iH)(!1),tu=(0,h.iH)(!1),uu=(0,h.iH)(""),iu=(0,h.iH)(""),ru=(0,h.iH)(""),su=((0,h.iH)(""),(0,h.iH)("")),du=(0,h.iH)([]),mu=(0,h.iH)(""),cu=(0,h.iH)(["default","svip","vip"]),pu=(0,h.iH)(0),vu=((0,h.iH)(.085*window.innerHeight),(0,h.iH)("")),hu=(0,h.iH)(""),_u=(0,h.iH)(""),wu=localStorage.getItem("jwtToken");wu||dn.replace("/");const ku={Authorization:`Bearer ${wu}`},fu=async()=>{k.Z.post(`https://yubb.fun${Qo}/api/loginToken?token=`+wu).then((e=>{if(0==e.data.code)return console.error(e.data.data),void dn.replace("/")})).catch((e=>{console.error("请求loginToken接口失败",e),dn.replace("/")}))},bu=e=>{"Web"==e||"WEB"==e?Tu(""):"ALL"==e||"All"==e?Vu(""):e.includes("API")?Wu(""):Vu(e)},gu=e=>{Au(e)},yu=e=>{xu(e)},Vu=async e=>{const l=await k.Z.get(`https://yubb.fun${Qo}/api/selectToken?name=${e}`,{headers:ku}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession})));Kt.value=e}},Wu=async e=>{const l=await k.Z.get(`https://yubb.fun${Qo}/api/selectToken?name=${e}`,{headers:ku}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession}))),l=e.filter((e=>!0===e.setPoolToken));Kt.value=l}},Tu=async e=>{const l=await k.Z.get(`https://yubb.fun${Qo}/api/selectToken?name=${e}`,{headers:ku}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession}))),l=e.filter((e=>!1===e.setPoolToken));Kt.value=l}},Uu=async()=>{const e=await k.Z.get(`https://yubb.fun${Qo}/api/selectLogin`,{headers:ku}),l=e.data.data;if(Array.isArray(l)){const e=l.map((e=>({ipAddress:e.ipAddress,requestIp:e.requestIp,outRequestNumber:e.outRequestNumber,inRequestNumber:e.inRequestNumber,lastLoginTime:e.lastLoginTime})));Xt.value=e}},xu=async e=>{const l=await k.Z.get(`https://yubb.fun${Qo}/api/selectPoolToken?name=${e}`,{headers:ku}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({poolName:e.poolName,poolTime:e.poolTime,poolToken:e.poolToken,shareTokens:e.shareTokens,checkPool:e.checkPool,intoOneApi:e.intoOneApi,poolOneApi_models:e.poolOneApi_models,poolModel_mapping:e.poolModel_mapping,oneApi_pandoraUrl:e.oneApi_pandoraUrl,groupChecked:e.groupChecked,priority:e.priority})));Rt.value=e}},Au=async e=>{const l=V.kN.service({fullscreen:!0}),a=await k.Z.get(`https://yubb.fun${Qo}/api/selectShareToken?name=${e}`,{headers:ku}),o=a.data.data;if(Array.isArray(o)){const e=o.map((e=>({oneApi_name:e.oneApi_name,token_name:e.token_name,token_value:e.token_value,oneApi_baseUrl:e.oneApi_baseUrl,oneApi_models:e.oneApi_models,model_mapping:e.model_mapping,oneApi_groups:e.oneApi_groups,shareTime:e.shareTime,priority:e.priority})));Yt.value=e}l.close()},Hu=async e=>{const l=await k.Z.get(`https://yubb.fun${Qo}/api/selectSetting`,{headers:ku}),a=l.data.data;On.value=a.proxy_api_prefix,$n.value=a.isolated_conv_title,Bn.value=a.bing,In.value=a.timeout,Dn.value=a.proxy_url,qn.value=a.public_share,jn.value=a.disable_signup,Ln.value=a.auto_conv_arkose,Mn.value=a.proxy_file_service,Zn.value=a.custom_doh_host,En.value=a.tls.enabled,Jn.value=a.tls.cert_file,Kn.value=a.tls.key_file,Rn.value=a.site_password,Yn.value=a.setup_password,null==a.whitelist?ot.value="null":ot.value=a.whitelist,Xn.value=a.loginUsername,Gn.value=a.loginPassword,Fn.value=a.license_id,Qn.value=a.isGetToken,et.value=a.getTokenPassword,lt.value=a.containerName,at.value=a.autoToken_url,nt.value=a.validation.provider,tt.value=a.validation.site_key,ut.value=a.validation.site_secret,it.value=a.validation.site_login,rt.value=a.validation.setup_login,st.value=a.validation.oai_username,dt.value=a.validation.oai_password,mt.value=a.auto_updateSession,ct.value=a.auto_updateTime,pt.value=a.auto_updateNumber,vt.value=a.pandoraNext_outUrl,vt.value.endsWith("/")?xt.value=vt.value+On.value:xt.value=vt.value+"/"+On.value,ht.value=a.oneAPi_outUrl,_t.value=a.oneAPi_intoToken,zu()},zu=async()=>{"123456"==Gn.value&&"root"==Xn.value&&(f.T.alert("请先修改默认的初始账号和密码,并填写相应的信息,具体可参考网站文档!","温馨提醒",{confirmButtonText:"确定",callback:e=>{(0,b.z8)({type:"info",message:"如果不知道怎么填的话,可以看tokensTool的文档站!"})}}),hn.value=!0,Gn.value="",Xn.value="")},Pu=()=>{const e=nn.value;0!==e.length?bn.value=!0:(0,b.z8)("未选择数据")},Su=async()=>{try{const l=nn.value,a=l.map((e=>e.name)),o=V.kN.service({fullscreen:!0});try{""==Ut.value&&(Ut.value="{}"),JSON.parse(Ut.value)}catch(e){return(0,b.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void o.close()}const n={poolName:gt.value,intoOneApi:yt.value,poolOneApi_models:Tt.value.toString(),poolModel_mapping:Ut.value,oneApi_pandoraUrl:xt.value,shareTokens:a,groupChecked:ln.value.toString(),priority:At.value},t=await fetch(`https://yubb.fun${Qo}/api/addPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(n)}),u=await t.json();1===u.code?(gt.value="",xu(""),(0,b.z8)({type:"success",message:u.data}),gt.value="",yt.value=!1,Vt.value="",Wt.value=[],ln.value=["default","svip","vip"],At.value=0):(0,b.z8)({type:"info",message:u.msg}),o.close()}catch(l){(0,b.z8)({type:"info",message:"取消生成pool_token"})}bn.value=!1},Nu=e=>{let l=Rt.value.find((l=>l.poolName===e));null!=l&&(Ht.value=l.poolToken,yt.value=l.intoOneApi,Wt.value=l.poolOneApi_models.split(","),Vt.value=l.poolModel_mapping,xt.value=l.oneApi_pandoraUrl,en.value=l.groupChecked.split(","),At.value=l.priority)},Cu=e=>{Kt.value.find((l=>l.name===e&&!0===l.setPoolToken))},Ou=(0,p.Fl)((()=>Kt.value.filter((e=>!0===e.setPoolToken)))),$u=async()=>{try{const l=V.kN.service({fullscreen:!0});try{""==Vt.value&&(Vt.value="{}"),JSON.parse(Vt.value)}catch(e){return(0,b.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void l.close()}const a=nn.value,o=a.map((e=>e.name)),n={poolName:wt.value,poolToken:Ht.value,intoOneApi:yt.value,poolOneApi_models:Wt.value.toString(),poolModel_mapping:Vt.value,oneApi_pandoraUrl:xt.value,shareTokens:o,groupChecked:en.value.toString(),priority:At.value};console.log(n);const t=await fetch(`https://yubb.fun${Qo}/api/requirePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(n)}),u=await t.json();1===u.code?(xu(""),(0,b.z8)({type:"success",message:u.data}),wt.value="",Ht.value="",yt.value=!1,Wt.value=[],Vt.value="",ln.value=["default","svip","vip"],At.value=0):(0,b.z8)({type:"info",message:u.msg}),l.close()}catch(l){(0,b.z8)({type:"info",message:"取消修改pool_token"})}yn.value=!1},Bu=async()=>{const e=V.kN.service({fullscreen:!0});try{try{""==mu.value&&(mu.value="{}"),JSON.parse(mu.value)}catch(l){return(0,b.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void e.close()}const a={oneApi_name:iu.value,token_name:ru.value,oneApi_baseUrl:su.value,oneApi_models:du.value.toString(),model_mapping:mu.value,oneApi_groups:cu.value.toString(),priority:At.value},o=await fetch(`https://yubb.fun${Qo}/api/addShareToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}),n=await o.json();1===n.code?(Au(""),(0,b.z8)({type:"success",message:n.data}),iu.value="",ru.value="",su.value="",du.value=[],mu.value="",cu.value=["default","svip","vip"],At.value=0):(0,b.z8)({type:"info",message:n.msg})}catch(a){(0,b.z8)({type:"info",message:"取消修改pool_token"})}Tn.value=!1,e.close()},Iu=(0,h.iH)("");(0,p.bv)((async()=>{const e=V.kN.service({fullscreen:!0});fu(),window.innerWidth<=900?dn.replace("/iphone"):dn.replace("/home");try{await Promise.all([bu(vu.value),xu(vu.value),Hu(vu.value)]);const e=await k.Z.get(`https://yubb.fun${Qo}/api/getPandoraNext`,{headers:ku}),l=e.data.data;null!=l&&(Iu.value=`${l.current}/${l.total}`)}catch(l){console.error("An error occurred:",l)}finally{e.close()}}));const Du=({row:e})=>0==e.checkSession?"warning-row":"",qu=({row:e})=>0==e.checkPool?"warning-row":"",ju=()=>{window.open(vt.value)},Lu=()=>{var e=vt.value;"/"!==e.charAt(e.length-1)&&(e+="/"),window.open(e+"shared.html")},Mu=()=>{var e=vt.value;"/"!==e.charAt(e.length-1)&&(e+="/"),window.open(e+"setup")},Zu=()=>{window.open("https://apifox.com/apidoc/shared-40345b46-9c9c-45cc-b494-6a6a387a978f")},Eu=(0,h.iH)("-1");let Ju="";const Ku=(e,l)=>{console.log("选择准备!")},Ru=()=>{cn.value=!0},Yu=()=>{const e=V.kN.service({fullscreen:!0}),l=new Date,a=`${l.getFullYear()}-${(l.getMonth()+1).toString().padStart(2,"0")}-${l.getDate().toString().padStart(2,"0")} ${l.getHours().toString().padStart(2,"0")}:${l.getMinutes().toString().padStart(2,"0")}:${l.getSeconds().toString().padStart(2,"0")}`;""!=uu.value&&(lu.value=!1,ou.value=!1,au.value=!1),0==nu.value&&(eu.value=Ft.value+","+Qt.value,tu.value=!1,lu.value=!1,ou.value=!1,au.value=!1);let o={name:Gt.value,token:eu.value,username:Ft.value,userPassword:Qt.value,shared:lu.value,auto_shared:lu.value,show_user_info:au.value,plus:ou.value,setPoolToken:nu.value,useRefreshToken:tu.value,password:uu.value,updateTime:a};fetch(`https://yubb.fun${Qo}/api/addToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(o)}).then((e=>e.json())).then((l=>{1==l.code?(b.z8.success("添加成功!"),Gt.value="",eu.value="",Ft.value="",Qt.value="",lu.value=!1,au.value=!1,ou.value=!1,nu.value=!1,tu.value=!1,uu.value="",""==o.token&&(o.token=l.data,b.z8.success("已为您自动装填token!"))):b.z8.error(l.msg),uu.value="",Vu(""),e.close()})).catch((l=>{b.z8.error("获取账号出现问题,请检查刷新网址是否正确!"),e.close()})),cn.value=!1},Xu=(0,h.iH)(null),Gu=async e=>{if(Ct.value=e.name,It.value=e.username,Dt.value=e.userPassword,Ot.value=e.token,$t.value=e.access_token,Bt.value=e.share_token,qt.value=e.shared,jt.value=e.show_user_info,Lt.value=e.plus,Mt.value=e.password,Zt.value=e.setPoolToken,Et.value=e.useRefreshToken,Jt.value=e.checkSession,1!=Zt.value)return void(pn.value=!0);const l={Authorization:`Bearer ${e.access_token}`};if(pn.value=!0,Zt.value){const a=await k.Z.get(`${xt.value}/api/token/info/${e.share_token}`,{headers:l});let o=[],n=[];for(let e in a.data.usage)e.startsWith("range")||(n.push(e),o.push(a.data.usage[e]));0==n.length&&0==o.length&&(n=["gpt-4","gpt-3.5-turbo","gpt-3.5-turbo-0613"],o=[0,0,0]);const t=T.S1(Xu.value),u={title:{text:`今日${a.data.usage["range"]} ${Ct.value}各模型用量`,textStyle:{fontSize:14,color:"#606266"},left:"center",top:"bottom"},tooltip:{},legend:{data:n},xAxis:{data:n},yAxis:{},series:[{name:"对话数量",type:"bar",data:o,barWidth:"25%",itemStyle:{color:function(e){const l=["#3498db","#2ecc71","#f1c40f","#9b59b6","#1abc9c","#e67e22","#ecf0f1","#95a5a6","#34495e","#16a085"];return l[e.dataIndex%l.length]}}}]};t.setOption(u)}},Fu=(0,h.iH)(""),Qu=(0,h.iH)(""),ei=(0,h.iH)(""),li=(0,h.iH)(""),ai=(0,h.iH)([]),oi=(0,h.iH)(""),ni=(0,h.iH)(""),ti=(0,h.iH)(""),ui=(0,h.iH)(["default","svip","vip"]),ii=(0,h.iH)(""),ri=e=>{Fu.value=e.oneApi_name,Qu.value=e.token_name,ei.value=e.token_value,li.value=e.oneApi_baseUrl,ni.value=e.oneApi_models,oi.value=e.model_mapping,ti.value=e.oneApi_groups,At.value=e.priority,ii.value=e.shareTime,Un.value=!0};let si=!1,di=!1,mi="";const ci=(e,l)=>{Ct.value=l.name,It.value=l.username,Dt.value=l.userPassword,Ot.value=l.token,Ju=l.token,qt.value=l.shared,jt.value=l.show_user_info,Lt.value=l.plus,Mt.value=l.password,Zt.value=l.setPoolToken,Et.value=l.useRefreshToken,si=Zt.value,di=Et.value,mi=Ot.value,Jt.value=l.checkSession,$t.value=l.access_token,Bt.value=l.share_token,mn.value=!0},pi=async e=>{0==e?vn.value=!0:1==e?hn.value=!0:2==e&&(_n.value=!0)},vi=e=>{const l=V.kN.service({fullscreen:!0});null!=ot.value&&"null"!=ot.value||(ot.value=""),0==En.value&&(Jn.value="",Kn.value="");const a={enabled:En.value,cert_file:Jn.value,key_file:Kn.value},o={provider:nt.value,site_key:tt.value,site_secret:ut.value,site_login:it.value,setup_login:rt.value,oai_username:st.value,oai_password:dt.value},n={proxy_api_prefix:On.value,isolated_conv_title:$n.value,bing:Bn.value,timeout:In.value,proxy_url:Dn.value,public_share:qn.value,site_password:Rn.value,setup_password:Yn.value,loginUsername:Xn.value,loginPassword:Gn.value,license_id:Fn.value,disable_signup:jn.value,auto_conv_arkose:Ln.value,proxy_file_service:Mn.value,custom_doh_host:Zn.value,isGetToken:Qn.value,getTokenPassword:et.value,containerName:lt.value,autoToken_url:at.value,whitelist:ot.value,validation:o,tls:a};fetch(`https://yubb.fun${Qo}/api/requireSetting`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(n)}).then((e=>e.json())).then((e=>{1==e.code?b.z8.success(e.data):b.z8.error(e.msg),fu(),l.close()})).catch((e=>{l.close(),console.error("请求requireSetting接口失败",e),b.z8.error("修改失败!")})),0==e?vn.value=!1:1==e?hn.value=!1:2==e&&(_n.value=!1)},hi=()=>{const e=V.kN.service({fullscreen:!0});"/"!==vt.value.charAt(vt.value.length-1)&&(vt.value+="/");const l={auto_updateSession:mt.value,auto_updateTime:ct.value,auto_updateNumber:pt.value,pandoraNext_outUrl:vt.value,oneAPi_outUrl:ht.value,oneAPi_intoToken:_t.value};fetch(`https://yubb.fun${Qo}/api/controllerTask`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>e.json())).then((l=>{1==l.code?b.z8.success(l.data):b.z8.error(l.msg),e.close()})).catch((l=>{e.close(),console.error("请求controllerTask接口失败",l),b.z8.error("修改失败!")})),fn.value=!1},_i=()=>{const e=V.kN.service({fullscreen:!0});let l="";if(Ju!=Ot.value){const e=new Date;l=`${e.getFullYear()}-${(e.getMonth()+1).toString().padStart(2,"0")}-${e.getDate().toString().padStart(2,"0")} ${e.getHours().toString().padStart(2,"0")}:${e.getMinutes().toString().padStart(2,"0")}:${e.getSeconds().toString().padStart(2,"0")}`}0==Zt.value&&(qt.value=!1,Lt.value=!1,jt.value=!1,Et.value=!1),!0===qt.value?Mt.value="":(Lt.value=!1,jt.value=!1);let a="";a=si!=Zt.value&&mi==Ot.value?0==Zt.value?"您确定要关闭API模型开启web模式,您将无法生成任何的token,但不消耗额度!":1==Et.value?"您确定要开启API模式,并使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!":"您确定要开启API模式,并使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!":di!=Et.value&&mi==Ot.value?1==Et.value?"您确定要切换使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!":"您确定要切换使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!":"修改将要提交,您确定修改好了吗?",f.T.confirm(a,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const l={name:Ct.value,token:Ot.value,username:It.value,userPassword:Dt.value,shared:qt.value,auto_shared:qt.value,show_user_info:jt.value,plus:Lt.value,setPoolToken:Zt.value,useRefreshToken:Et.value,checkSession:Jt.value,password:Mt.value,access_token:$t.value,share_token:Bt.value};fetch(`https://yubb.fun${Qo}/api/requiredToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>e.json())).then((l=>{1==l.code?(b.z8.success(l.data),Vu("")):b.z8.error(l.msg),e.close()})).catch((l=>{e.close(),console.error("请求requireToken接口失败",l),b.z8.error("修改失败!")})),mn.value=!1})).catch((()=>{e.close(),(0,b.z8)({type:"info",message:"编辑取消!"})}))},wi=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${Qo}/api/open`,{headers:ku}),a=l.data.data;null!=a&&""!=a?f.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):b.z8.error(l.data.msg),e.close()},ki=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${Qo}/api/close`,{headers:ku}),a=l.data.data;null!=a&&""!=a?f.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):b.z8.error(l.data.msg),e.close()},fi=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${Qo}/api/restart`,{headers:ku}),a=l.data.data;null!=a&&""!=a?f.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):b.z8.error(l.data.msg),e.close()},bi=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${Qo}/api/reload`,{headers:ku}),a=l.data.data;null!=a&&""!=a?f.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):b.z8.error(l.data.msg),e.close()},gi=(0,h.iH)(""),yi=(0,h.iH)(""),Vi=async()=>{const e=await k.Z.get(`https://yubb.fun${Qo}/api/getPandoraNext`,{headers:ku}),l=e.data.data;if(null!=l){Iu.value=l.current+"/"+l.total,gi.value=l.ip;var a=new Date;const e=new Date(a.getTime()+1e3*l.ttl);var o=e.getFullYear(),n=e.getMonth()+1,t=e.getDate(),u=e.getHours(),i=e.getMinutes(),r=e.getSeconds();yi.value=o+"-"+n+"-"+t+" "+u+":"+i+":"+r}kn.value=!0},Wi=async()=>{const e=V.kN.service({fullscreen:!0}),l=await k.Z.get(`https://yubb.fun${Qo}/api/updateAllToken`,{headers:ku}),a=l.data.data;null!=a&&""!=a?(await Promise.all([Vu(""),xu("")]),f.T.alert(a,"温馨提示",{dangerouslyUseHTMLString:!0})):b.z8.error(l.data.msg),e.close()},Ti=e=>{if(0==e.setPoolToken)return void b.z8.error("未开启API模式,无法刷新");let l="您确定要刷新session_token吗,刷新session_token消耗100额度,请您要仔细认真考虑哦!";e.useRefreshToken&&(l="您确定要刷新refresh_token吗,刷新refresh_token消耗1000额度,请您要仔细认真考虑哦!"),f.T.confirm(l,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const l=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/updateSessionToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((a=>{null!=a&&""!=a&&(null!=a.data?(e.token=a.data,Vu(""),f.T.alert("刷新成功!","温馨提醒",{confirmButtonText:"OK"})):b.z8.error(a.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))})).catch((()=>{(0,b.z8)({type:"info",message:"刷新取消!"})}))},Ui=e=>{const l=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/refreshSimplyPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?(xu(""),f.T.alert("刷新成功!","温馨提醒",{confirmButtonText:"OK"})):b.z8.error(e.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},xi=e=>{Fu.value=e.oneApi_name,Qu.value=e.token_name,ei.value=e.token_value,li.value=e.oneApi_baseUrl,ai.value=e.oneApi_models.split(","),oi.value=e.model_mapping,ui.value=e.oneApi_groups.split(","),At.value=e.priority,ii.value=e.shareTime,xn.value=!0},Ai=()=>{const e=V.kN.service({fullscreen:!0}),l={oneApi_name:Fu.value,token_name:Qu.value,token_value:ei.value,oneApi_baseUrl:li.value,oneApi_models:ai.value.toString(),model_mapping:oi.value,oneApi_groups:ui.value.toString(),priority:At.value};fetch(`https://yubb.fun${Qo}/api/requireShareToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"}):b.z8.error(l.msg)),Au(""),e.close()})).catch((l=>{e.close(),console.error("Error:",l)})),xn.value=!1},Hi=e=>{if(0==e.setPoolToken)return void b.z8.error("未开启API模式,无法生成");const l=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/updateToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?f.T.alert("生成shareToken成功!","温馨提醒",{confirmButtonText:"OK"}):b.z8.error(e.msg)),Vu(""),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},zi=e=>{const l=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/changePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?(xu(""),f.T.alert("更换pool_token成功!","温馨提醒",{confirmButtonText:"OK"})):b.z8.error(e.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},Pi=(e,l)=>{const a=V.kN.service({fullscreen:!0});f.T.confirm("您确定要删除这个Pool_Token吗,删除之后就找不到咯,请您要仔细认真考虑哦!","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{fetch(`https://yubb.fun${Qo}/api/deletePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e.data?(xu(""),b.z8.success(e.data),a.close()):(xu(""),b.z8.error(e.msg),a.close()),bn.value=!1})).catch((e=>{console.error("删除失败",e),xu(""),a.close(),bn.value=!1}))})).catch((()=>{a.close(),(0,b.z8)({type:"info",message:"删除取消!"})}))},Si=(e,l)=>{const a=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/verifySimplyPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?(xu(""),f.T.alert(e.data,"温馨提醒",{confirmButtonText:"OK"})):(xu(""),b.z8.error(e.msg))),a.close()})).catch((e=>{a.close(),console.error("Error:",e)}))},Ni=(e,l)=>{const a=V.kN.service({fullscreen:!0});let o="";f.T.confirm("您确定要删除这个Token吗,删除之后就找不到咯,记得点击全部刷新poolToken","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`https://yubb.fun${Qo}/api/deleteToken`,l,{headers:ku}).then((async e=>{1==l.setPoolToken&&await k.Z.get(`https://yubb.fun${Qo}/api/updateAllPoolToken`,{headers:ku}),o=e.data.data,Vu(""),(0,b.z8)({type:"success",message:o}),a.close()})).catch((e=>{a.close(),console.error("删除失败",e)}))})).catch((()=>{(0,b.z8)({type:"info",message:"删除取消!"}),a.close()}))},Ci=(e,l)=>{const a=V.kN.service({fullscreen:!0});let o="";f.T.confirm("您确定要删除这个share_Token吗,删除之后就找不到咯","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`https://yubb.fun${Qo}/api/deleteShareToken`,l,{headers:ku}).then((async e=>{o=e.data.data,Au(""),(0,b.z8)({type:"success",message:o}),a.close()})).catch((e=>{a.close(),console.error("删除失败",e)}))})).catch((()=>{(0,b.z8)({type:"info",message:"删除取消!"}),a.close()}))},Oi=e=>{if(!e)return"";var l=new Date;const a=(0,g.Z)(e.updateTime),o=(0,y.Z)(l,a);return e.token.length>=2e3?o>=80?"已经过去了至少80天":Math.ceil(80-o)+"天":e.token.length<200&&!e.token.includes("fk-")?"永久":o>=10?"已经过去了至少10天":Math.ceil(10-o)+"天"},$i=e=>e.substring(0,30)+"...",Bi=()=>{localStorage.removeItem("jwtToken"),dn.replace("/")},Ii=()=>{wn.value=!0},Di=async()=>{await Au(""),Wn.value=!0},qi=()=>{Uu(),gn.value=!0},ji=()=>{window.open("https://github.com/Yanyutin753/PandoraNext-TokensTool")},Li=e=>{const l=document.createElement("textarea");l.value=e,document.body.appendChild(l),l.select(),document.execCommand("copy"),document.body.removeChild(l),(0,b.z8)({type:"success",message:"复制成功!"})},Mi=e=>{const l=nn.value,a=l.map((e=>e));if(0!==l.length)if("选中删除Token"!=e)if("选中刷新Token"!=e)"选中合成pool_token"==e?Pu():"选中修改pool_token"==e&&(wt.value="",ft.value="",Ht.value="",bt.value="",yt.value=!1,Wt.value=[],Vt.value="",xt.value="",ln.value=[],At.value=0,yn.value=!0);else{let e=0;const l=nn.value,a=l.map((e=>e));a.forEach(((l,a)=>{l.setPoolToken&&(l.useRefreshToken?e+=1e3:e+=100)}));const o="您确定要花"+e+"积分刷新这"+l.length+"个Token吗,请您要仔细认真考虑哦!";f.T.confirm(o,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/updateSessionTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(Vu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):b.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,b.z8)({type:"info",message:"刷新取消!"})}))}else{const e=V.kN.service({fullscreen:!0});let o="";f.T.confirm("您确定要删除这"+l.length+"个Token吗,删除之后就找不到咯","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`https://yubb.fun${Qo}/api/deleteTokenList`,a,{headers:ku}).then((async l=>{await k.Z.get(`https://yubb.fun${Qo}/api/updateAllPoolToken`,{headers:ku}),o=l.data.data,Vu(""),(0,b.z8)({type:"success",message:o}),e.close()})).catch((l=>{e.close(),console.error("删除失败",l)}))})).catch((()=>{(0,b.z8)({type:"info",message:"删除取消!"}),e.close()}))}else(0,b.z8)("未选择数据")},Zi=e=>{kt.value=e.poolName,ft.value=e.shareTokens,Ht.value=e.poolToken,bt.value=e.poolTime,yt.value=e.intoOneApi,Wt.value=e.poolOneApi_models.split(","),Vt.value=e.poolModel_mapping,xt.value=e.oneApi_pandoraUrl,en.value=e.groupChecked.split(","),At.value=e.priority,An.value=!0},Ei=e=>{const l=tn.value,a=l.map((e=>e));if(0!==a.length)if("选中检查pool_token"!=e)if("选中刷新pool_token"!=e)if("选中更换pool_token"!=e)if("选中删除pool_token"!=e);else{l.length;const e="您确定要删除这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";f.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/deletePoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(xu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):b.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,b.z8)({type:"info",message:"删除取消!"})}))}else{l.length;const e="您确定要更换这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";f.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/changePoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(xu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):b.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,b.z8)({type:"info",message:"更换取消!"})}))}else{const e="您确定要刷新这"+l.length+"个pool_token吗?";f.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/refreshSimplyPoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(xu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):b.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,b.z8)({type:"info",message:"刷新取消!"})}))}else{let e=4*l.length;const o="您确定要花"+e+"积分检查这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";f.T.confirm(o,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=V.kN.service({fullscreen:!0});fetch(`https://yubb.fun${Qo}/api/verifySimplyPoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(xu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):b.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,b.z8)({type:"info",message:"检查取消!"})}))}else(0,b.z8)("未选择数据")},Ji=(0,h.iH)(null),Ki=async()=>{Vn.value=!0;const e=await k.Z.get(`https://yubb.fun${Qo}/api/modelsUsage`,{headers:ku});let l=e.data.data.map((e=>e.usage)),a=e.data.data.map((e=>e.model));const o=T.S1(Ji.value),n={title:{text:"tokensTool每日接口对话统计",fontSize:18,color:"#606266"},tooltip:{},legend:{data:a},xAxis:{data:a},yAxis:{},series:[{name:"对话数量",type:"bar",data:l,barWidth:"25%",itemStyle:{color:function(e){const l=["#e74c3c","#3498db","#2ecc71","#f1c40f","#9b59b6","#1abc9c","#e67e22","#ecf0f1","#95a5a6","#34495e","#16a085"];return l[e.dataIndex%l.length]}}}]};o.setOption(n)};return(e,l)=>{const a=(0,p.up)("el-menu-item"),w=c.JO,k=(0,p.up)("el-sub-menu"),f=(0,p.up)("h10"),b=(0,p.up)("el-menu"),g=m.zx,y=(0,p.up)("el-page-header"),V=(0,p.up)("el-radio-button"),T=(0,p.up)("el-radio-group"),Qo=d.ol,nn=(0,p.up)("el-table-column"),tn=(0,p.up)("el-button"),dn=(0,p.up)("el-tag"),bt=(0,p.up)("el-popover"),Jt=(0,p.up)("el-option"),wu=(0,p.up)("el-select"),ku=(0,p.up)("el-button-group"),fu=s.gN,Uu=r.rs,xu=i.TS,Au=u.l0,Hu=t.Vq,zu=(0,p.up)("CopyDocument"),Pu=(0,p.up)("el-icon"),Ju=(0,p.up)("el-select-group"),ii=(0,p.up)("el-dialog"),si=(0,p.up)("el-form-item"),di=(0,p.up)("el-input"),mi=n.XZ,Ri=o.cO,Yi=(0,p.Q2)("loading");return(0,p.wg)(),(0,p.iD)(p.HY,null,[(0,p._)("div",U,[x,(0,p.Wm)(b,{"default-active":Eu.value,class:"el-menu-demo",mode:"horizontal",ellipsis:!1,onSelect:Ku,"active-text-color":"#0ea27e","text-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Wm)(a,null,{default:(0,p.w5)((()=>[(0,p._)("img",{style:{width:"40px"},src:_,alt:"Element logo",onClick:ji})])),_:1}),(0,p.Wm)(a,{onClick:Vi},{title:(0,p.w5)((()=>[(0,p._)("div",A,[(0,p._)("h2",null,(0,v.zw)(Iu.value),1)]),(0,p.Wm)(w,{name:"replay",size:"20"})])),_:1}),H,(0,p.Wm)(a,{index:"1",onClick:Ii},{default:(0,p.w5)((()=>[(0,p.Uk)("pool_token列表")])),_:1}),(0,p.Wm)(a,{index:"2",onClick:Di},{default:(0,p.w5)((()=>[(0,p.Uk)("share_token列表")])),_:1}),(0,p.Wm)(k,{index:"3"},{title:(0,p.w5)((()=>[(0,p.Uk)("跳转Web服务")])),default:(0,p.w5)((()=>[(0,p.Wm)(k,{index:"3-1"},{title:(0,p.w5)((()=>[(0,p.Uk)("跳转PandoraWeb服务")])),default:(0,p.w5)((()=>[(0,p.Wm)(a,{index:"3-1-1",onClick:ju},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(lt.value)+"主页",1)])),_:1}),(0,p.Wm)(a,{index:"3-1-2",onClick:Lu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(lt.value)+"共享页",1)])),_:1}),(0,p.Wm)(a,{index:"3-1-3",onClick:Mu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(lt.value)+"修改页",1)])),_:1})])),_:1}),(0,p.Wm)(k,{index:"3-2"},{title:(0,p.w5)((()=>[(0,p.Uk)("获取token地址")])),default:(0,p.w5)((()=>[(0,p.Wm)(a,{index:"3-2-1"},{default:(0,p.w5)((()=>[z])),_:1}),(0,p.Wm)(a,{index:"3-2-2"},{default:(0,p.w5)((()=>[P])),_:1}),(0,p.Wm)(a,{index:"3-2-3"},{default:(0,p.w5)((()=>[S])),_:1})])),_:1}),(0,p.Wm)(a,{index:"3-3",onClick:Zu},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool使用说明")])),_:1})])),_:1}),(0,p.Wm)(k,{index:"5"},{title:(0,p.w5)((()=>[(0,p.Uk)("系统设置")])),default:(0,p.w5)((()=>[(0,p.Wm)(a,{index:"5-1",onClick:l[0]||(l[0]=e=>pi(Xo))},{default:(0,p.w5)((()=>[(0,p.Uk)("PandoraNext设置")])),_:1}),(0,p.Wm)(a,{index:"5-2",onClick:l[1]||(l[1]=e=>pi(Go))},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool设置")])),_:1}),(0,p.Wm)(a,{index:"5-3",onClick:l[2]||(l[2]=e=>pi(Fo))},{default:(0,p.w5)((()=>[(0,p.Uk)("验证码信息设置")])),_:1}),(0,p.Wm)(a,{index:"5-3",onClick:l[3]||(l[3]=e=>fn.value=!0)},{default:(0,p.w5)((()=>[(0,p.Uk)("定时&接口设置")])),_:1})])),_:1}),(0,p.Wm)(k,{index:"6"},{title:(0,p.w5)((()=>[(0,p.Uk)("系统功能")])),default:(0,p.w5)((()=>[(0,p.Wm)(k,{index:"6-1"},{title:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(lt.value)+"状态",1)])),default:(0,p.w5)((()=>[(0,p.Wm)(a,{index:"6-1-1",onClick:wi},{default:(0,p.w5)((()=>[(0,p.Uk)("开启"+(0,v.zw)(lt.value),1)])),_:1}),(0,p.Wm)(a,{index:"6-1-2",onClick:ki},{default:(0,p.w5)((()=>[(0,p.Uk)("暂停"+(0,v.zw)(lt.value),1)])),_:1}),(0,p.Wm)(a,{index:"6-1-3",onClick:fi},{default:(0,p.w5)((()=>[(0,p.Uk)("重启"+(0,v.zw)(lt.value),1)])),_:1}),(0,p.Wm)(a,{index:"6-1-4",onClick:bi},{default:(0,p.w5)((()=>[(0,p.Uk)("重载"+(0,v.zw)(lt.value),1)])),_:1})])),_:1}),(0,p.Wm)(a,{index:"6-3",onClick:Ki},{default:(0,p.w5)((()=>[(0,p.Uk)("copilot每日用量统计")])),_:1}),(0,p.Wm)(a,{index:"6-2",onClick:qi},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool登录日志")])),_:1}),(0,p.Wm)(a,{index:"6-4",onClick:Bi},{default:(0,p.w5)((()=>[(0,p.Wm)(f,{style:{"font-size":"14px"}},{default:(0,p.w5)((()=>[(0,p.Uk)("退出登录")])),_:1})])),_:1})])),_:1})])),_:1},8,["default-active"]),(0,p._)("div",N,[(0,p._)("div",C,[(0,p.Wm)(y,{icon:null,title:" "},{content:(0,p.w5)((()=>[O])),extra:(0,p.w5)((()=>[(0,p._)("div",{class:"addToken",onClick:Ru},[(0,p.Wm)(g,{square:"",icon:"add-o",color:"#0ea27e",class:"addTokenButton"})])])),_:1})]),(0,p._)("div",$,[(0,p._)("div",B,[(0,p.Wm)(Qo,{modelValue:vu.value,"onUpdate:modelValue":l[8]||(l[8]=e=>vu.value=e),"show-action":"",shape:"round",clearable:"",placeholder:"请输入搜索token名称和类型",onSearch:bu},{action:(0,p.w5)((()=>[(0,p.Wm)(T,{modelValue:sn.value,"onUpdate:modelValue":l[7]||(l[7]=e=>sn.value=e),label:"size control"},{default:(0,p.w5)((()=>[(0,p.Wm)(V,{type:"success",plain:"",label:"WEB",onClick:l[4]||(l[4]=e=>Tu(vu.value))},{default:(0,p.w5)((()=>[(0,p.Uk)("WEB")])),_:1}),(0,p.Wm)(V,{type:"success",plain:"",label:"ALL",onClick:l[5]||(l[5]=e=>Vu(vu.value))},{default:(0,p.w5)((()=>[(0,p.Uk)("ALL")])),_:1}),(0,p.Wm)(V,{type:"success",plain:"",label:"API",onClick:l[6]||(l[6]=e=>Wu(vu.value))},{default:(0,p.w5)((()=>[(0,p.Uk)("API")])),_:1})])),_:1},8,["modelValue"])])),_:1},8,["modelValue"])]),(0,p._)("div",I,[(0,p.wy)(((0,p.wg)(),(0,p.j4)((0,h.SU)(W.eI),{data:Kt.value,style:{width:"100%"},onSelectionChange:un,ref_key:"multipleTableRef",ref:an,"default-sort":{prop:"updateTime",prop:"setPoolToken"},"row-class-name":Du},{default:(0,p.w5)((()=>[(0,p.Wm)(nn,{type:"selection",width:"45"}),(0,p.Wm)(nn,{label:"名称",prop:"setPoolToken",sortable:"","min-width":"136"},{default:(0,p.w5)((e=>[(0,p._)("div",D,[(0,p.Wm)(tn,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[(0,p._)("h5",null,(0,v.zw)(e.row.setPoolToken?e.row.useRefreshToken?"refAPI":"sesAPI":"Web"),1)])),_:2},1024),(0,p._)("span",q,(0,v.zw)(e.row.name),1)])])),_:1}),(0,p.Wm)(nn,{label:"账号信息","min-width":"200"},{default:(0,p.w5)((e=>[(0,p.Wm)(bt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p._)("div",null,"账号: "+(0,v.zw)(e.row.username),1),(0,p._)("div",null,"密码: "+(0,v.zw)(e.row.userPassword),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(dn,null,{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(e.row.username),1)])),_:2},1024)])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{label:"Token值","min-width":"270"},{default:(0,p.w5)((e=>[(0,p.Wm)(bt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p._)("div",null,"token: "+(0,v.zw)($i(e.row.token)),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(dn,null,{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)($i(e.row.token)),1)])),_:2},1024)])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{prop:"updateTime",sortable:"",label:"有效时间","min-width":"167"},{default:(0,p.w5)((e=>[(0,p.Wm)(bt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p._)("div",null,"注册时间:"+(0,v.zw)(e.row.updateTime),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(dn,null,{default:(0,p.w5)((()=>[(0,p.Uk)("距离过期还有:"+(0,v.zw)(Oi(e.row)),1)])),_:2},1024)])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{label:"操作方法",width:"335"},{default:(0,p.w5)((e=>[(0,p.Wm)(tn,{size:"small",onClick:l=>ci(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("编辑")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"primary",onClick:l=>Gu(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"danger",onClick:l=>Ni(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"success",onClick:l=>Ti(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("刷新")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"warning",onClick:l=>Hi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("生成")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])),[[Yi,e.loading]])]),(0,p._)("div",j,[(0,p.Wm)(wu,{modelValue:Hn.value,"onUpdate:modelValue":l[9]||(l[9]=e=>Hn.value=e),clearable:"",filterable:"",placeholder:"请选择批量操作",class:"ml-4"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(zn,(e=>(0,p.Wm)(Jt,{key:e.buttonValue,label:e.label,value:e.buttonValue},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),(0,p.Wm)(tn,{class:"ml-4",onClick:l[10]||(l[10]=e=>Mi(Hn.value))},{default:(0,p.w5)((()=>[L])),_:1}),(0,p.Wm)(ku,{class:"my-button"},{default:(0,p.w5)((()=>[(0,p.Wm)(tn,{onClick:Wi},{default:(0,p.w5)((()=>[M])),_:1})])),_:1})])]),Z,E,J])]),(0,p.Wm)(Hu,{show:mn.value,"onUpdate:show":l[21]||(l[21]=e=>mn.value=e),title:"📌修改token信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",K,[(0,p.Wm)(Au,{onSubmit:l[20]||(l[20]=e=>_i())},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[R,(0,p.Wm)(fu,{modelValue:It.value,"onUpdate:modelValue":l[11]||(l[11]=e=>It.value=e),name:"OpenAi邮箱",label:"OpenAi邮箱",placeholder:"OpenAi邮箱",rules:[{required:!0,message:"请填写OpenAi邮箱"}]},null,8,["modelValue"]),Y,(0,p.Wm)(fu,{modelValue:Dt.value,"onUpdate:modelValue":l[12]||(l[12]=e=>Dt.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码",rules:[{required:!0,message:"请填写OpenAi密码"}]},null,8,["modelValue"]),X,(0,p.Wm)(fu,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Zt.value,"onUpdate:modelValue":l[13]||(l[13]=e=>Zt.value=e)},null,8,["modelValue"])])),_:1}),1==Zt.value?((0,p.wg)(),(0,p.iD)("div",G,[F,(0,p.Wm)(fu,{name:"switch",label:"是否使用refreshToken"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Et.value,"onUpdate:modelValue":l[14]||(l[14]=e=>Et.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0),1==Zt.value?((0,p.wg)(),(0,p.iD)("div",Q,[ee,(0,p.Wm)(fu,{name:"switch",label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:qt.value,"onUpdate:modelValue":l[15]||(l[15]=e=>qt.value=e)},null,8,["modelValue"])])),_:1}),1==qt.value?((0,p.wg)(),(0,p.iD)("div",le,[ae,(0,p.Wm)(fu,{name:"switch",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:jt.value,"onUpdate:modelValue":l[16]||(l[16]=e=>jt.value=e)},null,8,["modelValue"])])),_:1}),oe,(0,p.Wm)(fu,{name:"switch",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Lt.value,"onUpdate:modelValue":l[17]||(l[17]=e=>Lt.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0)])):(0,p.kq)("",!0),0==qt.value||0==Zt.value?((0,p.wg)(),(0,p.iD)("div",ne,[te,(0,p.Wm)(fu,{modelValue:Mt.value,"onUpdate:modelValue":l[18]||(l[18]=e=>Mt.value=e),name:"进入Token的密码",label:"进入Token的密码",placeholder:"填了将不会分享给他人!",rules:[{validator:Nt}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),ue,(0,p.Wm)(fu,{modelValue:Ot.value,"onUpdate:modelValue":l[19]||(l[19]=e=>Ot.value=e),label:"Token的值",type:"textarea",maxlength:"5000",placeholder:"请填写OpenAi的Token(选填),session或refresh_token",autosize:{maxHeight:100,minHeight:20},"show-word-limit":""},null,8,["modelValue"]),ie])),_:1}),(0,p._)("div",re,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),se])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:cn.value,"onUpdate:show":l[33]||(l[33]=e=>cn.value=e),title:"✨添加token信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"addTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",de,[(0,p.Wm)(Au,{onSubmit:l[32]||(l[32]=e=>Yu())},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[me,(0,p.Wm)(fu,{modelValue:Gt.value,"onUpdate:modelValue":l[22]||(l[22]=e=>Gt.value=e),name:"Token用户名",label:"Token用户名",placeholder:"Token用户名",rules:[{required:!0,message:"请填写Token用户名"}]},null,8,["modelValue"]),ce,(0,p.Wm)(fu,{modelValue:Ft.value,"onUpdate:modelValue":l[23]||(l[23]=e=>Ft.value=e),name:"OpenAi邮箱",label:"OpenAi邮箱",placeholder:"OpenAi邮箱",rules:[{required:!0,message:"请填写OpenAi邮箱"}]},null,8,["modelValue"]),pe,(0,p.Wm)(fu,{modelValue:Qt.value,"onUpdate:modelValue":l[24]||(l[24]=e=>Qt.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码",rules:[{required:!0,message:"请填写OpenAi密码"}]},null,8,["modelValue"]),ve,(0,p.Wm)(fu,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:nu.value,"onUpdate:modelValue":l[25]||(l[25]=e=>nu.value=e)},null,8,["modelValue"])])),_:1}),1==nu.value?((0,p.wg)(),(0,p.iD)("div",he,[_e,(0,p.Wm)(fu,{name:"switch",label:"是否使用refreshToken"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:tu.value,"onUpdate:modelValue":l[26]||(l[26]=e=>tu.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0),1==nu.value?((0,p.wg)(),(0,p.iD)("div",we,[ke,(0,p.Wm)(fu,{name:"switch",label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:lu.value,"onUpdate:modelValue":l[27]||(l[27]=e=>lu.value=e)},null,8,["modelValue"])])),_:1}),1==lu.value?((0,p.wg)(),(0,p.iD)("div",fe,[be,(0,p.Wm)(fu,{name:"switch",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:au.value,"onUpdate:modelValue":l[28]||(l[28]=e=>au.value=e)},null,8,["modelValue"])])),_:1}),ge,(0,p.Wm)(fu,{name:"switch",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:ou.value,"onUpdate:modelValue":l[29]||(l[29]=e=>ou.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0)])):(0,p.kq)("",!0),""==lu.value?((0,p.wg)(),(0,p.iD)("div",ye,[Ve,(0,p.Wm)(fu,{modelValue:uu.value,"onUpdate:modelValue":l[30]||(l[30]=e=>uu.value=e),name:"进入Token的密码",label:"进入Token的密码",placeholder:"填了将不会分享给他人!",rules:[{validator:Nt}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),1==nu.value?((0,p.wg)(),(0,p.iD)("div",We,[Te,(0,p.Wm)(fu,{rows:"3",type:"textarea",maxlength:"5000","show-word-limit":"",modelValue:eu.value,"onUpdate:modelValue":l[31]||(l[31]=e=>eu.value=e),name:"Token的值",label:"Token的值",placeholder:"选填(可不填,不填则使用账号密码),目前只支持session_token或refresh_token"},null,8,["modelValue"])])):(0,p.kq)("",!0),Ue])),_:1}),(0,p._)("div",xe,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Ae])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:pn.value,"onUpdate:show":l[53]||(l[53]=e=>pn.value=e),title:"🔎token信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"showDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",He,[(0,p.Wm)(Au,null,{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[ze,(0,p.Wm)(fu,{modelValue:Ct.value,"onUpdate:modelValue":l[34]||(l[34]=e=>Ct.value=e),name:"Token用户名",label:"Token用户名",placeholder:"Token用户名","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[35]||(l[35]=e=>Li(Ct.value))},null,8,["modelValue"]),Pe,(0,p.Wm)(fu,{modelValue:Mt.value,"onUpdate:modelValue":l[36]||(l[36]=e=>Mt.value=e),type:"temPassword",name:"进入Token的密码",label:"进入Token的密码",placeholder:"填了将不会分享给他人(如不填则输入Token名即可进入)!","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[37]||(l[37]=e=>Li(Mt.value))},null,8,["modelValue"]),Se,(0,p.Wm)(fu,{modelValue:It.value,"onUpdate:modelValue":l[38]||(l[38]=e=>It.value=e),name:"OpenAi用户名",label:"OpenAi用户名",placeholder:"OpenAi用户名","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[39]||(l[39]=e=>Li(It.value))},null,8,["modelValue"]),Ne,(0,p.Wm)(fu,{modelValue:Dt.value,"onUpdate:modelValue":l[40]||(l[40]=e=>Dt.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[41]||(l[41]=e=>Li(Dt.value))},null,8,["modelValue"]),Ce,(0,p.Wm)(fu,{name:"temShared",readonly:!0,label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:qt.value,"onUpdate:modelValue":l[42]||(l[42]=e=>qt.value=e)},null,8,["modelValue"])])),_:1}),Oe,(0,p.Wm)(fu,{readonly:!0,name:"temShow_user_info",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:jt.value,"onUpdate:modelValue":l[43]||(l[43]=e=>jt.value=e)},null,8,["modelValue"])])),_:1}),$e,(0,p.Wm)(fu,{readonly:!0,name:"temPlus",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:Lt.value,"onUpdate:modelValue":l[44]||(l[44]=e=>Lt.value=e)},null,8,["modelValue"])])),_:1}),Be,(0,p.Wm)(fu,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:Zt.value,"onUpdate:modelValue":l[45]||(l[45]=e=>Zt.value=e)},null,8,["modelValue"])])),_:1}),Ie,(0,p.Wm)(fu,{name:"switch",label:"是否使用refresh_token"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:Et.value,"onUpdate:modelValue":l[46]||(l[46]=e=>Et.value=e)},null,8,["modelValue"])])),_:1}),De,(0,p.Wm)(fu,{modelValue:Ot.value,"onUpdate:modelValue":l[47]||(l[47]=e=>Ot.value=e),label:"Token的值",type:"textarea",maxlength:"5000",placeholder:"请填写OpenAi的Token(session或refresh_token)","show-word-limit":"","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[48]||(l[48]=e=>Li(Ot.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"]),1==Zt.value?((0,p.wg)(),(0,p.iD)("div",qe,[je,(0,p.Wm)(fu,{modelValue:$t.value,"onUpdate:modelValue":l[49]||(l[49]=e=>$t.value=e),label:"access_token",type:"textarea",maxlength:"5000",placeholder:"请填写OpenAi的access_token","show-word-limit":"","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[50]||(l[50]=e=>Li($t.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"]),Le,(0,p.Wm)(fu,{modelValue:Bt.value,"onUpdate:modelValue":l[51]||(l[51]=e=>Bt.value=e),label:"share_token",type:"textarea",maxlength:"200",placeholder:"请填写OpenAi的share_token","show-word-limit":"","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[52]||(l[52]=e=>Li(Bt.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"])])):(0,p.kq)("",!0)])),_:1})])),_:1}),1==Zt.value?((0,p.wg)(),(0,p.iD)("div",Me,[(0,p._)("div",{ref_key:"chart_show",ref:Xu,style:{width:"auto",height:"300px"}},null,512),Ze])):(0,p.kq)("",!0)])])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:vn.value,"onUpdate:show":l[68]||(l[68]=e=>vn.value=e),title:"PandoraNext设置信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requirePandora"},{default:(0,p.w5)((()=>[(0,p._)("div",Ee,[(0,p.Wm)(Au,{onSubmit:l[67]||(l[67]=e=>vi(Xo))},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Je,(0,p.Wm)(fu,{modelValue:$n.value,"onUpdate:modelValue":l[54]||(l[54]=e=>$n.value=e),name:"对话标题",label:"对话标题",placeholder:"隔离对话设置标题"},null,8,["modelValue"]),Ke,(0,p.Wm)(fu,{modelValue:Bn.value,"onUpdate:modelValue":l[55]||(l[55]=e=>Bn.value=e),name:"绑定IP和端口",label:"绑定IP和端口",placeholder:"绑定IP和端口(选填)"},null,8,["modelValue"]),Re,(0,p.Wm)(fu,{modelValue:Zn.value,"onUpdate:modelValue":l[56]||(l[56]=e=>Zn.value=e),name:"DoH主机名",label:"DoH主机名",placeholder:"配置自定义的DoH主机名(选填)"},null,8,["modelValue"]),Ye,(0,p.Wm)(fu,{modelValue:In.value,"onUpdate:modelValue":l[57]||(l[57]=e=>In.value=e),name:"请求超时时间",label:"请求超时时间",placeholder:"请求超时时间(选填)"},null,8,["modelValue"]),Xe,(0,p.Wm)(fu,{name:"switch",label:"是否分享对话(选填)"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:qn.value,"onUpdate:modelValue":l[58]||(l[58]=e=>qn.value=e)},null,8,["modelValue"])])),_:1}),Ge,(0,p.Wm)(fu,{name:"switch",label:"是否配置证书"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:En.value,"onUpdate:modelValue":l[59]||(l[59]=e=>En.value=e)},null,8,["modelValue"])])),_:1}),1==En.value?((0,p.wg)(),(0,p.iD)("div",Fe,[Qe,(0,p.Wm)(fu,{modelValue:Jn.value,"onUpdate:modelValue":l[60]||(l[60]=e=>Jn.value=e),name:"证书文件",label:"证书文件",placeholder:"证书文件"},null,8,["modelValue"]),el,(0,p.Wm)(fu,{modelValue:Kn.value,"onUpdate:modelValue":l[61]||(l[61]=e=>Kn.value=e),name:"密钥文件",label:"密钥文件",placeholder:"密钥文件"},null,8,["modelValue"])])):(0,p.kq)("",!0),ll,(0,p.Wm)(fu,{name:"switch",label:"是否禁用注册"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:jn.value,"onUpdate:modelValue":l[62]||(l[62]=e=>jn.value=e)},null,8,["modelValue"])])),_:1}),al,(0,p.Wm)(fu,{name:"switch",label:"是否自动打码"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Ln.value,"onUpdate:modelValue":l[63]||(l[63]=e=>Ln.value=e)},null,8,["modelValue"])])),_:1}),ol,(0,p.Wm)(fu,{name:"switch",label:"使用文件代理服务"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Mn.value,"onUpdate:modelValue":l[64]||(l[64]=e=>Mn.value=e)},null,8,["modelValue"])])),_:1}),nl,(0,p.Wm)(fu,{modelValue:Dn.value,"onUpdate:modelValue":l[65]||(l[65]=e=>Dn.value=e),name:"代理服务URL",label:"代理服务URL",placeholder:"代理服务URL(选填)"},null,8,["modelValue"]),tl,(0,p.Wm)(fu,{modelValue:ot.value,"onUpdate:modelValue":l[66]||(l[66]=e=>ot.value=e),name:"白名单",label:"白名单",placeholder:"[]限制所有账号(默认为null)"},null,8,["modelValue"]),ul])),_:1}),(0,p._)("div",il,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),rl])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:hn.value,"onUpdate:show":l[80]||(l[80]=e=>hn.value=e),title:"tokensTool设置信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",sl,[(0,p.Wm)(Au,{onSubmit:l[79]||(l[79]=e=>vi(Go))},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[dl,(0,p.Wm)(fu,{modelValue:Xn.value,"onUpdate:modelValue":l[69]||(l[69]=e=>Xn.value=e),name:"登录用户名",label:"登录用户名",placeholder:"tokensTool用户名"},null,8,["modelValue"]),ml,(0,p.Wm)(fu,{modelValue:Gn.value,"onUpdate:modelValue":l[70]||(l[70]=e=>Gn.value=e),name:"登录密码",label:"登录密码",placeholder:"不少于8位,且同时包含数字和字母",rules:[{validator:zt}]},null,8,["modelValue","rules"]),cl,(0,p.Wm)(fu,{modelValue:On.value,"onUpdate:modelValue":l[71]||(l[71]=e=>On.value=e),name:"proxy接口前缀",label:"proxy接口前缀",placeholder:"proxy模式接口后缀,不少于8位,且同时包含数字和字母",rules:[{validator:zt}]},null,8,["modelValue","rules"]),pl,(0,p.Wm)(fu,{modelValue:at.value,"onUpdate:modelValue":l[72]||(l[72]=e=>at.value=e),name:"proxy模式URL",label:"proxy模式URL",placeholder:"http(s)://(ip:port或者域名)/后缀,同公网服务器填default"},null,8,["modelValue"]),vl,(0,p.Wm)(fu,{modelValue:Yn.value,"onUpdate:modelValue":l[73]||(l[73]=e=>Yn.value=e),name:"重载服务密码",label:"重载服务密码",placeholder:"PandoraNext重载服务密码,不少于8位,且同时包含数字和字母",rules:[{validator:zt}]},null,8,["modelValue","rules"]),hl,(0,p.Wm)(fu,{modelValue:Rn.value,"onUpdate:modelValue":l[74]||(l[74]=e=>Rn.value=e),name:"访问密码",label:"访问密码",placeholder:"PandoraNext访问密码,建议开启访问密码",rules:[{validator:Pt}]},null,8,["modelValue","rules"]),_l,(0,p.Wm)(fu,{modelValue:Fn.value,"onUpdate:modelValue":l[75]||(l[75]=e=>Fn.value=e),name:"验证licenseId",label:"验证licenseId",placeholder:"验证licenseId(github上拿到的license_id)"},null,8,["modelValue"]),wl,(0,p.Wm)(fu,{name:"switch",label:"tokensTool接口"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Qn.value,"onUpdate:modelValue":l[76]||(l[76]=e=>Qn.value=e)},null,8,["modelValue"])])),_:1}),1==Qn.value?((0,p.wg)(),(0,p.iD)("div",kl,[fl,(0,p.Wm)(fu,{modelValue:et.value,"onUpdate:modelValue":l[77]||(l[77]=e=>et.value=e),name:"接口密码",label:"接口密码",placeholder:"tokensTool接口密码,用于获取tokens,不少于8位,且同时包含数字和字母",rules:[{validator:zt}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),bl,(0,p.Wm)(fu,{modelValue:lt.value,"onUpdate:modelValue":l[78]||(l[78]=e=>lt.value=e),name:"监管容器名",label:"监管容器名",placeholder:"监管运行的容器名或文件名,默认为PandoraNext",rules:[{required:!0,message:"请填写监管的容器名"}]},null,8,["modelValue"]),gl])),_:1}),(0,p._)("div",yl,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Vl])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:_n.value,"onUpdate:show":l[89]||(l[89]=e=>_n.value=e),title:"PandoraNext验证信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"verify"},{default:(0,p.w5)((()=>[(0,p._)("div",Wl,[(0,p.Wm)(Au,{onSubmit:l[88]||(l[88]=e=>vi(Fo))},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Tl,(0,p.Wm)(fu,{modelValue:nt.value,"onUpdate:modelValue":l[81]||(l[81]=e=>nt.value=e),name:"验证码提供商",label:"验证码提供商",placeholder:"验证码提供商"},null,8,["modelValue"]),Ul,(0,p.Wm)(fu,{modelValue:tt.value,"onUpdate:modelValue":l[82]||(l[82]=e=>tt.value=e),name:"验证码网站参数",label:"验证码网站参数",placeholder:"验证码网站参数"},null,8,["modelValue"]),xl,(0,p.Wm)(fu,{modelValue:ut.value,"onUpdate:modelValue":l[83]||(l[83]=e=>ut.value=e),name:"验证码API Key",label:"验证码API Key",placeholder:"验证码API Key"},null,8,["modelValue"]),Al,(0,p.Wm)(fu,{name:"switch",label:"是否全站密码登录页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:it.value,"onUpdate:modelValue":l[84]||(l[84]=e=>it.value=e)},null,8,["modelValue"])])),_:1}),Hl,(0,p.Wm)(fu,{name:"switch",label:"是否在设置登录页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:rt.value,"onUpdate:modelValue":l[85]||(l[85]=e=>rt.value=e)},null,8,["modelValue"])])),_:1}),zl,(0,p.Wm)(fu,{name:"switch",label:"是否在输入用户名页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:st.value,"onUpdate:modelValue":l[86]||(l[86]=e=>st.value=e)},null,8,["modelValue"])])),_:1}),Pl,(0,p.Wm)(fu,{name:"switch",label:"是否在输入密码页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:dt.value,"onUpdate:modelValue":l[87]||(l[87]=e=>dt.value=e)},null,8,["modelValue"])])),_:1}),Sl])),_:1}),(0,p._)("div",Nl,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Cl])),_:1},8,["show"]),(0,p.Wm)(ii,{modelValue:wn.value,"onUpdate:modelValue":l[95]||(l[95]=e=>wn.value=e),title:"pool_token列表","align-center":"",width:"78%","close-on-click-modal":!1,class:"shareTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Ol,[(0,p.Wm)(Pu,{onClick:l[90]||(l[90]=e=>Li(vt.value+On.value+"/v1/chat/completions"))},{default:(0,p.w5)((()=>[(0,p.Wm)(zu)])),_:1}),(0,p.Wm)(f,null,{default:(0,p.w5)((()=>[(0,p.Uk)("API地址:"+(0,v.zw)(vt.value)+(0,v.zw)(On.value)+"/v1/chat/completions",1)])),_:1})]),(0,p.Wm)((0,h.SU)(W.eI),{data:Rt.value,"default-sort":{prop:"poolTime",prop:"intoOneApi"},onSelectionChange:rn,ref_key:"multipleTableRefPool",ref:on,"row-class-name":qu,class:"poolDateTable"},{default:(0,p.w5)((()=>[(0,p.Wm)(nn,{type:"selection",width:"45"}),(0,p.Wm)(nn,{label:"pool_token名称",prop:"intoOneApi",sortable:"","min-width":"170"},{default:(0,p.w5)((e=>[(0,p.Wm)(bt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{reference:(0,p.w5)((()=>[(0,p._)("div",$l,[1==e.row.intoOneApi?((0,p.wg)(),(0,p.iD)("div",Bl,[(0,p.Wm)(tn,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[Il])),_:1})])):((0,p.wg)(),(0,p.iD)("div",Dl,[(0,p.Wm)(tn,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[ql])),_:1})])),(0,p._)("span",jl,(0,v.zw)(e.row.poolName),1)])])),default:(0,p.w5)((()=>[(0,p.Wm)(dn,null,{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(e.row.poolOneApi_models),1)])),_:2},1024)])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{label:"pool_token值","min-width":"325"},{default:(0,p.w5)((e=>[(0,p._)("div",Ll,[(0,p.Wm)(Pu,{onClick:l=>Li(e.row.poolToken)},{default:(0,p.w5)((()=>[(0,p.Wm)(zu)])),_:2},1032,["onClick"]),(0,p._)("span",Ml,(0,v.zw)(e.row.poolToken),1)])])),_:1}),(0,p.Wm)(nn,{label:"使用token名集合","min-width":"165"},{default:(0,p.w5)((e=>[(0,p.Wm)(bt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(e.row.shareTokens),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(dn,null,{default:(0,p.w5)((()=>[Zl])),_:1})])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{property:"poolTime",label:"更新时间",prop:"poolTime",sortable:"","min-width":"170"}),(0,p.Wm)(nn,{label:"操作方法","min-width":"335"},{default:(0,p.w5)((e=>[(0,p.Wm)(tn,{size:"small",onClick:l=>Zi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"warning",onClick:l=>Si(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("检验")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"danger",onClick:l=>Pi(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"success",onClick:l=>Ui(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("刷新")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"primary",onClick:l=>zi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("更换")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"]),(0,p.Wm)(Ju,{class:"pool-button flex-container"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:Nn.value,"onUpdate:modelValue":l[91]||(l[91]=e=>Nn.value=e),filterable:"",clearable:"",placeholder:"请选择批量操作"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Cn,(e=>(0,p.Wm)(Jt,{key:e.buttonPoolValue,label:e.label,value:e.buttonPoolValue},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),(0,p.Wm)(tn,{onClick:l[92]||(l[92]=e=>Ei(Nn.value))},{default:(0,p.w5)((()=>[El])),_:1}),(0,p.Wm)(Qo,{modelValue:hu.value,"onUpdate:modelValue":l[93]||(l[93]=e=>hu.value=e),shape:"round",clearable:"",placeholder:"请输入搜索pool_token名称",onSearch:l[94]||(l[94]=e=>yu(hu.value)),class:"onPoolToken"},null,8,["modelValue"])])),_:1}),Jl])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:kn.value,"onUpdate:modelValue":l[99]||(l[99]=e=>kn.value=e),title:"PandoraNext余额","align-center":"",width:"auto","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Kl,[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Rl,(0,p.Wm)(fu,{modelValue:Iu.value,"onUpdate:modelValue":l[96]||(l[96]=e=>Iu.value=e),name:"PandoraNext用量",label:"PandoraNext用量",placeholder:"PandoraNext用量"},null,8,["modelValue"]),Yl,(0,p.Wm)(fu,{modelValue:gi.value,"onUpdate:modelValue":l[97]||(l[97]=e=>gi.value=e),name:"绑定IP",label:"绑定IP",placeholder:"绑定IP"},null,8,["modelValue"]),Xl,(0,p.Wm)(fu,{modelValue:yi.value,"onUpdate:modelValue":l[98]||(l[98]=e=>yi.value=e),name:"重置时间",label:"重置时间",placeholder:"重置时间"},null,8,["modelValue"]),Gl])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:fn.value,"onUpdate:modelValue":l[107]||(l[107]=e=>fn.value=e),title:"定时刷新&PandoraNext网址","align-center":"","max-width":"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Fl,[(0,p.Wm)(Au,{onSubmit:l[106]||(l[106]=e=>hi())},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Ql,(0,p.Wm)(fu,{name:"switch",label:"是否自动刷新session_token"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:mt.value,"onUpdate:modelValue":l[100]||(l[100]=e=>mt.value=e)},null,8,["modelValue"])])),_:1}),1==mt.value?((0,p.wg)(),(0,p.iD)("div",ea,[la,(0,p.Wm)(fu,{modelValue:ct.value,"onUpdate:modelValue":l[101]||(l[101]=e=>ct.value=e),name:"刷新session的时间",label:"刷新session的时间","input-align":"right",placeholder:"自动刷新session的时间 (天为单位)"},null,8,["modelValue"]),aa,(0,p.Wm)(fu,{modelValue:pt.value,"onUpdate:modelValue":l[102]||(l[102]=e=>pt.value=e),name:"刷新session的个数",label:"刷新session的个数","input-align":"right",placeholder:"自动刷新session的个数 (个)"},null,8,["modelValue"]),oa])):(0,p.kq)("",!0),(0,p.Wm)(fu,{modelValue:vt.value,"onUpdate:modelValue":l[103]||(l[103]=e=>vt.value=e),name:"PandoraNext的公网访问地址",label:"PandoraNext的公网访问地址","input-align":"right",placeholder:"PandoraNext的公网访问地址"},null,8,["modelValue"]),na,(0,p.Wm)(fu,{modelValue:ht.value,"onUpdate:modelValue":l[104]||(l[104]=e=>ht.value=e),name:"oneApi的公网访问地址",label:"oneApi的公网访问地址","input-align":"right",placeholder:"oneApi的公网访问地址"},null,8,["modelValue"]),ta,(0,p.Wm)(fu,{modelValue:_t.value,"onUpdate:modelValue":l[105]||(l[105]=e=>_t.value=e),name:"oneApi的系统令牌",label:"oneApi的系统令牌","input-align":"right",placeholder:"oneApi的系统令牌"},null,8,["modelValue"]),ua])),_:1}),(0,p._)("div",ia,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:bn.value,"onUpdate:modelValue":l[115]||(l[115]=e=>bn.value=e),title:"✨添加pool_token信息","align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",ra,[(0,p.Wm)(Au,{onSubmit:Su},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[sa,(0,p.Wm)(fu,{modelValue:gt.value,"onUpdate:modelValue":l[108]||(l[108]=e=>gt.value=e),name:"为pool_token名",label:"pool_token名","input-align":"right",placeholder:"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字",rules:[{validator:St}]},null,8,["modelValue","rules"]),da,(0,p.Wm)(fu,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:yt.value,"onUpdate:modelValue":l[109]||(l[109]=e=>yt.value=e)},null,8,["modelValue"])])),_:1}),1==yt.value?((0,p.wg)(),(0,p.iD)("div",ma,[ca,(0,p._)("div",pa,[(0,p.Wm)(si,{label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:Tt.value,"onUpdate:modelValue":l[110]||(l[110]=e=>Tt.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Sn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),va])),_:1}),ha,(0,p.Wm)(si,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(di,{modelValue:Ut.value,"onUpdate:modelValue":l[111]||(l[111]=e=>Ut.value=e),type:"textarea",rows:10,placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),_a,(0,p.Wm)(fu,{modelValue:At.value,"onUpdate:modelValue":l[112]||(l[112]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)"},null,8,["modelValue"]),wa,(0,p.Wm)(fu,{"input-align":"right",name:"checkboxGroup",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:ln.value,"onUpdate:modelValue":l[113]||(l[113]=e=>ln.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),ka,(0,p.Wm)(fu,{modelValue:xt.value,"onUpdate:modelValue":l[114]||(l[114]=e=>xt.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right",placeholder:"自定义PandoraNext地址"},null,8,["modelValue"]),fa])):(0,p.kq)("",!0)])),_:1}),(0,p._)("div",ba,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:gn.value,"onUpdate:modelValue":l[116]||(l[116]=e=>gn.value=e),title:"tokensTool登录日志","align-center":"",width:"50%","close-on-click-modal":!1,class:"showLoginDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",ga,[(0,p.Wm)((0,h.SU)(W.eI),{"row-class-name":qu,data:Xt.value},{default:(0,p.w5)((()=>[(0,p.Wm)(nn,{prop:"ipAddress",label:"登录地区","min-width":"180"},{default:(0,p.w5)((e=>[(0,p._)("div",ya,[(0,p._)("span",Va,(0,v.zw)(e.row.ipAddress),1)])])),_:1}),(0,p.Wm)(nn,{label:"登录IP","min-width":"145"},{default:(0,p.w5)((e=>[(0,p._)("div",Wa,[(0,p.Wm)(Pu,{onClick:l=>Li(e.row.poolToken)},{default:(0,p.w5)((()=>[(0,p.Wm)(zu)])),_:2},1032,["onClick"]),(0,p._)("span",Ta,(0,v.zw)(e.row.requestIp),1)])])),_:1}),(0,p.Wm)(nn,{label:"成功/失败","min-width":"105"},{default:(0,p.w5)((e=>[(0,p._)("div",Ua,[(0,p._)("span",xa,(0,v.zw)(e.row.inRequestNumber)+"/"+(0,v.zw)(e.row.outRequestNumber),1)])])),_:1}),(0,p.Wm)(nn,{property:"lastLoginTime",label:"登录时间",prop:"lastLoginTime","min-width":"180"})])),_:1},8,["data"])]),Aa])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:yn.value,"onUpdate:modelValue":l[125]||(l[125]=e=>yn.value=e),title:"📌修改pool_token信息","align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Ha,[(0,p.Wm)(Au,{onSubmit:$u},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[za,(0,p._)("div",Pa,[(0,p.Wm)(si,{label:"poolToken名"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:wt.value,"onUpdate:modelValue":l[117]||(l[117]=e=>wt.value=e),filterable:"",clearable:"",placeholder:"选择你想要的修改的pool_token名称",onChange:Nu,class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Rt.value,(e=>((0,p.wg)(),(0,p.j4)(Jt,{key:e.poolName,label:e.poolName,value:e.poolName,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),Sa,(0,p.Wm)(fu,{modelValue:Ht.value,"onUpdate:modelValue":l[118]||(l[118]=e=>Ht.value=e),type:"textarea",maxlength:"100",autoSize:"",name:"pool_token的值",label:"pool_token的值","input-align":"right",placeholder:"pool_token的值(不改则不变)"},null,8,["modelValue"]),Na,(0,p.Wm)(fu,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:yt.value,"onUpdate:modelValue":l[119]||(l[119]=e=>yt.value=e)},null,8,["modelValue"])])),_:1}),Ca,1==yt.value?((0,p.wg)(),(0,p.iD)("div",Oa,[$a,(0,p._)("div",Ba,[(0,p.Wm)(si,{label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:Wt.value,"onUpdate:modelValue":l[120]||(l[120]=e=>Wt.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Sn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),Ia])),_:1}),Da,(0,p.Wm)(si,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(di,{modelValue:Vt.value,"onUpdate:modelValue":l[121]||(l[121]=e=>Vt.value=e),type:"textarea",rows:10,placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),qa,(0,p.Wm)(fu,{modelValue:At.value,"onUpdate:modelValue":l[122]||(l[122]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),ja,(0,p.Wm)(fu,{"input-align":"right",name:"checkboxGroup",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:en.value,"onUpdate:modelValue":l[123]||(l[123]=e=>en.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),La,(0,p.Wm)(fu,{modelValue:xt.value,"onUpdate:modelValue":l[124]||(l[124]=e=>xt.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right",placeholder:"自定义PandoraNext地址",rules:[{required:!0,message:"请填写自定义PandoraNext地址"}]},null,8,["modelValue"]),Ma])):(0,p.kq)("",!0)])),_:1}),(0,p._)("div",Za,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:Vn.value,"onUpdate:modelValue":l[126]||(l[126]=e=>Vn.value=e),"align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",{ref_key:"chart",ref:Ji,style:{width:"auto",height:"400px"}},null,512)])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:Wn.value,"onUpdate:modelValue":l[130]||(l[130]=e=>Wn.value=e),title:"OneAPI里的share_token列表","align-center":"",width:"78%","close-on-click-modal":!1,class:"shareTokenDialog"},{default:(0,p.w5)((()=>[(0,p.Wm)(Qo,{modelValue:_u.value,"onUpdate:modelValue":l[128]||(l[128]=e=>_u.value=e),"show-action":"",shape:"round",clearable:"",placeholder:"请输入搜索share_token名称",onSearch:l[129]||(l[129]=e=>gu(_u.value)),class:"onShareToken"},{action:(0,p.w5)((()=>[(0,p.Wm)(tn,{icon:e.Plus,onClick:l[127]||(l[127]=e=>Tn.value=!0)},{default:(0,p.w5)((()=>[Ea])),_:1},8,["icon"])])),_:1},8,["modelValue"]),(0,p.Wm)((0,h.SU)(W.eI),{data:Yt.value,"row-class-name":qu},{default:(0,p.w5)((()=>[(0,p.Wm)(nn,{label:"在one_api的名称",prop:"oneApi_name",width:"180"},{default:(0,p.w5)((e=>[(0,p._)("div",Ja,[(0,p._)("span",Ka,(0,v.zw)(e.row.oneApi_name),1)])])),_:1}),(0,p.Wm)(nn,{label:"来源Token名","min-width":"135"},{default:(0,p.w5)((e=>[(0,p._)("div",Ra,[(0,p._)("span",Ya,(0,v.zw)(e.row.token_name),1)])])),_:1}),(0,p.Wm)(nn,{label:"share_token值","min-width":"355"},{default:(0,p.w5)((e=>[(0,p._)("div",Xa,[(0,p.Wm)(Pu,{onClick:l=>Li(e.row.token_value)},{default:(0,p.w5)((()=>[(0,p.Wm)(zu)])),_:2},1032,["onClick"]),(0,p._)("span",Ga,(0,v.zw)(e.row.token_value),1)])])),_:1}),(0,p.Wm)(nn,{property:"shareTime",label:"更新时间",prop:"shareTime","min-width":"170"}),(0,p.Wm)(nn,{label:"操作方法","min-width":"205"},{default:(0,p.w5)((e=>[(0,p.Wm)(tn,{size:"small",onClick:l=>ri(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"primary",onClick:l=>xi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("修改")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"danger",onClick:l=>Ci(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"]),Fa])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:Tn.value,"onUpdate:modelValue":l[138]||(l[138]=e=>Tn.value=e),title:"✨添加share_token进OneAPI","align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p.Wm)(Au,{onSubmit:Bu},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Qa,(0,p.Wm)(fu,{modelValue:iu.value,"onUpdate:modelValue":l[131]||(l[131]=e=>iu.value=e),name:"oneApi中渠道名称",label:"oneApi中渠道名称","input-align":"right",placeholder:"oneApi中渠道名称",rules:[{required:!0,message:"请填写oneApi中渠道名称"}]},null,8,["modelValue"]),eo,(0,p._)("div",lo,[(0,p.Wm)(si,{label:"Token名","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:ru.value,"onUpdate:modelValue":l[132]||(l[132]=e=>ru.value=e),filterable:"",clearable:"",placeholder:"选择你想要的添加的Token名称",onChange:Cu,class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Ou.value,(e=>((0,p.wg)(),(0,p.j4)(Jt,{key:e.name,label:e.name,value:e.name,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),ao,(0,p._)("div",oo,[(0,p.Wm)(si,{label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:du.value,"onUpdate:modelValue":l[133]||(l[133]=e=>du.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Pn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),no])),_:1}),to,(0,p.Wm)(si,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(di,{modelValue:mu.value,"onUpdate:modelValue":l[134]||(l[134]=e=>mu.value=e),type:"textarea",rows:10,placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),uo,(0,p.Wm)(fu,{modelValue:pu.value,"onUpdate:modelValue":l[135]||(l[135]=e=>pu.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),io,(0,p.Wm)(fu,{"input-align":"right",name:"addOneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:cu.value,"onUpdate:modelValue":l[136]||(l[136]=e=>cu.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),ro,(0,p.Wm)(fu,{modelValue:su.value,"onUpdate:modelValue":l[137]||(l[137]=e=>su.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),so])),_:1}),(0,p._)("div",mo,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:Un.value,"onUpdate:modelValue":l[154]||(l[154]=e=>Un.value=e),title:"🔎查看share_token在OneAPI信息","align-center":"",width:"50vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p.Wm)(Au,{onSubmit:e.shareToken},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[co,(0,p.Wm)(fu,{modelValue:Fu.value,"onUpdate:modelValue":l[139]||(l[139]=e=>Fu.value=e),name:"oneApi中渠道名称",label:"oneApi中渠道名称","input-align":"right",placeholder:"oneApi中渠道名称","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[140]||(l[140]=e=>Li(Fu.value)),rules:[{required:!0,message:"请填写oneApi中渠道名称"}]},null,8,["modelValue"]),po,(0,p.Wm)(fu,{modelValue:ei.value,"onUpdate:modelValue":l[141]||(l[141]=e=>ei.value=e),name:"share_token的值",label:"share_token的值","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[142]||(l[142]=e=>Li(ei.value)),placeholder:"share_token的值"},null,8,["modelValue"]),vo,(0,p.Wm)(fu,{modelValue:Qu.value,"onUpdate:modelValue":l[143]||(l[143]=e=>Qu.value=e),name:"share_token的来源",label:"share_token的来源","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[144]||(l[144]=e=>Li(Qu.value)),placeholder:"share_token的值"},null,8,["modelValue"]),ho,(0,p.Wm)(fu,{modelValue:ni.value,"onUpdate:modelValue":l[145]||(l[145]=e=>ni.value=e),name:"加入的模型",label:"加入的模型","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[146]||(l[146]=e=>Li(ni.value)),placeholder:"加入的模型"},null,8,["modelValue"]),(0,p._)("div",_o,[wo,(0,p.Wm)(si,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(di,{modelValue:oi.value,"onUpdate:modelValue":l[147]||(l[147]=e=>oi.value=e),type:"textarea",autosize:"",placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1}),ko]),(0,p.Wm)(fu,{modelValue:At.value,"onUpdate:modelValue":l[148]||(l[148]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[149]||(l[149]=e=>Li(At.value)),placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),fo,(0,p.Wm)(fu,{modelValue:ti.value,"onUpdate:modelValue":l[150]||(l[150]=e=>ti.value=e),name:"加入的组别",label:"加入的组别","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[151]||(l[151]=e=>Li(ti.value)),placeholder:"加入的组别"},null,8,["modelValue"]),bo,(0,p.Wm)(fu,{modelValue:li.value,"onUpdate:modelValue":l[152]||(l[152]=e=>li.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[153]||(l[153]=e=>Li(li.value)),placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),go])),_:1})])),_:1},8,["onSubmit"])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:xn.value,"onUpdate:modelValue":l[161]||(l[161]=e=>xn.value=e),title:"📌修改share_token在OneAPI的信息","align-center":"",width:"50vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",yo,[(0,p.Wm)(Au,{onSubmit:Ai},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Vo,(0,p._)("div",Wo,[(0,p.Wm)(si,{label:"Token名","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:Qu.value,"onUpdate:modelValue":l[155]||(l[155]=e=>Qu.value=e),filterable:"",clearable:"",placeholder:"选择你想要的添加的Token名称",onChange:Cu,class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Ou.value,(e=>((0,p.wg)(),(0,p.j4)(Jt,{key:e.name,label:e.name,value:e.name,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),To,(0,p._)("div",Uo,[(0,p.Wm)(si,{label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:ai.value,"onUpdate:modelValue":l[156]||(l[156]=e=>ai.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Pn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),xo,(0,p.Wm)(si,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(di,{modelValue:oi.value,"onUpdate:modelValue":l[157]||(l[157]=e=>oi.value=e),type:"textarea",rows:10,placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),Ao,Ho,(0,p.Wm)(fu,{modelValue:At.value,"onUpdate:modelValue":l[158]||(l[158]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),zo,(0,p.Wm)(fu,{"input-align":"right",name:"oneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:ui.value,"onUpdate:modelValue":l[159]||(l[159]=e=>ui.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),Po,(0,p.Wm)(fu,{modelValue:li.value,"onUpdate:modelValue":l[160]||(l[160]=e=>li.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),So])),_:1}),(0,p._)("div",No,[(0,p.Wm)(g,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:An.value,"onUpdate:modelValue":l[175]||(l[175]=e=>An.value=e),title:"🔎查看poolToken信息","align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Co,[(0,p.Wm)(Au,null,{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Oo,(0,p.Wm)(fu,{modelValue:kt.value,"onUpdate:modelValue":l[162]||(l[162]=e=>kt.value=e),name:"pool_token名称",label:"pool_token名称",placeholder:"pool_token名称",readonly:!0,"input-align":"right","left-icon":"description-o",onClickLeftIcon:l[163]||(l[163]=e=>Li(kt.value))},null,8,["modelValue"]),$o,(0,p.Wm)(fu,{modelValue:ft.value,"onUpdate:modelValue":l[164]||(l[164]=e=>ft.value=e),label:"使用token名集合",type:"textarea",placeholder:"使用token名集合","left-icon":"description-o",readonly:!0,"input-align":"right",onClickLeftIcon:l[165]||(l[165]=e=>Li($t.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"]),Bo,(0,p.Wm)(fu,{modelValue:Ht.value,"onUpdate:modelValue":l[166]||(l[166]=e=>Ht.value=e),readonly:!0,type:"textarea",maxlength:"100",autoSize:"",name:"pool_token的值",label:"pool_token的值","input-align":"right",placeholder:"pool_token的值(不改则不变)","left-icon":"description-o",onClickLeftIcon:l[167]||(l[167]=e=>Li(Ht.value))},null,8,["modelValue"]),Io,(0,p.Wm)(fu,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:yt.value,"onUpdate:modelValue":l[168]||(l[168]=e=>yt.value=e)},null,8,["modelValue"])])),_:1}),Do,1==yt.value?((0,p.wg)(),(0,p.iD)("div",qo,[jo,(0,p._)("div",Lo,[(0,p.Wm)(si,{disabled:"",label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{disabled:"",modelValue:Wt.value,"onUpdate:modelValue":l[169]||(l[169]=e=>Wt.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Sn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),Mo])),_:1}),Zo,(0,p.Wm)(si,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(di,{modelValue:Vt.value,"onUpdate:modelValue":l[170]||(l[170]=e=>Vt.value=e),type:"textarea",disabled:"",autosize:"",placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),Eo,(0,p.Wm)(fu,{readonly:!0,modelValue:At.value,"onUpdate:modelValue":l[171]||(l[171]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),Jo,(0,p.Wm)(fu,{readonly:!0,"input-align":"right",name:"checkboxGroup",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:en.value,"onUpdate:modelValue":l[172]||(l[172]=e=>en.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),Ko,(0,p.Wm)(fu,{readonly:!0,modelValue:xt.value,"onUpdate:modelValue":l[173]||(l[173]=e=>xt.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right",placeholder:"自定义PandoraNext地址","left-icon":"description-o",onClickLeftIcon:l[174]||(l[174]=e=>Li(xt.value)),rules:[{required:!0,message:"请填写自定义PandoraNext地址"}]},null,8,["modelValue"]),Ro])):(0,p.kq)("",!0)])),_:1})])),_:1})])])),_:1},8,["modelValue"])],64)}}});const en=Qo;var ln=en}}]);
-//# sourceMappingURL=98.13ca7e42.js.map
\ No newline at end of file
+"use strict";(self["webpackChunkPandoraNext_TokensTool"]=self["webpackChunkPandoraNext_TokensTool"]||[]).push([[813],{6521:function(e,l,a){a.r(l),a.d(l,{default:function(){return ln}});var o=a(299),n=(a(8845),a(6773)),t=(a(487),a(2876)),u=(a(492),a(5185)),i=(a(3349),a(5267)),r=(a(1645),a(7630)),d=(a(7034),a(3164)),s=(a(6335),a(157)),m=(a(1897),a(6907)),c=(a(4746),a(294)),p=(a(6870),a(560),a(6252)),v=a(3577),h=a(2262),_=a(1094),w=a(2201),k=a(6154),f=a(844),g=a(1348),b=a(9288),V=a(2534),y=a(3028),W=a(4708),T=a(1893);const U={class:"content"},x=(0,p._)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no"},null,-1),A={class:"home-container"},H=(0,p._)("div",{class:"flex-grow"},null,-1),z=(0,p._)("a",{href:"https://ai.fakeopen.com/auth"},"PandoraNext地址",-1),P=(0,p._)("a",{href:"https://chat.openai.com/api/auth/session"},"OpenAI官网",-1),S=(0,p._)("a",{href:"https://github.com/Yanyutin753/PandoraNext-TokensTool"},"TokensTool地址",-1),N={class:"under"},C={style:{display:"block",transform:"translate(5vw, 2.5vh)"}},O=(0,p._)("div",{class:"flex items-center"},[(0,p._)("span",{class:"font-h4"},"PandoraNext-TokensTool "),(0,p._)("span",{class:"font-h4-tag"},"v0.6.8 ")],-1),$={class:"search"},B={style:{display:"flex",margin:"10px 35px -8px 35px"}},I={style:{display:"flex",transform:"translateX(4vw)",width:"70vw",height:"61vh"}},D={style:{display:"flex","align-items":"center"}},q={style:{"margin-left":"18px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},j={style:{margin:"15px 0px 15px 0px"}},L=(0,p._)("h1",null,"批量操作",-1),M=(0,p._)("h1",null,"全部检查并生成",-1),Z=(0,p._)("br",null,null,-1),E=(0,p._)("br",null,null,-1),J=(0,p._)("br",null,null,-1),K={style:{display:"block"}},R=(0,p._)("br",null,null,-1),Y=(0,p._)("br",null,null,-1),X=(0,p._)("br",null,null,-1),G={key:0},F=(0,p._)("br",null,null,-1),Q={key:1},ee=(0,p._)("br",null,null,-1),le={key:0},ae=(0,p._)("br",null,null,-1),oe=(0,p._)("br",null,null,-1),ne={key:2},te=(0,p._)("br",null,null,-1),ue=(0,p._)("br",null,null,-1),ie=(0,p._)("br",null,null,-1),re={style:{margin:"5.2px"}},de=(0,p._)("br",null,null,-1),se={style:{display:"block"}},me=(0,p._)("br",null,null,-1),ce=(0,p._)("br",null,null,-1),pe=(0,p._)("br",null,null,-1),ve=(0,p._)("br",null,null,-1),he={key:0},_e=(0,p._)("br",null,null,-1),we={key:1},ke=(0,p._)("br",null,null,-1),fe={key:0},ge=(0,p._)("br",null,null,-1),be=(0,p._)("br",null,null,-1),Ve={key:2},ye=(0,p._)("br",null,null,-1),We={key:3},Te=(0,p._)("br",null,null,-1),Ue=(0,p._)("br",null,null,-1),xe={style:{margin:"5.2px"}},Ae=(0,p._)("br",null,null,-1),He={style:{display:"block"}},ze=(0,p._)("br",null,null,-1),Pe=(0,p._)("br",null,null,-1),Se=(0,p._)("br",null,null,-1),Ne=(0,p._)("br",null,null,-1),Ce=(0,p._)("br",null,null,-1),Oe=(0,p._)("br",null,null,-1),$e=(0,p._)("br",null,null,-1),Be=(0,p._)("br",null,null,-1),Ie=(0,p._)("br",null,null,-1),De=(0,p._)("br",null,null,-1),qe={key:0},je=(0,p._)("br",null,null,-1),Le=(0,p._)("br",null,null,-1),Me={key:0},Ze=(0,p._)("br",null,null,-1),Ee={style:{display:"block"}},Je=(0,p._)("br",null,null,-1),Ke=(0,p._)("br",null,null,-1),Re=(0,p._)("br",null,null,-1),Ye=(0,p._)("br",null,null,-1),Xe=(0,p._)("br",null,null,-1),Ge=(0,p._)("br",null,null,-1),Fe={key:0},Qe=(0,p._)("br",null,null,-1),el=(0,p._)("br",null,null,-1),ll=(0,p._)("br",null,null,-1),al=(0,p._)("br",null,null,-1),ol=(0,p._)("br",null,null,-1),nl=(0,p._)("br",null,null,-1),tl=(0,p._)("br",null,null,-1),ul=(0,p._)("br",null,null,-1),il={style:{margin:"5.2px"}},rl=(0,p._)("br",null,null,-1),dl={style:{display:"block"}},sl=(0,p._)("br",null,null,-1),ml=(0,p._)("br",null,null,-1),cl=(0,p._)("br",null,null,-1),pl=(0,p._)("br",null,null,-1),vl=(0,p._)("br",null,null,-1),hl=(0,p._)("br",null,null,-1),_l=(0,p._)("br",null,null,-1),wl=(0,p._)("br",null,null,-1),kl={key:0},fl=(0,p._)("br",null,null,-1),gl=(0,p._)("br",null,null,-1),bl=(0,p._)("br",null,null,-1),Vl={style:{margin:"5.2px"}},yl=(0,p._)("br",null,null,-1),Wl={style:{display:"block"}},Tl=(0,p._)("br",null,null,-1),Ul=(0,p._)("br",null,null,-1),xl=(0,p._)("br",null,null,-1),Al=(0,p._)("br",null,null,-1),Hl=(0,p._)("br",null,null,-1),zl=(0,p._)("br",null,null,-1),Pl=(0,p._)("br",null,null,-1),Sl=(0,p._)("br",null,null,-1),Nl={style:{margin:"5.2px"}},Cl=(0,p._)("br",null,null,-1),Ol={style:{transform:"translate(0vw, -2vh)"}},$l={style:{"margin-left":"15px",display:"flex","align-items":"center"}},Bl={key:0},Il=(0,p._)("h5",null,"oneApi",-1),Dl={key:1},ql=(0,p._)("h5",null,"Json",-1),jl={style:{"margin-left":"25px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Ll={style:{display:"flex","align-items":"center",overflow:"auto"}},Ml={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Zl=(0,p._)("span",{style:{"margin-left":"0px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},"点击此进行查看",-1),El=(0,p._)("h1",null,"批量操作",-1),Jl=(0,p._)("br",null,null,-1),Kl={style:{display:"block"}},Rl=(0,p._)("br",null,null,-1),Yl=(0,p._)("br",null,null,-1),Xl=(0,p._)("br",null,null,-1),Gl=(0,p._)("br",null,null,-1),Fl={style:{display:"block"}},Ql=(0,p._)("br",null,null,-1),ea={key:0},la=(0,p._)("br",null,null,-1),aa=(0,p._)("br",null,null,-1),oa=(0,p._)("br",null,null,-1),na=(0,p._)("br",null,null,-1),ta=(0,p._)("br",null,null,-1),ua=(0,p._)("br",null,null,-1),ia={style:{margin:"5.2px"}},ra={style:{display:"block"}},da=(0,p._)("br",null,null,-1),sa=(0,p._)("br",null,null,-1),ma={key:0},ca=(0,p._)("br",null,null,-1),pa={style:{transform:"translateX(17px)"}},va=(0,p._)("br",null,null,-1),ha=(0,p._)("br",null,null,-1),_a=(0,p._)("br",null,null,-1),wa=(0,p._)("br",null,null,-1),ka=(0,p._)("br",null,null,-1),fa=(0,p._)("br",null,null,-1),ga={style:{margin:"5.2px"}},ba={style:{display:"flex"}},Va={style:{display:"flex","align-items":"center"}},ya={style:{"margin-left":"0px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Wa={style:{display:"flex","align-items":"center",overflow:"auto"}},Ta={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Ua={style:{display:"flex","align-items":"center",overflow:"auto"}},xa={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Aa=(0,p._)("br",null,null,-1),Ha={style:{display:"block"}},za=(0,p._)("br",null,null,-1),Pa={style:{transform:"translateX(17px)"}},Sa=(0,p._)("br",null,null,-1),Na=(0,p._)("br",null,null,-1),Ca=(0,p._)("br",null,null,-1),Oa={key:0},$a=(0,p._)("br",null,null,-1),Ba={style:{transform:"translateX(17px)"}},Ia=(0,p._)("br",null,null,-1),Da=(0,p._)("br",null,null,-1),qa=(0,p._)("br",null,null,-1),ja=(0,p._)("br",null,null,-1),La=(0,p._)("br",null,null,-1),Ma=(0,p._)("br",null,null,-1),Za={style:{margin:"5.2px"}},Ea=(0,p._)("h1",null,"添加share_token到OneAPI",-1),Ja={style:{"margin-left":"15px",display:"flex","align-items":"center"}},Ka={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Ra={style:{display:"flex","align-items":"center",overflow:"auto"}},Ya={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Xa={style:{display:"flex","align-items":"center",overflow:"auto"}},Ga={style:{"margin-left":"10px","text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"}},Fa=(0,p._)("br",null,null,-1),Qa=(0,p._)("br",null,null,-1),eo=(0,p._)("br",null,null,-1),lo={style:{transform:"translateX(17px)"}},ao=(0,p._)("br",null,null,-1),oo={style:{transform:"translateX(17px)"}},no=(0,p._)("br",null,null,-1),to=(0,p._)("br",null,null,-1),uo=(0,p._)("br",null,null,-1),io=(0,p._)("br",null,null,-1),ro=(0,p._)("br",null,null,-1),so=(0,p._)("br",null,null,-1),mo={style:{margin:"5.2px"}},co=(0,p._)("br",null,null,-1),po=(0,p._)("br",null,null,-1),vo=(0,p._)("br",null,null,-1),ho=(0,p._)("br",null,null,-1),_o={style:{transform:"translateX(17px)"}},wo=(0,p._)("br",null,null,-1),ko=(0,p._)("br",null,null,-1),fo=(0,p._)("br",null,null,-1),go=(0,p._)("br",null,null,-1),bo=(0,p._)("br",null,null,-1),Vo={style:{display:"block"}},yo=(0,p._)("br",null,null,-1),Wo={style:{transform:"translateX(17px)"}},To=(0,p._)("br",null,null,-1),Uo={style:{transform:"translateX(17px)"}},xo=(0,p._)("br",null,null,-1),Ao=(0,p._)("br",null,null,-1),Ho=(0,p._)("br",null,null,-1),zo=(0,p._)("br",null,null,-1),Po=(0,p._)("br",null,null,-1),So=(0,p._)("br",null,null,-1),No={style:{margin:"5.2px"}},Co={style:{display:"block"}},Oo=(0,p._)("br",null,null,-1),$o=(0,p._)("br",null,null,-1),Bo=(0,p._)("br",null,null,-1),Io=(0,p._)("br",null,null,-1),Do=(0,p._)("br",null,null,-1),qo={key:0},jo=(0,p._)("br",null,null,-1),Lo={style:{transform:"translateX(17px)"}},Mo=(0,p._)("br",null,null,-1),Zo=(0,p._)("br",null,null,-1),Eo=(0,p._)("br",null,null,-1),Jo=(0,p._)("br",null,null,-1),Ko=(0,p._)("br",null,null,-1),Ro=(0,p._)("br",null,null,-1),Yo='此项可选,用于修改请求体中的模型名称,\n 为一个 JSON 字符串,键为请求中模型名称,\n 值为要替换的模型名称,例如:\n {\n "gpt-3.5-turbo-301":"gpt-3.5-turbo",\n "gpt-4-8314":"gpt-4", \n "gpt-4-32k-8314":"gpt-4-32k",\n }',Xo=0,Go=1,Fo=2;var Qo=(0,p.aZ)({__name:"homeIndex",setup(e){const l=window.location.pathname,a=l.split("/");let Qo="";a.length>=3&&(Qo="/"+a[1]);const en=(0,h.iH)(["default","svip","vip"]),ln=(0,h.iH)(["default","svip","vip"]),an=(0,h.iH)(),on=(0,h.iH)(),nn=(0,h.iH)([]),tn=(0,h.iH)([]),un=e=>{nn.value=e},rn=e=>{tn.value=e},dn=(0,h.iH)("ALL"),sn=(0,w.tv)(),mn=(0,h.iH)(!1),cn=(0,h.iH)(!1),pn=(0,h.iH)(!1),vn=(0,h.iH)(!1),hn=(0,h.iH)(!1),_n=(0,h.iH)(!1),wn=(0,h.iH)(!1),kn=(0,h.iH)(!1),fn=(0,h.iH)(!1),gn=(0,h.iH)(!1),bn=(0,h.iH)(!1),Vn=(0,h.iH)(!1),yn=(0,h.iH)(!1),Wn=(0,h.iH)(!1),Tn=(0,h.iH)(!1),Un=(0,h.iH)(!1),xn=(0,h.iH)(!1),An=(0,h.iH)(!1),Hn=(0,h.iH)(""),zn=[{buttonValue:"选中删除Token",label:"选中删除Token"},{buttonValue:"选中刷新Token",label:"选中刷新Token"},{buttonValue:"选中合成pool_token",label:"选中合成pool_token"},{buttonValue:"选中修改pool_token",label:"选中修改pool_token"}],Pn=((0,h.iH)(""),[{buttonModel:"gpt-3.5-turbo",label:"gpt-3.5-turbo"},{buttonModel:"gpt-4-s",label:"gpt-4-s"},{buttonModel:"gpt-4-mobile",label:"gpt-4-mobile"},{buttonModel:"gpt-4-vision",label:"gpt-4-vision"},{buttonModel:"gpt-4-classic",label:"gpt-4-classic"},{buttonModel:"gpt-4-vision-preview",label:"gpt-4-vision-preview"}]),Sn=[{buttonModel:"gpt-3.5-turbo",label:"gpt-3.5-turbo"},{buttonModel:"gpt-4",label:"gpt-4"}],Nn=(0,h.iH)(""),Cn=[{buttonPoolValue:"选中检查pool_token",label:"选中检查pool_token"},{buttonPoolValue:"选中删除pool_token",label:"选中删除pool_token"},{buttonPoolValue:"选中刷新pool_token",label:"选中刷新pool_token"},{buttonPoolValue:"选中更换pool_token",label:"选中更换pool_token"}],On=(0,h.iH)(""),$n=(0,h.iH)("*"),Bn=(0,h.iH)(""),In=(0,h.iH)(""),Dn=(0,h.iH)(""),qn=(0,h.iH)(!1),jn=(0,h.iH)(!1),Ln=(0,h.iH)(!1),Mn=(0,h.iH)(!1),Zn=(0,h.iH)(""),En=(0,h.iH)(!1),Jn=(0,h.iH)(""),Kn=(0,h.iH)(""),Rn=(0,h.iH)(""),Yn=(0,h.iH)(""),Xn=(0,h.iH)(""),Gn=(0,h.iH)(""),Fn=(0,h.iH)(""),Qn=(0,h.iH)(!1),et=(0,h.iH)(""),lt=(0,h.iH)("PandoraNext"),at=(0,h.iH)("default"),ot=(0,h.iH)(""),nt=(0,h.iH)(""),tt=(0,h.iH)(""),ut=(0,h.iH)(""),it=(0,h.iH)(!1),rt=(0,h.iH)(!1),dt=(0,h.iH)(!1),st=(0,h.iH)(!1),mt=(0,h.iH)(!1),ct=(0,h.iH)(5),pt=(0,h.iH)(1),vt=(0,h.iH)(""),ht=(0,h.iH)(""),_t=(0,h.iH)(""),wt=(0,h.iH)(""),kt=(0,h.iH)(""),ft=(0,h.iH)(""),gt=((0,h.iH)(""),(0,h.iH)("")),bt=((0,h.iH)(!0),(0,h.iH)("")),Vt=(0,h.iH)(!1),yt=(0,h.iH)(""),Wt=(0,h.iH)([]),Tt=(0,h.iH)([]),Ut=(0,h.iH)(""),xt=(0,h.iH)(vt.value+On.value),At=(0,h.iH)(0),Ht=(0,h.iH)(""),zt=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!!l.test(e)||"此项至少要包含8位且必须包含数字和字母"},Pt=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!(!l.test(e)&&""!=e)||"此项至少要包含8位且必须包含数字和字母"},St=e=>{const l=/^[\u4e00-\u9fa5a-zA-Z0-9]{3,10}$/;return!!l.test(e)||"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字"},Nt=e=>{const l=/^(?=.*\d)(?=.*[a-zA-Z]).{8,}$/;return!(1!=nu.value&&1!=Zt.value&&!l.test(e))||"此项至少要包含8位且必须包含数字和字母"},Ct=(0,h.iH)(""),Ot=(0,h.iH)(""),$t=(0,h.iH)(""),Bt=(0,h.iH)(""),It=(0,h.iH)(""),Dt=(0,h.iH)(""),qt=(0,h.iH)(!1),jt=(0,h.iH)(!1),Lt=(0,h.iH)(!1),Mt=(0,h.iH)(""),Zt=(0,h.iH)(!1),Et=(0,h.iH)(!1),Jt=(0,h.iH)(!0),Kt=(0,h.iH)([]),Rt=(0,h.iH)([]),Yt=(0,h.iH)([]),Xt=(0,h.iH)([]),Gt=(0,h.iH)(""),Ft=(0,h.iH)(""),Qt=(0,h.iH)(""),eu=(0,h.iH)(""),lu=(0,h.iH)(!1),au=(0,h.iH)(!1),ou=(0,h.iH)(!1),nu=(0,h.iH)(!1),tu=(0,h.iH)(!1),uu=(0,h.iH)(""),iu=(0,h.iH)(""),ru=(0,h.iH)(""),du=((0,h.iH)(""),(0,h.iH)("")),su=(0,h.iH)([]),mu=(0,h.iH)(""),cu=(0,h.iH)(["default","svip","vip"]),pu=(0,h.iH)(0),vu=((0,h.iH)(.085*window.innerHeight),(0,h.iH)("")),hu=(0,h.iH)(""),_u=(0,h.iH)(""),wu=localStorage.getItem("jwtToken");wu||sn.replace("/");const ku={Authorization:`Bearer ${wu}`},fu=async()=>{k.Z.post(`${Qo}/api/loginToken?token=`+wu).then((e=>{if(0==e.data.code)return console.error(e.data.data),void sn.replace("/")})).catch((e=>{console.error("请求loginToken接口失败",e),sn.replace("/")}))},gu=e=>{"Web"==e||"WEB"==e?Tu(""):"ALL"==e||"All"==e?yu(""):e.includes("API")?Wu(""):yu(e)},bu=e=>{Au(e)},Vu=e=>{xu(e)},yu=async e=>{const l=await k.Z.get(`${Qo}/api/selectToken?name=${e}`,{headers:ku}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession})));Kt.value=e}},Wu=async e=>{const l=await k.Z.get(`${Qo}/api/selectToken?name=${e}`,{headers:ku}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession}))),l=e.filter((e=>!0===e.setPoolToken));Kt.value=l}},Tu=async e=>{const l=await k.Z.get(`${Qo}/api/selectToken?name=${e}`,{headers:ku}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({name:e.name,username:e.username,userPassword:e.userPassword,token:e.token,access_token:e.access_token,share_token:e.share_token,shared:e.shared,auto_shared:e.auto_shared,show_user_info:e.show_user_info,password:e.password,plus:e.plus,setPoolToken:e.setPoolToken,useRefreshToken:e.useRefreshToken,updateTime:e.updateTime,checkSession:e.checkSession}))),l=e.filter((e=>!1===e.setPoolToken));Kt.value=l}},Uu=async()=>{const e=await k.Z.get(`${Qo}/api/selectLogin`,{headers:ku}),l=e.data.data;if(Array.isArray(l)){const e=l.map((e=>({ipAddress:e.ipAddress,requestIp:e.requestIp,outRequestNumber:e.outRequestNumber,inRequestNumber:e.inRequestNumber,lastLoginTime:e.lastLoginTime})));Xt.value=e}},xu=async e=>{const l=await k.Z.get(`${Qo}/api/selectPoolToken?name=${e}`,{headers:ku}),a=l.data.data;if(Array.isArray(a)){const e=a.map((e=>({poolName:e.poolName,poolTime:e.poolTime,poolToken:e.poolToken,shareTokens:e.shareTokens,checkPool:e.checkPool,intoOneApi:e.intoOneApi,poolOneApi_models:e.poolOneApi_models,poolModel_mapping:e.poolModel_mapping,oneApi_pandoraUrl:e.oneApi_pandoraUrl,groupChecked:e.groupChecked,priority:e.priority})));Rt.value=e}},Au=async e=>{const l=y.kN.service({fullscreen:!0}),a=await k.Z.get(`${Qo}/api/selectShareToken?name=${e}`,{headers:ku}),o=a.data.data;if(Array.isArray(o)){const e=o.map((e=>({oneApi_name:e.oneApi_name,token_name:e.token_name,token_value:e.token_value,oneApi_baseUrl:e.oneApi_baseUrl,oneApi_models:e.oneApi_models,model_mapping:e.model_mapping,oneApi_groups:e.oneApi_groups,shareTime:e.shareTime,priority:e.priority})));Yt.value=e}l.close()},Hu=async e=>{const l=await k.Z.get(`${Qo}/api/selectSetting`,{headers:ku}),a=l.data.data;On.value=a.proxy_api_prefix,$n.value=a.isolated_conv_title,Bn.value=a.bing,In.value=a.timeout,Dn.value=a.proxy_url,qn.value=a.public_share,jn.value=a.disable_signup,Ln.value=a.auto_conv_arkose,Mn.value=a.proxy_file_service,Zn.value=a.custom_doh_host,En.value=a.tls.enabled,Jn.value=a.tls.cert_file,Kn.value=a.tls.key_file,Rn.value=a.site_password,Yn.value=a.setup_password,null==a.whitelist?ot.value="null":ot.value=a.whitelist,Xn.value=a.loginUsername,Gn.value=a.loginPassword,Fn.value=a.license_id,Qn.value=a.isGetToken,et.value=a.getTokenPassword,lt.value=a.containerName,at.value=a.autoToken_url,nt.value=a.validation.provider,tt.value=a.validation.site_key,ut.value=a.validation.site_secret,it.value=a.validation.site_login,rt.value=a.validation.setup_login,dt.value=a.validation.oai_username,st.value=a.validation.oai_password,mt.value=a.auto_updateSession,ct.value=a.auto_updateTime,pt.value=a.auto_updateNumber,vt.value=a.pandoraNext_outUrl,vt.value.endsWith("/")?xt.value=vt.value+On.value:xt.value=vt.value+"/"+On.value,ht.value=a.oneAPi_outUrl,_t.value=a.oneAPi_intoToken,zu()},zu=async()=>{"123456"==Gn.value&&"root"==Xn.value&&(f.T.alert("请先修改默认的初始账号和密码,并填写相应的信息,具体可参考网站文档!","温馨提醒",{confirmButtonText:"确定",callback:e=>{(0,g.z8)({type:"info",message:"如果不知道怎么填的话,可以看tokensTool的文档站!"})}}),hn.value=!0,Gn.value="",Xn.value="")},Pu=()=>{const e=nn.value;0!==e.length?gn.value=!0:(0,g.z8)("未选择数据")},Su=async()=>{try{const l=nn.value,a=l.map((e=>e.name)),o=y.kN.service({fullscreen:!0});try{""==Ut.value&&(Ut.value="{}"),JSON.parse(Ut.value)}catch(e){return(0,g.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void o.close()}const n={poolName:bt.value,intoOneApi:Vt.value,poolOneApi_models:Tt.value.toString(),poolModel_mapping:Ut.value,oneApi_pandoraUrl:xt.value,shareTokens:a,groupChecked:ln.value.toString(),priority:At.value},t=await fetch(`${Qo}/api/addPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(n)}),u=await t.json();1===u.code?(bt.value="",xu(""),(0,g.z8)({type:"success",message:u.data}),bt.value="",Vt.value=!1,yt.value="",Wt.value=[],ln.value=["default","svip","vip"],At.value=0):(0,g.z8)({type:"info",message:u.msg}),o.close()}catch(l){(0,g.z8)({type:"info",message:"取消生成pool_token"})}gn.value=!1},Nu=e=>{let l=Rt.value.find((l=>l.poolName===e));null!=l&&(Ht.value=l.poolToken,Vt.value=l.intoOneApi,Wt.value=l.poolOneApi_models.split(","),yt.value=l.poolModel_mapping,xt.value=l.oneApi_pandoraUrl,en.value=l.groupChecked.split(","),At.value=l.priority)},Cu=e=>{Kt.value.find((l=>l.name===e&&!0===l.setPoolToken))},Ou=(0,p.Fl)((()=>Kt.value.filter((e=>!0===e.setPoolToken)))),$u=async()=>{try{const l=y.kN.service({fullscreen:!0});try{""==yt.value&&(yt.value="{}"),JSON.parse(yt.value)}catch(e){return(0,g.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void l.close()}const a=nn.value,o=a.map((e=>e.name)),n={poolName:wt.value,poolToken:Ht.value,intoOneApi:Vt.value,poolOneApi_models:Wt.value.toString(),poolModel_mapping:yt.value,oneApi_pandoraUrl:xt.value,shareTokens:o,groupChecked:en.value.toString(),priority:At.value};console.log(n);const t=await fetch(`${Qo}/api/requirePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(n)}),u=await t.json();1===u.code?(xu(""),(0,g.z8)({type:"success",message:u.data}),wt.value="",Ht.value="",Vt.value=!1,Wt.value=[],yt.value="",ln.value=["default","svip","vip"],At.value=0):(0,g.z8)({type:"info",message:u.msg}),l.close()}catch(l){(0,g.z8)({type:"info",message:"取消修改pool_token"})}Vn.value=!1},Bu=async()=>{const e=y.kN.service({fullscreen:!0});try{try{""==mu.value&&(mu.value="{}"),JSON.parse(mu.value)}catch(l){return(0,g.z8)({type:"error",message:"模型重定向请输入正确的JSON格式"}),void e.close()}const a={oneApi_name:iu.value,token_name:ru.value,oneApi_baseUrl:du.value,oneApi_models:su.value.toString(),model_mapping:mu.value,oneApi_groups:cu.value.toString(),priority:At.value},o=await fetch(`${Qo}/api/addShareToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}),n=await o.json();1===n.code?(Au(""),(0,g.z8)({type:"success",message:n.data}),iu.value="",ru.value="",du.value="",su.value=[],mu.value="",cu.value=["default","svip","vip"],At.value=0):(0,g.z8)({type:"info",message:n.msg})}catch(a){(0,g.z8)({type:"info",message:"取消修改pool_token"})}Tn.value=!1,e.close()},Iu=(0,h.iH)("");(0,p.bv)((async()=>{const e=y.kN.service({fullscreen:!0});fu(),window.innerWidth<=900?sn.replace("/iphone"):sn.replace("/home");try{await Promise.all([gu(vu.value),xu(vu.value),Hu(vu.value)]);const e=await k.Z.get(`${Qo}/api/getPandoraNext`,{headers:ku}),l=e.data.data;null!=l&&(Iu.value=`${l.current}/${l.total}`)}catch(l){console.error("An error occurred:",l)}finally{e.close()}}));const Du=({row:e})=>0==e.checkSession?"warning-row":"",qu=({row:e})=>0==e.checkPool?"warning-row":"",ju=()=>{window.open(vt.value)},Lu=()=>{var e=vt.value;"/"!==e.charAt(e.length-1)&&(e+="/"),window.open(e+"shared.html")},Mu=()=>{var e=vt.value;"/"!==e.charAt(e.length-1)&&(e+="/"),window.open(e+"setup")},Zu=()=>{window.open("https://apifox.com/apidoc/shared-40345b46-9c9c-45cc-b494-6a6a387a978f")},Eu=(0,h.iH)("-1");let Ju="";const Ku=(e,l)=>{console.log("选择准备!")},Ru=()=>{cn.value=!0},Yu=()=>{const e=y.kN.service({fullscreen:!0}),l=new Date,a=`${l.getFullYear()}-${(l.getMonth()+1).toString().padStart(2,"0")}-${l.getDate().toString().padStart(2,"0")} ${l.getHours().toString().padStart(2,"0")}:${l.getMinutes().toString().padStart(2,"0")}:${l.getSeconds().toString().padStart(2,"0")}`;""!=uu.value&&(lu.value=!1,ou.value=!1,au.value=!1),0==nu.value&&(eu.value=Ft.value+","+Qt.value,tu.value=!1,lu.value=!1,ou.value=!1,au.value=!1);let o={name:Gt.value,token:eu.value,username:Ft.value,userPassword:Qt.value,shared:lu.value,auto_shared:lu.value,show_user_info:au.value,plus:ou.value,setPoolToken:nu.value,useRefreshToken:tu.value,password:uu.value,updateTime:a};fetch(`${Qo}/api/addToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(o)}).then((e=>e.json())).then((l=>{1==l.code?(g.z8.success("添加成功!"),Gt.value="",eu.value="",Ft.value="",Qt.value="",lu.value=!1,au.value=!1,ou.value=!1,nu.value=!1,tu.value=!1,uu.value="",""==o.token&&(o.token=l.data,g.z8.success("已为您自动装填token!"))):g.z8.error(l.msg),uu.value="",yu(""),e.close()})).catch((l=>{g.z8.error("获取账号出现问题,请检查刷新网址是否正确!"),e.close()})),cn.value=!1},Xu=(0,h.iH)(null),Gu=async e=>{if(Ct.value=e.name,It.value=e.username,Dt.value=e.userPassword,Ot.value=e.token,$t.value=e.access_token,Bt.value=e.share_token,qt.value=e.shared,jt.value=e.show_user_info,Lt.value=e.plus,Mt.value=e.password,Zt.value=e.setPoolToken,Et.value=e.useRefreshToken,Jt.value=e.checkSession,1!=Zt.value)return void(pn.value=!0);const l={Authorization:`Bearer ${e.access_token}`};if(pn.value=!0,Zt.value){const a=await k.Z.get(`${xt.value}/api/token/info/${e.share_token}`,{headers:l});let o=[],n=[];for(let e in a.data.usage)e.startsWith("range")||(n.push(e),o.push(a.data.usage[e]));0==n.length&&0==o.length&&(n=["gpt-4","gpt-3.5-turbo","gpt-3.5-turbo-0613"],o=[0,0,0]);const t=T.S1(Xu.value),u={title:{text:`今日${a.data.usage["range"]} ${Ct.value}各模型用量`,textStyle:{fontSize:14,color:"#606266"},left:"center",top:"bottom"},tooltip:{},legend:{data:n},xAxis:{data:n},yAxis:{},series:[{name:"对话数量",type:"bar",data:o,barWidth:"25%",itemStyle:{color:function(e){const l=["#3498db","#2ecc71","#f1c40f","#9b59b6","#1abc9c","#e67e22","#ecf0f1","#95a5a6","#34495e","#16a085"];return l[e.dataIndex%l.length]}}}]};t.setOption(u)}},Fu=(0,h.iH)(""),Qu=(0,h.iH)(""),ei=(0,h.iH)(""),li=(0,h.iH)(""),ai=(0,h.iH)([]),oi=(0,h.iH)(""),ni=(0,h.iH)(""),ti=(0,h.iH)(""),ui=(0,h.iH)(["default","svip","vip"]),ii=(0,h.iH)(""),ri=e=>{Fu.value=e.oneApi_name,Qu.value=e.token_name,ei.value=e.token_value,li.value=e.oneApi_baseUrl,ni.value=e.oneApi_models,oi.value=e.model_mapping,ti.value=e.oneApi_groups,At.value=e.priority,ii.value=e.shareTime,Un.value=!0};let di=!1,si=!1,mi="";const ci=(e,l)=>{Ct.value=l.name,It.value=l.username,Dt.value=l.userPassword,Ot.value=l.token,Ju=l.token,qt.value=l.shared,jt.value=l.show_user_info,Lt.value=l.plus,Mt.value=l.password,Zt.value=l.setPoolToken,Et.value=l.useRefreshToken,di=Zt.value,si=Et.value,mi=Ot.value,Jt.value=l.checkSession,$t.value=l.access_token,Bt.value=l.share_token,mn.value=!0},pi=async e=>{0==e?vn.value=!0:1==e?hn.value=!0:2==e&&(_n.value=!0)},vi=e=>{const l=y.kN.service({fullscreen:!0});null!=ot.value&&"null"!=ot.value||(ot.value=""),0==En.value&&(Jn.value="",Kn.value="");const a={enabled:En.value,cert_file:Jn.value,key_file:Kn.value},o={provider:nt.value,site_key:tt.value,site_secret:ut.value,site_login:it.value,setup_login:rt.value,oai_username:dt.value,oai_password:st.value},n={proxy_api_prefix:On.value,isolated_conv_title:$n.value,bing:Bn.value,timeout:In.value,proxy_url:Dn.value,public_share:qn.value,site_password:Rn.value,setup_password:Yn.value,loginUsername:Xn.value,loginPassword:Gn.value,license_id:Fn.value,disable_signup:jn.value,auto_conv_arkose:Ln.value,proxy_file_service:Mn.value,custom_doh_host:Zn.value,isGetToken:Qn.value,getTokenPassword:et.value,containerName:lt.value,autoToken_url:at.value,whitelist:ot.value,validation:o,tls:a};fetch(`${Qo}/api/requireSetting`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(n)}).then((e=>e.json())).then((e=>{1==e.code?g.z8.success(e.data):g.z8.error(e.msg),fu(),l.close()})).catch((e=>{l.close(),console.error("请求requireSetting接口失败",e),g.z8.error("修改失败!")})),0==e?vn.value=!1:1==e?hn.value=!1:2==e&&(_n.value=!1)},hi=()=>{const e=y.kN.service({fullscreen:!0});"/"!==vt.value.charAt(vt.value.length-1)&&(vt.value+="/");const l={auto_updateSession:mt.value,auto_updateTime:ct.value,auto_updateNumber:pt.value,pandoraNext_outUrl:vt.value,oneAPi_outUrl:ht.value,oneAPi_intoToken:_t.value};fetch(`${Qo}/api/controllerTask`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>e.json())).then((l=>{1==l.code?g.z8.success(l.data):g.z8.error(l.msg),e.close()})).catch((l=>{e.close(),console.error("请求controllerTask接口失败",l),g.z8.error("修改失败!")})),fn.value=!1},_i=()=>{const e=y.kN.service({fullscreen:!0});let l="";if(Ju!=Ot.value){const e=new Date;l=`${e.getFullYear()}-${(e.getMonth()+1).toString().padStart(2,"0")}-${e.getDate().toString().padStart(2,"0")} ${e.getHours().toString().padStart(2,"0")}:${e.getMinutes().toString().padStart(2,"0")}:${e.getSeconds().toString().padStart(2,"0")}`}0==Zt.value&&(qt.value=!1,Lt.value=!1,jt.value=!1,Et.value=!1),!0===qt.value?Mt.value="":(Lt.value=!1,jt.value=!1);let a="";a=di!=Zt.value&&mi==Ot.value?0==Zt.value?"您确定要关闭API模型开启web模式,您将无法生成任何的token,但不消耗额度!":1==Et.value?"您确定要开启API模式,并使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!":"您确定要开启API模式,并使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!":si!=Et.value&&mi==Ot.value?1==Et.value?"您确定要切换使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!":"您确定要切换使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!":"修改将要提交,您确定修改好了吗?",f.T.confirm(a,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const l={name:Ct.value,token:Ot.value,username:It.value,userPassword:Dt.value,shared:qt.value,auto_shared:qt.value,show_user_info:jt.value,plus:Lt.value,setPoolToken:Zt.value,useRefreshToken:Et.value,checkSession:Jt.value,password:Mt.value,access_token:$t.value,share_token:Bt.value};fetch(`${Qo}/api/requiredToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>e.json())).then((l=>{1==l.code?(g.z8.success(l.data),yu("")):g.z8.error(l.msg),e.close()})).catch((l=>{e.close(),console.error("请求requireToken接口失败",l),g.z8.error("修改失败!")})),mn.value=!1})).catch((()=>{e.close(),(0,g.z8)({type:"info",message:"编辑取消!"})}))},wi=async()=>{const e=y.kN.service({fullscreen:!0}),l=await k.Z.get(`${Qo}/api/open`,{headers:ku}),a=l.data.data;null!=a&&""!=a?f.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):g.z8.error(l.data.msg),e.close()},ki=async()=>{const e=y.kN.service({fullscreen:!0}),l=await k.Z.get(`${Qo}/api/close`,{headers:ku}),a=l.data.data;null!=a&&""!=a?f.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):g.z8.error(l.data.msg),e.close()},fi=async()=>{const e=y.kN.service({fullscreen:!0}),l=await k.Z.get(`${Qo}/api/restart`,{headers:ku}),a=l.data.data;null!=a&&""!=a?f.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):g.z8.error(l.data.msg),e.close()},gi=async()=>{const e=y.kN.service({fullscreen:!0}),l=await k.Z.get(`${Qo}/api/reload`,{headers:ku}),a=l.data.data;null!=a&&""!=a?f.T.alert(a,"温馨提醒",{confirmButtonText:"OK"}):g.z8.error(l.data.msg),e.close()},bi=(0,h.iH)(""),Vi=(0,h.iH)(""),yi=async()=>{const e=await k.Z.get(`${Qo}/api/getPandoraNext`,{headers:ku}),l=e.data.data;if(null!=l){Iu.value=l.current+"/"+l.total,bi.value=l.ip;var a=new Date;const e=new Date(a.getTime()+1e3*l.ttl);var o=e.getFullYear(),n=e.getMonth()+1,t=e.getDate(),u=e.getHours(),i=e.getMinutes(),r=e.getSeconds();Vi.value=o+"-"+n+"-"+t+" "+u+":"+i+":"+r}kn.value=!0},Wi=async()=>{let e="全部检查并生成可能会加载1-3分钟,请您耐心等待!";f.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((async()=>{const e=y.kN.service({fullscreen:!0,text:"正在加载中,请耐心等待..."}),l=await k.Z.get(`${Qo}/api/updateAllToken`,{headers:ku}),a=l.data.data;null!=a&&""!=a?(await Promise.all([yu(""),xu("")]),f.T.alert(a,"温馨提示",{dangerouslyUseHTMLString:!0})):g.z8.error(l.data.msg),e.close()})).catch((()=>{(0,g.z8)({type:"info",message:"全部检查并生成取消!"})}))},Ti=e=>{if(0==e.setPoolToken)return void g.z8.error("未开启API模式,无法刷新");let l="您确定要刷新session_token吗,刷新session_token消耗100额度,请您要仔细认真考虑哦!";e.useRefreshToken&&(l="您确定要刷新refresh_token吗,刷新refresh_token消耗1000额度,请您要仔细认真考虑哦!"),f.T.confirm(l,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const l=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/updateSessionToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((a=>{null!=a&&""!=a&&(null!=a.data?(e.token=a.data,yu(""),f.T.alert("刷新成功!","温馨提醒",{confirmButtonText:"OK"})):g.z8.error(a.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))})).catch((()=>{(0,g.z8)({type:"info",message:"刷新取消!"})}))},Ui=e=>{const l=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/refreshSimplyPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?(xu(""),f.T.alert("刷新成功!","温馨提醒",{confirmButtonText:"OK"})):g.z8.error(e.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},xi=e=>{Fu.value=e.oneApi_name,Qu.value=e.token_name,ei.value=e.token_value,li.value=e.oneApi_baseUrl,ai.value=e.oneApi_models.split(","),oi.value=e.model_mapping,ui.value=e.oneApi_groups.split(","),At.value=e.priority,ii.value=e.shareTime,xn.value=!0},Ai=()=>{const e=y.kN.service({fullscreen:!0}),l={oneApi_name:Fu.value,token_name:Qu.value,token_value:ei.value,oneApi_baseUrl:li.value,oneApi_models:ai.value.toString(),model_mapping:oi.value,oneApi_groups:ui.value.toString(),priority:At.value};fetch(`${Qo}/api/requireShareToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"}):g.z8.error(l.msg)),Au(""),e.close()})).catch((l=>{e.close(),console.error("Error:",l)})),xn.value=!1},Hi=e=>{if(0==e.setPoolToken)return void g.z8.error("未开启API模式,无法生成");const l=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/updateToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?f.T.alert("生成shareToken成功!","温馨提醒",{confirmButtonText:"OK"}):g.z8.error(e.msg)),yu(""),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},zi=e=>{const l=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/changePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(e)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?(xu(""),f.T.alert("更换pool_token成功!","温馨提醒",{confirmButtonText:"OK"})):g.z8.error(e.msg)),l.close()})).catch((e=>{l.close(),console.error("Error:",e)}))},Pi=(e,l)=>{const a=y.kN.service({fullscreen:!0});f.T.confirm("您确定要删除这个Pool_Token吗,删除之后就找不到咯,请您要仔细认真考虑哦!","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{fetch(`${Qo}/api/deletePoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e.data?(xu(""),g.z8.success(e.data),a.close()):(xu(""),g.z8.error(e.msg),a.close()),gn.value=!1})).catch((e=>{console.error("删除失败",e),xu(""),a.close(),gn.value=!1}))})).catch((()=>{a.close(),(0,g.z8)({type:"info",message:"删除取消!"})}))},Si=(e,l)=>{const a=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/verifySimplyPoolToken`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(l)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((e=>{null!=e&&""!=e&&(null!=e.data?(xu(""),f.T.alert(e.data,"温馨提醒",{confirmButtonText:"OK"})):(xu(""),g.z8.error(e.msg))),a.close()})).catch((e=>{a.close(),console.error("Error:",e)}))},Ni=(e,l)=>{const a=y.kN.service({fullscreen:!0});let o="";f.T.confirm("您确定要删除这个Token吗,删除之后就找不到咯,记得点击全部刷新poolToken","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`${Qo}/api/deleteToken`,l,{headers:ku}).then((async e=>{1==l.setPoolToken&&await k.Z.get(`${Qo}/api/updateAllPoolToken`,{headers:ku}),o=e.data.data,yu(""),(0,g.z8)({type:"success",message:o}),a.close()})).catch((e=>{a.close(),console.error("删除失败",e)}))})).catch((()=>{(0,g.z8)({type:"info",message:"删除取消!"}),a.close()}))},Ci=(e,l)=>{const a=y.kN.service({fullscreen:!0});let o="";f.T.confirm("您确定要删除这个share_Token吗,删除之后就找不到咯","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`${Qo}/api/deleteShareToken`,l,{headers:ku}).then((async e=>{o=e.data.data,Au(""),(0,g.z8)({type:"success",message:o}),a.close()})).catch((e=>{a.close(),console.error("删除失败",e)}))})).catch((()=>{(0,g.z8)({type:"info",message:"删除取消!"}),a.close()}))},Oi=e=>{if(!e)return"";var l=new Date;const a=(0,b.Z)(e.updateTime),o=(0,V.Z)(l,a);return e.token.length>=2e3?o>=80?"已经过去了至少80天":Math.ceil(80-o)+"天":e.token.length<200&&!e.token.includes("fk-")?"永久":o>=10?"已经过去了至少10天":Math.ceil(10-o)+"天"},$i=e=>e.substring(0,30)+"...",Bi=()=>{localStorage.removeItem("jwtToken"),sn.replace("/")},Ii=()=>{wn.value=!0},Di=async()=>{await Au(""),Wn.value=!0},qi=()=>{Uu(),bn.value=!0},ji=()=>{window.open("https://github.com/Yanyutin753/PandoraNext-TokensTool")},Li=e=>{const l=document.createElement("textarea");l.value=e,document.body.appendChild(l),l.select(),document.execCommand("copy"),document.body.removeChild(l),(0,g.z8)({type:"success",message:"复制成功!"})},Mi=e=>{const l=nn.value,a=l.map((e=>e));if(0!==l.length)if("选中删除Token"!=e)if("选中刷新Token"!=e)"选中合成pool_token"==e?Pu():"选中修改pool_token"==e&&(wt.value="",ft.value="",Ht.value="",gt.value="",Vt.value=!1,Wt.value=[],yt.value="",xt.value="",ln.value=[],At.value=0,Vn.value=!0);else{let e=0;const l=nn.value,a=l.map((e=>e));a.forEach(((l,a)=>{l.setPoolToken&&(l.useRefreshToken?e+=1e3:e+=100)}));const o="您确定要花"+e+"积分刷新这"+l.length+"个Token吗,请您要仔细认真考虑哦!";f.T.confirm(o,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/updateSessionTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(yu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):g.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,g.z8)({type:"info",message:"刷新取消!"})}))}else{const e=y.kN.service({fullscreen:!0});let o="";f.T.confirm("您确定要删除这"+l.length+"个Token吗,删除之后就找不到咯","温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{k.Z.put(`${Qo}/api/deleteTokenList`,a,{headers:ku}).then((async l=>{await k.Z.get(`${Qo}/api/updateAllPoolToken`,{headers:ku}),o=l.data.data,yu(""),(0,g.z8)({type:"success",message:o}),e.close()})).catch((l=>{e.close(),console.error("删除失败",l)}))})).catch((()=>{(0,g.z8)({type:"info",message:"删除取消!"}),e.close()}))}else(0,g.z8)("未选择数据")},Zi=e=>{kt.value=e.poolName,ft.value=e.shareTokens,Ht.value=e.poolToken,gt.value=e.poolTime,Vt.value=e.intoOneApi,Wt.value=e.poolOneApi_models.split(","),yt.value=e.poolModel_mapping,xt.value=e.oneApi_pandoraUrl,en.value=e.groupChecked.split(","),At.value=e.priority,An.value=!0},Ei=e=>{const l=tn.value,a=l.map((e=>e));if(0!==a.length)if("选中检查pool_token"!=e)if("选中刷新pool_token"!=e)if("选中更换pool_token"!=e)if("选中删除pool_token"!=e);else{l.length;const e="您确定要删除这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";f.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/deletePoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(xu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):g.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,g.z8)({type:"info",message:"删除取消!"})}))}else{l.length;const e="您确定要更换这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";f.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/changePoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(xu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):g.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,g.z8)({type:"info",message:"更换取消!"})}))}else{const e="您确定要刷新这"+l.length+"个pool_token吗?";f.T.confirm(e,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/refreshSimplyPoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(xu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):g.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,g.z8)({type:"info",message:"刷新取消!"})}))}else{let e=4*l.length;const o="您确定要花"+e+"积分检查这"+l.length+"个pool_token吗,请您要仔细认真考虑哦!";f.T.confirm(o,"温馨提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((()=>{const e=y.kN.service({fullscreen:!0});fetch(`${Qo}/api/verifySimplyPoolTokenList`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${wu}`},body:JSON.stringify(a)}).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return e.json()})).then((l=>{null!=l&&""!=l&&(null!=l.data?(xu(""),f.T.alert(l.data,"温馨提醒",{confirmButtonText:"OK"})):g.z8.error(l.msg)),e.close()})).catch((l=>{e.close(),console.error("Error:",l)}))})).catch((()=>{(0,g.z8)({type:"info",message:"检查取消!"})}))}else(0,g.z8)("未选择数据")},Ji=(0,h.iH)(null),Ki=async()=>{yn.value=!0;const e=await k.Z.get(`${Qo}/api/modelsUsage`,{headers:ku});let l=e.data.data.map((e=>e.usage)),a=e.data.data.map((e=>e.model));const o=T.S1(Ji.value),n={title:{text:"tokensTool每日接口对话统计",fontSize:18,color:"#606266"},tooltip:{},legend:{data:a},xAxis:{data:a},yAxis:{},series:[{name:"对话数量",type:"bar",data:l,barWidth:"25%",itemStyle:{color:function(e){const l=["#e74c3c","#3498db","#2ecc71","#f1c40f","#9b59b6","#1abc9c","#e67e22","#ecf0f1","#95a5a6","#34495e","#16a085"];return l[e.dataIndex%l.length]}}}]};o.setOption(n)};return(e,l)=>{const a=(0,p.up)("el-menu-item"),w=c.JO,k=(0,p.up)("el-sub-menu"),f=(0,p.up)("h10"),g=(0,p.up)("el-menu"),b=m.zx,V=(0,p.up)("el-page-header"),y=(0,p.up)("el-radio-button"),T=(0,p.up)("el-radio-group"),Qo=s.ol,nn=(0,p.up)("el-table-column"),tn=(0,p.up)("el-button"),sn=(0,p.up)("el-tag"),gt=(0,p.up)("el-popover"),Jt=(0,p.up)("el-option"),wu=(0,p.up)("el-select"),ku=(0,p.up)("el-button-group"),fu=d.gN,Uu=r.rs,xu=i.TS,Au=u.l0,Hu=t.Vq,zu=(0,p.up)("CopyDocument"),Pu=(0,p.up)("el-icon"),Ju=(0,p.up)("el-select-group"),ii=(0,p.up)("el-dialog"),di=(0,p.up)("el-form-item"),si=(0,p.up)("el-input"),mi=n.XZ,Ri=o.cO,Yi=(0,p.Q2)("loading");return(0,p.wg)(),(0,p.iD)(p.HY,null,[(0,p._)("div",U,[x,(0,p.Wm)(g,{"default-active":Eu.value,class:"el-menu-demo",mode:"horizontal",ellipsis:!1,onSelect:Ku,"active-text-color":"#0ea27e","text-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Wm)(a,null,{default:(0,p.w5)((()=>[(0,p._)("img",{style:{width:"40px"},src:_,alt:"Element logo",onClick:ji})])),_:1}),(0,p.Wm)(a,{onClick:yi},{title:(0,p.w5)((()=>[(0,p._)("div",A,[(0,p._)("h2",null,(0,v.zw)(Iu.value),1)]),(0,p.Wm)(w,{name:"replay",size:"20"})])),_:1}),H,(0,p.Wm)(a,{index:"1",onClick:Ii},{default:(0,p.w5)((()=>[(0,p.Uk)("pool_token列表")])),_:1}),(0,p.Wm)(a,{index:"2",onClick:Di},{default:(0,p.w5)((()=>[(0,p.Uk)("share_token列表")])),_:1}),(0,p.Wm)(k,{index:"3"},{title:(0,p.w5)((()=>[(0,p.Uk)("跳转Web服务")])),default:(0,p.w5)((()=>[(0,p.Wm)(k,{index:"3-1"},{title:(0,p.w5)((()=>[(0,p.Uk)("跳转PandoraWeb服务")])),default:(0,p.w5)((()=>[(0,p.Wm)(a,{index:"3-1-1",onClick:ju},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(lt.value)+"主页",1)])),_:1}),(0,p.Wm)(a,{index:"3-1-2",onClick:Lu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(lt.value)+"共享页",1)])),_:1}),(0,p.Wm)(a,{index:"3-1-3",onClick:Mu},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(lt.value)+"修改页",1)])),_:1})])),_:1}),(0,p.Wm)(k,{index:"3-2"},{title:(0,p.w5)((()=>[(0,p.Uk)("获取token地址")])),default:(0,p.w5)((()=>[(0,p.Wm)(a,{index:"3-2-1"},{default:(0,p.w5)((()=>[z])),_:1}),(0,p.Wm)(a,{index:"3-2-2"},{default:(0,p.w5)((()=>[P])),_:1}),(0,p.Wm)(a,{index:"3-2-3"},{default:(0,p.w5)((()=>[S])),_:1})])),_:1}),(0,p.Wm)(a,{index:"3-3",onClick:Zu},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool使用说明")])),_:1})])),_:1}),(0,p.Wm)(k,{index:"5"},{title:(0,p.w5)((()=>[(0,p.Uk)("系统设置")])),default:(0,p.w5)((()=>[(0,p.Wm)(a,{index:"5-1",onClick:l[0]||(l[0]=e=>pi(Xo))},{default:(0,p.w5)((()=>[(0,p.Uk)("PandoraNext设置")])),_:1}),(0,p.Wm)(a,{index:"5-2",onClick:l[1]||(l[1]=e=>pi(Go))},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool设置")])),_:1}),(0,p.Wm)(a,{index:"5-3",onClick:l[2]||(l[2]=e=>pi(Fo))},{default:(0,p.w5)((()=>[(0,p.Uk)("验证码信息设置")])),_:1}),(0,p.Wm)(a,{index:"5-3",onClick:l[3]||(l[3]=e=>fn.value=!0)},{default:(0,p.w5)((()=>[(0,p.Uk)("定时&接口设置")])),_:1})])),_:1}),(0,p.Wm)(k,{index:"6"},{title:(0,p.w5)((()=>[(0,p.Uk)("系统功能")])),default:(0,p.w5)((()=>[(0,p.Wm)(k,{index:"6-1"},{title:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(lt.value)+"状态",1)])),default:(0,p.w5)((()=>[(0,p.Wm)(a,{index:"6-1-1",onClick:wi},{default:(0,p.w5)((()=>[(0,p.Uk)("开启"+(0,v.zw)(lt.value),1)])),_:1}),(0,p.Wm)(a,{index:"6-1-2",onClick:ki},{default:(0,p.w5)((()=>[(0,p.Uk)("暂停"+(0,v.zw)(lt.value),1)])),_:1}),(0,p.Wm)(a,{index:"6-1-3",onClick:fi},{default:(0,p.w5)((()=>[(0,p.Uk)("重启"+(0,v.zw)(lt.value),1)])),_:1}),(0,p.Wm)(a,{index:"6-1-4",onClick:gi},{default:(0,p.w5)((()=>[(0,p.Uk)("重载"+(0,v.zw)(lt.value),1)])),_:1})])),_:1}),(0,p.Wm)(a,{index:"6-3",onClick:Ki},{default:(0,p.w5)((()=>[(0,p.Uk)("copilot每日用量统计")])),_:1}),(0,p.Wm)(a,{index:"6-2",onClick:qi},{default:(0,p.w5)((()=>[(0,p.Uk)("tokensTool登录日志")])),_:1}),(0,p.Wm)(a,{index:"6-4",onClick:Bi},{default:(0,p.w5)((()=>[(0,p.Wm)(f,{style:{"font-size":"14px"}},{default:(0,p.w5)((()=>[(0,p.Uk)("退出登录")])),_:1})])),_:1})])),_:1})])),_:1},8,["default-active"]),(0,p._)("div",N,[(0,p._)("div",C,[(0,p.Wm)(V,{icon:null,title:" "},{content:(0,p.w5)((()=>[O])),extra:(0,p.w5)((()=>[(0,p._)("div",{class:"addToken",onClick:Ru},[(0,p.Wm)(b,{square:"",icon:"add-o",color:"#0ea27e",class:"addTokenButton"})])])),_:1})]),(0,p._)("div",$,[(0,p._)("div",B,[(0,p.Wm)(Qo,{modelValue:vu.value,"onUpdate:modelValue":l[8]||(l[8]=e=>vu.value=e),"show-action":"",shape:"round",clearable:"",placeholder:"请输入搜索token名称和类型",onSearch:gu},{action:(0,p.w5)((()=>[(0,p.Wm)(T,{modelValue:dn.value,"onUpdate:modelValue":l[7]||(l[7]=e=>dn.value=e),label:"size control"},{default:(0,p.w5)((()=>[(0,p.Wm)(y,{type:"success",plain:"",label:"WEB",onClick:l[4]||(l[4]=e=>Tu(vu.value))},{default:(0,p.w5)((()=>[(0,p.Uk)("WEB")])),_:1}),(0,p.Wm)(y,{type:"success",plain:"",label:"ALL",onClick:l[5]||(l[5]=e=>yu(vu.value))},{default:(0,p.w5)((()=>[(0,p.Uk)("ALL")])),_:1}),(0,p.Wm)(y,{type:"success",plain:"",label:"API",onClick:l[6]||(l[6]=e=>Wu(vu.value))},{default:(0,p.w5)((()=>[(0,p.Uk)("API")])),_:1})])),_:1},8,["modelValue"])])),_:1},8,["modelValue"])]),(0,p._)("div",I,[(0,p.wy)(((0,p.wg)(),(0,p.j4)((0,h.SU)(W.eI),{data:Kt.value,style:{width:"100%"},onSelectionChange:un,ref_key:"multipleTableRef",ref:an,"default-sort":{prop:"updateTime",prop:"setPoolToken"},"row-class-name":Du},{default:(0,p.w5)((()=>[(0,p.Wm)(nn,{type:"selection",width:"45"}),(0,p.Wm)(nn,{label:"名称",prop:"setPoolToken",sortable:"","min-width":"136"},{default:(0,p.w5)((e=>[(0,p._)("div",D,[(0,p.Wm)(tn,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[(0,p._)("h5",null,(0,v.zw)(e.row.setPoolToken?e.row.useRefreshToken?"refAPI":"sesAPI":"Web"),1)])),_:2},1024),(0,p._)("span",q,(0,v.zw)(e.row.name),1)])])),_:1}),(0,p.Wm)(nn,{label:"账号信息","min-width":"200"},{default:(0,p.w5)((e=>[(0,p.Wm)(gt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p._)("div",null,"账号: "+(0,v.zw)(e.row.username),1),(0,p._)("div",null,"密码: "+(0,v.zw)(e.row.userPassword),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(sn,null,{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(e.row.username),1)])),_:2},1024)])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{label:"Token值","min-width":"270"},{default:(0,p.w5)((e=>[(0,p.Wm)(gt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p._)("div",null,"token: "+(0,v.zw)($i(e.row.token)),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(sn,null,{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)($i(e.row.token)),1)])),_:2},1024)])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{prop:"updateTime",sortable:"",label:"有效时间","min-width":"167"},{default:(0,p.w5)((e=>[(0,p.Wm)(gt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p._)("div",null,"注册时间:"+(0,v.zw)(e.row.updateTime),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(sn,null,{default:(0,p.w5)((()=>[(0,p.Uk)("距离过期还有:"+(0,v.zw)(Oi(e.row)),1)])),_:2},1024)])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{label:"操作方法",width:"335"},{default:(0,p.w5)((e=>[(0,p.Wm)(tn,{size:"small",onClick:l=>ci(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("编辑")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"primary",onClick:l=>Gu(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"danger",onClick:l=>Ni(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"success",onClick:l=>Ti(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("刷新")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"warning",onClick:l=>Hi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("生成")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])),[[Yi,e.loading]])]),(0,p._)("div",j,[(0,p.Wm)(wu,{modelValue:Hn.value,"onUpdate:modelValue":l[9]||(l[9]=e=>Hn.value=e),clearable:"",filterable:"",placeholder:"请选择批量操作",class:"ml-4"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(zn,(e=>(0,p.Wm)(Jt,{key:e.buttonValue,label:e.label,value:e.buttonValue},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),(0,p.Wm)(tn,{class:"ml-4",onClick:l[10]||(l[10]=e=>Mi(Hn.value))},{default:(0,p.w5)((()=>[L])),_:1}),(0,p.Wm)(ku,{class:"my-button"},{default:(0,p.w5)((()=>[(0,p.Wm)(tn,{onClick:Wi},{default:(0,p.w5)((()=>[M])),_:1})])),_:1})])]),Z,E,J])]),(0,p.Wm)(Hu,{show:mn.value,"onUpdate:show":l[21]||(l[21]=e=>mn.value=e),title:"📌修改token信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",K,[(0,p.Wm)(Au,{onSubmit:l[20]||(l[20]=e=>_i())},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[R,(0,p.Wm)(fu,{modelValue:It.value,"onUpdate:modelValue":l[11]||(l[11]=e=>It.value=e),name:"OpenAi邮箱",label:"OpenAi邮箱",placeholder:"OpenAi邮箱",rules:[{required:!0,message:"请填写OpenAi邮箱"}]},null,8,["modelValue"]),Y,(0,p.Wm)(fu,{modelValue:Dt.value,"onUpdate:modelValue":l[12]||(l[12]=e=>Dt.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码",rules:[{required:!0,message:"请填写OpenAi密码"}]},null,8,["modelValue"]),X,(0,p.Wm)(fu,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Zt.value,"onUpdate:modelValue":l[13]||(l[13]=e=>Zt.value=e)},null,8,["modelValue"])])),_:1}),1==Zt.value?((0,p.wg)(),(0,p.iD)("div",G,[F,(0,p.Wm)(fu,{name:"switch",label:"是否使用refreshToken"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Et.value,"onUpdate:modelValue":l[14]||(l[14]=e=>Et.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0),1==Zt.value?((0,p.wg)(),(0,p.iD)("div",Q,[ee,(0,p.Wm)(fu,{name:"switch",label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:qt.value,"onUpdate:modelValue":l[15]||(l[15]=e=>qt.value=e)},null,8,["modelValue"])])),_:1}),1==qt.value?((0,p.wg)(),(0,p.iD)("div",le,[ae,(0,p.Wm)(fu,{name:"switch",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:jt.value,"onUpdate:modelValue":l[16]||(l[16]=e=>jt.value=e)},null,8,["modelValue"])])),_:1}),oe,(0,p.Wm)(fu,{name:"switch",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Lt.value,"onUpdate:modelValue":l[17]||(l[17]=e=>Lt.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0)])):(0,p.kq)("",!0),0==qt.value||0==Zt.value?((0,p.wg)(),(0,p.iD)("div",ne,[te,(0,p.Wm)(fu,{modelValue:Mt.value,"onUpdate:modelValue":l[18]||(l[18]=e=>Mt.value=e),name:"进入Token的密码",label:"进入Token的密码",placeholder:"填了将不会分享给他人!",rules:[{validator:Nt}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),ue,(0,p.Wm)(fu,{modelValue:Ot.value,"onUpdate:modelValue":l[19]||(l[19]=e=>Ot.value=e),label:"Token的值",type:"textarea",maxlength:"5000",placeholder:"请填写OpenAi的Token(选填),session或refresh_token",autosize:{maxHeight:100,minHeight:20},"show-word-limit":""},null,8,["modelValue"]),ie])),_:1}),(0,p._)("div",re,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),de])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:cn.value,"onUpdate:show":l[33]||(l[33]=e=>cn.value=e),title:"✨添加token信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"addTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",se,[(0,p.Wm)(Au,{onSubmit:l[32]||(l[32]=e=>Yu())},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[me,(0,p.Wm)(fu,{modelValue:Gt.value,"onUpdate:modelValue":l[22]||(l[22]=e=>Gt.value=e),name:"Token用户名",label:"Token用户名",placeholder:"Token用户名",rules:[{required:!0,message:"请填写Token用户名"}]},null,8,["modelValue"]),ce,(0,p.Wm)(fu,{modelValue:Ft.value,"onUpdate:modelValue":l[23]||(l[23]=e=>Ft.value=e),name:"OpenAi邮箱",label:"OpenAi邮箱",placeholder:"OpenAi邮箱",rules:[{required:!0,message:"请填写OpenAi邮箱"}]},null,8,["modelValue"]),pe,(0,p.Wm)(fu,{modelValue:Qt.value,"onUpdate:modelValue":l[24]||(l[24]=e=>Qt.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码",rules:[{required:!0,message:"请填写OpenAi密码"}]},null,8,["modelValue"]),ve,(0,p.Wm)(fu,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:nu.value,"onUpdate:modelValue":l[25]||(l[25]=e=>nu.value=e)},null,8,["modelValue"])])),_:1}),1==nu.value?((0,p.wg)(),(0,p.iD)("div",he,[_e,(0,p.Wm)(fu,{name:"switch",label:"是否使用refreshToken"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:tu.value,"onUpdate:modelValue":l[26]||(l[26]=e=>tu.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0),1==nu.value?((0,p.wg)(),(0,p.iD)("div",we,[ke,(0,p.Wm)(fu,{name:"switch",label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:lu.value,"onUpdate:modelValue":l[27]||(l[27]=e=>lu.value=e)},null,8,["modelValue"])])),_:1}),1==lu.value?((0,p.wg)(),(0,p.iD)("div",fe,[ge,(0,p.Wm)(fu,{name:"switch",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:au.value,"onUpdate:modelValue":l[28]||(l[28]=e=>au.value=e)},null,8,["modelValue"])])),_:1}),be,(0,p.Wm)(fu,{name:"switch",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:ou.value,"onUpdate:modelValue":l[29]||(l[29]=e=>ou.value=e)},null,8,["modelValue"])])),_:1})])):(0,p.kq)("",!0)])):(0,p.kq)("",!0),""==lu.value?((0,p.wg)(),(0,p.iD)("div",Ve,[ye,(0,p.Wm)(fu,{modelValue:uu.value,"onUpdate:modelValue":l[30]||(l[30]=e=>uu.value=e),name:"进入Token的密码",label:"进入Token的密码",placeholder:"填了将不会分享给他人!",rules:[{validator:Nt}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),1==nu.value?((0,p.wg)(),(0,p.iD)("div",We,[Te,(0,p.Wm)(fu,{rows:"3",type:"textarea",maxlength:"5000","show-word-limit":"",modelValue:eu.value,"onUpdate:modelValue":l[31]||(l[31]=e=>eu.value=e),name:"Token的值",label:"Token的值",placeholder:"选填(可不填,不填则使用账号密码),目前只支持session_token或refresh_token"},null,8,["modelValue"])])):(0,p.kq)("",!0),Ue])),_:1}),(0,p._)("div",xe,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Ae])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:pn.value,"onUpdate:show":l[53]||(l[53]=e=>pn.value=e),title:"🔎token信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"showDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",He,[(0,p.Wm)(Au,null,{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[ze,(0,p.Wm)(fu,{modelValue:Ct.value,"onUpdate:modelValue":l[34]||(l[34]=e=>Ct.value=e),name:"Token用户名",label:"Token用户名",placeholder:"Token用户名","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[35]||(l[35]=e=>Li(Ct.value))},null,8,["modelValue"]),Pe,(0,p.Wm)(fu,{modelValue:Mt.value,"onUpdate:modelValue":l[36]||(l[36]=e=>Mt.value=e),type:"temPassword",name:"进入Token的密码",label:"进入Token的密码",placeholder:"填了将不会分享给他人(如不填则输入Token名即可进入)!","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[37]||(l[37]=e=>Li(Mt.value))},null,8,["modelValue"]),Se,(0,p.Wm)(fu,{modelValue:It.value,"onUpdate:modelValue":l[38]||(l[38]=e=>It.value=e),name:"OpenAi用户名",label:"OpenAi用户名",placeholder:"OpenAi用户名","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[39]||(l[39]=e=>Li(It.value))},null,8,["modelValue"]),Ne,(0,p.Wm)(fu,{modelValue:Dt.value,"onUpdate:modelValue":l[40]||(l[40]=e=>Dt.value=e),name:"OpenAi密码",label:"OpenAi密码",placeholder:"OpenAi密码","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[41]||(l[41]=e=>Li(Dt.value))},null,8,["modelValue"]),Ce,(0,p.Wm)(fu,{name:"temShared",readonly:!0,label:"是否出现分享页面"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:qt.value,"onUpdate:modelValue":l[42]||(l[42]=e=>qt.value=e)},null,8,["modelValue"])])),_:1}),Oe,(0,p.Wm)(fu,{readonly:!0,name:"temShow_user_info",label:"是否分享账号信息"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:jt.value,"onUpdate:modelValue":l[43]||(l[43]=e=>jt.value=e)},null,8,["modelValue"])])),_:1}),$e,(0,p.Wm)(fu,{readonly:!0,name:"temPlus",label:"是否显示金光"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:Lt.value,"onUpdate:modelValue":l[44]||(l[44]=e=>Lt.value=e)},null,8,["modelValue"])])),_:1}),Be,(0,p.Wm)(fu,{name:"switch",label:"是否开启API模式"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:Zt.value,"onUpdate:modelValue":l[45]||(l[45]=e=>Zt.value=e)},null,8,["modelValue"])])),_:1}),Ie,(0,p.Wm)(fu,{name:"switch",label:"是否使用refresh_token"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{disabled:"","active-color":"#0ea27e",modelValue:Et.value,"onUpdate:modelValue":l[46]||(l[46]=e=>Et.value=e)},null,8,["modelValue"])])),_:1}),De,(0,p.Wm)(fu,{modelValue:Ot.value,"onUpdate:modelValue":l[47]||(l[47]=e=>Ot.value=e),label:"Token的值",type:"textarea",maxlength:"5000",placeholder:"请填写OpenAi的Token(session或refresh_token)","show-word-limit":"","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[48]||(l[48]=e=>Li(Ot.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"]),1==Zt.value?((0,p.wg)(),(0,p.iD)("div",qe,[je,(0,p.Wm)(fu,{modelValue:$t.value,"onUpdate:modelValue":l[49]||(l[49]=e=>$t.value=e),label:"access_token",type:"textarea",maxlength:"5000",placeholder:"请填写OpenAi的access_token","show-word-limit":"","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[50]||(l[50]=e=>Li($t.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"]),Le,(0,p.Wm)(fu,{modelValue:Bt.value,"onUpdate:modelValue":l[51]||(l[51]=e=>Bt.value=e),label:"share_token",type:"textarea",maxlength:"200",placeholder:"请填写OpenAi的share_token","show-word-limit":"","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[52]||(l[52]=e=>Li(Bt.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"])])):(0,p.kq)("",!0)])),_:1})])),_:1}),1==Zt.value?((0,p.wg)(),(0,p.iD)("div",Me,[(0,p._)("div",{ref_key:"chart_show",ref:Xu,style:{width:"auto",height:"300px"}},null,512),Ze])):(0,p.kq)("",!0)])])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:vn.value,"onUpdate:show":l[68]||(l[68]=e=>vn.value=e),title:"PandoraNext设置信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requirePandora"},{default:(0,p.w5)((()=>[(0,p._)("div",Ee,[(0,p.Wm)(Au,{onSubmit:l[67]||(l[67]=e=>vi(Xo))},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Je,(0,p.Wm)(fu,{modelValue:$n.value,"onUpdate:modelValue":l[54]||(l[54]=e=>$n.value=e),name:"对话标题",label:"对话标题",placeholder:"隔离对话设置标题"},null,8,["modelValue"]),Ke,(0,p.Wm)(fu,{modelValue:Bn.value,"onUpdate:modelValue":l[55]||(l[55]=e=>Bn.value=e),name:"绑定IP和端口",label:"绑定IP和端口",placeholder:"绑定IP和端口(选填)"},null,8,["modelValue"]),Re,(0,p.Wm)(fu,{modelValue:Zn.value,"onUpdate:modelValue":l[56]||(l[56]=e=>Zn.value=e),name:"DoH主机名",label:"DoH主机名",placeholder:"配置自定义的DoH主机名(选填)"},null,8,["modelValue"]),Ye,(0,p.Wm)(fu,{modelValue:In.value,"onUpdate:modelValue":l[57]||(l[57]=e=>In.value=e),name:"请求超时时间",label:"请求超时时间",placeholder:"请求超时时间(选填)"},null,8,["modelValue"]),Xe,(0,p.Wm)(fu,{name:"switch",label:"是否分享对话(选填)"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:qn.value,"onUpdate:modelValue":l[58]||(l[58]=e=>qn.value=e)},null,8,["modelValue"])])),_:1}),Ge,(0,p.Wm)(fu,{name:"switch",label:"是否配置证书"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:En.value,"onUpdate:modelValue":l[59]||(l[59]=e=>En.value=e)},null,8,["modelValue"])])),_:1}),1==En.value?((0,p.wg)(),(0,p.iD)("div",Fe,[Qe,(0,p.Wm)(fu,{modelValue:Jn.value,"onUpdate:modelValue":l[60]||(l[60]=e=>Jn.value=e),name:"证书文件",label:"证书文件",placeholder:"证书文件"},null,8,["modelValue"]),el,(0,p.Wm)(fu,{modelValue:Kn.value,"onUpdate:modelValue":l[61]||(l[61]=e=>Kn.value=e),name:"密钥文件",label:"密钥文件",placeholder:"密钥文件"},null,8,["modelValue"])])):(0,p.kq)("",!0),ll,(0,p.Wm)(fu,{name:"switch",label:"是否禁用注册"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:jn.value,"onUpdate:modelValue":l[62]||(l[62]=e=>jn.value=e)},null,8,["modelValue"])])),_:1}),al,(0,p.Wm)(fu,{name:"switch",label:"是否自动打码"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Ln.value,"onUpdate:modelValue":l[63]||(l[63]=e=>Ln.value=e)},null,8,["modelValue"])])),_:1}),ol,(0,p.Wm)(fu,{name:"switch",label:"使用文件代理服务"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Mn.value,"onUpdate:modelValue":l[64]||(l[64]=e=>Mn.value=e)},null,8,["modelValue"])])),_:1}),nl,(0,p.Wm)(fu,{modelValue:Dn.value,"onUpdate:modelValue":l[65]||(l[65]=e=>Dn.value=e),name:"代理服务URL",label:"代理服务URL",placeholder:"代理服务URL(选填)"},null,8,["modelValue"]),tl,(0,p.Wm)(fu,{modelValue:ot.value,"onUpdate:modelValue":l[66]||(l[66]=e=>ot.value=e),name:"白名单",label:"白名单",placeholder:"[]限制所有账号(默认为null)"},null,8,["modelValue"]),ul])),_:1}),(0,p._)("div",il,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),rl])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:hn.value,"onUpdate:show":l[80]||(l[80]=e=>hn.value=e),title:"tokensTool设置信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"requireSettingDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",dl,[(0,p.Wm)(Au,{onSubmit:l[79]||(l[79]=e=>vi(Go))},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[sl,(0,p.Wm)(fu,{modelValue:Xn.value,"onUpdate:modelValue":l[69]||(l[69]=e=>Xn.value=e),name:"登录用户名",label:"登录用户名",placeholder:"tokensTool用户名"},null,8,["modelValue"]),ml,(0,p.Wm)(fu,{modelValue:Gn.value,"onUpdate:modelValue":l[70]||(l[70]=e=>Gn.value=e),name:"登录密码",label:"登录密码",placeholder:"不少于8位,且同时包含数字和字母",rules:[{validator:zt}]},null,8,["modelValue","rules"]),cl,(0,p.Wm)(fu,{modelValue:On.value,"onUpdate:modelValue":l[71]||(l[71]=e=>On.value=e),name:"proxy接口前缀",label:"proxy接口前缀",placeholder:"proxy模式接口后缀,不少于8位,且同时包含数字和字母",rules:[{validator:zt}]},null,8,["modelValue","rules"]),pl,(0,p.Wm)(fu,{modelValue:at.value,"onUpdate:modelValue":l[72]||(l[72]=e=>at.value=e),name:"proxy模式URL",label:"proxy模式URL",placeholder:"http(s)://(ip:port或者域名)/后缀,同公网服务器填default"},null,8,["modelValue"]),vl,(0,p.Wm)(fu,{modelValue:Yn.value,"onUpdate:modelValue":l[73]||(l[73]=e=>Yn.value=e),name:"重载服务密码",label:"重载服务密码",placeholder:"PandoraNext重载服务密码,不少于8位,且同时包含数字和字母",rules:[{validator:zt}]},null,8,["modelValue","rules"]),hl,(0,p.Wm)(fu,{modelValue:Rn.value,"onUpdate:modelValue":l[74]||(l[74]=e=>Rn.value=e),name:"访问密码",label:"访问密码",placeholder:"PandoraNext访问密码,建议开启访问密码",rules:[{validator:Pt}]},null,8,["modelValue","rules"]),_l,(0,p.Wm)(fu,{modelValue:Fn.value,"onUpdate:modelValue":l[75]||(l[75]=e=>Fn.value=e),name:"验证licenseId",label:"验证licenseId",placeholder:"验证licenseId(github上拿到的license_id)"},null,8,["modelValue"]),wl,(0,p.Wm)(fu,{name:"switch",label:"tokensTool接口"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Qn.value,"onUpdate:modelValue":l[76]||(l[76]=e=>Qn.value=e)},null,8,["modelValue"])])),_:1}),1==Qn.value?((0,p.wg)(),(0,p.iD)("div",kl,[fl,(0,p.Wm)(fu,{modelValue:et.value,"onUpdate:modelValue":l[77]||(l[77]=e=>et.value=e),name:"接口密码",label:"接口密码",placeholder:"tokensTool接口密码,用于获取tokens,不少于8位,且同时包含数字和字母",rules:[{validator:zt}]},null,8,["modelValue","rules"])])):(0,p.kq)("",!0),gl,(0,p.Wm)(fu,{modelValue:lt.value,"onUpdate:modelValue":l[78]||(l[78]=e=>lt.value=e),name:"监管容器名",label:"监管容器名",placeholder:"监管运行的容器名或文件名,默认为PandoraNext",rules:[{required:!0,message:"请填写监管的容器名"}]},null,8,["modelValue"]),bl])),_:1}),(0,p._)("div",Vl,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),yl])),_:1},8,["show"]),(0,p.Wm)(Hu,{show:_n.value,"onUpdate:show":l[89]||(l[89]=e=>_n.value=e),title:"PandoraNext验证信息",width:"50vw","close-on-click-overlay":!0,"show-cancel-button":!1,"show-confirm-button":!1,class:"verify"},{default:(0,p.w5)((()=>[(0,p._)("div",Wl,[(0,p.Wm)(Au,{onSubmit:l[88]||(l[88]=e=>vi(Fo))},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Tl,(0,p.Wm)(fu,{modelValue:nt.value,"onUpdate:modelValue":l[81]||(l[81]=e=>nt.value=e),name:"验证码提供商",label:"验证码提供商",placeholder:"验证码提供商"},null,8,["modelValue"]),Ul,(0,p.Wm)(fu,{modelValue:tt.value,"onUpdate:modelValue":l[82]||(l[82]=e=>tt.value=e),name:"验证码网站参数",label:"验证码网站参数",placeholder:"验证码网站参数"},null,8,["modelValue"]),xl,(0,p.Wm)(fu,{modelValue:ut.value,"onUpdate:modelValue":l[83]||(l[83]=e=>ut.value=e),name:"验证码API Key",label:"验证码API Key",placeholder:"验证码API Key"},null,8,["modelValue"]),Al,(0,p.Wm)(fu,{name:"switch",label:"是否全站密码登录页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:it.value,"onUpdate:modelValue":l[84]||(l[84]=e=>it.value=e)},null,8,["modelValue"])])),_:1}),Hl,(0,p.Wm)(fu,{name:"switch",label:"是否在设置登录页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:rt.value,"onUpdate:modelValue":l[85]||(l[85]=e=>rt.value=e)},null,8,["modelValue"])])),_:1}),zl,(0,p.Wm)(fu,{name:"switch",label:"是否在输入用户名页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:dt.value,"onUpdate:modelValue":l[86]||(l[86]=e=>dt.value=e)},null,8,["modelValue"])])),_:1}),Pl,(0,p.Wm)(fu,{name:"switch",label:"是否在输入密码页面显示"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:st.value,"onUpdate:modelValue":l[87]||(l[87]=e=>st.value=e)},null,8,["modelValue"])])),_:1}),Sl])),_:1}),(0,p._)("div",Nl,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})]),Cl])),_:1},8,["show"]),(0,p.Wm)(ii,{modelValue:wn.value,"onUpdate:modelValue":l[95]||(l[95]=e=>wn.value=e),title:"pool_token列表","align-center":"",width:"78%","close-on-click-modal":!1,class:"shareTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Ol,[(0,p.Wm)(Pu,{onClick:l[90]||(l[90]=e=>Li(vt.value+On.value+"/v1/chat/completions"))},{default:(0,p.w5)((()=>[(0,p.Wm)(zu)])),_:1}),(0,p.Wm)(f,null,{default:(0,p.w5)((()=>[(0,p.Uk)("API地址:"+(0,v.zw)(vt.value)+(0,v.zw)(On.value)+"/v1/chat/completions",1)])),_:1})]),(0,p.Wm)((0,h.SU)(W.eI),{data:Rt.value,"default-sort":{prop:"poolTime",prop:"intoOneApi"},onSelectionChange:rn,ref_key:"multipleTableRefPool",ref:on,"row-class-name":qu,class:"poolDateTable"},{default:(0,p.w5)((()=>[(0,p.Wm)(nn,{type:"selection",width:"45"}),(0,p.Wm)(nn,{label:"pool_token名称",prop:"intoOneApi",sortable:"","min-width":"170"},{default:(0,p.w5)((e=>[(0,p.Wm)(gt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{reference:(0,p.w5)((()=>[(0,p._)("div",$l,[1==e.row.intoOneApi?((0,p.wg)(),(0,p.iD)("div",Bl,[(0,p.Wm)(tn,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[Il])),_:1})])):((0,p.wg)(),(0,p.iD)("div",Dl,[(0,p.Wm)(tn,{size:"small",color:"#f4fffd",circle:""},{default:(0,p.w5)((()=>[ql])),_:1})])),(0,p._)("span",jl,(0,v.zw)(e.row.poolName),1)])])),default:(0,p.w5)((()=>[(0,p.Wm)(sn,null,{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(e.row.poolOneApi_models),1)])),_:2},1024)])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{label:"pool_token值","min-width":"325"},{default:(0,p.w5)((e=>[(0,p._)("div",Ll,[(0,p.Wm)(Pu,{onClick:l=>Li(e.row.poolToken)},{default:(0,p.w5)((()=>[(0,p.Wm)(zu)])),_:2},1032,["onClick"]),(0,p._)("span",Ml,(0,v.zw)(e.row.poolToken),1)])])),_:1}),(0,p.Wm)(nn,{label:"使用token名集合","min-width":"165"},{default:(0,p.w5)((e=>[(0,p.Wm)(gt,{effect:"light",trigger:"hover",placement:"top",width:"auto"},{default:(0,p.w5)((()=>[(0,p.Uk)((0,v.zw)(e.row.shareTokens),1)])),reference:(0,p.w5)((()=>[(0,p.Wm)(sn,null,{default:(0,p.w5)((()=>[Zl])),_:1})])),_:2},1024)])),_:1}),(0,p.Wm)(nn,{property:"poolTime",label:"更新时间",prop:"poolTime",sortable:"","min-width":"170"}),(0,p.Wm)(nn,{label:"操作方法","min-width":"335"},{default:(0,p.w5)((e=>[(0,p.Wm)(tn,{size:"small",onClick:l=>Zi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"warning",onClick:l=>Si(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("检验")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"danger",onClick:l=>Pi(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"success",onClick:l=>Ui(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("刷新")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"primary",onClick:l=>zi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("更换")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"]),(0,p.Wm)(Ju,{class:"pool-button flex-container"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:Nn.value,"onUpdate:modelValue":l[91]||(l[91]=e=>Nn.value=e),filterable:"",clearable:"",placeholder:"请选择批量操作"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Cn,(e=>(0,p.Wm)(Jt,{key:e.buttonPoolValue,label:e.label,value:e.buttonPoolValue},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),(0,p.Wm)(tn,{onClick:l[92]||(l[92]=e=>Ei(Nn.value))},{default:(0,p.w5)((()=>[El])),_:1}),(0,p.Wm)(Qo,{modelValue:hu.value,"onUpdate:modelValue":l[93]||(l[93]=e=>hu.value=e),shape:"round",clearable:"",placeholder:"请输入搜索pool_token名称",onSearch:l[94]||(l[94]=e=>Vu(hu.value)),class:"onPoolToken"},null,8,["modelValue"])])),_:1}),Jl])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:kn.value,"onUpdate:modelValue":l[99]||(l[99]=e=>kn.value=e),title:"PandoraNext余额","align-center":"",width:"auto","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Kl,[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Rl,(0,p.Wm)(fu,{modelValue:Iu.value,"onUpdate:modelValue":l[96]||(l[96]=e=>Iu.value=e),name:"PandoraNext用量",label:"PandoraNext用量",placeholder:"PandoraNext用量"},null,8,["modelValue"]),Yl,(0,p.Wm)(fu,{modelValue:bi.value,"onUpdate:modelValue":l[97]||(l[97]=e=>bi.value=e),name:"绑定IP",label:"绑定IP",placeholder:"绑定IP"},null,8,["modelValue"]),Xl,(0,p.Wm)(fu,{modelValue:Vi.value,"onUpdate:modelValue":l[98]||(l[98]=e=>Vi.value=e),name:"重置时间",label:"重置时间",placeholder:"重置时间"},null,8,["modelValue"]),Gl])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:fn.value,"onUpdate:modelValue":l[107]||(l[107]=e=>fn.value=e),title:"定时刷新&PandoraNext网址","align-center":"","max-width":"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Fl,[(0,p.Wm)(Au,{onSubmit:l[106]||(l[106]=e=>hi())},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Ql,(0,p.Wm)(fu,{name:"switch",label:"是否自动刷新session_token"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:mt.value,"onUpdate:modelValue":l[100]||(l[100]=e=>mt.value=e)},null,8,["modelValue"])])),_:1}),1==mt.value?((0,p.wg)(),(0,p.iD)("div",ea,[la,(0,p.Wm)(fu,{modelValue:ct.value,"onUpdate:modelValue":l[101]||(l[101]=e=>ct.value=e),name:"刷新session的时间",label:"刷新session的时间","input-align":"right",placeholder:"自动刷新session的时间 (天为单位)"},null,8,["modelValue"]),aa,(0,p.Wm)(fu,{modelValue:pt.value,"onUpdate:modelValue":l[102]||(l[102]=e=>pt.value=e),name:"刷新session的个数",label:"刷新session的个数","input-align":"right",placeholder:"自动刷新session的个数 (个)"},null,8,["modelValue"]),oa])):(0,p.kq)("",!0),(0,p.Wm)(fu,{modelValue:vt.value,"onUpdate:modelValue":l[103]||(l[103]=e=>vt.value=e),name:"PandoraNext的公网访问地址",label:"PandoraNext的公网访问地址","input-align":"right",placeholder:"PandoraNext的公网访问地址"},null,8,["modelValue"]),na,(0,p.Wm)(fu,{modelValue:ht.value,"onUpdate:modelValue":l[104]||(l[104]=e=>ht.value=e),name:"oneApi的公网访问地址",label:"oneApi的公网访问地址","input-align":"right",placeholder:"oneApi的公网访问地址"},null,8,["modelValue"]),ta,(0,p.Wm)(fu,{modelValue:_t.value,"onUpdate:modelValue":l[105]||(l[105]=e=>_t.value=e),name:"oneApi的系统令牌",label:"oneApi的系统令牌","input-align":"right",placeholder:"oneApi的系统令牌"},null,8,["modelValue"]),ua])),_:1}),(0,p._)("div",ia,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:gn.value,"onUpdate:modelValue":l[115]||(l[115]=e=>gn.value=e),title:"✨添加pool_token信息","align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",ra,[(0,p.Wm)(Au,{onSubmit:Su},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[da,(0,p.Wm)(fu,{modelValue:bt.value,"onUpdate:modelValue":l[108]||(l[108]=e=>bt.value=e),name:"为pool_token名",label:"pool_token名","input-align":"right",placeholder:"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字",rules:[{validator:St}]},null,8,["modelValue","rules"]),sa,(0,p.Wm)(fu,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Vt.value,"onUpdate:modelValue":l[109]||(l[109]=e=>Vt.value=e)},null,8,["modelValue"])])),_:1}),1==Vt.value?((0,p.wg)(),(0,p.iD)("div",ma,[ca,(0,p._)("div",pa,[(0,p.Wm)(di,{label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:Tt.value,"onUpdate:modelValue":l[110]||(l[110]=e=>Tt.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Sn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),va])),_:1}),ha,(0,p.Wm)(di,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(si,{modelValue:Ut.value,"onUpdate:modelValue":l[111]||(l[111]=e=>Ut.value=e),type:"textarea",rows:10,placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),_a,(0,p.Wm)(fu,{modelValue:At.value,"onUpdate:modelValue":l[112]||(l[112]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)"},null,8,["modelValue"]),wa,(0,p.Wm)(fu,{"input-align":"right",name:"checkboxGroup",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:ln.value,"onUpdate:modelValue":l[113]||(l[113]=e=>ln.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),ka,(0,p.Wm)(fu,{modelValue:xt.value,"onUpdate:modelValue":l[114]||(l[114]=e=>xt.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right",placeholder:"自定义PandoraNext地址"},null,8,["modelValue"]),fa])):(0,p.kq)("",!0)])),_:1}),(0,p._)("div",ga,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:bn.value,"onUpdate:modelValue":l[116]||(l[116]=e=>bn.value=e),title:"tokensTool登录日志","align-center":"",width:"50%","close-on-click-modal":!1,class:"showLoginDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",ba,[(0,p.Wm)((0,h.SU)(W.eI),{"row-class-name":qu,data:Xt.value},{default:(0,p.w5)((()=>[(0,p.Wm)(nn,{prop:"ipAddress",label:"登录地区","min-width":"180"},{default:(0,p.w5)((e=>[(0,p._)("div",Va,[(0,p._)("span",ya,(0,v.zw)(e.row.ipAddress),1)])])),_:1}),(0,p.Wm)(nn,{label:"登录IP","min-width":"145"},{default:(0,p.w5)((e=>[(0,p._)("div",Wa,[(0,p.Wm)(Pu,{onClick:l=>Li(e.row.poolToken)},{default:(0,p.w5)((()=>[(0,p.Wm)(zu)])),_:2},1032,["onClick"]),(0,p._)("span",Ta,(0,v.zw)(e.row.requestIp),1)])])),_:1}),(0,p.Wm)(nn,{label:"成功/失败","min-width":"105"},{default:(0,p.w5)((e=>[(0,p._)("div",Ua,[(0,p._)("span",xa,(0,v.zw)(e.row.inRequestNumber)+"/"+(0,v.zw)(e.row.outRequestNumber),1)])])),_:1}),(0,p.Wm)(nn,{property:"lastLoginTime",label:"登录时间",prop:"lastLoginTime","min-width":"180"})])),_:1},8,["data"])]),Aa])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:Vn.value,"onUpdate:modelValue":l[125]||(l[125]=e=>Vn.value=e),title:"📌修改pool_token信息","align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Ha,[(0,p.Wm)(Au,{onSubmit:$u},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[za,(0,p._)("div",Pa,[(0,p.Wm)(di,{label:"poolToken名"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:wt.value,"onUpdate:modelValue":l[117]||(l[117]=e=>wt.value=e),filterable:"",clearable:"",placeholder:"选择你想要的修改的pool_token名称",onChange:Nu,class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Rt.value,(e=>((0,p.wg)(),(0,p.j4)(Jt,{key:e.poolName,label:e.poolName,value:e.poolName,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),Sa,(0,p.Wm)(fu,{modelValue:Ht.value,"onUpdate:modelValue":l[118]||(l[118]=e=>Ht.value=e),type:"textarea",maxlength:"100",autoSize:"",name:"pool_token的值",label:"pool_token的值","input-align":"right",placeholder:"pool_token的值(不改则不变)"},null,8,["modelValue"]),Na,(0,p.Wm)(fu,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Vt.value,"onUpdate:modelValue":l[119]||(l[119]=e=>Vt.value=e)},null,8,["modelValue"])])),_:1}),Ca,1==Vt.value?((0,p.wg)(),(0,p.iD)("div",Oa,[$a,(0,p._)("div",Ba,[(0,p.Wm)(di,{label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:Wt.value,"onUpdate:modelValue":l[120]||(l[120]=e=>Wt.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Sn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),Ia])),_:1}),Da,(0,p.Wm)(di,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(si,{modelValue:yt.value,"onUpdate:modelValue":l[121]||(l[121]=e=>yt.value=e),type:"textarea",rows:10,placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),qa,(0,p.Wm)(fu,{modelValue:At.value,"onUpdate:modelValue":l[122]||(l[122]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),ja,(0,p.Wm)(fu,{"input-align":"right",name:"checkboxGroup",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:en.value,"onUpdate:modelValue":l[123]||(l[123]=e=>en.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),La,(0,p.Wm)(fu,{modelValue:xt.value,"onUpdate:modelValue":l[124]||(l[124]=e=>xt.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right",placeholder:"自定义PandoraNext地址",rules:[{required:!0,message:"请填写自定义PandoraNext地址"}]},null,8,["modelValue"]),Ma])):(0,p.kq)("",!0)])),_:1}),(0,p._)("div",Za,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:yn.value,"onUpdate:modelValue":l[126]||(l[126]=e=>yn.value=e),"align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",{ref_key:"chart",ref:Ji,style:{width:"auto",height:"400px"}},null,512)])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:Wn.value,"onUpdate:modelValue":l[130]||(l[130]=e=>Wn.value=e),title:"OneAPI里的share_token列表","align-center":"",width:"78%","close-on-click-modal":!1,class:"shareTokenDialog"},{default:(0,p.w5)((()=>[(0,p.Wm)(Qo,{modelValue:_u.value,"onUpdate:modelValue":l[128]||(l[128]=e=>_u.value=e),"show-action":"",shape:"round",clearable:"",placeholder:"请输入搜索share_token名称",onSearch:l[129]||(l[129]=e=>bu(_u.value)),class:"onShareToken"},{action:(0,p.w5)((()=>[(0,p.Wm)(tn,{icon:e.Plus,onClick:l[127]||(l[127]=e=>Tn.value=!0)},{default:(0,p.w5)((()=>[Ea])),_:1},8,["icon"])])),_:1},8,["modelValue"]),(0,p.Wm)((0,h.SU)(W.eI),{data:Yt.value,"row-class-name":qu},{default:(0,p.w5)((()=>[(0,p.Wm)(nn,{label:"在one_api的名称",prop:"oneApi_name",width:"180"},{default:(0,p.w5)((e=>[(0,p._)("div",Ja,[(0,p._)("span",Ka,(0,v.zw)(e.row.oneApi_name),1)])])),_:1}),(0,p.Wm)(nn,{label:"来源Token名","min-width":"135"},{default:(0,p.w5)((e=>[(0,p._)("div",Ra,[(0,p._)("span",Ya,(0,v.zw)(e.row.token_name),1)])])),_:1}),(0,p.Wm)(nn,{label:"share_token值","min-width":"355"},{default:(0,p.w5)((e=>[(0,p._)("div",Xa,[(0,p.Wm)(Pu,{onClick:l=>Li(e.row.token_value)},{default:(0,p.w5)((()=>[(0,p.Wm)(zu)])),_:2},1032,["onClick"]),(0,p._)("span",Ga,(0,v.zw)(e.row.token_value),1)])])),_:1}),(0,p.Wm)(nn,{property:"shareTime",label:"更新时间",prop:"shareTime","min-width":"170"}),(0,p.Wm)(nn,{label:"操作方法","min-width":"205"},{default:(0,p.w5)((e=>[(0,p.Wm)(tn,{size:"small",onClick:l=>ri(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("查看")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"primary",onClick:l=>xi(e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("修改")])),_:2},1032,["onClick"]),(0,p.Wm)(tn,{size:"small",type:"danger",onClick:l=>Ci(e.$index,e.row)},{default:(0,p.w5)((()=>[(0,p.Uk)("删除")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"]),Fa])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:Tn.value,"onUpdate:modelValue":l[138]||(l[138]=e=>Tn.value=e),title:"✨添加share_token进OneAPI","align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p.Wm)(Au,{onSubmit:Bu},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Qa,(0,p.Wm)(fu,{modelValue:iu.value,"onUpdate:modelValue":l[131]||(l[131]=e=>iu.value=e),name:"oneApi中渠道名称",label:"oneApi中渠道名称","input-align":"right",placeholder:"oneApi中渠道名称",rules:[{required:!0,message:"请填写oneApi中渠道名称"}]},null,8,["modelValue"]),eo,(0,p._)("div",lo,[(0,p.Wm)(di,{label:"Token名","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:ru.value,"onUpdate:modelValue":l[132]||(l[132]=e=>ru.value=e),filterable:"",clearable:"",placeholder:"选择你想要的添加的Token名称",onChange:Cu,class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Ou.value,(e=>((0,p.wg)(),(0,p.j4)(Jt,{key:e.name,label:e.name,value:e.name,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),ao,(0,p._)("div",oo,[(0,p.Wm)(di,{label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:su.value,"onUpdate:modelValue":l[133]||(l[133]=e=>su.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Pn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),no])),_:1}),to,(0,p.Wm)(di,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(si,{modelValue:mu.value,"onUpdate:modelValue":l[134]||(l[134]=e=>mu.value=e),type:"textarea",rows:10,placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),uo,(0,p.Wm)(fu,{modelValue:pu.value,"onUpdate:modelValue":l[135]||(l[135]=e=>pu.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),io,(0,p.Wm)(fu,{"input-align":"right",name:"addOneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:cu.value,"onUpdate:modelValue":l[136]||(l[136]=e=>cu.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),ro,(0,p.Wm)(fu,{modelValue:du.value,"onUpdate:modelValue":l[137]||(l[137]=e=>du.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),so])),_:1}),(0,p._)("div",mo,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:Un.value,"onUpdate:modelValue":l[154]||(l[154]=e=>Un.value=e),title:"🔎查看share_token在OneAPI信息","align-center":"",width:"50vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p.Wm)(Au,{onSubmit:e.shareToken},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[co,(0,p.Wm)(fu,{modelValue:Fu.value,"onUpdate:modelValue":l[139]||(l[139]=e=>Fu.value=e),name:"oneApi中渠道名称",label:"oneApi中渠道名称","input-align":"right",placeholder:"oneApi中渠道名称","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[140]||(l[140]=e=>Li(Fu.value)),rules:[{required:!0,message:"请填写oneApi中渠道名称"}]},null,8,["modelValue"]),po,(0,p.Wm)(fu,{modelValue:ei.value,"onUpdate:modelValue":l[141]||(l[141]=e=>ei.value=e),name:"share_token的值",label:"share_token的值","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[142]||(l[142]=e=>Li(ei.value)),placeholder:"share_token的值"},null,8,["modelValue"]),vo,(0,p.Wm)(fu,{modelValue:Qu.value,"onUpdate:modelValue":l[143]||(l[143]=e=>Qu.value=e),name:"share_token的来源",label:"share_token的来源","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[144]||(l[144]=e=>Li(Qu.value)),placeholder:"share_token的值"},null,8,["modelValue"]),ho,(0,p.Wm)(fu,{modelValue:ni.value,"onUpdate:modelValue":l[145]||(l[145]=e=>ni.value=e),name:"加入的模型",label:"加入的模型","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[146]||(l[146]=e=>Li(ni.value)),placeholder:"加入的模型"},null,8,["modelValue"]),(0,p._)("div",_o,[wo,(0,p.Wm)(di,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(si,{modelValue:oi.value,"onUpdate:modelValue":l[147]||(l[147]=e=>oi.value=e),type:"textarea",autosize:"",placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1}),ko]),(0,p.Wm)(fu,{modelValue:At.value,"onUpdate:modelValue":l[148]||(l[148]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[149]||(l[149]=e=>Li(At.value)),placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),fo,(0,p.Wm)(fu,{modelValue:ti.value,"onUpdate:modelValue":l[150]||(l[150]=e=>ti.value=e),name:"加入的组别",label:"加入的组别","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[151]||(l[151]=e=>Li(ti.value)),placeholder:"加入的组别"},null,8,["modelValue"]),go,(0,p.Wm)(fu,{modelValue:li.value,"onUpdate:modelValue":l[152]||(l[152]=e=>li.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right","left-icon":"description-o",readonly:!0,onClickLeftIcon:l[153]||(l[153]=e=>Li(li.value)),placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),bo])),_:1})])),_:1},8,["onSubmit"])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:xn.value,"onUpdate:modelValue":l[161]||(l[161]=e=>xn.value=e),title:"📌修改share_token在OneAPI的信息","align-center":"",width:"50vw",class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Vo,[(0,p.Wm)(Au,{onSubmit:Ai},{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[yo,(0,p._)("div",Wo,[(0,p.Wm)(di,{label:"Token名","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:Qu.value,"onUpdate:modelValue":l[155]||(l[155]=e=>Qu.value=e),filterable:"",clearable:"",placeholder:"选择你想要的添加的Token名称",onChange:Cu,class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(!0),(0,p.iD)(p.HY,null,(0,p.Ko)(Ou.value,(e=>((0,p.wg)(),(0,p.j4)(Jt,{key:e.name,label:e.name,value:e.name,"data-item":e},null,8,["label","value","data-item"])))),128))])),_:1},8,["modelValue"])])),_:1})]),To,(0,p._)("div",Uo,[(0,p.Wm)(di,{label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{modelValue:ai.value,"onUpdate:modelValue":l[156]||(l[156]=e=>ai.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Pn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"])])),_:1}),xo,(0,p.Wm)(di,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(si,{modelValue:oi.value,"onUpdate:modelValue":l[157]||(l[157]=e=>oi.value=e),type:"textarea",rows:10,placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),Ao,Ho,(0,p.Wm)(fu,{modelValue:At.value,"onUpdate:modelValue":l[158]||(l[158]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),zo,(0,p.Wm)(fu,{"input-align":"right",name:"oneApi_groups",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:ui.value,"onUpdate:modelValue":l[159]||(l[159]=e=>ui.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),Po,(0,p.Wm)(fu,{modelValue:li.value,"onUpdate:modelValue":l[160]||(l[160]=e=>li.value=e),name:"自定义baseUrl地址",label:"自定义baseUrl地址","input-align":"right",placeholder:"自定义baseUrl地址",rules:[{required:!0,message:"请填写自定义baseUrl地址"}]},null,8,["modelValue"]),So])),_:1}),(0,p._)("div",No,[(0,p.Wm)(b,{round:"",block:"",color:"#0ea27e","native-type":"submit"},{default:(0,p.w5)((()=>[(0,p.Uk)(" 提交 ")])),_:1})])])),_:1})])])),_:1},8,["modelValue"]),(0,p.Wm)(ii,{modelValue:An.value,"onUpdate:modelValue":l[175]||(l[175]=e=>An.value=e),title:"🔎查看poolToken信息","align-center":"",width:"50vw","close-on-click-modal":!1,class:"poolTokenDialog"},{default:(0,p.w5)((()=>[(0,p._)("div",Co,[(0,p.Wm)(Au,null,{default:(0,p.w5)((()=>[(0,p.Wm)(xu,{inset:""},{default:(0,p.w5)((()=>[Oo,(0,p.Wm)(fu,{modelValue:kt.value,"onUpdate:modelValue":l[162]||(l[162]=e=>kt.value=e),name:"pool_token名称",label:"pool_token名称",placeholder:"pool_token名称",readonly:!0,"input-align":"right","left-icon":"description-o",onClickLeftIcon:l[163]||(l[163]=e=>Li(kt.value))},null,8,["modelValue"]),$o,(0,p.Wm)(fu,{modelValue:ft.value,"onUpdate:modelValue":l[164]||(l[164]=e=>ft.value=e),label:"使用token名集合",type:"textarea",placeholder:"使用token名集合","left-icon":"description-o",readonly:!0,"input-align":"right",onClickLeftIcon:l[165]||(l[165]=e=>Li($t.value)),autosize:{maxHeight:100,minHeight:20}},null,8,["modelValue"]),Bo,(0,p.Wm)(fu,{modelValue:Ht.value,"onUpdate:modelValue":l[166]||(l[166]=e=>Ht.value=e),readonly:!0,type:"textarea",maxlength:"100",autoSize:"",name:"pool_token的值",label:"pool_token的值","input-align":"right",placeholder:"pool_token的值(不改则不变)","left-icon":"description-o",onClickLeftIcon:l[167]||(l[167]=e=>Li(Ht.value))},null,8,["modelValue"]),Io,(0,p.Wm)(fu,{name:"switch",label:"是否上传到oneApi"},{"right-icon":(0,p.w5)((()=>[(0,p.Wm)(Uu,{"active-color":"#0ea27e",modelValue:Vt.value,"onUpdate:modelValue":l[168]||(l[168]=e=>Vt.value=e)},null,8,["modelValue"])])),_:1}),Do,1==Vt.value?((0,p.wg)(),(0,p.iD)("div",qo,[jo,(0,p._)("div",Lo,[(0,p.Wm)(di,{disabled:"",label:"选择加入的模型","input-align":"right"},{default:(0,p.w5)((()=>[(0,p.Wm)(wu,{disabled:"",modelValue:Wt.value,"onUpdate:modelValue":l[169]||(l[169]=e=>Wt.value=e),multiple:"",filterable:"","allow-create":"",clearable:"",placeholder:"输入或选择你要加入的模型",class:"model_mapping"},{default:(0,p.w5)((()=>[((0,p.wg)(),(0,p.iD)(p.HY,null,(0,p.Ko)(Sn,(e=>(0,p.Wm)(Jt,{key:e.buttonModel,label:e.label,value:e.buttonModel},null,8,["label","value"]))),64))])),_:1},8,["modelValue"]),Mo])),_:1}),Zo,(0,p.Wm)(di,{label:"模型重定向",prop:"addModel_mapping"},{default:(0,p.w5)((()=>[(0,p.Wm)(si,{modelValue:yt.value,"onUpdate:modelValue":l[170]||(l[170]=e=>yt.value=e),type:"textarea",disabled:"",autosize:"",placeholder:Yo,class:"model_mapping"},null,8,["modelValue"])])),_:1})]),Eo,(0,p.Wm)(fu,{readonly:!0,modelValue:At.value,"onUpdate:modelValue":l[171]||(l[171]=e=>At.value=e),name:"渠道优先级",label:"渠道优先级","input-align":"right",placeholder:"渠道优先级(默认为0)",rules:[{required:!0,message:"请填写渠道优先级(默认为0)"}]},null,8,["modelValue"]),Jo,(0,p.Wm)(fu,{readonly:!0,"input-align":"right",name:"checkboxGroup",label:"在one-api的组别"},{input:(0,p.w5)((()=>[(0,p.Wm)(Ri,{modelValue:en.value,"onUpdate:modelValue":l[172]||(l[172]=e=>en.value=e),direction:"horizontal"},{default:(0,p.w5)((()=>[(0,p.Wm)(mi,{name:"default","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("default")])),_:1}),(0,p.Wm)(mi,{name:"vip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("vip")])),_:1}),(0,p.Wm)(mi,{name:"svip","checked-color":"#0ea27e"},{default:(0,p.w5)((()=>[(0,p.Uk)("svip")])),_:1})])),_:1},8,["modelValue"])])),_:1}),Ko,(0,p.Wm)(fu,{readonly:!0,modelValue:xt.value,"onUpdate:modelValue":l[173]||(l[173]=e=>xt.value=e),name:"自定义PandoraNext地址",label:"自定义PandoraNext地址","input-align":"right",placeholder:"自定义PandoraNext地址","left-icon":"description-o",onClickLeftIcon:l[174]||(l[174]=e=>Li(xt.value)),rules:[{required:!0,message:"请填写自定义PandoraNext地址"}]},null,8,["modelValue"]),Ro])):(0,p.kq)("",!0)])),_:1})])),_:1})])])),_:1},8,["modelValue"])],64)}}});const en=Qo;var ln=en}}]);
+//# sourceMappingURL=813.784e18ef.js.map
\ No newline at end of file
diff --git a/rearServer/target/classes/static/js/813.784e18ef.js.map b/rearServer/target/classes/static/js/813.784e18ef.js.map
new file mode 100644
index 0000000..0bc18c9
--- /dev/null
+++ b/rearServer/target/classes/static/js/813.784e18ef.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"js/813.784e18ef.js","mappings":"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","sources":["webpack://PandoraNext-TokensTool/./src/views/homeIndex.vue","webpack://PandoraNext-TokensTool/./src/views/homeIndex.vue?32ba"],"sourcesContent":["import \"core-js/modules/es.array.push.js\";\nimport { defineComponent as _defineComponent } from 'vue';\nimport { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, resolveDirective as _resolveDirective, openBlock as _openBlock, createBlock as _createBlock, withDirectives as _withDirectives, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode } from \"vue\";\nimport _imports_0 from '../asserts/openAi.jpg';\nconst _hoisted_1 = {\n class: \"content\"\n};\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"meta\", {\n name: \"viewport\",\n content: \"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no\"\n}, null, -1);\nconst _hoisted_3 = {\n class: \"home-container\"\n};\nconst _hoisted_4 = /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"flex-grow\"\n}, null, -1);\nconst _hoisted_5 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://ai.fakeopen.com/auth\"\n}, \"PandoraNext地址\", -1);\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://chat.openai.com/api/auth/session\"\n}, \"OpenAI官网\", -1);\nconst _hoisted_7 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://github.com/Yanyutin753/PandoraNext-TokensTool\"\n}, \"TokensTool地址\", -1);\nconst _hoisted_8 = {\n class: \"under\"\n};\nconst _hoisted_9 = {\n style: {\n \"display\": \"block\",\n \"transform\": \"translate(5vw, 2.5vh)\"\n }\n};\nconst _hoisted_10 = /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"flex items-center\"\n}, [/*#__PURE__*/_createElementVNode(\"span\", {\n class: \"font-h4\"\n}, \"PandoraNext-TokensTool \"), /*#__PURE__*/_createElementVNode(\"span\", {\n class: \"font-h4-tag\"\n}, \"v0.6.8 \")], -1);\nconst _hoisted_11 = {\n class: \"search\"\n};\nconst _hoisted_12 = {\n style: {\n \"display\": \"flex\",\n \"margin\": \"10px 35px -8px 35px\"\n }\n};\nconst _hoisted_13 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translateX(4vw)\",\n \"width\": \"70vw\",\n \"height\": \"61vh\"\n }\n};\nconst _hoisted_14 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_15 = {\n style: {\n \"margin-left\": \"18px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_16 = {\n style: {\n \"margin\": \"15px 0px 15px 0px\"\n }\n};\nconst _hoisted_17 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"批量操作\", -1);\nconst _hoisted_18 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"全部检查并生成\", -1);\nconst _hoisted_19 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_20 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_21 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_22 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_23 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_24 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_25 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_26 = {\n key: 0\n};\nconst _hoisted_27 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_28 = {\n key: 1\n};\nconst _hoisted_29 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_30 = {\n key: 0\n};\nconst _hoisted_31 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_32 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_33 = {\n key: 2\n};\nconst _hoisted_34 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_35 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_36 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_37 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_38 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_39 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_40 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_41 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_42 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_43 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_44 = {\n key: 0\n};\nconst _hoisted_45 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_46 = {\n key: 1\n};\nconst _hoisted_47 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_48 = {\n key: 0\n};\nconst _hoisted_49 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_50 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_51 = {\n key: 2\n};\nconst _hoisted_52 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_53 = {\n key: 3\n};\nconst _hoisted_54 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_55 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_56 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_57 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_58 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_59 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_60 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_61 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_62 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_63 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_64 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_65 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_66 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_67 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_68 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_69 = {\n key: 0\n};\nconst _hoisted_70 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_71 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_72 = {\n key: 0\n};\nconst _hoisted_73 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_74 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_75 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_76 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_77 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_78 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_79 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_80 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_81 = {\n key: 0\n};\nconst _hoisted_82 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_83 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_84 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_85 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_86 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_87 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_88 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_89 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_90 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_91 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_92 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_93 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_94 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_95 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_96 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_97 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_98 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_99 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_100 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_101 = {\n key: 0\n};\nconst _hoisted_102 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_103 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_104 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_105 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_106 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_107 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_108 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_109 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_110 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_111 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_112 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_113 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_114 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_115 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_116 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_117 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_118 = {\n style: {\n \"transform\": \"translate(0vw, -2vh)\"\n }\n};\nconst _hoisted_119 = {\n style: {\n \"margin-left\": \"15px\",\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_120 = {\n key: 0\n};\nconst _hoisted_121 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"oneApi\", -1);\nconst _hoisted_122 = {\n key: 1\n};\nconst _hoisted_123 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"Json\", -1);\nconst _hoisted_124 = {\n style: {\n \"margin-left\": \"25px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_125 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_126 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_127 = /*#__PURE__*/_createElementVNode(\"span\", {\n style: {\n \"margin-left\": \"0px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n}, \"点击此进行查看\", -1);\nconst _hoisted_128 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"批量操作\", -1);\nconst _hoisted_129 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_130 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_131 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_132 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_133 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_134 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_135 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_136 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_137 = {\n key: 0\n};\nconst _hoisted_138 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_139 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_140 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_141 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_142 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_143 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_144 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_145 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_146 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_147 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_148 = {\n key: 0\n};\nconst _hoisted_149 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_150 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_151 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_152 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_153 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_154 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_155 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_156 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_157 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_158 = {\n style: {\n \"display\": \"flex\"\n }\n};\nconst _hoisted_159 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_160 = {\n style: {\n \"margin-left\": \"0px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_161 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_162 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_163 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_164 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_165 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_166 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_167 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_168 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_169 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_170 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_171 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_172 = {\n key: 0\n};\nconst _hoisted_173 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_174 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_175 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_176 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_177 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_178 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_179 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_180 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_181 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_182 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"添加share_token到OneAPI\", -1);\nconst _hoisted_183 = {\n style: {\n \"margin-left\": \"15px\",\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_184 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_185 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_186 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_187 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_188 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_189 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_190 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_191 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_192 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_193 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_194 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_195 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_196 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_197 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_198 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_199 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_200 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_201 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_202 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_203 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_204 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_205 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_206 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_207 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_208 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_209 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_210 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_211 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_212 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_213 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_214 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_215 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_216 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_217 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_218 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_219 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_220 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_221 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_222 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_223 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_224 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_225 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_226 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_227 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_228 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_229 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_230 = {\n key: 0\n};\nconst _hoisted_231 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_232 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_233 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_234 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_235 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_236 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_237 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_238 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nimport { ref, onMounted } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport axios from \"axios\";\nimport { ElMessage, ElMessageBox } from \"element-plus\";\nimport { differenceInDays, parseISO } from \"date-fns\";\nimport { ElLoading } from \"element-plus\";\nimport { ElTable } from \"element-plus\";\nimport * as echarts from \"echarts\";\nimport { computed } from \"vue\";\nconst temModel_mapping = `此项可选,用于修改请求体中的模型名称,\n 为一个 JSON 字符串,键为请求中模型名称,\n 值为要替换的模型名称,例如:\n {\n \"gpt-3.5-turbo-301\":\"gpt-3.5-turbo\",\n \"gpt-4-8314\":\"gpt-4\", \n \"gpt-4-32k-8314\":\"gpt-4-32k\",\n }`;\nconst pandoraNext = 0;\n//tokensTool 为 0\nconst tokensTool = 1;\n//验证信息\nconst validation = 2;\n/**\r\n * 修改系统设置信息\r\n */\nexport default /*#__PURE__*/_defineComponent({\n __name: 'homeIndex',\n setup(__props) {\n // 导入类\n const path = window.location.pathname; // 假设是 \"/api/getData\"\n const parts = path.split(\"/\"); // 分割路径,得到 [\"\", \"api\", \"getData\"]\n let prefix = \"\"; // 默认值为 \"\"\n if (parts.length >= 3) {\n prefix = \"/\" + parts[1]; // 如果parts长度大于或等于3,获取第一个部分\n }\n\n const temGroupChecked = ref([\"default\", \"svip\", \"vip\"]);\n const groupChecked = ref([\"default\", \"svip\", \"vip\"]);\n const multipleTableRef = ref();\n const multipleTableRefPool = ref();\n const multipleSelection = ref([]);\n const multipleSelectionPool = ref([]);\n const handleSelectionChange = val => {\n multipleSelection.value = val;\n };\n const poolSelectionChange = val => {\n multipleSelectionPool.value = val;\n };\n const size = ref(\"ALL\");\n //pandoraNext 为 0\n const router = useRouter();\n /**\r\n * \r\n * \r\n * \r\n *\r\n */\n const show = ref(false);\n const show_1 = ref(false);\n const show_2 = ref(false);\n const show_3 = ref(false);\n const show_4 = ref(false);\n const show_5 = ref(false);\n const show_6 = ref(false);\n const show_7 = ref(false);\n const show_8 = ref(false);\n const show_9 = ref(false);\n const show_10 = ref(false);\n const show_11 = ref(false);\n const show_12 = ref(false);\n const show_13 = ref(false);\n const show_14 = ref(false);\n const show_15 = ref(false);\n const show_16 = ref(false);\n const show_17 = ref(false);\n /**\r\n * 定义User类接口\r\n */\n const buttonValue = ref(\"\");\n const options = [{\n buttonValue: \"选中删除Token\",\n label: \"选中删除Token\"\n }, {\n buttonValue: \"选中刷新Token\",\n label: \"选中刷新Token\"\n }, {\n buttonValue: \"选中合成pool_token\",\n label: \"选中合成pool_token\"\n }, {\n buttonValue: \"选中修改pool_token\",\n label: \"选中修改pool_token\"\n }];\n const buttonModel = ref(\"\");\n const optionsModel = [{\n buttonModel: \"gpt-3.5-turbo\",\n label: \"gpt-3.5-turbo\"\n }, {\n buttonModel: \"gpt-4-s\",\n label: \"gpt-4-s\"\n }, {\n buttonModel: \"gpt-4-mobile\",\n label: \"gpt-4-mobile\"\n }, {\n buttonModel: \"gpt-4-vision\",\n label: \"gpt-4-vision\"\n }, {\n buttonModel: \"gpt-4-classic\",\n label: \"gpt-4-classic\"\n }, {\n buttonModel: \"gpt-4-vision-preview\",\n label: \"gpt-4-vision-preview\"\n }];\n const optionsPoolModel = [{\n buttonModel: \"gpt-3.5-turbo\",\n label: \"gpt-3.5-turbo\"\n }, {\n buttonModel: \"gpt-4\",\n label: \"gpt-4\"\n }];\n const buttonPoolValue = ref(\"\");\n const optionsPool = [{\n buttonPoolValue: \"选中检查pool_token\",\n label: \"选中检查pool_token\"\n }, {\n buttonPoolValue: \"选中删除pool_token\",\n label: \"选中删除pool_token\"\n }, {\n buttonPoolValue: \"选中刷新pool_token\",\n label: \"选中刷新pool_token\"\n }, {\n buttonPoolValue: \"选中更换pool_token\",\n label: \"选中更换pool_token\"\n }];\n /**\r\n * 定义Pool类接口\r\n */\n const proxy_api_prefix = ref(\"\");\n const isolated_conv_title = ref(\"*\");\n const bing = ref(\"\");\n const timeout = ref(\"\");\n const proxy_url = ref(\"\");\n const public_share = ref(false);\n //0.4.9.2\n const disable_signup = ref(false);\n const auto_conv_arkose = ref(false);\n const proxy_file_service = ref(false);\n const custom_doh_host = ref(\"\");\n const enabled = ref(false);\n const cert_file = ref(\"\");\n const key_file = ref(\"\");\n const site_password = ref(\"\");\n const setup_password = ref(\"\");\n const loginUsername = ref(\"\");\n const loginPassword = ref(\"\");\n const license_id = ref(\"\");\n //0.4.8.2\n const isGetToken = ref(false);\n const getTokenPassword = ref(\"\");\n const containerName = ref(\"PandoraNext\");\n const autoToken_url = ref(\"default\");\n const whitelist = ref(\"\");\n const provider = ref(\"\");\n const site_key = ref(\"\");\n const site_secret = ref(\"\");\n const site_login = ref(false);\n const setup_login = ref(false);\n const oai_username = ref(false);\n const oai_password = ref(false);\n //0.4.9.3\n const auto_updateSession = ref(false);\n const auto_updateTime = ref(5);\n const auto_updateNumber = ref(1);\n const pandoraNext_outUrl = ref(\"\");\n const oneAPi_outUrl = ref(\"\");\n const oneAPi_intoToken = ref(\"\");\n // 0.4.8\n const poolName = ref(\"\");\n const temPoolName = ref(\"\");\n const shareTokens = ref(\"\");\n const poolToken = ref(\"\");\n const poolTime = ref(\"\");\n const checkPool = ref(true);\n // 0.5.0\n //上传oneApi\n const poolNameValue = ref(\"\");\n const intoOneApi = ref(false);\n const poolModel_mapping = ref(\"\");\n const poolOneApi_models = ref([]);\n const addPoolOneApi_models = ref([]);\n const addPoolModel_mapping = ref(\"\");\n const oneApi_pandoraUrl = ref(pandoraNext_outUrl.value + proxy_api_prefix.value);\n const priority = ref(0);\n const temPool_token = ref(\"\");\n // 自定义校验函数,直接返回错误提示\n const customValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n const sitePasswordValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (regex.test(value) || value == \"\") {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n const poolNameValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^[\\u4e00-\\u9fa5a-zA-Z0-9]{3,10}$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字\";\n }\n };\n const addPasswordValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (addSetPoolToken.value == true || setPoolToken.value == true || regex.test(value)) {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n /**\r\n * 查看或者修改token信息参数\r\n */\n const temName = ref(\"\");\n const temToken = ref(\"\");\n const temAccessToken = ref(\"\");\n const temShareToken = ref(\"\");\n const temUsername = ref(\"\");\n const temUserPassword = ref(\"\");\n const temShared = ref(false);\n const temShow_user_info = ref(false);\n const temPlus = ref(false);\n const temPassword = ref(\"\");\n const setPoolToken = ref(false);\n const useRefreshToken = ref(false);\n const temCheckSession = ref(true);\n const tableData = ref([]);\n // 0.4.8\n const poolData = ref([]);\n const shareData = ref([]);\n // 0.5.9\n const loginData = ref([]);\n /**\r\n * 添加用户信息参数\r\n */\n const addName = ref(\"\");\n const addUsername = ref(\"\");\n const addUserPassword = ref(\"\");\n const addTokenValue = ref(\"\");\n const addShared = ref(false);\n const addShow_user_info = ref(false);\n const addPlus = ref(false);\n const addSetPoolToken = ref(false);\n const addUseRefreshToken = ref(false);\n const addPassword = ref(\"\");\n /**\r\n * 添加用户信息参数\r\n */\n const addOneApi_name = ref(\"\");\n const addToken_name = ref(\"\");\n const addToken_value = ref(\"\");\n const addOneApi_baseUrl = ref(\"\");\n const addOneApi_models = ref([]);\n const addModel_mapping = ref(\"\");\n const addOneApi_groups = ref([\"default\", \"svip\", \"vip\"]);\n const addPriority = ref(0);\n //Pandora的icon大小\n const iconSize = ref(window.innerHeight * 0.085);\n //搜索值\n const value = ref(\"\");\n const valuePool = ref(\"\");\n const valueShare = ref(\"\");\n /**\r\n * 用jwt令牌验证身份\r\n * 未通过者返回到/\r\n */\n const token = localStorage.getItem(\"jwtToken\"); // 从localStorage获取JWT令牌\n if (!token) {\n router.replace(`/`);\n }\n const headers = {\n Authorization: `Bearer ${token}`\n };\n /**\r\n * 用jwt令牌验证身份函数\r\n */\n const fetchLoginToken = async () => {\n axios.post(`${prefix}/api/loginToken?token=` + token).then(response => {\n if (response.data.code == 0) {\n console.error(response.data.data);\n router.replace(`/`);\n return;\n }\n }).catch(error => {\n console.error(\"请求loginToken接口失败\", error);\n router.replace(`/`);\n });\n };\n const onSearch = value => {\n if (value == \"Web\" || value == \"WEB\") {\n getWebToken(\"\");\n } else if (value == \"ALL\" || value == \"All\") {\n getToken(\"\");\n } else if (value.includes(\"API\")) {\n getAPIToken(\"\");\n } else {\n getToken(value);\n }\n };\n const onSearchShareToken = value => {\n getShare(value);\n };\n const onSearchPoolToken = value => {\n getPool(value);\n };\n /**\r\n * 获取数据操作,并把数据返回到tableData\r\n * 用于展示\r\n */\n const getToken = async value => {\n const response = await axios.get(`${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 将用户数据添加到tableData\n tableData.value = resUsers;\n }\n };\n const getAPIToken = async value => {\n const response = await axios.get(`${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 使用 filter 方法筛选出 setPoolToken 等于 true 的用户\n const filteredUsers = resUsers.filter(user => user.setPoolToken === true);\n // 将筛选后的用户数据添加到 tableData\n tableData.value = filteredUsers;\n }\n };\n const getWebToken = async value => {\n const response = await axios.get(`${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 使用 filter 方法筛选出 setPoolToken 等于 true 的用户\n const filteredUsers = resUsers.filter(user => user.setPoolToken === false);\n // 将筛选后的用户数据添加到 tableData\n tableData.value = filteredUsers;\n }\n };\n /**\r\n * 获取数据操作\r\n * 用于日志数据展示\r\n */\n const getLoginData = async () => {\n const response = await axios.get(`${prefix}/api/selectLogin`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resLogins = data_token.map(item => ({\n ipAddress: item.ipAddress,\n requestIp: item.requestIp,\n outRequestNumber: item.outRequestNumber,\n inRequestNumber: item.inRequestNumber,\n lastLoginTime: item.lastLoginTime\n }));\n // 将用户数据添加到tableData\n loginData.value = resLogins;\n }\n };\n const getPool = async value => {\n const responsePool = await axios.get(`${prefix}/api/selectPoolToken?name=${value}`, {\n headers\n });\n const pool_token = responsePool.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(pool_token)) {\n const resPools = pool_token.map(item => ({\n poolName: item.poolName,\n poolTime: item.poolTime,\n poolToken: item.poolToken,\n shareTokens: item.shareTokens,\n checkPool: item.checkPool,\n intoOneApi: item.intoOneApi,\n poolOneApi_models: item.poolOneApi_models,\n poolModel_mapping: item.poolModel_mapping,\n oneApi_pandoraUrl: item.oneApi_pandoraUrl,\n groupChecked: item.groupChecked,\n priority: item.priority\n }));\n // 将用户数据添加到poolData\n poolData.value = resPools;\n }\n };\n const getShare = async value => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const responseShare = await axios.get(`${prefix}/api/selectShareToken?name=${value}`, {\n headers\n });\n const share_token = responseShare.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(share_token)) {\n const resShares = share_token.map(item => ({\n oneApi_name: item.oneApi_name,\n token_name: item.token_name,\n token_value: item.token_value,\n oneApi_baseUrl: item.oneApi_baseUrl,\n oneApi_models: item.oneApi_models,\n model_mapping: item.model_mapping,\n oneApi_groups: item.oneApi_groups,\n shareTime: item.shareTime,\n priority: item.priority\n }));\n // 将用户数据添加到poolData\n shareData.value = resShares;\n }\n loadingInstance.close();\n };\n const getSetting = async value => {\n const response = await axios.get(`${prefix}/api/selectSetting`, {\n headers\n });\n const data = response.data.data;\n proxy_api_prefix.value = data.proxy_api_prefix;\n isolated_conv_title.value = data.isolated_conv_title;\n bing.value = data.bing;\n timeout.value = data.timeout;\n proxy_url.value = data.proxy_url;\n public_share.value = data.public_share;\n //0.4.9.2\n disable_signup.value = data.disable_signup;\n auto_conv_arkose.value = data.auto_conv_arkose;\n proxy_file_service.value = data.proxy_file_service;\n custom_doh_host.value = data.custom_doh_host;\n enabled.value = data.tls.enabled;\n cert_file.value = data.tls.cert_file;\n key_file.value = data.tls.key_file;\n site_password.value = data.site_password;\n setup_password.value = data.setup_password;\n if (data.whitelist == null) {\n whitelist.value = \"null\";\n } else whitelist.value = data.whitelist;\n loginUsername.value = data.loginUsername;\n loginPassword.value = data.loginPassword;\n license_id.value = data.license_id;\n //0.4.8.2\n isGetToken.value = data.isGetToken;\n getTokenPassword.value = data.getTokenPassword;\n containerName.value = data.containerName;\n autoToken_url.value = data.autoToken_url;\n provider.value = data.validation.provider;\n site_key.value = data.validation.site_key;\n site_secret.value = data.validation.site_secret;\n site_login.value = data.validation.site_login;\n setup_login.value = data.validation.setup_login;\n oai_username.value = data.validation.oai_username;\n oai_password.value = data.validation.oai_password;\n //0.4.9.3\n auto_updateSession.value = data.auto_updateSession;\n auto_updateTime.value = data.auto_updateTime;\n auto_updateNumber.value = data.auto_updateNumber;\n pandoraNext_outUrl.value = data.pandoraNext_outUrl;\n if (!pandoraNext_outUrl.value.endsWith(\"/\")) {\n oneApi_pandoraUrl.value = pandoraNext_outUrl.value + \"/\" + proxy_api_prefix.value;\n } else {\n oneApi_pandoraUrl.value = pandoraNext_outUrl.value + proxy_api_prefix.value;\n }\n //0.5.0\n oneAPi_outUrl.value = data.oneAPi_outUrl;\n oneAPi_intoToken.value = data.oneAPi_intoToken;\n fetchDataAndFillForm();\n };\n const fetchDataAndFillForm = async () => {\n if (loginPassword.value == \"123456\" && loginUsername.value == \"root\") {\n ElMessageBox.alert(\"请先修改默认的初始账号和密码,并填写相应的信息,具体可参考网站文档!\", \"温馨提醒\", {\n confirmButtonText: \"确定\",\n callback: action => {\n ElMessage({\n type: \"info\",\n message: `如果不知道怎么填的话,可以看tokensTool的文档站!`\n });\n }\n });\n show_4.value = true;\n loginPassword.value = \"\";\n loginUsername.value = \"\";\n }\n };\n const getSelectedData = () => {\n const selectedData = multipleSelection.value;\n if (selectedData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n } else {\n show_9.value = true;\n }\n };\n const addSelectPoolToken = async () => {\n try {\n const selectedData = multipleSelection.value;\n const names = selectedData.map(userData => userData.name);\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n if (addPoolModel_mapping.value == \"\") {\n addPoolModel_mapping.value = \"{}\";\n }\n JSON.parse(addPoolModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const addPoolToken = {\n poolName: poolNameValue.value,\n intoOneApi: intoOneApi.value,\n poolOneApi_models: addPoolOneApi_models.value.toString(),\n poolModel_mapping: addPoolModel_mapping.value,\n oneApi_pandoraUrl: oneApi_pandoraUrl.value,\n shareTokens: names,\n groupChecked: groupChecked.value.toString(),\n priority: priority.value\n };\n const response = await fetch(`${prefix}/api/addPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addPoolToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n poolNameValue.value = \"\";\n getPool(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n poolNameValue.value = \"\";\n intoOneApi.value = false;\n poolModel_mapping.value = \"\";\n poolOneApi_models.value = [];\n groupChecked.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n loadingInstance.close();\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消生成pool_token\"\n });\n }\n show_9.value = false;\n };\n const handlePoolNameChange = poolNameValue => {\n let selectedItem = poolData.value.find(item => item.poolName === poolNameValue);\n if (selectedItem != null) {\n temPool_token.value = selectedItem.poolToken;\n intoOneApi.value = selectedItem.intoOneApi;\n poolOneApi_models.value = selectedItem.poolOneApi_models.split(\",\");\n poolModel_mapping.value = selectedItem.poolModel_mapping;\n oneApi_pandoraUrl.value = selectedItem.oneApi_pandoraUrl;\n temGroupChecked.value = selectedItem.groupChecked.split(\",\");\n priority.value = selectedItem.priority;\n }\n };\n const handleShareNameChange = addToken_name => {\n let selectedItem = tableData.value.find(item => item.name === addToken_name && item.setPoolToken === true);\n };\n const filteredTableData = computed(() => {\n return tableData.value.filter(item => item.setPoolToken === true);\n });\n const requirePoolToken = async () => {\n try {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n if (poolModel_mapping.value == \"\") {\n poolModel_mapping.value = \"{}\";\n }\n JSON.parse(poolModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const selectedData = multipleSelection.value;\n const names = selectedData.map(userData => userData.name);\n const addPoolToken = {\n poolName: poolName.value,\n poolToken: temPool_token.value,\n intoOneApi: intoOneApi.value,\n poolOneApi_models: poolOneApi_models.value.toString(),\n poolModel_mapping: poolModel_mapping.value,\n oneApi_pandoraUrl: oneApi_pandoraUrl.value,\n shareTokens: names,\n groupChecked: temGroupChecked.value.toString(),\n priority: priority.value\n };\n console.log(addPoolToken);\n const response = await fetch(`${prefix}/api/requirePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addPoolToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n getPool(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n poolName.value = \"\";\n temPool_token.value = \"\";\n intoOneApi.value = false;\n poolOneApi_models.value = [];\n poolModel_mapping.value = \"\";\n groupChecked.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n loadingInstance.close();\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消修改pool_token\"\n });\n }\n show_11.value = false;\n };\n const addShareToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n try {\n if (addModel_mapping.value == \"\") {\n addModel_mapping.value = \"{}\";\n }\n JSON.parse(addModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const addShareToken = {\n oneApi_name: addOneApi_name.value,\n token_name: addToken_name.value,\n oneApi_baseUrl: addOneApi_baseUrl.value,\n oneApi_models: addOneApi_models.value.toString(),\n model_mapping: addModel_mapping.value,\n oneApi_groups: addOneApi_groups.value.toString(),\n priority: priority.value\n };\n const response = await fetch(`${prefix}/api/addShareToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addShareToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n getShare(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n addOneApi_name.value = \"\";\n addToken_name.value = \"\";\n addOneApi_baseUrl.value = \"\";\n addOneApi_models.value = [];\n addModel_mapping.value = \"\";\n addOneApi_groups.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消修改pool_token\"\n });\n }\n show_14.value = false;\n loadingInstance.close();\n };\n const pandoraUsage = ref(\"\");\n // 在组件加载完成后自动触发数据加载和填充\n onMounted(async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n // 页面重定向\n fetchLoginToken();\n if (window.innerWidth <= 900) {\n router.replace(\"/iphone\");\n } else {\n router.replace(\"/home\");\n }\n try {\n // 并行执行不依赖的函数\n await Promise.all([onSearch(value.value), getPool(value.value), getSetting(value.value)]);\n // 等待获取 Pandora 数据\n const response = await axios.get(`${prefix}/api/getPandoraNext`, {\n headers\n });\n const data = response.data.data;\n if (data != null) {\n pandoraUsage.value = `${data.current}/${data.total}`;\n }\n } catch (error) {\n console.error(\"An error occurred:\", error);\n // 这里可以添加错误处理逻辑\n } finally {\n loadingInstance.close();\n }\n });\n //用来警告session过期\n const tableRowClassName = ({\n row\n }) => {\n if (row.checkSession == false) {\n return \"warning-row\";\n }\n return \"\";\n };\n const poolRowClassName = ({\n row\n }) => {\n if (row.checkPool == false) {\n return \"warning-row\";\n }\n return \"\";\n };\n /**\r\n * 跳转到PandoraNext\r\n */\n const redirectToExternalLink = () => {\n window.open(pandoraNext_outUrl.value);\n };\n /**\r\n * 跳转到PandoraNext分享页\r\n */\n const redirectPandoraNextShare = () => {\n var url = pandoraNext_outUrl.value;\n // 检查最后一个字符是否是 /\n if (url.charAt(url.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n url += \"/\";\n }\n window.open(url + \"shared.html\");\n };\n /**\r\n * 跳转到PandoraNext\r\n */\n const requirePandoraNextLink = () => {\n var url = pandoraNext_outUrl.value;\n // 检查最后一个字符是否是 /\n if (url.charAt(url.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n url += \"/\";\n }\n window.open(url + \"setup\");\n };\n /**\r\n * 跳转到tokensTool使用说明\r\n */\n const requireTokensToolLink = () => {\n window.open(\"https://apifox.com/apidoc/shared-40345b46-9c9c-45cc-b494-6a6a387a978f\");\n };\n /**\r\n * 用于用户信息设置\r\n */\n const activeIndex = ref(\"-1\");\n let temRequireToken = \"\";\n const handleSelect = (key, keyPath) => {\n console.log(\"选择准备!\");\n };\n /**\r\n * 添加token开启函数\r\n * 类user\r\n */\n const addToken = () => {\n show_1.value = true;\n };\n /**\r\n * 添加token函数\r\n * 类user\r\n */\n const onAddToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const now = new Date();\n const formattedTime = `${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, \"0\")}-${now.getDate().toString().padStart(2, \"0\")} ${now.getHours().toString().padStart(2, \"0\")}:${now.getMinutes().toString().padStart(2, \"0\")}:${now.getSeconds().toString().padStart(2, \"0\")}`;\n if (addPassword.value != \"\") {\n addShared.value = false;\n addPlus.value = false;\n addShow_user_info.value = false;\n }\n if (addSetPoolToken.value == false) {\n addTokenValue.value = addUsername.value + \",\" + addUserPassword.value;\n addUseRefreshToken.value = false;\n addShared.value = false;\n addPlus.value = false;\n addShow_user_info.value = false;\n }\n let api = {\n name: addName.value,\n token: addTokenValue.value,\n username: addUsername.value,\n userPassword: addUserPassword.value,\n shared: addShared.value,\n auto_shared: addShared.value,\n show_user_info: addShow_user_info.value,\n plus: addPlus.value,\n setPoolToken: addSetPoolToken.value,\n useRefreshToken: addUseRefreshToken.value,\n password: addPassword.value,\n updateTime: formattedTime\n };\n fetch(`${prefix}/api/addToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(api)\n }).then(response => response.json()) // 将 .json() 放在正确的位置\n .then(data => {\n if (data.code == 1) {\n ElMessage.success(\"添加成功!\");\n addName.value = \"\";\n addTokenValue.value = \"\";\n addUsername.value = \"\";\n addUserPassword.value = \"\";\n addShared.value = false;\n addShow_user_info.value = false;\n addPlus.value = false;\n addSetPoolToken.value = false;\n addUseRefreshToken.value = false;\n addPassword.value = \"\";\n if (api.token == \"\") {\n api.token = data.data;\n ElMessage.success(\"已为您自动装填token!\");\n }\n } else {\n ElMessage.error(data.msg);\n }\n addPassword.value = \"\";\n getToken(\"\");\n loadingInstance.close();\n }).catch(error => {\n ElMessage.error(\"获取账号出现问题,请检查刷新网址是否正确!\");\n loadingInstance.close();\n });\n show_1.value = false;\n };\n /**\r\n * 展示token函数\r\n * 类user\r\n */\n const chart_show = ref(null);\n const showData = async row => {\n temName.value = row.name;\n temUsername.value = row.username;\n temUserPassword.value = row.userPassword;\n temToken.value = row.token;\n temAccessToken.value = row.access_token;\n temShareToken.value = row.share_token;\n temShared.value = row.shared;\n temShow_user_info.value = row.show_user_info;\n temPlus.value = row.plus;\n temPassword.value = row.password;\n setPoolToken.value = row.setPoolToken;\n useRefreshToken.value = row.useRefreshToken;\n temCheckSession.value = row.checkSession;\n if (setPoolToken.value != true) {\n show_2.value = true;\n return;\n }\n const usageHeader = {\n Authorization: `Bearer ${row.access_token}`\n };\n show_2.value = true;\n if (setPoolToken.value) {\n const response = await axios.get(`${oneApi_pandoraUrl.value}/api/token/info/${row.share_token}`, {\n headers: usageHeader\n });\n let usageData = [];\n let modelData = [];\n for (let key in response.data.usage) {\n if (!key.startsWith(\"range\")) {\n modelData.push(key);\n usageData.push(response.data.usage[key]);\n }\n }\n if (modelData.length == 0 && usageData.length == 0) {\n modelData = [\"gpt-4\", \"gpt-3.5-turbo\", \"gpt-3.5-turbo-0613\"];\n usageData = [0, 0, 0];\n }\n const myChart_show = echarts.init(chart_show.value);\n const option = {\n title: {\n text: `今日${response.data.usage[\"range\"]} ${temName.value}各模型用量`,\n textStyle: {\n // 调整字体大小\n fontSize: 14,\n color: \"#606266\" // 这里是深灰色,你可以根据需要更改颜色\n },\n\n // 设置标题位置\n left: \"center\",\n top: \"bottom\" // 放在底部\n },\n\n tooltip: {},\n legend: {\n data: modelData\n },\n xAxis: {\n data: modelData\n },\n yAxis: {},\n series: [{\n name: \"对话数量\",\n type: \"bar\",\n data: usageData,\n barWidth: \"25%\",\n itemStyle: {\n color: function (params) {\n const colorList = [\"#3498db\", \"#2ecc71\", \"#f1c40f\", \"#9b59b6\", \"#1abc9c\", \"#e67e22\", \"#ecf0f1\", \"#95a5a6\", \"#34495e\", \"#16a085\"];\n return colorList[params.dataIndex % colorList.length];\n }\n }\n }]\n };\n myChart_show.setOption(option);\n }\n };\n const oneApi_name = ref(\"\");\n const token_name = ref(\"\");\n const token_value = ref(\"\");\n const oneApi_baseUrl = ref(\"\");\n const oneApi_models = ref([]);\n const model_mapping = ref(\"\");\n const temOneApi_models = ref(\"\");\n const temOneApi_groups = ref(\"\");\n const oneApi_groups = ref([\"default\", \"svip\", \"vip\"]);\n const shareTime = ref(\"\");\n const showShareToken = row => {\n oneApi_name.value = row.oneApi_name;\n token_name.value = row.token_name;\n token_value.value = row.token_value;\n oneApi_baseUrl.value = row.oneApi_baseUrl;\n temOneApi_models.value = row.oneApi_models;\n model_mapping.value = row.model_mapping;\n temOneApi_groups.value = row.oneApi_groups;\n priority.value = row.priority;\n shareTime.value = row.shareTime;\n show_15.value = true;\n };\n let previousSetpoolToken = false;\n let previousUseRefreshToken = false;\n let previousToken = \"\";\n //编辑准备\n const handleEdit = (index, row) => {\n temName.value = row.name;\n temUsername.value = row.username;\n temUserPassword.value = row.userPassword;\n //用来判断token是否更改\n temToken.value = row.token;\n temRequireToken = row.token;\n temShared.value = row.shared;\n temShow_user_info.value = row.show_user_info;\n temPlus.value = row.plus;\n temPassword.value = row.password;\n setPoolToken.value = row.setPoolToken;\n useRefreshToken.value = row.useRefreshToken;\n previousSetpoolToken = setPoolToken.value;\n previousUseRefreshToken = useRefreshToken.value;\n previousToken = temToken.value;\n temCheckSession.value = row.checkSession;\n temAccessToken.value = row.access_token;\n temShareToken.value = row.share_token;\n show.value = true;\n };\n /**\r\n * 修改系统设置函数\r\n */\n const onRequireSetting = async value => {\n if (value == 0) {\n show_3.value = true;\n } else if (value == 1) {\n show_4.value = true;\n } else if (value == 2) {\n show_5.value = true;\n }\n };\n const RequireSetting = value => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n if (whitelist.value == null || whitelist.value == \"null\") {\n whitelist.value = \"\";\n }\n if (enabled.value == false) {\n cert_file.value = \"\";\n key_file.value = \"\";\n }\n const tls = {\n enabled: enabled.value,\n cert_file: cert_file.value,\n key_file: key_file.value\n };\n const validation = {\n provider: provider.value,\n site_key: site_key.value,\n site_secret: site_secret.value,\n site_login: site_login.value,\n setup_login: setup_login.value,\n oai_username: oai_username.value,\n oai_password: oai_password.value\n };\n const setting = {\n proxy_api_prefix: proxy_api_prefix.value,\n isolated_conv_title: isolated_conv_title.value,\n bing: bing.value,\n timeout: timeout.value,\n proxy_url: proxy_url.value,\n public_share: public_share.value,\n site_password: site_password.value,\n setup_password: setup_password.value,\n loginUsername: loginUsername.value,\n loginPassword: loginPassword.value,\n license_id: license_id.value,\n //0.4.9.2\n disable_signup: disable_signup.value,\n auto_conv_arkose: auto_conv_arkose.value,\n proxy_file_service: proxy_file_service.value,\n custom_doh_host: custom_doh_host.value,\n //0.4.8.2\n isGetToken: isGetToken.value,\n getTokenPassword: getTokenPassword.value,\n containerName: containerName.value,\n autoToken_url: autoToken_url.value,\n whitelist: whitelist.value,\n validation: validation,\n tls: tls\n };\n fetch(`${prefix}/api/requireSetting`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(setting)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n } else {\n ElMessage.error(data.msg);\n }\n fetchLoginToken();\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求requireSetting接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n if (value == 0) {\n show_3.value = false;\n } else if (value == 1) {\n show_4.value = false;\n } else if (value == 2) {\n show_5.value = false;\n }\n };\n const RequireAutoUpdate = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n // 检查最后一个字符是否是 /\n if (pandoraNext_outUrl.value.charAt(pandoraNext_outUrl.value.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n pandoraNext_outUrl.value += \"/\";\n }\n const setting = {\n auto_updateSession: auto_updateSession.value,\n auto_updateTime: auto_updateTime.value,\n auto_updateNumber: auto_updateNumber.value,\n pandoraNext_outUrl: pandoraNext_outUrl.value,\n oneAPi_outUrl: oneAPi_outUrl.value,\n oneAPi_intoToken: oneAPi_intoToken.value\n };\n fetch(`${prefix}/api/controllerTask`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(setting)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n } else {\n ElMessage.error(data.msg);\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求controllerTask接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n show_8.value = false;\n };\n /**\r\n * 修改token函数\r\n * 类user\r\n */\n const RequireToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let formattedTime = \"\";\n if (temRequireToken != temToken.value) {\n const now = new Date();\n formattedTime = `${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, \"0\")}-${now.getDate().toString().padStart(2, \"0\")} ${now.getHours().toString().padStart(2, \"0\")}:${now.getMinutes().toString().padStart(2, \"0\")}:${now.getSeconds().toString().padStart(2, \"0\")}`;\n }\n if (setPoolToken.value == false) {\n temShared.value = false;\n temPlus.value = false;\n temShow_user_info.value = false;\n useRefreshToken.value = false;\n }\n if (temShared.value === true) {\n temPassword.value = \"\";\n } else {\n temPlus.value = false;\n temShow_user_info.value = false;\n }\n let msg = \"\";\n if (previousSetpoolToken != setPoolToken.value && previousToken == temToken.value) {\n if (setPoolToken.value == false) {\n msg = \"您确定要关闭API模型开启web模式,您将无法生成任何的token,但不消耗额度!\";\n } else {\n if (useRefreshToken.value == true) {\n msg = \"您确定要开启API模式,并使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!\";\n } else {\n msg = \"您确定要开启API模式,并使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!\";\n }\n }\n } else if (previousUseRefreshToken != useRefreshToken.value && previousToken == temToken.value) {\n if (useRefreshToken.value == true) {\n msg = \"您确定要切换使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!\";\n } else {\n msg = \"您确定要切换使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!\";\n }\n } else {\n msg = \"修改将要提交,您确定修改好了吗?\";\n }\n ElMessageBox.confirm(msg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const api = {\n name: temName.value,\n token: temToken.value,\n username: temUsername.value,\n userPassword: temUserPassword.value,\n shared: temShared.value,\n auto_shared: temShared.value,\n show_user_info: temShow_user_info.value,\n plus: temPlus.value,\n setPoolToken: setPoolToken.value,\n useRefreshToken: useRefreshToken.value,\n checkSession: temCheckSession.value,\n password: temPassword.value,\n access_token: temAccessToken.value,\n share_token: temShareToken.value\n };\n fetch(`${prefix}/api/requiredToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(api)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n getToken(\"\");\n } else {\n ElMessage.error(data.msg);\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求requireToken接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n show.value = false;\n }).catch(() => {\n loadingInstance.close();\n ElMessage({\n type: \"info\",\n message: \"编辑取消!\"\n });\n return;\n });\n };\n /**\r\n * 开启pandora函数\r\n */\n const openPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/open`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 暂停pandora函数\r\n */\n const closePandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/close`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 重启pandora函数\r\n */\n const AgainPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/restart`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 重载pandora函数\r\n */\n const reloadPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/reload`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 查询pandoraNext余额函数\r\n */\n const pandoraIp = ref(\"\");\n const pandoraTime = ref(\"\");\n const getPandoraNext = async () => {\n const response = await axios.get(`${prefix}/api/getPandoraNext`, {\n headers\n });\n const data = response.data.data;\n if (data != null) {\n pandoraUsage.value = data.current + \"/\" + data.total;\n pandoraIp.value = data.ip;\n var currentTime = new Date();\n const futureTime = new Date(currentTime.getTime() + data.ttl * 1000);\n var year = futureTime.getFullYear();\n var month = futureTime.getMonth() + 1; // 月份是从0开始的,所以要加1\n var day = futureTime.getDate();\n var hours = futureTime.getHours();\n var minutes = futureTime.getMinutes();\n var seconds = futureTime.getSeconds();\n pandoraTime.value = year + \"-\" + month + \"-\" + day + \" \" + hours + \":\" + minutes + \":\" + seconds;\n }\n show_7.value = true;\n };\n /**\r\n * 一键全生成\r\n */\n const updateAllShareToken = async () => {\n let reNewMsg = \"全部检查并生成可能会加载1-3分钟,请您耐心等待!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true,\n text: \"正在加载中,请耐心等待...\"\n });\n const response = await axios.get(`${prefix}/api/updateAllToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n await Promise.all([getToken(\"\"), getPool(\"\")]);\n ElMessageBox.alert(data, \"温馨提示\", {\n dangerouslyUseHTMLString: true\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"全部检查并生成取消!\"\n });\n });\n };\n /**\r\n * 一键全刷新pool_token\r\n */\n const updateAllPoolToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/updateAllPoolToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n getPool(\"\");\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 一键全检查pool_token\r\n */\n const verifyAllPoolToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`${prefix}/api/verifyAllPoolToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n getPool(\"\");\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 刷新Token函数\r\n */\n const reNew = row => {\n if (row.setPoolToken == false) {\n ElMessage.error(\"未开启API模式,无法刷新\");\n return;\n }\n let reNewMsg = \"您确定要刷新session_token吗,刷新session_token消耗100额度,请您要仔细认真考虑哦!\";\n if (row.useRefreshToken) {\n reNewMsg = \"您确定要刷新refresh_token吗,刷新refresh_token消耗1000额度,请您要仔细认真考虑哦!\";\n }\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/updateSessionToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n row.token = data.data;\n getToken(\"\");\n ElMessageBox.alert(\"刷新成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n };\n /**\r\n * 刷新Token函数\r\n */\n const reNewPool = row => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/refreshSimplyPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(\"刷新成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n const reviewShare = row => {\n oneApi_name.value = row.oneApi_name;\n token_name.value = row.token_name;\n token_value.value = row.token_value;\n oneApi_baseUrl.value = row.oneApi_baseUrl;\n oneApi_models.value = row.oneApi_models.split(\",\");\n model_mapping.value = row.model_mapping;\n oneApi_groups.value = row.oneApi_groups.split(\",\");\n priority.value = row.priority;\n shareTime.value = row.shareTime;\n show_16.value = true;\n };\n const requireShareToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const requireShare = {\n oneApi_name: oneApi_name.value,\n token_name: token_name.value,\n token_value: token_value.value,\n oneApi_baseUrl: oneApi_baseUrl.value,\n oneApi_models: oneApi_models.value.toString(),\n model_mapping: model_mapping.value,\n oneApi_groups: oneApi_groups.value.toString(),\n priority: priority.value\n };\n fetch(`${prefix}/api/requireShareToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(requireShare)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n getShare(\"\");\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n show_16.value = false;\n };\n /**\r\n * 生成token操作\r\n */\n const review = row => {\n if (row.setPoolToken == false) {\n ElMessage.error(\"未开启API模式,无法生成\");\n return;\n }\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/updateToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n ElMessageBox.alert(\"生成shareToken成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n getToken(\"\");\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 更新token操作\r\n */\n const reviewPool = row => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/changePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(\"更换pool_token成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 删除PoolToken函数\r\n * 参数 Pool\r\n */\n const deletePoolToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个Pool_Token吗,删除之后就找不到咯,请您要仔细认真考虑哦!\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n fetch(`${prefix}/api/deletePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data.data != null) {\n getPool(\"\");\n ElMessage.success(data.data);\n loadingInstance.close();\n } else {\n getPool(\"\");\n ElMessage.error(data.msg);\n loadingInstance.close();\n }\n show_9.value = false;\n }).catch(error => {\n // 处理完成失败的逻辑\n console.error(\"删除失败\", error);\n getPool(\"\");\n loadingInstance.close();\n show_9.value = false;\n });\n }).catch(() => {\n loadingInstance.close();\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n });\n };\n /**\r\n * 删除PoolToken函数\r\n * 参数 Pool\r\n */\n const verifySimplyPoolToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/verifySimplyPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n getPool(\"\");\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 删除Token函数\r\n * 参数 user\r\n */\n const deleteToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个Token吗,删除之后就找不到咯,记得点击全部刷新poolToken\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`${prefix}/api/deleteToken`, row, {\n headers\n }).then(async response => {\n if (row.setPoolToken == true) {\n await axios.get(`${prefix}/api/updateAllPoolToken`, {\n headers\n });\n }\n msg = response.data.data;\n getToken(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n };\n /**\r\n * 删除Token函数\r\n * 参数 user\r\n */\n const deleteShareToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个share_Token吗,删除之后就找不到咯\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`${prefix}/api/deleteShareToken`, row, {\n headers\n }).then(async response => {\n msg = response.data.data;\n getShare(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n };\n /**\r\n * 获取token的过期时间\r\n */\n const formatDate = value => {\n if (!value) return \"\";\n var nowDay = new Date();\n const timeDay = parseISO(value.updateTime);\n const daysDiff = differenceInDays(nowDay, timeDay);\n if (value.token.length >= 2000) {\n return daysDiff >= 80 ? \"已经过去了至少80天\" : Math.ceil(80 - daysDiff) + \"天\";\n } else if (value.token.length < 200 && !value.token.includes(\"fk-\")) {\n return \"永久\";\n } else {\n return daysDiff >= 10 ? \"已经过去了至少10天\" : Math.ceil(10 - daysDiff) + \"天\";\n }\n };\n /**\r\n * 更改Token显示操作\r\n */\n const dataToken = value => {\n return value.substring(0, 30) + \"...\";\n };\n /**\r\n * 退出登录操作\r\n */\n const logout = () => {\n // 删除本地存储的 token\n localStorage.removeItem(\"jwtToken\");\n // 使用 Vue Router 进行页面跳转到登录页面\n router.replace(`/`);\n };\n const getPoolToken = () => {\n show_6.value = true;\n };\n const getShareToken = async () => {\n await getShare(\"\");\n show_13.value = true;\n };\n const getLogin = () => {\n getLoginData();\n show_10.value = true;\n };\n const redirectToGitHub = () => {\n window.open(\"https://github.com/Yanyutin753/PandoraNext-TokensTool\");\n };\n const copyToken = value => {\n const textarea = document.createElement(\"textarea\");\n // 设置 textarea 的值为要复制的文本\n textarea.value = value;\n // 将 textarea 添加到 DOM 中\n document.body.appendChild(textarea);\n // 选中 textarea 中的文本\n textarea.select();\n // 执行复制操作\n document.execCommand(\"copy\");\n // 从 DOM 中移除 textarea 元素\n document.body.removeChild(textarea);\n ElMessage({\n type: \"success\",\n message: \"复制成功!\"\n });\n };\n const selectChoice = buttonValue => {\n const selectedData = multipleSelection.value;\n const userData = selectedData.map(userData => userData);\n if (selectedData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n }\n if (buttonValue == \"选中删除Token\") {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这\" + selectedData.length + \"个Token吗,删除之后就找不到咯\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`${prefix}/api/deleteTokenList`, userData, {\n headers\n }).then(async response => {\n await axios.get(`${prefix}/api/updateAllPoolToken`, {\n headers\n });\n msg = response.data.data;\n getToken(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n return;\n } else if (buttonValue == \"选中刷新Token\") {\n let count = 0;\n const selectedData = multipleSelection.value;\n const userData = selectedData.map(userData => userData);\n userData.forEach((item, index) => {\n if (item.setPoolToken) {\n if (item.useRefreshToken) {\n count += 1000;\n } else {\n count += 100;\n }\n }\n });\n const reNewMsg = \"您确定要花\" + count + \"积分刷新这\" + selectedData.length + \"个Token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/updateSessionTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(userData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getToken(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中合成pool_token\") {\n getSelectedData();\n } else if (buttonValue == \"选中修改pool_token\") {\n poolName.value = \"\";\n shareTokens.value = \"\";\n temPool_token.value = \"\";\n poolTime.value = \"\";\n intoOneApi.value = false;\n poolOneApi_models.value = [];\n poolModel_mapping.value = \"\";\n oneApi_pandoraUrl.value = \"\";\n groupChecked.value = [];\n priority.value = 0;\n show_11.value = true;\n }\n };\n const showPool = row => {\n temPoolName.value = row.poolName;\n shareTokens.value = row.shareTokens;\n temPool_token.value = row.poolToken;\n poolTime.value = row.poolTime;\n intoOneApi.value = row.intoOneApi;\n poolOneApi_models.value = row.poolOneApi_models.split(\",\");\n poolModel_mapping.value = row.poolModel_mapping;\n oneApi_pandoraUrl.value = row.oneApi_pandoraUrl;\n temGroupChecked.value = row.groupChecked.split(\",\");\n priority.value = row.priority;\n show_17.value = true;\n };\n const selectPoolChoice = buttonValue => {\n const selectedPoolData = multipleSelectionPool.value;\n const temPoolData = selectedPoolData.map(temPoolData => temPoolData);\n if (temPoolData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n }\n if (buttonValue == \"选中检查pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要花\" + count + \"积分检查这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/verifySimplyPoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"检查取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中刷新pool_token\") {\n const reNewMsg = \"您确定要刷新这\" + selectedPoolData.length + \"个pool_token吗?\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/refreshSimplyPoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中更换pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要更换这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/changePoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"更换取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中删除pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要删除这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`${prefix}/api/deletePoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n });\n return;\n }\n };\n const chart = ref(null);\n const getUsage = async () => {\n show_12.value = true;\n const response = await axios.get(`${prefix}/api/modelsUsage`, {\n headers\n });\n let usageData = response.data.data.map(item => item.usage);\n let modelData = response.data.data.map(item => item.model);\n const myChart = echarts.init(chart.value);\n const option = {\n title: {\n text: \"tokensTool每日接口对话统计\",\n fontSize: 18,\n color: \"#606266\" // 这里是深灰色,你可以根据需要更改颜色\n },\n\n tooltip: {},\n legend: {\n data: modelData\n },\n xAxis: {\n data: modelData\n },\n yAxis: {},\n series: [{\n name: \"对话数量\",\n type: \"bar\",\n data: usageData,\n barWidth: \"25%\",\n itemStyle: {\n color: function (params) {\n const colorList = [\"#e74c3c\", \"#3498db\", \"#2ecc71\", \"#f1c40f\", \"#9b59b6\", \"#1abc9c\", \"#e67e22\", \"#ecf0f1\", \"#95a5a6\", \"#34495e\", \"#16a085\"];\n return colorList[params.dataIndex % colorList.length];\n }\n }\n }]\n };\n myChart.setOption(option);\n };\n return (_ctx, _cache) => {\n const _component_el_menu_item = _resolveComponent(\"el-menu-item\");\n const _component_van_icon = _resolveComponent(\"van-icon\");\n const _component_el_sub_menu = _resolveComponent(\"el-sub-menu\");\n const _component_h10 = _resolveComponent(\"h10\");\n const _component_el_menu = _resolveComponent(\"el-menu\");\n const _component_van_button = _resolveComponent(\"van-button\");\n const _component_el_page_header = _resolveComponent(\"el-page-header\");\n const _component_el_radio_button = _resolveComponent(\"el-radio-button\");\n const _component_el_radio_group = _resolveComponent(\"el-radio-group\");\n const _component_van_search = _resolveComponent(\"van-search\");\n const _component_el_table_column = _resolveComponent(\"el-table-column\");\n const _component_el_button = _resolveComponent(\"el-button\");\n const _component_el_tag = _resolveComponent(\"el-tag\");\n const _component_el_popover = _resolveComponent(\"el-popover\");\n const _component_el_option = _resolveComponent(\"el-option\");\n const _component_el_select = _resolveComponent(\"el-select\");\n const _component_el_button_group = _resolveComponent(\"el-button-group\");\n const _component_van_field = _resolveComponent(\"van-field\");\n const _component_van_switch = _resolveComponent(\"van-switch\");\n const _component_van_cell_group = _resolveComponent(\"van-cell-group\");\n const _component_van_form = _resolveComponent(\"van-form\");\n const _component_van_dialog = _resolveComponent(\"van-dialog\");\n const _component_CopyDocument = _resolveComponent(\"CopyDocument\");\n const _component_el_icon = _resolveComponent(\"el-icon\");\n const _component_el_select_group = _resolveComponent(\"el-select-group\");\n const _component_el_dialog = _resolveComponent(\"el-dialog\");\n const _component_el_form_item = _resolveComponent(\"el-form-item\");\n const _component_el_input = _resolveComponent(\"el-input\");\n const _component_van_checkbox = _resolveComponent(\"van-checkbox\");\n const _component_van_checkbox_group = _resolveComponent(\"van-checkbox-group\");\n const _directive_loading = _resolveDirective(\"loading\");\n return _openBlock(), _createElementBlock(_Fragment, null, [_createElementVNode(\"div\", _hoisted_1, [_hoisted_2, _createVNode(_component_el_menu, {\n \"default-active\": activeIndex.value,\n class: \"el-menu-demo\",\n mode: \"horizontal\",\n ellipsis: false,\n onSelect: handleSelect,\n \"active-text-color\": \"#0ea27e\",\n \"text-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_menu_item, null, {\n default: _withCtx(() => [_createElementVNode(\"img\", {\n style: {\n \"width\": \"40px\"\n },\n src: _imports_0,\n alt: \"Element logo\",\n onClick: redirectToGitHub\n })]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n onClick: getPandoraNext\n }, {\n title: _withCtx(() => [_createElementVNode(\"div\", _hoisted_3, [_createElementVNode(\"h2\", null, _toDisplayString(pandoraUsage.value), 1)]), _createVNode(_component_van_icon, {\n name: \"replay\",\n size: \"20\"\n })]),\n _: 1\n }), _hoisted_4, _createVNode(_component_el_menu_item, {\n index: \"1\",\n onClick: getPoolToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"pool_token列表\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2\",\n onClick: getShareToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"share_token列表\")]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"3\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"跳转Web服务\")]),\n default: _withCtx(() => [_createVNode(_component_el_sub_menu, {\n index: \"3-1\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"跳转PandoraWeb服务\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"3-1-1\",\n onClick: redirectToExternalLink\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"主页\", 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-1-2\",\n onClick: redirectPandoraNextShare\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"共享页\", 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-1-3\",\n onClick: requirePandoraNextLink\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"修改页\", 1)]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"3-2\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"获取token地址\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"3-2-1\"\n }, {\n default: _withCtx(() => [_hoisted_5]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-2-2\"\n }, {\n default: _withCtx(() => [_hoisted_6]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-2-3\"\n }, {\n default: _withCtx(() => [_hoisted_7]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-3\",\n onClick: requireTokensToolLink\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool使用说明\")]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"5\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"系统设置\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"5-1\",\n onClick: _cache[0] || (_cache[0] = $event => onRequireSetting(pandoraNext))\n }, {\n default: _withCtx(() => [_createTextVNode(\"PandoraNext设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"5-2\",\n onClick: _cache[1] || (_cache[1] = $event => onRequireSetting(tokensTool))\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"5-3\",\n onClick: _cache[2] || (_cache[2] = $event => onRequireSetting(validation))\n }, {\n default: _withCtx(() => [_createTextVNode(\"验证码信息设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"5-3\",\n onClick: _cache[3] || (_cache[3] = $event => show_8.value = true)\n }, {\n default: _withCtx(() => [_createTextVNode(\"定时&接口设置\")]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"6\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"系统功能\")]),\n default: _withCtx(() => [_createVNode(_component_el_sub_menu, {\n index: \"6-1\"\n }, {\n title: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"状态\", 1)]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"6-1-1\",\n onClick: openPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"开启\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-1-2\",\n onClick: closePandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"暂停\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-1-3\",\n onClick: AgainPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"重启\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-1-4\",\n onClick: reloadPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"重载\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-3\",\n onClick: getUsage\n }, {\n default: _withCtx(() => [_createTextVNode(\"copilot每日用量统计\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-2\",\n onClick: getLogin\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool登录日志\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-4\",\n onClick: logout\n }, {\n default: _withCtx(() => [_createVNode(_component_h10, {\n style: {\n \"font-size\": \"14px\"\n }\n }, {\n default: _withCtx(() => [_createTextVNode(\"退出登录\")]),\n _: 1\n })]),\n _: 1\n })]),\n _: 1\n })]),\n _: 1\n }, 8, [\"default-active\"]), _createElementVNode(\"div\", _hoisted_8, [_createElementVNode(\"div\", _hoisted_9, [_createVNode(_component_el_page_header, {\n icon: null,\n title: \" \"\n }, {\n content: _withCtx(() => [_hoisted_10]),\n extra: _withCtx(() => [_createElementVNode(\"div\", {\n class: \"addToken\",\n onClick: addToken\n }, [_createVNode(_component_van_button, {\n square: \"\",\n icon: \"add-o\",\n color: \"#0ea27e\",\n class: \"addTokenButton\"\n })])]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_11, [_createElementVNode(\"div\", _hoisted_12, [_createVNode(_component_van_search, {\n modelValue: value.value,\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = $event => value.value = $event),\n \"show-action\": \"\",\n shape: \"round\",\n clearable: \"\",\n placeholder: \"请输入搜索token名称和类型\",\n onSearch: onSearch\n }, {\n action: _withCtx(() => [_createVNode(_component_el_radio_group, {\n modelValue: size.value,\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = $event => size.value = $event),\n label: \"size control\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_radio_button, {\n type: \"success\",\n plain: \"\",\n label: \"WEB\",\n onClick: _cache[4] || (_cache[4] = $event => getWebToken(value.value))\n }, {\n default: _withCtx(() => [_createTextVNode(\"WEB\")]),\n _: 1\n }), _createVNode(_component_el_radio_button, {\n type: \"success\",\n plain: \"\",\n label: \"ALL\",\n onClick: _cache[5] || (_cache[5] = $event => getToken(value.value))\n }, {\n default: _withCtx(() => [_createTextVNode(\"ALL\")]),\n _: 1\n }), _createVNode(_component_el_radio_button, {\n type: \"success\",\n plain: \"\",\n label: \"API\",\n onClick: _cache[6] || (_cache[6] = $event => getAPIToken(value.value))\n }, {\n default: _withCtx(() => [_createTextVNode(\"API\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }, 8, [\"modelValue\"])]), _createElementVNode(\"div\", _hoisted_13, [_withDirectives((_openBlock(), _createBlock(_unref(ElTable), {\n data: tableData.value,\n style: {\n \"width\": \"100%\"\n },\n onSelectionChange: handleSelectionChange,\n ref_key: \"multipleTableRef\",\n ref: multipleTableRef,\n \"default-sort\": {\n prop: 'updateTime',\n prop: 'setPoolToken'\n },\n \"row-class-name\": tableRowClassName\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n type: \"selection\",\n width: \"45\"\n }), _createVNode(_component_el_table_column, {\n label: \"名称\",\n prop: \"setPoolToken\",\n sortable: \"\",\n \"min-width\": \"136\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_14, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"h5\", null, _toDisplayString(scope.row.setPoolToken ? scope.row.useRefreshToken ? \"refAPI\" : \"sesAPI\" : \"Web\"), 1)]),\n _: 2\n }, 1024), _createElementVNode(\"span\", _hoisted_15, _toDisplayString(scope.row.name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"账号信息\",\n \"min-width\": \"200\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", null, \"账号: \" + _toDisplayString(scope.row.username), 1), _createElementVNode(\"div\", null, \"密码: \" + _toDisplayString(scope.row.userPassword), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(scope.row.username), 1)]),\n _: 2\n }, 1024)]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"Token值\",\n \"min-width\": \"270\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", null, \"token: \" + _toDisplayString(dataToken(scope.row.token)), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(dataToken(scope.row.token)), 1)]),\n _: 2\n }, 1024)]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n prop: \"updateTime\",\n sortable: \"\",\n label: \"有效时间\",\n \"min-width\": \"167\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", null, \"注册时间:\" + _toDisplayString(scope.row.updateTime), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(\"距离过期还有:\" + _toDisplayString(formatDate(scope.row)), 1)]),\n _: 2\n }, 1024)]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n width: \"335\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => handleEdit(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"编辑\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => showData(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deleteToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"success\",\n onClick: $event => reNew(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"刷新\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"warning\",\n onClick: $event => review(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"生成\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"])), [[_directive_loading, _ctx.loading]])]), _createElementVNode(\"div\", _hoisted_16, [_createVNode(_component_el_select, {\n modelValue: buttonValue.value,\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = $event => buttonValue.value = $event),\n clearable: \"\",\n filterable: \"\",\n placeholder: \"请选择批量操作\",\n class: \"ml-4\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(options, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonValue,\n label: item.label,\n value: item.buttonValue\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_button, {\n class: \"ml-4\",\n onClick: _cache[10] || (_cache[10] = $event => selectChoice(buttonValue.value))\n }, {\n default: _withCtx(() => [_hoisted_17]),\n _: 1\n }), _createVNode(_component_el_button_group, {\n class: \"my-button\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_button, {\n onClick: updateAllShareToken\n }, {\n default: _withCtx(() => [_hoisted_18]),\n _: 1\n })]),\n _: 1\n })])]), _hoisted_19, _hoisted_20, _hoisted_21])]), _createVNode(_component_van_dialog, {\n show: show.value,\n \"onUpdate:show\": _cache[21] || (_cache[21] = $event => show.value = $event),\n title: \"📌修改token信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_22, [_createVNode(_component_van_form, {\n onSubmit: _cache[20] || (_cache[20] = $event => RequireToken())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_23, _createVNode(_component_van_field, {\n modelValue: temUsername.value,\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = $event => temUsername.value = $event),\n name: \"OpenAi邮箱\",\n label: \"OpenAi邮箱\",\n placeholder: \"OpenAi邮箱\",\n rules: [{\n required: true,\n message: '请填写OpenAi邮箱'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_24, _createVNode(_component_van_field, {\n modelValue: temUserPassword.value,\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = $event => temUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n rules: [{\n required: true,\n message: '请填写OpenAi密码'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_25, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: setPoolToken.value,\n \"onUpdate:modelValue\": _cache[13] || (_cache[13] = $event => setPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_26, [_hoisted_27, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refreshToken\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: useRefreshToken.value,\n \"onUpdate:modelValue\": _cache[14] || (_cache[14] = $event => useRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_28, [_hoisted_29, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temShared.value,\n \"onUpdate:modelValue\": _cache[15] || (_cache[15] = $event => temShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), temShared.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_30, [_hoisted_31, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temShow_user_info.value,\n \"onUpdate:modelValue\": _cache[16] || (_cache[16] = $event => temShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_32, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temPlus.value,\n \"onUpdate:modelValue\": _cache[17] || (_cache[17] = $event => temPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true)])) : _createCommentVNode(\"\", true), temShared.value == false || setPoolToken.value == false ? (_openBlock(), _createElementBlock(\"div\", _hoisted_33, [_hoisted_34, _createVNode(_component_van_field, {\n modelValue: temPassword.value,\n \"onUpdate:modelValue\": _cache[18] || (_cache[18] = $event => temPassword.value = $event),\n name: \"进入Token的密码\",\n label: \"进入Token的密码\",\n placeholder: \"填了将不会分享给他人!\",\n rules: [{\n validator: addPasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), _hoisted_35, _createVNode(_component_van_field, {\n modelValue: temToken.value,\n \"onUpdate:modelValue\": _cache[19] || (_cache[19] = $event => temToken.value = $event),\n label: \"Token的值\",\n type: \"textarea\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的Token(选填),session或refresh_token\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n \"show-word-limit\": \"\"\n }, null, 8, [\"modelValue\"]), _hoisted_36]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_37, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_38]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_1.value,\n \"onUpdate:show\": _cache[33] || (_cache[33] = $event => show_1.value = $event),\n title: \"✨添加token信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"addTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_39, [_createVNode(_component_van_form, {\n onSubmit: _cache[32] || (_cache[32] = $event => onAddToken())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_40, _createVNode(_component_van_field, {\n modelValue: addName.value,\n \"onUpdate:modelValue\": _cache[22] || (_cache[22] = $event => addName.value = $event),\n name: \"Token用户名\",\n label: \"Token用户名\",\n placeholder: \"Token用户名\",\n rules: [{\n required: true,\n message: '请填写Token用户名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_41, _createVNode(_component_van_field, {\n modelValue: addUsername.value,\n \"onUpdate:modelValue\": _cache[23] || (_cache[23] = $event => addUsername.value = $event),\n name: \"OpenAi邮箱\",\n label: \"OpenAi邮箱\",\n placeholder: \"OpenAi邮箱\",\n rules: [{\n required: true,\n message: '请填写OpenAi邮箱'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_42, _createVNode(_component_van_field, {\n modelValue: addUserPassword.value,\n \"onUpdate:modelValue\": _cache[24] || (_cache[24] = $event => addUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n rules: [{\n required: true,\n message: '请填写OpenAi密码'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_43, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addSetPoolToken.value,\n \"onUpdate:modelValue\": _cache[25] || (_cache[25] = $event => addSetPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_44, [_hoisted_45, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refreshToken\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addUseRefreshToken.value,\n \"onUpdate:modelValue\": _cache[26] || (_cache[26] = $event => addUseRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_46, [_hoisted_47, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addShared.value,\n \"onUpdate:modelValue\": _cache[27] || (_cache[27] = $event => addShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), addShared.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_48, [_hoisted_49, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addShow_user_info.value,\n \"onUpdate:modelValue\": _cache[28] || (_cache[28] = $event => addShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_50, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addPlus.value,\n \"onUpdate:modelValue\": _cache[29] || (_cache[29] = $event => addPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true)])) : _createCommentVNode(\"\", true), addShared.value == '' ? (_openBlock(), _createElementBlock(\"div\", _hoisted_51, [_hoisted_52, _createVNode(_component_van_field, {\n modelValue: addPassword.value,\n \"onUpdate:modelValue\": _cache[30] || (_cache[30] = $event => addPassword.value = $event),\n name: \"进入Token的密码\",\n label: \"进入Token的密码\",\n placeholder: \"填了将不会分享给他人!\",\n rules: [{\n validator: addPasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_53, [_hoisted_54, _createVNode(_component_van_field, {\n rows: \"3\",\n type: \"textarea\",\n maxlength: \"5000\",\n \"show-word-limit\": \"\",\n modelValue: addTokenValue.value,\n \"onUpdate:modelValue\": _cache[31] || (_cache[31] = $event => addTokenValue.value = $event),\n name: \"Token的值\",\n label: \"Token的值\",\n placeholder: \"选填(可不填,不填则使用账号密码),目前只支持session_token或refresh_token\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_55]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_56, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_57]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_2.value,\n \"onUpdate:show\": _cache[53] || (_cache[53] = $event => show_2.value = $event),\n title: \"🔎token信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"showDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_58, [_createVNode(_component_van_form, null, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_59, _createVNode(_component_van_field, {\n modelValue: temName.value,\n \"onUpdate:modelValue\": _cache[34] || (_cache[34] = $event => temName.value = $event),\n name: \"Token用户名\",\n label: \"Token用户名\",\n placeholder: \"Token用户名\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[35] || (_cache[35] = $event => copyToken(temName.value))\n }, null, 8, [\"modelValue\"]), _hoisted_60, _createVNode(_component_van_field, {\n modelValue: temPassword.value,\n \"onUpdate:modelValue\": _cache[36] || (_cache[36] = $event => temPassword.value = $event),\n type: \"temPassword\",\n name: \"进入Token的密码\",\n label: \"进入Token的密码\",\n placeholder: \"填了将不会分享给他人(如不填则输入Token名即可进入)!\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[37] || (_cache[37] = $event => copyToken(temPassword.value))\n }, null, 8, [\"modelValue\"]), _hoisted_61, _createVNode(_component_van_field, {\n modelValue: temUsername.value,\n \"onUpdate:modelValue\": _cache[38] || (_cache[38] = $event => temUsername.value = $event),\n name: \"OpenAi用户名\",\n label: \"OpenAi用户名\",\n placeholder: \"OpenAi用户名\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[39] || (_cache[39] = $event => copyToken(temUsername.value))\n }, null, 8, [\"modelValue\"]), _hoisted_62, _createVNode(_component_van_field, {\n modelValue: temUserPassword.value,\n \"onUpdate:modelValue\": _cache[40] || (_cache[40] = $event => temUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[41] || (_cache[41] = $event => copyToken(temUserPassword.value))\n }, null, 8, [\"modelValue\"]), _hoisted_63, _createVNode(_component_van_field, {\n name: \"temShared\",\n readonly: true,\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temShared.value,\n \"onUpdate:modelValue\": _cache[42] || (_cache[42] = $event => temShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_64, _createVNode(_component_van_field, {\n readonly: true,\n name: \"temShow_user_info\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temShow_user_info.value,\n \"onUpdate:modelValue\": _cache[43] || (_cache[43] = $event => temShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_65, _createVNode(_component_van_field, {\n readonly: true,\n name: \"temPlus\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temPlus.value,\n \"onUpdate:modelValue\": _cache[44] || (_cache[44] = $event => temPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_66, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: setPoolToken.value,\n \"onUpdate:modelValue\": _cache[45] || (_cache[45] = $event => setPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_67, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refresh_token\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: useRefreshToken.value,\n \"onUpdate:modelValue\": _cache[46] || (_cache[46] = $event => useRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_68, _createVNode(_component_van_field, {\n modelValue: temToken.value,\n \"onUpdate:modelValue\": _cache[47] || (_cache[47] = $event => temToken.value = $event),\n label: \"Token的值\",\n type: \"textarea\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的Token(session或refresh_token)\",\n \"show-word-limit\": \"\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[48] || (_cache[48] = $event => copyToken(temToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"]), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_69, [_hoisted_70, _createVNode(_component_van_field, {\n modelValue: temAccessToken.value,\n \"onUpdate:modelValue\": _cache[49] || (_cache[49] = $event => temAccessToken.value = $event),\n label: \"access_token\",\n type: \"textarea\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的access_token\",\n \"show-word-limit\": \"\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[50] || (_cache[50] = $event => copyToken(temAccessToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"]), _hoisted_71, _createVNode(_component_van_field, {\n modelValue: temShareToken.value,\n \"onUpdate:modelValue\": _cache[51] || (_cache[51] = $event => temShareToken.value = $event),\n label: \"share_token\",\n type: \"textarea\",\n maxlength: \"200\",\n placeholder: \"请填写OpenAi的share_token\",\n \"show-word-limit\": \"\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[52] || (_cache[52] = $event => copyToken(temShareToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true)]),\n _: 1\n })]),\n _: 1\n }), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_72, [_createElementVNode(\"div\", {\n ref_key: \"chart_show\",\n ref: chart_show,\n style: {\n \"width\": \"auto\",\n \"height\": \"300px\"\n }\n }, null, 512), _hoisted_73])) : _createCommentVNode(\"\", true)])]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_3.value,\n \"onUpdate:show\": _cache[68] || (_cache[68] = $event => show_3.value = $event),\n title: \"PandoraNext设置信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requirePandora\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_74, [_createVNode(_component_van_form, {\n onSubmit: _cache[67] || (_cache[67] = $event => RequireSetting(pandoraNext))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_75, _createVNode(_component_van_field, {\n modelValue: isolated_conv_title.value,\n \"onUpdate:modelValue\": _cache[54] || (_cache[54] = $event => isolated_conv_title.value = $event),\n name: \"对话标题\",\n label: \"对话标题\",\n placeholder: \"隔离对话设置标题\"\n }, null, 8, [\"modelValue\"]), _hoisted_76, _createVNode(_component_van_field, {\n modelValue: bing.value,\n \"onUpdate:modelValue\": _cache[55] || (_cache[55] = $event => bing.value = $event),\n name: \"绑定IP和端口\",\n label: \"绑定IP和端口\",\n placeholder: \"绑定IP和端口(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_77, _createVNode(_component_van_field, {\n modelValue: custom_doh_host.value,\n \"onUpdate:modelValue\": _cache[56] || (_cache[56] = $event => custom_doh_host.value = $event),\n name: \"DoH主机名\",\n label: \"DoH主机名\",\n placeholder: \"配置自定义的DoH主机名(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_78, _createVNode(_component_van_field, {\n modelValue: timeout.value,\n \"onUpdate:modelValue\": _cache[57] || (_cache[57] = $event => timeout.value = $event),\n name: \"请求超时时间\",\n label: \"请求超时时间\",\n placeholder: \"请求超时时间(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_79, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享对话(选填)\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: public_share.value,\n \"onUpdate:modelValue\": _cache[58] || (_cache[58] = $event => public_share.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_80, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否配置证书\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: enabled.value,\n \"onUpdate:modelValue\": _cache[59] || (_cache[59] = $event => enabled.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), enabled.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_81, [_hoisted_82, _createVNode(_component_van_field, {\n modelValue: cert_file.value,\n \"onUpdate:modelValue\": _cache[60] || (_cache[60] = $event => cert_file.value = $event),\n name: \"证书文件\",\n label: \"证书文件\",\n placeholder: \"证书文件\"\n }, null, 8, [\"modelValue\"]), _hoisted_83, _createVNode(_component_van_field, {\n modelValue: key_file.value,\n \"onUpdate:modelValue\": _cache[61] || (_cache[61] = $event => key_file.value = $event),\n name: \"密钥文件\",\n label: \"密钥文件\",\n placeholder: \"密钥文件\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_84, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否禁用注册\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: disable_signup.value,\n \"onUpdate:modelValue\": _cache[62] || (_cache[62] = $event => disable_signup.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_85, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否自动打码\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: auto_conv_arkose.value,\n \"onUpdate:modelValue\": _cache[63] || (_cache[63] = $event => auto_conv_arkose.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_86, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"使用文件代理服务\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: proxy_file_service.value,\n \"onUpdate:modelValue\": _cache[64] || (_cache[64] = $event => proxy_file_service.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_87, _createVNode(_component_van_field, {\n modelValue: proxy_url.value,\n \"onUpdate:modelValue\": _cache[65] || (_cache[65] = $event => proxy_url.value = $event),\n name: \"代理服务URL\",\n label: \"代理服务URL\",\n placeholder: \"代理服务URL(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_88, _createVNode(_component_van_field, {\n modelValue: whitelist.value,\n \"onUpdate:modelValue\": _cache[66] || (_cache[66] = $event => whitelist.value = $event),\n name: \"白名单\",\n label: \"白名单\",\n placeholder: \"[]限制所有账号(默认为null)\"\n }, null, 8, [\"modelValue\"]), _hoisted_89]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_90, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_91]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_4.value,\n \"onUpdate:show\": _cache[80] || (_cache[80] = $event => show_4.value = $event),\n title: \"tokensTool设置信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_92, [_createVNode(_component_van_form, {\n onSubmit: _cache[79] || (_cache[79] = $event => RequireSetting(tokensTool))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_93, _createVNode(_component_van_field, {\n modelValue: loginUsername.value,\n \"onUpdate:modelValue\": _cache[69] || (_cache[69] = $event => loginUsername.value = $event),\n name: \"登录用户名\",\n label: \"登录用户名\",\n placeholder: \"tokensTool用户名\"\n }, null, 8, [\"modelValue\"]), _hoisted_94, _createVNode(_component_van_field, {\n modelValue: loginPassword.value,\n \"onUpdate:modelValue\": _cache[70] || (_cache[70] = $event => loginPassword.value = $event),\n name: \"登录密码\",\n label: \"登录密码\",\n placeholder: \"不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_95, _createVNode(_component_van_field, {\n modelValue: proxy_api_prefix.value,\n \"onUpdate:modelValue\": _cache[71] || (_cache[71] = $event => proxy_api_prefix.value = $event),\n name: \"proxy接口前缀\",\n label: \"proxy接口前缀\",\n placeholder: \"proxy模式接口后缀,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_96, _createVNode(_component_van_field, {\n modelValue: autoToken_url.value,\n \"onUpdate:modelValue\": _cache[72] || (_cache[72] = $event => autoToken_url.value = $event),\n name: \"proxy模式URL\",\n label: \"proxy模式URL\",\n placeholder: \"http(s)://(ip:port或者域名)/后缀,同公网服务器填default\"\n }, null, 8, [\"modelValue\"]), _hoisted_97, _createVNode(_component_van_field, {\n modelValue: setup_password.value,\n \"onUpdate:modelValue\": _cache[73] || (_cache[73] = $event => setup_password.value = $event),\n name: \"重载服务密码\",\n label: \"重载服务密码\",\n placeholder: \"PandoraNext重载服务密码,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_98, _createVNode(_component_van_field, {\n modelValue: site_password.value,\n \"onUpdate:modelValue\": _cache[74] || (_cache[74] = $event => site_password.value = $event),\n name: \"访问密码\",\n label: \"访问密码\",\n placeholder: \"PandoraNext访问密码,建议开启访问密码\",\n rules: [{\n validator: sitePasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_99, _createVNode(_component_van_field, {\n modelValue: license_id.value,\n \"onUpdate:modelValue\": _cache[75] || (_cache[75] = $event => license_id.value = $event),\n name: \"验证licenseId\",\n label: \"验证licenseId\",\n placeholder: \"验证licenseId(github上拿到的license_id)\"\n }, null, 8, [\"modelValue\"]), _hoisted_100, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"tokensTool接口\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: isGetToken.value,\n \"onUpdate:modelValue\": _cache[76] || (_cache[76] = $event => isGetToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), isGetToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_101, [_hoisted_102, _createVNode(_component_van_field, {\n modelValue: getTokenPassword.value,\n \"onUpdate:modelValue\": _cache[77] || (_cache[77] = $event => getTokenPassword.value = $event),\n name: \"接口密码\",\n label: \"接口密码\",\n placeholder: \"tokensTool接口密码,用于获取tokens,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), _hoisted_103, _createVNode(_component_van_field, {\n modelValue: containerName.value,\n \"onUpdate:modelValue\": _cache[78] || (_cache[78] = $event => containerName.value = $event),\n name: \"监管容器名\",\n label: \"监管容器名\",\n placeholder: \"监管运行的容器名或文件名,默认为PandoraNext\",\n rules: [{\n required: true,\n message: '请填写监管的容器名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_104]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_105, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_106]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_5.value,\n \"onUpdate:show\": _cache[89] || (_cache[89] = $event => show_5.value = $event),\n title: \"PandoraNext验证信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"verify\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_107, [_createVNode(_component_van_form, {\n onSubmit: _cache[88] || (_cache[88] = $event => RequireSetting(validation))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_108, _createVNode(_component_van_field, {\n modelValue: provider.value,\n \"onUpdate:modelValue\": _cache[81] || (_cache[81] = $event => provider.value = $event),\n name: \"验证码提供商\",\n label: \"验证码提供商\",\n placeholder: \"验证码提供商\"\n }, null, 8, [\"modelValue\"]), _hoisted_109, _createVNode(_component_van_field, {\n modelValue: site_key.value,\n \"onUpdate:modelValue\": _cache[82] || (_cache[82] = $event => site_key.value = $event),\n name: \"验证码网站参数\",\n label: \"验证码网站参数\",\n placeholder: \"验证码网站参数\"\n }, null, 8, [\"modelValue\"]), _hoisted_110, _createVNode(_component_van_field, {\n modelValue: site_secret.value,\n \"onUpdate:modelValue\": _cache[83] || (_cache[83] = $event => site_secret.value = $event),\n name: \"验证码API Key\",\n label: \"验证码API Key\",\n placeholder: \"验证码API Key\"\n }, null, 8, [\"modelValue\"]), _hoisted_111, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否全站密码登录页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: site_login.value,\n \"onUpdate:modelValue\": _cache[84] || (_cache[84] = $event => site_login.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_112, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在设置登录页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: setup_login.value,\n \"onUpdate:modelValue\": _cache[85] || (_cache[85] = $event => setup_login.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_113, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在输入用户名页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: oai_username.value,\n \"onUpdate:modelValue\": _cache[86] || (_cache[86] = $event => oai_username.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_114, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在输入密码页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: oai_password.value,\n \"onUpdate:modelValue\": _cache[87] || (_cache[87] = $event => oai_password.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_115]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_116, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_117]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_el_dialog, {\n modelValue: show_6.value,\n \"onUpdate:modelValue\": _cache[95] || (_cache[95] = $event => show_6.value = $event),\n title: \"pool_token列表\",\n \"align-center\": \"\",\n width: \"78%\",\n \"close-on-click-modal\": false,\n class: \"shareTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_118, [_createVNode(_component_el_icon, {\n onClick: _cache[90] || (_cache[90] = $event => copyToken(pandoraNext_outUrl.value + proxy_api_prefix.value + '/v1/chat/completions'))\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 1\n }), _createVNode(_component_h10, null, {\n default: _withCtx(() => [_createTextVNode(\"API地址:\" + _toDisplayString(pandoraNext_outUrl.value) + _toDisplayString(proxy_api_prefix.value) + \"/v1/chat/completions\", 1)]),\n _: 1\n })]), _createVNode(_unref(ElTable), {\n data: poolData.value,\n \"default-sort\": {\n prop: 'poolTime',\n prop: 'intoOneApi'\n },\n onSelectionChange: poolSelectionChange,\n ref_key: \"multipleTableRefPool\",\n ref: multipleTableRefPool,\n \"row-class-name\": poolRowClassName,\n class: \"poolDateTable\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n type: \"selection\",\n width: \"45\"\n }), _createVNode(_component_el_table_column, {\n label: \"pool_token名称\",\n prop: \"intoOneApi\",\n sortable: \"\",\n \"min-width\": \"170\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n reference: _withCtx(() => [_createElementVNode(\"div\", _hoisted_119, [scope.row.intoOneApi == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_120, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_121]),\n _: 1\n })])) : (_openBlock(), _createElementBlock(\"div\", _hoisted_122, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_123]),\n _: 1\n })])), _createElementVNode(\"span\", _hoisted_124, _toDisplayString(scope.row.poolName), 1)])]),\n default: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(scope.row.poolOneApi_models), 1)]),\n _: 2\n }, 1024)]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"pool_token值\",\n \"min-width\": \"325\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_125, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.poolToken)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_126, _toDisplayString(scope.row.poolToken), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"使用token名集合\",\n \"min-width\": \"165\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(scope.row.shareTokens), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_hoisted_127]),\n _: 1\n })]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"poolTime\",\n label: \"更新时间\",\n prop: \"poolTime\",\n sortable: \"\",\n \"min-width\": \"170\"\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n \"min-width\": \"335\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => showPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"warning\",\n onClick: $event => verifySimplyPoolToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"检验\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deletePoolToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"success\",\n onClick: $event => reNewPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"刷新\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => reviewPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"更换\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"]), _createVNode(_component_el_select_group, {\n class: \"pool-button flex-container\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: buttonPoolValue.value,\n \"onUpdate:modelValue\": _cache[91] || (_cache[91] = $event => buttonPoolValue.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"请选择批量操作\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPool, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolValue,\n label: item.label,\n value: item.buttonPoolValue\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_button, {\n onClick: _cache[92] || (_cache[92] = $event => selectPoolChoice(buttonPoolValue.value))\n }, {\n default: _withCtx(() => [_hoisted_128]),\n _: 1\n }), _createVNode(_component_van_search, {\n modelValue: valuePool.value,\n \"onUpdate:modelValue\": _cache[93] || (_cache[93] = $event => valuePool.value = $event),\n shape: \"round\",\n clearable: \"\",\n placeholder: \"请输入搜索pool_token名称\",\n onSearch: _cache[94] || (_cache[94] = $event => onSearchPoolToken(valuePool.value)),\n class: \"onPoolToken\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_129]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_7.value,\n \"onUpdate:modelValue\": _cache[99] || (_cache[99] = $event => show_7.value = $event),\n title: \"PandoraNext余额\",\n \"align-center\": \"\",\n width: \"auto\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_130, [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_131, _createVNode(_component_van_field, {\n modelValue: pandoraUsage.value,\n \"onUpdate:modelValue\": _cache[96] || (_cache[96] = $event => pandoraUsage.value = $event),\n name: \"PandoraNext用量\",\n label: \"PandoraNext用量\",\n placeholder: \"PandoraNext用量\"\n }, null, 8, [\"modelValue\"]), _hoisted_132, _createVNode(_component_van_field, {\n modelValue: pandoraIp.value,\n \"onUpdate:modelValue\": _cache[97] || (_cache[97] = $event => pandoraIp.value = $event),\n name: \"绑定IP\",\n label: \"绑定IP\",\n placeholder: \"绑定IP\"\n }, null, 8, [\"modelValue\"]), _hoisted_133, _createVNode(_component_van_field, {\n modelValue: pandoraTime.value,\n \"onUpdate:modelValue\": _cache[98] || (_cache[98] = $event => pandoraTime.value = $event),\n name: \"重置时间\",\n label: \"重置时间\",\n placeholder: \"重置时间\"\n }, null, 8, [\"modelValue\"]), _hoisted_134]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_8.value,\n \"onUpdate:modelValue\": _cache[107] || (_cache[107] = $event => show_8.value = $event),\n title: \"定时刷新&PandoraNext网址\",\n \"align-center\": \"\",\n \"max-width\": \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_135, [_createVNode(_component_van_form, {\n onSubmit: _cache[106] || (_cache[106] = $event => RequireAutoUpdate())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_136, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否自动刷新session_token\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: auto_updateSession.value,\n \"onUpdate:modelValue\": _cache[100] || (_cache[100] = $event => auto_updateSession.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), auto_updateSession.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_137, [_hoisted_138, _createVNode(_component_van_field, {\n modelValue: auto_updateTime.value,\n \"onUpdate:modelValue\": _cache[101] || (_cache[101] = $event => auto_updateTime.value = $event),\n name: \"刷新session的时间\",\n label: \"刷新session的时间\",\n \"input-align\": \"right\",\n placeholder: \"自动刷新session的时间 (天为单位)\"\n }, null, 8, [\"modelValue\"]), _hoisted_139, _createVNode(_component_van_field, {\n modelValue: auto_updateNumber.value,\n \"onUpdate:modelValue\": _cache[102] || (_cache[102] = $event => auto_updateNumber.value = $event),\n name: \"刷新session的个数\",\n label: \"刷新session的个数\",\n \"input-align\": \"right\",\n placeholder: \"自动刷新session的个数 (个)\"\n }, null, 8, [\"modelValue\"]), _hoisted_140])) : _createCommentVNode(\"\", true), _createVNode(_component_van_field, {\n modelValue: pandoraNext_outUrl.value,\n \"onUpdate:modelValue\": _cache[103] || (_cache[103] = $event => pandoraNext_outUrl.value = $event),\n name: \"PandoraNext的公网访问地址\",\n label: \"PandoraNext的公网访问地址\",\n \"input-align\": \"right\",\n placeholder: \"PandoraNext的公网访问地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_141, _createVNode(_component_van_field, {\n modelValue: oneAPi_outUrl.value,\n \"onUpdate:modelValue\": _cache[104] || (_cache[104] = $event => oneAPi_outUrl.value = $event),\n name: \"oneApi的公网访问地址\",\n label: \"oneApi的公网访问地址\",\n \"input-align\": \"right\",\n placeholder: \"oneApi的公网访问地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_142, _createVNode(_component_van_field, {\n modelValue: oneAPi_intoToken.value,\n \"onUpdate:modelValue\": _cache[105] || (_cache[105] = $event => oneAPi_intoToken.value = $event),\n name: \"oneApi的系统令牌\",\n label: \"oneApi的系统令牌\",\n \"input-align\": \"right\",\n placeholder: \"oneApi的系统令牌\"\n }, null, 8, [\"modelValue\"]), _hoisted_143]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_144, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_9.value,\n \"onUpdate:modelValue\": _cache[115] || (_cache[115] = $event => show_9.value = $event),\n title: \"✨添加pool_token信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_145, [_createVNode(_component_van_form, {\n onSubmit: addSelectPoolToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_146, _createVNode(_component_van_field, {\n modelValue: poolNameValue.value,\n \"onUpdate:modelValue\": _cache[108] || (_cache[108] = $event => poolNameValue.value = $event),\n name: \"为pool_token名\",\n label: \"pool_token名\",\n \"input-align\": \"right\",\n placeholder: \"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字\",\n rules: [{\n validator: poolNameValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_147, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[109] || (_cache[109] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_148, [_hoisted_149, _createElementVNode(\"div\", _hoisted_150, [_createVNode(_component_el_form_item, {\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addPoolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[110] || (_cache[110] = $event => addPoolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_151]),\n _: 1\n }), _hoisted_152, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: addPoolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[111] || (_cache[111] = $event => addPoolModel_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_153, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[112] || (_cache[112] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\"\n }, null, 8, [\"modelValue\"]), _hoisted_154, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"checkboxGroup\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: groupChecked.value,\n \"onUpdate:modelValue\": _cache[113] || (_cache[113] = $event => groupChecked.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_155, _createVNode(_component_van_field, {\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[114] || (_cache[114] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义PandoraNext地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_156])) : _createCommentVNode(\"\", true)]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_157, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_10.value,\n \"onUpdate:modelValue\": _cache[116] || (_cache[116] = $event => show_10.value = $event),\n title: \"tokensTool登录日志\",\n \"align-center\": \"\",\n width: \"50%\",\n \"close-on-click-modal\": false,\n class: \"showLoginDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_158, [_createVNode(_unref(ElTable), {\n \"row-class-name\": poolRowClassName,\n data: loginData.value\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n prop: \"ipAddress\",\n label: \"登录地区\",\n \"min-width\": \"180\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_159, [_createElementVNode(\"span\", _hoisted_160, _toDisplayString(scope.row.ipAddress), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"登录IP\",\n \"min-width\": \"145\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_161, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.poolToken)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_162, _toDisplayString(scope.row.requestIp), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"成功/失败\",\n \"min-width\": \"105\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_163, [_createElementVNode(\"span\", _hoisted_164, _toDisplayString(scope.row.inRequestNumber) + \"/\" + _toDisplayString(scope.row.outRequestNumber), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"lastLoginTime\",\n label: \"登录时间\",\n prop: \"lastLoginTime\",\n \"min-width\": \"180\"\n })]),\n _: 1\n }, 8, [\"data\"])]), _hoisted_165]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_11.value,\n \"onUpdate:modelValue\": _cache[125] || (_cache[125] = $event => show_11.value = $event),\n title: \"📌修改pool_token信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_166, [_createVNode(_component_van_form, {\n onSubmit: requirePoolToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_167, _createElementVNode(\"div\", _hoisted_168, [_createVNode(_component_el_form_item, {\n label: \"poolToken名\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: poolName.value,\n \"onUpdate:modelValue\": _cache[117] || (_cache[117] = $event => poolName.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择你想要的修改的pool_token名称\",\n onChange: handlePoolNameChange,\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(poolData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.poolName,\n label: item.poolName,\n value: item.poolName,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_169, _createVNode(_component_van_field, {\n modelValue: temPool_token.value,\n \"onUpdate:modelValue\": _cache[118] || (_cache[118] = $event => temPool_token.value = $event),\n type: \"textarea\",\n maxlength: \"100\",\n autoSize: \"\",\n name: \"pool_token的值\",\n label: \"pool_token的值\",\n \"input-align\": \"right\",\n placeholder: \"pool_token的值(不改则不变)\"\n }, null, 8, [\"modelValue\"]), _hoisted_170, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[119] || (_cache[119] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_171, intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_172, [_hoisted_173, _createElementVNode(\"div\", _hoisted_174, [_createVNode(_component_el_form_item, {\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: poolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[120] || (_cache[120] = $event => poolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_175]),\n _: 1\n }), _hoisted_176, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: poolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[121] || (_cache[121] = $event => poolModel_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_177, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[122] || (_cache[122] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_178, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"checkboxGroup\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: temGroupChecked.value,\n \"onUpdate:modelValue\": _cache[123] || (_cache[123] = $event => temGroupChecked.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_179, _createVNode(_component_van_field, {\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[124] || (_cache[124] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义PandoraNext地址\",\n rules: [{\n required: true,\n message: '请填写自定义PandoraNext地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_180])) : _createCommentVNode(\"\", true)]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_181, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_12.value,\n \"onUpdate:modelValue\": _cache[126] || (_cache[126] = $event => show_12.value = $event),\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", {\n ref_key: \"chart\",\n ref: chart,\n style: {\n \"width\": \"auto\",\n \"height\": \"400px\"\n }\n }, null, 512)]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_13.value,\n \"onUpdate:modelValue\": _cache[130] || (_cache[130] = $event => show_13.value = $event),\n title: \"OneAPI里的share_token列表\",\n \"align-center\": \"\",\n width: \"78%\",\n \"close-on-click-modal\": false,\n class: \"shareTokenDialog\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_search, {\n modelValue: valueShare.value,\n \"onUpdate:modelValue\": _cache[128] || (_cache[128] = $event => valueShare.value = $event),\n \"show-action\": \"\",\n shape: \"round\",\n clearable: \"\",\n placeholder: \"请输入搜索share_token名称\",\n onSearch: _cache[129] || (_cache[129] = $event => onSearchShareToken(valueShare.value)),\n class: \"onShareToken\"\n }, {\n action: _withCtx(() => [_createVNode(_component_el_button, {\n icon: _ctx.Plus,\n onClick: _cache[127] || (_cache[127] = $event => show_14.value = true)\n }, {\n default: _withCtx(() => [_hoisted_182]),\n _: 1\n }, 8, [\"icon\"])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_unref(ElTable), {\n data: shareData.value,\n \"row-class-name\": poolRowClassName\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n label: \"在one_api的名称\",\n prop: \"oneApi_name\",\n width: \"180\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_183, [_createElementVNode(\"span\", _hoisted_184, _toDisplayString(scope.row.oneApi_name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"来源Token名\",\n \"min-width\": \"135\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_185, [_createElementVNode(\"span\", _hoisted_186, _toDisplayString(scope.row.token_name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"share_token值\",\n \"min-width\": \"355\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_187, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.token_value)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_188, _toDisplayString(scope.row.token_value), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"shareTime\",\n label: \"更新时间\",\n prop: \"shareTime\",\n \"min-width\": \"170\"\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n \"min-width\": \"205\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => showShareToken(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => reviewShare(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"修改\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deleteShareToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"]), _hoisted_189]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_14.value,\n \"onUpdate:modelValue\": _cache[138] || (_cache[138] = $event => show_14.value = $event),\n title: \"✨添加share_token进OneAPI\",\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_form, {\n onSubmit: addShareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_190, _createVNode(_component_van_field, {\n modelValue: addOneApi_name.value,\n \"onUpdate:modelValue\": _cache[131] || (_cache[131] = $event => addOneApi_name.value = $event),\n name: \"oneApi中渠道名称\",\n label: \"oneApi中渠道名称\",\n \"input-align\": \"right\",\n placeholder: \"oneApi中渠道名称\",\n rules: [{\n required: true,\n message: '请填写oneApi中渠道名称'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_191, _createElementVNode(\"div\", _hoisted_192, [_createVNode(_component_el_form_item, {\n label: \"Token名\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addToken_name.value,\n \"onUpdate:modelValue\": _cache[132] || (_cache[132] = $event => addToken_name.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择你想要的添加的Token名称\",\n onChange: handleShareNameChange,\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(filteredTableData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.name,\n label: item.name,\n value: item.name,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_193, _createElementVNode(\"div\", _hoisted_194, [_createVNode(_component_el_form_item, {\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addOneApi_models.value,\n \"onUpdate:modelValue\": _cache[133] || (_cache[133] = $event => addOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_195]),\n _: 1\n }), _hoisted_196, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: addModel_mapping.value,\n \"onUpdate:modelValue\": _cache[134] || (_cache[134] = $event => addModel_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_197, _createVNode(_component_van_field, {\n modelValue: addPriority.value,\n \"onUpdate:modelValue\": _cache[135] || (_cache[135] = $event => addPriority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_198, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"addOneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: addOneApi_groups.value,\n \"onUpdate:modelValue\": _cache[136] || (_cache[136] = $event => addOneApi_groups.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_199, _createVNode(_component_van_field, {\n modelValue: addOneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[137] || (_cache[137] = $event => addOneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_200]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_201, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_15.value,\n \"onUpdate:modelValue\": _cache[154] || (_cache[154] = $event => show_15.value = $event),\n title: \"🔎查看share_token在OneAPI信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_form, {\n onSubmit: _ctx.shareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_202, _createVNode(_component_van_field, {\n modelValue: oneApi_name.value,\n \"onUpdate:modelValue\": _cache[139] || (_cache[139] = $event => oneApi_name.value = $event),\n name: \"oneApi中渠道名称\",\n label: \"oneApi中渠道名称\",\n \"input-align\": \"right\",\n placeholder: \"oneApi中渠道名称\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[140] || (_cache[140] = $event => copyToken(oneApi_name.value)),\n rules: [{\n required: true,\n message: '请填写oneApi中渠道名称'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_203, _createVNode(_component_van_field, {\n modelValue: token_value.value,\n \"onUpdate:modelValue\": _cache[141] || (_cache[141] = $event => token_value.value = $event),\n name: \"share_token的值\",\n label: \"share_token的值\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[142] || (_cache[142] = $event => copyToken(token_value.value)),\n placeholder: \"share_token的值\"\n }, null, 8, [\"modelValue\"]), _hoisted_204, _createVNode(_component_van_field, {\n modelValue: token_name.value,\n \"onUpdate:modelValue\": _cache[143] || (_cache[143] = $event => token_name.value = $event),\n name: \"share_token的来源\",\n label: \"share_token的来源\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[144] || (_cache[144] = $event => copyToken(token_name.value)),\n placeholder: \"share_token的值\"\n }, null, 8, [\"modelValue\"]), _hoisted_205, _createVNode(_component_van_field, {\n modelValue: temOneApi_models.value,\n \"onUpdate:modelValue\": _cache[145] || (_cache[145] = $event => temOneApi_models.value = $event),\n name: \"加入的模型\",\n label: \"加入的模型\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[146] || (_cache[146] = $event => copyToken(temOneApi_models.value)),\n placeholder: \"加入的模型\"\n }, null, 8, [\"modelValue\"]), _createElementVNode(\"div\", _hoisted_206, [_hoisted_207, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: model_mapping.value,\n \"onUpdate:modelValue\": _cache[147] || (_cache[147] = $event => model_mapping.value = $event),\n type: \"textarea\",\n autosize: \"\",\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_208]), _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[148] || (_cache[148] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[149] || (_cache[149] = $event => copyToken(priority.value)),\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_209, _createVNode(_component_van_field, {\n modelValue: temOneApi_groups.value,\n \"onUpdate:modelValue\": _cache[150] || (_cache[150] = $event => temOneApi_groups.value = $event),\n name: \"加入的组别\",\n label: \"加入的组别\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[151] || (_cache[151] = $event => copyToken(temOneApi_groups.value)),\n placeholder: \"加入的组别\"\n }, null, 8, [\"modelValue\"]), _hoisted_210, _createVNode(_component_van_field, {\n modelValue: oneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[152] || (_cache[152] = $event => oneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[153] || (_cache[153] = $event => copyToken(oneApi_baseUrl.value)),\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_211]),\n _: 1\n })]),\n _: 1\n }, 8, [\"onSubmit\"])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_16.value,\n \"onUpdate:modelValue\": _cache[161] || (_cache[161] = $event => show_16.value = $event),\n title: \"📌修改share_token在OneAPI的信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_212, [_createVNode(_component_van_form, {\n onSubmit: requireShareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_213, _createElementVNode(\"div\", _hoisted_214, [_createVNode(_component_el_form_item, {\n label: \"Token名\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: token_name.value,\n \"onUpdate:modelValue\": _cache[155] || (_cache[155] = $event => token_name.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择你想要的添加的Token名称\",\n onChange: handleShareNameChange,\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(filteredTableData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.name,\n label: item.name,\n value: item.name,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_215, _createElementVNode(\"div\", _hoisted_216, [_createVNode(_component_el_form_item, {\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: oneApi_models.value,\n \"onUpdate:modelValue\": _cache[156] || (_cache[156] = $event => oneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_217, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: model_mapping.value,\n \"onUpdate:modelValue\": _cache[157] || (_cache[157] = $event => model_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_218, _hoisted_219, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[158] || (_cache[158] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_220, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"oneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: oneApi_groups.value,\n \"onUpdate:modelValue\": _cache[159] || (_cache[159] = $event => oneApi_groups.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_221, _createVNode(_component_van_field, {\n modelValue: oneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[160] || (_cache[160] = $event => oneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_222]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_223, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_17.value,\n \"onUpdate:modelValue\": _cache[175] || (_cache[175] = $event => show_17.value = $event),\n title: \"🔎查看poolToken信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_224, [_createVNode(_component_van_form, null, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_225, _createVNode(_component_van_field, {\n modelValue: temPoolName.value,\n \"onUpdate:modelValue\": _cache[162] || (_cache[162] = $event => temPoolName.value = $event),\n name: \"pool_token名称\",\n label: \"pool_token名称\",\n placeholder: \"pool_token名称\",\n readonly: true,\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[163] || (_cache[163] = $event => copyToken(temPoolName.value))\n }, null, 8, [\"modelValue\"]), _hoisted_226, _createVNode(_component_van_field, {\n modelValue: shareTokens.value,\n \"onUpdate:modelValue\": _cache[164] || (_cache[164] = $event => shareTokens.value = $event),\n label: \"使用token名集合\",\n type: \"textarea\",\n placeholder: \"使用token名集合\",\n \"left-icon\": \"description-o\",\n readonly: true,\n \"input-align\": \"right\",\n onClickLeftIcon: _cache[165] || (_cache[165] = $event => copyToken(temAccessToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"]), _hoisted_227, _createVNode(_component_van_field, {\n modelValue: temPool_token.value,\n \"onUpdate:modelValue\": _cache[166] || (_cache[166] = $event => temPool_token.value = $event),\n readonly: true,\n type: \"textarea\",\n maxlength: \"100\",\n autoSize: \"\",\n name: \"pool_token的值\",\n label: \"pool_token的值\",\n \"input-align\": \"right\",\n placeholder: \"pool_token的值(不改则不变)\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[167] || (_cache[167] = $event => copyToken(temPool_token.value))\n }, null, 8, [\"modelValue\"]), _hoisted_228, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[168] || (_cache[168] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_229, intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_230, [_hoisted_231, _createElementVNode(\"div\", _hoisted_232, [_createVNode(_component_el_form_item, {\n disabled: \"\",\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n disabled: \"\",\n modelValue: poolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[169] || (_cache[169] = $event => poolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_233]),\n _: 1\n }), _hoisted_234, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: poolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[170] || (_cache[170] = $event => poolModel_mapping.value = $event),\n type: \"textarea\",\n disabled: \"\",\n autosize: \"\",\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_235, _createVNode(_component_van_field, {\n readonly: true,\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[171] || (_cache[171] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_236, _createVNode(_component_van_field, {\n readonly: true,\n \"input-align\": \"right\",\n name: \"checkboxGroup\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: temGroupChecked.value,\n \"onUpdate:modelValue\": _cache[172] || (_cache[172] = $event => temGroupChecked.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_237, _createVNode(_component_van_field, {\n readonly: true,\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[173] || (_cache[173] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义PandoraNext地址\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[174] || (_cache[174] = $event => copyToken(oneApi_pandoraUrl.value)),\n rules: [{\n required: true,\n message: '请填写自定义PandoraNext地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_238])) : _createCommentVNode(\"\", true)]),\n _: 1\n })]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"])], 64);\n };\n }\n});","/* unplugin-vue-components disabled */import script from \"./homeIndex.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./homeIndex.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./homeIndex.vue?vue&type=style&index=0&id=7d3a5667&lang=css\"\n\nconst __exports__ = script;\n\nexport default __exports__"],"names":["_hoisted_1","class","_hoisted_2","_","name","content","_hoisted_3","_hoisted_4","_hoisted_5","href","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","style","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","key","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31","_hoisted_32","_hoisted_33","_hoisted_34","_hoisted_35","_hoisted_36","_hoisted_37","_hoisted_38","_hoisted_39","_hoisted_40","_hoisted_41","_hoisted_42","_hoisted_43","_hoisted_44","_hoisted_45","_hoisted_46","_hoisted_47","_hoisted_48","_hoisted_49","_hoisted_50","_hoisted_51","_hoisted_52","_hoisted_53","_hoisted_54","_hoisted_55","_hoisted_56","_hoisted_57","_hoisted_58","_hoisted_59","_hoisted_60","_hoisted_61","_hoisted_62","_hoisted_63","_hoisted_64","_hoisted_65","_hoisted_66","_hoisted_67","_hoisted_68","_hoisted_69","_hoisted_70","_hoisted_71","_hoisted_72","_hoisted_73","_hoisted_74","_hoisted_75","_hoisted_76","_hoisted_77","_hoisted_78","_hoisted_79","_hoisted_80","_hoisted_81","_hoisted_82","_hoisted_83","_hoisted_84","_hoisted_85","_hoisted_86","_hoisted_87","_hoisted_88","_hoisted_89","_hoisted_90","_hoisted_91","_hoisted_92","_hoisted_93","_hoisted_94","_hoisted_95","_hoisted_96","_hoisted_97","_hoisted_98","_hoisted_99","_hoisted_100","_hoisted_101","_hoisted_102","_hoisted_103","_hoisted_104","_hoisted_105","_hoisted_106","_hoisted_107","_hoisted_108","_hoisted_109","_hoisted_110","_hoisted_111","_hoisted_112","_hoisted_113","_hoisted_114","_hoisted_115","_hoisted_116","_hoisted_117","_hoisted_118","_hoisted_119","_hoisted_120","_hoisted_121","_hoisted_122","_hoisted_123","_hoisted_124","_hoisted_125","_hoisted_126","_hoisted_127","_hoisted_128","_hoisted_129","_hoisted_130","_hoisted_131","_hoisted_132","_hoisted_133","_hoisted_134","_hoisted_135","_hoisted_136","_hoisted_137","_hoisted_138","_hoisted_139","_hoisted_140","_hoisted_141","_hoisted_142","_hoisted_143","_hoisted_144","_hoisted_145","_hoisted_146","_hoisted_147","_hoisted_148","_hoisted_149","_hoisted_150","_hoisted_151","_hoisted_152","_hoisted_153","_hoisted_154","_hoisted_155","_hoisted_156","_hoisted_157","_hoisted_158","_hoisted_159","_hoisted_160","_hoisted_161","_hoisted_162","_hoisted_163","_hoisted_164","_hoisted_165","_hoisted_166","_hoisted_167","_hoisted_168","_hoisted_169","_hoisted_170","_hoisted_171","_hoisted_172","_hoisted_173","_hoisted_174","_hoisted_175","_hoisted_176","_hoisted_177","_hoisted_178","_hoisted_179","_hoisted_180","_hoisted_181","_hoisted_182","_hoisted_183","_hoisted_184","_hoisted_185","_hoisted_186","_hoisted_187","_hoisted_188","_hoisted_189","_hoisted_190","_hoisted_191","_hoisted_192","_hoisted_193","_hoisted_194","_hoisted_195","_hoisted_196","_hoisted_197","_hoisted_198","_hoisted_199","_hoisted_200","_hoisted_201","_hoisted_202","_hoisted_203","_hoisted_204","_hoisted_205","_hoisted_206","_hoisted_207","_hoisted_208","_hoisted_209","_hoisted_210","_hoisted_211","_hoisted_212","_hoisted_213","_hoisted_214","_hoisted_215","_hoisted_216","_hoisted_217","_hoisted_218","_hoisted_219","_hoisted_220","_hoisted_221","_hoisted_222","_hoisted_223","_hoisted_224","_hoisted_225","_hoisted_226","_hoisted_227","_hoisted_228","_hoisted_229","_hoisted_230","_hoisted_231","_hoisted_232","_hoisted_233","_hoisted_234","_hoisted_235","_hoisted_236","_hoisted_237","_hoisted_238","temModel_mapping","pandoraNext","tokensTool","validation","__name","setup","__props","path","window","location","pathname","parts","split","prefix","length","temGroupChecked","groupChecked","multipleTableRef","multipleTableRefPool","multipleSelection","multipleSelectionPool","handleSelectionChange","val","value","poolSelectionChange","size","router","show","show_1","show_2","show_3","show_4","show_5","show_6","show_7","show_8","show_9","show_10","show_11","show_12","show_13","show_14","show_15","show_16","show_17","buttonValue","options","label","optionsModel","buttonModel","optionsPoolModel","buttonPoolValue","optionsPool","proxy_api_prefix","isolated_conv_title","bing","timeout","proxy_url","public_share","disable_signup","auto_conv_arkose","proxy_file_service","custom_doh_host","enabled","cert_file","key_file","site_password","setup_password","loginUsername","loginPassword","license_id","isGetToken","getTokenPassword","containerName","autoToken_url","whitelist","provider","site_key","site_secret","site_login","setup_login","oai_username","oai_password","auto_updateSession","auto_updateTime","auto_updateNumber","pandoraNext_outUrl","oneAPi_outUrl","oneAPi_intoToken","poolName","temPoolName","shareTokens","poolTime","poolNameValue","intoOneApi","poolModel_mapping","poolOneApi_models","addPoolOneApi_models","addPoolModel_mapping","oneApi_pandoraUrl","priority","temPool_token","customValidator","regex","test","sitePasswordValidator","poolNameValidator","addPasswordValidator","addSetPoolToken","setPoolToken","temName","temToken","temAccessToken","temShareToken","temUsername","temUserPassword","temShared","temShow_user_info","temPlus","temPassword","useRefreshToken","temCheckSession","tableData","poolData","shareData","loginData","addName","addUsername","addUserPassword","addTokenValue","addShared","addShow_user_info","addPlus","addUseRefreshToken","addPassword","addOneApi_name","addToken_name","addOneApi_baseUrl","addOneApi_models","addModel_mapping","addOneApi_groups","addPriority","innerHeight","valuePool","valueShare","token","localStorage","getItem","replace","headers","Authorization","fetchLoginToken","async","axios","post","then","response","data","code","console","error","catch","onSearch","getWebToken","getToken","includes","getAPIToken","onSearchShareToken","getShare","onSearchPoolToken","getPool","get","data_token","Array","isArray","resUsers","map","item","username","userPassword","access_token","share_token","shared","auto_shared","show_user_info","password","plus","updateTime","checkSession","filteredUsers","filter","user","getLoginData","resLogins","ipAddress","requestIp","outRequestNumber","inRequestNumber","lastLoginTime","responsePool","pool_token","resPools","poolToken","checkPool","loadingInstance","service","fullscreen","responseShare","resShares","oneApi_name","token_name","token_value","oneApi_baseUrl","oneApi_models","model_mapping","oneApi_groups","shareTime","close","getSetting","tls","endsWith","fetchDataAndFillForm","alert","confirmButtonText","callback","action","type","message","getSelectedData","selectedData","addSelectPoolToken","names","userData","JSON","parse","e","addPoolToken","toString","fetch","method","body","stringify","json","msg","handlePoolNameChange","selectedItem","find","handleShareNameChange","filteredTableData","requirePoolToken","log","addShareToken","pandoraUsage","innerWidth","Promise","all","current","total","tableRowClassName","row","poolRowClassName","redirectToExternalLink","open","redirectPandoraNextShare","url","charAt","requirePandoraNextLink","requireTokensToolLink","activeIndex","temRequireToken","handleSelect","keyPath","addToken","onAddToken","now","Date","formattedTime","getFullYear","getMonth","padStart","getDate","getHours","getMinutes","getSeconds","api","success","chart_show","showData","usageHeader","usageData","modelData","usage","startsWith","push","myChart_show","echarts","option","title","text","textStyle","fontSize","color","left","top","tooltip","legend","xAxis","yAxis","series","barWidth","itemStyle","params","colorList","dataIndex","setOption","temOneApi_models","temOneApi_groups","showShareToken","previousSetpoolToken","previousUseRefreshToken","previousToken","handleEdit","index","onRequireSetting","RequireSetting","setting","RequireAutoUpdate","RequireToken","confirm","cancelButtonText","openPandora","closePandora","AgainPandora","reloadPandora","pandoraIp","pandoraTime","getPandoraNext","ip","currentTime","futureTime","getTime","ttl","year","month","day","hours","minutes","seconds","updateAllShareToken","reNewMsg","dangerouslyUseHTMLString","reNew","ok","Error","reNewPool","reviewShare","requireShareToken","requireShare","review","reviewPool","deletePoolToken","verifySimplyPoolToken","deleteToken","put","deleteShareToken","formatDate","nowDay","timeDay","parseISO","daysDiff","differenceInDays","Math","ceil","dataToken","substring","logout","removeItem","getPoolToken","getShareToken","getLogin","redirectToGitHub","copyToken","textarea","document","createElement","appendChild","select","execCommand","removeChild","selectChoice","count","forEach","showPool","selectPoolChoice","selectedPoolData","temPoolData","chart","getUsage","model","myChart","_ctx","_cache","_component_el_menu_item","_component_van_icon","_component_el_sub_menu","_component_h10","_component_el_menu","_component_van_button","_component_el_page_header","_component_el_radio_button","_component_el_radio_group","_component_van_search","_component_el_table_column","_component_el_button","_component_el_tag","_component_el_popover","_component_el_option","_component_el_select","_component_el_button_group","_component_van_field","_component_van_switch","_component_van_cell_group","_component_van_form","_component_van_dialog","_component_CopyDocument","_component_el_icon","_component_el_select_group","_component_el_dialog","_component_el_form_item","_component_el_input","_component_van_checkbox","_component_van_checkbox_group","_directive_loading","mode","ellipsis","onSelect","default","src","alt","onClick","$event","icon","extra","square","modelValue","shape","clearable","placeholder","plain","onSelectionChange","ref_key","ref","prop","width","sortable","scope","circle","effect","trigger","placement","reference","$index","loading","filterable","onSubmit","inset","rules","required","validator","maxlength","autosize","maxHeight","minHeight","round","block","rows","readonly","onClickLeftIcon","disabled","property","multiple","input","direction","onChange","autoSize","Plus","shareToken","__exports__"],"sourceRoot":""}
\ No newline at end of file
diff --git a/rearServer/target/classes/static/js/98.13ca7e42.js.map b/rearServer/target/classes/static/js/98.13ca7e42.js.map
deleted file mode 100644
index 83cfa39..0000000
--- a/rearServer/target/classes/static/js/98.13ca7e42.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"js/98.13ca7e42.js","mappings":"ugBAIA,MAAMA,EAAa,CACjBC,MAAO,WAEHC,GAA0B,IAAAC,GAAoB,OAAQ,CAC1DC,KAAM,WACNC,QAAS,gGACR,MAAO,GACJC,EAAa,CACjBL,MAAO,kBAEHM,GAA0B,IAAAJ,GAAoB,MAAO,CACzDF,MAAO,aACN,MAAO,GACJO,GAA0B,IAAAL,GAAoB,IAAK,CACvDM,KAAM,gCACL,iBAAkB,GACfC,GAA0B,IAAAP,GAAoB,IAAK,CACvDM,KAAM,4CACL,YAAa,GACVE,GAA0B,IAAAR,GAAoB,IAAK,CACvDM,KAAM,yDACL,gBAAiB,GACdG,EAAa,CACjBX,MAAO,SAEHY,EAAa,CACjBC,MAAO,CACL,QAAW,QACX,UAAa,0BAGXC,GAA2B,IAAAZ,GAAoB,MAAO,CAC1DF,MAAO,qBACN,EAAc,IAAAE,GAAoB,OAAQ,CAC3CF,MAAO,WACN,4BAAyC,IAAAE,GAAoB,OAAQ,CACtEF,MAAO,eACN,aAAc,GACXe,EAAc,CAClBf,MAAO,UAEHgB,EAAc,CAClBH,MAAO,CACL,QAAW,OACX,OAAU,wBAGRI,EAAc,CAClBJ,MAAO,CACL,QAAW,OACX,UAAa,kBACb,MAAS,OACT,OAAU,SAGRK,EAAc,CAClBL,MAAO,CACL,QAAW,OACX,cAAe,WAGbM,EAAc,CAClBN,MAAO,CACL,cAAe,OACf,gBAAiB,WACjB,SAAY,SACZ,cAAe,WAGbO,EAAc,CAClBP,MAAO,CACL,OAAU,sBAGRQ,GAA2B,IAAAnB,GAAoB,KAAM,KAAM,QAAS,GACpEoB,GAA2B,IAAApB,GAAoB,KAAM,KAAM,WAAY,GACvEqB,GAA2B,IAAArB,GAAoB,KAAM,KAAM,MAAO,GAClEsB,GAA2B,IAAAtB,GAAoB,KAAM,KAAM,MAAO,GAClEuB,GAA2B,IAAAvB,GAAoB,KAAM,KAAM,MAAO,GAClEwB,EAAc,CAClBb,MAAO,CACL,QAAW,UAGTc,GAA2B,IAAAzB,GAAoB,KAAM,KAAM,MAAO,GAClE0B,GAA2B,IAAA1B,GAAoB,KAAM,KAAM,MAAO,GAClE2B,GAA2B,IAAA3B,GAAoB,KAAM,KAAM,MAAO,GAClE4B,EAAc,CAClBC,IAAK,GAEDC,GAA2B,IAAA9B,GAAoB,KAAM,KAAM,MAAO,GAClE+B,EAAc,CAClBF,IAAK,GAEDG,IAA2B,IAAAhC,GAAoB,KAAM,KAAM,MAAO,GAClEiC,GAAc,CAClBJ,IAAK,GAEDK,IAA2B,IAAAlC,GAAoB,KAAM,KAAM,MAAO,GAClEmC,IAA2B,IAAAnC,GAAoB,KAAM,KAAM,MAAO,GAClEoC,GAAc,CAClBP,IAAK,GAEDQ,IAA2B,IAAArC,GAAoB,KAAM,KAAM,MAAO,GAClEsC,IAA2B,IAAAtC,GAAoB,KAAM,KAAM,MAAO,GAClEuC,IAA2B,IAAAvC,GAAoB,KAAM,KAAM,MAAO,GAClEwC,GAAc,CAClB7B,MAAO,CACL,OAAU,UAGR8B,IAA2B,IAAAzC,GAAoB,KAAM,KAAM,MAAO,GAClE0C,GAAc,CAClB/B,MAAO,CACL,QAAW,UAGTgC,IAA2B,IAAA3C,GAAoB,KAAM,KAAM,MAAO,GAClE4C,IAA2B,IAAA5C,GAAoB,KAAM,KAAM,MAAO,GAClE6C,IAA2B,IAAA7C,GAAoB,KAAM,KAAM,MAAO,GAClE8C,IAA2B,IAAA9C,GAAoB,KAAM,KAAM,MAAO,GAClE+C,GAAc,CAClBlB,IAAK,GAEDmB,IAA2B,IAAAhD,GAAoB,KAAM,KAAM,MAAO,GAClEiD,GAAc,CAClBpB,IAAK,GAEDqB,IAA2B,IAAAlD,GAAoB,KAAM,KAAM,MAAO,GAClEmD,GAAc,CAClBtB,IAAK,GAEDuB,IAA2B,IAAApD,GAAoB,KAAM,KAAM,MAAO,GAClEqD,IAA2B,IAAArD,GAAoB,KAAM,KAAM,MAAO,GAClEsD,GAAc,CAClBzB,IAAK,GAED0B,IAA2B,IAAAvD,GAAoB,KAAM,KAAM,MAAO,GAClEwD,GAAc,CAClB3B,IAAK,GAED4B,IAA2B,IAAAzD,GAAoB,KAAM,KAAM,MAAO,GAClE0D,IAA2B,IAAA1D,GAAoB,KAAM,KAAM,MAAO,GAClE2D,GAAc,CAClBhD,MAAO,CACL,OAAU,UAGRiD,IAA2B,IAAA5D,GAAoB,KAAM,KAAM,MAAO,GAClE6D,GAAc,CAClBlD,MAAO,CACL,QAAW,UAGTmD,IAA2B,IAAA9D,GAAoB,KAAM,KAAM,MAAO,GAClE+D,IAA2B,IAAA/D,GAAoB,KAAM,KAAM,MAAO,GAClEgE,IAA2B,IAAAhE,GAAoB,KAAM,KAAM,MAAO,GAClEiE,IAA2B,IAAAjE,GAAoB,KAAM,KAAM,MAAO,GAClEkE,IAA2B,IAAAlE,GAAoB,KAAM,KAAM,MAAO,GAClEmE,IAA2B,IAAAnE,GAAoB,KAAM,KAAM,MAAO,GAClEoE,IAA2B,IAAApE,GAAoB,KAAM,KAAM,MAAO,GAClEqE,IAA2B,IAAArE,GAAoB,KAAM,KAAM,MAAO,GAClEsE,IAA2B,IAAAtE,GAAoB,KAAM,KAAM,MAAO,GAClEuE,IAA2B,IAAAvE,GAAoB,KAAM,KAAM,MAAO,GAClEwE,GAAc,CAClB3C,IAAK,GAED4C,IAA2B,IAAAzE,GAAoB,KAAM,KAAM,MAAO,GAClE0E,IAA2B,IAAA1E,GAAoB,KAAM,KAAM,MAAO,GAClE2E,GAAc,CAClB9C,IAAK,GAED+C,IAA2B,IAAA5E,GAAoB,KAAM,KAAM,MAAO,GAClE6E,GAAc,CAClBlE,MAAO,CACL,QAAW,UAGTmE,IAA2B,IAAA9E,GAAoB,KAAM,KAAM,MAAO,GAClE+E,IAA2B,IAAA/E,GAAoB,KAAM,KAAM,MAAO,GAClEgF,IAA2B,IAAAhF,GAAoB,KAAM,KAAM,MAAO,GAClEiF,IAA2B,IAAAjF,GAAoB,KAAM,KAAM,MAAO,GAClEkF,IAA2B,IAAAlF,GAAoB,KAAM,KAAM,MAAO,GAClEmF,IAA2B,IAAAnF,GAAoB,KAAM,KAAM,MAAO,GAClEoF,GAAc,CAClBvD,IAAK,GAEDwD,IAA2B,IAAArF,GAAoB,KAAM,KAAM,MAAO,GAClEsF,IAA2B,IAAAtF,GAAoB,KAAM,KAAM,MAAO,GAClEuF,IAA2B,IAAAvF,GAAoB,KAAM,KAAM,MAAO,GAClEwF,IAA2B,IAAAxF,GAAoB,KAAM,KAAM,MAAO,GAClEyF,IAA2B,IAAAzF,GAAoB,KAAM,KAAM,MAAO,GAClE0F,IAA2B,IAAA1F,GAAoB,KAAM,KAAM,MAAO,GAClE2F,IAA2B,IAAA3F,GAAoB,KAAM,KAAM,MAAO,GAClE4F,IAA2B,IAAA5F,GAAoB,KAAM,KAAM,MAAO,GAClE6F,GAAc,CAClBlF,MAAO,CACL,OAAU,UAGRmF,IAA2B,IAAA9F,GAAoB,KAAM,KAAM,MAAO,GAClE+F,GAAc,CAClBpF,MAAO,CACL,QAAW,UAGTqF,IAA2B,IAAAhG,GAAoB,KAAM,KAAM,MAAO,GAClEiG,IAA2B,IAAAjG,GAAoB,KAAM,KAAM,MAAO,GAClEkG,IAA2B,IAAAlG,GAAoB,KAAM,KAAM,MAAO,GAClEmG,IAA2B,IAAAnG,GAAoB,KAAM,KAAM,MAAO,GAClEoG,IAA2B,IAAApG,GAAoB,KAAM,KAAM,MAAO,GAClEqG,IAA2B,IAAArG,GAAoB,KAAM,KAAM,MAAO,GAClEsG,IAA2B,IAAAtG,GAAoB,KAAM,KAAM,MAAO,GAClEuG,IAA4B,IAAAvG,GAAoB,KAAM,KAAM,MAAO,GACnEwG,GAAe,CACnB3E,IAAK,GAED4E,IAA4B,IAAAzG,GAAoB,KAAM,KAAM,MAAO,GACnE0G,IAA4B,IAAA1G,GAAoB,KAAM,KAAM,MAAO,GACnE2G,IAA4B,IAAA3G,GAAoB,KAAM,KAAM,MAAO,GACnE4G,GAAe,CACnBjG,MAAO,CACL,OAAU,UAGRkG,IAA4B,IAAA7G,GAAoB,KAAM,KAAM,MAAO,GACnE8G,GAAe,CACnBnG,MAAO,CACL,QAAW,UAGToG,IAA4B,IAAA/G,GAAoB,KAAM,KAAM,MAAO,GACnEgH,IAA4B,IAAAhH,GAAoB,KAAM,KAAM,MAAO,GACnEiH,IAA4B,IAAAjH,GAAoB,KAAM,KAAM,MAAO,GACnEkH,IAA4B,IAAAlH,GAAoB,KAAM,KAAM,MAAO,GACnEmH,IAA4B,IAAAnH,GAAoB,KAAM,KAAM,MAAO,GACnEoH,IAA4B,IAAApH,GAAoB,KAAM,KAAM,MAAO,GACnEqH,IAA4B,IAAArH,GAAoB,KAAM,KAAM,MAAO,GACnEsH,IAA4B,IAAAtH,GAAoB,KAAM,KAAM,MAAO,GACnEuH,GAAe,CACnB5G,MAAO,CACL,OAAU,UAGR6G,IAA4B,IAAAxH,GAAoB,KAAM,KAAM,MAAO,GACnEyH,GAAe,CACnB9G,MAAO,CACL,UAAa,yBAGX+G,GAAe,CACnB/G,MAAO,CACL,cAAe,OACf,QAAW,OACX,cAAe,WAGbgH,GAAe,CACnB9F,IAAK,GAED+F,IAA4B,IAAA5H,GAAoB,KAAM,KAAM,UAAW,GACvE6H,GAAe,CACnBhG,IAAK,GAEDiG,IAA4B,IAAA9H,GAAoB,KAAM,KAAM,QAAS,GACrE+H,GAAe,CACnBpH,MAAO,CACL,cAAe,OACf,gBAAiB,WACjB,SAAY,SACZ,cAAe,WAGbqH,GAAe,CACnBrH,MAAO,CACL,QAAW,OACX,cAAe,SACf,SAAY,SAGVsH,GAAe,CACnBtH,MAAO,CACL,cAAe,OACf,gBAAiB,WACjB,SAAY,SACZ,cAAe,WAGbuH,IAA4B,IAAAlI,GAAoB,OAAQ,CAC5DW,MAAO,CACL,cAAe,MACf,gBAAiB,WACjB,SAAY,SACZ,cAAe,WAEhB,WAAY,GACTwH,IAA4B,IAAAnI,GAAoB,KAAM,KAAM,QAAS,GACrEoI,IAA4B,IAAApI,GAAoB,KAAM,KAAM,MAAO,GACnEqI,GAAe,CACnB1H,MAAO,CACL,QAAW,UAGT2H,IAA4B,IAAAtI,GAAoB,KAAM,KAAM,MAAO,GACnEuI,IAA4B,IAAAvI,GAAoB,KAAM,KAAM,MAAO,GACnEwI,IAA4B,IAAAxI,GAAoB,KAAM,KAAM,MAAO,GACnEyI,IAA4B,IAAAzI,GAAoB,KAAM,KAAM,MAAO,GACnE0I,GAAe,CACnB/H,MAAO,CACL,QAAW,UAGTgI,IAA4B,IAAA3I,GAAoB,KAAM,KAAM,MAAO,GACnE4I,GAAe,CACnB/G,IAAK,GAEDgH,IAA4B,IAAA7I,GAAoB,KAAM,KAAM,MAAO,GACnE8I,IAA4B,IAAA9I,GAAoB,KAAM,KAAM,MAAO,GACnE+I,IAA4B,IAAA/I,GAAoB,KAAM,KAAM,MAAO,GACnEgJ,IAA4B,IAAAhJ,GAAoB,KAAM,KAAM,MAAO,GACnEiJ,IAA4B,IAAAjJ,GAAoB,KAAM,KAAM,MAAO,GACnEkJ,IAA4B,IAAAlJ,GAAoB,KAAM,KAAM,MAAO,GACnEmJ,GAAe,CACnBxI,MAAO,CACL,OAAU,UAGRyI,GAAe,CACnBzI,MAAO,CACL,QAAW,UAGT0I,IAA4B,IAAArJ,GAAoB,KAAM,KAAM,MAAO,GACnEsJ,IAA4B,IAAAtJ,GAAoB,KAAM,KAAM,MAAO,GACnEuJ,GAAe,CACnB1H,IAAK,GAED2H,IAA4B,IAAAxJ,GAAoB,KAAM,KAAM,MAAO,GACnEyJ,GAAe,CACnB9I,MAAO,CACL,UAAa,qBAGX+I,IAA4B,IAAA1J,GAAoB,KAAM,KAAM,MAAO,GACnE2J,IAA4B,IAAA3J,GAAoB,KAAM,KAAM,MAAO,GACnE4J,IAA4B,IAAA5J,GAAoB,KAAM,KAAM,MAAO,GACnE6J,IAA4B,IAAA7J,GAAoB,KAAM,KAAM,MAAO,GACnE8J,IAA4B,IAAA9J,GAAoB,KAAM,KAAM,MAAO,GACnE+J,IAA4B,IAAA/J,GAAoB,KAAM,KAAM,MAAO,GACnEgK,GAAe,CACnBrJ,MAAO,CACL,OAAU,UAGRsJ,GAAe,CACnBtJ,MAAO,CACL,QAAW,SAGTuJ,GAAe,CACnBvJ,MAAO,CACL,QAAW,OACX,cAAe,WAGbwJ,GAAe,CACnBxJ,MAAO,CACL,cAAe,MACf,gBAAiB,WACjB,SAAY,SACZ,cAAe,WAGbyJ,GAAe,CACnBzJ,MAAO,CACL,QAAW,OACX,cAAe,SACf,SAAY,SAGV0J,GAAe,CACnB1J,MAAO,CACL,cAAe,OACf,gBAAiB,WACjB,SAAY,SACZ,cAAe,WAGb2J,GAAe,CACnB3J,MAAO,CACL,QAAW,OACX,cAAe,SACf,SAAY,SAGV4J,GAAe,CACnB5J,MAAO,CACL,cAAe,OACf,gBAAiB,WACjB,SAAY,SACZ,cAAe,WAGb6J,IAA4B,IAAAxK,GAAoB,KAAM,KAAM,MAAO,GACnEyK,GAAe,CACnB9J,MAAO,CACL,QAAW,UAGT+J,IAA4B,IAAA1K,GAAoB,KAAM,KAAM,MAAO,GACnE2K,GAAe,CACnBhK,MAAO,CACL,UAAa,qBAGXiK,IAA4B,IAAA5K,GAAoB,KAAM,KAAM,MAAO,GACnE6K,IAA4B,IAAA7K,GAAoB,KAAM,KAAM,MAAO,GACnE8K,IAA4B,IAAA9K,GAAoB,KAAM,KAAM,MAAO,GACnE+K,GAAe,CACnBlJ,IAAK,GAEDmJ,IAA4B,IAAAhL,GAAoB,KAAM,KAAM,MAAO,GACnEiL,GAAe,CACnBtK,MAAO,CACL,UAAa,qBAGXuK,IAA4B,IAAAlL,GAAoB,KAAM,KAAM,MAAO,GACnEmL,IAA4B,IAAAnL,GAAoB,KAAM,KAAM,MAAO,GACnEoL,IAA4B,IAAApL,GAAoB,KAAM,KAAM,MAAO,GACnEqL,IAA4B,IAAArL,GAAoB,KAAM,KAAM,MAAO,GACnEsL,IAA4B,IAAAtL,GAAoB,KAAM,KAAM,MAAO,GACnEuL,IAA4B,IAAAvL,GAAoB,KAAM,KAAM,MAAO,GACnEwL,GAAe,CACnB7K,MAAO,CACL,OAAU,UAGR8K,IAA4B,IAAAzL,GAAoB,KAAM,KAAM,wBAAyB,GACrF0L,GAAe,CACnB/K,MAAO,CACL,cAAe,OACf,QAAW,OACX,cAAe,WAGbgL,GAAe,CACnBhL,MAAO,CACL,cAAe,OACf,gBAAiB,WACjB,SAAY,SACZ,cAAe,WAGbiL,GAAe,CACnBjL,MAAO,CACL,QAAW,OACX,cAAe,SACf,SAAY,SAGVkL,GAAe,CACnBlL,MAAO,CACL,cAAe,OACf,gBAAiB,WACjB,SAAY,SACZ,cAAe,WAGbmL,GAAe,CACnBnL,MAAO,CACL,QAAW,OACX,cAAe,SACf,SAAY,SAGVoL,GAAe,CACnBpL,MAAO,CACL,cAAe,OACf,gBAAiB,WACjB,SAAY,SACZ,cAAe,WAGbqL,IAA4B,IAAAhM,GAAoB,KAAM,KAAM,MAAO,GACnEiM,IAA4B,IAAAjM,GAAoB,KAAM,KAAM,MAAO,GACnEkM,IAA4B,IAAAlM,GAAoB,KAAM,KAAM,MAAO,GACnEmM,GAAe,CACnBxL,MAAO,CACL,UAAa,qBAGXyL,IAA4B,IAAApM,GAAoB,KAAM,KAAM,MAAO,GACnEqM,GAAe,CACnB1L,MAAO,CACL,UAAa,qBAGX2L,IAA4B,IAAAtM,GAAoB,KAAM,KAAM,MAAO,GACnEuM,IAA4B,IAAAvM,GAAoB,KAAM,KAAM,MAAO,GACnEwM,IAA4B,IAAAxM,GAAoB,KAAM,KAAM,MAAO,GACnEyM,IAA4B,IAAAzM,GAAoB,KAAM,KAAM,MAAO,GACnE0M,IAA4B,IAAA1M,GAAoB,KAAM,KAAM,MAAO,GACnE2M,IAA4B,IAAA3M,GAAoB,KAAM,KAAM,MAAO,GACnE4M,GAAe,CACnBjM,MAAO,CACL,OAAU,UAGRkM,IAA4B,IAAA7M,GAAoB,KAAM,KAAM,MAAO,GACnE8M,IAA4B,IAAA9M,GAAoB,KAAM,KAAM,MAAO,GACnE+M,IAA4B,IAAA/M,GAAoB,KAAM,KAAM,MAAO,GACnEgN,IAA4B,IAAAhN,GAAoB,KAAM,KAAM,MAAO,GACnEiN,GAAe,CACnBtM,MAAO,CACL,UAAa,qBAGXuM,IAA4B,IAAAlN,GAAoB,KAAM,KAAM,MAAO,GACnEmN,IAA4B,IAAAnN,GAAoB,KAAM,KAAM,MAAO,GACnEoN,IAA4B,IAAApN,GAAoB,KAAM,KAAM,MAAO,GACnEqN,IAA4B,IAAArN,GAAoB,KAAM,KAAM,MAAO,GACnEsN,IAA4B,IAAAtN,GAAoB,KAAM,KAAM,MAAO,GACnEuN,GAAe,CACnB5M,MAAO,CACL,QAAW,UAGT6M,IAA4B,IAAAxN,GAAoB,KAAM,KAAM,MAAO,GACnEyN,GAAe,CACnB9M,MAAO,CACL,UAAa,qBAGX+M,IAA4B,IAAA1N,GAAoB,KAAM,KAAM,MAAO,GACnE2N,GAAe,CACnBhN,MAAO,CACL,UAAa,qBAGXiN,IAA4B,IAAA5N,GAAoB,KAAM,KAAM,MAAO,GACnE6N,IAA4B,IAAA7N,GAAoB,KAAM,KAAM,MAAO,GACnE8N,IAA4B,IAAA9N,GAAoB,KAAM,KAAM,MAAO,GACnE+N,IAA4B,IAAA/N,GAAoB,KAAM,KAAM,MAAO,GACnEgO,IAA4B,IAAAhO,GAAoB,KAAM,KAAM,MAAO,GACnEiO,IAA4B,IAAAjO,GAAoB,KAAM,KAAM,MAAO,GACnEkO,GAAe,CACnBvN,MAAO,CACL,OAAU,UAGRwN,GAAe,CACnBxN,MAAO,CACL,QAAW,UAGTyN,IAA4B,IAAApO,GAAoB,KAAM,KAAM,MAAO,GACnEqO,IAA4B,IAAArO,GAAoB,KAAM,KAAM,MAAO,GACnEsO,IAA4B,IAAAtO,GAAoB,KAAM,KAAM,MAAO,GACnEuO,IAA4B,IAAAvO,GAAoB,KAAM,KAAM,MAAO,GACnEwO,IAA4B,IAAAxO,GAAoB,KAAM,KAAM,MAAO,GACnEyO,GAAe,CACnB5M,IAAK,GAED6M,IAA4B,IAAA1O,GAAoB,KAAM,KAAM,MAAO,GACnE2O,GAAe,CACnBhO,MAAO,CACL,UAAa,qBAGXiO,IAA4B,IAAA5O,GAAoB,KAAM,KAAM,MAAO,GACnE6O,IAA4B,IAAA7O,GAAoB,KAAM,KAAM,MAAO,GACnE8O,IAA4B,IAAA9O,GAAoB,KAAM,KAAM,MAAO,GACnE+O,IAA4B,IAAA/O,GAAoB,KAAM,KAAM,MAAO,GACnEgP,IAA4B,IAAAhP,GAAoB,KAAM,KAAM,MAAO,GACnEiP,IAA4B,IAAAjP,GAAoB,KAAM,KAAM,MAAO,GAUnEkP,GAAmB,0MAQnBC,GAAc,EAEdC,GAAa,EAEbC,GAAa,EAInB,QAA4B,QAAiB,CAC3CC,OAAQ,YACR,KAAAC,CAAMC,GAEJ,MAAMC,EAAOC,OAAOC,SAASC,SACvBC,EAAQJ,EAAKK,MAAM,KACzB,IAAIC,GAAS,GACTF,EAAMG,QAAU,IAClBD,GAAS,IAAMF,EAAM,IAGvB,MAAMI,IAAkB,QAAI,CAAC,UAAW,OAAQ,QAC1CC,IAAe,QAAI,CAAC,UAAW,OAAQ,QACvCC,IAAmB,UACnBC,IAAuB,UACvBC,IAAoB,QAAI,IACxBC,IAAwB,QAAI,IAC5BC,GAAwBC,IAC5BH,GAAkBI,MAAQD,CAAG,EAEzBE,GAAsBF,IAC1BF,GAAsBG,MAAQD,CAAG,EAE7BG,IAAO,QAAI,OAEXC,IAAS,UAOTC,IAAO,SAAI,GACXC,IAAS,SAAI,GACbC,IAAS,SAAI,GACbC,IAAS,SAAI,GACbC,IAAS,SAAI,GACbC,IAAS,SAAI,GACbC,IAAS,SAAI,GACbC,IAAS,SAAI,GACbC,IAAS,SAAI,GACbC,IAAS,SAAI,GACbC,IAAU,SAAI,GACdC,IAAU,SAAI,GACdC,IAAU,SAAI,GACdC,IAAU,SAAI,GACdC,IAAU,SAAI,GACdC,IAAU,SAAI,GACdC,IAAU,SAAI,GACdC,IAAU,SAAI,GAIdC,IAAc,QAAI,IAClBC,GAAU,CAAC,CACfD,YAAa,YACbE,MAAO,aACN,CACDF,YAAa,YACbE,MAAO,aACN,CACDF,YAAa,iBACbE,MAAO,kBACN,CACDF,YAAa,iBACbE,MAAO,mBAGHC,KADc,QAAI,IACH,CAAC,CACpBC,YAAa,gBACbF,MAAO,iBACN,CACDE,YAAa,UACbF,MAAO,WACN,CACDE,YAAa,eACbF,MAAO,gBACN,CACDE,YAAa,eACbF,MAAO,gBACN,CACDE,YAAa,gBACbF,MAAO,iBACN,CACDE,YAAa,uBACbF,MAAO,0BAEHG,GAAmB,CAAC,CACxBD,YAAa,gBACbF,MAAO,iBACN,CACDE,YAAa,QACbF,MAAO,UAEHI,IAAkB,QAAI,IACtBC,GAAc,CAAC,CACnBD,gBAAiB,iBACjBJ,MAAO,kBACN,CACDI,gBAAiB,iBACjBJ,MAAO,kBACN,CACDI,gBAAiB,iBACjBJ,MAAO,kBACN,CACDI,gBAAiB,iBACjBJ,MAAO,mBAKHM,IAAmB,QAAI,IACvBC,IAAsB,QAAI,KAC1BC,IAAO,QAAI,IACXC,IAAU,QAAI,IACdC,IAAY,QAAI,IAChBC,IAAe,SAAI,GAEnBC,IAAiB,SAAI,GACrBC,IAAmB,SAAI,GACvBC,IAAqB,SAAI,GACzBC,IAAkB,QAAI,IACtBC,IAAU,SAAI,GACdC,IAAY,QAAI,IAChBC,IAAW,QAAI,IACfC,IAAgB,QAAI,IACpBC,IAAiB,QAAI,IACrBC,IAAgB,QAAI,IACpBC,IAAgB,QAAI,IACpBC,IAAa,QAAI,IAEjBC,IAAa,SAAI,GACjBC,IAAmB,QAAI,IACvBC,IAAgB,QAAI,eACpBC,IAAgB,QAAI,WACpBC,IAAY,QAAI,IAChBC,IAAW,QAAI,IACfC,IAAW,QAAI,IACfC,IAAc,QAAI,IAClBC,IAAa,SAAI,GACjBC,IAAc,SAAI,GAClBC,IAAe,SAAI,GACnBC,IAAe,SAAI,GAEnBC,IAAqB,SAAI,GACzBC,IAAkB,QAAI,GACtBC,IAAoB,QAAI,GACxBC,IAAqB,QAAI,IACzBC,IAAgB,QAAI,IACpBC,IAAmB,QAAI,IAEvBC,IAAW,QAAI,IACfC,IAAc,QAAI,IAClBC,IAAc,QAAI,IAElBC,KADY,QAAI,KACL,QAAI,KAIfC,KAHY,SAAI,IAGA,QAAI,KACpBC,IAAa,SAAI,GACjBC,IAAoB,QAAI,IACxBC,IAAoB,QAAI,IACxBC,IAAuB,QAAI,IAC3BC,IAAuB,QAAI,IAC3BC,IAAoB,QAAIb,GAAmB/D,MAAQ8B,GAAiB9B,OACpE6E,IAAW,QAAI,GACfC,IAAgB,QAAI,IAEpBC,GAAkB/E,IAEtB,MAAMgF,EAAQ,gCACd,QAAIA,EAAMC,KAAKjF,IAGN,qBACT,EAEIkF,GAAwBlF,IAE5B,MAAMgF,EAAQ,gCACd,SAAIA,EAAMC,KAAKjF,IAAmB,IAATA,IAGhB,qBACT,EAEImF,GAAoBnF,IAExB,MAAMgF,EAAQ,mCACd,QAAIA,EAAMC,KAAKjF,IAGN,iCACT,EAEIoF,GAAuBpF,IAE3B,MAAMgF,EAAQ,gCACd,QAA6B,GAAzBK,GAAgBrF,OAAuC,GAAtBsF,GAAatF,QAAiBgF,EAAMC,KAAKjF,KAGrE,qBACT,EAKIuF,IAAU,QAAI,IACdC,IAAW,QAAI,IACfC,IAAiB,QAAI,IACrBC,IAAgB,QAAI,IACpBC,IAAc,QAAI,IAClBC,IAAkB,QAAI,IACtBC,IAAY,SAAI,GAChBC,IAAoB,SAAI,GACxBC,IAAU,SAAI,GACdC,IAAc,QAAI,IAClBV,IAAe,SAAI,GACnBW,IAAkB,SAAI,GACtBC,IAAkB,SAAI,GACtBC,IAAY,QAAI,IAEhBC,IAAW,QAAI,IACfC,IAAY,QAAI,IAEhBC,IAAY,QAAI,IAIhBC,IAAU,QAAI,IACdC,IAAc,QAAI,IAClBC,IAAkB,QAAI,IACtBC,IAAgB,QAAI,IACpBC,IAAY,SAAI,GAChBC,IAAoB,SAAI,GACxBC,IAAU,SAAI,GACdxB,IAAkB,SAAI,GACtByB,IAAqB,SAAI,GACzBC,IAAc,QAAI,IAIlBC,IAAiB,QAAI,IACrBC,IAAgB,QAAI,IAEpBC,KADiB,QAAI,KACD,QAAI,KACxBC,IAAmB,QAAI,IACvBC,IAAmB,QAAI,IACvBC,IAAmB,QAAI,CAAC,UAAW,OAAQ,QAC3CC,IAAc,QAAI,GAIlBtH,KAFW,QAAyB,KAArBf,OAAOsI,cAEd,QAAI,KACZC,IAAY,QAAI,IAChBC,IAAa,QAAI,IAKjBC,GAAQC,aAAaC,QAAQ,YAC9BF,IACHvH,GAAO0H,QAAQ,KAEjB,MAAMC,GAAU,CACdC,cAAe,UAAUL,MAKrBM,GAAkBC,UACtBC,EAAA,EAAMC,KAAK,mBAAmB7I,2BAAiCoI,IAAOU,MAAKC,IACzE,GAA0B,GAAtBA,EAASC,KAAKC,KAGhB,OAFAC,QAAQC,MAAMJ,EAASC,KAAKA,WAC5BnI,GAAO0H,QAAQ,IAEjB,IACCa,OAAMD,IACPD,QAAQC,MAAM,mBAAoBA,GAClCtI,GAAO0H,QAAQ,IAAI,GACnB,EAEEc,GAAW3I,IACF,OAATA,GAA2B,OAATA,EACpB4I,GAAY,IACM,OAAT5I,GAA2B,OAATA,EAC3B6I,GAAS,IACA7I,EAAM8I,SAAS,OACxBC,GAAY,IAEZF,GAAS7I,EACX,EAEIgJ,GAAqBhJ,IACzBiJ,GAASjJ,EAAM,EAEXkJ,GAAoBlJ,IACxBmJ,GAAQnJ,EAAM,EAMV6I,GAAWZ,UACf,MAAMI,QAAiBH,EAAA,EAAMkB,IAAI,mBAAmB9J,2BAA+BU,IAAS,CAC1F8H,aAEIuB,EAAahB,EAASC,KAAKA,KAEjC,GAAIgB,MAAMC,QAAQF,GAAa,CAC7B,MAAMG,EAAWH,EAAWI,KAAIC,IAAQ,CACtCla,KAAMka,EAAKla,KACXma,SAAUD,EAAKC,SACfC,aAAcF,EAAKE,aACnBlC,MAAOgC,EAAKhC,MACZmC,aAAcH,EAAKG,aACnBC,YAAaJ,EAAKI,YAClBC,OAAQL,EAAKK,OACbC,YAAaN,EAAKM,YAClBC,eAAgBP,EAAKO,eACrBC,SAAUR,EAAKQ,SACfC,KAAMT,EAAKS,KACX7E,aAAcoE,EAAKpE,aACnBW,gBAAiByD,EAAKzD,gBACtBmE,WAAYV,EAAKU,WACjBC,aAAcX,EAAKW,iBAGrBlE,GAAUnG,MAAQwJ,CACpB,GAEIT,GAAcd,UAClB,MAAMI,QAAiBH,EAAA,EAAMkB,IAAI,mBAAmB9J,2BAA+BU,IAAS,CAC1F8H,aAEIuB,EAAahB,EAASC,KAAKA,KAEjC,GAAIgB,MAAMC,QAAQF,GAAa,CAC7B,MAAMG,EAAWH,EAAWI,KAAIC,IAAQ,CACtCla,KAAMka,EAAKla,KACXma,SAAUD,EAAKC,SACfC,aAAcF,EAAKE,aACnBlC,MAAOgC,EAAKhC,MACZmC,aAAcH,EAAKG,aACnBC,YAAaJ,EAAKI,YAClBC,OAAQL,EAAKK,OACbC,YAAaN,EAAKM,YAClBC,eAAgBP,EAAKO,eACrBC,SAAUR,EAAKQ,SACfC,KAAMT,EAAKS,KACX7E,aAAcoE,EAAKpE,aACnBW,gBAAiByD,EAAKzD,gBACtBmE,WAAYV,EAAKU,WACjBC,aAAcX,EAAKW,iBAGfC,EAAgBd,EAASe,QAAOC,IAA8B,IAAtBA,EAAKlF,eAEnDa,GAAUnG,MAAQsK,CACpB,GAEI1B,GAAcX,UAClB,MAAMI,QAAiBH,EAAA,EAAMkB,IAAI,mBAAmB9J,2BAA+BU,IAAS,CAC1F8H,aAEIuB,EAAahB,EAASC,KAAKA,KAEjC,GAAIgB,MAAMC,QAAQF,GAAa,CAC7B,MAAMG,EAAWH,EAAWI,KAAIC,IAAQ,CACtCla,KAAMka,EAAKla,KACXma,SAAUD,EAAKC,SACfC,aAAcF,EAAKE,aACnBlC,MAAOgC,EAAKhC,MACZmC,aAAcH,EAAKG,aACnBC,YAAaJ,EAAKI,YAClBC,OAAQL,EAAKK,OACbC,YAAaN,EAAKM,YAClBC,eAAgBP,EAAKO,eACrBC,SAAUR,EAAKQ,SACfC,KAAMT,EAAKS,KACX7E,aAAcoE,EAAKpE,aACnBW,gBAAiByD,EAAKzD,gBACtBmE,WAAYV,EAAKU,WACjBC,aAAcX,EAAKW,iBAGfC,EAAgBd,EAASe,QAAOC,IAA8B,IAAtBA,EAAKlF,eAEnDa,GAAUnG,MAAQsK,CACpB,GAMIG,GAAexC,UACnB,MAAMI,QAAiBH,EAAA,EAAMkB,IAAI,mBAAmB9J,qBAA0B,CAC5EwI,aAEIuB,EAAahB,EAASC,KAAKA,KAEjC,GAAIgB,MAAMC,QAAQF,GAAa,CAC7B,MAAMqB,EAAYrB,EAAWI,KAAIC,IAAQ,CACvCiB,UAAWjB,EAAKiB,UAChBC,UAAWlB,EAAKkB,UAChBC,iBAAkBnB,EAAKmB,iBACvBC,gBAAiBpB,EAAKoB,gBACtBC,cAAerB,EAAKqB,kBAGtBzE,GAAUtG,MAAQ0K,CACpB,GAEIvB,GAAUlB,UACd,MAAM+C,QAAqB9C,EAAA,EAAMkB,IAAI,mBAAmB9J,+BAAmCU,IAAS,CAClG8H,aAEImD,EAAaD,EAAa1C,KAAKA,KAErC,GAAIgB,MAAMC,QAAQ0B,GAAa,CAC7B,MAAMC,EAAWD,EAAWxB,KAAIC,IAAQ,CACtCxF,SAAUwF,EAAKxF,SACfG,SAAUqF,EAAKrF,SACf8G,UAAWzB,EAAKyB,UAChB/G,YAAasF,EAAKtF,YAClBgH,UAAW1B,EAAK0B,UAChB7G,WAAYmF,EAAKnF,WACjBE,kBAAmBiF,EAAKjF,kBACxBD,kBAAmBkF,EAAKlF,kBACxBI,kBAAmB8E,EAAK9E,kBACxBnF,aAAciK,EAAKjK,aACnBoF,SAAU6E,EAAK7E,aAGjBuB,GAASpG,MAAQkL,CACnB,GAEIjC,GAAWhB,UACf,MAAMoD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAERC,QAAsBtD,EAAA,EAAMkB,IAAI,mBAAmB9J,gCAAoCU,IAAS,CACpG8H,aAEIgC,EAAc0B,EAAclD,KAAKA,KAEvC,GAAIgB,MAAMC,QAAQO,GAAc,CAC9B,MAAM2B,EAAY3B,EAAYL,KAAIC,IAAQ,CACxCgC,YAAahC,EAAKgC,YAClBC,WAAYjC,EAAKiC,WACjBC,YAAalC,EAAKkC,YAClBC,eAAgBnC,EAAKmC,eACrBC,cAAepC,EAAKoC,cACpBC,cAAerC,EAAKqC,cACpBC,cAAetC,EAAKsC,cACpBC,UAAWvC,EAAKuC,UAChBpH,SAAU6E,EAAK7E,aAGjBwB,GAAUrG,MAAQyL,CACpB,CACAJ,EAAgBa,OAAO,EAEnBC,GAAalE,UACjB,MAAMI,QAAiBH,EAAA,EAAMkB,IAAI,mBAAmB9J,uBAA4B,CAC9EwI,aAEIQ,EAAOD,EAASC,KAAKA,KAC3BxG,GAAiB9B,MAAQsI,EAAKxG,iBAC9BC,GAAoB/B,MAAQsI,EAAKvG,oBACjCC,GAAKhC,MAAQsI,EAAKtG,KAClBC,GAAQjC,MAAQsI,EAAKrG,QACrBC,GAAUlC,MAAQsI,EAAKpG,UACvBC,GAAanC,MAAQsI,EAAKnG,aAE1BC,GAAepC,MAAQsI,EAAKlG,eAC5BC,GAAiBrC,MAAQsI,EAAKjG,iBAC9BC,GAAmBtC,MAAQsI,EAAKhG,mBAChCC,GAAgBvC,MAAQsI,EAAK/F,gBAC7BC,GAAQxC,MAAQsI,EAAK8D,IAAI5J,QACzBC,GAAUzC,MAAQsI,EAAK8D,IAAI3J,UAC3BC,GAAS1C,MAAQsI,EAAK8D,IAAI1J,SAC1BC,GAAc3C,MAAQsI,EAAK3F,cAC3BC,GAAe5C,MAAQsI,EAAK1F,eACN,MAAlB0F,EAAKlF,UACPA,GAAUpD,MAAQ,OACboD,GAAUpD,MAAQsI,EAAKlF,UAC9BP,GAAc7C,MAAQsI,EAAKzF,cAC3BC,GAAc9C,MAAQsI,EAAKxF,cAC3BC,GAAW/C,MAAQsI,EAAKvF,WAExBC,GAAWhD,MAAQsI,EAAKtF,WACxBC,GAAiBjD,MAAQsI,EAAKrF,iBAC9BC,GAAclD,MAAQsI,EAAKpF,cAC3BC,GAAcnD,MAAQsI,EAAKnF,cAC3BE,GAASrD,MAAQsI,EAAK1J,WAAWyE,SACjCC,GAAStD,MAAQsI,EAAK1J,WAAW0E,SACjCC,GAAYvD,MAAQsI,EAAK1J,WAAW2E,YACpCC,GAAWxD,MAAQsI,EAAK1J,WAAW4E,WACnCC,GAAYzD,MAAQsI,EAAK1J,WAAW6E,YACpCC,GAAa1D,MAAQsI,EAAK1J,WAAW8E,aACrCC,GAAa3D,MAAQsI,EAAK1J,WAAW+E,aAErCC,GAAmB5D,MAAQsI,EAAK1E,mBAChCC,GAAgB7D,MAAQsI,EAAKzE,gBAC7BC,GAAkB9D,MAAQsI,EAAKxE,kBAC/BC,GAAmB/D,MAAQsI,EAAKvE,mBAC3BA,GAAmB/D,MAAMqM,SAAS,KAGrCzH,GAAkB5E,MAAQ+D,GAAmB/D,MAAQ8B,GAAiB9B,MAFtE4E,GAAkB5E,MAAQ+D,GAAmB/D,MAAQ,IAAM8B,GAAiB9B,MAK9EgE,GAAchE,MAAQsI,EAAKtE,cAC3BC,GAAiBjE,MAAQsI,EAAKrE,iBAC9BqI,IAAsB,EAElBA,GAAuBrE,UACA,UAAvBnF,GAAc9C,OAA4C,QAAvB6C,GAAc7C,QACnD,IAAauM,MAAM,qCAAsC,OAAQ,CAC/DC,kBAAmB,KACnBC,SAAUC,KACR,QAAU,CACRC,KAAM,OACNC,QAAS,iCACT,IAGNpM,GAAOR,OAAQ,EACf8C,GAAc9C,MAAQ,GACtB6C,GAAc7C,MAAQ,GACxB,EAEI6M,GAAkB,KACtB,MAAMC,EAAelN,GAAkBI,MACX,IAAxB8M,EAAavN,OAIfsB,GAAOb,OAAQ,GAHf,QAAU,QAIZ,EAEI+M,GAAqB9E,UACzB,IACE,MAAM6E,EAAelN,GAAkBI,MACjCgN,EAAQF,EAAarD,KAAIwD,GAAYA,EAASzd,OAC9C6b,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAEd,IACoC,IAA9B5G,GAAqB3E,QACvB2E,GAAqB3E,MAAQ,MAE/BkN,KAAKC,MAAMxI,GAAqB3E,MAClC,CAAE,MAAOoN,GAMP,OALA,QAAU,CACRT,KAAM,QACNC,QAAS,2BAEXvB,EAAgBa,OAElB,CACA,MAAMmB,EAAe,CACnBnJ,SAAUI,GAActE,MACxBuE,WAAYA,GAAWvE,MACvByE,kBAAmBC,GAAqB1E,MAAMsN,WAC9C9I,kBAAmBG,GAAqB3E,MACxC4E,kBAAmBA,GAAkB5E,MACrCoE,YAAa4I,EACbvN,aAAcA,GAAaO,MAAMsN,WACjCzI,SAAUA,GAAS7E,OAEfqI,QAAiBkF,MAAM,mBAAmBjO,sBAA2B,CACzEkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAChBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAUL,KAEjB/E,QAAaD,EAASsF,OACV,IAAdrF,EAAKC,MACPjE,GAActE,MAAQ,GACtBmJ,GAAQ,KACR,QAAU,CACRwD,KAAM,UACNC,QAAStE,EAAKA,OAEhBhE,GAActE,MAAQ,GACtBuE,GAAWvE,OAAQ,EACnBwE,GAAkBxE,MAAQ,GAC1ByE,GAAkBzE,MAAQ,GAC1BP,GAAaO,MAAQ,CAAC,UAAW,OAAQ,OACzC6E,GAAS7E,MAAQ,IAEjB,QAAU,CACR2M,KAAM,OACNC,QAAStE,EAAKsF,MAGlBvC,EAAgBa,OAClB,CAAE,MAAOzD,IACP,QAAU,CACRkE,KAAM,OACNC,QAAS,kBAEb,CACA/L,GAAOb,OAAQ,CAAK,EAEhB6N,GAAuBvJ,IAC3B,IAAIwJ,EAAe1H,GAASpG,MAAM+N,MAAKrE,GAAQA,EAAKxF,WAAaI,IAC7C,MAAhBwJ,IACFhJ,GAAc9E,MAAQ8N,EAAa3C,UACnC5G,GAAWvE,MAAQ8N,EAAavJ,WAChCE,GAAkBzE,MAAQ8N,EAAarJ,kBAAkBpF,MAAM,KAC/DmF,GAAkBxE,MAAQ8N,EAAatJ,kBACvCI,GAAkB5E,MAAQ8N,EAAalJ,kBACvCpF,GAAgBQ,MAAQ8N,EAAarO,aAAaJ,MAAM,KACxDwF,GAAS7E,MAAQ8N,EAAajJ,SAChC,EAEImJ,GAAwB/G,IACTd,GAAUnG,MAAM+N,MAAKrE,GAAQA,EAAKla,OAASyX,IAAuC,IAAtByC,EAAKpE,cAAsB,EAEtG2I,IAAoB,SAAS,IAC1B9H,GAAUnG,MAAMuK,QAAOb,IAA8B,IAAtBA,EAAKpE,iBAEvC4I,GAAmBjG,UACvB,IACE,MAAMoD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAEd,IACiC,IAA3B/G,GAAkBxE,QACpBwE,GAAkBxE,MAAQ,MAE5BkN,KAAKC,MAAM3I,GAAkBxE,MAC/B,CAAE,MAAOoN,GAMP,OALA,QAAU,CACRT,KAAM,QACNC,QAAS,2BAEXvB,EAAgBa,OAElB,CACA,MAAMY,EAAelN,GAAkBI,MACjCgN,EAAQF,EAAarD,KAAIwD,GAAYA,EAASzd,OAC9C6d,EAAe,CACnBnJ,SAAUA,GAASlE,MACnBmL,UAAWrG,GAAc9E,MACzBuE,WAAYA,GAAWvE,MACvByE,kBAAmBA,GAAkBzE,MAAMsN,WAC3C9I,kBAAmBA,GAAkBxE,MACrC4E,kBAAmBA,GAAkB5E,MACrCoE,YAAa4I,EACbvN,aAAcD,GAAgBQ,MAAMsN,WACpCzI,SAAUA,GAAS7E,OAErBwI,QAAQ2F,IAAId,GACZ,MAAMhF,QAAiBkF,MAAM,mBAAmBjO,0BAA+B,CAC7EkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAChBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAUL,KAEjB/E,QAAaD,EAASsF,OACV,IAAdrF,EAAKC,MACPY,GAAQ,KACR,QAAU,CACRwD,KAAM,UACNC,QAAStE,EAAKA,OAEhBpE,GAASlE,MAAQ,GACjB8E,GAAc9E,MAAQ,GACtBuE,GAAWvE,OAAQ,EACnByE,GAAkBzE,MAAQ,GAC1BwE,GAAkBxE,MAAQ,GAC1BP,GAAaO,MAAQ,CAAC,UAAW,OAAQ,OACzC6E,GAAS7E,MAAQ,IAEjB,QAAU,CACR2M,KAAM,OACNC,QAAStE,EAAKsF,MAGlBvC,EAAgBa,OAClB,CAAE,MAAOzD,IACP,QAAU,CACRkE,KAAM,OACNC,QAAS,kBAEb,CACA7L,GAAQf,OAAQ,CAAK,EAEjBoO,GAAgBnG,UACpB,MAAMoD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAEd,IACE,IACgC,IAA1BnE,GAAiBpH,QACnBoH,GAAiBpH,MAAQ,MAE3BkN,KAAKC,MAAM/F,GAAiBpH,MAC9B,CAAE,MAAOoN,GAMP,OALA,QAAU,CACRT,KAAM,QACNC,QAAS,2BAEXvB,EAAgBa,OAElB,CACA,MAAMkC,EAAgB,CACpB1C,YAAa1E,GAAehH,MAC5B2L,WAAY1E,GAAcjH,MAC1B6L,eAAgB3E,GAAkBlH,MAClC8L,cAAe3E,GAAiBnH,MAAMsN,WACtCvB,cAAe3E,GAAiBpH,MAChCgM,cAAe3E,GAAiBrH,MAAMsN,WACtCzI,SAAUA,GAAS7E,OAEfqI,QAAiBkF,MAAM,mBAAmBjO,uBAA4B,CAC1EkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAChBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAUU,KAEjB9F,QAAaD,EAASsF,OACV,IAAdrF,EAAKC,MACPU,GAAS,KACT,QAAU,CACR0D,KAAM,UACNC,QAAStE,EAAKA,OAEhBtB,GAAehH,MAAQ,GACvBiH,GAAcjH,MAAQ,GACtBkH,GAAkBlH,MAAQ,GAC1BmH,GAAiBnH,MAAQ,GACzBoH,GAAiBpH,MAAQ,GACzBqH,GAAiBrH,MAAQ,CAAC,UAAW,OAAQ,OAC7C6E,GAAS7E,MAAQ,IAEjB,QAAU,CACR2M,KAAM,OACNC,QAAStE,EAAKsF,KAGpB,CAAE,MAAOnF,IACP,QAAU,CACRkE,KAAM,OACNC,QAAS,kBAEb,CACA1L,GAAQlB,OAAQ,EAChBqL,EAAgBa,OAAO,EAEnBmC,IAAe,QAAI,KAEzB,SAAUpG,UACR,MAAMoD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAGdvD,KACI/I,OAAOqP,YAAc,IACvBnO,GAAO0H,QAAQ,WAEf1H,GAAO0H,QAAQ,SAEjB,UAEQ0G,QAAQC,IAAI,CAAC7F,GAAS3I,GAAMA,OAAQmJ,GAAQnJ,GAAMA,OAAQmM,GAAWnM,GAAMA,SAEjF,MAAMqI,QAAiBH,EAAA,EAAMkB,IAAI,mBAAmB9J,wBAA6B,CAC/EwI,aAEIQ,EAAOD,EAASC,KAAKA,KACf,MAARA,IACF+F,GAAarO,MAAQ,GAAGsI,EAAKmG,WAAWnG,EAAKoG,QAEjD,CAAE,MAAOjG,GACPD,QAAQC,MAAM,qBAAsBA,EAEtC,CAAE,QACA4C,EAAgBa,OAClB,KAGF,MAAMyC,GAAoB,EACxBC,SAEwB,GAApBA,EAAIvE,aACC,cAEF,GAEHwE,GAAmB,EACvBD,SAEqB,GAAjBA,EAAIxD,UACC,cAEF,GAKH0D,GAAyB,KAC7B7P,OAAO8P,KAAKhL,GAAmB/D,MAAM,EAKjCgP,GAA2B,KAC/B,IAAIC,EAAMlL,GAAmB/D,MAEM,MAA/BiP,EAAIC,OAAOD,EAAI1P,OAAS,KAE1B0P,GAAO,KAEThQ,OAAO8P,KAAKE,EAAM,cAAc,EAK5BE,GAAyB,KAC7B,IAAIF,EAAMlL,GAAmB/D,MAEM,MAA/BiP,EAAIC,OAAOD,EAAI1P,OAAS,KAE1B0P,GAAO,KAEThQ,OAAO8P,KAAKE,EAAM,QAAQ,EAKtBG,GAAwB,KAC5BnQ,OAAO8P,KAAK,wEAAwE,EAKhFM,IAAc,QAAI,MACxB,IAAIC,GAAkB,GACtB,MAAMC,GAAe,CAACne,EAAKoe,KACzBhH,QAAQ2F,IAAI,QAAQ,EAMhBsB,GAAW,KACfpP,GAAOL,OAAQ,CAAI,EAMf0P,GAAa,KACjB,MAAMrE,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAERoE,EAAM,IAAIC,KACVC,EAAgB,GAAGF,EAAIG,kBAAkBH,EAAII,WAAa,GAAGzC,WAAW0C,SAAS,EAAG,QAAQL,EAAIM,UAAU3C,WAAW0C,SAAS,EAAG,QAAQL,EAAIO,WAAW5C,WAAW0C,SAAS,EAAG,QAAQL,EAAIQ,aAAa7C,WAAW0C,SAAS,EAAG,QAAQL,EAAIS,aAAa9C,WAAW0C,SAAS,EAAG,OAC5P,IAArBjJ,GAAY/G,QACd2G,GAAU3G,OAAQ,EAClB6G,GAAQ7G,OAAQ,EAChB4G,GAAkB5G,OAAQ,GAEC,GAAzBqF,GAAgBrF,QAClB0G,GAAc1G,MAAQwG,GAAYxG,MAAQ,IAAMyG,GAAgBzG,MAChE8G,GAAmB9G,OAAQ,EAC3B2G,GAAU3G,OAAQ,EAClB6G,GAAQ7G,OAAQ,EAChB4G,GAAkB5G,OAAQ,GAE5B,IAAIqQ,EAAM,CACR7gB,KAAM+W,GAAQvG,MACd0H,MAAOhB,GAAc1G,MACrB2J,SAAUnD,GAAYxG,MACtB4J,aAAcnD,GAAgBzG,MAC9B+J,OAAQpD,GAAU3G,MAClBgK,YAAarD,GAAU3G,MACvBiK,eAAgBrD,GAAkB5G,MAClCmK,KAAMtD,GAAQ7G,MACdsF,aAAcD,GAAgBrF,MAC9BiG,gBAAiBa,GAAmB9G,MACpCkK,SAAUnD,GAAY/G,MACtBoK,WAAYyF,GAEdtC,MAAM,mBAAmBjO,kBAAuB,CAC9CkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAChBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAU2C,KACpBjI,MAAKC,GAAYA,EAASsF,SAC5BvF,MAAKE,IACa,GAAbA,EAAKC,MACP,KAAU+H,QAAQ,SAClB/J,GAAQvG,MAAQ,GAChB0G,GAAc1G,MAAQ,GACtBwG,GAAYxG,MAAQ,GACpByG,GAAgBzG,MAAQ,GACxB2G,GAAU3G,OAAQ,EAClB4G,GAAkB5G,OAAQ,EAC1B6G,GAAQ7G,OAAQ,EAChBqF,GAAgBrF,OAAQ,EACxB8G,GAAmB9G,OAAQ,EAC3B+G,GAAY/G,MAAQ,GACH,IAAbqQ,EAAI3I,QACN2I,EAAI3I,MAAQY,EAAKA,KACjB,KAAUgI,QAAQ,mBAGpB,KAAU7H,MAAMH,EAAKsF,KAEvB7G,GAAY/G,MAAQ,GACpB6I,GAAS,IACTwC,EAAgBa,OAAO,IACtBxD,OAAMD,IACP,KAAUA,MAAM,yBAChB4C,EAAgBa,OAAO,IAEzB7L,GAAOL,OAAQ,CAAK,EAMhBuQ,IAAa,QAAI,MACjBC,GAAWvI,UAcf,GAbA1C,GAAQvF,MAAQ4O,EAAIpf,KACpBmW,GAAY3F,MAAQ4O,EAAIjF,SACxB/D,GAAgB5F,MAAQ4O,EAAIhF,aAC5BpE,GAASxF,MAAQ4O,EAAIlH,MACrBjC,GAAezF,MAAQ4O,EAAI/E,aAC3BnE,GAAc1F,MAAQ4O,EAAI9E,YAC1BjE,GAAU7F,MAAQ4O,EAAI7E,OACtBjE,GAAkB9F,MAAQ4O,EAAI3E,eAC9BlE,GAAQ/F,MAAQ4O,EAAIzE,KACpBnE,GAAYhG,MAAQ4O,EAAI1E,SACxB5E,GAAatF,MAAQ4O,EAAItJ,aACzBW,GAAgBjG,MAAQ4O,EAAI3I,gBAC5BC,GAAgBlG,MAAQ4O,EAAIvE,aACF,GAAtB/E,GAAatF,MAEf,YADAM,GAAON,OAAQ,GAGjB,MAAMyQ,EAAc,CAClB1I,cAAe,UAAU6G,EAAI/E,gBAG/B,GADAvJ,GAAON,OAAQ,EACXsF,GAAatF,MAAO,CACtB,MAAMqI,QAAiBH,EAAA,EAAMkB,IAAI,GAAGxE,GAAkB5E,wBAAwB4O,EAAI9E,cAAe,CAC/FhC,QAAS2I,IAEX,IAAIC,EAAY,GACZC,EAAY,GAChB,IAAK,IAAIvf,KAAOiX,EAASC,KAAKsI,MACvBxf,EAAIyf,WAAW,WAClBF,EAAUG,KAAK1f,GACfsf,EAAUI,KAAKzI,EAASC,KAAKsI,MAAMxf,KAGf,GAApBuf,EAAUpR,QAAmC,GAApBmR,EAAUnR,SACrCoR,EAAY,CAAC,QAAS,gBAAiB,sBACvCD,EAAY,CAAC,EAAG,EAAG,IAErB,MAAMK,EAAeC,EAAA,GAAaT,GAAWvQ,OACvCiR,EAAS,CACbC,MAAO,CACLC,KAAM,KAAK9I,EAASC,KAAKsI,MAAM,aAAarL,GAAQvF,aACpDoR,UAAW,CAETC,SAAU,GACVC,MAAO,WAITC,KAAM,SACNC,IAAK,UAGPC,QAAS,CAAC,EACVC,OAAQ,CACNpJ,KAAMqI,GAERgB,MAAO,CACLrJ,KAAMqI,GAERiB,MAAO,CAAC,EACRC,OAAQ,CAAC,CACPriB,KAAM,OACNmd,KAAM,MACNrE,KAAMoI,EACNoB,SAAU,MACVC,UAAW,CACTT,MAAO,SAAUU,GACf,MAAMC,EAAY,CAAC,UAAW,UAAW,UAAW,UAAW,UAAW,UAAW,UAAW,UAAW,UAAW,WACtH,OAAOA,EAAUD,EAAOE,UAAYD,EAAU1S,OAChD,MAINwR,EAAaoB,UAAUlB,EACzB,GAEIvF,IAAc,QAAI,IAClBC,IAAa,QAAI,IACjBC,IAAc,QAAI,IAClBC,IAAiB,QAAI,IACrBC,IAAgB,QAAI,IACpBC,IAAgB,QAAI,IACpBqG,IAAmB,QAAI,IACvBC,IAAmB,QAAI,IACvBrG,IAAgB,QAAI,CAAC,UAAW,OAAQ,QACxCC,IAAY,QAAI,IAChBqG,GAAiB1D,IACrBlD,GAAY1L,MAAQ4O,EAAIlD,YACxBC,GAAW3L,MAAQ4O,EAAIjD,WACvBC,GAAY5L,MAAQ4O,EAAIhD,YACxBC,GAAe7L,MAAQ4O,EAAI/C,eAC3BuG,GAAiBpS,MAAQ4O,EAAI9C,cAC7BC,GAAc/L,MAAQ4O,EAAI7C,cAC1BsG,GAAiBrS,MAAQ4O,EAAI5C,cAC7BnH,GAAS7E,MAAQ4O,EAAI/J,SACrBoH,GAAUjM,MAAQ4O,EAAI3C,UACtB9K,GAAQnB,OAAQ,CAAI,EAEtB,IAAIuS,IAAuB,EACvBC,IAA0B,EAC1BC,GAAgB,GAEpB,MAAMC,GAAa,CAACC,EAAO/D,KACzBrJ,GAAQvF,MAAQ4O,EAAIpf,KACpBmW,GAAY3F,MAAQ4O,EAAIjF,SACxB/D,GAAgB5F,MAAQ4O,EAAIhF,aAE5BpE,GAASxF,MAAQ4O,EAAIlH,MACrB4H,GAAkBV,EAAIlH,MACtB7B,GAAU7F,MAAQ4O,EAAI7E,OACtBjE,GAAkB9F,MAAQ4O,EAAI3E,eAC9BlE,GAAQ/F,MAAQ4O,EAAIzE,KACpBnE,GAAYhG,MAAQ4O,EAAI1E,SACxB5E,GAAatF,MAAQ4O,EAAItJ,aACzBW,GAAgBjG,MAAQ4O,EAAI3I,gBAC5BsM,GAAuBjN,GAAatF,MACpCwS,GAA0BvM,GAAgBjG,MAC1CyS,GAAgBjN,GAASxF,MACzBkG,GAAgBlG,MAAQ4O,EAAIvE,aAC5B5E,GAAezF,MAAQ4O,EAAI/E,aAC3BnE,GAAc1F,MAAQ4O,EAAI9E,YAC1B1J,GAAKJ,OAAQ,CAAI,EAKb4S,GAAmB3K,UACV,GAATjI,EACFO,GAAOP,OAAQ,EACG,GAATA,EACTQ,GAAOR,OAAQ,EACG,GAATA,IACTS,GAAOT,OAAQ,EACjB,EAEI6S,GAAiB7S,IACrB,MAAMqL,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAES,MAAnBnI,GAAUpD,OAAoC,QAAnBoD,GAAUpD,QACvCoD,GAAUpD,MAAQ,IAEC,GAAjBwC,GAAQxC,QACVyC,GAAUzC,MAAQ,GAClB0C,GAAS1C,MAAQ,IAEnB,MAAMoM,EAAM,CACV5J,QAASA,GAAQxC,MACjByC,UAAWA,GAAUzC,MACrB0C,SAAUA,GAAS1C,OAEfpB,EAAa,CACjByE,SAAUA,GAASrD,MACnBsD,SAAUA,GAAStD,MACnBuD,YAAaA,GAAYvD,MACzBwD,WAAYA,GAAWxD,MACvByD,YAAaA,GAAYzD,MACzB0D,aAAcA,GAAa1D,MAC3B2D,aAAcA,GAAa3D,OAEvB8S,EAAU,CACdhR,iBAAkBA,GAAiB9B,MACnC+B,oBAAqBA,GAAoB/B,MACzCgC,KAAMA,GAAKhC,MACXiC,QAASA,GAAQjC,MACjBkC,UAAWA,GAAUlC,MACrBmC,aAAcA,GAAanC,MAC3B2C,cAAeA,GAAc3C,MAC7B4C,eAAgBA,GAAe5C,MAC/B6C,cAAeA,GAAc7C,MAC7B8C,cAAeA,GAAc9C,MAC7B+C,WAAYA,GAAW/C,MAEvBoC,eAAgBA,GAAepC,MAC/BqC,iBAAkBA,GAAiBrC,MACnCsC,mBAAoBA,GAAmBtC,MACvCuC,gBAAiBA,GAAgBvC,MAEjCgD,WAAYA,GAAWhD,MACvBiD,iBAAkBA,GAAiBjD,MACnCkD,cAAeA,GAAclD,MAC7BmD,cAAeA,GAAcnD,MAC7BoD,UAAWA,GAAUpD,MACrBpB,WAAYA,EACZwN,IAAKA,GAEPmB,MAAM,mBAAmBjO,wBAA6B,CACpDkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAChBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAUoF,KAGtB1K,MAAKC,GAAYA,EAASsF,SAAQvF,MAAKE,IACrB,GAAbA,EAAKC,KACP,KAAU+H,QAAQhI,EAAKA,MAEvB,KAAUG,MAAMH,EAAKsF,KAEvB5F,KACAqD,EAAgBa,OAAO,IACtBxD,OAAMD,IACP4C,EAAgBa,QAChB1D,QAAQC,MAAM,uBAAwBA,GACtC,KAAUA,MAAM,QAAQ,IAEb,GAATzI,EACFO,GAAOP,OAAQ,EACG,GAATA,EACTQ,GAAOR,OAAQ,EACG,GAATA,IACTS,GAAOT,OAAQ,EACjB,EAEI+S,GAAoB,KACxB,MAAM1H,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAG+D,MAAzExH,GAAmB/D,MAAMkP,OAAOnL,GAAmB/D,MAAMT,OAAS,KAEpEwE,GAAmB/D,OAAS,KAE9B,MAAM8S,EAAU,CACdlP,mBAAoBA,GAAmB5D,MACvC6D,gBAAiBA,GAAgB7D,MACjC8D,kBAAmBA,GAAkB9D,MACrC+D,mBAAoBA,GAAmB/D,MACvCgE,cAAeA,GAAchE,MAC7BiE,iBAAkBA,GAAiBjE,OAErCuN,MAAM,mBAAmBjO,wBAA6B,CACpDkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAChBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAUoF,KAGtB1K,MAAKC,GAAYA,EAASsF,SAAQvF,MAAKE,IACrB,GAAbA,EAAKC,KACP,KAAU+H,QAAQhI,EAAKA,MAEvB,KAAUG,MAAMH,EAAKsF,KAEvBvC,EAAgBa,OAAO,IACtBxD,OAAMD,IACP4C,EAAgBa,QAChB1D,QAAQC,MAAM,uBAAwBA,GACtC,KAAUA,MAAM,QAAQ,IAE1B7H,GAAOZ,OAAQ,CAAK,EAMhBgT,GAAe,KACnB,MAAM3H,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAEd,IAAIsE,EAAgB,GACpB,GAAIP,IAAmB9J,GAASxF,MAAO,CACrC,MAAM2P,EAAM,IAAIC,KAChBC,EAAgB,GAAGF,EAAIG,kBAAkBH,EAAII,WAAa,GAAGzC,WAAW0C,SAAS,EAAG,QAAQL,EAAIM,UAAU3C,WAAW0C,SAAS,EAAG,QAAQL,EAAIO,WAAW5C,WAAW0C,SAAS,EAAG,QAAQL,EAAIQ,aAAa7C,WAAW0C,SAAS,EAAG,QAAQL,EAAIS,aAAa9C,WAAW0C,SAAS,EAAG,MACjR,CAC0B,GAAtB1K,GAAatF,QACf6F,GAAU7F,OAAQ,EAClB+F,GAAQ/F,OAAQ,EAChB8F,GAAkB9F,OAAQ,EAC1BiG,GAAgBjG,OAAQ,IAEF,IAApB6F,GAAU7F,MACZgG,GAAYhG,MAAQ,IAEpB+F,GAAQ/F,OAAQ,EAChB8F,GAAkB9F,OAAQ,GAE5B,IAAI4N,EAAM,GAGNA,EAFA2E,IAAwBjN,GAAatF,OAASyS,IAAiBjN,GAASxF,MAChD,GAAtBsF,GAAatF,MACT,4CAEuB,GAAzBiG,GAAgBjG,MACZ,yDAEA,yDAGDwS,IAA2BvM,GAAgBjG,OAASyS,IAAiBjN,GAASxF,MAC1D,GAAzBiG,GAAgBjG,MACZ,kDAEA,kDAGF,mBAER,IAAaiT,QAAQrF,EAAK,OAAQ,CAChCpB,kBAAmB,KACnB0G,iBAAkB,KAClBvG,KAAM,YACLvE,MAAK,KACN,MAAMiI,EAAM,CACV7gB,KAAM+V,GAAQvF,MACd0H,MAAOlC,GAASxF,MAChB2J,SAAUhE,GAAY3F,MACtB4J,aAAchE,GAAgB5F,MAC9B+J,OAAQlE,GAAU7F,MAClBgK,YAAanE,GAAU7F,MACvBiK,eAAgBnE,GAAkB9F,MAClCmK,KAAMpE,GAAQ/F,MACdsF,aAAcA,GAAatF,MAC3BiG,gBAAiBA,GAAgBjG,MACjCqK,aAAcnE,GAAgBlG,MAC9BkK,SAAUlE,GAAYhG,MACtB6J,aAAcpE,GAAezF,MAC7B8J,YAAapE,GAAc1F,OAE7BuN,MAAM,mBAAmBjO,uBAA4B,CACnDkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAChBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAU2C,KAGtBjI,MAAKC,GAAYA,EAASsF,SAAQvF,MAAKE,IACrB,GAAbA,EAAKC,MACP,KAAU+H,QAAQhI,EAAKA,MACvBO,GAAS,KAET,KAAUJ,MAAMH,EAAKsF,KAEvBvC,EAAgBa,OAAO,IACtBxD,OAAMD,IACP4C,EAAgBa,QAChB1D,QAAQC,MAAM,qBAAsBA,GACpC,KAAUA,MAAM,QAAQ,IAE1BrI,GAAKJ,OAAQ,CAAK,IACjB0I,OAAM,KACP2C,EAAgBa,SAChB,QAAU,CACRS,KAAM,OACNC,QAAS,SAEL,GACN,EAKEuG,GAAclL,UAClB,MAAMoD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAERlD,QAAiBH,EAAA,EAAMkB,IAAI,mBAAmB9J,cAAmB,CACrEwI,aAEIQ,EAAOD,EAASC,KAAKA,KACf,MAARA,GAAwB,IAARA,EAClB,IAAaiE,MAAMjE,EAAM,OAAQ,CAC/BkE,kBAAmB,OAGrB,KAAU/D,MAAMJ,EAASC,KAAKsF,KAEhCvC,EAAgBa,OAAO,EAKnBkH,GAAenL,UACnB,MAAMoD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAERlD,QAAiBH,EAAA,EAAMkB,IAAI,mBAAmB9J,eAAoB,CACtEwI,aAEIQ,EAAOD,EAASC,KAAKA,KACf,MAARA,GAAwB,IAARA,EAClB,IAAaiE,MAAMjE,EAAM,OAAQ,CAC/BkE,kBAAmB,OAGrB,KAAU/D,MAAMJ,EAASC,KAAKsF,KAEhCvC,EAAgBa,OAAO,EAKnBmH,GAAepL,UACnB,MAAMoD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAERlD,QAAiBH,EAAA,EAAMkB,IAAI,mBAAmB9J,iBAAsB,CACxEwI,aAEIQ,EAAOD,EAASC,KAAKA,KACf,MAARA,GAAwB,IAARA,EAClB,IAAaiE,MAAMjE,EAAM,OAAQ,CAC/BkE,kBAAmB,OAGrB,KAAU/D,MAAMJ,EAASC,KAAKsF,KAEhCvC,EAAgBa,OAAO,EAKnBoH,GAAgBrL,UACpB,MAAMoD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAERlD,QAAiBH,EAAA,EAAMkB,IAAI,mBAAmB9J,gBAAqB,CACvEwI,aAEIQ,EAAOD,EAASC,KAAKA,KACf,MAARA,GAAwB,IAARA,EAClB,IAAaiE,MAAMjE,EAAM,OAAQ,CAC/BkE,kBAAmB,OAGrB,KAAU/D,MAAMJ,EAASC,KAAKsF,KAEhCvC,EAAgBa,OAAO,EAKnBqH,IAAY,QAAI,IAChBC,IAAc,QAAI,IAClBC,GAAiBxL,UACrB,MAAMI,QAAiBH,EAAA,EAAMkB,IAAI,mBAAmB9J,wBAA6B,CAC/EwI,aAEIQ,EAAOD,EAASC,KAAKA,KAC3B,GAAY,MAARA,EAAc,CAChB+F,GAAarO,MAAQsI,EAAKmG,QAAU,IAAMnG,EAAKoG,MAC/C6E,GAAUvT,MAAQsI,EAAKoL,GACvB,IAAIC,EAAc,IAAI/D,KACtB,MAAMgE,EAAa,IAAIhE,KAAK+D,EAAYE,UAAuB,IAAXvL,EAAKwL,KACzD,IAAIC,EAAOH,EAAW9D,cAClBkE,EAAQJ,EAAW7D,WAAa,EAChCkE,EAAML,EAAW3D,UACjBiE,EAAQN,EAAW1D,WACnBiE,EAAUP,EAAWzD,aACrBiE,EAAUR,EAAWxD,aACzBoD,GAAYxT,MAAQ+T,EAAO,IAAMC,EAAQ,IAAMC,EAAM,IAAMC,EAAQ,IAAMC,EAAU,IAAMC,CAC3F,CACAzT,GAAOX,OAAQ,CAAI,EAKfqU,GAAsBpM,UAC1B,MAAMoD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAERlD,QAAiBH,EAAA,EAAMkB,IAAI,mBAAmB9J,wBAA6B,CAC/EwI,aAEIQ,EAAOD,EAASC,KAAKA,KACf,MAARA,GAAwB,IAARA,SACZiG,QAAQC,IAAI,CAAC3F,GAAS,IAAKM,GAAQ,MACzC,IAAaoD,MAAMjE,EAAM,OAAQ,CAC/BgM,0BAA0B,KAG5B,KAAU7L,MAAMJ,EAASC,KAAKsF,KAEhCvC,EAAgBa,OAAO,EA+CnBqI,GAAQ3F,IACZ,GAAwB,GAApBA,EAAItJ,aAEN,YADA,KAAUmD,MAAM,iBAGlB,IAAI+L,EAAW,0DACX5F,EAAI3I,kBACNuO,EAAW,4DAEb,IAAavB,QAAQuB,EAAU,OAAQ,CACrChI,kBAAmB,KACnB0G,iBAAkB,KAClBvG,KAAM,YACLvE,MAAK,KACN,MAAMiD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAEdgC,MAAM,mBAAmBjO,4BAAiC,CACxDkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAEhBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAUkB,KACpBxG,MAAKC,IACN,IAAKA,EAASoM,GACZ,MAAM,IAAIC,MAAM,+BAElB,OAAOrM,EAASsF,MAAM,IACrBvF,MAAKE,IACM,MAARA,GAAwB,IAARA,IACD,MAAbA,EAAKA,MACPsG,EAAIlH,MAAQY,EAAKA,KACjBO,GAAS,IACT,IAAa0D,MAAM,QAAS,OAAQ,CAClCC,kBAAmB,QAGrB,KAAU/D,MAAMH,EAAKsF,MAGzBvC,EAAgBa,OAAO,IACtBxD,OAAMD,IACP4C,EAAgBa,QAChB1D,QAAQC,MAAM,SAAUA,EAAM,GAC9B,IACDC,OAAM,MACP,QAAU,CACRiE,KAAM,OACNC,QAAS,SACT,GACF,EAKE+H,GAAY/F,IAChB,MAAMvD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAEdgC,MAAM,mBAAmBjO,gCAAqC,CAC5DkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAEhBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAUkB,KACpBxG,MAAKC,IACN,IAAKA,EAASoM,GACZ,MAAM,IAAIC,MAAM,+BAElB,OAAOrM,EAASsF,MAAM,IACrBvF,MAAKE,IACM,MAARA,GAAwB,IAARA,IACD,MAAbA,EAAKA,MACPa,GAAQ,IACR,IAAaoD,MAAM,QAAS,OAAQ,CAClCC,kBAAmB,QAGrB,KAAU/D,MAAMH,EAAKsF,MAGzBvC,EAAgBa,OAAO,IACtBxD,OAAMD,IACP4C,EAAgBa,QAChB1D,QAAQC,MAAM,SAAUA,EAAM,GAC9B,EAEEmM,GAAchG,IAClBlD,GAAY1L,MAAQ4O,EAAIlD,YACxBC,GAAW3L,MAAQ4O,EAAIjD,WACvBC,GAAY5L,MAAQ4O,EAAIhD,YACxBC,GAAe7L,MAAQ4O,EAAI/C,eAC3BC,GAAc9L,MAAQ4O,EAAI9C,cAAczM,MAAM,KAC9C0M,GAAc/L,MAAQ4O,EAAI7C,cAC1BC,GAAchM,MAAQ4O,EAAI5C,cAAc3M,MAAM,KAC9CwF,GAAS7E,MAAQ4O,EAAI/J,SACrBoH,GAAUjM,MAAQ4O,EAAI3C,UACtB7K,GAAQpB,OAAQ,CAAI,EAEhB6U,GAAoB,KACxB,MAAMxJ,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAERuJ,EAAe,CACnBpJ,YAAaA,GAAY1L,MACzB2L,WAAYA,GAAW3L,MACvB4L,YAAaA,GAAY5L,MACzB6L,eAAgBA,GAAe7L,MAC/B8L,cAAeA,GAAc9L,MAAMsN,WACnCvB,cAAeA,GAAc/L,MAC7BgM,cAAeA,GAAchM,MAAMsN,WACnCzI,SAAUA,GAAS7E,OAErBuN,MAAM,mBAAmBjO,2BAAgC,CACvDkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAEhBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAUoH,KACpB1M,MAAKC,IACN,IAAKA,EAASoM,GACZ,MAAM,IAAIC,MAAM,+BAElB,OAAOrM,EAASsF,MAAM,IACrBvF,MAAKE,IACM,MAARA,GAAwB,IAARA,IACD,MAAbA,EAAKA,KACP,IAAaiE,MAAMjE,EAAKA,KAAM,OAAQ,CACpCkE,kBAAmB,OAGrB,KAAU/D,MAAMH,EAAKsF,MAGzB3E,GAAS,IACToC,EAAgBa,OAAO,IACtBxD,OAAMD,IACP4C,EAAgBa,QAChB1D,QAAQC,MAAM,SAAUA,EAAM,IAEhCrH,GAAQpB,OAAQ,CAAK,EAKjB+U,GAASnG,IACb,GAAwB,GAApBA,EAAItJ,aAEN,YADA,KAAUmD,MAAM,iBAGlB,MAAM4C,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAEdgC,MAAM,mBAAmBjO,qBAA0B,CACjDkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAEhBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAUkB,KACpBxG,MAAKC,IACN,IAAKA,EAASoM,GACZ,MAAM,IAAIC,MAAM,+BAElB,OAAOrM,EAASsF,MAAM,IACrBvF,MAAKE,IACM,MAARA,GAAwB,IAARA,IACD,MAAbA,EAAKA,KACP,IAAaiE,MAAM,kBAAmB,OAAQ,CAC5CC,kBAAmB,OAGrB,KAAU/D,MAAMH,EAAKsF,MAGzB/E,GAAS,IACTwC,EAAgBa,OAAO,IACtBxD,OAAMD,IACP4C,EAAgBa,QAChB1D,QAAQC,MAAM,SAAUA,EAAM,GAC9B,EAKEuM,GAAapG,IACjB,MAAMvD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAEdgC,MAAM,mBAAmBjO,yBAA8B,CACrDkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAEhBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAUkB,KACpBxG,MAAKC,IACN,IAAKA,EAASoM,GACZ,MAAM,IAAIC,MAAM,+BAElB,OAAOrM,EAASsF,MAAM,IACrBvF,MAAKE,IACM,MAARA,GAAwB,IAARA,IACD,MAAbA,EAAKA,MACPa,GAAQ,IACR,IAAaoD,MAAM,kBAAmB,OAAQ,CAC5CC,kBAAmB,QAGrB,KAAU/D,MAAMH,EAAKsF,MAGzBvC,EAAgBa,OAAO,IACtBxD,OAAMD,IACP4C,EAAgBa,QAChB1D,QAAQC,MAAM,SAAUA,EAAM,GAC9B,EAMEwM,GAAkB,CAACtC,EAAO/D,KAC9B,MAAMvD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAGd,IAAa0H,QAAQ,4CAA6C,OAAQ,CACxEzG,kBAAmB,KACnB0G,iBAAkB,KAClBvG,KAAM,YACLvE,MAAK,KACNmF,MAAM,mBAAmBjO,yBAA8B,CACrDkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAEhBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAUkB,KACpBxG,MAAKC,IACN,IAAKA,EAASoM,GACZ,MAAM,IAAIC,MAAM,+BAElB,OAAOrM,EAASsF,MAAM,IACrBvF,MAAKE,IACW,MAAbA,EAAKA,MACPa,GAAQ,IACR,KAAUmH,QAAQhI,EAAKA,MACvB+C,EAAgBa,UAEhB/C,GAAQ,IACR,KAAUV,MAAMH,EAAKsF,KACrBvC,EAAgBa,SAElBrL,GAAOb,OAAQ,CAAK,IACnB0I,OAAMD,IAEPD,QAAQC,MAAM,OAAQA,GACtBU,GAAQ,IACRkC,EAAgBa,QAChBrL,GAAOb,OAAQ,CAAK,GACpB,IACD0I,OAAM,KACP2C,EAAgBa,SAChB,QAAU,CACRS,KAAM,OACNC,QAAS,SACT,GACF,EAMEsI,GAAwB,CAACvC,EAAO/D,KACpC,MAAMvD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAEdgC,MAAM,mBAAmBjO,+BAAoC,CAC3DkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAEhBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAUkB,KACpBxG,MAAKC,IACN,IAAKA,EAASoM,GACZ,MAAM,IAAIC,MAAM,+BAElB,OAAOrM,EAASsF,MAAM,IACrBvF,MAAKE,IACM,MAARA,GAAwB,IAARA,IACD,MAAbA,EAAKA,MACPa,GAAQ,IACR,IAAaoD,MAAMjE,EAAKA,KAAM,OAAQ,CACpCkE,kBAAmB,SAGrBrD,GAAQ,IACR,KAAUV,MAAMH,EAAKsF,OAGzBvC,EAAgBa,OAAO,IACtBxD,OAAMD,IACP4C,EAAgBa,QAChB1D,QAAQC,MAAM,SAAUA,EAAM,GAC9B,EAME0M,GAAc,CAACxC,EAAO/D,KAC1B,MAAMvD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAEd,IAAIqC,EAAM,GACV,IAAaqF,QAAQ,6CAA8C,OAAQ,CACzEzG,kBAAmB,KACnB0G,iBAAkB,KAClBvG,KAAM,YACLvE,MAAK,KACNF,EAAA,EAAMkN,IAAI,mBAAmB9V,qBAA0BsP,EAAK,CAC1D9G,aACCM,MAAKH,UACkB,GAApB2G,EAAItJ,oBACA4C,EAAA,EAAMkB,IAAI,mBAAmB9J,4BAAiC,CAClEwI,aAGJ8F,EAAMvF,EAASC,KAAKA,KACpBO,GAAS,KACT,QAAU,CACR8D,KAAM,UACNC,QAASgB,IAEXvC,EAAgBa,OAAO,IACtBxD,OAAMD,IAEP4C,EAAgBa,QAChB1D,QAAQC,MAAM,OAAQA,EAAM,GAC5B,IACDC,OAAM,MACP,QAAU,CACRiE,KAAM,OACNC,QAAS,UAEXvB,EAAgBa,OAAO,GACvB,EAMEmJ,GAAmB,CAAC1C,EAAO/D,KAC/B,MAAMvD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAEd,IAAIqC,EAAM,GACV,IAAaqF,QAAQ,iCAAkC,OAAQ,CAC7DzG,kBAAmB,KACnB0G,iBAAkB,KAClBvG,KAAM,YACLvE,MAAK,KACNF,EAAA,EAAMkN,IAAI,mBAAmB9V,0BAA+BsP,EAAK,CAC/D9G,aACCM,MAAKH,UACN2F,EAAMvF,EAASC,KAAKA,KACpBW,GAAS,KACT,QAAU,CACR0D,KAAM,UACNC,QAASgB,IAEXvC,EAAgBa,OAAO,IACtBxD,OAAMD,IAEP4C,EAAgBa,QAChB1D,QAAQC,MAAM,OAAQA,EAAM,GAC5B,IACDC,OAAM,MACP,QAAU,CACRiE,KAAM,OACNC,QAAS,UAEXvB,EAAgBa,OAAO,GACvB,EAKEoJ,GAAatV,IACjB,IAAKA,EAAO,MAAO,GACnB,IAAIuV,EAAS,IAAI3F,KACjB,MAAM4F,GAAU,EAAAC,EAAA,GAASzV,EAAMoK,YACzBsL,GAAW,EAAAC,EAAA,GAAiBJ,EAAQC,GAC1C,OAAIxV,EAAM0H,MAAMnI,QAAU,IACjBmW,GAAY,GAAK,aAAeE,KAAKC,KAAK,GAAKH,GAAY,IACzD1V,EAAM0H,MAAMnI,OAAS,MAAQS,EAAM0H,MAAMoB,SAAS,OACpD,KAEA4M,GAAY,GAAK,aAAeE,KAAKC,KAAK,GAAKH,GAAY,GACpE,EAKII,GAAY9V,GACTA,EAAM+V,UAAU,EAAG,IAAM,MAK5BC,GAAS,KAEbrO,aAAasO,WAAW,YAExB9V,GAAO0H,QAAQ,IAAI,EAEfqO,GAAe,KACnBxV,GAAOV,OAAQ,CAAI,EAEfmW,GAAgBlO,gBACdgB,GAAS,IACfhI,GAAQjB,OAAQ,CAAI,EAEhBoW,GAAW,KACf3L,KACA3J,GAAQd,OAAQ,CAAI,EAEhBqW,GAAmB,KACvBpX,OAAO8P,KAAK,wDAAwD,EAEhEuH,GAAYtW,IAChB,MAAMuW,EAAWC,SAASC,cAAc,YAExCF,EAASvW,MAAQA,EAEjBwW,SAAS/I,KAAKiJ,YAAYH,GAE1BA,EAASI,SAETH,SAASI,YAAY,QAErBJ,SAAS/I,KAAKoJ,YAAYN,IAC1B,QAAU,CACR5J,KAAM,UACNC,QAAS,SACT,EAEEkK,GAAexV,IACnB,MAAMwL,EAAelN,GAAkBI,MACjCiN,EAAWH,EAAarD,KAAIwD,GAAYA,IAC9C,GAA4B,IAAxBH,EAAavN,OAIjB,GAAmB,aAAf+B,EAoCG,GAAmB,aAAfA,EA0De,kBAAfA,EACTuL,KACwB,kBAAfvL,IACT4C,GAASlE,MAAQ,GACjBoE,GAAYpE,MAAQ,GACpB8E,GAAc9E,MAAQ,GACtBqE,GAASrE,MAAQ,GACjBuE,GAAWvE,OAAQ,EACnByE,GAAkBzE,MAAQ,GAC1BwE,GAAkBxE,MAAQ,GAC1B4E,GAAkB5E,MAAQ,GAC1BP,GAAaO,MAAQ,GACrB6E,GAAS7E,MAAQ,EACjBe,GAAQf,OAAQ,OAvEX,CACL,IAAI+W,EAAQ,EACZ,MAAMjK,EAAelN,GAAkBI,MACjCiN,EAAWH,EAAarD,KAAIwD,GAAYA,IAC9CA,EAAS+J,SAAQ,CAACtN,EAAMiJ,KAClBjJ,EAAKpE,eACHoE,EAAKzD,gBACP8Q,GAAS,IAETA,GAAS,IAEb,IAEF,MAAMvC,EAAW,QAAUuC,EAAQ,QAAUjK,EAAavN,OAAS,sBACnE,IAAa0T,QAAQuB,EAAU,OAAQ,CACrChI,kBAAmB,KACnB0G,iBAAkB,KAClBvG,KAAM,YACLvE,MAAK,KACN,MAAMiD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAEdgC,MAAM,mBAAmBjO,gCAAqC,CAC5DkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAEhBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAUT,KACpB7E,MAAKC,IACN,IAAKA,EAASoM,GACZ,MAAM,IAAIC,MAAM,+BAElB,OAAOrM,EAASsF,MAAM,IACrBvF,MAAKE,IACM,MAARA,GAAwB,IAARA,IACD,MAAbA,EAAKA,MACPO,GAAS,IACT,IAAa0D,MAAMjE,EAAKA,KAAM,OAAQ,CACpCkE,kBAAmB,QAGrB,KAAU/D,MAAMH,EAAKsF,MAGzBvC,EAAgBa,OAAO,IACtBxD,OAAMD,IACP4C,EAAgBa,QAChB1D,QAAQC,MAAM,SAAUA,EAAM,GAC9B,IACDC,OAAM,MACP,QAAU,CACRiE,KAAM,OACNC,QAAS,SACT,GAiBN,KA5GA,CACE,MAAMvB,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAEd,IAAIqC,EAAM,GACV,IAAaqF,QAAQ,UAAYnG,EAAavN,OAAS,oBAAqB,OAAQ,CAClFiN,kBAAmB,KACnB0G,iBAAkB,KAClBvG,KAAM,YACLvE,MAAK,KACNF,EAAA,EAAMkN,IAAI,mBAAmB9V,yBAA8B2N,EAAU,CACnEnF,aACCM,MAAKH,gBACAC,EAAA,EAAMkB,IAAI,mBAAmB9J,4BAAiC,CAClEwI,aAEF8F,EAAMvF,EAASC,KAAKA,KACpBO,GAAS,KACT,QAAU,CACR8D,KAAM,UACNC,QAASgB,IAEXvC,EAAgBa,OAAO,IACtBxD,OAAMD,IAEP4C,EAAgBa,QAChB1D,QAAQC,MAAM,OAAQA,EAAM,GAC5B,IACDC,OAAM,MACP,QAAU,CACRiE,KAAM,OACNC,QAAS,UAEXvB,EAAgBa,OAAO,GA2E3B,MA/GE,QAAU,QA+GZ,EAEI+K,GAAWrI,IACfzK,GAAYnE,MAAQ4O,EAAI1K,SACxBE,GAAYpE,MAAQ4O,EAAIxK,YACxBU,GAAc9E,MAAQ4O,EAAIzD,UAC1B9G,GAASrE,MAAQ4O,EAAIvK,SACrBE,GAAWvE,MAAQ4O,EAAIrK,WACvBE,GAAkBzE,MAAQ4O,EAAInK,kBAAkBpF,MAAM,KACtDmF,GAAkBxE,MAAQ4O,EAAIpK,kBAC9BI,GAAkB5E,MAAQ4O,EAAIhK,kBAC9BpF,GAAgBQ,MAAQ4O,EAAInP,aAAaJ,MAAM,KAC/CwF,GAAS7E,MAAQ4O,EAAI/J,SACrBxD,GAAQrB,OAAQ,CAAI,EAEhBkX,GAAmB5V,IACvB,MAAM6V,EAAmBtX,GAAsBG,MACzCoX,EAAcD,EAAiB1N,KAAI2N,GAAeA,IACxD,GAA2B,IAAvBA,EAAY7X,OAIhB,GAAmB,kBAAf+B,EA+CG,GAAmB,kBAAfA,EA8CJ,GAAmB,kBAAfA,EA+CJ,GAAmB,kBAAfA,OAAJ,CACO6V,EAAiB5X,OAC7B,MAAMiV,EAAW,UAAY2C,EAAiB5X,OAAS,2BACvD,IAAa0T,QAAQuB,EAAU,OAAQ,CACrChI,kBAAmB,KACnB0G,iBAAkB,KAClBvG,KAAM,YACLvE,MAAK,KACN,MAAMiD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAEdgC,MAAM,mBAAmBjO,6BAAkC,CACzDkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAEhBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAU0J,KACpBhP,MAAKC,IACN,IAAKA,EAASoM,GACZ,MAAM,IAAIC,MAAM,+BAElB,OAAOrM,EAASsF,MAAM,IACrBvF,MAAKE,IACM,MAARA,GAAwB,IAARA,IACD,MAAbA,EAAKA,MACPa,GAAQ,IACR,IAAaoD,MAAMjE,EAAKA,KAAM,OAAQ,CACpCkE,kBAAmB,QAGrB,KAAU/D,MAAMH,EAAKsF,MAGzBvC,EAAgBa,OAAO,IACtBxD,OAAMD,IACP4C,EAAgBa,QAChB1D,QAAQC,MAAM,SAAUA,EAAM,GAC9B,IACDC,OAAM,MACP,QAAU,CACRiE,KAAM,OACNC,QAAS,SACT,GAGN,KA9FO,CACOuK,EAAiB5X,OAC7B,MAAMiV,EAAW,UAAY2C,EAAiB5X,OAAS,2BACvD,IAAa0T,QAAQuB,EAAU,OAAQ,CACrChI,kBAAmB,KACnB0G,iBAAkB,KAClBvG,KAAM,YACLvE,MAAK,KACN,MAAMiD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAEdgC,MAAM,mBAAmBjO,6BAAkC,CACzDkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAEhBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAU0J,KACpBhP,MAAKC,IACN,IAAKA,EAASoM,GACZ,MAAM,IAAIC,MAAM,+BAElB,OAAOrM,EAASsF,MAAM,IACrBvF,MAAKE,IACM,MAARA,GAAwB,IAARA,IACD,MAAbA,EAAKA,MACPa,GAAQ,IACR,IAAaoD,MAAMjE,EAAKA,KAAM,OAAQ,CACpCkE,kBAAmB,QAGrB,KAAU/D,MAAMH,EAAKsF,MAGzBvC,EAAgBa,OAAO,IACtBxD,OAAMD,IACP4C,EAAgBa,QAChB1D,QAAQC,MAAM,SAAUA,EAAM,GAC9B,IACDC,OAAM,MACP,QAAU,CACRiE,KAAM,OACNC,QAAS,SACT,GAkDN,KA5IO,CACL,MAAM4H,EAAW,UAAY2C,EAAiB5X,OAAS,gBACvD,IAAa0T,QAAQuB,EAAU,OAAQ,CACrChI,kBAAmB,KACnB0G,iBAAkB,KAClBvG,KAAM,YACLvE,MAAK,KACN,MAAMiD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAEdgC,MAAM,mBAAmBjO,oCAAyC,CAChEkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAEhBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAU0J,KACpBhP,MAAKC,IACN,IAAKA,EAASoM,GACZ,MAAM,IAAIC,MAAM,+BAElB,OAAOrM,EAASsF,MAAM,IACrBvF,MAAKE,IACM,MAARA,GAAwB,IAARA,IACD,MAAbA,EAAKA,MACPa,GAAQ,IACR,IAAaoD,MAAMjE,EAAKA,KAAM,OAAQ,CACpCkE,kBAAmB,QAGrB,KAAU/D,MAAMH,EAAKsF,MAGzBvC,EAAgBa,OAAO,IACtBxD,OAAMD,IACP4C,EAAgBa,QAChB1D,QAAQC,MAAM,SAAUA,EAAM,GAC9B,IACDC,OAAM,MACP,QAAU,CACRiE,KAAM,OACNC,QAAS,SACT,GAiGN,KA3LA,CACE,IAAImK,EAAkC,EAA1BI,EAAiB5X,OAC7B,MAAMiV,EAAW,QAAUuC,EAAQ,QAAUI,EAAiB5X,OAAS,2BACvE,IAAa0T,QAAQuB,EAAU,OAAQ,CACrChI,kBAAmB,KACnB0G,iBAAkB,KAClBvG,KAAM,YACLvE,MAAK,KACN,MAAMiD,EAAkB,KAAUC,QAAQ,CACxCC,YAAY,IAEdgC,MAAM,mBAAmBjO,mCAAwC,CAC/DkO,OAAQ,OACR1F,QAAS,CACP,eAAgB,mBAEhBC,cAAe,UAAUL,MAE3B+F,KAAMP,KAAKQ,UAAU0J,KACpBhP,MAAKC,IACN,IAAKA,EAASoM,GACZ,MAAM,IAAIC,MAAM,+BAElB,OAAOrM,EAASsF,MAAM,IACrBvF,MAAKE,IACM,MAARA,GAAwB,IAARA,IACD,MAAbA,EAAKA,MACPa,GAAQ,IACR,IAAaoD,MAAMjE,EAAKA,KAAM,OAAQ,CACpCkE,kBAAmB,QAGrB,KAAU/D,MAAMH,EAAKsF,MAGzBvC,EAAgBa,OAAO,IACtBxD,OAAMD,IACP4C,EAAgBa,QAChB1D,QAAQC,MAAM,SAAUA,EAAM,GAC9B,IACDC,OAAM,MACP,QAAU,CACRiE,KAAM,OACNC,QAAS,SACT,GA+IN,MA9LE,QAAU,QA8LZ,EAEIyK,IAAQ,QAAI,MACZC,GAAWrP,UACfjH,GAAQhB,OAAQ,EAChB,MAAMqI,QAAiBH,EAAA,EAAMkB,IAAI,mBAAmB9J,qBAA0B,CAC5EwI,aAEF,IAAI4I,EAAYrI,EAASC,KAAKA,KAAKmB,KAAIC,GAAQA,EAAKkH,QAChDD,EAAYtI,EAASC,KAAKA,KAAKmB,KAAIC,GAAQA,EAAK6N,QACpD,MAAMC,EAAUxG,EAAA,GAAaqG,GAAMrX,OAC7BiR,EAAS,CACbC,MAAO,CACLC,KAAM,qBACNE,SAAU,GACVC,MAAO,WAGTG,QAAS,CAAC,EACVC,OAAQ,CACNpJ,KAAMqI,GAERgB,MAAO,CACLrJ,KAAMqI,GAERiB,MAAO,CAAC,EACRC,OAAQ,CAAC,CACPriB,KAAM,OACNmd,KAAM,MACNrE,KAAMoI,EACNoB,SAAU,MACVC,UAAW,CACTT,MAAO,SAAUU,GACf,MAAMC,EAAY,CAAC,UAAW,UAAW,UAAW,UAAW,UAAW,UAAW,UAAW,UAAW,UAAW,UAAW,WACjI,OAAOA,EAAUD,EAAOE,UAAYD,EAAU1S,OAChD,MAINiY,EAAQrF,UAAUlB,EAAO,EAE3B,MAAO,CAACwG,EAAMC,KACZ,MAAMC,GAA0B,QAAkB,gBAC5CC,EAAsB,KACtBC,GAAyB,QAAkB,eAC3CC,GAAiB,QAAkB,OACnCC,GAAqB,QAAkB,WACvCC,EAAwB,KACxBC,GAA4B,QAAkB,kBAC9CC,GAA6B,QAAkB,mBAC/CC,GAA4B,QAAkB,kBAC9CC,GAAwB,KACxBC,IAA6B,QAAkB,mBAC/CC,IAAuB,QAAkB,aACzCC,IAAoB,QAAkB,UACtCC,IAAwB,QAAkB,cAC1CC,IAAuB,QAAkB,aACzCC,IAAuB,QAAkB,aACzCC,IAA6B,QAAkB,mBAC/CC,GAAuB,KACvBC,GAAwB,KACxBC,GAA4B,KAC5BC,GAAsB,KACtBC,GAAwB,KACxBC,IAA0B,QAAkB,gBAC5CC,IAAqB,QAAkB,WACvCC,IAA6B,QAAkB,mBAC/CC,IAAuB,QAAkB,aACzCC,IAA0B,QAAkB,gBAC5CC,IAAsB,QAAkB,YACxCC,GAA0B,KAC1BC,GAAgC,KAChCC,IAAqB,QAAkB,WAC7C,OAAO,WAAc,QAAoB,KAAW,KAAM,EAAC,IAAAlqB,GAAoB,MAAOH,EAAY,CAACE,GAAY,QAAayoB,EAAoB,CAC9I,iBAAkB1I,GAAYrP,MAC9B3Q,MAAO,eACPqqB,KAAM,aACNC,UAAU,EACVC,SAAUrK,GACV,oBAAqB,UACrB,aAAc,WACb,CACDsK,SAAS,SAAS,IAAM,EAAC,QAAalC,EAAyB,KAAM,CACnEkC,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAO,CAClDW,MAAO,CACL,MAAS,QAEX4pB,IAAK,EACLC,IAAK,eACLC,QAAS3D,QAEX9mB,EAAG,KACD,QAAaooB,EAAyB,CACxCqC,QAASvG,IACR,CACDvC,OAAO,SAAS,IAAM,EAAC,IAAA3hB,GAAoB,MAAOG,EAAY,EAAC,IAAAH,GAAoB,KAAM,MAAM,QAAiB8e,GAAarO,OAAQ,MAAM,QAAa4X,EAAqB,CAC3KpoB,KAAM,SACN0Q,KAAM,UAER3Q,EAAG,IACDI,GAAY,QAAagoB,EAAyB,CACpDhF,MAAO,IACPqH,QAAS9D,IACR,CACD2D,SAAS,SAAS,IAAM,EAAC,QAAiB,mBAC1CtqB,EAAG,KACD,QAAaooB,EAAyB,CACxChF,MAAO,IACPqH,QAAS7D,IACR,CACD0D,SAAS,SAAS,IAAM,EAAC,QAAiB,oBAC1CtqB,EAAG,KACD,QAAasoB,EAAwB,CACvClF,MAAO,KACN,CACDzB,OAAO,SAAS,IAAM,EAAC,QAAiB,cACxC2I,SAAS,SAAS,IAAM,EAAC,QAAahC,EAAwB,CAC5DlF,MAAO,OACN,CACDzB,OAAO,SAAS,IAAM,EAAC,QAAiB,qBACxC2I,SAAS,SAAS,IAAM,EAAC,QAAalC,EAAyB,CAC7DhF,MAAO,QACPqH,QAASlL,IACR,CACD+K,SAAS,SAAS,IAAM,EAAC,SAAiB,QAAiB3W,GAAclD,OAAS,KAAM,MACxFzQ,EAAG,KACD,QAAaooB,EAAyB,CACxChF,MAAO,QACPqH,QAAShL,IACR,CACD6K,SAAS,SAAS,IAAM,EAAC,SAAiB,QAAiB3W,GAAclD,OAAS,MAAO,MACzFzQ,EAAG,KACD,QAAaooB,EAAyB,CACxChF,MAAO,QACPqH,QAAS7K,IACR,CACD0K,SAAS,SAAS,IAAM,EAAC,SAAiB,QAAiB3W,GAAclD,OAAS,MAAO,MACzFzQ,EAAG,OAELA,EAAG,KACD,QAAasoB,EAAwB,CACvClF,MAAO,OACN,CACDzB,OAAO,SAAS,IAAM,EAAC,QAAiB,gBACxC2I,SAAS,SAAS,IAAM,EAAC,QAAalC,EAAyB,CAC7DhF,MAAO,SACN,CACDkH,SAAS,SAAS,IAAM,CAACjqB,KACzBL,EAAG,KACD,QAAaooB,EAAyB,CACxChF,MAAO,SACN,CACDkH,SAAS,SAAS,IAAM,CAAC/pB,KACzBP,EAAG,KACD,QAAaooB,EAAyB,CACxChF,MAAO,SACN,CACDkH,SAAS,SAAS,IAAM,CAAC9pB,KACzBR,EAAG,OAELA,EAAG,KACD,QAAaooB,EAAyB,CACxChF,MAAO,MACPqH,QAAS5K,IACR,CACDyK,SAAS,SAAS,IAAM,EAAC,QAAiB,qBAC1CtqB,EAAG,OAELA,EAAG,KACD,QAAasoB,EAAwB,CACvClF,MAAO,KACN,CACDzB,OAAO,SAAS,IAAM,EAAC,QAAiB,WACxC2I,SAAS,SAAS,IAAM,EAAC,QAAalC,EAAyB,CAC7DhF,MAAO,MACPqH,QAAStC,EAAO,KAAOA,EAAO,GAAKuC,GAAUrH,GAAiBlU,MAC7D,CACDmb,SAAS,SAAS,IAAM,EAAC,QAAiB,oBAC1CtqB,EAAG,KACD,QAAaooB,EAAyB,CACxChF,MAAO,MACPqH,QAAStC,EAAO,KAAOA,EAAO,GAAKuC,GAAUrH,GAAiBjU,MAC7D,CACDkb,SAAS,SAAS,IAAM,EAAC,QAAiB,mBAC1CtqB,EAAG,KACD,QAAaooB,EAAyB,CACxChF,MAAO,MACPqH,QAAStC,EAAO,KAAOA,EAAO,GAAKuC,GAAUrH,GAAiBhU,MAC7D,CACDib,SAAS,SAAS,IAAM,EAAC,QAAiB,cAC1CtqB,EAAG,KACD,QAAaooB,EAAyB,CACxChF,MAAO,MACPqH,QAAStC,EAAO,KAAOA,EAAO,GAAKuC,GAAUrZ,GAAOZ,OAAQ,IAC3D,CACD6Z,SAAS,SAAS,IAAM,EAAC,QAAiB,cAC1CtqB,EAAG,OAELA,EAAG,KACD,QAAasoB,EAAwB,CACvClF,MAAO,KACN,CACDzB,OAAO,SAAS,IAAM,EAAC,QAAiB,WACxC2I,SAAS,SAAS,IAAM,EAAC,QAAahC,EAAwB,CAC5DlF,MAAO,OACN,CACDzB,OAAO,SAAS,IAAM,EAAC,SAAiB,QAAiBhO,GAAclD,OAAS,KAAM,MACtF6Z,SAAS,SAAS,IAAM,EAAC,QAAalC,EAAyB,CAC7DhF,MAAO,QACPqH,QAAS7G,IACR,CACD0G,SAAS,SAAS,IAAM,EAAC,QAAiB,MAAO,QAAiB3W,GAAclD,OAAQ,MACxFzQ,EAAG,KACD,QAAaooB,EAAyB,CACxChF,MAAO,QACPqH,QAAS5G,IACR,CACDyG,SAAS,SAAS,IAAM,EAAC,QAAiB,MAAO,QAAiB3W,GAAclD,OAAQ,MACxFzQ,EAAG,KACD,QAAaooB,EAAyB,CACxChF,MAAO,QACPqH,QAAS3G,IACR,CACDwG,SAAS,SAAS,IAAM,EAAC,QAAiB,MAAO,QAAiB3W,GAAclD,OAAQ,MACxFzQ,EAAG,KACD,QAAaooB,EAAyB,CACxChF,MAAO,QACPqH,QAAS1G,IACR,CACDuG,SAAS,SAAS,IAAM,EAAC,QAAiB,MAAO,QAAiB3W,GAAclD,OAAQ,MACxFzQ,EAAG,OAELA,EAAG,KACD,QAAaooB,EAAyB,CACxChF,MAAO,MACPqH,QAAS1C,IACR,CACDuC,SAAS,SAAS,IAAM,EAAC,QAAiB,oBAC1CtqB,EAAG,KACD,QAAaooB,EAAyB,CACxChF,MAAO,MACPqH,QAAS5D,IACR,CACDyD,SAAS,SAAS,IAAM,EAAC,QAAiB,qBAC1CtqB,EAAG,KACD,QAAaooB,EAAyB,CACxChF,MAAO,MACPqH,QAAShE,IACR,CACD6D,SAAS,SAAS,IAAM,EAAC,QAAa/B,EAAgB,CACpD5nB,MAAO,CACL,YAAa,SAEd,CACD2pB,SAAS,SAAS,IAAM,EAAC,QAAiB,WAC1CtqB,EAAG,OAELA,EAAG,OAELA,EAAG,OAELA,EAAG,GACF,EAAG,CAAC,oBAAoB,IAAAA,GAAoB,MAAOS,EAAY,EAAC,IAAAT,GAAoB,MAAOU,EAAY,EAAC,QAAagoB,EAA2B,CACjJiC,KAAM,KACNhJ,MAAO,KACN,CACDzhB,SAAS,SAAS,IAAM,CAACU,KACzBgqB,OAAO,SAAS,IAAM,EAAC,IAAA5qB,GAAoB,MAAO,CAChDF,MAAO,WACP2qB,QAASvK,IACR,EAAC,QAAauI,EAAuB,CACtCoC,OAAQ,GACRF,KAAM,QACN5I,MAAO,UACPjiB,MAAO,wBAETE,EAAG,OACC,IAAAA,GAAoB,MAAOa,EAAa,EAAC,IAAAb,GAAoB,MAAOc,EAAa,EAAC,QAAa+nB,GAAuB,CAC1HiC,WAAYra,GAAMA,MAClB,sBAAuB0X,EAAO,KAAOA,EAAO,GAAKuC,GAAUja,GAAMA,MAAQia,GACzE,cAAe,GACfK,MAAO,QACPC,UAAW,GACXC,YAAa,kBACb7R,SAAUA,IACT,CACD+D,QAAQ,SAAS,IAAM,EAAC,QAAayL,EAA2B,CAC9DkC,WAAYna,GAAKF,MACjB,sBAAuB0X,EAAO,KAAOA,EAAO,GAAKuC,GAAU/Z,GAAKF,MAAQia,GACxEzY,MAAO,gBACN,CACDqY,SAAS,SAAS,IAAM,EAAC,QAAa3B,EAA4B,CAChEvL,KAAM,UACN8N,MAAO,GACPjZ,MAAO,MACPwY,QAAStC,EAAO,KAAOA,EAAO,GAAKuC,GAAUrR,GAAY5I,GAAMA,SAC9D,CACD6Z,SAAS,SAAS,IAAM,EAAC,QAAiB,UAC1CtqB,EAAG,KACD,QAAa2oB,EAA4B,CAC3CvL,KAAM,UACN8N,MAAO,GACPjZ,MAAO,MACPwY,QAAStC,EAAO,KAAOA,EAAO,GAAKuC,GAAUpR,GAAS7I,GAAMA,SAC3D,CACD6Z,SAAS,SAAS,IAAM,EAAC,QAAiB,UAC1CtqB,EAAG,KACD,QAAa2oB,EAA4B,CAC3CvL,KAAM,UACN8N,MAAO,GACPjZ,MAAO,MACPwY,QAAStC,EAAO,KAAOA,EAAO,GAAKuC,GAAUlR,GAAY/I,GAAMA,SAC9D,CACD6Z,SAAS,SAAS,IAAM,EAAC,QAAiB,UAC1CtqB,EAAG,OAELA,EAAG,GACF,EAAG,CAAC,kBACPA,EAAG,GACF,EAAG,CAAC,kBAAkB,IAAAA,GAAoB,MAAOe,EAAa,EAAC,UAAiB,WAAc,SAAa,QAAO,MAAU,CAC7HgY,KAAMnC,GAAUnG,MAChB9P,MAAO,CACL,MAAS,QAEXwqB,kBAAmB5a,GACnB6a,QAAS,mBACTC,IAAKlb,GACL,eAAgB,CACdmb,KAAM,aACNA,KAAM,gBAER,iBAAkBlM,IACjB,CACDkL,SAAS,SAAS,IAAM,EAAC,QAAaxB,GAA4B,CAChE1L,KAAM,YACNmO,MAAO,QACL,QAAazC,GAA4B,CAC3C7W,MAAO,KACPqZ,KAAM,eACNE,SAAU,GACV,YAAa,OACZ,CACDlB,SAAS,SAASmB,GAAS,EAAC,IAAAzrB,GAAoB,MAAOgB,EAAa,EAAC,QAAa+nB,GAAsB,CACtGpY,KAAM,QACNoR,MAAO,UACP2J,OAAQ,IACP,CACDpB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,KAAM,MAAM,QAAiByrB,EAAMpM,IAAItJ,aAAe0V,EAAMpM,IAAI3I,gBAAkB,SAAW,SAAW,OAAQ,MAC7J1W,EAAG,GACF,OAAO,IAAAA,GAAoB,OAAQiB,GAAa,QAAiBwqB,EAAMpM,IAAIpf,MAAO,QACrFD,EAAG,KACD,QAAa8oB,GAA4B,CAC3C7W,MAAO,OACP,YAAa,OACZ,CACDqY,SAAS,SAASmB,GAAS,EAAC,QAAaxC,GAAuB,CAC9D0C,OAAQ,QACRC,QAAS,QACTC,UAAW,MACXN,MAAO,QACN,CACDjB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAO,KAAM,QAAS,QAAiByrB,EAAMpM,IAAIjF,UAAW,IAAI,IAAApa,GAAoB,MAAO,KAAM,QAAS,QAAiByrB,EAAMpM,IAAIhF,cAAe,MACjMyR,WAAW,SAAS,IAAM,EAAC,QAAa9C,GAAmB,KAAM,CAC/DsB,SAAS,SAAS,IAAM,EAAC,SAAiB,QAAiBmB,EAAMpM,IAAIjF,UAAW,MAChFpa,EAAG,GACF,SACHA,EAAG,GACF,SACHA,EAAG,KACD,QAAa8oB,GAA4B,CAC3C7W,MAAO,SACP,YAAa,OACZ,CACDqY,SAAS,SAASmB,GAAS,EAAC,QAAaxC,GAAuB,CAC9D0C,OAAQ,QACRC,QAAS,QACTC,UAAW,MACXN,MAAO,QACN,CACDjB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAO,KAAM,WAAY,QAAiBumB,GAAUkF,EAAMpM,IAAIlH,QAAS,MACpH2T,WAAW,SAAS,IAAM,EAAC,QAAa9C,GAAmB,KAAM,CAC/DsB,SAAS,SAAS,IAAM,EAAC,SAAiB,QAAiB/D,GAAUkF,EAAMpM,IAAIlH,QAAS,MACxFnY,EAAG,GACF,SACHA,EAAG,GACF,SACHA,EAAG,KACD,QAAa8oB,GAA4B,CAC3CwC,KAAM,aACNE,SAAU,GACVvZ,MAAO,OACP,YAAa,OACZ,CACDqY,SAAS,SAASmB,GAAS,EAAC,QAAaxC,GAAuB,CAC9D0C,OAAQ,QACRC,QAAS,QACTC,UAAW,MACXN,MAAO,QACN,CACDjB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAO,KAAM,SAAU,QAAiByrB,EAAMpM,IAAIxE,YAAa,MAC5GiR,WAAW,SAAS,IAAM,EAAC,QAAa9C,GAAmB,KAAM,CAC/DsB,SAAS,SAAS,IAAM,EAAC,QAAiB,WAAY,QAAiBvE,GAAW0F,EAAMpM,MAAO,MAC/Frf,EAAG,GACF,SACHA,EAAG,GACF,SACHA,EAAG,KACD,QAAa8oB,GAA4B,CAC3C7W,MAAO,OACPsZ,MAAO,OACN,CACDjB,SAAS,SAASmB,GAAS,EAAC,QAAa1C,GAAsB,CAC7DpY,KAAM,QACN8Z,QAASC,GAAUvH,GAAWsI,EAAMM,OAAQN,EAAMpM,MACjD,CACDiL,SAAS,SAAS,IAAM,EAAC,QAAiB,SAC1CtqB,EAAG,GACF,KAAM,CAAC,aAAa,QAAa+oB,GAAsB,CACxDpY,KAAM,QACNyM,KAAM,UACNqN,QAASC,GAAUzJ,GAASwK,EAAMpM,MACjC,CACDiL,SAAS,SAAS,IAAM,EAAC,QAAiB,SAC1CtqB,EAAG,GACF,KAAM,CAAC,aAAa,QAAa+oB,GAAsB,CACxDpY,KAAM,QACNyM,KAAM,SACNqN,QAASC,GAAU9E,GAAY6F,EAAMM,OAAQN,EAAMpM,MAClD,CACDiL,SAAS,SAAS,IAAM,EAAC,QAAiB,SAC1CtqB,EAAG,GACF,KAAM,CAAC,aAAa,QAAa+oB,GAAsB,CACxDpY,KAAM,QACNyM,KAAM,UACNqN,QAASC,GAAU1F,GAAMyG,EAAMpM,MAC9B,CACDiL,SAAS,SAAS,IAAM,EAAC,QAAiB,SAC1CtqB,EAAG,GACF,KAAM,CAAC,aAAa,QAAa+oB,GAAsB,CACxDpY,KAAM,QACNyM,KAAM,UACNqN,QAASC,GAAUlF,GAAOiG,EAAMpM,MAC/B,CACDiL,SAAS,SAAS,IAAM,EAAC,QAAiB,SAC1CtqB,EAAG,GACF,KAAM,CAAC,eACVA,EAAG,OAELA,EAAG,GACF,EAAG,CAAC,UAAW,CAAC,CAACkqB,GAAoBhC,EAAK8D,cAAc,IAAAhsB,GAAoB,MAAOkB,EAAa,EAAC,QAAaioB,GAAsB,CACrI2B,WAAY/Y,GAAYtB,MACxB,sBAAuB0X,EAAO,KAAOA,EAAO,GAAKuC,GAAU3Y,GAAYtB,MAAQia,GAC/EM,UAAW,GACXiB,WAAY,GACZhB,YAAa,UACbnrB,MAAO,QACN,CACDwqB,SAAS,SAAS,IAAM,GAAE,WAAc,QAAoB,KAAW,MAAM,QAAYtY,IAASmI,IACzF,QAAa+O,GAAsB,CACxCrnB,IAAKsY,EAAKpI,YACVE,MAAOkI,EAAKlI,MACZxB,MAAO0J,EAAKpI,aACX,KAAM,EAAG,CAAC,QAAS,YACpB,QACJ/R,EAAG,GACF,EAAG,CAAC,gBAAgB,QAAa+oB,GAAsB,CACxDjpB,MAAO,OACP2qB,QAAStC,EAAO,MAAQA,EAAO,IAAMuC,GAAUnD,GAAaxV,GAAYtB,SACvE,CACD6Z,SAAS,SAAS,IAAM,CAACnpB,KACzBnB,EAAG,KACD,QAAaopB,GAA4B,CAC3CtpB,MAAO,aACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,QAAavB,GAAsB,CAC1D0B,QAAS3F,IACR,CACDwF,SAAS,SAAS,IAAM,CAAClpB,KACzBpB,EAAG,OAELA,EAAG,QACGqB,EAAaC,EAAaC,OAAiB,QAAakoB,GAAuB,CACrF5Y,KAAMA,GAAKJ,MACX,gBAAiB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU7Z,GAAKJ,MAAQia,GACpE/I,MAAO,cACP4J,MAAO,OACP,0BAA0B,EAC1B,sBAAsB,EACtB,uBAAuB,EACvBzrB,MAAO,sBACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAOwB,EAAa,EAAC,QAAagoB,GAAqB,CAClG0C,SAAU/D,EAAO,MAAQA,EAAO,IAAMuC,GAAUjH,OAC/C,CACD6G,SAAS,SAAS,IAAM,EAAC,QAAaf,GAA2B,CAC/D4C,MAAO,IACN,CACD7B,SAAS,SAAS,IAAM,CAAC7oB,GAAa,QAAa4nB,GAAsB,CACvEyB,WAAY1U,GAAY3F,MACxB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUtU,GAAY3F,MAAQia,GACjFzqB,KAAM,WACNgS,MAAO,WACPgZ,YAAa,WACbmB,MAAO,CAAC,CACNC,UAAU,EACVhP,QAAS,iBAEV,KAAM,EAAG,CAAC,eAAgB3b,GAAa,QAAa2nB,GAAsB,CAC3EyB,WAAYzU,GAAgB5F,MAC5B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUrU,GAAgB5F,MAAQia,GACrFzqB,KAAM,WACNgS,MAAO,WACPgZ,YAAa,WACbmB,MAAO,CAAC,CACNC,UAAU,EACVhP,QAAS,iBAEV,KAAM,EAAG,CAAC,eAAgB1b,GAAa,QAAa0nB,GAAsB,CAC3EppB,KAAM,SACNgS,MAAO,aACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAY/U,GAAatF,MACzB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU3U,GAAatF,MAAQia,IACjF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACqB,GAAtB+V,GAAatF,QAAiB,WAAc,QAAoB,MAAO7O,EAAa,CAACE,GAAa,QAAaunB,GAAsB,CACvIppB,KAAM,SACNgS,MAAO,oBACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAYpU,GAAgBjG,MAC5B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUhU,GAAgBjG,MAAQia,IACpF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,QACG,QAAoB,IAAI,GAA6B,GAAtB+V,GAAatF,QAAiB,WAAc,QAAoB,MAAO1O,EAAa,CAACC,IAAa,QAAaqnB,GAAsB,CAC1KppB,KAAM,SACNgS,MAAO,YACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAYxU,GAAU7F,MACtB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUpU,GAAU7F,MAAQia,IAC9E,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACkB,GAAnBsW,GAAU7F,QAAiB,WAAc,QAAoB,MAAOxO,GAAa,CAACC,IAAa,QAAamnB,GAAsB,CACpIppB,KAAM,SACNgS,MAAO,YACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAYvU,GAAkB9F,MAC9B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUnU,GAAkB9F,MAAQia,IACtF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACDmC,IAAa,QAAaknB,GAAsB,CAClDppB,KAAM,SACNgS,MAAO,UACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAYtU,GAAQ/F,MACpB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUlU,GAAQ/F,MAAQia,IAC5E,KAAM,EAAG,CAAC,kBACb1qB,EAAG,QACG,QAAoB,IAAI,OAAW,QAAoB,IAAI,GAA0B,GAAnBsW,GAAU7F,OAAwC,GAAtBsF,GAAatF,QAAkB,WAAc,QAAoB,MAAOrO,GAAa,CAACC,IAAa,QAAagnB,GAAsB,CAC1OyB,WAAYrU,GAAYhG,MACxB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUjU,GAAYhG,MAAQia,GACjFzqB,KAAM,aACNgS,MAAO,aACPgZ,YAAa,cACbmB,MAAO,CAAC,CACNE,UAAWzW,MAEZ,KAAM,EAAG,CAAC,aAAc,cAAe,QAAoB,IAAI,GAAOvT,IAAa,QAAa+mB,GAAsB,CACvHyB,WAAY7U,GAASxF,MACrB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUzU,GAASxF,MAAQia,GAC9EzY,MAAO,UACPmL,KAAM,WACNmP,UAAW,OACXtB,YAAa,4CACbuB,SAAU,CACRC,UAAW,IACXC,UAAW,IAEb,kBAAmB,IAClB,KAAM,EAAG,CAAC,eAAgBnqB,MAC7BvC,EAAG,KACD,IAAAA,GAAoB,MAAOwC,GAAa,EAAC,QAAaimB,EAAuB,CAC/EkE,MAAO,GACPC,MAAO,GACP7K,MAAO,UACP,cAAe,UACd,CACDuI,SAAS,SAAS,IAAM,EAAC,QAAiB,WAC1CtqB,EAAG,SAELA,EAAG,MACCyC,MACNzC,EAAG,GACF,EAAG,CAAC,UAAU,QAAaypB,GAAuB,CACnD5Y,KAAMC,GAAOL,MACb,gBAAiB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU5Z,GAAOL,MAAQia,GACtE/I,MAAO,aACP4J,MAAO,OACP,0BAA0B,EAC1B,sBAAsB,EACtB,uBAAuB,EACvBzrB,MAAO,kBACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAO0C,GAAa,EAAC,QAAa8mB,GAAqB,CAClG0C,SAAU/D,EAAO,MAAQA,EAAO,IAAMuC,GAAUvK,OAC/C,CACDmK,SAAS,SAAS,IAAM,EAAC,QAAaf,GAA2B,CAC/D4C,MAAO,IACN,CACD7B,SAAS,SAAS,IAAM,CAAC3nB,IAAa,QAAa0mB,GAAsB,CACvEyB,WAAY9T,GAAQvG,MACpB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU1T,GAAQvG,MAAQia,GAC7EzqB,KAAM,WACNgS,MAAO,WACPgZ,YAAa,WACbmB,MAAO,CAAC,CACNC,UAAU,EACVhP,QAAS,iBAEV,KAAM,EAAG,CAAC,eAAgBza,IAAa,QAAaymB,GAAsB,CAC3EyB,WAAY7T,GAAYxG,MACxB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUzT,GAAYxG,MAAQia,GACjFzqB,KAAM,WACNgS,MAAO,WACPgZ,YAAa,WACbmB,MAAO,CAAC,CACNC,UAAU,EACVhP,QAAS,iBAEV,KAAM,EAAG,CAAC,eAAgBxa,IAAa,QAAawmB,GAAsB,CAC3EyB,WAAY5T,GAAgBzG,MAC5B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUxT,GAAgBzG,MAAQia,GACrFzqB,KAAM,WACNgS,MAAO,WACPgZ,YAAa,WACbmB,MAAO,CAAC,CACNC,UAAU,EACVhP,QAAS,iBAEV,KAAM,EAAG,CAAC,eAAgBva,IAAa,QAAaumB,GAAsB,CAC3EppB,KAAM,SACNgS,MAAO,aACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAYhV,GAAgBrF,MAC5B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU5U,GAAgBrF,MAAQia,IACpF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACwB,GAAzB8V,GAAgBrF,QAAiB,WAAc,QAAoB,MAAO1N,GAAa,CAACC,IAAa,QAAaqmB,GAAsB,CAC1IppB,KAAM,SACNgS,MAAO,oBACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAYvT,GAAmB9G,MAC/B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUnT,GAAmB9G,MAAQia,IACvF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,QACG,QAAoB,IAAI,GAAgC,GAAzB8V,GAAgBrF,QAAiB,WAAc,QAAoB,MAAOxN,GAAa,CAACC,IAAa,QAAammB,GAAsB,CAC7KppB,KAAM,SACNgS,MAAO,YACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAY1T,GAAU3G,MACtB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUtT,GAAU3G,MAAQia,IAC9E,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACkB,GAAnBoX,GAAU3G,QAAiB,WAAc,QAAoB,MAAOtN,GAAa,CAACC,IAAa,QAAaimB,GAAsB,CACpIppB,KAAM,SACNgS,MAAO,YACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAYzT,GAAkB5G,MAC9B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUrT,GAAkB5G,MAAQia,IACtF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACDqD,IAAa,QAAagmB,GAAsB,CAClDppB,KAAM,SACNgS,MAAO,UACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAYxT,GAAQ7G,MACpB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUpT,GAAQ7G,MAAQia,IAC5E,KAAM,EAAG,CAAC,kBACb1qB,EAAG,QACG,QAAoB,IAAI,OAAW,QAAoB,IAAI,GAA0B,IAAnBoX,GAAU3G,QAAe,WAAc,QAAoB,MAAOnN,GAAa,CAACC,IAAa,QAAa8lB,GAAsB,CACxMyB,WAAYtT,GAAY/G,MACxB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUlT,GAAY/G,MAAQia,GACjFzqB,KAAM,aACNgS,MAAO,aACPgZ,YAAa,cACbmB,MAAO,CAAC,CACNE,UAAWzW,MAEZ,KAAM,EAAG,CAAC,aAAc,cAAe,QAAoB,IAAI,GAAgC,GAAzBC,GAAgBrF,QAAiB,WAAc,QAAoB,MAAOjN,GAAa,CAACC,IAAa,QAAa4lB,GAAsB,CAC/MwD,KAAM,IACNzP,KAAM,WACNmP,UAAW,OACX,kBAAmB,GACnBzB,WAAY3T,GAAc1G,MAC1B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUvT,GAAc1G,MAAQia,GACnFzqB,KAAM,UACNgS,MAAO,UACPgZ,YAAa,sDACZ,KAAM,EAAG,CAAC,mBAAoB,QAAoB,IAAI,GAAOvnB,MAChE1D,EAAG,KACD,IAAAA,GAAoB,MAAO2D,GAAa,EAAC,QAAa8kB,EAAuB,CAC/EkE,MAAO,GACPC,MAAO,GACP7K,MAAO,UACP,cAAe,UACd,CACDuI,SAAS,SAAS,IAAM,EAAC,QAAiB,WAC1CtqB,EAAG,SAELA,EAAG,MACC4D,MACN5D,EAAG,GACF,EAAG,CAAC,UAAU,QAAaypB,GAAuB,CACnD5Y,KAAME,GAAON,MACb,gBAAiB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU3Z,GAAON,MAAQia,GACtE/I,MAAO,YACP4J,MAAO,OACP,0BAA0B,EAC1B,sBAAsB,EACtB,uBAAuB,EACvBzrB,MAAO,cACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAO6D,GAAa,EAAC,QAAa2lB,GAAqB,KAAM,CACxGc,SAAS,SAAS,IAAM,EAAC,QAAaf,GAA2B,CAC/D4C,MAAO,IACN,CACD7B,SAAS,SAAS,IAAM,CAACxmB,IAAa,QAAaulB,GAAsB,CACvEyB,WAAY9U,GAAQvF,MACpB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU1U,GAAQvF,MAAQia,GAC7EzqB,KAAM,WACNgS,MAAO,WACPgZ,YAAa,WACb,YAAa,gBACb6B,UAAU,EACVC,gBAAiB5E,EAAO,MAAQA,EAAO,IAAMuC,GAAU3D,GAAU/Q,GAAQvF,SACxE,KAAM,EAAG,CAAC,eAAgB1M,IAAa,QAAaslB,GAAsB,CAC3EyB,WAAYrU,GAAYhG,MACxB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUjU,GAAYhG,MAAQia,GACjFtN,KAAM,cACNnd,KAAM,aACNgS,MAAO,aACPgZ,YAAa,gCACb,YAAa,gBACb6B,UAAU,EACVC,gBAAiB5E,EAAO,MAAQA,EAAO,IAAMuC,GAAU3D,GAAUtQ,GAAYhG,SAC5E,KAAM,EAAG,CAAC,eAAgBzM,IAAa,QAAaqlB,GAAsB,CAC3EyB,WAAY1U,GAAY3F,MACxB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUtU,GAAY3F,MAAQia,GACjFzqB,KAAM,YACNgS,MAAO,YACPgZ,YAAa,YACb,YAAa,gBACb6B,UAAU,EACVC,gBAAiB5E,EAAO,MAAQA,EAAO,IAAMuC,GAAU3D,GAAU3Q,GAAY3F,SAC5E,KAAM,EAAG,CAAC,eAAgBxM,IAAa,QAAaolB,GAAsB,CAC3EyB,WAAYzU,GAAgB5F,MAC5B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUrU,GAAgB5F,MAAQia,GACrFzqB,KAAM,WACNgS,MAAO,WACPgZ,YAAa,WACb,YAAa,gBACb6B,UAAU,EACVC,gBAAiB5E,EAAO,MAAQA,EAAO,IAAMuC,GAAU3D,GAAU1Q,GAAgB5F,SAChF,KAAM,EAAG,CAAC,eAAgBvM,IAAa,QAAamlB,GAAsB,CAC3EppB,KAAM,YACN6sB,UAAU,EACV7a,MAAO,YACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE0D,SAAU,GACV,eAAgB,UAChBlC,WAAYxU,GAAU7F,MACtB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUpU,GAAU7F,MAAQia,IAC9E,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACDmE,IAAa,QAAaklB,GAAsB,CAClDyD,UAAU,EACV7sB,KAAM,oBACNgS,MAAO,YACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE0D,SAAU,GACV,eAAgB,UAChBlC,WAAYvU,GAAkB9F,MAC9B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUnU,GAAkB9F,MAAQia,IACtF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACDoE,IAAa,QAAailB,GAAsB,CAClDyD,UAAU,EACV7sB,KAAM,UACNgS,MAAO,UACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE0D,SAAU,GACV,eAAgB,UAChBlC,WAAYtU,GAAQ/F,MACpB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUlU,GAAQ/F,MAAQia,IAC5E,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACDqE,IAAa,QAAaglB,GAAsB,CAClDppB,KAAM,SACNgS,MAAO,aACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE0D,SAAU,GACV,eAAgB,UAChBlC,WAAY/U,GAAatF,MACzB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU3U,GAAatF,MAAQia,IACjF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACDsE,IAAa,QAAa+kB,GAAsB,CAClDppB,KAAM,SACNgS,MAAO,qBACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE0D,SAAU,GACV,eAAgB,UAChBlC,WAAYpU,GAAgBjG,MAC5B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUhU,GAAgBjG,MAAQia,IACpF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACDuE,IAAa,QAAa8kB,GAAsB,CAClDyB,WAAY7U,GAASxF,MACrB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUzU,GAASxF,MAAQia,GAC9EzY,MAAO,UACPmL,KAAM,WACNmP,UAAW,OACXtB,YAAa,yCACb,kBAAmB,GACnB,YAAa,gBACb6B,UAAU,EACVC,gBAAiB5E,EAAO,MAAQA,EAAO,IAAMuC,GAAU3D,GAAU9Q,GAASxF,QAC1E+b,SAAU,CACRC,UAAW,IACXC,UAAW,KAEZ,KAAM,EAAG,CAAC,eAAsC,GAAtB3W,GAAatF,QAAiB,WAAc,QAAoB,MAAOjM,GAAa,CAACC,IAAa,QAAa4kB,GAAsB,CAChKyB,WAAY5U,GAAezF,MAC3B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUxU,GAAezF,MAAQia,GACpFzY,MAAO,eACPmL,KAAM,WACNmP,UAAW,OACXtB,YAAa,yBACb,kBAAmB,GACnB,YAAa,gBACb6B,UAAU,EACVC,gBAAiB5E,EAAO,MAAQA,EAAO,IAAMuC,GAAU3D,GAAU7Q,GAAezF,QAChF+b,SAAU,CACRC,UAAW,IACXC,UAAW,KAEZ,KAAM,EAAG,CAAC,eAAgBhoB,IAAa,QAAa2kB,GAAsB,CAC3EyB,WAAY3U,GAAc1F,MAC1B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUvU,GAAc1F,MAAQia,GACnFzY,MAAO,cACPmL,KAAM,WACNmP,UAAW,MACXtB,YAAa,wBACb,kBAAmB,GACnB,YAAa,gBACb6B,UAAU,EACVC,gBAAiB5E,EAAO,MAAQA,EAAO,IAAMuC,GAAU3D,GAAU5Q,GAAc1F,QAC/E+b,SAAU,CACRC,UAAW,IACXC,UAAW,KAEZ,KAAM,EAAG,CAAC,mBAAoB,QAAoB,IAAI,MACzD1sB,EAAG,OAELA,EAAG,IACqB,GAAtB+V,GAAatF,QAAiB,WAAc,QAAoB,MAAO9L,GAAa,EAAC,IAAA3E,GAAoB,MAAO,CAClHorB,QAAS,aACTC,IAAKrK,GACLrgB,MAAO,CACL,MAAS,OACT,OAAU,UAEX,KAAM,KAAMiE,OAAiB,QAAoB,IAAI,QACxD5E,EAAG,GACF,EAAG,CAAC,UAAU,QAAaypB,GAAuB,CACnD5Y,KAAMG,GAAOP,MACb,gBAAiB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU1Z,GAAOP,MAAQia,GACtE/I,MAAO,kBACP4J,MAAO,OACP,0BAA0B,EAC1B,sBAAsB,EACtB,uBAAuB,EACvBzrB,MAAO,kBACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAO6E,GAAa,EAAC,QAAa2kB,GAAqB,CAClG0C,SAAU/D,EAAO,MAAQA,EAAO,IAAMuC,GAAUpH,GAAenU,MAC9D,CACDmb,SAAS,SAAS,IAAM,EAAC,QAAaf,GAA2B,CAC/D4C,MAAO,IACN,CACD7B,SAAS,SAAS,IAAM,CAACxlB,IAAa,QAAaukB,GAAsB,CACvEyB,WAAYtY,GAAoB/B,MAChC,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUlY,GAAoB/B,MAAQia,GACzFzqB,KAAM,OACNgS,MAAO,OACPgZ,YAAa,YACZ,KAAM,EAAG,CAAC,eAAgBlmB,IAAa,QAAaskB,GAAsB,CAC3EyB,WAAYrY,GAAKhC,MACjB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUjY,GAAKhC,MAAQia,GAC1EzqB,KAAM,UACNgS,MAAO,UACPgZ,YAAa,eACZ,KAAM,EAAG,CAAC,eAAgBjmB,IAAa,QAAaqkB,GAAsB,CAC3EyB,WAAY9X,GAAgBvC,MAC5B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU1X,GAAgBvC,MAAQia,GACrFzqB,KAAM,SACNgS,MAAO,SACPgZ,YAAa,oBACZ,KAAM,EAAG,CAAC,eAAgBhmB,IAAa,QAAaokB,GAAsB,CAC3EyB,WAAYpY,GAAQjC,MACpB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUhY,GAAQjC,MAAQia,GAC7EzqB,KAAM,SACNgS,MAAO,SACPgZ,YAAa,cACZ,KAAM,EAAG,CAAC,eAAgB/lB,IAAa,QAAamkB,GAAsB,CAC3EppB,KAAM,SACNgS,MAAO,cACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAYlY,GAAanC,MACzB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU9X,GAAanC,MAAQia,IACjF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACDmF,IAAa,QAAakkB,GAAsB,CAClDppB,KAAM,SACNgS,MAAO,UACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAY7X,GAAQxC,MACpB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUzX,GAAQxC,MAAQia,IAC5E,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACgB,GAAjBiT,GAAQxC,QAAiB,WAAc,QAAoB,MAAOrL,GAAa,CAACC,IAAa,QAAagkB,GAAsB,CAClIyB,WAAY5X,GAAUzC,MACtB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUxX,GAAUzC,MAAQia,GAC/EzqB,KAAM,OACNgS,MAAO,OACPgZ,YAAa,QACZ,KAAM,EAAG,CAAC,eAAgB3lB,IAAa,QAAa+jB,GAAsB,CAC3EyB,WAAY3X,GAAS1C,MACrB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUvX,GAAS1C,MAAQia,GAC9EzqB,KAAM,OACNgS,MAAO,OACPgZ,YAAa,QACZ,KAAM,EAAG,CAAC,mBAAoB,QAAoB,IAAI,GAAO1lB,IAAa,QAAa8jB,GAAsB,CAC9GppB,KAAM,SACNgS,MAAO,UACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAYjY,GAAepC,MAC3B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU7X,GAAepC,MAAQia,IACnF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACDwF,IAAa,QAAa6jB,GAAsB,CAClDppB,KAAM,SACNgS,MAAO,UACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAYhY,GAAiBrC,MAC7B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU5X,GAAiBrC,MAAQia,IACrF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACDyF,IAAa,QAAa4jB,GAAsB,CAClDppB,KAAM,SACNgS,MAAO,YACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAY/X,GAAmBtC,MAC/B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU3X,GAAmBtC,MAAQia,IACvF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACD0F,IAAa,QAAa2jB,GAAsB,CAClDyB,WAAYnY,GAAUlC,MACtB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU/X,GAAUlC,MAAQia,GAC/EzqB,KAAM,UACNgS,MAAO,UACPgZ,YAAa,eACZ,KAAM,EAAG,CAAC,eAAgBtlB,IAAa,QAAa0jB,GAAsB,CAC3EyB,WAAYjX,GAAUpD,MACtB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU7W,GAAUpD,MAAQia,GAC/EzqB,KAAM,MACNgS,MAAO,MACPgZ,YAAa,qBACZ,KAAM,EAAG,CAAC,eAAgBrlB,MAC7B5F,EAAG,KACD,IAAAA,GAAoB,MAAO6F,GAAa,EAAC,QAAa4iB,EAAuB,CAC/EkE,MAAO,GACPC,MAAO,GACP7K,MAAO,UACP,cAAe,UACd,CACDuI,SAAS,SAAS,IAAM,EAAC,QAAiB,WAC1CtqB,EAAG,SAELA,EAAG,MACC8F,MACN9F,EAAG,GACF,EAAG,CAAC,UAAU,QAAaypB,GAAuB,CACnD5Y,KAAMI,GAAOR,MACb,gBAAiB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUzZ,GAAOR,MAAQia,GACtE/I,MAAO,iBACP4J,MAAO,OACP,0BAA0B,EAC1B,sBAAsB,EACtB,uBAAuB,EACvBzrB,MAAO,wBACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAO+F,GAAa,EAAC,QAAayjB,GAAqB,CAClG0C,SAAU/D,EAAO,MAAQA,EAAO,IAAMuC,GAAUpH,GAAelU,MAC9D,CACDkb,SAAS,SAAS,IAAM,EAAC,QAAaf,GAA2B,CAC/D4C,MAAO,IACN,CACD7B,SAAS,SAAS,IAAM,CAACtkB,IAAa,QAAaqjB,GAAsB,CACvEyB,WAAYxX,GAAc7C,MAC1B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUpX,GAAc7C,MAAQia,GACnFzqB,KAAM,QACNgS,MAAO,QACPgZ,YAAa,iBACZ,KAAM,EAAG,CAAC,eAAgBhlB,IAAa,QAAaojB,GAAsB,CAC3EyB,WAAYvX,GAAc9C,MAC1B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUnX,GAAc9C,MAAQia,GACnFzqB,KAAM,OACNgS,MAAO,OACPgZ,YAAa,mBACbmB,MAAO,CAAC,CACNE,UAAW9W,MAEZ,KAAM,EAAG,CAAC,aAAc,UAAWtP,IAAa,QAAamjB,GAAsB,CACpFyB,WAAYvY,GAAiB9B,MAC7B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUnY,GAAiB9B,MAAQia,GACtFzqB,KAAM,YACNgS,MAAO,YACPgZ,YAAa,+BACbmB,MAAO,CAAC,CACNE,UAAW9W,MAEZ,KAAM,EAAG,CAAC,aAAc,UAAWrP,IAAa,QAAakjB,GAAsB,CACpFyB,WAAYlX,GAAcnD,MAC1B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU9W,GAAcnD,MAAQia,GACnFzqB,KAAM,aACNgS,MAAO,aACPgZ,YAAa,6CACZ,KAAM,EAAG,CAAC,eAAgB7kB,IAAa,QAAaijB,GAAsB,CAC3EyB,WAAYzX,GAAe5C,MAC3B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUrX,GAAe5C,MAAQia,GACpFzqB,KAAM,SACNgS,MAAO,SACPgZ,YAAa,qCACbmB,MAAO,CAAC,CACNE,UAAW9W,MAEZ,KAAM,EAAG,CAAC,aAAc,UAAWnP,IAAa,QAAagjB,GAAsB,CACpFyB,WAAY1X,GAAc3C,MAC1B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUtX,GAAc3C,MAAQia,GACnFzqB,KAAM,OACNgS,MAAO,OACPgZ,YAAa,2BACbmB,MAAO,CAAC,CACNE,UAAW3W,MAEZ,KAAM,EAAG,CAAC,aAAc,UAAWrP,IAAa,QAAa+iB,GAAsB,CACpFyB,WAAYtX,GAAW/C,MACvB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUlX,GAAW/C,MAAQia,GAChFzqB,KAAM,cACNgS,MAAO,cACPgZ,YAAa,qCACZ,KAAM,EAAG,CAAC,eAAgB1kB,IAAc,QAAa8iB,GAAsB,CAC5EppB,KAAM,SACNgS,MAAO,gBACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAYrX,GAAWhD,MACvB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUjX,GAAWhD,MAAQia,IAC/E,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACmB,GAApByT,GAAWhD,QAAiB,WAAc,QAAoB,MAAOjK,GAAc,CAACC,IAAc,QAAa4iB,GAAsB,CACvIyB,WAAYpX,GAAiBjD,MAC7B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUhX,GAAiBjD,MAAQia,GACtFzqB,KAAM,OACNgS,MAAO,OACPgZ,YAAa,6CACbmB,MAAO,CAAC,CACNE,UAAW9W,MAEZ,KAAM,EAAG,CAAC,aAAc,cAAe,QAAoB,IAAI,GAAO9O,IAAc,QAAa2iB,GAAsB,CACxHyB,WAAYnX,GAAclD,MAC1B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU/W,GAAclD,MAAQia,GACnFzqB,KAAM,QACNgS,MAAO,QACPgZ,YAAa,8BACbmB,MAAO,CAAC,CACNC,UAAU,EACVhP,QAAS,eAEV,KAAM,EAAG,CAAC,eAAgB1W,MAC7B3G,EAAG,KACD,IAAAA,GAAoB,MAAO4G,GAAc,EAAC,QAAa6hB,EAAuB,CAChFkE,MAAO,GACPC,MAAO,GACP7K,MAAO,UACP,cAAe,UACd,CACDuI,SAAS,SAAS,IAAM,EAAC,QAAiB,WAC1CtqB,EAAG,SAELA,EAAG,MACC6G,MACN7G,EAAG,GACF,EAAG,CAAC,UAAU,QAAaypB,GAAuB,CACnD5Y,KAAMK,GAAOT,MACb,gBAAiB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUxZ,GAAOT,MAAQia,GACtE/I,MAAO,kBACP4J,MAAO,OACP,0BAA0B,EAC1B,sBAAsB,EACtB,uBAAuB,EACvBzrB,MAAO,UACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAO8G,GAAc,EAAC,QAAa0iB,GAAqB,CACnG0C,SAAU/D,EAAO,MAAQA,EAAO,IAAMuC,GAAUpH,GAAejU,MAC9D,CACDib,SAAS,SAAS,IAAM,EAAC,QAAaf,GAA2B,CAC/D4C,MAAO,IACN,CACD7B,SAAS,SAAS,IAAM,CAACvjB,IAAc,QAAasiB,GAAsB,CACxEyB,WAAYhX,GAASrD,MACrB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU5W,GAASrD,MAAQia,GAC9EzqB,KAAM,SACNgS,MAAO,SACPgZ,YAAa,UACZ,KAAM,EAAG,CAAC,eAAgBjkB,IAAc,QAAaqiB,GAAsB,CAC5EyB,WAAY/W,GAAStD,MACrB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU3W,GAAStD,MAAQia,GAC9EzqB,KAAM,UACNgS,MAAO,UACPgZ,YAAa,WACZ,KAAM,EAAG,CAAC,eAAgBhkB,IAAc,QAAaoiB,GAAsB,CAC5EyB,WAAY9W,GAAYvD,MACxB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU1W,GAAYvD,MAAQia,GACjFzqB,KAAM,aACNgS,MAAO,aACPgZ,YAAa,cACZ,KAAM,EAAG,CAAC,eAAgB/jB,IAAc,QAAamiB,GAAsB,CAC5EppB,KAAM,SACNgS,MAAO,gBACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAY7W,GAAWxD,MACvB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUzW,GAAWxD,MAAQia,IAC/E,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACDmH,IAAc,QAAakiB,GAAsB,CACnDppB,KAAM,SACNgS,MAAO,eACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAY5W,GAAYzD,MACxB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUxW,GAAYzD,MAAQia,IAChF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACDoH,IAAc,QAAaiiB,GAAsB,CACnDppB,KAAM,SACNgS,MAAO,gBACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAY3W,GAAa1D,MACzB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUvW,GAAa1D,MAAQia,IACjF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACDqH,IAAc,QAAagiB,GAAsB,CACnDppB,KAAM,SACNgS,MAAO,eACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAY1W,GAAa3D,MACzB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUtW,GAAa3D,MAAQia,IACjF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACDsH,MACJtH,EAAG,KACD,IAAAA,GAAoB,MAAOuH,GAAc,EAAC,QAAakhB,EAAuB,CAChFkE,MAAO,GACPC,MAAO,GACP7K,MAAO,UACP,cAAe,UACd,CACDuI,SAAS,SAAS,IAAM,EAAC,QAAiB,WAC1CtqB,EAAG,SAELA,EAAG,MACCwH,MACNxH,EAAG,GACF,EAAG,CAAC,UAAU,QAAa6pB,GAAsB,CAClDiB,WAAY3Z,GAAOV,MACnB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUvZ,GAAOV,MAAQia,GAC5E/I,MAAO,eACP,eAAgB,GAChB4J,MAAO,MACP,wBAAwB,EACxBzrB,MAAO,oBACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAOyH,GAAc,EAAC,QAAakiB,GAAoB,CAClGc,QAAStC,EAAO,MAAQA,EAAO,IAAMuC,GAAU3D,GAAUvS,GAAmB/D,MAAQ8B,GAAiB9B,MAAQ,0BAC5G,CACD6Z,SAAS,SAAS,IAAM,EAAC,QAAaZ,OACtC1pB,EAAG,KACD,QAAauoB,EAAgB,KAAM,CACrC+B,SAAS,SAAS,IAAM,EAAC,QAAiB,UAAW,QAAiB9V,GAAmB/D,QAAS,QAAiB8B,GAAiB9B,OAAS,uBAAwB,MACrKzQ,EAAG,OACC,SAAa,QAAO,MAAU,CAClC+Y,KAAMlC,GAASpG,MACf,eAAgB,CACd6a,KAAM,WACNA,KAAM,cAERH,kBAAmBza,GACnB0a,QAAS,uBACTC,IAAKjb,GACL,iBAAkBkP,GAClBxf,MAAO,iBACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,QAAaxB,GAA4B,CAChE1L,KAAM,YACNmO,MAAO,QACL,QAAazC,GAA4B,CAC3C7W,MAAO,eACPqZ,KAAM,aACNE,SAAU,GACV,YAAa,OACZ,CACDlB,SAAS,SAASmB,GAAS,EAAC,QAAaxC,GAAuB,CAC9D0C,OAAQ,QACRC,QAAS,QACTC,UAAW,MACXN,MAAO,QACN,CACDO,WAAW,SAAS,IAAM,EAAC,IAAA9rB,GAAoB,MAAO0H,GAAc,CAAyB,GAAxB+jB,EAAMpM,IAAIrK,aAAsB,WAAc,QAAoB,MAAOrN,GAAc,EAAC,QAAaohB,GAAsB,CAC9LpY,KAAM,QACNoR,MAAO,UACP2J,OAAQ,IACP,CACDpB,SAAS,SAAS,IAAM,CAAC1iB,MACzB5H,EAAG,SACI,WAAc,QAAoB,MAAO6H,GAAc,EAAC,QAAakhB,GAAsB,CAClGpY,KAAM,QACNoR,MAAO,UACP2J,OAAQ,IACP,CACDpB,SAAS,SAAS,IAAM,CAACxiB,MACzB9H,EAAG,QACE,IAAAA,GAAoB,OAAQ+H,IAAc,QAAiB0jB,EAAMpM,IAAI1K,UAAW,QACvF2V,SAAS,SAAS,IAAM,EAAC,QAAatB,GAAmB,KAAM,CAC7DsB,SAAS,SAAS,IAAM,EAAC,SAAiB,QAAiBmB,EAAMpM,IAAInK,mBAAoB,MACzFlV,EAAG,GACF,SACHA,EAAG,GACF,SACHA,EAAG,KACD,QAAa8oB,GAA4B,CAC3C7W,MAAO,cACP,YAAa,OACZ,CACDqY,SAAS,SAASmB,GAAS,EAAC,IAAAzrB,GAAoB,MAAOgI,GAAc,EAAC,QAAa2hB,GAAoB,CACrGc,QAASC,GAAU3D,GAAU0E,EAAMpM,IAAIzD,YACtC,CACD0O,SAAS,SAAS,IAAM,EAAC,QAAaZ,OACtC1pB,EAAG,GACF,KAAM,CAAC,aAAa,IAAAA,GAAoB,OAAQiI,IAAc,QAAiBwjB,EAAMpM,IAAIzD,WAAY,QACxG5b,EAAG,KACD,QAAa8oB,GAA4B,CAC3C7W,MAAO,aACP,YAAa,OACZ,CACDqY,SAAS,SAASmB,GAAS,EAAC,QAAaxC,GAAuB,CAC9D0C,OAAQ,QACRC,QAAS,QACTC,UAAW,MACXN,MAAO,QACN,CACDjB,SAAS,SAAS,IAAM,EAAC,SAAiB,QAAiBmB,EAAMpM,IAAIxK,aAAc,MACnFiX,WAAW,SAAS,IAAM,EAAC,QAAa9C,GAAmB,KAAM,CAC/DsB,SAAS,SAAS,IAAM,CAACpiB,MACzBlI,EAAG,OAELA,EAAG,GACF,SACHA,EAAG,KACD,QAAa8oB,GAA4B,CAC3CmE,SAAU,WACVhb,MAAO,OACPqZ,KAAM,WACNE,SAAU,GACV,YAAa,SACX,QAAa1C,GAA4B,CAC3C7W,MAAO,OACP,YAAa,OACZ,CACDqY,SAAS,SAASmB,GAAS,EAAC,QAAa1C,GAAsB,CAC7DpY,KAAM,QACN8Z,QAASC,GAAUhD,GAAS+D,EAAMpM,MACjC,CACDiL,SAAS,SAAS,IAAM,EAAC,QAAiB,SAC1CtqB,EAAG,GACF,KAAM,CAAC,aAAa,QAAa+oB,GAAsB,CACxDpY,KAAM,QACNyM,KAAM,UACNqN,QAASC,GAAU/E,GAAsB8F,EAAMM,OAAQN,EAAMpM,MAC5D,CACDiL,SAAS,SAAS,IAAM,EAAC,QAAiB,SAC1CtqB,EAAG,GACF,KAAM,CAAC,aAAa,QAAa+oB,GAAsB,CACxDpY,KAAM,QACNyM,KAAM,SACNqN,QAASC,GAAUhF,GAAgB+F,EAAMM,OAAQN,EAAMpM,MACtD,CACDiL,SAAS,SAAS,IAAM,EAAC,QAAiB,SAC1CtqB,EAAG,GACF,KAAM,CAAC,aAAa,QAAa+oB,GAAsB,CACxDpY,KAAM,QACNyM,KAAM,UACNqN,QAASC,GAAUtF,GAAUqG,EAAMpM,MAClC,CACDiL,SAAS,SAAS,IAAM,EAAC,QAAiB,SAC1CtqB,EAAG,GACF,KAAM,CAAC,aAAa,QAAa+oB,GAAsB,CACxDpY,KAAM,QACNyM,KAAM,UACNqN,QAASC,GAAUjF,GAAWgG,EAAMpM,MACnC,CACDiL,SAAS,SAAS,IAAM,EAAC,QAAiB,SAC1CtqB,EAAG,GACF,KAAM,CAAC,eACVA,EAAG,OAELA,EAAG,GACF,EAAG,CAAC,UAAU,QAAa4pB,GAA4B,CACxD9pB,MAAO,8BACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,QAAanB,GAAsB,CAC1D2B,WAAYzY,GAAgB5B,MAC5B,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUrY,GAAgB5B,MAAQia,GACrFuB,WAAY,GACZjB,UAAW,GACXC,YAAa,WACZ,CACDX,SAAS,SAAS,IAAM,GAAE,WAAc,QAAoB,KAAW,MAAM,QAAYhY,IAAa6H,IAC7F,QAAa+O,GAAsB,CACxCrnB,IAAKsY,EAAK9H,gBACVJ,MAAOkI,EAAKlI,MACZxB,MAAO0J,EAAK9H,iBACX,KAAM,EAAG,CAAC,QAAS,YACpB,QACJrS,EAAG,GACF,EAAG,CAAC,gBAAgB,QAAa+oB,GAAsB,CACxD0B,QAAStC,EAAO,MAAQA,EAAO,IAAMuC,GAAU/C,GAAiBtV,GAAgB5B,SAC/E,CACD6Z,SAAS,SAAS,IAAM,CAACniB,MACzBnI,EAAG,KACD,QAAa6oB,GAAuB,CACtCiC,WAAY7S,GAAUxH,MACtB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUzS,GAAUxH,MAAQia,GAC/EK,MAAO,QACPC,UAAW,GACXC,YAAa,oBACb7R,SAAU+O,EAAO,MAAQA,EAAO,IAAMuC,GAAU/Q,GAAkB1B,GAAUxH,QAC5E3Q,MAAO,eACN,KAAM,EAAG,CAAC,kBACbE,EAAG,IACDoI,MACJpI,EAAG,GACF,EAAG,CAAC,gBAAgB,QAAa6pB,GAAsB,CACxDiB,WAAY1Z,GAAOX,MACnB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUtZ,GAAOX,MAAQia,GAC5E/I,MAAO,gBACP,eAAgB,GAChB4J,MAAO,OACP,wBAAwB,EACxBzrB,MAAO,mBACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAOqI,GAAc,EAAC,QAAakhB,GAA2B,CACzG4C,MAAO,IACN,CACD7B,SAAS,SAAS,IAAM,CAAChiB,IAAc,QAAa+gB,GAAsB,CACxEyB,WAAYhM,GAAarO,MACzB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU5L,GAAarO,MAAQia,GAClFzqB,KAAM,gBACNgS,MAAO,gBACPgZ,YAAa,iBACZ,KAAM,EAAG,CAAC,eAAgB1iB,IAAc,QAAa8gB,GAAsB,CAC5EyB,WAAY9G,GAAUvT,MACtB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAU1G,GAAUvT,MAAQia,GAC/EzqB,KAAM,OACNgS,MAAO,OACPgZ,YAAa,QACZ,KAAM,EAAG,CAAC,eAAgBziB,IAAc,QAAa6gB,GAAsB,CAC5EyB,WAAY7G,GAAYxT,MACxB,sBAAuB0X,EAAO,MAAQA,EAAO,IAAMuC,GAAUzG,GAAYxT,MAAQia,GACjFzqB,KAAM,OACNgS,MAAO,OACPgZ,YAAa,QACZ,KAAM,EAAG,CAAC,eAAgBxiB,MAC7BzI,EAAG,SAELA,EAAG,GACF,EAAG,CAAC,gBAAgB,QAAa6pB,GAAsB,CACxDiB,WAAYzZ,GAAOZ,MACnB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUrZ,GAAOZ,MAAQia,GAC9E/I,MAAO,qBACP,eAAgB,GAChB,YAAa,OACb,wBAAwB,EACxB7hB,MAAO,mBACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAO0I,GAAc,EAAC,QAAa8gB,GAAqB,CACnG0C,SAAU/D,EAAO,OAASA,EAAO,KAAOuC,GAAUlH,OACjD,CACD8G,SAAS,SAAS,IAAM,EAAC,QAAaf,GAA2B,CAC/D4C,MAAO,IACN,CACD7B,SAAS,SAAS,IAAM,CAAC3hB,IAAc,QAAa0gB,GAAsB,CACxEppB,KAAM,SACNgS,MAAO,uBACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAYzW,GAAmB5D,MAC/B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUrW,GAAmB5D,MAAQia,IACzF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IAC2B,GAA5BqU,GAAmB5D,QAAiB,WAAc,QAAoB,MAAO7H,GAAc,CAACC,IAAc,QAAawgB,GAAsB,CAC/IyB,WAAYxW,GAAgB7D,MAC5B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUpW,GAAgB7D,MAAQia,GACvFzqB,KAAM,eACNgS,MAAO,eACP,cAAe,QACfgZ,YAAa,yBACZ,KAAM,EAAG,CAAC,eAAgBniB,IAAc,QAAaugB,GAAsB,CAC5EyB,WAAYvW,GAAkB9D,MAC9B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUnW,GAAkB9D,MAAQia,GACzFzqB,KAAM,eACNgS,MAAO,eACP,cAAe,QACfgZ,YAAa,sBACZ,KAAM,EAAG,CAAC,eAAgBliB,OAAkB,QAAoB,IAAI,IAAO,QAAasgB,GAAsB,CAC/GyB,WAAYtW,GAAmB/D,MAC/B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUlW,GAAmB/D,MAAQia,GAC1FzqB,KAAM,qBACNgS,MAAO,qBACP,cAAe,QACfgZ,YAAa,sBACZ,KAAM,EAAG,CAAC,eAAgBjiB,IAAc,QAAaqgB,GAAsB,CAC5EyB,WAAYrW,GAAchE,MAC1B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUjW,GAAchE,MAAQia,GACrFzqB,KAAM,gBACNgS,MAAO,gBACP,cAAe,QACfgZ,YAAa,iBACZ,KAAM,EAAG,CAAC,eAAgBhiB,IAAc,QAAaogB,GAAsB,CAC5EyB,WAAYpW,GAAiBjE,MAC7B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUhW,GAAiBjE,MAAQia,GACxFzqB,KAAM,cACNgS,MAAO,cACP,cAAe,QACfgZ,YAAa,eACZ,KAAM,EAAG,CAAC,eAAgB/hB,MAC7BlJ,EAAG,KACD,IAAAA,GAAoB,MAAOmJ,GAAc,EAAC,QAAasf,EAAuB,CAChFkE,MAAO,GACPC,MAAO,GACP7K,MAAO,UACP,cAAe,UACd,CACDuI,SAAS,SAAS,IAAM,EAAC,QAAiB,WAC1CtqB,EAAG,SAELA,EAAG,SAELA,EAAG,GACF,EAAG,CAAC,gBAAgB,QAAa6pB,GAAsB,CACxDiB,WAAYxZ,GAAOb,MACnB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUpZ,GAAOb,MAAQia,GAC9E/I,MAAO,kBACP,eAAgB,GAChB4J,MAAO,OACP,wBAAwB,EACxBzrB,MAAO,mBACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAOoJ,GAAc,EAAC,QAAaogB,GAAqB,CACnG0C,SAAU1O,IACT,CACD8M,SAAS,SAAS,IAAM,EAAC,QAAaf,GAA2B,CAC/D4C,MAAO,IACN,CACD7B,SAAS,SAAS,IAAM,CAACjhB,IAAc,QAAaggB,GAAsB,CACxEyB,WAAY/V,GAActE,MAC1B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAU3V,GAActE,MAAQia,GACrFzqB,KAAM,eACNgS,MAAO,cACP,cAAe,QACfgZ,YAAa,kCACbmB,MAAO,CAAC,CACNE,UAAW1W,MAEZ,KAAM,EAAG,CAAC,aAAc,UAAWtM,IAAc,QAAa+f,GAAsB,CACrFppB,KAAM,SACNgS,MAAO,eACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAY9V,GAAWvE,MACvB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAU1V,GAAWvE,MAAQia,IACjF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACmB,GAApBgV,GAAWvE,QAAiB,WAAc,QAAoB,MAAOlH,GAAc,CAACC,IAAc,IAAAxJ,GAAoB,MAAOyJ,GAAc,EAAC,QAAaqgB,GAAyB,CACpL7X,MAAO,UACP,cAAe,SACd,CACDqY,SAAS,SAAS,IAAM,EAAC,QAAanB,GAAsB,CAC1D2B,WAAY3V,GAAqB1E,MACjC,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUvV,GAAqB1E,MAAQia,GAC5FwC,SAAU,GACVjB,WAAY,GACZ,eAAgB,GAChBjB,UAAW,GACXC,YAAa,eACbnrB,MAAO,iBACN,CACDwqB,SAAS,SAAS,IAAM,GAAE,WAAc,QAAoB,KAAW,MAAM,QAAYlY,IAAkB+H,IAClG,QAAa+O,GAAsB,CACxCrnB,IAAKsY,EAAKhI,YACVF,MAAOkI,EAAKlI,MACZxB,MAAO0J,EAAKhI,aACX,KAAM,EAAG,CAAC,QAAS,YACpB,QACJnS,EAAG,GACF,EAAG,CAAC,eAAgB0J,MACvB1J,EAAG,IACD2J,IAAc,QAAamgB,GAAyB,CACtD7X,MAAO,QACPqZ,KAAM,oBACL,CACDhB,SAAS,SAAS,IAAM,EAAC,QAAaP,GAAqB,CACzDe,WAAY1V,GAAqB3E,MACjC,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUtV,GAAqB3E,MAAQia,GAC5FtN,KAAM,WACNyP,KAAM,GACN5B,YAAa/b,GACbpP,MAAO,iBACN,KAAM,EAAG,CAAC,kBACbE,EAAG,MACC4J,IAAc,QAAayf,GAAsB,CACrDyB,WAAYxV,GAAS7E,MACrB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUpV,GAAS7E,MAAQia,GAChFzqB,KAAM,QACNgS,MAAO,QACP,cAAe,QACfgZ,YAAa,eACZ,KAAM,EAAG,CAAC,eAAgBphB,IAAc,QAAawf,GAAsB,CAC5E,cAAe,QACfppB,KAAM,gBACNgS,MAAO,eACN,CACDkb,OAAO,SAAS,IAAM,EAAC,QAAalD,GAA+B,CACjEa,WAAY5a,GAAaO,MACzB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUxa,GAAaO,MAAQia,GACpF0C,UAAW,cACV,CACD9C,SAAS,SAAS,IAAM,EAAC,QAAaN,GAAyB,CAC7D/pB,KAAM,UACN,gBAAiB,WAChB,CACDqqB,SAAS,SAAS,IAAM,EAAC,QAAiB,cAC1CtqB,EAAG,KACD,QAAagqB,GAAyB,CACxC/pB,KAAM,MACN,gBAAiB,WAChB,CACDqqB,SAAS,SAAS,IAAM,EAAC,QAAiB,UAC1CtqB,EAAG,KACD,QAAagqB,GAAyB,CACxC/pB,KAAM,OACN,gBAAiB,WAChB,CACDqqB,SAAS,SAAS,IAAM,EAAC,QAAiB,WAC1CtqB,EAAG,OAELA,EAAG,GACF,EAAG,CAAC,kBACPA,EAAG,IACD8J,IAAc,QAAauf,GAAsB,CACnDyB,WAAYzV,GAAkB5E,MAC9B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUrV,GAAkB5E,MAAQia,GACzFzqB,KAAM,mBACNgS,MAAO,mBACP,cAAe,QACfgZ,YAAa,oBACZ,KAAM,EAAG,CAAC,eAAgBlhB,OAAkB,QAAoB,IAAI,MACvE/J,EAAG,KACD,IAAAA,GAAoB,MAAOgK,GAAc,EAAC,QAAaye,EAAuB,CAChFkE,MAAO,GACPC,MAAO,GACP7K,MAAO,UACP,cAAe,UACd,CACDuI,SAAS,SAAS,IAAM,EAAC,QAAiB,WAC1CtqB,EAAG,SAELA,EAAG,SAELA,EAAG,GACF,EAAG,CAAC,gBAAgB,QAAa6pB,GAAsB,CACxDiB,WAAYvZ,GAAQd,MACpB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUnZ,GAAQd,MAAQia,GAC/E/I,MAAO,iBACP,eAAgB,GAChB4J,MAAO,MACP,wBAAwB,EACxBzrB,MAAO,mBACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAOiK,GAAc,EAAC,SAAa,QAAO,MAAU,CAC/F,iBAAkBqV,GAClBvG,KAAMhC,GAAUtG,OACf,CACD6Z,SAAS,SAAS,IAAM,EAAC,QAAaxB,GAA4B,CAChEwC,KAAM,YACNrZ,MAAO,OACP,YAAa,OACZ,CACDqY,SAAS,SAASmB,GAAS,EAAC,IAAAzrB,GAAoB,MAAOkK,GAAc,EAAC,IAAAlK,GAAoB,OAAQmK,IAAc,QAAiBshB,EAAMpM,IAAIjE,WAAY,QACvJpb,EAAG,KACD,QAAa8oB,GAA4B,CAC3C7W,MAAO,OACP,YAAa,OACZ,CACDqY,SAAS,SAASmB,GAAS,EAAC,IAAAzrB,GAAoB,MAAOoK,GAAc,EAAC,QAAauf,GAAoB,CACrGc,QAASC,GAAU3D,GAAU0E,EAAMpM,IAAIzD,YACtC,CACD0O,SAAS,SAAS,IAAM,EAAC,QAAaZ,OACtC1pB,EAAG,GACF,KAAM,CAAC,aAAa,IAAAA,GAAoB,OAAQqK,IAAc,QAAiBohB,EAAMpM,IAAIhE,WAAY,QACxGrb,EAAG,KACD,QAAa8oB,GAA4B,CAC3C7W,MAAO,QACP,YAAa,OACZ,CACDqY,SAAS,SAASmB,GAAS,EAAC,IAAAzrB,GAAoB,MAAOsK,GAAc,EAAC,IAAAtK,GAAoB,OAAQuK,IAAc,QAAiBkhB,EAAMpM,IAAI9D,iBAAmB,KAAM,QAAiBkQ,EAAMpM,IAAI/D,kBAAmB,QAClNtb,EAAG,KACD,QAAa8oB,GAA4B,CAC3CmE,SAAU,gBACVhb,MAAO,OACPqZ,KAAM,gBACN,YAAa,WAEftrB,EAAG,GACF,EAAG,CAAC,WAAYwK,MACnBxK,EAAG,GACF,EAAG,CAAC,gBAAgB,QAAa6pB,GAAsB,CACxDiB,WAAYtZ,GAAQf,MACpB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUlZ,GAAQf,MAAQia,GAC/E/I,MAAO,mBACP,eAAgB,GAChB4J,MAAO,OACP,wBAAwB,EACxBzrB,MAAO,mBACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAOyK,GAAc,EAAC,QAAa+e,GAAqB,CACnG0C,SAAUvN,IACT,CACD2L,SAAS,SAAS,IAAM,EAAC,QAAaf,GAA2B,CAC/D4C,MAAO,IACN,CACD7B,SAAS,SAAS,IAAM,CAAC5f,IAAc,IAAA1K,GAAoB,MAAO2K,GAAc,EAAC,QAAamf,GAAyB,CACrH7X,MAAO,cACN,CACDqY,SAAS,SAAS,IAAM,EAAC,QAAanB,GAAsB,CAC1D2B,WAAYnW,GAASlE,MACrB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAU/V,GAASlE,MAAQia,GAChFuB,WAAY,GACZjB,UAAW,GACXC,YAAa,wBACboC,SAAU/O,GACVxe,MAAO,iBACN,CACDwqB,SAAS,SAAS,IAAM,GAAE,SAAW,IAAO,QAAoB,KAAW,MAAM,QAAYzT,GAASpG,OAAO0J,KACpG,WAAc,QAAa+O,GAAsB,CACtDrnB,IAAKsY,EAAKxF,SACV1C,MAAOkI,EAAKxF,SACZlE,MAAO0J,EAAKxF,SACZ,YAAawF,GACZ,KAAM,EAAG,CAAC,QAAS,QAAS,iBAC7B,SACJna,EAAG,GACF,EAAG,CAAC,kBACPA,EAAG,MACC4K,IAAc,QAAaye,GAAsB,CACrDyB,WAAYvV,GAAc9E,MAC1B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUnV,GAAc9E,MAAQia,GACrFtN,KAAM,WACNmP,UAAW,MACXe,SAAU,GACVrtB,KAAM,eACNgS,MAAO,eACP,cAAe,QACfgZ,YAAa,uBACZ,KAAM,EAAG,CAAC,eAAgBpgB,IAAc,QAAawe,GAAsB,CAC5EppB,KAAM,SACNgS,MAAO,eACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAY9V,GAAWvE,MACvB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAU1V,GAAWvE,MAAQia,IACjF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACD8K,GAAkC,GAApBkK,GAAWvE,QAAiB,WAAc,QAAoB,MAAO1F,GAAc,CAACC,IAAc,IAAAhL,GAAoB,MAAOiL,GAAc,EAAC,QAAa6e,GAAyB,CAClM7X,MAAO,UACP,cAAe,SACd,CACDqY,SAAS,SAAS,IAAM,EAAC,QAAanB,GAAsB,CAC1D2B,WAAY5V,GAAkBzE,MAC9B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUxV,GAAkBzE,MAAQia,GACzFwC,SAAU,GACVjB,WAAY,GACZ,eAAgB,GAChBjB,UAAW,GACXC,YAAa,eACbnrB,MAAO,iBACN,CACDwqB,SAAS,SAAS,IAAM,GAAE,WAAc,QAAoB,KAAW,MAAM,QAAYlY,IAAkB+H,IAClG,QAAa+O,GAAsB,CACxCrnB,IAAKsY,EAAKhI,YACVF,MAAOkI,EAAKlI,MACZxB,MAAO0J,EAAKhI,aACX,KAAM,EAAG,CAAC,QAAS,YACpB,QACJnS,EAAG,GACF,EAAG,CAAC,eAAgBkL,MACvBlL,EAAG,IACDmL,IAAc,QAAa2e,GAAyB,CACtD7X,MAAO,QACPqZ,KAAM,oBACL,CACDhB,SAAS,SAAS,IAAM,EAAC,QAAaP,GAAqB,CACzDe,WAAY7V,GAAkBxE,MAC9B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUzV,GAAkBxE,MAAQia,GACzFtN,KAAM,WACNyP,KAAM,GACN5B,YAAa/b,GACbpP,MAAO,iBACN,KAAM,EAAG,CAAC,kBACbE,EAAG,MACCoL,IAAc,QAAaie,GAAsB,CACrDyB,WAAYxV,GAAS7E,MACrB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUpV,GAAS7E,MAAQia,GAChFzqB,KAAM,QACNgS,MAAO,QACP,cAAe,QACfgZ,YAAa,cACbmB,MAAO,CAAC,CACNC,UAAU,EACVhP,QAAS,oBAEV,KAAM,EAAG,CAAC,eAAgBhS,IAAc,QAAage,GAAsB,CAC5E,cAAe,QACfppB,KAAM,gBACNgS,MAAO,eACN,CACDkb,OAAO,SAAS,IAAM,EAAC,QAAalD,GAA+B,CACjEa,WAAY7a,GAAgBQ,MAC5B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUza,GAAgBQ,MAAQia,GACvF0C,UAAW,cACV,CACD9C,SAAS,SAAS,IAAM,EAAC,QAAaN,GAAyB,CAC7D/pB,KAAM,UACN,gBAAiB,WAChB,CACDqqB,SAAS,SAAS,IAAM,EAAC,QAAiB,cAC1CtqB,EAAG,KACD,QAAagqB,GAAyB,CACxC/pB,KAAM,MACN,gBAAiB,WAChB,CACDqqB,SAAS,SAAS,IAAM,EAAC,QAAiB,UAC1CtqB,EAAG,KACD,QAAagqB,GAAyB,CACxC/pB,KAAM,OACN,gBAAiB,WAChB,CACDqqB,SAAS,SAAS,IAAM,EAAC,QAAiB,WAC1CtqB,EAAG,OAELA,EAAG,GACF,EAAG,CAAC,kBACPA,EAAG,IACDsL,IAAc,QAAa+d,GAAsB,CACnDyB,WAAYzV,GAAkB5E,MAC9B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUrV,GAAkB5E,MAAQia,GACzFzqB,KAAM,mBACNgS,MAAO,mBACP,cAAe,QACfgZ,YAAa,mBACbmB,MAAO,CAAC,CACNC,UAAU,EACVhP,QAAS,yBAEV,KAAM,EAAG,CAAC,eAAgB9R,OAAkB,QAAoB,IAAI,MACvEvL,EAAG,KACD,IAAAA,GAAoB,MAAOwL,GAAc,EAAC,QAAaid,EAAuB,CAChFkE,MAAO,GACPC,MAAO,GACP7K,MAAO,UACP,cAAe,UACd,CACDuI,SAAS,SAAS,IAAM,EAAC,QAAiB,WAC1CtqB,EAAG,SAELA,EAAG,SAELA,EAAG,GACF,EAAG,CAAC,gBAAgB,QAAa6pB,GAAsB,CACxDiB,WAAYrZ,GAAQhB,MACpB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUjZ,GAAQhB,MAAQia,GAC/E,eAAgB,GAChBa,MAAO,OACP,wBAAwB,EACxBzrB,MAAO,mBACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAO,CAClDorB,QAAS,QACTC,IAAKvD,GACLnnB,MAAO,CACL,MAAS,OACT,OAAU,UAEX,KAAM,QACTX,EAAG,GACF,EAAG,CAAC,gBAAgB,QAAa6pB,GAAsB,CACxDiB,WAAYpZ,GAAQjB,MACpB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUhZ,GAAQjB,MAAQia,GAC/E/I,MAAO,wBACP,eAAgB,GAChB4J,MAAO,MACP,wBAAwB,EACxBzrB,MAAO,oBACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,QAAazB,GAAuB,CAC3DiC,WAAY5S,GAAWzH,MACvB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUxS,GAAWzH,MAAQia,GAClF,cAAe,GACfK,MAAO,QACPC,UAAW,GACXC,YAAa,qBACb7R,SAAU+O,EAAO,OAASA,EAAO,KAAOuC,GAAUjR,GAAmBvB,GAAWzH,QAChF3Q,MAAO,gBACN,CACDqd,QAAQ,SAAS,IAAM,EAAC,QAAa4L,GAAsB,CACzD4B,KAAMzC,EAAKqF,KACX9C,QAAStC,EAAO,OAASA,EAAO,KAAOuC,GAAU/Y,GAAQlB,OAAQ,IAChE,CACD6Z,SAAS,SAAS,IAAM,CAAC7e,MACzBzL,EAAG,GACF,EAAG,CAAC,YACPA,EAAG,GACF,EAAG,CAAC,gBAAgB,SAAa,QAAO,MAAU,CACnD+Y,KAAMjC,GAAUrG,MAChB,iBAAkB6O,IACjB,CACDgL,SAAS,SAAS,IAAM,EAAC,QAAaxB,GAA4B,CAChE7W,MAAO,cACPqZ,KAAM,cACNC,MAAO,OACN,CACDjB,SAAS,SAASmB,GAAS,EAAC,IAAAzrB,GAAoB,MAAO0L,GAAc,EAAC,IAAA1L,GAAoB,OAAQ2L,IAAc,QAAiB8f,EAAMpM,IAAIlD,aAAc,QACzJnc,EAAG,KACD,QAAa8oB,GAA4B,CAC3C7W,MAAO,WACP,YAAa,OACZ,CACDqY,SAAS,SAASmB,GAAS,EAAC,IAAAzrB,GAAoB,MAAO4L,GAAc,EAAC,IAAA5L,GAAoB,OAAQ6L,IAAc,QAAiB4f,EAAMpM,IAAIjD,YAAa,QACxJpc,EAAG,KACD,QAAa8oB,GAA4B,CAC3C7W,MAAO,eACP,YAAa,OACZ,CACDqY,SAAS,SAASmB,GAAS,EAAC,IAAAzrB,GAAoB,MAAO8L,GAAc,EAAC,QAAa6d,GAAoB,CACrGc,QAASC,GAAU3D,GAAU0E,EAAMpM,IAAIhD,cACtC,CACDiO,SAAS,SAAS,IAAM,EAAC,QAAaZ,OACtC1pB,EAAG,GACF,KAAM,CAAC,aAAa,IAAAA,GAAoB,OAAQ+L,IAAc,QAAiB0f,EAAMpM,IAAIhD,aAAc,QAC1Grc,EAAG,KACD,QAAa8oB,GAA4B,CAC3CmE,SAAU,YACVhb,MAAO,OACPqZ,KAAM,YACN,YAAa,SACX,QAAaxC,GAA4B,CAC3C7W,MAAO,OACP,YAAa,OACZ,CACDqY,SAAS,SAASmB,GAAS,EAAC,QAAa1C,GAAsB,CAC7DpY,KAAM,QACN8Z,QAASC,GAAU3H,GAAe0I,EAAMpM,MACvC,CACDiL,SAAS,SAAS,IAAM,EAAC,QAAiB,SAC1CtqB,EAAG,GACF,KAAM,CAAC,aAAa,QAAa+oB,GAAsB,CACxDpY,KAAM,QACNyM,KAAM,UACNqN,QAASC,GAAUrF,GAAYoG,EAAMpM,MACpC,CACDiL,SAAS,SAAS,IAAM,EAAC,QAAiB,SAC1CtqB,EAAG,GACF,KAAM,CAAC,aAAa,QAAa+oB,GAAsB,CACxDpY,KAAM,QACNyM,KAAM,SACNqN,QAASC,GAAU5E,GAAiB2F,EAAMM,OAAQN,EAAMpM,MACvD,CACDiL,SAAS,SAAS,IAAM,EAAC,QAAiB,SAC1CtqB,EAAG,GACF,KAAM,CAAC,eACVA,EAAG,OAELA,EAAG,GACF,EAAG,CAAC,SAAUgM,MACjBhM,EAAG,GACF,EAAG,CAAC,gBAAgB,QAAa6pB,GAAsB,CACxDiB,WAAYnZ,GAAQlB,MACpB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAU/Y,GAAQlB,MAAQia,GAC/E/I,MAAO,wBACP,eAAgB,GAChB4J,MAAO,OACP,wBAAwB,EACxBzrB,MAAO,mBACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,QAAad,GAAqB,CACzD0C,SAAUrN,IACT,CACDyL,SAAS,SAAS,IAAM,EAAC,QAAaf,GAA2B,CAC/D4C,MAAO,IACN,CACD7B,SAAS,SAAS,IAAM,CAACre,IAAc,QAAaod,GAAsB,CACxEyB,WAAYrT,GAAehH,MAC3B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUjT,GAAehH,MAAQia,GACtFzqB,KAAM,cACNgS,MAAO,cACP,cAAe,QACfgZ,YAAa,cACbmB,MAAO,CAAC,CACNC,UAAU,EACVhP,QAAS,oBAEV,KAAM,EAAG,CAAC,eAAgBnR,IAAc,IAAAlM,GAAoB,MAAOmM,GAAc,EAAC,QAAa2d,GAAyB,CACzH7X,MAAO,SACP,cAAe,SACd,CACDqY,SAAS,SAAS,IAAM,EAAC,QAAanB,GAAsB,CAC1D2B,WAAYpT,GAAcjH,MAC1B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUhT,GAAcjH,MAAQia,GACrFuB,WAAY,GACZjB,UAAW,GACXC,YAAa,mBACboC,SAAU5O,GACV3e,MAAO,iBACN,CACDwqB,SAAS,SAAS,IAAM,GAAE,SAAW,IAAO,QAAoB,KAAW,MAAM,QAAY5L,GAAkBjO,OAAO0J,KAC7G,WAAc,QAAa+O,GAAsB,CACtDrnB,IAAKsY,EAAKla,KACVgS,MAAOkI,EAAKla,KACZwQ,MAAO0J,EAAKla,KACZ,YAAaka,GACZ,KAAM,EAAG,CAAC,QAAS,QAAS,iBAC7B,SACJna,EAAG,GACF,EAAG,CAAC,kBACPA,EAAG,MACCoM,IAAc,IAAApM,GAAoB,MAAOqM,GAAc,EAAC,QAAayd,GAAyB,CAClG7X,MAAO,UACP,cAAe,SACd,CACDqY,SAAS,SAAS,IAAM,EAAC,QAAanB,GAAsB,CAC1D2B,WAAYlT,GAAiBnH,MAC7B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAU9S,GAAiBnH,MAAQia,GACxFwC,SAAU,GACVjB,WAAY,GACZ,eAAgB,GAChBjB,UAAW,GACXC,YAAa,eACbnrB,MAAO,iBACN,CACDwqB,SAAS,SAAS,IAAM,GAAE,WAAc,QAAoB,KAAW,MAAM,QAAYpY,IAAciI,IAC9F,QAAa+O,GAAsB,CACxCrnB,IAAKsY,EAAKhI,YACVF,MAAOkI,EAAKlI,MACZxB,MAAO0J,EAAKhI,aACX,KAAM,EAAG,CAAC,QAAS,YACpB,QACJnS,EAAG,GACF,EAAG,CAAC,eAAgBsM,MACvBtM,EAAG,IACDuM,IAAc,QAAaud,GAAyB,CACtD7X,MAAO,QACPqZ,KAAM,oBACL,CACDhB,SAAS,SAAS,IAAM,EAAC,QAAaP,GAAqB,CACzDe,WAAYjT,GAAiBpH,MAC7B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAU7S,GAAiBpH,MAAQia,GACxFtN,KAAM,WACNyP,KAAM,GACN5B,YAAa/b,GACbpP,MAAO,iBACN,KAAM,EAAG,CAAC,kBACbE,EAAG,MACCwM,IAAc,QAAa6c,GAAsB,CACrDyB,WAAY/S,GAAYtH,MACxB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAU3S,GAAYtH,MAAQia,GACnFzqB,KAAM,QACNgS,MAAO,QACP,cAAe,QACfgZ,YAAa,cACbmB,MAAO,CAAC,CACNC,UAAU,EACVhP,QAAS,oBAEV,KAAM,EAAG,CAAC,eAAgB5Q,IAAc,QAAa4c,GAAsB,CAC5E,cAAe,QACfppB,KAAM,mBACNgS,MAAO,eACN,CACDkb,OAAO,SAAS,IAAM,EAAC,QAAalD,GAA+B,CACjEa,WAAYhT,GAAiBrH,MAC7B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAU5S,GAAiBrH,MAAQia,GACxF0C,UAAW,cACV,CACD9C,SAAS,SAAS,IAAM,EAAC,QAAaN,GAAyB,CAC7D/pB,KAAM,UACN,gBAAiB,WAChB,CACDqqB,SAAS,SAAS,IAAM,EAAC,QAAiB,cAC1CtqB,EAAG,KACD,QAAagqB,GAAyB,CACxC/pB,KAAM,MACN,gBAAiB,WAChB,CACDqqB,SAAS,SAAS,IAAM,EAAC,QAAiB,UAC1CtqB,EAAG,KACD,QAAagqB,GAAyB,CACxC/pB,KAAM,OACN,gBAAiB,WAChB,CACDqqB,SAAS,SAAS,IAAM,EAAC,QAAiB,WAC1CtqB,EAAG,OAELA,EAAG,GACF,EAAG,CAAC,kBACPA,EAAG,IACD0M,IAAc,QAAa2c,GAAsB,CACnDyB,WAAYnT,GAAkBlH,MAC9B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAU/S,GAAkBlH,MAAQia,GACzFzqB,KAAM,eACNgS,MAAO,eACP,cAAe,QACfgZ,YAAa,eACbmB,MAAO,CAAC,CACNC,UAAU,EACVhP,QAAS,qBAEV,KAAM,EAAG,CAAC,eAAgB1Q,MAC7B3M,EAAG,KACD,IAAAA,GAAoB,MAAO4M,GAAc,EAAC,QAAa6b,EAAuB,CAChFkE,MAAO,GACPC,MAAO,GACP7K,MAAO,UACP,cAAe,UACd,CACDuI,SAAS,SAAS,IAAM,EAAC,QAAiB,WAC1CtqB,EAAG,SAELA,EAAG,OAELA,EAAG,GACF,EAAG,CAAC,gBAAgB,QAAa6pB,GAAsB,CACxDiB,WAAYlZ,GAAQnB,MACpB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAU9Y,GAAQnB,MAAQia,GAC/E/I,MAAO,2BACP,eAAgB,GAChB4J,MAAO,OACPzrB,MAAO,mBACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,QAAad,GAAqB,CACzD0C,SAAUhE,EAAKsF,YACd,CACDlD,SAAS,SAAS,IAAM,EAAC,QAAaf,GAA2B,CAC/D4C,MAAO,IACN,CACD7B,SAAS,SAAS,IAAM,CAACzd,IAAc,QAAawc,GAAsB,CACxEyB,WAAY3O,GAAY1L,MACxB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUvO,GAAY1L,MAAQia,GACnFzqB,KAAM,cACNgS,MAAO,cACP,cAAe,QACfgZ,YAAa,cACb,YAAa,gBACb6B,UAAU,EACVC,gBAAiB5E,EAAO,OAASA,EAAO,KAAOuC,GAAU3D,GAAU5K,GAAY1L,QAC/E2b,MAAO,CAAC,CACNC,UAAU,EACVhP,QAAS,oBAEV,KAAM,EAAG,CAAC,eAAgBvQ,IAAc,QAAauc,GAAsB,CAC5EyB,WAAYzO,GAAY5L,MACxB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUrO,GAAY5L,MAAQia,GACnFzqB,KAAM,gBACNgS,MAAO,gBACP,cAAe,QACf,YAAa,gBACb6a,UAAU,EACVC,gBAAiB5E,EAAO,OAASA,EAAO,KAAOuC,GAAU3D,GAAU1K,GAAY5L,QAC/Ewa,YAAa,iBACZ,KAAM,EAAG,CAAC,eAAgBle,IAAc,QAAasc,GAAsB,CAC5EyB,WAAY1O,GAAW3L,MACvB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUtO,GAAW3L,MAAQia,GAClFzqB,KAAM,iBACNgS,MAAO,iBACP,cAAe,QACf,YAAa,gBACb6a,UAAU,EACVC,gBAAiB5E,EAAO,OAASA,EAAO,KAAOuC,GAAU3D,GAAU3K,GAAW3L,QAC9Ewa,YAAa,iBACZ,KAAM,EAAG,CAAC,eAAgBje,IAAc,QAAaqc,GAAsB,CAC5EyB,WAAYjI,GAAiBpS,MAC7B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAU7H,GAAiBpS,MAAQia,GACxFzqB,KAAM,QACNgS,MAAO,QACP,cAAe,QACf,YAAa,gBACb6a,UAAU,EACVC,gBAAiB5E,EAAO,OAASA,EAAO,KAAOuC,GAAU3D,GAAUlE,GAAiBpS,QACpFwa,YAAa,SACZ,KAAM,EAAG,CAAC,gBAAgB,IAAAjrB,GAAoB,MAAOiN,GAAc,CAACC,IAAc,QAAa4c,GAAyB,CACzH7X,MAAO,QACPqZ,KAAM,oBACL,CACDhB,SAAS,SAAS,IAAM,EAAC,QAAaP,GAAqB,CACzDe,WAAYtO,GAAc/L,MAC1B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUlO,GAAc/L,MAAQia,GACrFtN,KAAM,WACNoP,SAAU,GACVvB,YAAa/b,GACbpP,MAAO,iBACN,KAAM,EAAG,CAAC,kBACbE,EAAG,IACDmN,MAAgB,QAAakc,GAAsB,CACrDyB,WAAYxV,GAAS7E,MACrB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUpV,GAAS7E,MAAQia,GAChFzqB,KAAM,QACNgS,MAAO,QACP,cAAe,QACf,YAAa,gBACb6a,UAAU,EACVC,gBAAiB5E,EAAO,OAASA,EAAO,KAAOuC,GAAU3D,GAAUzR,GAAS7E,QAC5Ewa,YAAa,cACbmB,MAAO,CAAC,CACNC,UAAU,EACVhP,QAAS,oBAEV,KAAM,EAAG,CAAC,eAAgBjQ,IAAc,QAAaic,GAAsB,CAC5EyB,WAAYhI,GAAiBrS,MAC7B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAU5H,GAAiBrS,MAAQia,GACxFzqB,KAAM,QACNgS,MAAO,QACP,cAAe,QACf,YAAa,gBACb6a,UAAU,EACVC,gBAAiB5E,EAAO,OAASA,EAAO,KAAOuC,GAAU3D,GAAUjE,GAAiBrS,QACpFwa,YAAa,SACZ,KAAM,EAAG,CAAC,eAAgB5d,IAAc,QAAagc,GAAsB,CAC5EyB,WAAYxO,GAAe7L,MAC3B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUpO,GAAe7L,MAAQia,GACtFzqB,KAAM,eACNgS,MAAO,eACP,cAAe,QACf,YAAa,gBACb6a,UAAU,EACVC,gBAAiB5E,EAAO,OAASA,EAAO,KAAOuC,GAAU3D,GAAUzK,GAAe7L,QAClFwa,YAAa,eACbmB,MAAO,CAAC,CACNC,UAAU,EACVhP,QAAS,qBAEV,KAAM,EAAG,CAAC,eAAgB/P,MAC7BtN,EAAG,OAELA,EAAG,GACF,EAAG,CAAC,gBACPA,EAAG,GACF,EAAG,CAAC,gBAAgB,QAAa6pB,GAAsB,CACxDiB,WAAYjZ,GAAQpB,MACpB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAU7Y,GAAQpB,MAAQia,GAC/E/I,MAAO,4BACP,eAAgB,GAChB4J,MAAO,OACPzrB,MAAO,mBACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAOuN,GAAc,EAAC,QAAaic,GAAqB,CACnG0C,SAAU5G,IACT,CACDgF,SAAS,SAAS,IAAM,EAAC,QAAaf,GAA2B,CAC/D4C,MAAO,IACN,CACD7B,SAAS,SAAS,IAAM,CAAC9c,IAAc,IAAAxN,GAAoB,MAAOyN,GAAc,EAAC,QAAaqc,GAAyB,CACrH7X,MAAO,SACP,cAAe,SACd,CACDqY,SAAS,SAAS,IAAM,EAAC,QAAanB,GAAsB,CAC1D2B,WAAY1O,GAAW3L,MACvB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUtO,GAAW3L,MAAQia,GAClFuB,WAAY,GACZjB,UAAW,GACXC,YAAa,mBACboC,SAAU5O,GACV3e,MAAO,iBACN,CACDwqB,SAAS,SAAS,IAAM,GAAE,SAAW,IAAO,QAAoB,KAAW,MAAM,QAAY5L,GAAkBjO,OAAO0J,KAC7G,WAAc,QAAa+O,GAAsB,CACtDrnB,IAAKsY,EAAKla,KACVgS,MAAOkI,EAAKla,KACZwQ,MAAO0J,EAAKla,KACZ,YAAaka,GACZ,KAAM,EAAG,CAAC,QAAS,QAAS,iBAC7B,SACJna,EAAG,GACF,EAAG,CAAC,kBACPA,EAAG,MACC0N,IAAc,IAAA1N,GAAoB,MAAO2N,GAAc,EAAC,QAAamc,GAAyB,CAClG7X,MAAO,UACP,cAAe,SACd,CACDqY,SAAS,SAAS,IAAM,EAAC,QAAanB,GAAsB,CAC1D2B,WAAYvO,GAAc9L,MAC1B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUnO,GAAc9L,MAAQia,GACrFwC,SAAU,GACVjB,WAAY,GACZ,eAAgB,GAChBjB,UAAW,GACXC,YAAa,eACbnrB,MAAO,iBACN,CACDwqB,SAAS,SAAS,IAAM,GAAE,WAAc,QAAoB,KAAW,MAAM,QAAYpY,IAAciI,IAC9F,QAAa+O,GAAsB,CACxCrnB,IAAKsY,EAAKhI,YACVF,MAAOkI,EAAKlI,MACZxB,MAAO0J,EAAKhI,aACX,KAAM,EAAG,CAAC,QAAS,YACpB,QACJnS,EAAG,GACF,EAAG,CAAC,kBACPA,EAAG,IACD4N,IAAc,QAAakc,GAAyB,CACtD7X,MAAO,QACPqZ,KAAM,oBACL,CACDhB,SAAS,SAAS,IAAM,EAAC,QAAaP,GAAqB,CACzDe,WAAYtO,GAAc/L,MAC1B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUlO,GAAc/L,MAAQia,GACrFtN,KAAM,WACNyP,KAAM,GACN5B,YAAa/b,GACbpP,MAAO,iBACN,KAAM,EAAG,CAAC,kBACbE,EAAG,MACC6N,GAAcC,IAAc,QAAaub,GAAsB,CACnEyB,WAAYxV,GAAS7E,MACrB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUpV,GAAS7E,MAAQia,GAChFzqB,KAAM,QACNgS,MAAO,QACP,cAAe,QACfgZ,YAAa,cACbmB,MAAO,CAAC,CACNC,UAAU,EACVhP,QAAS,oBAEV,KAAM,EAAG,CAAC,eAAgBtP,IAAc,QAAasb,GAAsB,CAC5E,cAAe,QACfppB,KAAM,gBACNgS,MAAO,eACN,CACDkb,OAAO,SAAS,IAAM,EAAC,QAAalD,GAA+B,CACjEa,WAAYrO,GAAchM,MAC1B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUjO,GAAchM,MAAQia,GACrF0C,UAAW,cACV,CACD9C,SAAS,SAAS,IAAM,EAAC,QAAaN,GAAyB,CAC7D/pB,KAAM,UACN,gBAAiB,WAChB,CACDqqB,SAAS,SAAS,IAAM,EAAC,QAAiB,cAC1CtqB,EAAG,KACD,QAAagqB,GAAyB,CACxC/pB,KAAM,MACN,gBAAiB,WAChB,CACDqqB,SAAS,SAAS,IAAM,EAAC,QAAiB,UAC1CtqB,EAAG,KACD,QAAagqB,GAAyB,CACxC/pB,KAAM,OACN,gBAAiB,WAChB,CACDqqB,SAAS,SAAS,IAAM,EAAC,QAAiB,WAC1CtqB,EAAG,OAELA,EAAG,GACF,EAAG,CAAC,kBACPA,EAAG,IACDgO,IAAc,QAAaqb,GAAsB,CACnDyB,WAAYxO,GAAe7L,MAC3B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUpO,GAAe7L,MAAQia,GACtFzqB,KAAM,eACNgS,MAAO,eACP,cAAe,QACfgZ,YAAa,eACbmB,MAAO,CAAC,CACNC,UAAU,EACVhP,QAAS,qBAEV,KAAM,EAAG,CAAC,eAAgBpP,MAC7BjO,EAAG,KACD,IAAAA,GAAoB,MAAOkO,GAAc,EAAC,QAAaua,EAAuB,CAChFkE,MAAO,GACPC,MAAO,GACP7K,MAAO,UACP,cAAe,UACd,CACDuI,SAAS,SAAS,IAAM,EAAC,QAAiB,WAC1CtqB,EAAG,SAELA,EAAG,SAELA,EAAG,GACF,EAAG,CAAC,gBAAgB,QAAa6pB,GAAsB,CACxDiB,WAAYhZ,GAAQrB,MACpB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAU5Y,GAAQrB,MAAQia,GAC/E/I,MAAO,kBACP,eAAgB,GAChB4J,MAAO,OACP,wBAAwB,EACxBzrB,MAAO,mBACN,CACDwqB,SAAS,SAAS,IAAM,EAAC,IAAAtqB,GAAoB,MAAOmO,GAAc,EAAC,QAAaqb,GAAqB,KAAM,CACzGc,SAAS,SAAS,IAAM,EAAC,QAAaf,GAA2B,CAC/D4C,MAAO,IACN,CACD7B,SAAS,SAAS,IAAM,CAAClc,IAAc,QAAaib,GAAsB,CACxEyB,WAAYlW,GAAYnE,MACxB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAU9V,GAAYnE,MAAQia,GACnFzqB,KAAM,eACNgS,MAAO,eACPgZ,YAAa,eACb6B,UAAU,EACV,cAAe,QACf,YAAa,gBACbC,gBAAiB5E,EAAO,OAASA,EAAO,KAAOuC,GAAU3D,GAAUnS,GAAYnE,SAC9E,KAAM,EAAG,CAAC,eAAgBpC,IAAc,QAAagb,GAAsB,CAC5EyB,WAAYjW,GAAYpE,MACxB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAU7V,GAAYpE,MAAQia,GACnFzY,MAAO,aACPmL,KAAM,WACN6N,YAAa,aACb,YAAa,gBACb6B,UAAU,EACV,cAAe,QACfC,gBAAiB5E,EAAO,OAASA,EAAO,KAAOuC,GAAU3D,GAAU7Q,GAAezF,QAClF+b,SAAU,CACRC,UAAW,IACXC,UAAW,KAEZ,KAAM,EAAG,CAAC,eAAgBpe,IAAc,QAAa+a,GAAsB,CAC5EyB,WAAYvV,GAAc9E,MAC1B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUnV,GAAc9E,MAAQia,GACrFoC,UAAU,EACV1P,KAAM,WACNmP,UAAW,MACXe,SAAU,GACVrtB,KAAM,eACNgS,MAAO,eACP,cAAe,QACfgZ,YAAa,sBACb,YAAa,gBACb8B,gBAAiB5E,EAAO,OAASA,EAAO,KAAOuC,GAAU3D,GAAUxR,GAAc9E,SAChF,KAAM,EAAG,CAAC,eAAgBlC,IAAc,QAAa8a,GAAsB,CAC5EppB,KAAM,SACNgS,MAAO,eACN,CACD,cAAc,SAAS,IAAM,EAAC,QAAaqX,GAAuB,CAChE,eAAgB,UAChBwB,WAAY9V,GAAWvE,MACvB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAU1V,GAAWvE,MAAQia,IACjF,KAAM,EAAG,CAAC,kBACb1qB,EAAG,IACDwO,GAAkC,GAApBwG,GAAWvE,QAAiB,WAAc,QAAoB,MAAOhC,GAAc,CAACC,IAAc,IAAA1O,GAAoB,MAAO2O,GAAc,EAAC,QAAamb,GAAyB,CAClMkD,SAAU,GACV/a,MAAO,UACP,cAAe,SACd,CACDqY,SAAS,SAAS,IAAM,EAAC,QAAanB,GAAsB,CAC1D6D,SAAU,GACVlC,WAAY5V,GAAkBzE,MAC9B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUxV,GAAkBzE,MAAQia,GACzFwC,SAAU,GACVjB,WAAY,GACZ,eAAgB,GAChBjB,UAAW,GACXC,YAAa,eACbnrB,MAAO,iBACN,CACDwqB,SAAS,SAAS,IAAM,GAAE,WAAc,QAAoB,KAAW,MAAM,QAAYlY,IAAkB+H,IAClG,QAAa+O,GAAsB,CACxCrnB,IAAKsY,EAAKhI,YACVF,MAAOkI,EAAKlI,MACZxB,MAAO0J,EAAKhI,aACX,KAAM,EAAG,CAAC,QAAS,YACpB,QACJnS,EAAG,GACF,EAAG,CAAC,eAAgB4O,MACvB5O,EAAG,IACD6O,IAAc,QAAaib,GAAyB,CACtD7X,MAAO,QACPqZ,KAAM,oBACL,CACDhB,SAAS,SAAS,IAAM,EAAC,QAAaP,GAAqB,CACzDe,WAAY7V,GAAkBxE,MAC9B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUzV,GAAkBxE,MAAQia,GACzFtN,KAAM,WACN4P,SAAU,GACVR,SAAU,GACVvB,YAAa/b,GACbpP,MAAO,iBACN,KAAM,EAAG,CAAC,kBACbE,EAAG,MACC8O,IAAc,QAAaua,GAAsB,CACrDyD,UAAU,EACVhC,WAAYxV,GAAS7E,MACrB,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUpV,GAAS7E,MAAQia,GAChFzqB,KAAM,QACNgS,MAAO,QACP,cAAe,QACfgZ,YAAa,cACbmB,MAAO,CAAC,CACNC,UAAU,EACVhP,QAAS,oBAEV,KAAM,EAAG,CAAC,eAAgBtO,IAAc,QAAasa,GAAsB,CAC5EyD,UAAU,EACV,cAAe,QACf7sB,KAAM,gBACNgS,MAAO,eACN,CACDkb,OAAO,SAAS,IAAM,EAAC,QAAalD,GAA+B,CACjEa,WAAY7a,GAAgBQ,MAC5B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUza,GAAgBQ,MAAQia,GACvF0C,UAAW,cACV,CACD9C,SAAS,SAAS,IAAM,EAAC,QAAaN,GAAyB,CAC7D/pB,KAAM,UACN,gBAAiB,WAChB,CACDqqB,SAAS,SAAS,IAAM,EAAC,QAAiB,cAC1CtqB,EAAG,KACD,QAAagqB,GAAyB,CACxC/pB,KAAM,MACN,gBAAiB,WAChB,CACDqqB,SAAS,SAAS,IAAM,EAAC,QAAiB,UAC1CtqB,EAAG,KACD,QAAagqB,GAAyB,CACxC/pB,KAAM,OACN,gBAAiB,WAChB,CACDqqB,SAAS,SAAS,IAAM,EAAC,QAAiB,WAC1CtqB,EAAG,OAELA,EAAG,GACF,EAAG,CAAC,kBACPA,EAAG,IACDgP,IAAc,QAAaqa,GAAsB,CACnDyD,UAAU,EACVhC,WAAYzV,GAAkB5E,MAC9B,sBAAuB0X,EAAO,OAASA,EAAO,KAAOuC,GAAUrV,GAAkB5E,MAAQia,GACzFzqB,KAAM,mBACNgS,MAAO,mBACP,cAAe,QACfgZ,YAAa,mBACb,YAAa,gBACb8B,gBAAiB5E,EAAO,OAASA,EAAO,KAAOuC,GAAU3D,GAAU1R,GAAkB5E,QACrF2b,MAAO,CAAC,CACNC,UAAU,EACVhP,QAAS,yBAEV,KAAM,EAAG,CAAC,eAAgBpO,OAAkB,QAAoB,IAAI,MACvEjP,EAAG,OAELA,EAAG,SAELA,EAAG,GACF,EAAG,CAAC,gBAAiB,GAAG,CAE/B,IC5wKF,MAAMytB,GAAc,GAEpB,S","sources":["webpack://PandoraNext-TokensTool/./src/views/homeIndex.vue","webpack://PandoraNext-TokensTool/./src/views/homeIndex.vue?32ba"],"sourcesContent":["import \"core-js/modules/es.array.push.js\";\nimport { defineComponent as _defineComponent } from 'vue';\nimport { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, unref as _unref, resolveDirective as _resolveDirective, openBlock as _openBlock, createBlock as _createBlock, withDirectives as _withDirectives, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode } from \"vue\";\nimport _imports_0 from '../asserts/openAi.jpg';\nconst _hoisted_1 = {\n class: \"content\"\n};\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"meta\", {\n name: \"viewport\",\n content: \"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no\"\n}, null, -1);\nconst _hoisted_3 = {\n class: \"home-container\"\n};\nconst _hoisted_4 = /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"flex-grow\"\n}, null, -1);\nconst _hoisted_5 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://ai.fakeopen.com/auth\"\n}, \"PandoraNext地址\", -1);\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://chat.openai.com/api/auth/session\"\n}, \"OpenAI官网\", -1);\nconst _hoisted_7 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://github.com/Yanyutin753/PandoraNext-TokensTool\"\n}, \"TokensTool地址\", -1);\nconst _hoisted_8 = {\n class: \"under\"\n};\nconst _hoisted_9 = {\n style: {\n \"display\": \"block\",\n \"transform\": \"translate(5vw, 2.5vh)\"\n }\n};\nconst _hoisted_10 = /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"flex items-center\"\n}, [/*#__PURE__*/_createElementVNode(\"span\", {\n class: \"font-h4\"\n}, \"PandoraNext-TokensTool \"), /*#__PURE__*/_createElementVNode(\"span\", {\n class: \"font-h4-tag\"\n}, \"v0.6.8 \")], -1);\nconst _hoisted_11 = {\n class: \"search\"\n};\nconst _hoisted_12 = {\n style: {\n \"display\": \"flex\",\n \"margin\": \"10px 35px -8px 35px\"\n }\n};\nconst _hoisted_13 = {\n style: {\n \"display\": \"flex\",\n \"transform\": \"translateX(4vw)\",\n \"width\": \"70vw\",\n \"height\": \"61vh\"\n }\n};\nconst _hoisted_14 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_15 = {\n style: {\n \"margin-left\": \"18px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_16 = {\n style: {\n \"margin\": \"15px 0px 15px 0px\"\n }\n};\nconst _hoisted_17 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"批量操作\", -1);\nconst _hoisted_18 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"全部检查并生成\", -1);\nconst _hoisted_19 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_20 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_21 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_22 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_23 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_24 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_25 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_26 = {\n key: 0\n};\nconst _hoisted_27 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_28 = {\n key: 1\n};\nconst _hoisted_29 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_30 = {\n key: 0\n};\nconst _hoisted_31 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_32 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_33 = {\n key: 2\n};\nconst _hoisted_34 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_35 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_36 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_37 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_38 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_39 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_40 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_41 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_42 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_43 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_44 = {\n key: 0\n};\nconst _hoisted_45 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_46 = {\n key: 1\n};\nconst _hoisted_47 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_48 = {\n key: 0\n};\nconst _hoisted_49 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_50 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_51 = {\n key: 2\n};\nconst _hoisted_52 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_53 = {\n key: 3\n};\nconst _hoisted_54 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_55 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_56 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_57 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_58 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_59 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_60 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_61 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_62 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_63 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_64 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_65 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_66 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_67 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_68 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_69 = {\n key: 0\n};\nconst _hoisted_70 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_71 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_72 = {\n key: 0\n};\nconst _hoisted_73 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_74 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_75 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_76 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_77 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_78 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_79 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_80 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_81 = {\n key: 0\n};\nconst _hoisted_82 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_83 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_84 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_85 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_86 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_87 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_88 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_89 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_90 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_91 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_92 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_93 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_94 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_95 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_96 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_97 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_98 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_99 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_100 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_101 = {\n key: 0\n};\nconst _hoisted_102 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_103 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_104 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_105 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_106 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_107 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_108 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_109 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_110 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_111 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_112 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_113 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_114 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_115 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_116 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_117 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_118 = {\n style: {\n \"transform\": \"translate(0vw, -2vh)\"\n }\n};\nconst _hoisted_119 = {\n style: {\n \"margin-left\": \"15px\",\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_120 = {\n key: 0\n};\nconst _hoisted_121 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"oneApi\", -1);\nconst _hoisted_122 = {\n key: 1\n};\nconst _hoisted_123 = /*#__PURE__*/_createElementVNode(\"h5\", null, \"Json\", -1);\nconst _hoisted_124 = {\n style: {\n \"margin-left\": \"25px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_125 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_126 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_127 = /*#__PURE__*/_createElementVNode(\"span\", {\n style: {\n \"margin-left\": \"0px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n}, \"点击此进行查看\", -1);\nconst _hoisted_128 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"批量操作\", -1);\nconst _hoisted_129 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_130 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_131 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_132 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_133 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_134 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_135 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_136 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_137 = {\n key: 0\n};\nconst _hoisted_138 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_139 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_140 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_141 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_142 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_143 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_144 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_145 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_146 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_147 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_148 = {\n key: 0\n};\nconst _hoisted_149 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_150 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_151 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_152 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_153 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_154 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_155 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_156 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_157 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_158 = {\n style: {\n \"display\": \"flex\"\n }\n};\nconst _hoisted_159 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_160 = {\n style: {\n \"margin-left\": \"0px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_161 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_162 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_163 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_164 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_165 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_166 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_167 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_168 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_169 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_170 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_171 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_172 = {\n key: 0\n};\nconst _hoisted_173 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_174 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_175 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_176 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_177 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_178 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_179 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_180 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_181 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_182 = /*#__PURE__*/_createElementVNode(\"h1\", null, \"添加share_token到OneAPI\", -1);\nconst _hoisted_183 = {\n style: {\n \"margin-left\": \"15px\",\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_184 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_185 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_186 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_187 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\",\n \"overflow\": \"auto\"\n }\n};\nconst _hoisted_188 = {\n style: {\n \"margin-left\": \"10px\",\n \"text-overflow\": \"ellipsis\",\n \"overflow\": \"hidden\",\n \"white-space\": \"nowrap\"\n }\n};\nconst _hoisted_189 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_190 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_191 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_192 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_193 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_194 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_195 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_196 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_197 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_198 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_199 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_200 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_201 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_202 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_203 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_204 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_205 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_206 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_207 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_208 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_209 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_210 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_211 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_212 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_213 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_214 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_215 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_216 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_217 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_218 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_219 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_220 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_221 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_222 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_223 = {\n style: {\n \"margin\": \"5.2px\"\n }\n};\nconst _hoisted_224 = {\n style: {\n \"display\": \"block\"\n }\n};\nconst _hoisted_225 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_226 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_227 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_228 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_229 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_230 = {\n key: 0\n};\nconst _hoisted_231 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_232 = {\n style: {\n \"transform\": \"translateX(17px)\"\n }\n};\nconst _hoisted_233 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_234 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_235 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_236 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_237 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nconst _hoisted_238 = /*#__PURE__*/_createElementVNode(\"br\", null, null, -1);\nimport { ref, onMounted } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport axios from \"axios\";\nimport { ElMessage, ElMessageBox } from \"element-plus\";\nimport { differenceInDays, parseISO } from \"date-fns\";\nimport { ElLoading } from \"element-plus\";\nimport { ElTable } from \"element-plus\";\nimport * as echarts from \"echarts\";\nimport { computed } from \"vue\";\nconst temModel_mapping = `此项可选,用于修改请求体中的模型名称,\n 为一个 JSON 字符串,键为请求中模型名称,\n 值为要替换的模型名称,例如:\n {\n \"gpt-3.5-turbo-301\":\"gpt-3.5-turbo\",\n \"gpt-4-8314\":\"gpt-4\", \n \"gpt-4-32k-8314\":\"gpt-4-32k\",\n }`;\nconst pandoraNext = 0;\n//tokensTool 为 0\nconst tokensTool = 1;\n//验证信息\nconst validation = 2;\n/**\r\n * 修改系统设置信息\r\n */\nexport default /*#__PURE__*/_defineComponent({\n __name: 'homeIndex',\n setup(__props) {\n // 导入类\n const path = window.location.pathname; // 假设是 \"/api/getData\"\n const parts = path.split(\"/\"); // 分割路径,得到 [\"\", \"api\", \"getData\"]\n let prefix = \"\"; // 默认值为 \"\"\n if (parts.length >= 3) {\n prefix = \"/\" + parts[1]; // 如果parts长度大于或等于3,获取第一个部分\n }\n\n const temGroupChecked = ref([\"default\", \"svip\", \"vip\"]);\n const groupChecked = ref([\"default\", \"svip\", \"vip\"]);\n const multipleTableRef = ref();\n const multipleTableRefPool = ref();\n const multipleSelection = ref([]);\n const multipleSelectionPool = ref([]);\n const handleSelectionChange = val => {\n multipleSelection.value = val;\n };\n const poolSelectionChange = val => {\n multipleSelectionPool.value = val;\n };\n const size = ref(\"ALL\");\n //pandoraNext 为 0\n const router = useRouter();\n /**\r\n * \r\n * \r\n * \r\n *\r\n */\n const show = ref(false);\n const show_1 = ref(false);\n const show_2 = ref(false);\n const show_3 = ref(false);\n const show_4 = ref(false);\n const show_5 = ref(false);\n const show_6 = ref(false);\n const show_7 = ref(false);\n const show_8 = ref(false);\n const show_9 = ref(false);\n const show_10 = ref(false);\n const show_11 = ref(false);\n const show_12 = ref(false);\n const show_13 = ref(false);\n const show_14 = ref(false);\n const show_15 = ref(false);\n const show_16 = ref(false);\n const show_17 = ref(false);\n /**\r\n * 定义User类接口\r\n */\n const buttonValue = ref(\"\");\n const options = [{\n buttonValue: \"选中删除Token\",\n label: \"选中删除Token\"\n }, {\n buttonValue: \"选中刷新Token\",\n label: \"选中刷新Token\"\n }, {\n buttonValue: \"选中合成pool_token\",\n label: \"选中合成pool_token\"\n }, {\n buttonValue: \"选中修改pool_token\",\n label: \"选中修改pool_token\"\n }];\n const buttonModel = ref(\"\");\n const optionsModel = [{\n buttonModel: \"gpt-3.5-turbo\",\n label: \"gpt-3.5-turbo\"\n }, {\n buttonModel: \"gpt-4-s\",\n label: \"gpt-4-s\"\n }, {\n buttonModel: \"gpt-4-mobile\",\n label: \"gpt-4-mobile\"\n }, {\n buttonModel: \"gpt-4-vision\",\n label: \"gpt-4-vision\"\n }, {\n buttonModel: \"gpt-4-classic\",\n label: \"gpt-4-classic\"\n }, {\n buttonModel: \"gpt-4-vision-preview\",\n label: \"gpt-4-vision-preview\"\n }];\n const optionsPoolModel = [{\n buttonModel: \"gpt-3.5-turbo\",\n label: \"gpt-3.5-turbo\"\n }, {\n buttonModel: \"gpt-4\",\n label: \"gpt-4\"\n }];\n const buttonPoolValue = ref(\"\");\n const optionsPool = [{\n buttonPoolValue: \"选中检查pool_token\",\n label: \"选中检查pool_token\"\n }, {\n buttonPoolValue: \"选中删除pool_token\",\n label: \"选中删除pool_token\"\n }, {\n buttonPoolValue: \"选中刷新pool_token\",\n label: \"选中刷新pool_token\"\n }, {\n buttonPoolValue: \"选中更换pool_token\",\n label: \"选中更换pool_token\"\n }];\n /**\r\n * 定义Pool类接口\r\n */\n const proxy_api_prefix = ref(\"\");\n const isolated_conv_title = ref(\"*\");\n const bing = ref(\"\");\n const timeout = ref(\"\");\n const proxy_url = ref(\"\");\n const public_share = ref(false);\n //0.4.9.2\n const disable_signup = ref(false);\n const auto_conv_arkose = ref(false);\n const proxy_file_service = ref(false);\n const custom_doh_host = ref(\"\");\n const enabled = ref(false);\n const cert_file = ref(\"\");\n const key_file = ref(\"\");\n const site_password = ref(\"\");\n const setup_password = ref(\"\");\n const loginUsername = ref(\"\");\n const loginPassword = ref(\"\");\n const license_id = ref(\"\");\n //0.4.8.2\n const isGetToken = ref(false);\n const getTokenPassword = ref(\"\");\n const containerName = ref(\"PandoraNext\");\n const autoToken_url = ref(\"default\");\n const whitelist = ref(\"\");\n const provider = ref(\"\");\n const site_key = ref(\"\");\n const site_secret = ref(\"\");\n const site_login = ref(false);\n const setup_login = ref(false);\n const oai_username = ref(false);\n const oai_password = ref(false);\n //0.4.9.3\n const auto_updateSession = ref(false);\n const auto_updateTime = ref(5);\n const auto_updateNumber = ref(1);\n const pandoraNext_outUrl = ref(\"\");\n const oneAPi_outUrl = ref(\"\");\n const oneAPi_intoToken = ref(\"\");\n // 0.4.8\n const poolName = ref(\"\");\n const temPoolName = ref(\"\");\n const shareTokens = ref(\"\");\n const poolToken = ref(\"\");\n const poolTime = ref(\"\");\n const checkPool = ref(true);\n // 0.5.0\n //上传oneApi\n const poolNameValue = ref(\"\");\n const intoOneApi = ref(false);\n const poolModel_mapping = ref(\"\");\n const poolOneApi_models = ref([]);\n const addPoolOneApi_models = ref([]);\n const addPoolModel_mapping = ref(\"\");\n const oneApi_pandoraUrl = ref(pandoraNext_outUrl.value + proxy_api_prefix.value);\n const priority = ref(0);\n const temPool_token = ref(\"\");\n // 自定义校验函数,直接返回错误提示\n const customValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n const sitePasswordValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (regex.test(value) || value == \"\") {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n const poolNameValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^[\\u4e00-\\u9fa5a-zA-Z0-9]{3,10}$/;\n if (regex.test(value)) {\n return true;\n } else {\n return \"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字\";\n }\n };\n const addPasswordValidator = value => {\n // 至少8位,包含数字和字母\n const regex = /^(?=.*\\d)(?=.*[a-zA-Z]).{8,}$/;\n if (addSetPoolToken.value == true || setPoolToken.value == true || regex.test(value)) {\n return true;\n } else {\n return \"此项至少要包含8位且必须包含数字和字母\";\n }\n };\n /**\r\n * 查看或者修改token信息参数\r\n */\n const temName = ref(\"\");\n const temToken = ref(\"\");\n const temAccessToken = ref(\"\");\n const temShareToken = ref(\"\");\n const temUsername = ref(\"\");\n const temUserPassword = ref(\"\");\n const temShared = ref(false);\n const temShow_user_info = ref(false);\n const temPlus = ref(false);\n const temPassword = ref(\"\");\n const setPoolToken = ref(false);\n const useRefreshToken = ref(false);\n const temCheckSession = ref(true);\n const tableData = ref([]);\n // 0.4.8\n const poolData = ref([]);\n const shareData = ref([]);\n // 0.5.9\n const loginData = ref([]);\n /**\r\n * 添加用户信息参数\r\n */\n const addName = ref(\"\");\n const addUsername = ref(\"\");\n const addUserPassword = ref(\"\");\n const addTokenValue = ref(\"\");\n const addShared = ref(false);\n const addShow_user_info = ref(false);\n const addPlus = ref(false);\n const addSetPoolToken = ref(false);\n const addUseRefreshToken = ref(false);\n const addPassword = ref(\"\");\n /**\r\n * 添加用户信息参数\r\n */\n const addOneApi_name = ref(\"\");\n const addToken_name = ref(\"\");\n const addToken_value = ref(\"\");\n const addOneApi_baseUrl = ref(\"\");\n const addOneApi_models = ref([]);\n const addModel_mapping = ref(\"\");\n const addOneApi_groups = ref([\"default\", \"svip\", \"vip\"]);\n const addPriority = ref(0);\n //Pandora的icon大小\n const iconSize = ref(window.innerHeight * 0.085);\n //搜索值\n const value = ref(\"\");\n const valuePool = ref(\"\");\n const valueShare = ref(\"\");\n /**\r\n * 用jwt令牌验证身份\r\n * 未通过者返回到/\r\n */\n const token = localStorage.getItem(\"jwtToken\"); // 从localStorage获取JWT令牌\n if (!token) {\n router.replace(`/`);\n }\n const headers = {\n Authorization: `Bearer ${token}`\n };\n /**\r\n * 用jwt令牌验证身份函数\r\n */\n const fetchLoginToken = async () => {\n axios.post(`https://yubb.fun${prefix}/api/loginToken?token=` + token).then(response => {\n if (response.data.code == 0) {\n console.error(response.data.data);\n router.replace(`/`);\n return;\n }\n }).catch(error => {\n console.error(\"请求loginToken接口失败\", error);\n router.replace(`/`);\n });\n };\n const onSearch = value => {\n if (value == \"Web\" || value == \"WEB\") {\n getWebToken(\"\");\n } else if (value == \"ALL\" || value == \"All\") {\n getToken(\"\");\n } else if (value.includes(\"API\")) {\n getAPIToken(\"\");\n } else {\n getToken(value);\n }\n };\n const onSearchShareToken = value => {\n getShare(value);\n };\n const onSearchPoolToken = value => {\n getPool(value);\n };\n /**\r\n * 获取数据操作,并把数据返回到tableData\r\n * 用于展示\r\n */\n const getToken = async value => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 将用户数据添加到tableData\n tableData.value = resUsers;\n }\n };\n const getAPIToken = async value => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 使用 filter 方法筛选出 setPoolToken 等于 true 的用户\n const filteredUsers = resUsers.filter(user => user.setPoolToken === true);\n // 将筛选后的用户数据添加到 tableData\n tableData.value = filteredUsers;\n }\n };\n const getWebToken = async value => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectToken?name=${value}`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resUsers = data_token.map(item => ({\n name: item.name,\n username: item.username,\n userPassword: item.userPassword,\n token: item.token,\n access_token: item.access_token,\n share_token: item.share_token,\n shared: item.shared,\n auto_shared: item.auto_shared,\n show_user_info: item.show_user_info,\n password: item.password,\n plus: item.plus,\n setPoolToken: item.setPoolToken,\n useRefreshToken: item.useRefreshToken,\n updateTime: item.updateTime,\n checkSession: item.checkSession\n }));\n // 使用 filter 方法筛选出 setPoolToken 等于 true 的用户\n const filteredUsers = resUsers.filter(user => user.setPoolToken === false);\n // 将筛选后的用户数据添加到 tableData\n tableData.value = filteredUsers;\n }\n };\n /**\r\n * 获取数据操作\r\n * 用于日志数据展示\r\n */\n const getLoginData = async () => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectLogin`, {\n headers\n });\n const data_token = response.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(data_token)) {\n const resLogins = data_token.map(item => ({\n ipAddress: item.ipAddress,\n requestIp: item.requestIp,\n outRequestNumber: item.outRequestNumber,\n inRequestNumber: item.inRequestNumber,\n lastLoginTime: item.lastLoginTime\n }));\n // 将用户数据添加到tableData\n loginData.value = resLogins;\n }\n };\n const getPool = async value => {\n const responsePool = await axios.get(`https://yubb.fun${prefix}/api/selectPoolToken?name=${value}`, {\n headers\n });\n const pool_token = responsePool.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(pool_token)) {\n const resPools = pool_token.map(item => ({\n poolName: item.poolName,\n poolTime: item.poolTime,\n poolToken: item.poolToken,\n shareTokens: item.shareTokens,\n checkPool: item.checkPool,\n intoOneApi: item.intoOneApi,\n poolOneApi_models: item.poolOneApi_models,\n poolModel_mapping: item.poolModel_mapping,\n oneApi_pandoraUrl: item.oneApi_pandoraUrl,\n groupChecked: item.groupChecked,\n priority: item.priority\n }));\n // 将用户数据添加到poolData\n poolData.value = resPools;\n }\n };\n const getShare = async value => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const responseShare = await axios.get(`https://yubb.fun${prefix}/api/selectShareToken?name=${value}`, {\n headers\n });\n const share_token = responseShare.data.data;\n // 如果服务器返回的数据是一个数组,您可以遍历数据并将每个对象转化为User类型\n if (Array.isArray(share_token)) {\n const resShares = share_token.map(item => ({\n oneApi_name: item.oneApi_name,\n token_name: item.token_name,\n token_value: item.token_value,\n oneApi_baseUrl: item.oneApi_baseUrl,\n oneApi_models: item.oneApi_models,\n model_mapping: item.model_mapping,\n oneApi_groups: item.oneApi_groups,\n shareTime: item.shareTime,\n priority: item.priority\n }));\n // 将用户数据添加到poolData\n shareData.value = resShares;\n }\n loadingInstance.close();\n };\n const getSetting = async value => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/selectSetting`, {\n headers\n });\n const data = response.data.data;\n proxy_api_prefix.value = data.proxy_api_prefix;\n isolated_conv_title.value = data.isolated_conv_title;\n bing.value = data.bing;\n timeout.value = data.timeout;\n proxy_url.value = data.proxy_url;\n public_share.value = data.public_share;\n //0.4.9.2\n disable_signup.value = data.disable_signup;\n auto_conv_arkose.value = data.auto_conv_arkose;\n proxy_file_service.value = data.proxy_file_service;\n custom_doh_host.value = data.custom_doh_host;\n enabled.value = data.tls.enabled;\n cert_file.value = data.tls.cert_file;\n key_file.value = data.tls.key_file;\n site_password.value = data.site_password;\n setup_password.value = data.setup_password;\n if (data.whitelist == null) {\n whitelist.value = \"null\";\n } else whitelist.value = data.whitelist;\n loginUsername.value = data.loginUsername;\n loginPassword.value = data.loginPassword;\n license_id.value = data.license_id;\n //0.4.8.2\n isGetToken.value = data.isGetToken;\n getTokenPassword.value = data.getTokenPassword;\n containerName.value = data.containerName;\n autoToken_url.value = data.autoToken_url;\n provider.value = data.validation.provider;\n site_key.value = data.validation.site_key;\n site_secret.value = data.validation.site_secret;\n site_login.value = data.validation.site_login;\n setup_login.value = data.validation.setup_login;\n oai_username.value = data.validation.oai_username;\n oai_password.value = data.validation.oai_password;\n //0.4.9.3\n auto_updateSession.value = data.auto_updateSession;\n auto_updateTime.value = data.auto_updateTime;\n auto_updateNumber.value = data.auto_updateNumber;\n pandoraNext_outUrl.value = data.pandoraNext_outUrl;\n if (!pandoraNext_outUrl.value.endsWith(\"/\")) {\n oneApi_pandoraUrl.value = pandoraNext_outUrl.value + \"/\" + proxy_api_prefix.value;\n } else {\n oneApi_pandoraUrl.value = pandoraNext_outUrl.value + proxy_api_prefix.value;\n }\n //0.5.0\n oneAPi_outUrl.value = data.oneAPi_outUrl;\n oneAPi_intoToken.value = data.oneAPi_intoToken;\n fetchDataAndFillForm();\n };\n const fetchDataAndFillForm = async () => {\n if (loginPassword.value == \"123456\" && loginUsername.value == \"root\") {\n ElMessageBox.alert(\"请先修改默认的初始账号和密码,并填写相应的信息,具体可参考网站文档!\", \"温馨提醒\", {\n confirmButtonText: \"确定\",\n callback: action => {\n ElMessage({\n type: \"info\",\n message: `如果不知道怎么填的话,可以看tokensTool的文档站!`\n });\n }\n });\n show_4.value = true;\n loginPassword.value = \"\";\n loginUsername.value = \"\";\n }\n };\n const getSelectedData = () => {\n const selectedData = multipleSelection.value;\n if (selectedData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n } else {\n show_9.value = true;\n }\n };\n const addSelectPoolToken = async () => {\n try {\n const selectedData = multipleSelection.value;\n const names = selectedData.map(userData => userData.name);\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n if (addPoolModel_mapping.value == \"\") {\n addPoolModel_mapping.value = \"{}\";\n }\n JSON.parse(addPoolModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const addPoolToken = {\n poolName: poolNameValue.value,\n intoOneApi: intoOneApi.value,\n poolOneApi_models: addPoolOneApi_models.value.toString(),\n poolModel_mapping: addPoolModel_mapping.value,\n oneApi_pandoraUrl: oneApi_pandoraUrl.value,\n shareTokens: names,\n groupChecked: groupChecked.value.toString(),\n priority: priority.value\n };\n const response = await fetch(`https://yubb.fun${prefix}/api/addPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addPoolToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n poolNameValue.value = \"\";\n getPool(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n poolNameValue.value = \"\";\n intoOneApi.value = false;\n poolModel_mapping.value = \"\";\n poolOneApi_models.value = [];\n groupChecked.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n loadingInstance.close();\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消生成pool_token\"\n });\n }\n show_9.value = false;\n };\n const handlePoolNameChange = poolNameValue => {\n let selectedItem = poolData.value.find(item => item.poolName === poolNameValue);\n if (selectedItem != null) {\n temPool_token.value = selectedItem.poolToken;\n intoOneApi.value = selectedItem.intoOneApi;\n poolOneApi_models.value = selectedItem.poolOneApi_models.split(\",\");\n poolModel_mapping.value = selectedItem.poolModel_mapping;\n oneApi_pandoraUrl.value = selectedItem.oneApi_pandoraUrl;\n temGroupChecked.value = selectedItem.groupChecked.split(\",\");\n priority.value = selectedItem.priority;\n }\n };\n const handleShareNameChange = addToken_name => {\n let selectedItem = tableData.value.find(item => item.name === addToken_name && item.setPoolToken === true);\n };\n const filteredTableData = computed(() => {\n return tableData.value.filter(item => item.setPoolToken === true);\n });\n const requirePoolToken = async () => {\n try {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n if (poolModel_mapping.value == \"\") {\n poolModel_mapping.value = \"{}\";\n }\n JSON.parse(poolModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const selectedData = multipleSelection.value;\n const names = selectedData.map(userData => userData.name);\n const addPoolToken = {\n poolName: poolName.value,\n poolToken: temPool_token.value,\n intoOneApi: intoOneApi.value,\n poolOneApi_models: poolOneApi_models.value.toString(),\n poolModel_mapping: poolModel_mapping.value,\n oneApi_pandoraUrl: oneApi_pandoraUrl.value,\n shareTokens: names,\n groupChecked: temGroupChecked.value.toString(),\n priority: priority.value\n };\n console.log(addPoolToken);\n const response = await fetch(`https://yubb.fun${prefix}/api/requirePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addPoolToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n getPool(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n poolName.value = \"\";\n temPool_token.value = \"\";\n intoOneApi.value = false;\n poolOneApi_models.value = [];\n poolModel_mapping.value = \"\";\n groupChecked.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n loadingInstance.close();\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消修改pool_token\"\n });\n }\n show_11.value = false;\n };\n const addShareToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n try {\n try {\n if (addModel_mapping.value == \"\") {\n addModel_mapping.value = \"{}\";\n }\n JSON.parse(addModel_mapping.value);\n } catch (e) {\n ElMessage({\n type: \"error\",\n message: \"模型重定向请输入正确的JSON格式\"\n });\n loadingInstance.close();\n return;\n }\n const addShareToken = {\n oneApi_name: addOneApi_name.value,\n token_name: addToken_name.value,\n oneApi_baseUrl: addOneApi_baseUrl.value,\n oneApi_models: addOneApi_models.value.toString(),\n model_mapping: addModel_mapping.value,\n oneApi_groups: addOneApi_groups.value.toString(),\n priority: priority.value\n };\n const response = await fetch(`https://yubb.fun${prefix}/api/addShareToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(addShareToken)\n });\n const data = await response.json();\n if (data.code === 1) {\n getShare(\"\");\n ElMessage({\n type: \"success\",\n message: data.data\n });\n addOneApi_name.value = \"\";\n addToken_name.value = \"\";\n addOneApi_baseUrl.value = \"\";\n addOneApi_models.value = [];\n addModel_mapping.value = \"\";\n addOneApi_groups.value = [\"default\", \"svip\", \"vip\"];\n priority.value = 0;\n } else {\n ElMessage({\n type: \"info\",\n message: data.msg\n });\n }\n } catch (error) {\n ElMessage({\n type: \"info\",\n message: \"取消修改pool_token\"\n });\n }\n show_14.value = false;\n loadingInstance.close();\n };\n const pandoraUsage = ref(\"\");\n // 在组件加载完成后自动触发数据加载和填充\n onMounted(async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n // 页面重定向\n fetchLoginToken();\n if (window.innerWidth <= 900) {\n router.replace(\"/iphone\");\n } else {\n router.replace(\"/home\");\n }\n try {\n // 并行执行不依赖的函数\n await Promise.all([onSearch(value.value), getPool(value.value), getSetting(value.value)]);\n // 等待获取 Pandora 数据\n const response = await axios.get(`https://yubb.fun${prefix}/api/getPandoraNext`, {\n headers\n });\n const data = response.data.data;\n if (data != null) {\n pandoraUsage.value = `${data.current}/${data.total}`;\n }\n } catch (error) {\n console.error(\"An error occurred:\", error);\n // 这里可以添加错误处理逻辑\n } finally {\n loadingInstance.close();\n }\n });\n //用来警告session过期\n const tableRowClassName = ({\n row\n }) => {\n if (row.checkSession == false) {\n return \"warning-row\";\n }\n return \"\";\n };\n const poolRowClassName = ({\n row\n }) => {\n if (row.checkPool == false) {\n return \"warning-row\";\n }\n return \"\";\n };\n /**\r\n * 跳转到PandoraNext\r\n */\n const redirectToExternalLink = () => {\n window.open(pandoraNext_outUrl.value);\n };\n /**\r\n * 跳转到PandoraNext分享页\r\n */\n const redirectPandoraNextShare = () => {\n var url = pandoraNext_outUrl.value;\n // 检查最后一个字符是否是 /\n if (url.charAt(url.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n url += \"/\";\n }\n window.open(url + \"shared.html\");\n };\n /**\r\n * 跳转到PandoraNext\r\n */\n const requirePandoraNextLink = () => {\n var url = pandoraNext_outUrl.value;\n // 检查最后一个字符是否是 /\n if (url.charAt(url.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n url += \"/\";\n }\n window.open(url + \"setup\");\n };\n /**\r\n * 跳转到tokensTool使用说明\r\n */\n const requireTokensToolLink = () => {\n window.open(\"https://apifox.com/apidoc/shared-40345b46-9c9c-45cc-b494-6a6a387a978f\");\n };\n /**\r\n * 用于用户信息设置\r\n */\n const activeIndex = ref(\"-1\");\n let temRequireToken = \"\";\n const handleSelect = (key, keyPath) => {\n console.log(\"选择准备!\");\n };\n /**\r\n * 添加token开启函数\r\n * 类user\r\n */\n const addToken = () => {\n show_1.value = true;\n };\n /**\r\n * 添加token函数\r\n * 类user\r\n */\n const onAddToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const now = new Date();\n const formattedTime = `${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, \"0\")}-${now.getDate().toString().padStart(2, \"0\")} ${now.getHours().toString().padStart(2, \"0\")}:${now.getMinutes().toString().padStart(2, \"0\")}:${now.getSeconds().toString().padStart(2, \"0\")}`;\n if (addPassword.value != \"\") {\n addShared.value = false;\n addPlus.value = false;\n addShow_user_info.value = false;\n }\n if (addSetPoolToken.value == false) {\n addTokenValue.value = addUsername.value + \",\" + addUserPassword.value;\n addUseRefreshToken.value = false;\n addShared.value = false;\n addPlus.value = false;\n addShow_user_info.value = false;\n }\n let api = {\n name: addName.value,\n token: addTokenValue.value,\n username: addUsername.value,\n userPassword: addUserPassword.value,\n shared: addShared.value,\n auto_shared: addShared.value,\n show_user_info: addShow_user_info.value,\n plus: addPlus.value,\n setPoolToken: addSetPoolToken.value,\n useRefreshToken: addUseRefreshToken.value,\n password: addPassword.value,\n updateTime: formattedTime\n };\n fetch(`https://yubb.fun${prefix}/api/addToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(api)\n }).then(response => response.json()) // 将 .json() 放在正确的位置\n .then(data => {\n if (data.code == 1) {\n ElMessage.success(\"添加成功!\");\n addName.value = \"\";\n addTokenValue.value = \"\";\n addUsername.value = \"\";\n addUserPassword.value = \"\";\n addShared.value = false;\n addShow_user_info.value = false;\n addPlus.value = false;\n addSetPoolToken.value = false;\n addUseRefreshToken.value = false;\n addPassword.value = \"\";\n if (api.token == \"\") {\n api.token = data.data;\n ElMessage.success(\"已为您自动装填token!\");\n }\n } else {\n ElMessage.error(data.msg);\n }\n addPassword.value = \"\";\n getToken(\"\");\n loadingInstance.close();\n }).catch(error => {\n ElMessage.error(\"获取账号出现问题,请检查刷新网址是否正确!\");\n loadingInstance.close();\n });\n show_1.value = false;\n };\n /**\r\n * 展示token函数\r\n * 类user\r\n */\n const chart_show = ref(null);\n const showData = async row => {\n temName.value = row.name;\n temUsername.value = row.username;\n temUserPassword.value = row.userPassword;\n temToken.value = row.token;\n temAccessToken.value = row.access_token;\n temShareToken.value = row.share_token;\n temShared.value = row.shared;\n temShow_user_info.value = row.show_user_info;\n temPlus.value = row.plus;\n temPassword.value = row.password;\n setPoolToken.value = row.setPoolToken;\n useRefreshToken.value = row.useRefreshToken;\n temCheckSession.value = row.checkSession;\n if (setPoolToken.value != true) {\n show_2.value = true;\n return;\n }\n const usageHeader = {\n Authorization: `Bearer ${row.access_token}`\n };\n show_2.value = true;\n if (setPoolToken.value) {\n const response = await axios.get(`${oneApi_pandoraUrl.value}/api/token/info/${row.share_token}`, {\n headers: usageHeader\n });\n let usageData = [];\n let modelData = [];\n for (let key in response.data.usage) {\n if (!key.startsWith(\"range\")) {\n modelData.push(key);\n usageData.push(response.data.usage[key]);\n }\n }\n if (modelData.length == 0 && usageData.length == 0) {\n modelData = [\"gpt-4\", \"gpt-3.5-turbo\", \"gpt-3.5-turbo-0613\"];\n usageData = [0, 0, 0];\n }\n const myChart_show = echarts.init(chart_show.value);\n const option = {\n title: {\n text: `今日${response.data.usage[\"range\"]} ${temName.value}各模型用量`,\n textStyle: {\n // 调整字体大小\n fontSize: 14,\n color: \"#606266\" // 这里是深灰色,你可以根据需要更改颜色\n },\n\n // 设置标题位置\n left: \"center\",\n top: \"bottom\" // 放在底部\n },\n\n tooltip: {},\n legend: {\n data: modelData\n },\n xAxis: {\n data: modelData\n },\n yAxis: {},\n series: [{\n name: \"对话数量\",\n type: \"bar\",\n data: usageData,\n barWidth: \"25%\",\n itemStyle: {\n color: function (params) {\n const colorList = [\"#3498db\", \"#2ecc71\", \"#f1c40f\", \"#9b59b6\", \"#1abc9c\", \"#e67e22\", \"#ecf0f1\", \"#95a5a6\", \"#34495e\", \"#16a085\"];\n return colorList[params.dataIndex % colorList.length];\n }\n }\n }]\n };\n myChart_show.setOption(option);\n }\n };\n const oneApi_name = ref(\"\");\n const token_name = ref(\"\");\n const token_value = ref(\"\");\n const oneApi_baseUrl = ref(\"\");\n const oneApi_models = ref([]);\n const model_mapping = ref(\"\");\n const temOneApi_models = ref(\"\");\n const temOneApi_groups = ref(\"\");\n const oneApi_groups = ref([\"default\", \"svip\", \"vip\"]);\n const shareTime = ref(\"\");\n const showShareToken = row => {\n oneApi_name.value = row.oneApi_name;\n token_name.value = row.token_name;\n token_value.value = row.token_value;\n oneApi_baseUrl.value = row.oneApi_baseUrl;\n temOneApi_models.value = row.oneApi_models;\n model_mapping.value = row.model_mapping;\n temOneApi_groups.value = row.oneApi_groups;\n priority.value = row.priority;\n shareTime.value = row.shareTime;\n show_15.value = true;\n };\n let previousSetpoolToken = false;\n let previousUseRefreshToken = false;\n let previousToken = \"\";\n //编辑准备\n const handleEdit = (index, row) => {\n temName.value = row.name;\n temUsername.value = row.username;\n temUserPassword.value = row.userPassword;\n //用来判断token是否更改\n temToken.value = row.token;\n temRequireToken = row.token;\n temShared.value = row.shared;\n temShow_user_info.value = row.show_user_info;\n temPlus.value = row.plus;\n temPassword.value = row.password;\n setPoolToken.value = row.setPoolToken;\n useRefreshToken.value = row.useRefreshToken;\n previousSetpoolToken = setPoolToken.value;\n previousUseRefreshToken = useRefreshToken.value;\n previousToken = temToken.value;\n temCheckSession.value = row.checkSession;\n temAccessToken.value = row.access_token;\n temShareToken.value = row.share_token;\n show.value = true;\n };\n /**\r\n * 修改系统设置函数\r\n */\n const onRequireSetting = async value => {\n if (value == 0) {\n show_3.value = true;\n } else if (value == 1) {\n show_4.value = true;\n } else if (value == 2) {\n show_5.value = true;\n }\n };\n const RequireSetting = value => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n if (whitelist.value == null || whitelist.value == \"null\") {\n whitelist.value = \"\";\n }\n if (enabled.value == false) {\n cert_file.value = \"\";\n key_file.value = \"\";\n }\n const tls = {\n enabled: enabled.value,\n cert_file: cert_file.value,\n key_file: key_file.value\n };\n const validation = {\n provider: provider.value,\n site_key: site_key.value,\n site_secret: site_secret.value,\n site_login: site_login.value,\n setup_login: setup_login.value,\n oai_username: oai_username.value,\n oai_password: oai_password.value\n };\n const setting = {\n proxy_api_prefix: proxy_api_prefix.value,\n isolated_conv_title: isolated_conv_title.value,\n bing: bing.value,\n timeout: timeout.value,\n proxy_url: proxy_url.value,\n public_share: public_share.value,\n site_password: site_password.value,\n setup_password: setup_password.value,\n loginUsername: loginUsername.value,\n loginPassword: loginPassword.value,\n license_id: license_id.value,\n //0.4.9.2\n disable_signup: disable_signup.value,\n auto_conv_arkose: auto_conv_arkose.value,\n proxy_file_service: proxy_file_service.value,\n custom_doh_host: custom_doh_host.value,\n //0.4.8.2\n isGetToken: isGetToken.value,\n getTokenPassword: getTokenPassword.value,\n containerName: containerName.value,\n autoToken_url: autoToken_url.value,\n whitelist: whitelist.value,\n validation: validation,\n tls: tls\n };\n fetch(`https://yubb.fun${prefix}/api/requireSetting`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(setting)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n } else {\n ElMessage.error(data.msg);\n }\n fetchLoginToken();\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求requireSetting接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n if (value == 0) {\n show_3.value = false;\n } else if (value == 1) {\n show_4.value = false;\n } else if (value == 2) {\n show_5.value = false;\n }\n };\n const RequireAutoUpdate = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n // 检查最后一个字符是否是 /\n if (pandoraNext_outUrl.value.charAt(pandoraNext_outUrl.value.length - 1) !== \"/\") {\n // 如果不是,则在末尾添加 /\n pandoraNext_outUrl.value += \"/\";\n }\n const setting = {\n auto_updateSession: auto_updateSession.value,\n auto_updateTime: auto_updateTime.value,\n auto_updateNumber: auto_updateNumber.value,\n pandoraNext_outUrl: pandoraNext_outUrl.value,\n oneAPi_outUrl: oneAPi_outUrl.value,\n oneAPi_intoToken: oneAPi_intoToken.value\n };\n fetch(`https://yubb.fun${prefix}/api/controllerTask`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(setting)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n } else {\n ElMessage.error(data.msg);\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求controllerTask接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n show_8.value = false;\n };\n /**\r\n * 修改token函数\r\n * 类user\r\n */\n const RequireToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let formattedTime = \"\";\n if (temRequireToken != temToken.value) {\n const now = new Date();\n formattedTime = `${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, \"0\")}-${now.getDate().toString().padStart(2, \"0\")} ${now.getHours().toString().padStart(2, \"0\")}:${now.getMinutes().toString().padStart(2, \"0\")}:${now.getSeconds().toString().padStart(2, \"0\")}`;\n }\n if (setPoolToken.value == false) {\n temShared.value = false;\n temPlus.value = false;\n temShow_user_info.value = false;\n useRefreshToken.value = false;\n }\n if (temShared.value === true) {\n temPassword.value = \"\";\n } else {\n temPlus.value = false;\n temShow_user_info.value = false;\n }\n let msg = \"\";\n if (previousSetpoolToken != setPoolToken.value && previousToken == temToken.value) {\n if (setPoolToken.value == false) {\n msg = \"您确定要关闭API模型开启web模式,您将无法生成任何的token,但不消耗额度!\";\n } else {\n if (useRefreshToken.value == true) {\n msg = \"您确定要开启API模式,并使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!\";\n } else {\n msg = \"您确定要开启API模式,并使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!\";\n }\n }\n } else if (previousUseRefreshToken != useRefreshToken.value && previousToken == temToken.value) {\n if (useRefreshToken.value == true) {\n msg = \"您确定要切换使用refresh_token(有效期很久),这将会扣除1000额度,请谨慎考虑!\";\n } else {\n msg = \"您确定要切换使用session_token(有效期三个月),这将会扣除100额度,请谨慎考虑!\";\n }\n } else {\n msg = \"修改将要提交,您确定修改好了吗?\";\n }\n ElMessageBox.confirm(msg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const api = {\n name: temName.value,\n token: temToken.value,\n username: temUsername.value,\n userPassword: temUserPassword.value,\n shared: temShared.value,\n auto_shared: temShared.value,\n show_user_info: temShow_user_info.value,\n plus: temPlus.value,\n setPoolToken: setPoolToken.value,\n useRefreshToken: useRefreshToken.value,\n checkSession: temCheckSession.value,\n password: temPassword.value,\n access_token: temAccessToken.value,\n share_token: temShareToken.value\n };\n fetch(`https://yubb.fun${prefix}/api/requiredToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(api)\n })\n // 将 .json() 放在正确的位置\n .then(response => response.json()).then(data => {\n if (data.code == 1) {\n ElMessage.success(data.data);\n getToken(\"\");\n } else {\n ElMessage.error(data.msg);\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"请求requireToken接口失败\", error);\n ElMessage.error(\"修改失败!\");\n });\n show.value = false;\n }).catch(() => {\n loadingInstance.close();\n ElMessage({\n type: \"info\",\n message: \"编辑取消!\"\n });\n return;\n });\n };\n /**\r\n * 开启pandora函数\r\n */\n const openPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/open`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 暂停pandora函数\r\n */\n const closePandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/close`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 重启pandora函数\r\n */\n const AgainPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/restart`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 重载pandora函数\r\n */\n const reloadPandora = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/reload`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 查询pandoraNext余额函数\r\n */\n const pandoraIp = ref(\"\");\n const pandoraTime = ref(\"\");\n const getPandoraNext = async () => {\n const response = await axios.get(`https://yubb.fun${prefix}/api/getPandoraNext`, {\n headers\n });\n const data = response.data.data;\n if (data != null) {\n pandoraUsage.value = data.current + \"/\" + data.total;\n pandoraIp.value = data.ip;\n var currentTime = new Date();\n const futureTime = new Date(currentTime.getTime() + data.ttl * 1000);\n var year = futureTime.getFullYear();\n var month = futureTime.getMonth() + 1; // 月份是从0开始的,所以要加1\n var day = futureTime.getDate();\n var hours = futureTime.getHours();\n var minutes = futureTime.getMinutes();\n var seconds = futureTime.getSeconds();\n pandoraTime.value = year + \"-\" + month + \"-\" + day + \" \" + hours + \":\" + minutes + \":\" + seconds;\n }\n show_7.value = true;\n };\n /**\r\n * 一键全生成\r\n */\n const updateAllShareToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/updateAllToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n await Promise.all([getToken(\"\"), getPool(\"\")]);\n ElMessageBox.alert(data, \"温馨提示\", {\n dangerouslyUseHTMLString: true\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 一键全刷新pool_token\r\n */\n const updateAllPoolToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/updateAllPoolToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n getPool(\"\");\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 一键全检查pool_token\r\n */\n const verifyAllPoolToken = async () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const response = await axios.get(`https://yubb.fun${prefix}/api/verifyAllPoolToken`, {\n headers\n });\n const data = response.data.data;\n if (data != null && data != \"\") {\n getPool(\"\");\n ElMessageBox.alert(data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(response.data.msg);\n }\n loadingInstance.close();\n };\n /**\r\n * 刷新Token函数\r\n */\n const reNew = row => {\n if (row.setPoolToken == false) {\n ElMessage.error(\"未开启API模式,无法刷新\");\n return;\n }\n let reNewMsg = \"您确定要刷新session_token吗,刷新session_token消耗100额度,请您要仔细认真考虑哦!\";\n if (row.useRefreshToken) {\n reNewMsg = \"您确定要刷新refresh_token吗,刷新refresh_token消耗1000额度,请您要仔细认真考虑哦!\";\n }\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/updateSessionToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n row.token = data.data;\n getToken(\"\");\n ElMessageBox.alert(\"刷新成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n };\n /**\r\n * 刷新Token函数\r\n */\n const reNewPool = row => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/refreshSimplyPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(\"刷新成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n const reviewShare = row => {\n oneApi_name.value = row.oneApi_name;\n token_name.value = row.token_name;\n token_value.value = row.token_value;\n oneApi_baseUrl.value = row.oneApi_baseUrl;\n oneApi_models.value = row.oneApi_models.split(\",\");\n model_mapping.value = row.model_mapping;\n oneApi_groups.value = row.oneApi_groups.split(\",\");\n priority.value = row.priority;\n shareTime.value = row.shareTime;\n show_16.value = true;\n };\n const requireShareToken = () => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n const requireShare = {\n oneApi_name: oneApi_name.value,\n token_name: token_name.value,\n token_value: token_value.value,\n oneApi_baseUrl: oneApi_baseUrl.value,\n oneApi_models: oneApi_models.value.toString(),\n model_mapping: model_mapping.value,\n oneApi_groups: oneApi_groups.value.toString(),\n priority: priority.value\n };\n fetch(`https://yubb.fun${prefix}/api/requireShareToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(requireShare)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n getShare(\"\");\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n show_16.value = false;\n };\n /**\r\n * 生成token操作\r\n */\n const review = row => {\n if (row.setPoolToken == false) {\n ElMessage.error(\"未开启API模式,无法生成\");\n return;\n }\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/updateToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n ElMessageBox.alert(\"生成shareToken成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n getToken(\"\");\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 更新token操作\r\n */\n const reviewPool = row => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/changePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(\"更换pool_token成功!\", \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 删除PoolToken函数\r\n * 参数 Pool\r\n */\n const deletePoolToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个Pool_Token吗,删除之后就找不到咯,请您要仔细认真考虑哦!\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n fetch(`https://yubb.fun${prefix}/api/deletePoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data.data != null) {\n getPool(\"\");\n ElMessage.success(data.data);\n loadingInstance.close();\n } else {\n getPool(\"\");\n ElMessage.error(data.msg);\n loadingInstance.close();\n }\n show_9.value = false;\n }).catch(error => {\n // 处理完成失败的逻辑\n console.error(\"删除失败\", error);\n getPool(\"\");\n loadingInstance.close();\n show_9.value = false;\n });\n }).catch(() => {\n loadingInstance.close();\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n });\n };\n /**\r\n * 删除PoolToken函数\r\n * 参数 Pool\r\n */\n const verifySimplyPoolToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/verifySimplyPoolToken`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(row)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n getPool(\"\");\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n };\n /**\r\n * 删除Token函数\r\n * 参数 user\r\n */\n const deleteToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个Token吗,删除之后就找不到咯,记得点击全部刷新poolToken\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`https://yubb.fun${prefix}/api/deleteToken`, row, {\n headers\n }).then(async response => {\n if (row.setPoolToken == true) {\n await axios.get(`https://yubb.fun${prefix}/api/updateAllPoolToken`, {\n headers\n });\n }\n msg = response.data.data;\n getToken(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n };\n /**\r\n * 删除Token函数\r\n * 参数 user\r\n */\n const deleteShareToken = (index, row) => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这个share_Token吗,删除之后就找不到咯\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`https://yubb.fun${prefix}/api/deleteShareToken`, row, {\n headers\n }).then(async response => {\n msg = response.data.data;\n getShare(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n };\n /**\r\n * 获取token的过期时间\r\n */\n const formatDate = value => {\n if (!value) return \"\";\n var nowDay = new Date();\n const timeDay = parseISO(value.updateTime);\n const daysDiff = differenceInDays(nowDay, timeDay);\n if (value.token.length >= 2000) {\n return daysDiff >= 80 ? \"已经过去了至少80天\" : Math.ceil(80 - daysDiff) + \"天\";\n } else if (value.token.length < 200 && !value.token.includes(\"fk-\")) {\n return \"永久\";\n } else {\n return daysDiff >= 10 ? \"已经过去了至少10天\" : Math.ceil(10 - daysDiff) + \"天\";\n }\n };\n /**\r\n * 更改Token显示操作\r\n */\n const dataToken = value => {\n return value.substring(0, 30) + \"...\";\n };\n /**\r\n * 退出登录操作\r\n */\n const logout = () => {\n // 删除本地存储的 token\n localStorage.removeItem(\"jwtToken\");\n // 使用 Vue Router 进行页面跳转到登录页面\n router.replace(`/`);\n };\n const getPoolToken = () => {\n show_6.value = true;\n };\n const getShareToken = async () => {\n await getShare(\"\");\n show_13.value = true;\n };\n const getLogin = () => {\n getLoginData();\n show_10.value = true;\n };\n const redirectToGitHub = () => {\n window.open(\"https://github.com/Yanyutin753/PandoraNext-TokensTool\");\n };\n const copyToken = value => {\n const textarea = document.createElement(\"textarea\");\n // 设置 textarea 的值为要复制的文本\n textarea.value = value;\n // 将 textarea 添加到 DOM 中\n document.body.appendChild(textarea);\n // 选中 textarea 中的文本\n textarea.select();\n // 执行复制操作\n document.execCommand(\"copy\");\n // 从 DOM 中移除 textarea 元素\n document.body.removeChild(textarea);\n ElMessage({\n type: \"success\",\n message: \"复制成功!\"\n });\n };\n const selectChoice = buttonValue => {\n const selectedData = multipleSelection.value;\n const userData = selectedData.map(userData => userData);\n if (selectedData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n }\n if (buttonValue == \"选中删除Token\") {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n let msg = \"\";\n ElMessageBox.confirm(\"您确定要删除这\" + selectedData.length + \"个Token吗,删除之后就找不到咯\", \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n axios.put(`https://yubb.fun${prefix}/api/deleteTokenList`, userData, {\n headers\n }).then(async response => {\n await axios.get(`https://yubb.fun${prefix}/api/updateAllPoolToken`, {\n headers\n });\n msg = response.data.data;\n getToken(\"\");\n ElMessage({\n type: \"success\",\n message: msg\n });\n loadingInstance.close();\n }).catch(error => {\n // 处理完成失败的逻辑\n loadingInstance.close();\n console.error(\"删除失败\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n loadingInstance.close();\n });\n return;\n } else if (buttonValue == \"选中刷新Token\") {\n let count = 0;\n const selectedData = multipleSelection.value;\n const userData = selectedData.map(userData => userData);\n userData.forEach((item, index) => {\n if (item.setPoolToken) {\n if (item.useRefreshToken) {\n count += 1000;\n } else {\n count += 100;\n }\n }\n });\n const reNewMsg = \"您确定要花\" + count + \"积分刷新这\" + selectedData.length + \"个Token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/updateSessionTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(userData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getToken(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中合成pool_token\") {\n getSelectedData();\n } else if (buttonValue == \"选中修改pool_token\") {\n poolName.value = \"\";\n shareTokens.value = \"\";\n temPool_token.value = \"\";\n poolTime.value = \"\";\n intoOneApi.value = false;\n poolOneApi_models.value = [];\n poolModel_mapping.value = \"\";\n oneApi_pandoraUrl.value = \"\";\n groupChecked.value = [];\n priority.value = 0;\n show_11.value = true;\n }\n };\n const showPool = row => {\n temPoolName.value = row.poolName;\n shareTokens.value = row.shareTokens;\n temPool_token.value = row.poolToken;\n poolTime.value = row.poolTime;\n intoOneApi.value = row.intoOneApi;\n poolOneApi_models.value = row.poolOneApi_models.split(\",\");\n poolModel_mapping.value = row.poolModel_mapping;\n oneApi_pandoraUrl.value = row.oneApi_pandoraUrl;\n temGroupChecked.value = row.groupChecked.split(\",\");\n priority.value = row.priority;\n show_17.value = true;\n };\n const selectPoolChoice = buttonValue => {\n const selectedPoolData = multipleSelectionPool.value;\n const temPoolData = selectedPoolData.map(temPoolData => temPoolData);\n if (temPoolData.length === 0) {\n ElMessage(\"未选择数据\");\n return;\n }\n if (buttonValue == \"选中检查pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要花\" + count + \"积分检查这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/verifySimplyPoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"检查取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中刷新pool_token\") {\n const reNewMsg = \"您确定要刷新这\" + selectedPoolData.length + \"个pool_token吗?\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/refreshSimplyPoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"刷新取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中更换pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要更换这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/changePoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"更换取消!\"\n });\n });\n return;\n } else if (buttonValue == \"选中删除pool_token\") {\n let count = selectedPoolData.length * 4;\n const reNewMsg = \"您确定要删除这\" + selectedPoolData.length + \"个pool_token吗,请您要仔细认真考虑哦!\";\n ElMessageBox.confirm(reNewMsg, \"温馨提示\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n }).then(() => {\n const loadingInstance = ElLoading.service({\n fullscreen: true\n });\n fetch(`https://yubb.fun${prefix}/api/deletePoolTokenList`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n // 确保 token 变量已定义\n Authorization: `Bearer ${token}`\n },\n body: JSON.stringify(temPoolData)\n }).then(response => {\n if (!response.ok) {\n throw new Error(\"Network response was not ok\");\n }\n return response.json();\n }).then(data => {\n if (data != null && data != \"\") {\n if (data.data != null) {\n getPool(\"\");\n ElMessageBox.alert(data.data, \"温馨提醒\", {\n confirmButtonText: \"OK\"\n });\n } else {\n ElMessage.error(data.msg);\n }\n }\n loadingInstance.close();\n }).catch(error => {\n loadingInstance.close();\n console.error(\"Error:\", error);\n });\n }).catch(() => {\n ElMessage({\n type: \"info\",\n message: \"删除取消!\"\n });\n });\n return;\n }\n };\n const chart = ref(null);\n const getUsage = async () => {\n show_12.value = true;\n const response = await axios.get(`https://yubb.fun${prefix}/api/modelsUsage`, {\n headers\n });\n let usageData = response.data.data.map(item => item.usage);\n let modelData = response.data.data.map(item => item.model);\n const myChart = echarts.init(chart.value);\n const option = {\n title: {\n text: \"tokensTool每日接口对话统计\",\n fontSize: 18,\n color: \"#606266\" // 这里是深灰色,你可以根据需要更改颜色\n },\n\n tooltip: {},\n legend: {\n data: modelData\n },\n xAxis: {\n data: modelData\n },\n yAxis: {},\n series: [{\n name: \"对话数量\",\n type: \"bar\",\n data: usageData,\n barWidth: \"25%\",\n itemStyle: {\n color: function (params) {\n const colorList = [\"#e74c3c\", \"#3498db\", \"#2ecc71\", \"#f1c40f\", \"#9b59b6\", \"#1abc9c\", \"#e67e22\", \"#ecf0f1\", \"#95a5a6\", \"#34495e\", \"#16a085\"];\n return colorList[params.dataIndex % colorList.length];\n }\n }\n }]\n };\n myChart.setOption(option);\n };\n return (_ctx, _cache) => {\n const _component_el_menu_item = _resolveComponent(\"el-menu-item\");\n const _component_van_icon = _resolveComponent(\"van-icon\");\n const _component_el_sub_menu = _resolveComponent(\"el-sub-menu\");\n const _component_h10 = _resolveComponent(\"h10\");\n const _component_el_menu = _resolveComponent(\"el-menu\");\n const _component_van_button = _resolveComponent(\"van-button\");\n const _component_el_page_header = _resolveComponent(\"el-page-header\");\n const _component_el_radio_button = _resolveComponent(\"el-radio-button\");\n const _component_el_radio_group = _resolveComponent(\"el-radio-group\");\n const _component_van_search = _resolveComponent(\"van-search\");\n const _component_el_table_column = _resolveComponent(\"el-table-column\");\n const _component_el_button = _resolveComponent(\"el-button\");\n const _component_el_tag = _resolveComponent(\"el-tag\");\n const _component_el_popover = _resolveComponent(\"el-popover\");\n const _component_el_option = _resolveComponent(\"el-option\");\n const _component_el_select = _resolveComponent(\"el-select\");\n const _component_el_button_group = _resolveComponent(\"el-button-group\");\n const _component_van_field = _resolveComponent(\"van-field\");\n const _component_van_switch = _resolveComponent(\"van-switch\");\n const _component_van_cell_group = _resolveComponent(\"van-cell-group\");\n const _component_van_form = _resolveComponent(\"van-form\");\n const _component_van_dialog = _resolveComponent(\"van-dialog\");\n const _component_CopyDocument = _resolveComponent(\"CopyDocument\");\n const _component_el_icon = _resolveComponent(\"el-icon\");\n const _component_el_select_group = _resolveComponent(\"el-select-group\");\n const _component_el_dialog = _resolveComponent(\"el-dialog\");\n const _component_el_form_item = _resolveComponent(\"el-form-item\");\n const _component_el_input = _resolveComponent(\"el-input\");\n const _component_van_checkbox = _resolveComponent(\"van-checkbox\");\n const _component_van_checkbox_group = _resolveComponent(\"van-checkbox-group\");\n const _directive_loading = _resolveDirective(\"loading\");\n return _openBlock(), _createElementBlock(_Fragment, null, [_createElementVNode(\"div\", _hoisted_1, [_hoisted_2, _createVNode(_component_el_menu, {\n \"default-active\": activeIndex.value,\n class: \"el-menu-demo\",\n mode: \"horizontal\",\n ellipsis: false,\n onSelect: handleSelect,\n \"active-text-color\": \"#0ea27e\",\n \"text-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_menu_item, null, {\n default: _withCtx(() => [_createElementVNode(\"img\", {\n style: {\n \"width\": \"40px\"\n },\n src: _imports_0,\n alt: \"Element logo\",\n onClick: redirectToGitHub\n })]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n onClick: getPandoraNext\n }, {\n title: _withCtx(() => [_createElementVNode(\"div\", _hoisted_3, [_createElementVNode(\"h2\", null, _toDisplayString(pandoraUsage.value), 1)]), _createVNode(_component_van_icon, {\n name: \"replay\",\n size: \"20\"\n })]),\n _: 1\n }), _hoisted_4, _createVNode(_component_el_menu_item, {\n index: \"1\",\n onClick: getPoolToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"pool_token列表\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"2\",\n onClick: getShareToken\n }, {\n default: _withCtx(() => [_createTextVNode(\"share_token列表\")]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"3\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"跳转Web服务\")]),\n default: _withCtx(() => [_createVNode(_component_el_sub_menu, {\n index: \"3-1\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"跳转PandoraWeb服务\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"3-1-1\",\n onClick: redirectToExternalLink\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"主页\", 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-1-2\",\n onClick: redirectPandoraNextShare\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"共享页\", 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-1-3\",\n onClick: requirePandoraNextLink\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"修改页\", 1)]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"3-2\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"获取token地址\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"3-2-1\"\n }, {\n default: _withCtx(() => [_hoisted_5]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-2-2\"\n }, {\n default: _withCtx(() => [_hoisted_6]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-2-3\"\n }, {\n default: _withCtx(() => [_hoisted_7]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"3-3\",\n onClick: requireTokensToolLink\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool使用说明\")]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"5\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"系统设置\")]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"5-1\",\n onClick: _cache[0] || (_cache[0] = $event => onRequireSetting(pandoraNext))\n }, {\n default: _withCtx(() => [_createTextVNode(\"PandoraNext设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"5-2\",\n onClick: _cache[1] || (_cache[1] = $event => onRequireSetting(tokensTool))\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"5-3\",\n onClick: _cache[2] || (_cache[2] = $event => onRequireSetting(validation))\n }, {\n default: _withCtx(() => [_createTextVNode(\"验证码信息设置\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"5-3\",\n onClick: _cache[3] || (_cache[3] = $event => show_8.value = true)\n }, {\n default: _withCtx(() => [_createTextVNode(\"定时&接口设置\")]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_sub_menu, {\n index: \"6\"\n }, {\n title: _withCtx(() => [_createTextVNode(\"系统功能\")]),\n default: _withCtx(() => [_createVNode(_component_el_sub_menu, {\n index: \"6-1\"\n }, {\n title: _withCtx(() => [_createTextVNode(_toDisplayString(containerName.value) + \"状态\", 1)]),\n default: _withCtx(() => [_createVNode(_component_el_menu_item, {\n index: \"6-1-1\",\n onClick: openPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"开启\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-1-2\",\n onClick: closePandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"暂停\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-1-3\",\n onClick: AgainPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"重启\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-1-4\",\n onClick: reloadPandora\n }, {\n default: _withCtx(() => [_createTextVNode(\"重载\" + _toDisplayString(containerName.value), 1)]),\n _: 1\n })]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-3\",\n onClick: getUsage\n }, {\n default: _withCtx(() => [_createTextVNode(\"copilot每日用量统计\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-2\",\n onClick: getLogin\n }, {\n default: _withCtx(() => [_createTextVNode(\"tokensTool登录日志\")]),\n _: 1\n }), _createVNode(_component_el_menu_item, {\n index: \"6-4\",\n onClick: logout\n }, {\n default: _withCtx(() => [_createVNode(_component_h10, {\n style: {\n \"font-size\": \"14px\"\n }\n }, {\n default: _withCtx(() => [_createTextVNode(\"退出登录\")]),\n _: 1\n })]),\n _: 1\n })]),\n _: 1\n })]),\n _: 1\n }, 8, [\"default-active\"]), _createElementVNode(\"div\", _hoisted_8, [_createElementVNode(\"div\", _hoisted_9, [_createVNode(_component_el_page_header, {\n icon: null,\n title: \" \"\n }, {\n content: _withCtx(() => [_hoisted_10]),\n extra: _withCtx(() => [_createElementVNode(\"div\", {\n class: \"addToken\",\n onClick: addToken\n }, [_createVNode(_component_van_button, {\n square: \"\",\n icon: \"add-o\",\n color: \"#0ea27e\",\n class: \"addTokenButton\"\n })])]),\n _: 1\n })]), _createElementVNode(\"div\", _hoisted_11, [_createElementVNode(\"div\", _hoisted_12, [_createVNode(_component_van_search, {\n modelValue: value.value,\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = $event => value.value = $event),\n \"show-action\": \"\",\n shape: \"round\",\n clearable: \"\",\n placeholder: \"请输入搜索token名称和类型\",\n onSearch: onSearch\n }, {\n action: _withCtx(() => [_createVNode(_component_el_radio_group, {\n modelValue: size.value,\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = $event => size.value = $event),\n label: \"size control\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_radio_button, {\n type: \"success\",\n plain: \"\",\n label: \"WEB\",\n onClick: _cache[4] || (_cache[4] = $event => getWebToken(value.value))\n }, {\n default: _withCtx(() => [_createTextVNode(\"WEB\")]),\n _: 1\n }), _createVNode(_component_el_radio_button, {\n type: \"success\",\n plain: \"\",\n label: \"ALL\",\n onClick: _cache[5] || (_cache[5] = $event => getToken(value.value))\n }, {\n default: _withCtx(() => [_createTextVNode(\"ALL\")]),\n _: 1\n }), _createVNode(_component_el_radio_button, {\n type: \"success\",\n plain: \"\",\n label: \"API\",\n onClick: _cache[6] || (_cache[6] = $event => getAPIToken(value.value))\n }, {\n default: _withCtx(() => [_createTextVNode(\"API\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }, 8, [\"modelValue\"])]), _createElementVNode(\"div\", _hoisted_13, [_withDirectives((_openBlock(), _createBlock(_unref(ElTable), {\n data: tableData.value,\n style: {\n \"width\": \"100%\"\n },\n onSelectionChange: handleSelectionChange,\n ref_key: \"multipleTableRef\",\n ref: multipleTableRef,\n \"default-sort\": {\n prop: 'updateTime',\n prop: 'setPoolToken'\n },\n \"row-class-name\": tableRowClassName\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n type: \"selection\",\n width: \"45\"\n }), _createVNode(_component_el_table_column, {\n label: \"名称\",\n prop: \"setPoolToken\",\n sortable: \"\",\n \"min-width\": \"136\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_14, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"h5\", null, _toDisplayString(scope.row.setPoolToken ? scope.row.useRefreshToken ? \"refAPI\" : \"sesAPI\" : \"Web\"), 1)]),\n _: 2\n }, 1024), _createElementVNode(\"span\", _hoisted_15, _toDisplayString(scope.row.name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"账号信息\",\n \"min-width\": \"200\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", null, \"账号: \" + _toDisplayString(scope.row.username), 1), _createElementVNode(\"div\", null, \"密码: \" + _toDisplayString(scope.row.userPassword), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(scope.row.username), 1)]),\n _: 2\n }, 1024)]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"Token值\",\n \"min-width\": \"270\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", null, \"token: \" + _toDisplayString(dataToken(scope.row.token)), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(dataToken(scope.row.token)), 1)]),\n _: 2\n }, 1024)]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n prop: \"updateTime\",\n sortable: \"\",\n label: \"有效时间\",\n \"min-width\": \"167\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", null, \"注册时间:\" + _toDisplayString(scope.row.updateTime), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(\"距离过期还有:\" + _toDisplayString(formatDate(scope.row)), 1)]),\n _: 2\n }, 1024)]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n width: \"335\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => handleEdit(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"编辑\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => showData(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deleteToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"success\",\n onClick: $event => reNew(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"刷新\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"warning\",\n onClick: $event => review(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"生成\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"])), [[_directive_loading, _ctx.loading]])]), _createElementVNode(\"div\", _hoisted_16, [_createVNode(_component_el_select, {\n modelValue: buttonValue.value,\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = $event => buttonValue.value = $event),\n clearable: \"\",\n filterable: \"\",\n placeholder: \"请选择批量操作\",\n class: \"ml-4\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(options, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonValue,\n label: item.label,\n value: item.buttonValue\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_button, {\n class: \"ml-4\",\n onClick: _cache[10] || (_cache[10] = $event => selectChoice(buttonValue.value))\n }, {\n default: _withCtx(() => [_hoisted_17]),\n _: 1\n }), _createVNode(_component_el_button_group, {\n class: \"my-button\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_button, {\n onClick: updateAllShareToken\n }, {\n default: _withCtx(() => [_hoisted_18]),\n _: 1\n })]),\n _: 1\n })])]), _hoisted_19, _hoisted_20, _hoisted_21])]), _createVNode(_component_van_dialog, {\n show: show.value,\n \"onUpdate:show\": _cache[21] || (_cache[21] = $event => show.value = $event),\n title: \"📌修改token信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_22, [_createVNode(_component_van_form, {\n onSubmit: _cache[20] || (_cache[20] = $event => RequireToken())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_23, _createVNode(_component_van_field, {\n modelValue: temUsername.value,\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = $event => temUsername.value = $event),\n name: \"OpenAi邮箱\",\n label: \"OpenAi邮箱\",\n placeholder: \"OpenAi邮箱\",\n rules: [{\n required: true,\n message: '请填写OpenAi邮箱'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_24, _createVNode(_component_van_field, {\n modelValue: temUserPassword.value,\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = $event => temUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n rules: [{\n required: true,\n message: '请填写OpenAi密码'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_25, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: setPoolToken.value,\n \"onUpdate:modelValue\": _cache[13] || (_cache[13] = $event => setPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_26, [_hoisted_27, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refreshToken\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: useRefreshToken.value,\n \"onUpdate:modelValue\": _cache[14] || (_cache[14] = $event => useRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_28, [_hoisted_29, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temShared.value,\n \"onUpdate:modelValue\": _cache[15] || (_cache[15] = $event => temShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), temShared.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_30, [_hoisted_31, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temShow_user_info.value,\n \"onUpdate:modelValue\": _cache[16] || (_cache[16] = $event => temShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_32, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: temPlus.value,\n \"onUpdate:modelValue\": _cache[17] || (_cache[17] = $event => temPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true)])) : _createCommentVNode(\"\", true), temShared.value == false || setPoolToken.value == false ? (_openBlock(), _createElementBlock(\"div\", _hoisted_33, [_hoisted_34, _createVNode(_component_van_field, {\n modelValue: temPassword.value,\n \"onUpdate:modelValue\": _cache[18] || (_cache[18] = $event => temPassword.value = $event),\n name: \"进入Token的密码\",\n label: \"进入Token的密码\",\n placeholder: \"填了将不会分享给他人!\",\n rules: [{\n validator: addPasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), _hoisted_35, _createVNode(_component_van_field, {\n modelValue: temToken.value,\n \"onUpdate:modelValue\": _cache[19] || (_cache[19] = $event => temToken.value = $event),\n label: \"Token的值\",\n type: \"textarea\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的Token(选填),session或refresh_token\",\n autosize: {\n maxHeight: 100,\n minHeight: 20\n },\n \"show-word-limit\": \"\"\n }, null, 8, [\"modelValue\"]), _hoisted_36]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_37, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_38]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_1.value,\n \"onUpdate:show\": _cache[33] || (_cache[33] = $event => show_1.value = $event),\n title: \"✨添加token信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"addTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_39, [_createVNode(_component_van_form, {\n onSubmit: _cache[32] || (_cache[32] = $event => onAddToken())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_40, _createVNode(_component_van_field, {\n modelValue: addName.value,\n \"onUpdate:modelValue\": _cache[22] || (_cache[22] = $event => addName.value = $event),\n name: \"Token用户名\",\n label: \"Token用户名\",\n placeholder: \"Token用户名\",\n rules: [{\n required: true,\n message: '请填写Token用户名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_41, _createVNode(_component_van_field, {\n modelValue: addUsername.value,\n \"onUpdate:modelValue\": _cache[23] || (_cache[23] = $event => addUsername.value = $event),\n name: \"OpenAi邮箱\",\n label: \"OpenAi邮箱\",\n placeholder: \"OpenAi邮箱\",\n rules: [{\n required: true,\n message: '请填写OpenAi邮箱'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_42, _createVNode(_component_van_field, {\n modelValue: addUserPassword.value,\n \"onUpdate:modelValue\": _cache[24] || (_cache[24] = $event => addUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n rules: [{\n required: true,\n message: '请填写OpenAi密码'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_43, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addSetPoolToken.value,\n \"onUpdate:modelValue\": _cache[25] || (_cache[25] = $event => addSetPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_44, [_hoisted_45, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refreshToken\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addUseRefreshToken.value,\n \"onUpdate:modelValue\": _cache[26] || (_cache[26] = $event => addUseRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_46, [_hoisted_47, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addShared.value,\n \"onUpdate:modelValue\": _cache[27] || (_cache[27] = $event => addShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), addShared.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_48, [_hoisted_49, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addShow_user_info.value,\n \"onUpdate:modelValue\": _cache[28] || (_cache[28] = $event => addShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_50, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: addPlus.value,\n \"onUpdate:modelValue\": _cache[29] || (_cache[29] = $event => addPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })])) : _createCommentVNode(\"\", true)])) : _createCommentVNode(\"\", true), addShared.value == '' ? (_openBlock(), _createElementBlock(\"div\", _hoisted_51, [_hoisted_52, _createVNode(_component_van_field, {\n modelValue: addPassword.value,\n \"onUpdate:modelValue\": _cache[30] || (_cache[30] = $event => addPassword.value = $event),\n name: \"进入Token的密码\",\n label: \"进入Token的密码\",\n placeholder: \"填了将不会分享给他人!\",\n rules: [{\n validator: addPasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), addSetPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_53, [_hoisted_54, _createVNode(_component_van_field, {\n rows: \"3\",\n type: \"textarea\",\n maxlength: \"5000\",\n \"show-word-limit\": \"\",\n modelValue: addTokenValue.value,\n \"onUpdate:modelValue\": _cache[31] || (_cache[31] = $event => addTokenValue.value = $event),\n name: \"Token的值\",\n label: \"Token的值\",\n placeholder: \"选填(可不填,不填则使用账号密码),目前只支持session_token或refresh_token\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_55]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_56, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_57]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_2.value,\n \"onUpdate:show\": _cache[53] || (_cache[53] = $event => show_2.value = $event),\n title: \"🔎token信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"showDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_58, [_createVNode(_component_van_form, null, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_59, _createVNode(_component_van_field, {\n modelValue: temName.value,\n \"onUpdate:modelValue\": _cache[34] || (_cache[34] = $event => temName.value = $event),\n name: \"Token用户名\",\n label: \"Token用户名\",\n placeholder: \"Token用户名\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[35] || (_cache[35] = $event => copyToken(temName.value))\n }, null, 8, [\"modelValue\"]), _hoisted_60, _createVNode(_component_van_field, {\n modelValue: temPassword.value,\n \"onUpdate:modelValue\": _cache[36] || (_cache[36] = $event => temPassword.value = $event),\n type: \"temPassword\",\n name: \"进入Token的密码\",\n label: \"进入Token的密码\",\n placeholder: \"填了将不会分享给他人(如不填则输入Token名即可进入)!\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[37] || (_cache[37] = $event => copyToken(temPassword.value))\n }, null, 8, [\"modelValue\"]), _hoisted_61, _createVNode(_component_van_field, {\n modelValue: temUsername.value,\n \"onUpdate:modelValue\": _cache[38] || (_cache[38] = $event => temUsername.value = $event),\n name: \"OpenAi用户名\",\n label: \"OpenAi用户名\",\n placeholder: \"OpenAi用户名\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[39] || (_cache[39] = $event => copyToken(temUsername.value))\n }, null, 8, [\"modelValue\"]), _hoisted_62, _createVNode(_component_van_field, {\n modelValue: temUserPassword.value,\n \"onUpdate:modelValue\": _cache[40] || (_cache[40] = $event => temUserPassword.value = $event),\n name: \"OpenAi密码\",\n label: \"OpenAi密码\",\n placeholder: \"OpenAi密码\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[41] || (_cache[41] = $event => copyToken(temUserPassword.value))\n }, null, 8, [\"modelValue\"]), _hoisted_63, _createVNode(_component_van_field, {\n name: \"temShared\",\n readonly: true,\n label: \"是否出现分享页面\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temShared.value,\n \"onUpdate:modelValue\": _cache[42] || (_cache[42] = $event => temShared.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_64, _createVNode(_component_van_field, {\n readonly: true,\n name: \"temShow_user_info\",\n label: \"是否分享账号信息\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temShow_user_info.value,\n \"onUpdate:modelValue\": _cache[43] || (_cache[43] = $event => temShow_user_info.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_65, _createVNode(_component_van_field, {\n readonly: true,\n name: \"temPlus\",\n label: \"是否显示金光\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: temPlus.value,\n \"onUpdate:modelValue\": _cache[44] || (_cache[44] = $event => temPlus.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_66, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否开启API模式\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: setPoolToken.value,\n \"onUpdate:modelValue\": _cache[45] || (_cache[45] = $event => setPoolToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_67, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否使用refresh_token\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n disabled: \"\",\n \"active-color\": \"#0ea27e\",\n modelValue: useRefreshToken.value,\n \"onUpdate:modelValue\": _cache[46] || (_cache[46] = $event => useRefreshToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_68, _createVNode(_component_van_field, {\n modelValue: temToken.value,\n \"onUpdate:modelValue\": _cache[47] || (_cache[47] = $event => temToken.value = $event),\n label: \"Token的值\",\n type: \"textarea\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的Token(session或refresh_token)\",\n \"show-word-limit\": \"\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[48] || (_cache[48] = $event => copyToken(temToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"]), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_69, [_hoisted_70, _createVNode(_component_van_field, {\n modelValue: temAccessToken.value,\n \"onUpdate:modelValue\": _cache[49] || (_cache[49] = $event => temAccessToken.value = $event),\n label: \"access_token\",\n type: \"textarea\",\n maxlength: \"5000\",\n placeholder: \"请填写OpenAi的access_token\",\n \"show-word-limit\": \"\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[50] || (_cache[50] = $event => copyToken(temAccessToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"]), _hoisted_71, _createVNode(_component_van_field, {\n modelValue: temShareToken.value,\n \"onUpdate:modelValue\": _cache[51] || (_cache[51] = $event => temShareToken.value = $event),\n label: \"share_token\",\n type: \"textarea\",\n maxlength: \"200\",\n placeholder: \"请填写OpenAi的share_token\",\n \"show-word-limit\": \"\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[52] || (_cache[52] = $event => copyToken(temShareToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true)]),\n _: 1\n })]),\n _: 1\n }), setPoolToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_72, [_createElementVNode(\"div\", {\n ref_key: \"chart_show\",\n ref: chart_show,\n style: {\n \"width\": \"auto\",\n \"height\": \"300px\"\n }\n }, null, 512), _hoisted_73])) : _createCommentVNode(\"\", true)])]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_3.value,\n \"onUpdate:show\": _cache[68] || (_cache[68] = $event => show_3.value = $event),\n title: \"PandoraNext设置信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requirePandora\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_74, [_createVNode(_component_van_form, {\n onSubmit: _cache[67] || (_cache[67] = $event => RequireSetting(pandoraNext))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_75, _createVNode(_component_van_field, {\n modelValue: isolated_conv_title.value,\n \"onUpdate:modelValue\": _cache[54] || (_cache[54] = $event => isolated_conv_title.value = $event),\n name: \"对话标题\",\n label: \"对话标题\",\n placeholder: \"隔离对话设置标题\"\n }, null, 8, [\"modelValue\"]), _hoisted_76, _createVNode(_component_van_field, {\n modelValue: bing.value,\n \"onUpdate:modelValue\": _cache[55] || (_cache[55] = $event => bing.value = $event),\n name: \"绑定IP和端口\",\n label: \"绑定IP和端口\",\n placeholder: \"绑定IP和端口(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_77, _createVNode(_component_van_field, {\n modelValue: custom_doh_host.value,\n \"onUpdate:modelValue\": _cache[56] || (_cache[56] = $event => custom_doh_host.value = $event),\n name: \"DoH主机名\",\n label: \"DoH主机名\",\n placeholder: \"配置自定义的DoH主机名(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_78, _createVNode(_component_van_field, {\n modelValue: timeout.value,\n \"onUpdate:modelValue\": _cache[57] || (_cache[57] = $event => timeout.value = $event),\n name: \"请求超时时间\",\n label: \"请求超时时间\",\n placeholder: \"请求超时时间(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_79, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否分享对话(选填)\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: public_share.value,\n \"onUpdate:modelValue\": _cache[58] || (_cache[58] = $event => public_share.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_80, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否配置证书\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: enabled.value,\n \"onUpdate:modelValue\": _cache[59] || (_cache[59] = $event => enabled.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), enabled.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_81, [_hoisted_82, _createVNode(_component_van_field, {\n modelValue: cert_file.value,\n \"onUpdate:modelValue\": _cache[60] || (_cache[60] = $event => cert_file.value = $event),\n name: \"证书文件\",\n label: \"证书文件\",\n placeholder: \"证书文件\"\n }, null, 8, [\"modelValue\"]), _hoisted_83, _createVNode(_component_van_field, {\n modelValue: key_file.value,\n \"onUpdate:modelValue\": _cache[61] || (_cache[61] = $event => key_file.value = $event),\n name: \"密钥文件\",\n label: \"密钥文件\",\n placeholder: \"密钥文件\"\n }, null, 8, [\"modelValue\"])])) : _createCommentVNode(\"\", true), _hoisted_84, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否禁用注册\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: disable_signup.value,\n \"onUpdate:modelValue\": _cache[62] || (_cache[62] = $event => disable_signup.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_85, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否自动打码\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: auto_conv_arkose.value,\n \"onUpdate:modelValue\": _cache[63] || (_cache[63] = $event => auto_conv_arkose.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_86, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"使用文件代理服务\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: proxy_file_service.value,\n \"onUpdate:modelValue\": _cache[64] || (_cache[64] = $event => proxy_file_service.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_87, _createVNode(_component_van_field, {\n modelValue: proxy_url.value,\n \"onUpdate:modelValue\": _cache[65] || (_cache[65] = $event => proxy_url.value = $event),\n name: \"代理服务URL\",\n label: \"代理服务URL\",\n placeholder: \"代理服务URL(选填)\"\n }, null, 8, [\"modelValue\"]), _hoisted_88, _createVNode(_component_van_field, {\n modelValue: whitelist.value,\n \"onUpdate:modelValue\": _cache[66] || (_cache[66] = $event => whitelist.value = $event),\n name: \"白名单\",\n label: \"白名单\",\n placeholder: \"[]限制所有账号(默认为null)\"\n }, null, 8, [\"modelValue\"]), _hoisted_89]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_90, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_91]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_4.value,\n \"onUpdate:show\": _cache[80] || (_cache[80] = $event => show_4.value = $event),\n title: \"tokensTool设置信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"requireSettingDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_92, [_createVNode(_component_van_form, {\n onSubmit: _cache[79] || (_cache[79] = $event => RequireSetting(tokensTool))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_93, _createVNode(_component_van_field, {\n modelValue: loginUsername.value,\n \"onUpdate:modelValue\": _cache[69] || (_cache[69] = $event => loginUsername.value = $event),\n name: \"登录用户名\",\n label: \"登录用户名\",\n placeholder: \"tokensTool用户名\"\n }, null, 8, [\"modelValue\"]), _hoisted_94, _createVNode(_component_van_field, {\n modelValue: loginPassword.value,\n \"onUpdate:modelValue\": _cache[70] || (_cache[70] = $event => loginPassword.value = $event),\n name: \"登录密码\",\n label: \"登录密码\",\n placeholder: \"不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_95, _createVNode(_component_van_field, {\n modelValue: proxy_api_prefix.value,\n \"onUpdate:modelValue\": _cache[71] || (_cache[71] = $event => proxy_api_prefix.value = $event),\n name: \"proxy接口前缀\",\n label: \"proxy接口前缀\",\n placeholder: \"proxy模式接口后缀,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_96, _createVNode(_component_van_field, {\n modelValue: autoToken_url.value,\n \"onUpdate:modelValue\": _cache[72] || (_cache[72] = $event => autoToken_url.value = $event),\n name: \"proxy模式URL\",\n label: \"proxy模式URL\",\n placeholder: \"http(s)://(ip:port或者域名)/后缀,同公网服务器填default\"\n }, null, 8, [\"modelValue\"]), _hoisted_97, _createVNode(_component_van_field, {\n modelValue: setup_password.value,\n \"onUpdate:modelValue\": _cache[73] || (_cache[73] = $event => setup_password.value = $event),\n name: \"重载服务密码\",\n label: \"重载服务密码\",\n placeholder: \"PandoraNext重载服务密码,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_98, _createVNode(_component_van_field, {\n modelValue: site_password.value,\n \"onUpdate:modelValue\": _cache[74] || (_cache[74] = $event => site_password.value = $event),\n name: \"访问密码\",\n label: \"访问密码\",\n placeholder: \"PandoraNext访问密码,建议开启访问密码\",\n rules: [{\n validator: sitePasswordValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_99, _createVNode(_component_van_field, {\n modelValue: license_id.value,\n \"onUpdate:modelValue\": _cache[75] || (_cache[75] = $event => license_id.value = $event),\n name: \"验证licenseId\",\n label: \"验证licenseId\",\n placeholder: \"验证licenseId(github上拿到的license_id)\"\n }, null, 8, [\"modelValue\"]), _hoisted_100, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"tokensTool接口\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: isGetToken.value,\n \"onUpdate:modelValue\": _cache[76] || (_cache[76] = $event => isGetToken.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), isGetToken.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_101, [_hoisted_102, _createVNode(_component_van_field, {\n modelValue: getTokenPassword.value,\n \"onUpdate:modelValue\": _cache[77] || (_cache[77] = $event => getTokenPassword.value = $event),\n name: \"接口密码\",\n label: \"接口密码\",\n placeholder: \"tokensTool接口密码,用于获取tokens,不少于8位,且同时包含数字和字母\",\n rules: [{\n validator: customValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"])])) : _createCommentVNode(\"\", true), _hoisted_103, _createVNode(_component_van_field, {\n modelValue: containerName.value,\n \"onUpdate:modelValue\": _cache[78] || (_cache[78] = $event => containerName.value = $event),\n name: \"监管容器名\",\n label: \"监管容器名\",\n placeholder: \"监管运行的容器名或文件名,默认为PandoraNext\",\n rules: [{\n required: true,\n message: '请填写监管的容器名'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_104]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_105, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_106]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_van_dialog, {\n show: show_5.value,\n \"onUpdate:show\": _cache[89] || (_cache[89] = $event => show_5.value = $event),\n title: \"PandoraNext验证信息\",\n width: \"50vw\",\n \"close-on-click-overlay\": true,\n \"show-cancel-button\": false,\n \"show-confirm-button\": false,\n class: \"verify\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_107, [_createVNode(_component_van_form, {\n onSubmit: _cache[88] || (_cache[88] = $event => RequireSetting(validation))\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_108, _createVNode(_component_van_field, {\n modelValue: provider.value,\n \"onUpdate:modelValue\": _cache[81] || (_cache[81] = $event => provider.value = $event),\n name: \"验证码提供商\",\n label: \"验证码提供商\",\n placeholder: \"验证码提供商\"\n }, null, 8, [\"modelValue\"]), _hoisted_109, _createVNode(_component_van_field, {\n modelValue: site_key.value,\n \"onUpdate:modelValue\": _cache[82] || (_cache[82] = $event => site_key.value = $event),\n name: \"验证码网站参数\",\n label: \"验证码网站参数\",\n placeholder: \"验证码网站参数\"\n }, null, 8, [\"modelValue\"]), _hoisted_110, _createVNode(_component_van_field, {\n modelValue: site_secret.value,\n \"onUpdate:modelValue\": _cache[83] || (_cache[83] = $event => site_secret.value = $event),\n name: \"验证码API Key\",\n label: \"验证码API Key\",\n placeholder: \"验证码API Key\"\n }, null, 8, [\"modelValue\"]), _hoisted_111, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否全站密码登录页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: site_login.value,\n \"onUpdate:modelValue\": _cache[84] || (_cache[84] = $event => site_login.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_112, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在设置登录页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: setup_login.value,\n \"onUpdate:modelValue\": _cache[85] || (_cache[85] = $event => setup_login.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_113, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在输入用户名页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: oai_username.value,\n \"onUpdate:modelValue\": _cache[86] || (_cache[86] = $event => oai_username.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_114, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否在输入密码页面显示\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: oai_password.value,\n \"onUpdate:modelValue\": _cache[87] || (_cache[87] = $event => oai_password.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_115]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_116, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]), _hoisted_117]),\n _: 1\n }, 8, [\"show\"]), _createVNode(_component_el_dialog, {\n modelValue: show_6.value,\n \"onUpdate:modelValue\": _cache[95] || (_cache[95] = $event => show_6.value = $event),\n title: \"pool_token列表\",\n \"align-center\": \"\",\n width: \"78%\",\n \"close-on-click-modal\": false,\n class: \"shareTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_118, [_createVNode(_component_el_icon, {\n onClick: _cache[90] || (_cache[90] = $event => copyToken(pandoraNext_outUrl.value + proxy_api_prefix.value + '/v1/chat/completions'))\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 1\n }), _createVNode(_component_h10, null, {\n default: _withCtx(() => [_createTextVNode(\"API地址:\" + _toDisplayString(pandoraNext_outUrl.value) + _toDisplayString(proxy_api_prefix.value) + \"/v1/chat/completions\", 1)]),\n _: 1\n })]), _createVNode(_unref(ElTable), {\n data: poolData.value,\n \"default-sort\": {\n prop: 'poolTime',\n prop: 'intoOneApi'\n },\n onSelectionChange: poolSelectionChange,\n ref_key: \"multipleTableRefPool\",\n ref: multipleTableRefPool,\n \"row-class-name\": poolRowClassName,\n class: \"poolDateTable\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n type: \"selection\",\n width: \"45\"\n }), _createVNode(_component_el_table_column, {\n label: \"pool_token名称\",\n prop: \"intoOneApi\",\n sortable: \"\",\n \"min-width\": \"170\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n reference: _withCtx(() => [_createElementVNode(\"div\", _hoisted_119, [scope.row.intoOneApi == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_120, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_121]),\n _: 1\n })])) : (_openBlock(), _createElementBlock(\"div\", _hoisted_122, [_createVNode(_component_el_button, {\n size: \"small\",\n color: \"#f4fffd\",\n circle: \"\"\n }, {\n default: _withCtx(() => [_hoisted_123]),\n _: 1\n })])), _createElementVNode(\"span\", _hoisted_124, _toDisplayString(scope.row.poolName), 1)])]),\n default: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(scope.row.poolOneApi_models), 1)]),\n _: 2\n }, 1024)]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"pool_token值\",\n \"min-width\": \"325\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_125, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.poolToken)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_126, _toDisplayString(scope.row.poolToken), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"使用token名集合\",\n \"min-width\": \"165\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_popover, {\n effect: \"light\",\n trigger: \"hover\",\n placement: \"top\",\n width: \"auto\"\n }, {\n default: _withCtx(() => [_createTextVNode(_toDisplayString(scope.row.shareTokens), 1)]),\n reference: _withCtx(() => [_createVNode(_component_el_tag, null, {\n default: _withCtx(() => [_hoisted_127]),\n _: 1\n })]),\n _: 2\n }, 1024)]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"poolTime\",\n label: \"更新时间\",\n prop: \"poolTime\",\n sortable: \"\",\n \"min-width\": \"170\"\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n \"min-width\": \"335\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => showPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"warning\",\n onClick: $event => verifySimplyPoolToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"检验\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deletePoolToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"success\",\n onClick: $event => reNewPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"刷新\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => reviewPool(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"更换\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"]), _createVNode(_component_el_select_group, {\n class: \"pool-button flex-container\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: buttonPoolValue.value,\n \"onUpdate:modelValue\": _cache[91] || (_cache[91] = $event => buttonPoolValue.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"请选择批量操作\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPool, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonPoolValue,\n label: item.label,\n value: item.buttonPoolValue\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_button, {\n onClick: _cache[92] || (_cache[92] = $event => selectPoolChoice(buttonPoolValue.value))\n }, {\n default: _withCtx(() => [_hoisted_128]),\n _: 1\n }), _createVNode(_component_van_search, {\n modelValue: valuePool.value,\n \"onUpdate:modelValue\": _cache[93] || (_cache[93] = $event => valuePool.value = $event),\n shape: \"round\",\n clearable: \"\",\n placeholder: \"请输入搜索pool_token名称\",\n onSearch: _cache[94] || (_cache[94] = $event => onSearchPoolToken(valuePool.value)),\n class: \"onPoolToken\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_129]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_7.value,\n \"onUpdate:modelValue\": _cache[99] || (_cache[99] = $event => show_7.value = $event),\n title: \"PandoraNext余额\",\n \"align-center\": \"\",\n width: \"auto\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_130, [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_131, _createVNode(_component_van_field, {\n modelValue: pandoraUsage.value,\n \"onUpdate:modelValue\": _cache[96] || (_cache[96] = $event => pandoraUsage.value = $event),\n name: \"PandoraNext用量\",\n label: \"PandoraNext用量\",\n placeholder: \"PandoraNext用量\"\n }, null, 8, [\"modelValue\"]), _hoisted_132, _createVNode(_component_van_field, {\n modelValue: pandoraIp.value,\n \"onUpdate:modelValue\": _cache[97] || (_cache[97] = $event => pandoraIp.value = $event),\n name: \"绑定IP\",\n label: \"绑定IP\",\n placeholder: \"绑定IP\"\n }, null, 8, [\"modelValue\"]), _hoisted_133, _createVNode(_component_van_field, {\n modelValue: pandoraTime.value,\n \"onUpdate:modelValue\": _cache[98] || (_cache[98] = $event => pandoraTime.value = $event),\n name: \"重置时间\",\n label: \"重置时间\",\n placeholder: \"重置时间\"\n }, null, 8, [\"modelValue\"]), _hoisted_134]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_8.value,\n \"onUpdate:modelValue\": _cache[107] || (_cache[107] = $event => show_8.value = $event),\n title: \"定时刷新&PandoraNext网址\",\n \"align-center\": \"\",\n \"max-width\": \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_135, [_createVNode(_component_van_form, {\n onSubmit: _cache[106] || (_cache[106] = $event => RequireAutoUpdate())\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_136, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否自动刷新session_token\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: auto_updateSession.value,\n \"onUpdate:modelValue\": _cache[100] || (_cache[100] = $event => auto_updateSession.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), auto_updateSession.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_137, [_hoisted_138, _createVNode(_component_van_field, {\n modelValue: auto_updateTime.value,\n \"onUpdate:modelValue\": _cache[101] || (_cache[101] = $event => auto_updateTime.value = $event),\n name: \"刷新session的时间\",\n label: \"刷新session的时间\",\n \"input-align\": \"right\",\n placeholder: \"自动刷新session的时间 (天为单位)\"\n }, null, 8, [\"modelValue\"]), _hoisted_139, _createVNode(_component_van_field, {\n modelValue: auto_updateNumber.value,\n \"onUpdate:modelValue\": _cache[102] || (_cache[102] = $event => auto_updateNumber.value = $event),\n name: \"刷新session的个数\",\n label: \"刷新session的个数\",\n \"input-align\": \"right\",\n placeholder: \"自动刷新session的个数 (个)\"\n }, null, 8, [\"modelValue\"]), _hoisted_140])) : _createCommentVNode(\"\", true), _createVNode(_component_van_field, {\n modelValue: pandoraNext_outUrl.value,\n \"onUpdate:modelValue\": _cache[103] || (_cache[103] = $event => pandoraNext_outUrl.value = $event),\n name: \"PandoraNext的公网访问地址\",\n label: \"PandoraNext的公网访问地址\",\n \"input-align\": \"right\",\n placeholder: \"PandoraNext的公网访问地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_141, _createVNode(_component_van_field, {\n modelValue: oneAPi_outUrl.value,\n \"onUpdate:modelValue\": _cache[104] || (_cache[104] = $event => oneAPi_outUrl.value = $event),\n name: \"oneApi的公网访问地址\",\n label: \"oneApi的公网访问地址\",\n \"input-align\": \"right\",\n placeholder: \"oneApi的公网访问地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_142, _createVNode(_component_van_field, {\n modelValue: oneAPi_intoToken.value,\n \"onUpdate:modelValue\": _cache[105] || (_cache[105] = $event => oneAPi_intoToken.value = $event),\n name: \"oneApi的系统令牌\",\n label: \"oneApi的系统令牌\",\n \"input-align\": \"right\",\n placeholder: \"oneApi的系统令牌\"\n }, null, 8, [\"modelValue\"]), _hoisted_143]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_144, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_9.value,\n \"onUpdate:modelValue\": _cache[115] || (_cache[115] = $event => show_9.value = $event),\n title: \"✨添加pool_token信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_145, [_createVNode(_component_van_form, {\n onSubmit: addSelectPoolToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_146, _createVNode(_component_van_field, {\n modelValue: poolNameValue.value,\n \"onUpdate:modelValue\": _cache[108] || (_cache[108] = $event => poolNameValue.value = $event),\n name: \"为pool_token名\",\n label: \"pool_token名\",\n \"input-align\": \"right\",\n placeholder: \"此项不少于3个字符且不超过10个字符,可以包括汉字、字母和数字\",\n rules: [{\n validator: poolNameValidator\n }]\n }, null, 8, [\"modelValue\", \"rules\"]), _hoisted_147, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[109] || (_cache[109] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_148, [_hoisted_149, _createElementVNode(\"div\", _hoisted_150, [_createVNode(_component_el_form_item, {\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addPoolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[110] || (_cache[110] = $event => addPoolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_151]),\n _: 1\n }), _hoisted_152, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: addPoolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[111] || (_cache[111] = $event => addPoolModel_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_153, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[112] || (_cache[112] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\"\n }, null, 8, [\"modelValue\"]), _hoisted_154, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"checkboxGroup\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: groupChecked.value,\n \"onUpdate:modelValue\": _cache[113] || (_cache[113] = $event => groupChecked.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_155, _createVNode(_component_van_field, {\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[114] || (_cache[114] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义PandoraNext地址\"\n }, null, 8, [\"modelValue\"]), _hoisted_156])) : _createCommentVNode(\"\", true)]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_157, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_10.value,\n \"onUpdate:modelValue\": _cache[116] || (_cache[116] = $event => show_10.value = $event),\n title: \"tokensTool登录日志\",\n \"align-center\": \"\",\n width: \"50%\",\n \"close-on-click-modal\": false,\n class: \"showLoginDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_158, [_createVNode(_unref(ElTable), {\n \"row-class-name\": poolRowClassName,\n data: loginData.value\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n prop: \"ipAddress\",\n label: \"登录地区\",\n \"min-width\": \"180\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_159, [_createElementVNode(\"span\", _hoisted_160, _toDisplayString(scope.row.ipAddress), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"登录IP\",\n \"min-width\": \"145\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_161, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.poolToken)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_162, _toDisplayString(scope.row.requestIp), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"成功/失败\",\n \"min-width\": \"105\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_163, [_createElementVNode(\"span\", _hoisted_164, _toDisplayString(scope.row.inRequestNumber) + \"/\" + _toDisplayString(scope.row.outRequestNumber), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"lastLoginTime\",\n label: \"登录时间\",\n prop: \"lastLoginTime\",\n \"min-width\": \"180\"\n })]),\n _: 1\n }, 8, [\"data\"])]), _hoisted_165]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_11.value,\n \"onUpdate:modelValue\": _cache[125] || (_cache[125] = $event => show_11.value = $event),\n title: \"📌修改pool_token信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_166, [_createVNode(_component_van_form, {\n onSubmit: requirePoolToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_167, _createElementVNode(\"div\", _hoisted_168, [_createVNode(_component_el_form_item, {\n label: \"poolToken名\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: poolName.value,\n \"onUpdate:modelValue\": _cache[117] || (_cache[117] = $event => poolName.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择你想要的修改的pool_token名称\",\n onChange: handlePoolNameChange,\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(poolData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.poolName,\n label: item.poolName,\n value: item.poolName,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_169, _createVNode(_component_van_field, {\n modelValue: temPool_token.value,\n \"onUpdate:modelValue\": _cache[118] || (_cache[118] = $event => temPool_token.value = $event),\n type: \"textarea\",\n maxlength: \"100\",\n autoSize: \"\",\n name: \"pool_token的值\",\n label: \"pool_token的值\",\n \"input-align\": \"right\",\n placeholder: \"pool_token的值(不改则不变)\"\n }, null, 8, [\"modelValue\"]), _hoisted_170, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[119] || (_cache[119] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_171, intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_172, [_hoisted_173, _createElementVNode(\"div\", _hoisted_174, [_createVNode(_component_el_form_item, {\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: poolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[120] || (_cache[120] = $event => poolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_175]),\n _: 1\n }), _hoisted_176, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: poolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[121] || (_cache[121] = $event => poolModel_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_177, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[122] || (_cache[122] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_178, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"checkboxGroup\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: temGroupChecked.value,\n \"onUpdate:modelValue\": _cache[123] || (_cache[123] = $event => temGroupChecked.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_179, _createVNode(_component_van_field, {\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[124] || (_cache[124] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义PandoraNext地址\",\n rules: [{\n required: true,\n message: '请填写自定义PandoraNext地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_180])) : _createCommentVNode(\"\", true)]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_181, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_12.value,\n \"onUpdate:modelValue\": _cache[126] || (_cache[126] = $event => show_12.value = $event),\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", {\n ref_key: \"chart\",\n ref: chart,\n style: {\n \"width\": \"auto\",\n \"height\": \"400px\"\n }\n }, null, 512)]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_13.value,\n \"onUpdate:modelValue\": _cache[130] || (_cache[130] = $event => show_13.value = $event),\n title: \"OneAPI里的share_token列表\",\n \"align-center\": \"\",\n width: \"78%\",\n \"close-on-click-modal\": false,\n class: \"shareTokenDialog\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_search, {\n modelValue: valueShare.value,\n \"onUpdate:modelValue\": _cache[128] || (_cache[128] = $event => valueShare.value = $event),\n \"show-action\": \"\",\n shape: \"round\",\n clearable: \"\",\n placeholder: \"请输入搜索share_token名称\",\n onSearch: _cache[129] || (_cache[129] = $event => onSearchShareToken(valueShare.value)),\n class: \"onShareToken\"\n }, {\n action: _withCtx(() => [_createVNode(_component_el_button, {\n icon: _ctx.Plus,\n onClick: _cache[127] || (_cache[127] = $event => show_14.value = true)\n }, {\n default: _withCtx(() => [_hoisted_182]),\n _: 1\n }, 8, [\"icon\"])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_unref(ElTable), {\n data: shareData.value,\n \"row-class-name\": poolRowClassName\n }, {\n default: _withCtx(() => [_createVNode(_component_el_table_column, {\n label: \"在one_api的名称\",\n prop: \"oneApi_name\",\n width: \"180\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_183, [_createElementVNode(\"span\", _hoisted_184, _toDisplayString(scope.row.oneApi_name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"来源Token名\",\n \"min-width\": \"135\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_185, [_createElementVNode(\"span\", _hoisted_186, _toDisplayString(scope.row.token_name), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n label: \"share_token值\",\n \"min-width\": \"355\"\n }, {\n default: _withCtx(scope => [_createElementVNode(\"div\", _hoisted_187, [_createVNode(_component_el_icon, {\n onClick: $event => copyToken(scope.row.token_value)\n }, {\n default: _withCtx(() => [_createVNode(_component_CopyDocument)]),\n _: 2\n }, 1032, [\"onClick\"]), _createElementVNode(\"span\", _hoisted_188, _toDisplayString(scope.row.token_value), 1)])]),\n _: 1\n }), _createVNode(_component_el_table_column, {\n property: \"shareTime\",\n label: \"更新时间\",\n prop: \"shareTime\",\n \"min-width\": \"170\"\n }), _createVNode(_component_el_table_column, {\n label: \"操作方法\",\n \"min-width\": \"205\"\n }, {\n default: _withCtx(scope => [_createVNode(_component_el_button, {\n size: \"small\",\n onClick: $event => showShareToken(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"查看\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"primary\",\n onClick: $event => reviewShare(scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"修改\")]),\n _: 2\n }, 1032, [\"onClick\"]), _createVNode(_component_el_button, {\n size: \"small\",\n type: \"danger\",\n onClick: $event => deleteShareToken(scope.$index, scope.row)\n }, {\n default: _withCtx(() => [_createTextVNode(\"删除\")]),\n _: 2\n }, 1032, [\"onClick\"])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"data\"]), _hoisted_189]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_14.value,\n \"onUpdate:modelValue\": _cache[138] || (_cache[138] = $event => show_14.value = $event),\n title: \"✨添加share_token进OneAPI\",\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_form, {\n onSubmit: addShareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_190, _createVNode(_component_van_field, {\n modelValue: addOneApi_name.value,\n \"onUpdate:modelValue\": _cache[131] || (_cache[131] = $event => addOneApi_name.value = $event),\n name: \"oneApi中渠道名称\",\n label: \"oneApi中渠道名称\",\n \"input-align\": \"right\",\n placeholder: \"oneApi中渠道名称\",\n rules: [{\n required: true,\n message: '请填写oneApi中渠道名称'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_191, _createElementVNode(\"div\", _hoisted_192, [_createVNode(_component_el_form_item, {\n label: \"Token名\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addToken_name.value,\n \"onUpdate:modelValue\": _cache[132] || (_cache[132] = $event => addToken_name.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择你想要的添加的Token名称\",\n onChange: handleShareNameChange,\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(filteredTableData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.name,\n label: item.name,\n value: item.name,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_193, _createElementVNode(\"div\", _hoisted_194, [_createVNode(_component_el_form_item, {\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: addOneApi_models.value,\n \"onUpdate:modelValue\": _cache[133] || (_cache[133] = $event => addOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_195]),\n _: 1\n }), _hoisted_196, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: addModel_mapping.value,\n \"onUpdate:modelValue\": _cache[134] || (_cache[134] = $event => addModel_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_197, _createVNode(_component_van_field, {\n modelValue: addPriority.value,\n \"onUpdate:modelValue\": _cache[135] || (_cache[135] = $event => addPriority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_198, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"addOneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: addOneApi_groups.value,\n \"onUpdate:modelValue\": _cache[136] || (_cache[136] = $event => addOneApi_groups.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_199, _createVNode(_component_van_field, {\n modelValue: addOneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[137] || (_cache[137] = $event => addOneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_200]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_201, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_15.value,\n \"onUpdate:modelValue\": _cache[154] || (_cache[154] = $event => show_15.value = $event),\n title: \"🔎查看share_token在OneAPI信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_form, {\n onSubmit: _ctx.shareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_202, _createVNode(_component_van_field, {\n modelValue: oneApi_name.value,\n \"onUpdate:modelValue\": _cache[139] || (_cache[139] = $event => oneApi_name.value = $event),\n name: \"oneApi中渠道名称\",\n label: \"oneApi中渠道名称\",\n \"input-align\": \"right\",\n placeholder: \"oneApi中渠道名称\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[140] || (_cache[140] = $event => copyToken(oneApi_name.value)),\n rules: [{\n required: true,\n message: '请填写oneApi中渠道名称'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_203, _createVNode(_component_van_field, {\n modelValue: token_value.value,\n \"onUpdate:modelValue\": _cache[141] || (_cache[141] = $event => token_value.value = $event),\n name: \"share_token的值\",\n label: \"share_token的值\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[142] || (_cache[142] = $event => copyToken(token_value.value)),\n placeholder: \"share_token的值\"\n }, null, 8, [\"modelValue\"]), _hoisted_204, _createVNode(_component_van_field, {\n modelValue: token_name.value,\n \"onUpdate:modelValue\": _cache[143] || (_cache[143] = $event => token_name.value = $event),\n name: \"share_token的来源\",\n label: \"share_token的来源\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[144] || (_cache[144] = $event => copyToken(token_name.value)),\n placeholder: \"share_token的值\"\n }, null, 8, [\"modelValue\"]), _hoisted_205, _createVNode(_component_van_field, {\n modelValue: temOneApi_models.value,\n \"onUpdate:modelValue\": _cache[145] || (_cache[145] = $event => temOneApi_models.value = $event),\n name: \"加入的模型\",\n label: \"加入的模型\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[146] || (_cache[146] = $event => copyToken(temOneApi_models.value)),\n placeholder: \"加入的模型\"\n }, null, 8, [\"modelValue\"]), _createElementVNode(\"div\", _hoisted_206, [_hoisted_207, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: model_mapping.value,\n \"onUpdate:modelValue\": _cache[147] || (_cache[147] = $event => model_mapping.value = $event),\n type: \"textarea\",\n autosize: \"\",\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_208]), _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[148] || (_cache[148] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[149] || (_cache[149] = $event => copyToken(priority.value)),\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_209, _createVNode(_component_van_field, {\n modelValue: temOneApi_groups.value,\n \"onUpdate:modelValue\": _cache[150] || (_cache[150] = $event => temOneApi_groups.value = $event),\n name: \"加入的组别\",\n label: \"加入的组别\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[151] || (_cache[151] = $event => copyToken(temOneApi_groups.value)),\n placeholder: \"加入的组别\"\n }, null, 8, [\"modelValue\"]), _hoisted_210, _createVNode(_component_van_field, {\n modelValue: oneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[152] || (_cache[152] = $event => oneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n readonly: true,\n onClickLeftIcon: _cache[153] || (_cache[153] = $event => copyToken(oneApi_baseUrl.value)),\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_211]),\n _: 1\n })]),\n _: 1\n }, 8, [\"onSubmit\"])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_16.value,\n \"onUpdate:modelValue\": _cache[161] || (_cache[161] = $event => show_16.value = $event),\n title: \"📌修改share_token在OneAPI的信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_212, [_createVNode(_component_van_form, {\n onSubmit: requireShareToken\n }, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_213, _createElementVNode(\"div\", _hoisted_214, [_createVNode(_component_el_form_item, {\n label: \"Token名\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: token_name.value,\n \"onUpdate:modelValue\": _cache[155] || (_cache[155] = $event => token_name.value = $event),\n filterable: \"\",\n clearable: \"\",\n placeholder: \"选择你想要的添加的Token名称\",\n onChange: handleShareNameChange,\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList(filteredTableData.value, item => {\n return _openBlock(), _createBlock(_component_el_option, {\n key: item.name,\n label: item.name,\n value: item.name,\n \"data-item\": item\n }, null, 8, [\"label\", \"value\", \"data-item\"]);\n }), 128))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_215, _createElementVNode(\"div\", _hoisted_216, [_createVNode(_component_el_form_item, {\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n modelValue: oneApi_models.value,\n \"onUpdate:modelValue\": _cache[156] || (_cache[156] = $event => oneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_217, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: model_mapping.value,\n \"onUpdate:modelValue\": _cache[157] || (_cache[157] = $event => model_mapping.value = $event),\n type: \"textarea\",\n rows: 10,\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_218, _hoisted_219, _createVNode(_component_van_field, {\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[158] || (_cache[158] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_220, _createVNode(_component_van_field, {\n \"input-align\": \"right\",\n name: \"oneApi_groups\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: oneApi_groups.value,\n \"onUpdate:modelValue\": _cache[159] || (_cache[159] = $event => oneApi_groups.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_221, _createVNode(_component_van_field, {\n modelValue: oneApi_baseUrl.value,\n \"onUpdate:modelValue\": _cache[160] || (_cache[160] = $event => oneApi_baseUrl.value = $event),\n name: \"自定义baseUrl地址\",\n label: \"自定义baseUrl地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义baseUrl地址\",\n rules: [{\n required: true,\n message: '请填写自定义baseUrl地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_222]),\n _: 1\n }), _createElementVNode(\"div\", _hoisted_223, [_createVNode(_component_van_button, {\n round: \"\",\n block: \"\",\n color: \"#0ea27e\",\n \"native-type\": \"submit\"\n }, {\n default: _withCtx(() => [_createTextVNode(\" 提交 \")]),\n _: 1\n })])]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"]), _createVNode(_component_el_dialog, {\n modelValue: show_17.value,\n \"onUpdate:modelValue\": _cache[175] || (_cache[175] = $event => show_17.value = $event),\n title: \"🔎查看poolToken信息\",\n \"align-center\": \"\",\n width: \"50vw\",\n \"close-on-click-modal\": false,\n class: \"poolTokenDialog\"\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_224, [_createVNode(_component_van_form, null, {\n default: _withCtx(() => [_createVNode(_component_van_cell_group, {\n inset: \"\"\n }, {\n default: _withCtx(() => [_hoisted_225, _createVNode(_component_van_field, {\n modelValue: temPoolName.value,\n \"onUpdate:modelValue\": _cache[162] || (_cache[162] = $event => temPoolName.value = $event),\n name: \"pool_token名称\",\n label: \"pool_token名称\",\n placeholder: \"pool_token名称\",\n readonly: true,\n \"input-align\": \"right\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[163] || (_cache[163] = $event => copyToken(temPoolName.value))\n }, null, 8, [\"modelValue\"]), _hoisted_226, _createVNode(_component_van_field, {\n modelValue: shareTokens.value,\n \"onUpdate:modelValue\": _cache[164] || (_cache[164] = $event => shareTokens.value = $event),\n label: \"使用token名集合\",\n type: \"textarea\",\n placeholder: \"使用token名集合\",\n \"left-icon\": \"description-o\",\n readonly: true,\n \"input-align\": \"right\",\n onClickLeftIcon: _cache[165] || (_cache[165] = $event => copyToken(temAccessToken.value)),\n autosize: {\n maxHeight: 100,\n minHeight: 20\n }\n }, null, 8, [\"modelValue\"]), _hoisted_227, _createVNode(_component_van_field, {\n modelValue: temPool_token.value,\n \"onUpdate:modelValue\": _cache[166] || (_cache[166] = $event => temPool_token.value = $event),\n readonly: true,\n type: \"textarea\",\n maxlength: \"100\",\n autoSize: \"\",\n name: \"pool_token的值\",\n label: \"pool_token的值\",\n \"input-align\": \"right\",\n placeholder: \"pool_token的值(不改则不变)\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[167] || (_cache[167] = $event => copyToken(temPool_token.value))\n }, null, 8, [\"modelValue\"]), _hoisted_228, _createVNode(_component_van_field, {\n name: \"switch\",\n label: \"是否上传到oneApi\"\n }, {\n \"right-icon\": _withCtx(() => [_createVNode(_component_van_switch, {\n \"active-color\": \"#0ea27e\",\n modelValue: intoOneApi.value,\n \"onUpdate:modelValue\": _cache[168] || (_cache[168] = $event => intoOneApi.value = $event)\n }, null, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_229, intoOneApi.value == true ? (_openBlock(), _createElementBlock(\"div\", _hoisted_230, [_hoisted_231, _createElementVNode(\"div\", _hoisted_232, [_createVNode(_component_el_form_item, {\n disabled: \"\",\n label: \"选择加入的模型\",\n \"input-align\": \"right\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_select, {\n disabled: \"\",\n modelValue: poolOneApi_models.value,\n \"onUpdate:modelValue\": _cache[169] || (_cache[169] = $event => poolOneApi_models.value = $event),\n multiple: \"\",\n filterable: \"\",\n \"allow-create\": \"\",\n clearable: \"\",\n placeholder: \"输入或选择你要加入的模型\",\n class: \"model_mapping\"\n }, {\n default: _withCtx(() => [(_openBlock(), _createElementBlock(_Fragment, null, _renderList(optionsPoolModel, item => {\n return _createVNode(_component_el_option, {\n key: item.buttonModel,\n label: item.label,\n value: item.buttonModel\n }, null, 8, [\"label\", \"value\"]);\n }), 64))]),\n _: 1\n }, 8, [\"modelValue\"]), _hoisted_233]),\n _: 1\n }), _hoisted_234, _createVNode(_component_el_form_item, {\n label: \"模型重定向\",\n prop: \"addModel_mapping\"\n }, {\n default: _withCtx(() => [_createVNode(_component_el_input, {\n modelValue: poolModel_mapping.value,\n \"onUpdate:modelValue\": _cache[170] || (_cache[170] = $event => poolModel_mapping.value = $event),\n type: \"textarea\",\n disabled: \"\",\n autosize: \"\",\n placeholder: temModel_mapping,\n class: \"model_mapping\"\n }, null, 8, [\"modelValue\"])]),\n _: 1\n })]), _hoisted_235, _createVNode(_component_van_field, {\n readonly: true,\n modelValue: priority.value,\n \"onUpdate:modelValue\": _cache[171] || (_cache[171] = $event => priority.value = $event),\n name: \"渠道优先级\",\n label: \"渠道优先级\",\n \"input-align\": \"right\",\n placeholder: \"渠道优先级(默认为0)\",\n rules: [{\n required: true,\n message: '请填写渠道优先级(默认为0)'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_236, _createVNode(_component_van_field, {\n readonly: true,\n \"input-align\": \"right\",\n name: \"checkboxGroup\",\n label: \"在one-api的组别\"\n }, {\n input: _withCtx(() => [_createVNode(_component_van_checkbox_group, {\n modelValue: temGroupChecked.value,\n \"onUpdate:modelValue\": _cache[172] || (_cache[172] = $event => temGroupChecked.value = $event),\n direction: \"horizontal\"\n }, {\n default: _withCtx(() => [_createVNode(_component_van_checkbox, {\n name: \"default\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"default\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"vip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"vip\")]),\n _: 1\n }), _createVNode(_component_van_checkbox, {\n name: \"svip\",\n \"checked-color\": \"#0ea27e\"\n }, {\n default: _withCtx(() => [_createTextVNode(\"svip\")]),\n _: 1\n })]),\n _: 1\n }, 8, [\"modelValue\"])]),\n _: 1\n }), _hoisted_237, _createVNode(_component_van_field, {\n readonly: true,\n modelValue: oneApi_pandoraUrl.value,\n \"onUpdate:modelValue\": _cache[173] || (_cache[173] = $event => oneApi_pandoraUrl.value = $event),\n name: \"自定义PandoraNext地址\",\n label: \"自定义PandoraNext地址\",\n \"input-align\": \"right\",\n placeholder: \"自定义PandoraNext地址\",\n \"left-icon\": \"description-o\",\n onClickLeftIcon: _cache[174] || (_cache[174] = $event => copyToken(oneApi_pandoraUrl.value)),\n rules: [{\n required: true,\n message: '请填写自定义PandoraNext地址'\n }]\n }, null, 8, [\"modelValue\"]), _hoisted_238])) : _createCommentVNode(\"\", true)]),\n _: 1\n })]),\n _: 1\n })])]),\n _: 1\n }, 8, [\"modelValue\"])], 64);\n };\n }\n});","/* unplugin-vue-components disabled */import script from \"./homeIndex.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./homeIndex.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./homeIndex.vue?vue&type=style&index=0&id=0921b920&lang=css\"\n\nconst __exports__ = script;\n\nexport default __exports__"],"names":["_hoisted_1","class","_hoisted_2","_","name","content","_hoisted_3","_hoisted_4","_hoisted_5","href","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","style","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","key","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31","_hoisted_32","_hoisted_33","_hoisted_34","_hoisted_35","_hoisted_36","_hoisted_37","_hoisted_38","_hoisted_39","_hoisted_40","_hoisted_41","_hoisted_42","_hoisted_43","_hoisted_44","_hoisted_45","_hoisted_46","_hoisted_47","_hoisted_48","_hoisted_49","_hoisted_50","_hoisted_51","_hoisted_52","_hoisted_53","_hoisted_54","_hoisted_55","_hoisted_56","_hoisted_57","_hoisted_58","_hoisted_59","_hoisted_60","_hoisted_61","_hoisted_62","_hoisted_63","_hoisted_64","_hoisted_65","_hoisted_66","_hoisted_67","_hoisted_68","_hoisted_69","_hoisted_70","_hoisted_71","_hoisted_72","_hoisted_73","_hoisted_74","_hoisted_75","_hoisted_76","_hoisted_77","_hoisted_78","_hoisted_79","_hoisted_80","_hoisted_81","_hoisted_82","_hoisted_83","_hoisted_84","_hoisted_85","_hoisted_86","_hoisted_87","_hoisted_88","_hoisted_89","_hoisted_90","_hoisted_91","_hoisted_92","_hoisted_93","_hoisted_94","_hoisted_95","_hoisted_96","_hoisted_97","_hoisted_98","_hoisted_99","_hoisted_100","_hoisted_101","_hoisted_102","_hoisted_103","_hoisted_104","_hoisted_105","_hoisted_106","_hoisted_107","_hoisted_108","_hoisted_109","_hoisted_110","_hoisted_111","_hoisted_112","_hoisted_113","_hoisted_114","_hoisted_115","_hoisted_116","_hoisted_117","_hoisted_118","_hoisted_119","_hoisted_120","_hoisted_121","_hoisted_122","_hoisted_123","_hoisted_124","_hoisted_125","_hoisted_126","_hoisted_127","_hoisted_128","_hoisted_129","_hoisted_130","_hoisted_131","_hoisted_132","_hoisted_133","_hoisted_134","_hoisted_135","_hoisted_136","_hoisted_137","_hoisted_138","_hoisted_139","_hoisted_140","_hoisted_141","_hoisted_142","_hoisted_143","_hoisted_144","_hoisted_145","_hoisted_146","_hoisted_147","_hoisted_148","_hoisted_149","_hoisted_150","_hoisted_151","_hoisted_152","_hoisted_153","_hoisted_154","_hoisted_155","_hoisted_156","_hoisted_157","_hoisted_158","_hoisted_159","_hoisted_160","_hoisted_161","_hoisted_162","_hoisted_163","_hoisted_164","_hoisted_165","_hoisted_166","_hoisted_167","_hoisted_168","_hoisted_169","_hoisted_170","_hoisted_171","_hoisted_172","_hoisted_173","_hoisted_174","_hoisted_175","_hoisted_176","_hoisted_177","_hoisted_178","_hoisted_179","_hoisted_180","_hoisted_181","_hoisted_182","_hoisted_183","_hoisted_184","_hoisted_185","_hoisted_186","_hoisted_187","_hoisted_188","_hoisted_189","_hoisted_190","_hoisted_191","_hoisted_192","_hoisted_193","_hoisted_194","_hoisted_195","_hoisted_196","_hoisted_197","_hoisted_198","_hoisted_199","_hoisted_200","_hoisted_201","_hoisted_202","_hoisted_203","_hoisted_204","_hoisted_205","_hoisted_206","_hoisted_207","_hoisted_208","_hoisted_209","_hoisted_210","_hoisted_211","_hoisted_212","_hoisted_213","_hoisted_214","_hoisted_215","_hoisted_216","_hoisted_217","_hoisted_218","_hoisted_219","_hoisted_220","_hoisted_221","_hoisted_222","_hoisted_223","_hoisted_224","_hoisted_225","_hoisted_226","_hoisted_227","_hoisted_228","_hoisted_229","_hoisted_230","_hoisted_231","_hoisted_232","_hoisted_233","_hoisted_234","_hoisted_235","_hoisted_236","_hoisted_237","_hoisted_238","temModel_mapping","pandoraNext","tokensTool","validation","__name","setup","__props","path","window","location","pathname","parts","split","prefix","length","temGroupChecked","groupChecked","multipleTableRef","multipleTableRefPool","multipleSelection","multipleSelectionPool","handleSelectionChange","val","value","poolSelectionChange","size","router","show","show_1","show_2","show_3","show_4","show_5","show_6","show_7","show_8","show_9","show_10","show_11","show_12","show_13","show_14","show_15","show_16","show_17","buttonValue","options","label","optionsModel","buttonModel","optionsPoolModel","buttonPoolValue","optionsPool","proxy_api_prefix","isolated_conv_title","bing","timeout","proxy_url","public_share","disable_signup","auto_conv_arkose","proxy_file_service","custom_doh_host","enabled","cert_file","key_file","site_password","setup_password","loginUsername","loginPassword","license_id","isGetToken","getTokenPassword","containerName","autoToken_url","whitelist","provider","site_key","site_secret","site_login","setup_login","oai_username","oai_password","auto_updateSession","auto_updateTime","auto_updateNumber","pandoraNext_outUrl","oneAPi_outUrl","oneAPi_intoToken","poolName","temPoolName","shareTokens","poolTime","poolNameValue","intoOneApi","poolModel_mapping","poolOneApi_models","addPoolOneApi_models","addPoolModel_mapping","oneApi_pandoraUrl","priority","temPool_token","customValidator","regex","test","sitePasswordValidator","poolNameValidator","addPasswordValidator","addSetPoolToken","setPoolToken","temName","temToken","temAccessToken","temShareToken","temUsername","temUserPassword","temShared","temShow_user_info","temPlus","temPassword","useRefreshToken","temCheckSession","tableData","poolData","shareData","loginData","addName","addUsername","addUserPassword","addTokenValue","addShared","addShow_user_info","addPlus","addUseRefreshToken","addPassword","addOneApi_name","addToken_name","addOneApi_baseUrl","addOneApi_models","addModel_mapping","addOneApi_groups","addPriority","innerHeight","valuePool","valueShare","token","localStorage","getItem","replace","headers","Authorization","fetchLoginToken","async","axios","post","then","response","data","code","console","error","catch","onSearch","getWebToken","getToken","includes","getAPIToken","onSearchShareToken","getShare","onSearchPoolToken","getPool","get","data_token","Array","isArray","resUsers","map","item","username","userPassword","access_token","share_token","shared","auto_shared","show_user_info","password","plus","updateTime","checkSession","filteredUsers","filter","user","getLoginData","resLogins","ipAddress","requestIp","outRequestNumber","inRequestNumber","lastLoginTime","responsePool","pool_token","resPools","poolToken","checkPool","loadingInstance","service","fullscreen","responseShare","resShares","oneApi_name","token_name","token_value","oneApi_baseUrl","oneApi_models","model_mapping","oneApi_groups","shareTime","close","getSetting","tls","endsWith","fetchDataAndFillForm","alert","confirmButtonText","callback","action","type","message","getSelectedData","selectedData","addSelectPoolToken","names","userData","JSON","parse","e","addPoolToken","toString","fetch","method","body","stringify","json","msg","handlePoolNameChange","selectedItem","find","handleShareNameChange","filteredTableData","requirePoolToken","log","addShareToken","pandoraUsage","innerWidth","Promise","all","current","total","tableRowClassName","row","poolRowClassName","redirectToExternalLink","open","redirectPandoraNextShare","url","charAt","requirePandoraNextLink","requireTokensToolLink","activeIndex","temRequireToken","handleSelect","keyPath","addToken","onAddToken","now","Date","formattedTime","getFullYear","getMonth","padStart","getDate","getHours","getMinutes","getSeconds","api","success","chart_show","showData","usageHeader","usageData","modelData","usage","startsWith","push","myChart_show","echarts","option","title","text","textStyle","fontSize","color","left","top","tooltip","legend","xAxis","yAxis","series","barWidth","itemStyle","params","colorList","dataIndex","setOption","temOneApi_models","temOneApi_groups","showShareToken","previousSetpoolToken","previousUseRefreshToken","previousToken","handleEdit","index","onRequireSetting","RequireSetting","setting","RequireAutoUpdate","RequireToken","confirm","cancelButtonText","openPandora","closePandora","AgainPandora","reloadPandora","pandoraIp","pandoraTime","getPandoraNext","ip","currentTime","futureTime","getTime","ttl","year","month","day","hours","minutes","seconds","updateAllShareToken","dangerouslyUseHTMLString","reNew","reNewMsg","ok","Error","reNewPool","reviewShare","requireShareToken","requireShare","review","reviewPool","deletePoolToken","verifySimplyPoolToken","deleteToken","put","deleteShareToken","formatDate","nowDay","timeDay","parseISO","daysDiff","differenceInDays","Math","ceil","dataToken","substring","logout","removeItem","getPoolToken","getShareToken","getLogin","redirectToGitHub","copyToken","textarea","document","createElement","appendChild","select","execCommand","removeChild","selectChoice","count","forEach","showPool","selectPoolChoice","selectedPoolData","temPoolData","chart","getUsage","model","myChart","_ctx","_cache","_component_el_menu_item","_component_van_icon","_component_el_sub_menu","_component_h10","_component_el_menu","_component_van_button","_component_el_page_header","_component_el_radio_button","_component_el_radio_group","_component_van_search","_component_el_table_column","_component_el_button","_component_el_tag","_component_el_popover","_component_el_option","_component_el_select","_component_el_button_group","_component_van_field","_component_van_switch","_component_van_cell_group","_component_van_form","_component_van_dialog","_component_CopyDocument","_component_el_icon","_component_el_select_group","_component_el_dialog","_component_el_form_item","_component_el_input","_component_van_checkbox","_component_van_checkbox_group","_directive_loading","mode","ellipsis","onSelect","default","src","alt","onClick","$event","icon","extra","square","modelValue","shape","clearable","placeholder","plain","onSelectionChange","ref_key","ref","prop","width","sortable","scope","circle","effect","trigger","placement","reference","$index","loading","filterable","onSubmit","inset","rules","required","validator","maxlength","autosize","maxHeight","minHeight","round","block","rows","readonly","onClickLeftIcon","disabled","property","multiple","input","direction","onChange","autoSize","Plus","shareToken","__exports__"],"sourceRoot":""}
\ No newline at end of file
diff --git a/rearServer/target/classes/static/js/app.5746d332.js b/rearServer/target/classes/static/js/app.5746d332.js
new file mode 100644
index 0000000..5357e29
--- /dev/null
+++ b/rearServer/target/classes/static/js/app.5746d332.js
@@ -0,0 +1,2 @@
+(function(){"use strict";var e={2386:function(e,t,n){n(6284);var o=n(5943),r=(n(262),n(1387)),u=(n(9908),n(1332)),i=(n(8528),n(2779)),a=(n(1746),n(2994)),s=(n(4205),n(5695)),c=(n(7055),n(1819)),f=(n(8845),n(299)),l=(n(487),n(6773)),d=(n(9517),n(5616)),p=(n(4618),n(8498)),m=(n(1763),n(1817)),v=(n(656),n(4326)),h=(n(8001),n(5601)),P=(n(492),n(2876)),b=(n(1897),n(157)),g=(n(4150),n(2495)),Z=(n(9042),n(3383)),y=(n(8825),n(1116)),k=(n(1645),n(5267)),T=(n(6335),n(3164)),w=(n(3349),n(5185)),O=(n(4746),n(6907)),N=(n(9846),n(4188)),x=(n(9840),n(6233)),j=(n(103),n(1206)),C=(n(2824),n(3801)),A=(n(3300),n(8521)),E=(n(6615),n(2406)),S=(n(4164),n(121)),_=(n(8399),n(5420)),L=n(9963),B=n(2403),F=(n(4415),n(6252));const D={id:"app"};function q(e,t,n,o,r,u){const i=(0,F.up)("router-view");return(0,F.wg)(),(0,F.iD)("div",D,[(0,F.Wm)(i)])}var z=(0,F.aZ)({setup(){const e=(e,t)=>{let n;return function(...o){const r=self;n&&clearTimeout(n),n=setTimeout((()=>{e.apply(r,o)}),t)}},t=window.ResizeObserver;window.ResizeObserver=class extends t{constructor(t){t=e(t,20),super(t)}}}}),M=n(3744);const R=(0,M.Z)(z,[["render",q]]);var W=R,H=(n(5110),n(2201));const I=[{path:"/",component:()=>Promise.all([n.e(154),n.e(678)]).then(n.bind(n,1395)),meta:{title:"Welcome to PandoraNext-TokensTool",keepAlive:!0}},{path:"/home",component:()=>Promise.all([n.e(154),n.e(164),n.e(813)]).then(n.bind(n,6521)),meta:{title:"PandoraNext-TokensTool",keepAlive:!0}},{path:"/iphone",component:()=>Promise.all([n.e(154),n.e(164),n.e(666)]).then(n.bind(n,3666)),meta:{title:"PandoraNext-TokensTool",keepAlive:!0}}],K=(0,H.p7)({history:(0,H.r5)(),routes:I});K.beforeEach(((e,t,n)=>{e.meta.title?document.title=`${e.meta.title}`:document.title="PandoraNext-TokensTool",n()}));var U=K,$=n(5781);const G=(0,L.ri)(W);G.use(B.Z),G.use(_.ZP),G.use(S.ZP),G.use(E.ZP),G.use(U),G.use(A.ZP),G.use(C.ZP),G.use(j.ZP),G.use(x.Z),G.use(N.ZP),G.use(O.ZP),G.use(w.ZP),G.use(T.ZP),G.use(k.ZP),G.use(y.ZP),G.use(Z.ZP),G.use(g.ZP),G.use(b.ZP),G.use(P.ZP),G.use(h.ZP),G.use(v.ZP),G.use(m.ZP),G.use(p.ZP),G.use(d.ZP),G.use(l.ZP),G.use(f.ZP),G.use(c.ZP),G.use(s.ZP),G.use(a.ZP),G.use(i.ZP),G.use(u.ZP),G.use(r.ZP),G.use(o.ZP);for(const[J,Q]of Object.entries($))G.component(J,Q);G.mount("#app")}},t={};function n(o){var r=t[o];if(void 0!==r)return r.exports;var u=t[o]={exports:{}};return e[o].call(u.exports,u,u.exports,n),u.exports}n.m=e,function(){var e=[];n.O=function(t,o,r,u){if(!o){var i=1/0;for(f=0;f=u)&&Object.keys(n.O).every((function(e){return n.O[e](o[s])}))?o.splice(s--,1):(a=!1,u0&&e[f-1][2]>u;f--)e[f]=e[f-1];e[f]=[o,r,u]}}(),function(){n.d=function(e,t){for(var o in t)n.o(t,o)&&!n.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})}}(),function(){n.f={},n.e=function(e){return Promise.all(Object.keys(n.f).reduce((function(t,o){return n.f[o](e,t),t}),[]))}}(),function(){n.u=function(e){return"js/"+e+"."+{154:"a30ad9b8",164:"26eb0f21",666:"e7a6709e",678:"15d2c0c6",813:"784e18ef"}[e]+".js"}}(),function(){n.miniCssF=function(e){return"css/"+e+"."+{666:"a0b15fa3",678:"1337824f",813:"7bb6ef32"}[e]+".css"}}(),function(){n.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}()}(),function(){n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}}(),function(){var e={},t="PandoraNext-TokensTool:";n.l=function(o,r,u,i){if(e[o])e[o].push(r);else{var a,s;if(void 0!==u)for(var c=document.getElementsByTagName("script"),f=0;f {\n let tid;\n return function (...args) {\n const ctx = self;\n tid && clearTimeout(tid);\n tid = setTimeout(() => {\n callback.apply(ctx, args);\n }, delay);\n };\n };\n const _ = window.ResizeObserver;\n window.ResizeObserver = class ResizeObserver extends _ {\n constructor(callback) {\n callback = debounce(callback, 20);\n super(callback);\n }\n };\n }\n});","/* unplugin-vue-components disabled */import { render } from \"./App.vue?vue&type=template&id=1a8491d9&ts=true\"\nimport script from \"./App.vue?vue&type=script&lang=ts\"\nexport * from \"./App.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { createRouter, createWebHashHistory } from 'vue-router';\r\n\r\n\r\nconst routes = [\r\n { path: '/', component: () => import('@/views/loginIndex.vue'), meta: { title: 'Welcome to PandoraNext-TokensTool',keepAlive: true }},\r\n { path: '/home', component: () => import('@/views/homeIndex.vue'), meta: { title: 'PandoraNext-TokensTool',keepAlive: true }},\r\n { path: '/iphone', component: () => import('@/views/homeIphone.vue'), meta: { title: 'PandoraNext-TokensTool',keepAlive: true }},\r\n];\r\n\r\nconst router = createRouter({\r\n history: createWebHashHistory(),\r\n routes\r\n});\r\n\r\nrouter.beforeEach((to, from, next) => {\r\n // 检查是否存在to.meta.title,如果存在则设置页面标题为to.meta.title,否则使用默认标题\r\n if (to.meta.title) {\r\n document.title = `${to.meta.title}`; // 使用字符串模板将其转换为字符串\r\n } else {\r\n document.title = 'PandoraNext-TokensTool';\r\n }\r\n next();\r\n});\r\n\r\nexport default router;\r\n","import { createApp } from 'vue';\nimport ElementPlus from 'element-plus'\nimport 'element-plus/dist/index.css'\nimport App from './App.vue';\nimport 'vant/lib/index.css';\n//转向用的\nimport router from './router';\n//标签栏\nimport { Tabbar, TabbarItem } from 'vant';\n//加载图片懒模式\nimport { Swipe, SwipeItem } from 'vant';\nimport { NavBar } from 'vant';\nimport { ContactList } from 'vant';\nimport { AddressEdit } from 'vant';\nimport { FloatingBubble } from 'vant';\nimport { Button } from 'vant';\nimport { Form, Field, CellGroup } from 'vant';\nimport { Uploader } from 'vant';\nimport { Loading } from 'vant';\nimport { Search } from 'vant';\nimport { NoticeBar } from 'vant';\nimport { Dialog } from 'vant';\nimport { BackTop } from 'vant';\nimport { TextEllipsis } from 'vant';\nimport { Slider } from 'vant';\nimport { Toast } from 'vant';\nimport { Notify } from 'vant';\nimport { Checkbox, CheckboxGroup } from 'vant';\nimport { Grid, GridItem } from 'vant';\nimport {\n Skeleton,\n SkeletonTitle,\n SkeletonImage,\n SkeletonAvatar,\n SkeletonParagraph,\n} from 'vant';\nimport * as ElementPlusIconsVue from '@element-plus/icons-vue'\n\n//滑动单元格\n\nconst app = createApp(App)\napp.use(ElementPlus)\napp.use(AddressEdit);\n//滑动单元格\n//积分和代办栏\napp.use(ContactList);\n// 主题栏\napp.use(NavBar);\napp.use(router);//转向用的\n//标签栏\napp.use(Tabbar);\napp.use(TabbarItem);\n//加载图片懒模式\napp.use(Swipe);\n\napp.use(SwipeItem);\n\napp.use(FloatingBubble);\napp.use(Button);\n\napp.use(Form);\napp.use(Field);\napp.use(CellGroup);\n\n// 加载\napp.use(Loading)\n\n// 下载\napp.use(Uploader);\n\n// 通知栏\napp.use(NoticeBar);\n\n// 搜索\napp.use(Search);\n\n// 弹框\napp.use(Dialog);\n\napp.use(BackTop);\n\napp.use(TextEllipsis);\n\napp.use(Slider);\n\napp.use(Toast);\n\napp.use(Notify);\n\napp.use(Checkbox);\n\napp.use(CheckboxGroup);\n\napp.use(Grid);\n\napp.use(GridItem);\n\napp.use(Skeleton);\napp.use(SkeletonTitle);\napp.use(SkeletonImage);\napp.use(SkeletonAvatar);\napp.use(SkeletonParagraph);\n\nfor (const [key, component] of Object.entries(ElementPlusIconsVue)) {\n app.component(key, component)\n}\napp.mount('#app');","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"js/\" + chunkId + \".\" + {\"98\":\"13ca7e42\",\"154\":\"a30ad9b8\",\"164\":\"26eb0f21\",\"386\":\"27cc819e\",\"724\":\"cd26d2dd\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"css/\" + chunkId + \".\" + {\"98\":\"7bb6ef32\",\"386\":\"a0b15fa3\",\"724\":\"97ac894e\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"PandoraNext-TokensTool:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"\";","if (typeof document === \"undefined\") return;\nvar createStylesheet = function(chunkId, fullhref, oldTag, resolve, reject) {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tvar onLinkComplete = function(event) {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + realHref + \")\");\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tif (linkTag.parentNode) linkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\tif (oldTag) {\n\t\toldTag.parentNode.insertBefore(linkTag, oldTag.nextSibling);\n\t} else {\n\t\tdocument.head.appendChild(linkTag);\n\t}\n\treturn linkTag;\n};\nvar findStylesheet = function(href, fullhref) {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = function(chunkId) {\n\treturn new Promise(function(resolve, reject) {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, null, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.miniCss = function(chunkId, promises) {\n\tvar cssChunks = {\"98\":1,\"386\":1,\"724\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(function() {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, function(e) {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkPandoraNext_TokensTool\"] = self[\"webpackChunkPandoraNext_TokensTool\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [998], function() { return __webpack_require__(2386); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["_hoisted_1","id","render","_ctx","_cache","$props","$setup","$data","$options","_component_router_view","setup","debounce","callback","delay","tid","args","ctx","self","clearTimeout","setTimeout","apply","_","window","ResizeObserver","constructor","super","__exports__","routes","path","component","meta","title","keepAlive","router","createRouter","history","createWebHashHistory","beforeEach","to","from","next","document","app","createApp","App","use","ElementPlus","_AddressEdit","_ContactList","_NavBar","_Tabbar","_TabbarItem","_Swipe","_SwipeItem","_FloatingBubble","_Button","_Form","_Field","_CellGroup","_Loading","_Uploader","_NoticeBar","_Search","_Dialog","_BackTop","_TextEllipsis","_Slider","_Toast","_Notify","_Checkbox","_CheckboxGroup","_Grid","_GridItem","_Skeleton","_SkeletonTitle","_SkeletonImage","_SkeletonAvatar","_SkeletonParagraph","key","Object","entries","ElementPlusIconsVue","mount","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","call","m","deferred","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","length","fulfilled","j","keys","every","splice","r","d","definition","o","defineProperty","enumerable","get","f","e","chunkId","Promise","all","reduce","promises","u","miniCssF","g","globalThis","this","Function","obj","prop","prototype","hasOwnProperty","inProgress","dataWebpackPrefix","l","url","done","push","script","needAttach","scripts","getElementsByTagName","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","event","onerror","onload","doneFns","parentNode","removeChild","forEach","bind","type","target","head","appendChild","Symbol","toStringTag","value","p","createStylesheet","fullhref","oldTag","resolve","reject","linkTag","rel","onLinkComplete","errorType","realHref","href","err","Error","code","request","insertBefore","nextSibling","findStylesheet","existingLinkTags","tag","dataHref","existingStyleTags","loadStylesheet","installedCssChunks","miniCss","cssChunks","then","installedChunks","installedChunkData","promise","error","loadingEnded","realSrc","message","name","webpackJsonpCallback","parentChunkLoadingFunction","data","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"file":"js/app.5746d332.js","mappings":"msBACA,MAAMA,EAAa,CACjBC,GAAI,OAEC,SAASC,EAAOC,EAAMC,EAAQC,EAAQC,EAAQC,EAAOC,GAC1D,MAAMC,GAAyB,QAAkB,eACjD,OAAO,WAAc,QAAoB,MAAOT,EAAY,EAAC,QAAaS,IAC5E,CCNA,OAAe,QAAgB,CAC7B,KAAAC,GACE,MAAMC,EAAW,CAACC,EAAUC,KAC1B,IAAIC,EACJ,OAAO,YAAaC,GAClB,MAAMC,EAAMC,KACZH,GAAOI,aAAaJ,GACpBA,EAAMK,YAAW,KACfP,EAASQ,MAAMJ,EAAKD,EAAK,GACxBF,EACL,CAAC,EAEGQ,EAAIC,OAAOC,eACjBD,OAAOC,eAAiB,cAA6BF,EACnD,WAAAG,CAAYZ,GACVA,EAAWD,EAASC,EAAU,IAC9Ba,MAAMb,EACR,EAEJ,I,UCfF,MAAMc,GAA2B,OAAgB,EAAQ,CAAC,CAAC,SAASxB,KAEpE,Q,oBCJA,MAAMyB,EAAS,CACX,CAAEC,KAAM,IAAKC,UAAWA,IAAM,sDAAkCC,KAAM,CAAEC,MAAO,oCAAoCC,WAAW,IAC9H,CAAEJ,KAAM,QAASC,UAAWA,IAAM,+DAAiCC,KAAM,CAAEC,MAAO,yBAAyBC,WAAW,IACtH,CAAEJ,KAAM,UAAWC,UAAWA,IAAM,+DAAkCC,KAAM,CAAEC,MAAO,yBAAyBC,WAAW,KAGvHC,GAASC,EAAAA,EAAAA,IAAa,CACxBC,SAASC,EAAAA,EAAAA,MACTT,WAGJM,EAAOI,YAAW,CAACC,EAAIC,EAAMC,KAErBF,EAAGR,KAAKC,MACRU,SAASV,MAAQ,GAAGO,EAAGR,KAAKC,QAE5BU,SAASV,MAAQ,yBAErBS,GAAM,IAGV,Q,UCgBA,MAAME,GAAMC,EAAAA,EAAAA,IAAUC,GACtBF,EAAIG,IAAIC,EAAAA,GACRJ,EAAIG,IAAGE,EAAAA,IAGPL,EAAIG,IAAGG,EAAAA,IAEPN,EAAIG,IAAGI,EAAAA,IACPP,EAAIG,IAAIZ,GAERS,EAAIG,IAAGK,EAAAA,IACPR,EAAIG,IAAGM,EAAAA,IAEPT,EAAIG,IAAGO,EAAAA,IAEPV,EAAIG,IAAGQ,EAAAA,GAEPX,EAAIG,IAAGS,EAAAA,IACPZ,EAAIG,IAAGU,EAAAA,IAEPb,EAAIG,IAAGW,EAAAA,IACPd,EAAIG,IAAGY,EAAAA,IACPf,EAAIG,IAAGa,EAAAA,IAGPhB,EAAIG,IAAGc,EAAAA,IAGPjB,EAAIG,IAAGe,EAAAA,IAGPlB,EAAIG,IAAGgB,EAAAA,IAGPnB,EAAIG,IAAGiB,EAAAA,IAGPpB,EAAIG,IAAGkB,EAAAA,IAEPrB,EAAIG,IAAGmB,EAAAA,IAEPtB,EAAIG,IAAGoB,EAAAA,IAEPvB,EAAIG,IAAGqB,EAAAA,IAEPxB,EAAIG,IAAGsB,EAAAA,IAEPzB,EAAIG,IAAGuB,EAAAA,IAEP1B,EAAIG,IAAGwB,EAAAA,IAEP3B,EAAIG,IAAGyB,EAAAA,IAEP5B,EAAIG,IAAG0B,EAAAA,IAEP7B,EAAIG,IAAG2B,EAAAA,IAEP9B,EAAIG,IAAG4B,EAAAA,IACP/B,EAAIG,IAAG6B,EAAAA,IACPhC,EAAIG,IAAG8B,EAAAA,IACPjC,EAAIG,IAAG+B,EAAAA,IACPlC,EAAIG,IAAGgC,EAAAA,IAEP,IAAK,MAAOC,EAAKjD,KAAckD,OAAOC,QAAQC,GAC1CvC,EAAIb,UAAUiD,EAAKjD,GAEvBa,EAAIwC,MAAM,O,GCzGNC,EAA2B,CAAC,EAGhC,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBE,IAAjBD,EACH,OAAOA,EAAaE,QAGrB,IAAIC,EAASN,EAAyBE,GAAY,CAGjDG,QAAS,CAAC,GAOX,OAHAE,EAAoBL,GAAUM,KAAKF,EAAOD,QAASC,EAAQA,EAAOD,QAASJ,GAGpEK,EAAOD,OACf,CAGAJ,EAAoBQ,EAAIF,E,WCzBxB,IAAIG,EAAW,GACfT,EAAoBU,EAAI,SAASC,EAAQC,EAAUC,EAAIC,GACtD,IAAGF,EAAH,CAMA,IAAIG,EAAeC,IACnB,IAASC,EAAI,EAAGA,EAAIR,EAASS,OAAQD,IAAK,CACrCL,EAAWH,EAASQ,GAAG,GACvBJ,EAAKJ,EAASQ,GAAG,GACjBH,EAAWL,EAASQ,GAAG,GAE3B,IAJA,IAGIE,GAAY,EACPC,EAAI,EAAGA,EAAIR,EAASM,OAAQE,MACpB,EAAXN,GAAsBC,GAAgBD,IAAanB,OAAO0B,KAAKrB,EAAoBU,GAAGY,OAAM,SAAS5B,GAAO,OAAOM,EAAoBU,EAAEhB,GAAKkB,EAASQ,GAAK,IAChKR,EAASW,OAAOH,IAAK,IAErBD,GAAY,EACTL,EAAWC,IAAcA,EAAeD,IAG7C,GAAGK,EAAW,CACbV,EAASc,OAAON,IAAK,GACrB,IAAIO,EAAIX,SACEV,IAANqB,IAAiBb,EAASa,EAC/B,CACD,CACA,OAAOb,CArBP,CAJCG,EAAWA,GAAY,EACvB,IAAI,IAAIG,EAAIR,EAASS,OAAQD,EAAI,GAAKR,EAASQ,EAAI,GAAG,GAAKH,EAAUG,IAAKR,EAASQ,GAAKR,EAASQ,EAAI,GACrGR,EAASQ,GAAK,CAACL,EAAUC,EAAIC,EAwB/B,C,eC5BAd,EAAoByB,EAAI,SAASrB,EAASsB,GACzC,IAAI,IAAIhC,KAAOgC,EACX1B,EAAoB2B,EAAED,EAAYhC,KAASM,EAAoB2B,EAAEvB,EAASV,IAC5EC,OAAOiC,eAAexB,EAASV,EAAK,CAAEmC,YAAY,EAAMC,IAAKJ,EAAWhC,IAG3E,C,eCPAM,EAAoB+B,EAAI,CAAC,EAGzB/B,EAAoBgC,EAAI,SAASC,GAChC,OAAOC,QAAQC,IAAIxC,OAAO0B,KAAKrB,EAAoB+B,GAAGK,QAAO,SAASC,EAAU3C,GAE/E,OADAM,EAAoB+B,EAAErC,GAAKuC,EAASI,GAC7BA,CACR,GAAG,IACJ,C,eCPArC,EAAoBsC,EAAI,SAASL,GAEhC,MAAO,MAAQA,EAAU,IAAM,CAAC,IAAM,WAAW,IAAM,WAAW,IAAM,WAAW,IAAM,WAAW,IAAM,YAAYA,GAAW,KAClI,C,eCHAjC,EAAoBuC,SAAW,SAASN,GAEvC,MAAO,OAASA,EAAU,IAAM,CAAC,IAAM,WAAW,IAAM,WAAW,IAAM,YAAYA,GAAW,MACjG,C,eCJAjC,EAAoBwC,EAAI,WACvB,GAA0B,kBAAfC,WAAyB,OAAOA,WAC3C,IACC,OAAOC,MAAQ,IAAIC,SAAS,cAAb,EAChB,CAAE,MAAOX,GACR,GAAsB,kBAAX9F,OAAqB,OAAOA,MACxC,CACA,CAPuB,E,eCAxB8D,EAAoB2B,EAAI,SAASiB,EAAKC,GAAQ,OAAOlD,OAAOmD,UAAUC,eAAexC,KAAKqC,EAAKC,EAAO,C,eCAtG,IAAIG,EAAa,CAAC,EACdC,EAAoB,0BAExBjD,EAAoBkD,EAAI,SAASC,EAAKC,EAAM1D,EAAKuC,GAChD,GAAGe,EAAWG,GAAQH,EAAWG,GAAKE,KAAKD,OAA3C,CACA,IAAIE,EAAQC,EACZ,QAAWpD,IAART,EAEF,IADA,IAAI8D,EAAUnG,SAASoG,qBAAqB,UACpCxC,EAAI,EAAGA,EAAIuC,EAAQtC,OAAQD,IAAK,CACvC,IAAIyC,EAAIF,EAAQvC,GAChB,GAAGyC,EAAEC,aAAa,QAAUR,GAAOO,EAAEC,aAAa,iBAAmBV,EAAoBvD,EAAK,CAAE4D,EAASI,EAAG,KAAO,CACpH,CAEGJ,IACHC,GAAa,EACbD,EAASjG,SAASuG,cAAc,UAEhCN,EAAOO,QAAU,QACjBP,EAAOQ,QAAU,IACb9D,EAAoB+D,IACvBT,EAAOU,aAAa,QAAShE,EAAoB+D,IAElDT,EAAOU,aAAa,eAAgBf,EAAoBvD,GAExD4D,EAAOW,IAAMd,GAEdH,EAAWG,GAAO,CAACC,GACnB,IAAIc,EAAmB,SAASC,EAAMC,GAErCd,EAAOe,QAAUf,EAAOgB,OAAS,KACjCxI,aAAagI,GACb,IAAIS,EAAUvB,EAAWG,GAIzB,UAHOH,EAAWG,GAClBG,EAAOkB,YAAclB,EAAOkB,WAAWC,YAAYnB,GACnDiB,GAAWA,EAAQG,SAAQ,SAAS7D,GAAM,OAAOA,EAAGuD,EAAQ,IACzDD,EAAM,OAAOA,EAAKC,EACtB,EACIN,EAAU/H,WAAWmI,EAAiBS,KAAK,UAAMxE,EAAW,CAAEyE,KAAM,UAAWC,OAAQvB,IAAW,MACtGA,EAAOe,QAAUH,EAAiBS,KAAK,KAAMrB,EAAOe,SACpDf,EAAOgB,OAASJ,EAAiBS,KAAK,KAAMrB,EAAOgB,QACnDf,GAAclG,SAASyH,KAAKC,YAAYzB,EApCkB,CAqC3D,C,eCxCAtD,EAAoBwB,EAAI,SAASpB,GACX,qBAAX4E,QAA0BA,OAAOC,aAC1CtF,OAAOiC,eAAexB,EAAS4E,OAAOC,YAAa,CAAEC,MAAO,WAE7DvF,OAAOiC,eAAexB,EAAS,aAAc,CAAE8E,OAAO,GACvD,C,eCNAlF,EAAoBmF,EAAI,E,eCAxB,GAAwB,qBAAb9H,SAAX,CACA,IAAI+H,EAAmB,SAASnD,EAASoD,EAAUC,EAAQC,EAASC,GACnE,IAAIC,EAAUpI,SAASuG,cAAc,QAErC6B,EAAQC,IAAM,aACdD,EAAQb,KAAO,WACf,IAAIe,EAAiB,SAASvB,GAG7B,GADAqB,EAAQpB,QAAUoB,EAAQnB,OAAS,KAChB,SAAfF,EAAMQ,KACTW,QACM,CACN,IAAIK,EAAYxB,IAAyB,SAAfA,EAAMQ,KAAkB,UAAYR,EAAMQ,MAChEiB,EAAWzB,GAASA,EAAMS,QAAUT,EAAMS,OAAOiB,MAAQT,EACzDU,EAAM,IAAIC,MAAM,qBAAuB/D,EAAU,cAAgB4D,EAAW,KAChFE,EAAIE,KAAO,wBACXF,EAAInB,KAAOgB,EACXG,EAAIG,QAAUL,EACVJ,EAAQjB,YAAYiB,EAAQjB,WAAWC,YAAYgB,GACvDD,EAAOO,EACR,CACD,EASA,OARAN,EAAQpB,QAAUoB,EAAQnB,OAASqB,EACnCF,EAAQK,KAAOT,EAEXC,EACHA,EAAOd,WAAW2B,aAAaV,EAASH,EAAOc,aAE/C/I,SAASyH,KAAKC,YAAYU,GAEpBA,CACR,EACIY,EAAiB,SAASP,EAAMT,GAEnC,IADA,IAAIiB,EAAmBjJ,SAASoG,qBAAqB,QAC7CxC,EAAI,EAAGA,EAAIqF,EAAiBpF,OAAQD,IAAK,CAChD,IAAIsF,EAAMD,EAAiBrF,GACvBuF,EAAWD,EAAI5C,aAAa,cAAgB4C,EAAI5C,aAAa,QACjE,GAAe,eAAZ4C,EAAIb,MAAyBc,IAAaV,GAAQU,IAAanB,GAAW,OAAOkB,CACrF,CACA,IAAIE,EAAoBpJ,SAASoG,qBAAqB,SACtD,IAAQxC,EAAI,EAAGA,EAAIwF,EAAkBvF,OAAQD,IAAK,CAC7CsF,EAAME,EAAkBxF,GACxBuF,EAAWD,EAAI5C,aAAa,aAChC,GAAG6C,IAAaV,GAAQU,IAAanB,EAAU,OAAOkB,CACvD,CACD,EACIG,EAAiB,SAASzE,GAC7B,OAAO,IAAIC,SAAQ,SAASqD,EAASC,GACpC,IAAIM,EAAO9F,EAAoBuC,SAASN,GACpCoD,EAAWrF,EAAoBmF,EAAIW,EACvC,GAAGO,EAAeP,EAAMT,GAAW,OAAOE,IAC1CH,EAAiBnD,EAASoD,EAAU,KAAME,EAASC,EACpD,GACD,EAEImB,EAAqB,CACxB,IAAK,GAGN3G,EAAoB+B,EAAE6E,QAAU,SAAS3E,EAASI,GACjD,IAAIwE,EAAY,CAAC,IAAM,EAAE,IAAM,EAAE,IAAM,GACpCF,EAAmB1E,GAAUI,EAASgB,KAAKsD,EAAmB1E,IACzB,IAAhC0E,EAAmB1E,IAAkB4E,EAAU5E,IACtDI,EAASgB,KAAKsD,EAAmB1E,GAAWyE,EAAezE,GAAS6E,MAAK,WACxEH,EAAmB1E,GAAW,CAC/B,IAAG,SAASD,GAEX,aADO2E,EAAmB1E,GACpBD,CACP,IAEF,CAtE2C,C,eCK3C,IAAI+E,EAAkB,CACrB,IAAK,GAGN/G,EAAoB+B,EAAEX,EAAI,SAASa,EAASI,GAE1C,IAAI2E,EAAqBhH,EAAoB2B,EAAEoF,EAAiB9E,GAAW8E,EAAgB9E,QAAW9B,EACtG,GAA0B,IAAvB6G,EAGF,GAAGA,EACF3E,EAASgB,KAAK2D,EAAmB,QAC3B,CAGL,IAAIC,EAAU,IAAI/E,SAAQ,SAASqD,EAASC,GAAUwB,EAAqBD,EAAgB9E,GAAW,CAACsD,EAASC,EAAS,IACzHnD,EAASgB,KAAK2D,EAAmB,GAAKC,GAGtC,IAAI9D,EAAMnD,EAAoBmF,EAAInF,EAAoBsC,EAAEL,GAEpDiF,EAAQ,IAAIlB,MACZmB,EAAe,SAAS/C,GAC3B,GAAGpE,EAAoB2B,EAAEoF,EAAiB9E,KACzC+E,EAAqBD,EAAgB9E,GACX,IAAvB+E,IAA0BD,EAAgB9E,QAAW9B,GACrD6G,GAAoB,CACtB,IAAIpB,EAAYxB,IAAyB,SAAfA,EAAMQ,KAAkB,UAAYR,EAAMQ,MAChEwC,EAAUhD,GAASA,EAAMS,QAAUT,EAAMS,OAAOZ,IACpDiD,EAAMG,QAAU,iBAAmBpF,EAAU,cAAgB2D,EAAY,KAAOwB,EAAU,IAC1FF,EAAMI,KAAO,iBACbJ,EAAMtC,KAAOgB,EACbsB,EAAMhB,QAAUkB,EAChBJ,EAAmB,GAAGE,EACvB,CAEF,EACAlH,EAAoBkD,EAAEC,EAAKgE,EAAc,SAAWlF,EAASA,EAE/D,CAEH,EAUAjC,EAAoBU,EAAEU,EAAI,SAASa,GAAW,OAAoC,IAA7B8E,EAAgB9E,EAAgB,EAGrF,IAAIsF,EAAuB,SAASC,EAA4BC,GAC/D,IAKIxH,EAAUgC,EALVrB,EAAW6G,EAAK,GAChBC,EAAcD,EAAK,GACnBE,EAAUF,EAAK,GAGIxG,EAAI,EAC3B,GAAGL,EAASgH,MAAK,SAAS/M,GAAM,OAA+B,IAAxBkM,EAAgBlM,EAAW,IAAI,CACrE,IAAIoF,KAAYyH,EACZ1H,EAAoB2B,EAAE+F,EAAazH,KACrCD,EAAoBQ,EAAEP,GAAYyH,EAAYzH,IAGhD,GAAG0H,EAAS,IAAIhH,EAASgH,EAAQ3H,EAClC,CAEA,IADGwH,GAA4BA,EAA2BC,GACrDxG,EAAIL,EAASM,OAAQD,IACzBgB,EAAUrB,EAASK,GAChBjB,EAAoB2B,EAAEoF,EAAiB9E,IAAY8E,EAAgB9E,IACrE8E,EAAgB9E,GAAS,KAE1B8E,EAAgB9E,GAAW,EAE5B,OAAOjC,EAAoBU,EAAEC,EAC9B,EAEIkH,EAAqBhM,KAAK,sCAAwCA,KAAK,uCAAyC,GACpHgM,EAAmBnD,QAAQ6C,EAAqB5C,KAAK,KAAM,IAC3DkD,EAAmBxE,KAAOkE,EAAqB5C,KAAK,KAAMkD,EAAmBxE,KAAKsB,KAAKkD,G,ICpFvF,IAAIC,EAAsB9H,EAAoBU,OAAEP,EAAW,CAAC,MAAM,WAAa,OAAOH,EAAoB,KAAO,IACjH8H,EAAsB9H,EAAoBU,EAAEoH,E","sources":["webpack://PandoraNext-TokensTool/./src/App.vue?6124","webpack://PandoraNext-TokensTool/./src/App.vue","webpack://PandoraNext-TokensTool/./src/App.vue?b1e7","webpack://PandoraNext-TokensTool/./src/router/index.ts","webpack://PandoraNext-TokensTool/./src/main.ts","webpack://PandoraNext-TokensTool/webpack/bootstrap","webpack://PandoraNext-TokensTool/webpack/runtime/chunk loaded","webpack://PandoraNext-TokensTool/webpack/runtime/define property getters","webpack://PandoraNext-TokensTool/webpack/runtime/ensure chunk","webpack://PandoraNext-TokensTool/webpack/runtime/get javascript chunk filename","webpack://PandoraNext-TokensTool/webpack/runtime/get mini-css chunk filename","webpack://PandoraNext-TokensTool/webpack/runtime/global","webpack://PandoraNext-TokensTool/webpack/runtime/hasOwnProperty shorthand","webpack://PandoraNext-TokensTool/webpack/runtime/load script","webpack://PandoraNext-TokensTool/webpack/runtime/make namespace object","webpack://PandoraNext-TokensTool/webpack/runtime/publicPath","webpack://PandoraNext-TokensTool/webpack/runtime/css loading","webpack://PandoraNext-TokensTool/webpack/runtime/jsonp chunk loading","webpack://PandoraNext-TokensTool/webpack/startup"],"sourcesContent":["import { resolveComponent as _resolveComponent, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\";\nconst _hoisted_1 = {\n id: \"app\"\n};\nexport function render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_router_view = _resolveComponent(\"router-view\");\n return _openBlock(), _createElementBlock(\"div\", _hoisted_1, [_createVNode(_component_router_view)]);\n}","import { defineComponent } from \"vue\";\nexport default defineComponent({\n setup() {\n const debounce = (callback, delay) => {\n let tid;\n return function (...args) {\n const ctx = self;\n tid && clearTimeout(tid);\n tid = setTimeout(() => {\n callback.apply(ctx, args);\n }, delay);\n };\n };\n const _ = window.ResizeObserver;\n window.ResizeObserver = class ResizeObserver extends _ {\n constructor(callback) {\n callback = debounce(callback, 20);\n super(callback);\n }\n };\n }\n});","/* unplugin-vue-components disabled */import { render } from \"./App.vue?vue&type=template&id=1a8491d9&ts=true\"\nimport script from \"./App.vue?vue&type=script&lang=ts\"\nexport * from \"./App.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { createRouter, createWebHashHistory } from 'vue-router';\r\n\r\n\r\nconst routes = [\r\n { path: '/', component: () => import('@/views/loginIndex.vue'), meta: { title: 'Welcome to PandoraNext-TokensTool',keepAlive: true }},\r\n { path: '/home', component: () => import('@/views/homeIndex.vue'), meta: { title: 'PandoraNext-TokensTool',keepAlive: true }},\r\n { path: '/iphone', component: () => import('@/views/homeIphone.vue'), meta: { title: 'PandoraNext-TokensTool',keepAlive: true }},\r\n];\r\n\r\nconst router = createRouter({\r\n history: createWebHashHistory(),\r\n routes\r\n});\r\n\r\nrouter.beforeEach((to, from, next) => {\r\n // 检查是否存在to.meta.title,如果存在则设置页面标题为to.meta.title,否则使用默认标题\r\n if (to.meta.title) {\r\n document.title = `${to.meta.title}`; // 使用字符串模板将其转换为字符串\r\n } else {\r\n document.title = 'PandoraNext-TokensTool';\r\n }\r\n next();\r\n});\r\n\r\nexport default router;\r\n","import { createApp } from 'vue';\nimport ElementPlus from 'element-plus'\nimport 'element-plus/dist/index.css'\nimport App from './App.vue';\nimport 'vant/lib/index.css';\n//转向用的\nimport router from './router';\n//标签栏\nimport { Tabbar, TabbarItem } from 'vant';\n//加载图片懒模式\nimport { Swipe, SwipeItem } from 'vant';\nimport { NavBar } from 'vant';\nimport { ContactList } from 'vant';\nimport { AddressEdit } from 'vant';\nimport { FloatingBubble } from 'vant';\nimport { Button } from 'vant';\nimport { Form, Field, CellGroup } from 'vant';\nimport { Uploader } from 'vant';\nimport { Loading } from 'vant';\nimport { Search } from 'vant';\nimport { NoticeBar } from 'vant';\nimport { Dialog } from 'vant';\nimport { BackTop } from 'vant';\nimport { TextEllipsis } from 'vant';\nimport { Slider } from 'vant';\nimport { Toast } from 'vant';\nimport { Notify } from 'vant';\nimport { Checkbox, CheckboxGroup } from 'vant';\nimport { Grid, GridItem } from 'vant';\nimport {\n Skeleton,\n SkeletonTitle,\n SkeletonImage,\n SkeletonAvatar,\n SkeletonParagraph,\n} from 'vant';\nimport * as ElementPlusIconsVue from '@element-plus/icons-vue'\n\n//滑动单元格\n\nconst app = createApp(App)\napp.use(ElementPlus)\napp.use(AddressEdit);\n//滑动单元格\n//积分和代办栏\napp.use(ContactList);\n// 主题栏\napp.use(NavBar);\napp.use(router);//转向用的\n//标签栏\napp.use(Tabbar);\napp.use(TabbarItem);\n//加载图片懒模式\napp.use(Swipe);\n\napp.use(SwipeItem);\n\napp.use(FloatingBubble);\napp.use(Button);\n\napp.use(Form);\napp.use(Field);\napp.use(CellGroup);\n\n// 加载\napp.use(Loading)\n\n// 下载\napp.use(Uploader);\n\n// 通知栏\napp.use(NoticeBar);\n\n// 搜索\napp.use(Search);\n\n// 弹框\napp.use(Dialog);\n\napp.use(BackTop);\n\napp.use(TextEllipsis);\n\napp.use(Slider);\n\napp.use(Toast);\n\napp.use(Notify);\n\napp.use(Checkbox);\n\napp.use(CheckboxGroup);\n\napp.use(Grid);\n\napp.use(GridItem);\n\napp.use(Skeleton);\napp.use(SkeletonTitle);\napp.use(SkeletonImage);\napp.use(SkeletonAvatar);\napp.use(SkeletonParagraph);\n\nfor (const [key, component] of Object.entries(ElementPlusIconsVue)) {\n app.component(key, component)\n}\napp.mount('#app');","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"js/\" + chunkId + \".\" + {\"154\":\"a30ad9b8\",\"164\":\"26eb0f21\",\"666\":\"e7a6709e\",\"678\":\"15d2c0c6\",\"813\":\"784e18ef\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"css/\" + chunkId + \".\" + {\"666\":\"a0b15fa3\",\"678\":\"1337824f\",\"813\":\"7bb6ef32\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"PandoraNext-TokensTool:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"\";","if (typeof document === \"undefined\") return;\nvar createStylesheet = function(chunkId, fullhref, oldTag, resolve, reject) {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tvar onLinkComplete = function(event) {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + realHref + \")\");\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tif (linkTag.parentNode) linkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\tif (oldTag) {\n\t\toldTag.parentNode.insertBefore(linkTag, oldTag.nextSibling);\n\t} else {\n\t\tdocument.head.appendChild(linkTag);\n\t}\n\treturn linkTag;\n};\nvar findStylesheet = function(href, fullhref) {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = function(chunkId) {\n\treturn new Promise(function(resolve, reject) {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, null, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.miniCss = function(chunkId, promises) {\n\tvar cssChunks = {\"666\":1,\"678\":1,\"813\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(function() {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, function(e) {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkPandoraNext_TokensTool\"] = self[\"webpackChunkPandoraNext_TokensTool\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [998], function() { return __webpack_require__(2386); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["_hoisted_1","id","render","_ctx","_cache","$props","$setup","$data","$options","_component_router_view","setup","debounce","callback","delay","tid","args","ctx","self","clearTimeout","setTimeout","apply","_","window","ResizeObserver","constructor","super","__exports__","routes","path","component","meta","title","keepAlive","router","createRouter","history","createWebHashHistory","beforeEach","to","from","next","document","app","createApp","App","use","ElementPlus","_AddressEdit","_ContactList","_NavBar","_Tabbar","_TabbarItem","_Swipe","_SwipeItem","_FloatingBubble","_Button","_Form","_Field","_CellGroup","_Loading","_Uploader","_NoticeBar","_Search","_Dialog","_BackTop","_TextEllipsis","_Slider","_Toast","_Notify","_Checkbox","_CheckboxGroup","_Grid","_GridItem","_Skeleton","_SkeletonTitle","_SkeletonImage","_SkeletonAvatar","_SkeletonParagraph","key","Object","entries","ElementPlusIconsVue","mount","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","call","m","deferred","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","length","fulfilled","j","keys","every","splice","r","d","definition","o","defineProperty","enumerable","get","f","e","chunkId","Promise","all","reduce","promises","u","miniCssF","g","globalThis","this","Function","obj","prop","prototype","hasOwnProperty","inProgress","dataWebpackPrefix","l","url","done","push","script","needAttach","scripts","getElementsByTagName","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","event","onerror","onload","doneFns","parentNode","removeChild","forEach","bind","type","target","head","appendChild","Symbol","toStringTag","value","p","createStylesheet","fullhref","oldTag","resolve","reject","linkTag","rel","onLinkComplete","errorType","realHref","href","err","Error","code","request","insertBefore","nextSibling","findStylesheet","existingLinkTags","tag","dataHref","existingStyleTags","loadStylesheet","installedCssChunks","miniCss","cssChunks","then","installedChunks","installedChunkData","promise","error","loadingEnded","realSrc","message","name","webpackJsonpCallback","parentChunkLoadingFunction","data","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}
\ No newline at end of file
diff --git a/rearServer/target/classes/static/js/app.91a873ef.js b/rearServer/target/classes/static/js/app.91a873ef.js
deleted file mode 100644
index c8bcbe0..0000000
--- a/rearServer/target/classes/static/js/app.91a873ef.js
+++ /dev/null
@@ -1,2 +0,0 @@
-(function(){"use strict";var e={2386:function(e,t,n){n(6284);var o=n(5943),r=(n(262),n(1387)),u=(n(9908),n(1332)),i=(n(8528),n(2779)),a=(n(1746),n(2994)),s=(n(4205),n(5695)),c=(n(7055),n(1819)),l=(n(8845),n(299)),f=(n(487),n(6773)),d=(n(9517),n(5616)),p=(n(4618),n(8498)),m=(n(1763),n(1817)),v=(n(656),n(4326)),h=(n(8001),n(5601)),P=(n(492),n(2876)),b=(n(1897),n(157)),g=(n(4150),n(2495)),Z=(n(9042),n(3383)),y=(n(8825),n(1116)),k=(n(1645),n(5267)),T=(n(6335),n(3164)),w=(n(3349),n(5185)),O=(n(4746),n(6907)),N=(n(9846),n(4188)),x=(n(9840),n(6233)),j=(n(103),n(1206)),C=(n(2824),n(3801)),A=(n(3300),n(8521)),E=(n(6615),n(2406)),S=(n(4164),n(121)),_=(n(8399),n(5420)),L=n(9963),B=n(2403),F=(n(4415),n(6252));const D={id:"app"};function q(e,t,n,o,r,u){const i=(0,F.up)("router-view");return(0,F.wg)(),(0,F.iD)("div",D,[(0,F.Wm)(i)])}var z=(0,F.aZ)({setup(){const e=(e,t)=>{let n;return function(...o){const r=self;n&&clearTimeout(n),n=setTimeout((()=>{e.apply(r,o)}),t)}},t=window.ResizeObserver;window.ResizeObserver=class extends t{constructor(t){t=e(t,20),super(t)}}}}),M=n(3744);const R=(0,M.Z)(z,[["render",q]]);var W=R,H=(n(5110),n(2201));const I=[{path:"/",component:()=>Promise.all([n.e(154),n.e(724)]).then(n.bind(n,1769)),meta:{title:"Welcome to PandoraNext-TokensTool",keepAlive:!0}},{path:"/home",component:()=>Promise.all([n.e(154),n.e(164),n.e(98)]).then(n.bind(n,2098)),meta:{title:"PandoraNext-TokensTool",keepAlive:!0}},{path:"/iphone",component:()=>Promise.all([n.e(154),n.e(164),n.e(386)]).then(n.bind(n,386)),meta:{title:"PandoraNext-TokensTool",keepAlive:!0}}],K=(0,H.p7)({history:(0,H.r5)(),routes:I});K.beforeEach(((e,t,n)=>{e.meta.title?document.title=`${e.meta.title}`:document.title="PandoraNext-TokensTool",n()}));var U=K,$=n(5781);const G=(0,L.ri)(W);G.use(B.Z),G.use(_.ZP),G.use(S.ZP),G.use(E.ZP),G.use(U),G.use(A.ZP),G.use(C.ZP),G.use(j.ZP),G.use(x.Z),G.use(N.ZP),G.use(O.ZP),G.use(w.ZP),G.use(T.ZP),G.use(k.ZP),G.use(y.ZP),G.use(Z.ZP),G.use(g.ZP),G.use(b.ZP),G.use(P.ZP),G.use(h.ZP),G.use(v.ZP),G.use(m.ZP),G.use(p.ZP),G.use(d.ZP),G.use(f.ZP),G.use(l.ZP),G.use(c.ZP),G.use(s.ZP),G.use(a.ZP),G.use(i.ZP),G.use(u.ZP),G.use(r.ZP),G.use(o.ZP);for(const[J,Q]of Object.entries($))G.component(J,Q);G.mount("#app")}},t={};function n(o){var r=t[o];if(void 0!==r)return r.exports;var u=t[o]={exports:{}};return e[o].call(u.exports,u,u.exports,n),u.exports}n.m=e,function(){var e=[];n.O=function(t,o,r,u){if(!o){var i=1/0;for(l=0;l=u)&&Object.keys(n.O).every((function(e){return n.O[e](o[s])}))?o.splice(s--,1):(a=!1,u0&&e[l-1][2]>u;l--)e[l]=e[l-1];e[l]=[o,r,u]}}(),function(){n.d=function(e,t){for(var o in t)n.o(t,o)&&!n.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})}}(),function(){n.f={},n.e=function(e){return Promise.all(Object.keys(n.f).reduce((function(t,o){return n.f[o](e,t),t}),[]))}}(),function(){n.u=function(e){return"js/"+e+"."+{98:"13ca7e42",154:"a30ad9b8",164:"26eb0f21",386:"27cc819e",724:"cd26d2dd"}[e]+".js"}}(),function(){n.miniCssF=function(e){return"css/"+e+"."+{98:"7bb6ef32",386:"a0b15fa3",724:"97ac894e"}[e]+".css"}}(),function(){n.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}()}(),function(){n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}}(),function(){var e={},t="PandoraNext-TokensTool:";n.l=function(o,r,u,i){if(e[o])e[o].push(r);else{var a,s;if(void 0!==u)for(var c=document.getElementsByTagName("script"),l=0;l