mirror of
https://github.com/Wei-Shaw/claude-relay-service.git
synced 2026-01-23 20:44:49 +00:00
chore: update frontend build for v1.1.265 [skip ci]
This commit is contained in:
@@ -6,5 +6,5 @@ This branch contains the pre-built frontend assets for Claude Relay Service.
|
||||
|
||||
These files are automatically generated by the CI/CD pipeline.
|
||||
|
||||
Version: 1.1.264
|
||||
Build Date: 2026-01-23 02:41:59 UTC
|
||||
Version: 1.1.265
|
||||
Build Date: 2026-01-23 11:17:02 UTC
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
import{_ as s}from"./index-BahP9Xx9.js";import{I as d,y as i,x as g,L as m,z as t,C as o,P as r,a5 as c}from"./vue-vendor-DV7DYXbz.js";const f={key:0,class:"modal fixed inset-0 z-50 flex items-center justify-center p-4"},y={class:"modal-content mx-auto w-full max-w-md rounded-2xl bg-white p-6 shadow-xl dark:bg-gray-800"},x={class:"mb-6 flex items-start gap-4"},u={class:"flex-1"},h={class:"mb-2 text-lg font-bold text-gray-900 dark:text-white"},b={class:"whitespace-pre-line text-sm leading-relaxed text-gray-700 dark:text-gray-300"},p={class:"flex gap-3"},w={__name:"ConfirmModal",props:{show:{type:Boolean,required:!0},title:{type:String,default:""},message:{type:String,default:""},confirmText:{type:String,default:"继续"},cancelText:{type:String,default:"取消"},type:{type:String,default:"primary",validator:e=>["primary","warning","danger"].includes(e)}},emits:["confirm","cancel"],setup(e){return(n,a)=>(i(),d(c,{to:"body"},[e.show?(i(),g("div",f,[t("div",y,[t("div",x,[t("div",{class:o(["flex h-12 w-12 flex-shrink-0 items-center justify-center rounded-full",e.type==="danger"?"bg-gradient-to-br from-red-400 to-red-500":e.type==="warning"?"bg-gradient-to-br from-yellow-400 to-yellow-500":"bg-primary"])},[t("i",{class:o(["text-xl text-white",e.type==="danger"?"fas fa-trash-alt":e.type==="warning"?"fas fa-exclamation":"fas fa-question"])},null,2)],2),t("div",u,[t("h3",h,r(e.title),1),t("p",b,r(e.message),1)])]),t("div",p,[t("button",{class:"flex-1 rounded-xl bg-gray-100 px-4 py-2.5 font-medium text-gray-700 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-200 dark:hover:bg-gray-600",onClick:a[0]||(a[0]=l=>n.$emit("cancel"))},r(e.cancelText),1),t("button",{class:o(["flex-1 rounded-xl px-4 py-2.5 font-medium text-white shadow-sm transition-all",e.type==="danger"?"bg-gradient-to-r from-red-500 to-red-600 hover:from-red-600 hover:to-red-700":e.type==="warning"?"bg-gradient-to-r from-yellow-500 to-orange-500 hover:from-yellow-600 hover:to-orange-600":"bg-primary hover:opacity-90"]),onClick:a[1]||(a[1]=l=>n.$emit("confirm"))},r(e.confirmText),3)])])])):m("",!0)]))}},C=s(w,[["__scopeId","data-v-9b6104f1"]]);export{C};
|
||||
import{_ as s}from"./index-p8cKYBY8.js";import{I as d,y as i,x as g,L as m,z as t,C as o,P as r,a5 as c}from"./vue-vendor-DV7DYXbz.js";const f={key:0,class:"modal fixed inset-0 z-50 flex items-center justify-center p-4"},y={class:"modal-content mx-auto w-full max-w-md rounded-2xl bg-white p-6 shadow-xl dark:bg-gray-800"},x={class:"mb-6 flex items-start gap-4"},u={class:"flex-1"},h={class:"mb-2 text-lg font-bold text-gray-900 dark:text-white"},b={class:"whitespace-pre-line text-sm leading-relaxed text-gray-700 dark:text-gray-300"},p={class:"flex gap-3"},w={__name:"ConfirmModal",props:{show:{type:Boolean,required:!0},title:{type:String,default:""},message:{type:String,default:""},confirmText:{type:String,default:"继续"},cancelText:{type:String,default:"取消"},type:{type:String,default:"primary",validator:e=>["primary","warning","danger"].includes(e)}},emits:["confirm","cancel"],setup(e){return(n,a)=>(i(),d(c,{to:"body"},[e.show?(i(),g("div",f,[t("div",y,[t("div",x,[t("div",{class:o(["flex h-12 w-12 flex-shrink-0 items-center justify-center rounded-full",e.type==="danger"?"bg-gradient-to-br from-red-400 to-red-500":e.type==="warning"?"bg-gradient-to-br from-yellow-400 to-yellow-500":"bg-primary"])},[t("i",{class:o(["text-xl text-white",e.type==="danger"?"fas fa-trash-alt":e.type==="warning"?"fas fa-exclamation":"fas fa-question"])},null,2)],2),t("div",u,[t("h3",h,r(e.title),1),t("p",b,r(e.message),1)])]),t("div",p,[t("button",{class:"flex-1 rounded-xl bg-gray-100 px-4 py-2.5 font-medium text-gray-700 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-200 dark:hover:bg-gray-600",onClick:a[0]||(a[0]=l=>n.$emit("cancel"))},r(e.cancelText),1),t("button",{class:o(["flex-1 rounded-xl px-4 py-2.5 font-medium text-white shadow-sm transition-all",e.type==="danger"?"bg-gradient-to-r from-red-500 to-red-600 hover:from-red-600 hover:to-red-700":e.type==="warning"?"bg-gradient-to-r from-yellow-500 to-orange-500 hover:from-yellow-600 hover:to-orange-600":"bg-primary hover:opacity-90"]),onClick:a[1]||(a[1]=l=>n.$emit("confirm"))},r(e.confirmText),3)])])])):m("",!0)]))}},C=s(w,[["__scopeId","data-v-9b6104f1"]]);export{C};
|
||||
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
import{c as b,r as f,q as y,x as a,z as s,R as w,L as d,Q as h,u as o,P as i,Y as v,K as u,aq as p,O as c,y as r}from"./vue-vendor-DV7DYXbz.js";import{u as _,a as k}from"./index-BahP9Xx9.js";import{T as S}from"./ThemeToggle-DROshBR1.js";import"./element-plus-BSjV1f9S.js";import"./vendor-Dr8jvgFu.js";const L={class:"flex min-h-screen items-center justify-center p-4 sm:p-6"},T={class:"fixed right-4 top-4 z-50"},V={class:"glass-strong w-full max-w-md rounded-xl p-6 shadow-2xl sm:rounded-2xl sm:p-8 md:rounded-3xl md:p-10"},N={class:"mb-6 text-center sm:mb-8"},q={class:"mx-auto mb-4 flex h-16 w-16 items-center justify-center overflow-hidden rounded-xl border border-gray-300/30 bg-gradient-to-br from-blue-500/20 to-purple-500/20 backdrop-blur-sm sm:mb-6 sm:h-20 sm:w-20 sm:rounded-2xl"},D=["src"],E={key:1,class:"fas fa-cloud text-2xl text-gray-700 sm:text-3xl"},I={key:1,class:"h-10 w-10 animate-pulse rounded bg-gray-300/50 sm:h-12 sm:w-12"},j={key:0,class:"header-title mb-2 text-2xl font-bold text-white sm:text-3xl"},B={key:1,class:"mx-auto mb-2 h-8 w-48 animate-pulse rounded bg-gray-300/50 sm:h-9 sm:w-64"},M=["disabled"],z={key:0,class:"fas fa-sign-in-alt mr-2"},F={key:1,class:"loading-spinner mr-2"},O={key:0,class:"mt-4 rounded-lg border border-red-500/30 bg-red-500/20 p-3 text-center text-xs text-red-800 backdrop-blur-sm dark:text-red-400 sm:mt-6 sm:rounded-xl sm:p-4 sm:text-sm"},Y={__name:"LoginView",setup(U){const e=_(),g=k(),m=b(()=>e.oemLoading),n=f({username:"",password:""});y(()=>{g.initTheme(),e.loadOemSettings()});const x=async()=>{await e.login(n.value)};return(A,t)=>(r(),a("div",L,[s("div",T,[w(S,{mode:"dropdown"})]),s("div",V,[s("div",N,[s("div",q,[m.value?(r(),a("div",I)):(r(),a(h,{key:0},[o(e).oemSettings.siteIconData||o(e).oemSettings.siteIcon?(r(),a("img",{key:0,alt:"Logo",class:"h-10 w-10 object-contain sm:h-12 sm:w-12",src:o(e).oemSettings.siteIconData||o(e).oemSettings.siteIcon,onError:t[0]||(t[0]=l=>l.target.style.display="none")},null,40,D)):(r(),a("i",E))],64))]),!m.value&&o(e).oemSettings.siteName?(r(),a("h1",j,i(o(e).oemSettings.siteName),1)):m.value?(r(),a("div",B)):d("",!0),t[3]||(t[3]=s("p",{class:"text-base text-gray-600 dark:text-gray-400 sm:text-lg"},"管理后台",-1))]),s("form",{class:"space-y-4 sm:space-y-6",onSubmit:v(x,["prevent"])},[s("div",null,[t[4]||(t[4]=s("label",{class:"mb-2 block text-sm font-semibold text-gray-900 dark:text-gray-100 sm:mb-3",for:"username"},"用户名",-1)),u(s("input",{id:"username","onUpdate:modelValue":t[1]||(t[1]=l=>n.value.username=l),autocomplete:"username",class:"form-input w-full",name:"username",placeholder:"请输入用户名",required:"",type:"text"},null,512),[[p,n.value.username]])]),s("div",null,[t[5]||(t[5]=s("label",{class:"mb-2 block text-sm font-semibold text-gray-900 dark:text-gray-100 sm:mb-3",for:"password"},"密码",-1)),u(s("input",{id:"password","onUpdate:modelValue":t[2]||(t[2]=l=>n.value.password=l),autocomplete:"current-password",class:"form-input w-full",name:"password",placeholder:"请输入密码",required:"",type:"password"},null,512),[[p,n.value.password]])]),s("button",{class:"btn btn-primary w-full px-4 py-3 text-base font-semibold sm:px-6 sm:py-4 sm:text-lg",disabled:o(e).loginLoading,type:"submit"},[o(e).loginLoading?d("",!0):(r(),a("i",z)),o(e).loginLoading?(r(),a("div",F)):d("",!0),c(" "+i(o(e).loginLoading?"登录中...":"登录"),1)],8,M)],32),o(e).loginError?(r(),a("div",O,[t[6]||(t[6]=s("i",{class:"fas fa-exclamation-triangle mr-2"},null,-1)),c(i(o(e).loginError),1)])):d("",!0)])]))}};export{Y as default};
|
||||
import{c as b,r as f,q as y,x as a,z as s,R as w,L as d,Q as h,u as o,P as i,Y as v,K as u,aq as p,O as c,y as r}from"./vue-vendor-DV7DYXbz.js";import{u as _,a as k}from"./index-p8cKYBY8.js";import{T as S}from"./ThemeToggle-CDMqn7Rp.js";import"./element-plus-BSjV1f9S.js";import"./vendor-Dr8jvgFu.js";const L={class:"flex min-h-screen items-center justify-center p-4 sm:p-6"},T={class:"fixed right-4 top-4 z-50"},V={class:"glass-strong w-full max-w-md rounded-xl p-6 shadow-2xl sm:rounded-2xl sm:p-8 md:rounded-3xl md:p-10"},N={class:"mb-6 text-center sm:mb-8"},q={class:"mx-auto mb-4 flex h-16 w-16 items-center justify-center overflow-hidden rounded-xl border border-gray-300/30 bg-gradient-to-br from-blue-500/20 to-purple-500/20 backdrop-blur-sm sm:mb-6 sm:h-20 sm:w-20 sm:rounded-2xl"},D=["src"],E={key:1,class:"fas fa-cloud text-2xl text-gray-700 sm:text-3xl"},I={key:1,class:"h-10 w-10 animate-pulse rounded bg-gray-300/50 sm:h-12 sm:w-12"},j={key:0,class:"header-title mb-2 text-2xl font-bold text-white sm:text-3xl"},B={key:1,class:"mx-auto mb-2 h-8 w-48 animate-pulse rounded bg-gray-300/50 sm:h-9 sm:w-64"},M=["disabled"],z={key:0,class:"fas fa-sign-in-alt mr-2"},F={key:1,class:"loading-spinner mr-2"},O={key:0,class:"mt-4 rounded-lg border border-red-500/30 bg-red-500/20 p-3 text-center text-xs text-red-800 backdrop-blur-sm dark:text-red-400 sm:mt-6 sm:rounded-xl sm:p-4 sm:text-sm"},Y={__name:"LoginView",setup(U){const e=_(),g=k(),m=b(()=>e.oemLoading),n=f({username:"",password:""});y(()=>{g.initTheme(),e.loadOemSettings()});const x=async()=>{await e.login(n.value)};return(A,t)=>(r(),a("div",L,[s("div",T,[w(S,{mode:"dropdown"})]),s("div",V,[s("div",N,[s("div",q,[m.value?(r(),a("div",I)):(r(),a(h,{key:0},[o(e).oemSettings.siteIconData||o(e).oemSettings.siteIcon?(r(),a("img",{key:0,alt:"Logo",class:"h-10 w-10 object-contain sm:h-12 sm:w-12",src:o(e).oemSettings.siteIconData||o(e).oemSettings.siteIcon,onError:t[0]||(t[0]=l=>l.target.style.display="none")},null,40,D)):(r(),a("i",E))],64))]),!m.value&&o(e).oemSettings.siteName?(r(),a("h1",j,i(o(e).oemSettings.siteName),1)):m.value?(r(),a("div",B)):d("",!0),t[3]||(t[3]=s("p",{class:"text-base text-gray-600 dark:text-gray-400 sm:text-lg"},"管理后台",-1))]),s("form",{class:"space-y-4 sm:space-y-6",onSubmit:v(x,["prevent"])},[s("div",null,[t[4]||(t[4]=s("label",{class:"mb-2 block text-sm font-semibold text-gray-900 dark:text-gray-100 sm:mb-3",for:"username"},"用户名",-1)),u(s("input",{id:"username","onUpdate:modelValue":t[1]||(t[1]=l=>n.value.username=l),autocomplete:"username",class:"form-input w-full",name:"username",placeholder:"请输入用户名",required:"",type:"text"},null,512),[[p,n.value.username]])]),s("div",null,[t[5]||(t[5]=s("label",{class:"mb-2 block text-sm font-semibold text-gray-900 dark:text-gray-100 sm:mb-3",for:"password"},"密码",-1)),u(s("input",{id:"password","onUpdate:modelValue":t[2]||(t[2]=l=>n.value.password=l),autocomplete:"current-password",class:"form-input w-full",name:"password",placeholder:"请输入密码",required:"",type:"password"},null,512),[[p,n.value.password]])]),s("button",{class:"btn btn-primary w-full px-4 py-3 text-base font-semibold sm:px-6 sm:py-4 sm:text-lg",disabled:o(e).loginLoading,type:"submit"},[o(e).loginLoading?d("",!0):(r(),a("i",z)),o(e).loginLoading?(r(),a("div",F)):d("",!0),c(" "+i(o(e).loginLoading?"登录中...":"登录"),1)],8,M)],32),o(e).loginError?(r(),a("div",O,[t[6]||(t[6]=s("i",{class:"fas fa-exclamation-triangle mr-2"},null,-1)),c(i(o(e).loginError),1)])):d("",!0)])]))}};export{Y as default};
|
||||
@@ -1 +1 @@
|
||||
import{_ as d}from"./index-BahP9Xx9.js";import{x as t,y as a,z as l,Q as n,L as o,A as c,C as g,P as r}from"./vue-vendor-DV7DYXbz.js";const u={class:"flex items-center gap-4"},y={class:"flex h-12 w-12 flex-shrink-0 items-center justify-center overflow-hidden rounded-xl border border-gray-300/30 bg-gradient-to-br from-blue-500/20 to-purple-500/20 backdrop-blur-sm dark:border-gray-600/30 dark:from-blue-600/20 dark:to-purple-600/20"},f=["src"],m={key:1,class:"fas fa-cloud text-xl text-gray-700 dark:text-gray-300"},h={key:1,class:"h-8 w-8 animate-pulse rounded bg-gray-300/50 dark:bg-gray-600/50"},x={class:"flex min-h-[48px] flex-col justify-center"},b={class:"flex items-center gap-3"},k={key:1,class:"h-8 w-64 animate-pulse rounded bg-gray-300/50 dark:bg-gray-600/50"},_={key:0,class:"mt-0.5 text-sm leading-tight text-gray-600 dark:text-gray-400"},p={__name:"LogoTitle",props:{loading:{type:Boolean,default:!1},title:{type:String,default:""},subtitle:{type:String,default:""},logoSrc:{type:String,default:""},titleClass:{type:String,default:"text-gray-900"}},setup(e){const i=s=>{s.target.style.display="none"};return(s,S)=>(a(),t("div",u,[l("div",y,[e.loading?(a(),t("div",h)):(a(),t(n,{key:0},[e.logoSrc?(a(),t("img",{key:0,alt:"Logo",class:"h-8 w-8 object-contain",src:e.logoSrc,onError:i},null,40,f)):(a(),t("i",m))],64))]),l("div",x,[l("div",b,[!e.loading&&e.title?(a(),t("h1",{key:0,class:g(["header-title text-2xl font-bold leading-tight",e.titleClass])},r(e.title),3)):e.loading?(a(),t("div",k)):o("",!0),c(s.$slots,"after-title",{},void 0,!0)]),e.subtitle?(a(),t("p",_,r(e.subtitle),1)):o("",!0)])]))}},w=d(p,[["__scopeId","data-v-15eb26fd"]]);export{w as L};
|
||||
import{_ as d}from"./index-p8cKYBY8.js";import{x as t,y as a,z as l,Q as n,L as o,A as c,C as g,P as r}from"./vue-vendor-DV7DYXbz.js";const u={class:"flex items-center gap-4"},y={class:"flex h-12 w-12 flex-shrink-0 items-center justify-center overflow-hidden rounded-xl border border-gray-300/30 bg-gradient-to-br from-blue-500/20 to-purple-500/20 backdrop-blur-sm dark:border-gray-600/30 dark:from-blue-600/20 dark:to-purple-600/20"},f=["src"],m={key:1,class:"fas fa-cloud text-xl text-gray-700 dark:text-gray-300"},h={key:1,class:"h-8 w-8 animate-pulse rounded bg-gray-300/50 dark:bg-gray-600/50"},x={class:"flex min-h-[48px] flex-col justify-center"},b={class:"flex items-center gap-3"},k={key:1,class:"h-8 w-64 animate-pulse rounded bg-gray-300/50 dark:bg-gray-600/50"},_={key:0,class:"mt-0.5 text-sm leading-tight text-gray-600 dark:text-gray-400"},p={__name:"LogoTitle",props:{loading:{type:Boolean,default:!1},title:{type:String,default:""},subtitle:{type:String,default:""},logoSrc:{type:String,default:""},titleClass:{type:String,default:"text-gray-900"}},setup(e){const i=s=>{s.target.style.display="none"};return(s,S)=>(a(),t("div",u,[l("div",y,[e.loading?(a(),t("div",h)):(a(),t(n,{key:0},[e.logoSrc?(a(),t("img",{key:0,alt:"Logo",class:"h-8 w-8 object-contain",src:e.logoSrc,onError:i},null,40,f)):(a(),t("i",m))],64))]),l("div",x,[l("div",b,[!e.loading&&e.title?(a(),t("h1",{key:0,class:g(["header-title text-2xl font-bold leading-tight",e.titleClass])},r(e.title),3)):e.loading?(a(),t("div",k)):o("",!0),c(s.$slots,"after-title",{},void 0,!0)]),e.subtitle?(a(),t("p",_,r(e.subtitle),1)):o("",!0)])]))}},w=d(p,[["__scopeId","data-v-15eb26fd"]]);export{w as L};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
.settings-container[data-v-9495fcfd]{min-height:calc(100vh - 300px)}.card[data-v-9495fcfd]{background:#fff;border-radius:12px;box-shadow:0 2px 12px #0000001a;border:1px solid #e5e7eb}:root.dark .card[data-v-9495fcfd]{background:var(--bg-gradient-start);border:1px solid var(--border-color);box-shadow:0 2px 12px #0000004d}.table-container[data-v-9495fcfd]{overflow:hidden;border-radius:8px;border:1px solid #f3f4f6}:root.dark .table-container[data-v-9495fcfd]{border:1px solid var(--border-color)}.table-row[data-v-9495fcfd]{transition:background-color .2s ease}.table-row[data-v-9495fcfd]:hover{background-color:#f9fafb}:root.dark .table-row[data-v-9495fcfd]:hover{background-color:var(--bg-gradient-mid)}.form-input[data-v-9495fcfd]{width:100%;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));padding:.5rem 1rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.form-input[data-v-9495fcfd]:focus{border-color:transparent;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.btn[data-v-9495fcfd]{display:inline-flex;align-items:center;justify-content:center;border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:600;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.btn[data-v-9495fcfd]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.btn-primary[data-v-9495fcfd]{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.btn-primary[data-v-9495fcfd]:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.btn-primary[data-v-9495fcfd]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.btn-success[data-v-9495fcfd]{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.btn-success[data-v-9495fcfd]:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.btn-success[data-v-9495fcfd]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(34 197 94 / var(--tw-ring-opacity, 1))}.loading-spinner[data-v-9495fcfd]{height:1.25rem;width:1.25rem}@keyframes spin-9495fcfd{to{transform:rotate(360deg)}}.loading-spinner[data-v-9495fcfd]{animation:spin-9495fcfd 1s linear infinite;border-radius:9999px;border-width:2px;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-border-opacity: 1;border-top-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}
|
||||
.settings-container[data-v-88a5ddd9]{min-height:calc(100vh - 300px)}.card[data-v-88a5ddd9]{background:#fff;border-radius:12px;box-shadow:0 2px 12px #0000001a;border:1px solid #e5e7eb}:root.dark .card[data-v-88a5ddd9]{background:var(--bg-gradient-start);border:1px solid var(--border-color);box-shadow:0 2px 12px #0000004d}.table-container[data-v-88a5ddd9]{overflow:hidden;border-radius:8px;border:1px solid #f3f4f6}:root.dark .table-container[data-v-88a5ddd9]{border:1px solid var(--border-color)}.table-row[data-v-88a5ddd9]{transition:background-color .2s ease}.table-row[data-v-88a5ddd9]:hover{background-color:#f9fafb}:root.dark .table-row[data-v-88a5ddd9]:hover{background-color:var(--bg-gradient-mid)}.form-input[data-v-88a5ddd9]{width:100%;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));padding:.5rem 1rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.form-input[data-v-88a5ddd9]:focus{border-color:transparent;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.btn[data-v-88a5ddd9]{display:inline-flex;align-items:center;justify-content:center;border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:600;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.btn[data-v-88a5ddd9]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.btn-primary[data-v-88a5ddd9]{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.btn-primary[data-v-88a5ddd9]:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.btn-primary[data-v-88a5ddd9]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.btn-success[data-v-88a5ddd9]{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.btn-success[data-v-88a5ddd9]:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.btn-success[data-v-88a5ddd9]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(34 197 94 / var(--tw-ring-opacity, 1))}.loading-spinner[data-v-88a5ddd9]{height:1.25rem;width:1.25rem}@keyframes spin-88a5ddd9{to{transform:rotate(360deg)}}.loading-spinner[data-v-88a5ddd9]{animation:spin-88a5ddd9 1s linear infinite;border-radius:9999px;border-width:2px;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-border-opacity: 1;border-top-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}
|
||||
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
import{r as L,c as x,q as B,V,x as o,y as s,L as u,z as e,R as _,u as l,B as h,J as f,T as v,C as m,Q as g,ac as k,P as p}from"./vue-vendor-DV7DYXbz.js";import{_ as z,a as E}from"./index-BahP9Xx9.js";const N={class:"theme-toggle-container"},O={key:0,class:"flex items-center gap-2"},q={class:"relative"},D=["title"],F={key:0,class:"color-menu"},I=["title","onClick"],J={class:"color-name"},P=["title"],Q={key:"sun",class:"fas fa-sun"},R={key:"moon",class:"fas fa-moon"},U={key:"auto",class:"fas fa-circle-half-stroke"},j={key:1,class:"theme-switch-wrapper"},A={class:"relative mr-3"},G=["title"],H={key:0,class:"color-menu"},K=["title","onClick"],W={class:"color-name"},X=["title"],Y={class:"switch-handle"},Z={class:"handle-icon"},ee={key:0,class:"fas fa-sun"},te={key:1,class:"fas fa-moon"},oe={key:2,class:"fas fa-circle-half-stroke"},se={key:2,class:"theme-segmented"},ae=["title","onClick"],le={key:0,class:"ml-1 hidden sm:inline"},ne={__name:"ThemeToggle",props:{mode:{type:String,default:"compact",validator:r=>["compact","dropdown","segmented"].includes(r)},showLabel:{type:Boolean,default:!1}},setup(r){const t=E(),i=L(!1),y=[{value:"light",label:"浅色模式",shortLabel:"浅色",icon:"fas fa-sun"},{value:"dark",label:"深色模式",shortLabel:"深色",icon:"fas fa-moon"},{value:"auto",label:"跟随系统",shortLabel:"自动",icon:"fas fa-circle-half-stroke"}],b=x(()=>{const n=y.find(d=>d.value===t.themeMode);return n?`点击切换主题 - ${n.label}`:"切换主题"}),C=()=>{t.cycleThemeMode()},T=n=>{t.setThemeMode(n)},S=()=>{i.value=!i.value},w=n=>{t.setColorScheme(n),i.value=!1},M=n=>{!n.target.closest(".color-scheme-button")&&!n.target.closest(".color-scheme-button-lg")&&!n.target.closest(".color-menu")&&(i.value=!1)};return B(()=>{document.addEventListener("click",M)}),V(()=>{document.removeEventListener("click",M)}),(n,d)=>(s(),o("div",N,[r.mode==="compact"?(s(),o("div",O,[e("div",q,[e("button",{class:"color-scheme-button",title:`色系: ${l(t).currentColorScheme.name}`,onClick:S},[e("span",{class:"color-dot",style:h({background:l(t).currentColorScheme.primary})},null,4)],8,D),_(v,{name:"dropdown"},{default:f(()=>[i.value?(s(),o("div",F,[(s(!0),o(g,null,k(l(t).ColorSchemes,(a,c)=>(s(),o("button",{key:c,class:m(["color-option",{active:l(t).colorScheme===c}]),title:a.name,onClick:$=>w(c)},[e("span",{class:"color-preview",style:h({background:`linear-gradient(135deg, ${a.primary} 0%, ${a.secondary} 100%)`})},null,4),e("span",J,p(a.name),1)],10,I))),128))])):u("",!0)]),_:1})]),e("button",{class:"theme-toggle-button",title:b.value,onClick:C},[_(v,{mode:"out-in",name:"fade"},{default:f(()=>[l(t).themeMode==="light"?(s(),o("i",Q)):l(t).themeMode==="dark"?(s(),o("i",R)):(s(),o("i",U))]),_:1})],8,P)])):r.mode==="dropdown"?(s(),o("div",j,[e("div",A,[e("button",{class:"color-scheme-button-lg",title:`色系: ${l(t).currentColorScheme.name}`,onClick:S},[e("span",{class:"color-dot-lg",style:h({background:`linear-gradient(135deg, ${l(t).currentColorScheme.primary} 0%, ${l(t).currentColorScheme.secondary} 100%)`})},null,4),d[0]||(d[0]=e("i",{class:"fas fa-palette ml-1 text-xs opacity-60"},null,-1))],8,G),_(v,{name:"dropdown"},{default:f(()=>[i.value?(s(),o("div",H,[(s(!0),o(g,null,k(l(t).ColorSchemes,(a,c)=>(s(),o("button",{key:c,class:m(["color-option",{active:l(t).colorScheme===c}]),title:a.name,onClick:$=>w(c)},[e("span",{class:"color-preview",style:h({background:`linear-gradient(135deg, ${a.primary} 0%, ${a.secondary} 100%)`})},null,4),e("span",W,p(a.name),1)],10,K))),128))])):u("",!0)]),_:1})]),e("button",{class:m(["theme-switch",{"is-dark":l(t).themeMode==="dark","is-auto":l(t).themeMode==="auto"}]),title:b.value,onClick:C},[d[1]||(d[1]=e("div",{class:"switch-bg"},[e("div",{class:"stars"},[e("span"),e("span"),e("span")]),e("div",{class:"clouds"},[e("span"),e("span")])],-1)),e("div",Y,[e("div",Z,[l(t).themeMode==="light"?(s(),o("i",ee)):l(t).themeMode==="dark"?(s(),o("i",te)):(s(),o("i",oe))])])],10,X)])):r.mode==="segmented"?(s(),o("div",se,[(s(),o(g,null,k(y,a=>e("button",{key:a.value,class:m(["theme-segment",{active:l(t).themeMode===a.value}]),title:a.label,onClick:c=>T(a.value)},[e("i",{class:m(a.icon)},null,2),r.showLabel?(s(),o("span",le,p(a.shortLabel),1)):u("",!0)],10,ae)),64))])):u("",!0)]))}},ie=z(ne,[["__scopeId","data-v-d25ea0ef"]]);export{ie as T};
|
||||
import{r as L,c as x,q as B,V,x as o,y as s,L as u,z as e,R as _,u as l,B as h,J as f,T as v,C as m,Q as g,ac as k,P as p}from"./vue-vendor-DV7DYXbz.js";import{_ as z,a as E}from"./index-p8cKYBY8.js";const N={class:"theme-toggle-container"},O={key:0,class:"flex items-center gap-2"},q={class:"relative"},D=["title"],F={key:0,class:"color-menu"},I=["title","onClick"],J={class:"color-name"},P=["title"],Q={key:"sun",class:"fas fa-sun"},R={key:"moon",class:"fas fa-moon"},U={key:"auto",class:"fas fa-circle-half-stroke"},j={key:1,class:"theme-switch-wrapper"},A={class:"relative mr-3"},G=["title"],H={key:0,class:"color-menu"},K=["title","onClick"],W={class:"color-name"},X=["title"],Y={class:"switch-handle"},Z={class:"handle-icon"},ee={key:0,class:"fas fa-sun"},te={key:1,class:"fas fa-moon"},oe={key:2,class:"fas fa-circle-half-stroke"},se={key:2,class:"theme-segmented"},ae=["title","onClick"],le={key:0,class:"ml-1 hidden sm:inline"},ne={__name:"ThemeToggle",props:{mode:{type:String,default:"compact",validator:r=>["compact","dropdown","segmented"].includes(r)},showLabel:{type:Boolean,default:!1}},setup(r){const t=E(),i=L(!1),y=[{value:"light",label:"浅色模式",shortLabel:"浅色",icon:"fas fa-sun"},{value:"dark",label:"深色模式",shortLabel:"深色",icon:"fas fa-moon"},{value:"auto",label:"跟随系统",shortLabel:"自动",icon:"fas fa-circle-half-stroke"}],b=x(()=>{const n=y.find(d=>d.value===t.themeMode);return n?`点击切换主题 - ${n.label}`:"切换主题"}),C=()=>{t.cycleThemeMode()},T=n=>{t.setThemeMode(n)},S=()=>{i.value=!i.value},w=n=>{t.setColorScheme(n),i.value=!1},M=n=>{!n.target.closest(".color-scheme-button")&&!n.target.closest(".color-scheme-button-lg")&&!n.target.closest(".color-menu")&&(i.value=!1)};return B(()=>{document.addEventListener("click",M)}),V(()=>{document.removeEventListener("click",M)}),(n,d)=>(s(),o("div",N,[r.mode==="compact"?(s(),o("div",O,[e("div",q,[e("button",{class:"color-scheme-button",title:`色系: ${l(t).currentColorScheme.name}`,onClick:S},[e("span",{class:"color-dot",style:h({background:l(t).currentColorScheme.primary})},null,4)],8,D),_(v,{name:"dropdown"},{default:f(()=>[i.value?(s(),o("div",F,[(s(!0),o(g,null,k(l(t).ColorSchemes,(a,c)=>(s(),o("button",{key:c,class:m(["color-option",{active:l(t).colorScheme===c}]),title:a.name,onClick:$=>w(c)},[e("span",{class:"color-preview",style:h({background:`linear-gradient(135deg, ${a.primary} 0%, ${a.secondary} 100%)`})},null,4),e("span",J,p(a.name),1)],10,I))),128))])):u("",!0)]),_:1})]),e("button",{class:"theme-toggle-button",title:b.value,onClick:C},[_(v,{mode:"out-in",name:"fade"},{default:f(()=>[l(t).themeMode==="light"?(s(),o("i",Q)):l(t).themeMode==="dark"?(s(),o("i",R)):(s(),o("i",U))]),_:1})],8,P)])):r.mode==="dropdown"?(s(),o("div",j,[e("div",A,[e("button",{class:"color-scheme-button-lg",title:`色系: ${l(t).currentColorScheme.name}`,onClick:S},[e("span",{class:"color-dot-lg",style:h({background:`linear-gradient(135deg, ${l(t).currentColorScheme.primary} 0%, ${l(t).currentColorScheme.secondary} 100%)`})},null,4),d[0]||(d[0]=e("i",{class:"fas fa-palette ml-1 text-xs opacity-60"},null,-1))],8,G),_(v,{name:"dropdown"},{default:f(()=>[i.value?(s(),o("div",H,[(s(!0),o(g,null,k(l(t).ColorSchemes,(a,c)=>(s(),o("button",{key:c,class:m(["color-option",{active:l(t).colorScheme===c}]),title:a.name,onClick:$=>w(c)},[e("span",{class:"color-preview",style:h({background:`linear-gradient(135deg, ${a.primary} 0%, ${a.secondary} 100%)`})},null,4),e("span",W,p(a.name),1)],10,K))),128))])):u("",!0)]),_:1})]),e("button",{class:m(["theme-switch",{"is-dark":l(t).themeMode==="dark","is-auto":l(t).themeMode==="auto"}]),title:b.value,onClick:C},[d[1]||(d[1]=e("div",{class:"switch-bg"},[e("div",{class:"stars"},[e("span"),e("span"),e("span")]),e("div",{class:"clouds"},[e("span"),e("span")])],-1)),e("div",Y,[e("div",Z,[l(t).themeMode==="light"?(s(),o("i",ee)):l(t).themeMode==="dark"?(s(),o("i",te)):(s(),o("i",oe))])])],10,X)])):r.mode==="segmented"?(s(),o("div",se,[(s(),o(g,null,k(y,a=>e("button",{key:a.value,class:m(["theme-segment",{active:l(t).themeMode===a.value}]),title:a.label,onClick:c=>T(a.value)},[e("i",{class:m(a.icon)},null,2),r.showLabel?(s(),o("span",le,p(a.shortLabel),1)):u("",!0)],10,ae)),64))])):u("",!0)]))}},ie=z(ne,[["__scopeId","data-v-d25ea0ef"]]);export{ie as T};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -5,7 +5,7 @@
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Claude Relay Service - 管理后台</title>
|
||||
<script type="module" crossorigin src="/admin-next/assets/index-BahP9Xx9.js"></script>
|
||||
<script type="module" crossorigin src="/admin-next/assets/index-p8cKYBY8.js"></script>
|
||||
<link rel="modulepreload" crossorigin href="/admin-next/assets/vue-vendor-DV7DYXbz.js">
|
||||
<link rel="modulepreload" crossorigin href="/admin-next/assets/vendor-Dr8jvgFu.js">
|
||||
<link rel="modulepreload" crossorigin href="/admin-next/assets/element-plus-BSjV1f9S.js">
|
||||
|
||||
2
web/admin-spa/dist/assets/AccountUsageRecordsView-CP_rUUN8.js
vendored
Normal file
2
web/admin-spa/dist/assets/AccountUsageRecordsView-CP_rUUN8.js
vendored
Normal file
File diff suppressed because one or more lines are too long
71
web/admin-spa/dist/assets/AccountsView-BJBEFFLk.js
vendored
Normal file
71
web/admin-spa/dist/assets/AccountsView-BJBEFFLk.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
web/admin-spa/dist/assets/AccountsView-CSCFM79W.css
vendored
Normal file
1
web/admin-spa/dist/assets/AccountsView-CSCFM79W.css
vendored
Normal file
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
|
||||
.max-h-60[data-v-8ae1c2f4]::-webkit-scrollbar{width:6px}.max-h-60[data-v-8ae1c2f4]::-webkit-scrollbar-track{background:#f3f4f6;border-radius:3px}.max-h-60[data-v-8ae1c2f4]::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.max-h-60[data-v-8ae1c2f4]::-webkit-scrollbar-thumb:hover{background:#9ca3af}
|
||||
1
web/admin-spa/dist/assets/ActionDropdown-DRzr3FOm.js
vendored
Normal file
1
web/admin-spa/dist/assets/ActionDropdown-DRzr3FOm.js
vendored
Normal file
File diff suppressed because one or more lines are too long
2
web/admin-spa/dist/assets/ApiKeyUsageRecordsView-CSVR-NqJ.js
vendored
Normal file
2
web/admin-spa/dist/assets/ApiKeyUsageRecordsView-CSVR-NqJ.js
vendored
Normal file
File diff suppressed because one or more lines are too long
20
web/admin-spa/dist/assets/ApiKeysView-DTZBfWdT.js
vendored
Normal file
20
web/admin-spa/dist/assets/ApiKeysView-DTZBfWdT.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
web/admin-spa/dist/assets/ApiKeysView-M9vmNqGR.css
vendored
Normal file
1
web/admin-spa/dist/assets/ApiKeysView-M9vmNqGR.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
web/admin-spa/dist/assets/ApiStatsView-BDCKkmc6.css
vendored
Normal file
1
web/admin-spa/dist/assets/ApiStatsView-BDCKkmc6.css
vendored
Normal file
File diff suppressed because one or more lines are too long
6
web/admin-spa/dist/assets/ApiStatsView-xY4bNdtf.js
vendored
Normal file
6
web/admin-spa/dist/assets/ApiStatsView-xY4bNdtf.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
web/admin-spa/dist/assets/ConfirmModal-BzWkJtgn.css
vendored
Normal file
1
web/admin-spa/dist/assets/ConfirmModal-BzWkJtgn.css
vendored
Normal file
@@ -0,0 +1 @@
|
||||
.modal[data-v-9b6104f1]{background:#00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dark{background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
|
||||
1
web/admin-spa/dist/assets/ConfirmModal-DjOnjOKk.js
vendored
Normal file
1
web/admin-spa/dist/assets/ConfirmModal-DjOnjOKk.js
vendored
Normal file
@@ -0,0 +1 @@
|
||||
import{_ as s}from"./index-p8cKYBY8.js";import{I as d,y as i,x as g,L as m,z as t,C as o,P as r,a5 as c}from"./vue-vendor-DV7DYXbz.js";const f={key:0,class:"modal fixed inset-0 z-50 flex items-center justify-center p-4"},y={class:"modal-content mx-auto w-full max-w-md rounded-2xl bg-white p-6 shadow-xl dark:bg-gray-800"},x={class:"mb-6 flex items-start gap-4"},u={class:"flex-1"},h={class:"mb-2 text-lg font-bold text-gray-900 dark:text-white"},b={class:"whitespace-pre-line text-sm leading-relaxed text-gray-700 dark:text-gray-300"},p={class:"flex gap-3"},w={__name:"ConfirmModal",props:{show:{type:Boolean,required:!0},title:{type:String,default:""},message:{type:String,default:""},confirmText:{type:String,default:"继续"},cancelText:{type:String,default:"取消"},type:{type:String,default:"primary",validator:e=>["primary","warning","danger"].includes(e)}},emits:["confirm","cancel"],setup(e){return(n,a)=>(i(),d(c,{to:"body"},[e.show?(i(),g("div",f,[t("div",y,[t("div",x,[t("div",{class:o(["flex h-12 w-12 flex-shrink-0 items-center justify-center rounded-full",e.type==="danger"?"bg-gradient-to-br from-red-400 to-red-500":e.type==="warning"?"bg-gradient-to-br from-yellow-400 to-yellow-500":"bg-primary"])},[t("i",{class:o(["text-xl text-white",e.type==="danger"?"fas fa-trash-alt":e.type==="warning"?"fas fa-exclamation":"fas fa-question"])},null,2)],2),t("div",u,[t("h3",h,r(e.title),1),t("p",b,r(e.message),1)])]),t("div",p,[t("button",{class:"flex-1 rounded-xl bg-gray-100 px-4 py-2.5 font-medium text-gray-700 transition-colors hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-200 dark:hover:bg-gray-600",onClick:a[0]||(a[0]=l=>n.$emit("cancel"))},r(e.cancelText),1),t("button",{class:o(["flex-1 rounded-xl px-4 py-2.5 font-medium text-white shadow-sm transition-all",e.type==="danger"?"bg-gradient-to-r from-red-500 to-red-600 hover:from-red-600 hover:to-red-700":e.type==="warning"?"bg-gradient-to-r from-yellow-500 to-orange-500 hover:from-yellow-600 hover:to-orange-600":"bg-primary hover:opacity-90"]),onClick:a[1]||(a[1]=l=>n.$emit("confirm"))},r(e.confirmText),3)])])])):m("",!0)]))}},C=s(w,[["__scopeId","data-v-9b6104f1"]]);export{C};
|
||||
1
web/admin-spa/dist/assets/DashboardView-B7UuY2MN.js
vendored
Normal file
1
web/admin-spa/dist/assets/DashboardView-B7UuY2MN.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
web/admin-spa/dist/assets/DashboardView-C7pS8AeR.css
vendored
Normal file
1
web/admin-spa/dist/assets/DashboardView-C7pS8AeR.css
vendored
Normal file
@@ -0,0 +1 @@
|
||||
.custom-date-picker[data-v-4fa3d294]{font-size:13px}@keyframes spin-4fa3d294{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin[data-v-4fa3d294]{animation:spin-4fa3d294 1s linear infinite}
|
||||
BIN
web/admin-spa/dist/assets/Inter-Bold-BOs3KVhN.woff2
vendored
Normal file
BIN
web/admin-spa/dist/assets/Inter-Bold-BOs3KVhN.woff2
vendored
Normal file
Binary file not shown.
BIN
web/admin-spa/dist/assets/Inter-Light-14LG-y7V.woff2
vendored
Normal file
BIN
web/admin-spa/dist/assets/Inter-Light-14LG-y7V.woff2
vendored
Normal file
Binary file not shown.
BIN
web/admin-spa/dist/assets/Inter-Medium-CDhBSFyE.woff2
vendored
Normal file
BIN
web/admin-spa/dist/assets/Inter-Medium-CDhBSFyE.woff2
vendored
Normal file
Binary file not shown.
BIN
web/admin-spa/dist/assets/Inter-Regular-COLGFB3M.woff2
vendored
Normal file
BIN
web/admin-spa/dist/assets/Inter-Regular-COLGFB3M.woff2
vendored
Normal file
Binary file not shown.
BIN
web/admin-spa/dist/assets/Inter-SemiBold-BAEEcJ4E.woff2
vendored
Normal file
BIN
web/admin-spa/dist/assets/Inter-SemiBold-BAEEcJ4E.woff2
vendored
Normal file
Binary file not shown.
1
web/admin-spa/dist/assets/LoginView-IQR-nBC6.js
vendored
Normal file
1
web/admin-spa/dist/assets/LoginView-IQR-nBC6.js
vendored
Normal file
@@ -0,0 +1 @@
|
||||
import{c as b,r as f,q as y,x as a,z as s,R as w,L as d,Q as h,u as o,P as i,Y as v,K as u,aq as p,O as c,y as r}from"./vue-vendor-DV7DYXbz.js";import{u as _,a as k}from"./index-p8cKYBY8.js";import{T as S}from"./ThemeToggle-CDMqn7Rp.js";import"./element-plus-BSjV1f9S.js";import"./vendor-Dr8jvgFu.js";const L={class:"flex min-h-screen items-center justify-center p-4 sm:p-6"},T={class:"fixed right-4 top-4 z-50"},V={class:"glass-strong w-full max-w-md rounded-xl p-6 shadow-2xl sm:rounded-2xl sm:p-8 md:rounded-3xl md:p-10"},N={class:"mb-6 text-center sm:mb-8"},q={class:"mx-auto mb-4 flex h-16 w-16 items-center justify-center overflow-hidden rounded-xl border border-gray-300/30 bg-gradient-to-br from-blue-500/20 to-purple-500/20 backdrop-blur-sm sm:mb-6 sm:h-20 sm:w-20 sm:rounded-2xl"},D=["src"],E={key:1,class:"fas fa-cloud text-2xl text-gray-700 sm:text-3xl"},I={key:1,class:"h-10 w-10 animate-pulse rounded bg-gray-300/50 sm:h-12 sm:w-12"},j={key:0,class:"header-title mb-2 text-2xl font-bold text-white sm:text-3xl"},B={key:1,class:"mx-auto mb-2 h-8 w-48 animate-pulse rounded bg-gray-300/50 sm:h-9 sm:w-64"},M=["disabled"],z={key:0,class:"fas fa-sign-in-alt mr-2"},F={key:1,class:"loading-spinner mr-2"},O={key:0,class:"mt-4 rounded-lg border border-red-500/30 bg-red-500/20 p-3 text-center text-xs text-red-800 backdrop-blur-sm dark:text-red-400 sm:mt-6 sm:rounded-xl sm:p-4 sm:text-sm"},Y={__name:"LoginView",setup(U){const e=_(),g=k(),m=b(()=>e.oemLoading),n=f({username:"",password:""});y(()=>{g.initTheme(),e.loadOemSettings()});const x=async()=>{await e.login(n.value)};return(A,t)=>(r(),a("div",L,[s("div",T,[w(S,{mode:"dropdown"})]),s("div",V,[s("div",N,[s("div",q,[m.value?(r(),a("div",I)):(r(),a(h,{key:0},[o(e).oemSettings.siteIconData||o(e).oemSettings.siteIcon?(r(),a("img",{key:0,alt:"Logo",class:"h-10 w-10 object-contain sm:h-12 sm:w-12",src:o(e).oemSettings.siteIconData||o(e).oemSettings.siteIcon,onError:t[0]||(t[0]=l=>l.target.style.display="none")},null,40,D)):(r(),a("i",E))],64))]),!m.value&&o(e).oemSettings.siteName?(r(),a("h1",j,i(o(e).oemSettings.siteName),1)):m.value?(r(),a("div",B)):d("",!0),t[3]||(t[3]=s("p",{class:"text-base text-gray-600 dark:text-gray-400 sm:text-lg"},"管理后台",-1))]),s("form",{class:"space-y-4 sm:space-y-6",onSubmit:v(x,["prevent"])},[s("div",null,[t[4]||(t[4]=s("label",{class:"mb-2 block text-sm font-semibold text-gray-900 dark:text-gray-100 sm:mb-3",for:"username"},"用户名",-1)),u(s("input",{id:"username","onUpdate:modelValue":t[1]||(t[1]=l=>n.value.username=l),autocomplete:"username",class:"form-input w-full",name:"username",placeholder:"请输入用户名",required:"",type:"text"},null,512),[[p,n.value.username]])]),s("div",null,[t[5]||(t[5]=s("label",{class:"mb-2 block text-sm font-semibold text-gray-900 dark:text-gray-100 sm:mb-3",for:"password"},"密码",-1)),u(s("input",{id:"password","onUpdate:modelValue":t[2]||(t[2]=l=>n.value.password=l),autocomplete:"current-password",class:"form-input w-full",name:"password",placeholder:"请输入密码",required:"",type:"password"},null,512),[[p,n.value.password]])]),s("button",{class:"btn btn-primary w-full px-4 py-3 text-base font-semibold sm:px-6 sm:py-4 sm:text-lg",disabled:o(e).loginLoading,type:"submit"},[o(e).loginLoading?d("",!0):(r(),a("i",z)),o(e).loginLoading?(r(),a("div",F)):d("",!0),c(" "+i(o(e).loginLoading?"登录中...":"登录"),1)],8,M)],32),o(e).loginError?(r(),a("div",O,[t[6]||(t[6]=s("i",{class:"fas fa-exclamation-triangle mr-2"},null,-1)),c(i(o(e).loginError),1)])):d("",!0)])]))}};export{Y as default};
|
||||
1
web/admin-spa/dist/assets/LogoTitle-D3uO3Ady.js
vendored
Normal file
1
web/admin-spa/dist/assets/LogoTitle-D3uO3Ady.js
vendored
Normal file
@@ -0,0 +1 @@
|
||||
import{_ as d}from"./index-p8cKYBY8.js";import{x as t,y as a,z as l,Q as n,L as o,A as c,C as g,P as r}from"./vue-vendor-DV7DYXbz.js";const u={class:"flex items-center gap-4"},y={class:"flex h-12 w-12 flex-shrink-0 items-center justify-center overflow-hidden rounded-xl border border-gray-300/30 bg-gradient-to-br from-blue-500/20 to-purple-500/20 backdrop-blur-sm dark:border-gray-600/30 dark:from-blue-600/20 dark:to-purple-600/20"},f=["src"],m={key:1,class:"fas fa-cloud text-xl text-gray-700 dark:text-gray-300"},h={key:1,class:"h-8 w-8 animate-pulse rounded bg-gray-300/50 dark:bg-gray-600/50"},x={class:"flex min-h-[48px] flex-col justify-center"},b={class:"flex items-center gap-3"},k={key:1,class:"h-8 w-64 animate-pulse rounded bg-gray-300/50 dark:bg-gray-600/50"},_={key:0,class:"mt-0.5 text-sm leading-tight text-gray-600 dark:text-gray-400"},p={__name:"LogoTitle",props:{loading:{type:Boolean,default:!1},title:{type:String,default:""},subtitle:{type:String,default:""},logoSrc:{type:String,default:""},titleClass:{type:String,default:"text-gray-900"}},setup(e){const i=s=>{s.target.style.display="none"};return(s,S)=>(a(),t("div",u,[l("div",y,[e.loading?(a(),t("div",h)):(a(),t(n,{key:0},[e.logoSrc?(a(),t("img",{key:0,alt:"Logo",class:"h-8 w-8 object-contain",src:e.logoSrc,onError:i},null,40,f)):(a(),t("i",m))],64))]),l("div",x,[l("div",b,[!e.loading&&e.title?(a(),t("h1",{key:0,class:g(["header-title text-2xl font-bold leading-tight",e.titleClass])},r(e.title),3)):e.loading?(a(),t("div",k)):o("",!0),c(s.$slots,"after-title",{},void 0,!0)]),e.subtitle?(a(),t("p",_,r(e.subtitle),1)):o("",!0)])]))}},w=d(p,[["__scopeId","data-v-15eb26fd"]]);export{w as L};
|
||||
@@ -1 +0,0 @@
|
||||
@keyframes pulse-15eb26fd{0%{opacity:.7}50%{opacity:.4}to{opacity:.7}}.animate-pulse[data-v-15eb26fd]{animation:pulse-15eb26fd 2s cubic-bezier(.4,0,.6,1) infinite}.header-title[data-v-15eb26fd]{text-shadow:0 1px 2px rgba(0,0,0,.1)}
|
||||
1
web/admin-spa/dist/assets/MainLayout-CNiZbAPe.js
vendored
Normal file
1
web/admin-spa/dist/assets/MainLayout-CNiZbAPe.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
web/admin-spa/dist/assets/MainLayout-DUrvC5cF.css
vendored
Normal file
1
web/admin-spa/dist/assets/MainLayout-DUrvC5cF.css
vendored
Normal file
@@ -0,0 +1 @@
|
||||
.user-menu-button[data-v-2abe1d62]{position:relative;overflow:hidden;min-height:38px;background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);box-shadow:0 4px 12px rgba(var(--primary-rgb),.3)}.user-menu-button[data-v-2abe1d62]:hover{box-shadow:0 6px 16px rgba(var(--primary-rgb),.4)}.user-menu-button[data-v-2abe1d62]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.user-menu-button[data-v-2abe1d62]:hover:before{left:100%}.user-menu-dropdown[data-v-2abe1d62]{margin-top:8px;animation:slideDown-2abe1d62 .3s ease-out}@keyframes slideDown-2abe1d62{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.fade-enter-active[data-v-2abe1d62],.fade-leave-active[data-v-2abe1d62]{transition:opacity .3s}.fade-enter-from[data-v-2abe1d62],.fade-leave-to[data-v-2abe1d62]{opacity:0}
|
||||
3
web/admin-spa/dist/assets/QuotaCardsView-C9pcyLDd.js
vendored
Normal file
3
web/admin-spa/dist/assets/QuotaCardsView-C9pcyLDd.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
web/admin-spa/dist/assets/RecordDetailModal-CZv4ajwT.css
vendored
Normal file
1
web/admin-spa/dist/assets/RecordDetailModal-CZv4ajwT.css
vendored
Normal file
@@ -0,0 +1 @@
|
||||
.record-detail-modal[data-v-8a7345f4] .el-dialog__header{margin:0;padding:16px 16px 0}.record-detail-modal[data-v-8a7345f4] .el-dialog__body{padding:12px 16px 4px}.record-detail-modal[data-v-8a7345f4] .el-dialog__footer{padding:8px 16px 16px}
|
||||
1
web/admin-spa/dist/assets/RecordDetailModal-Dhlxv7-H.js
vendored
Normal file
1
web/admin-spa/dist/assets/RecordDetailModal-Dhlxv7-H.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
web/admin-spa/dist/assets/SettingsView-C2vqQK2s.css
vendored
Normal file
1
web/admin-spa/dist/assets/SettingsView-C2vqQK2s.css
vendored
Normal file
@@ -0,0 +1 @@
|
||||
.settings-container[data-v-88a5ddd9]{min-height:calc(100vh - 300px)}.card[data-v-88a5ddd9]{background:#fff;border-radius:12px;box-shadow:0 2px 12px #0000001a;border:1px solid #e5e7eb}:root.dark .card[data-v-88a5ddd9]{background:var(--bg-gradient-start);border:1px solid var(--border-color);box-shadow:0 2px 12px #0000004d}.table-container[data-v-88a5ddd9]{overflow:hidden;border-radius:8px;border:1px solid #f3f4f6}:root.dark .table-container[data-v-88a5ddd9]{border:1px solid var(--border-color)}.table-row[data-v-88a5ddd9]{transition:background-color .2s ease}.table-row[data-v-88a5ddd9]:hover{background-color:#f9fafb}:root.dark .table-row[data-v-88a5ddd9]:hover{background-color:var(--bg-gradient-mid)}.form-input[data-v-88a5ddd9]{width:100%;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));padding:.5rem 1rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.form-input[data-v-88a5ddd9]:focus{border-color:transparent;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.btn[data-v-88a5ddd9]{display:inline-flex;align-items:center;justify-content:center;border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:600;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.btn[data-v-88a5ddd9]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.btn-primary[data-v-88a5ddd9]{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.btn-primary[data-v-88a5ddd9]:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.btn-primary[data-v-88a5ddd9]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.btn-success[data-v-88a5ddd9]{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.btn-success[data-v-88a5ddd9]:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.btn-success[data-v-88a5ddd9]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(34 197 94 / var(--tw-ring-opacity, 1))}.loading-spinner[data-v-88a5ddd9]{height:1.25rem;width:1.25rem}@keyframes spin-88a5ddd9{to{transform:rotate(360deg)}}.loading-spinner[data-v-88a5ddd9]{animation:spin-88a5ddd9 1s linear infinite;border-radius:9999px;border-width:2px;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-border-opacity: 1;border-top-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}
|
||||
3
web/admin-spa/dist/assets/SettingsView-D5GLNPYR.js
vendored
Normal file
3
web/admin-spa/dist/assets/SettingsView-D5GLNPYR.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
web/admin-spa/dist/assets/ThemeToggle-CDMqn7Rp.js
vendored
Normal file
1
web/admin-spa/dist/assets/ThemeToggle-CDMqn7Rp.js
vendored
Normal file
@@ -0,0 +1 @@
|
||||
import{r as L,c as x,q as B,V,x as o,y as s,L as u,z as e,R as _,u as l,B as h,J as f,T as v,C as m,Q as g,ac as k,P as p}from"./vue-vendor-DV7DYXbz.js";import{_ as z,a as E}from"./index-p8cKYBY8.js";const N={class:"theme-toggle-container"},O={key:0,class:"flex items-center gap-2"},q={class:"relative"},D=["title"],F={key:0,class:"color-menu"},I=["title","onClick"],J={class:"color-name"},P=["title"],Q={key:"sun",class:"fas fa-sun"},R={key:"moon",class:"fas fa-moon"},U={key:"auto",class:"fas fa-circle-half-stroke"},j={key:1,class:"theme-switch-wrapper"},A={class:"relative mr-3"},G=["title"],H={key:0,class:"color-menu"},K=["title","onClick"],W={class:"color-name"},X=["title"],Y={class:"switch-handle"},Z={class:"handle-icon"},ee={key:0,class:"fas fa-sun"},te={key:1,class:"fas fa-moon"},oe={key:2,class:"fas fa-circle-half-stroke"},se={key:2,class:"theme-segmented"},ae=["title","onClick"],le={key:0,class:"ml-1 hidden sm:inline"},ne={__name:"ThemeToggle",props:{mode:{type:String,default:"compact",validator:r=>["compact","dropdown","segmented"].includes(r)},showLabel:{type:Boolean,default:!1}},setup(r){const t=E(),i=L(!1),y=[{value:"light",label:"浅色模式",shortLabel:"浅色",icon:"fas fa-sun"},{value:"dark",label:"深色模式",shortLabel:"深色",icon:"fas fa-moon"},{value:"auto",label:"跟随系统",shortLabel:"自动",icon:"fas fa-circle-half-stroke"}],b=x(()=>{const n=y.find(d=>d.value===t.themeMode);return n?`点击切换主题 - ${n.label}`:"切换主题"}),C=()=>{t.cycleThemeMode()},T=n=>{t.setThemeMode(n)},S=()=>{i.value=!i.value},w=n=>{t.setColorScheme(n),i.value=!1},M=n=>{!n.target.closest(".color-scheme-button")&&!n.target.closest(".color-scheme-button-lg")&&!n.target.closest(".color-menu")&&(i.value=!1)};return B(()=>{document.addEventListener("click",M)}),V(()=>{document.removeEventListener("click",M)}),(n,d)=>(s(),o("div",N,[r.mode==="compact"?(s(),o("div",O,[e("div",q,[e("button",{class:"color-scheme-button",title:`色系: ${l(t).currentColorScheme.name}`,onClick:S},[e("span",{class:"color-dot",style:h({background:l(t).currentColorScheme.primary})},null,4)],8,D),_(v,{name:"dropdown"},{default:f(()=>[i.value?(s(),o("div",F,[(s(!0),o(g,null,k(l(t).ColorSchemes,(a,c)=>(s(),o("button",{key:c,class:m(["color-option",{active:l(t).colorScheme===c}]),title:a.name,onClick:$=>w(c)},[e("span",{class:"color-preview",style:h({background:`linear-gradient(135deg, ${a.primary} 0%, ${a.secondary} 100%)`})},null,4),e("span",J,p(a.name),1)],10,I))),128))])):u("",!0)]),_:1})]),e("button",{class:"theme-toggle-button",title:b.value,onClick:C},[_(v,{mode:"out-in",name:"fade"},{default:f(()=>[l(t).themeMode==="light"?(s(),o("i",Q)):l(t).themeMode==="dark"?(s(),o("i",R)):(s(),o("i",U))]),_:1})],8,P)])):r.mode==="dropdown"?(s(),o("div",j,[e("div",A,[e("button",{class:"color-scheme-button-lg",title:`色系: ${l(t).currentColorScheme.name}`,onClick:S},[e("span",{class:"color-dot-lg",style:h({background:`linear-gradient(135deg, ${l(t).currentColorScheme.primary} 0%, ${l(t).currentColorScheme.secondary} 100%)`})},null,4),d[0]||(d[0]=e("i",{class:"fas fa-palette ml-1 text-xs opacity-60"},null,-1))],8,G),_(v,{name:"dropdown"},{default:f(()=>[i.value?(s(),o("div",H,[(s(!0),o(g,null,k(l(t).ColorSchemes,(a,c)=>(s(),o("button",{key:c,class:m(["color-option",{active:l(t).colorScheme===c}]),title:a.name,onClick:$=>w(c)},[e("span",{class:"color-preview",style:h({background:`linear-gradient(135deg, ${a.primary} 0%, ${a.secondary} 100%)`})},null,4),e("span",W,p(a.name),1)],10,K))),128))])):u("",!0)]),_:1})]),e("button",{class:m(["theme-switch",{"is-dark":l(t).themeMode==="dark","is-auto":l(t).themeMode==="auto"}]),title:b.value,onClick:C},[d[1]||(d[1]=e("div",{class:"switch-bg"},[e("div",{class:"stars"},[e("span"),e("span"),e("span")]),e("div",{class:"clouds"},[e("span"),e("span")])],-1)),e("div",Y,[e("div",Z,[l(t).themeMode==="light"?(s(),o("i",ee)):l(t).themeMode==="dark"?(s(),o("i",te)):(s(),o("i",oe))])])],10,X)])):r.mode==="segmented"?(s(),o("div",se,[(s(),o(g,null,k(y,a=>e("button",{key:a.value,class:m(["theme-segment",{active:l(t).themeMode===a.value}]),title:a.label,onClick:c=>T(a.value)},[e("i",{class:m(a.icon)},null,2),r.showLabel?(s(),o("span",le,p(a.shortLabel),1)):u("",!0)],10,ae)),64))])):u("",!0)]))}},ie=z(ne,[["__scopeId","data-v-d25ea0ef"]]);export{ie as T};
|
||||
1
web/admin-spa/dist/assets/ThemeToggle-MCe3g2y3.css
vendored
Normal file
1
web/admin-spa/dist/assets/ThemeToggle-MCe3g2y3.css
vendored
Normal file
File diff suppressed because one or more lines are too long
2
web/admin-spa/dist/assets/TutorialView-BvEU86aX.js
vendored
Normal file
2
web/admin-spa/dist/assets/TutorialView-BvEU86aX.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
web/admin-spa/dist/assets/TutorialView-DfJPWFZG.css
vendored
Normal file
1
web/admin-spa/dist/assets/TutorialView-DfJPWFZG.css
vendored
Normal file
@@ -0,0 +1 @@
|
||||
.tutorial-container[data-v-c8fcc5f9]{min-height:calc(100vh - 300px)}
|
||||
1
web/admin-spa/dist/assets/UserDashboardView-BXEOeITE.js
vendored
Normal file
1
web/admin-spa/dist/assets/UserDashboardView-BXEOeITE.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
web/admin-spa/dist/assets/UserLoginView-VaYkUmeT.js
vendored
Normal file
1
web/admin-spa/dist/assets/UserLoginView-VaYkUmeT.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
web/admin-spa/dist/assets/UserManagementView-DR1syK5X.js
vendored
Normal file
1
web/admin-spa/dist/assets/UserManagementView-DR1syK5X.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
web/admin-spa/dist/assets/WindowCountdown-Cz478C_V.js
vendored
Normal file
1
web/admin-spa/dist/assets/WindowCountdown-Cz478C_V.js
vendored
Normal file
@@ -0,0 +1 @@
|
||||
import{r as P,c as y,o as L,q as R,V as B,x as r,y as o,z as n,L as c,P as l,O as g,B as w,C as v}from"./vue-vendor-DV7DYXbz.js";const E={class:"space-y-1"},I={class:"flex items-center justify-between text-xs"},j={class:"text-gray-500"},F={key:0,class:"font-medium text-gray-700"},V={key:1,class:"font-medium text-orange-600"},z={key:2,class:"font-medium text-gray-500"},D={key:3,class:"font-medium text-gray-400"},W={key:0,class:"space-y-0.5"},K={key:0,class:"space-y-0.5"},O={class:"flex items-center justify-between text-xs"},U={class:"text-gray-600"},A={class:"h-1 w-full rounded-full bg-gray-200"},G={key:1,class:"space-y-0.5"},H={class:"flex items-center justify-between text-xs"},J={class:"text-gray-600"},Q={class:"h-1 w-full rounded-full bg-gray-200"},X={key:2,class:"space-y-0.5"},Y={class:"flex items-center justify-between text-xs"},Z={class:"text-gray-600"},ee={class:"h-1 w-full rounded-full bg-gray-200"},te={key:1,class:"text-xs text-gray-500"},se={key:0},ne={key:1},re={key:2},ie={__name:"WindowCountdown",props:{label:{type:String,default:"窗口限制"},rateLimitWindow:{type:Number,required:!0},windowStartTime:{type:Number,default:null},windowEndTime:{type:Number,default:null},windowRemainingSeconds:{type:Number,default:null},currentRequests:{type:Number,default:0},requestLimit:{type:Number,default:0},currentTokens:{type:Number,default:0},tokenLimit:{type:Number,default:0},currentCost:{type:Number,default:0},costLimit:{type:Number,default:0},showProgress:{type:Boolean,default:!0},showTooltip:{type:Boolean,default:!1}},setup(a){const s=a,i=P(s.windowRemainingSeconds);let u=null;const m=y(()=>s.windowStartTime===null?"notStarted":i.value===0?"expired":i.value>0?"active":"unknown"),_=y(()=>s.requestLimit>0),T=y(()=>s.tokenLimit>0),C=y(()=>s.costLimit>0),q=e=>{if(e==null)return"--:--";const t=Math.floor(e/3600),d=Math.floor(e%3600/60),k=e%60;return t>0?`${t}h ${d}m`:d>0?`${d}m ${k}s`:`${k}s`},N=e=>{const t=Math.floor(e/3600),d=Math.floor(e%3600/60);return t>0?`${t}小时${d}分钟`:`${d}分钟`},h=e=>e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":e.toString(),x=()=>{if(!s.requestLimit||s.requestLimit===0)return 0;const e=(s.currentRequests||0)/s.requestLimit*100;return Math.min(e,100)},S=()=>{const e=x();return e>=100?"bg-red-500":e>=80?"bg-yellow-500":"bg-blue-500"},p=()=>{if(!s.tokenLimit||s.tokenLimit===0)return 0;const e=(s.currentTokens||0)/s.tokenLimit*100;return Math.min(e,100)},M=()=>{const e=p();return e>=100?"bg-red-500":e>=80?"bg-yellow-500":"bg-purple-500"},b=()=>{if(!s.costLimit||s.costLimit===0)return 0;const e=(s.currentCost||0)/s.costLimit*100;return Math.min(e,100)},$=()=>{const e=b();return e>=100?"bg-red-500":e>=80?"bg-yellow-500":"bg-green-500"},f=()=>{if(s.windowEndTime&&i.value>0){const e=Date.now(),t=Math.max(0,Math.floor((s.windowEndTime-e)/1e3));i.value=t,t===0&&u&&(clearInterval(u),u=null)}};return L(()=>s.windowRemainingSeconds,e=>{i.value=e}),L(()=>s.windowEndTime,e=>{e&&(f(),!u&&i.value>0&&(u=setInterval(f,1e3)))}),R(()=>{s.windowEndTime&&i.value>0&&(f(),u=setInterval(f,1e3))}),B(()=>{u&&clearInterval(u)}),(e,t)=>(o(),r("div",E,[n("div",I,[n("span",j,l(a.label),1),m.value==="active"?(o(),r("span",F,[t[0]||(t[0]=n("i",{class:"fas fa-clock mr-1 text-blue-500"},null,-1)),g(" "+l(q(i.value)),1)])):m.value==="expired"?(o(),r("span",V,t[1]||(t[1]=[n("i",{class:"fas fa-sync-alt mr-1"},null,-1),g(" 窗口已过期 ",-1)]))):m.value==="notStarted"?(o(),r("span",z,t[2]||(t[2]=[n("i",{class:"fas fa-pause-circle mr-1"},null,-1),g(" 窗口未激活 ",-1)]))):(o(),r("span",D,l(a.rateLimitWindow)+" 分钟 ",1))]),a.showProgress?(o(),r("div",W,[_.value?(o(),r("div",K,[n("div",O,[t[3]||(t[3]=n("span",{class:"text-gray-400"},"请求",-1)),n("span",U,l(a.currentRequests||0)+"/"+l(a.requestLimit),1)]),n("div",A,[n("div",{class:v(["h-1 rounded-full transition-all duration-300",S()]),style:w({width:x()+"%"})},null,6)])])):c("",!0),T.value?(o(),r("div",G,[n("div",H,[t[4]||(t[4]=n("span",{class:"text-gray-400"},"Token",-1)),n("span",J,l(h(a.currentTokens||0))+"/"+l(h(a.tokenLimit)),1)]),n("div",Q,[n("div",{class:v(["h-1 rounded-full transition-all duration-300",M()]),style:w({width:p()+"%"})},null,6)])])):c("",!0),C.value?(o(),r("div",X,[n("div",Y,[t[5]||(t[5]=n("span",{class:"text-gray-400"},"费用",-1)),n("span",Z," $"+l((a.currentCost||0).toFixed(2))+"/$"+l(a.costLimit.toFixed(2)),1)]),n("div",ee,[n("div",{class:v(["h-1 rounded-full transition-all duration-300",$()]),style:w({width:b()+"%"})},null,6)])])):c("",!0)])):c("",!0),m.value==="active"&&a.showTooltip?(o(),r("div",te,[t[6]||(t[6]=n("i",{class:"fas fa-info-circle mr-1"},null,-1)),i.value<60?(o(),r("span",se,"即将重置")):i.value<300?(o(),r("span",ne,l(Math.ceil(i.value/60))+" 分钟后重置",1)):(o(),r("span",re,l(N(i.value))+"后重置",1))])):c("",!0)]))}};export{ie as _};
|
||||
13
web/admin-spa/dist/assets/chart-yFHxLHpB.js
vendored
Normal file
13
web/admin-spa/dist/assets/chart-yFHxLHpB.js
vendored
Normal file
File diff suppressed because one or more lines are too long
13
web/admin-spa/dist/assets/element-plus-BSjV1f9S.js
vendored
Normal file
13
web/admin-spa/dist/assets/element-plus-BSjV1f9S.js
vendored
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
BIN
web/admin-spa/dist/assets/fa-brands-400-D1LuMI3I.ttf
vendored
BIN
web/admin-spa/dist/assets/fa-brands-400-D1LuMI3I.ttf
vendored
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
web/admin-spa/dist/assets/fa-solid-900-D0aA9rwL.ttf
vendored
BIN
web/admin-spa/dist/assets/fa-solid-900-D0aA9rwL.ttf
vendored
Binary file not shown.
Binary file not shown.
Binary file not shown.
5
web/admin-spa/dist/assets/index-C0PReR6i.css
vendored
Normal file
5
web/admin-spa/dist/assets/index-C0PReR6i.css
vendored
Normal file
File diff suppressed because one or more lines are too long
23
web/admin-spa/dist/assets/index-p8cKYBY8.js
vendored
Normal file
23
web/admin-spa/dist/assets/index-p8cKYBY8.js
vendored
Normal file
File diff suppressed because one or more lines are too long
171
web/admin-spa/dist/assets/vendor-Dr8jvgFu.js
vendored
171
web/admin-spa/dist/assets/vendor-Dr8jvgFu.js
vendored
File diff suppressed because one or more lines are too long
25
web/admin-spa/dist/assets/vue-vendor-DV7DYXbz.js
vendored
Normal file
25
web/admin-spa/dist/assets/vue-vendor-DV7DYXbz.js
vendored
Normal file
File diff suppressed because one or more lines are too long
20
web/admin-spa/dist/index.html
vendored
20
web/admin-spa/dist/index.html
vendored
@@ -1,20 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Claude Relay Service - 管理后台</title>
|
||||
<script type="module" crossorigin src="/admin-next/assets/index-BahP9Xx9.js"></script>
|
||||
<link rel="modulepreload" crossorigin href="/admin-next/assets/vue-vendor-DV7DYXbz.js">
|
||||
<link rel="modulepreload" crossorigin href="/admin-next/assets/vendor-Dr8jvgFu.js">
|
||||
<link rel="modulepreload" crossorigin href="/admin-next/assets/element-plus-BSjV1f9S.js">
|
||||
<link rel="stylesheet" crossorigin href="/admin-next/assets/element-plus-BWHEPMNp.css">
|
||||
<link rel="stylesheet" crossorigin href="/admin-next/assets/index-C0PReR6i.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
Reference in New Issue
Block a user