mirror of
https://github.com/Wei-Shaw/claude-relay-service.git
synced 2026-01-23 00:53:33 +00:00
chore: update frontend build for v1.1.116 [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.115
|
||||
Build Date: 2025-08-18 11:16:39 UTC
|
||||
Version: 1.1.116
|
||||
Build Date: 2025-08-21 03:09:16 UTC
|
||||
|
||||
File diff suppressed because one or more lines are too long
21
assets/ApiKeysView-87pX_vxa.js
Normal file
21
assets/ApiKeysView-87pX_vxa.js
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
.custom-scrollbar[data-v-b315d95a]{scrollbar-width:thin;scrollbar-color:#cbd5e0 #f7fafc}.custom-scrollbar[data-v-b315d95a]::-webkit-scrollbar{width:6px}.custom-scrollbar[data-v-b315d95a]::-webkit-scrollbar-track{background:#f7fafc}.custom-scrollbar[data-v-b315d95a]::-webkit-scrollbar-thumb{background-color:#cbd5e0;border-radius:3px}.custom-scrollbar[data-v-b315d95a]::-webkit-scrollbar-thumb:hover{background-color:#a0aec0}pre[data-v-75e2b028],pre[data-v-b0b904b9]{white-space:pre-wrap;word-wrap:break-word}@keyframes fadeIn-cfb0d627{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn[data-v-cfb0d627]{animation:fadeIn-cfb0d627 .2s ease-out}.loading-spinner[data-v-cfb0d627]{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin-cfb0d627 .8s linear infinite;display:inline-block}@keyframes spin-cfb0d627{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tab-content[data-v-99508535]{min-height:calc(100vh - 300px)}.table-container[data-v-99508535]{overflow-x:auto;border-radius:12px;border:1px solid rgba(0,0,0,.05)}.table-row[data-v-99508535]{transition:all .2s ease}.table-row[data-v-99508535]:hover{background-color:#00000005}.loading-spinner[data-v-99508535]{width:24px;height:24px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:spin-99508535 1s linear infinite}@keyframes spin-99508535{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.api-key-date-picker[data-v-99508535] .el-input__inner{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.api-key-date-picker[data-v-99508535] .el-input__inner:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1));--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.api-key-date-picker[data-v-99508535] .el-range-separator{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}
|
||||
.custom-scrollbar[data-v-b315d95a]{scrollbar-width:thin;scrollbar-color:#cbd5e0 #f7fafc}.custom-scrollbar[data-v-b315d95a]::-webkit-scrollbar{width:6px}.custom-scrollbar[data-v-b315d95a]::-webkit-scrollbar-track{background:#f7fafc}.custom-scrollbar[data-v-b315d95a]::-webkit-scrollbar-thumb{background-color:#cbd5e0;border-radius:3px}.custom-scrollbar[data-v-b315d95a]::-webkit-scrollbar-thumb:hover{background-color:#a0aec0}pre[data-v-75e2b028],pre[data-v-b0b904b9]{white-space:pre-wrap;word-wrap:break-word}@keyframes fadeIn-cfb0d627{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn[data-v-cfb0d627]{animation:fadeIn-cfb0d627 .2s ease-out}.loading-spinner[data-v-cfb0d627]{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin-cfb0d627 .8s linear infinite;display:inline-block}@keyframes spin-cfb0d627{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tab-content[data-v-bf245221]{min-height:calc(100vh - 300px)}.table-container[data-v-bf245221]{overflow-x:auto;border-radius:12px;border:1px solid rgba(0,0,0,.05)}.table-row[data-v-bf245221]{transition:all .2s ease}.table-row[data-v-bf245221]:hover{background-color:#00000005}.loading-spinner[data-v-bf245221]{width:24px;height:24px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:spin-bf245221 1s linear infinite}@keyframes spin-bf245221{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.api-key-date-picker[data-v-bf245221] .el-input__inner{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.api-key-date-picker[data-v-bf245221] .el-input__inner:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1));--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.api-key-date-picker[data-v-bf245221] .el-range-separator{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}
|
||||
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
import{r as f,c as D,q as E,Z as R,x as s,y as n,z as c,I as N,L as v,C as d,P as L,R as T,J as W,B as $,Q as O,ac as q,T as A,a5 as H,D as I}from"./vue-vendor-DfnFpxGJ.js";import{_ as P}from"./index-KCMFVMd0.js";const F={class:"relative"},J={class:"select-none whitespace-nowrap text-sm font-medium text-gray-700"},M={class:"max-h-60 overflow-y-auto py-1"},Q=["onClick"],U={key:1,class:"fas fa-check ml-auto pl-3 text-xs text-blue-600"},Z={__name:"CustomDropdown",props:{modelValue:{type:[String,Number],default:""},options:{type:Array,required:!0},placeholder:{type:String,default:"请选择"},icon:{type:String,default:""},iconColor:{type:String,default:"text-gray-500"}},emits:["update:modelValue","change"],setup(o,{emit:V}){const w=o,g=V,t=f(!1),r=f(null),u=f(null),h=f({}),B=D(()=>{const e=w.options.find(i=>i.value===w.modelValue);return e?e.label:""}),S=async()=>{t.value=!t.value,t.value&&(await I(),y())},m=()=>{t.value=!1},z=e=>{g("update:modelValue",e.value),g("change",e.value),m()},y=()=>{if(!r.value||!t.value)return;const e=r.value.getBoundingClientRect(),i=250,a=window.innerHeight-e.bottom,C=e.top;let p,l;a>=i||a>=C?p=e.bottom+8:p=e.top-i-8,l=e.left;const _=200;l+_>window.innerWidth&&(l=window.innerWidth-_-10),l<10&&(l=10),h.value={top:`${p}px`,left:`${l}px`,minWidth:`${e.width}px`}},x=()=>{t.value&&y()},b=()=>{t.value&&m()},k=e=>{!r.value||!t.value||r.value.contains(e.target)||(u.value&&!u.value.contains(e.target)?m():u.value||m())};return E(()=>{window.addEventListener("scroll",x,!0),window.addEventListener("resize",b),document.addEventListener("click",k)}),R(()=>{window.removeEventListener("scroll",x,!0),window.removeEventListener("resize",b),document.removeEventListener("click",k)}),(e,i)=>(n(),s("div",F,[c("div",{ref_key:"triggerRef",ref:r,class:d(["relative flex cursor-pointer items-center gap-2 rounded-lg border border-gray-200 bg-white px-3 py-2 shadow-sm transition-all duration-200 hover:shadow-md",[t.value&&"border-blue-400 shadow-md"]]),onClick:S},[o.icon?(n(),s("i",{key:0,class:d(["fas",o.icon,"text-sm",o.iconColor])},null,2)):v("",!0),c("span",J,L(B.value||o.placeholder),1),c("i",{class:d(["fas fa-chevron-down ml-auto text-xs text-gray-400 transition-transform duration-200",t.value&&"rotate-180"])},null,2)],2),(n(),N(H,{to:"body"},[T(A,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"transform scale-95 opacity-0","enter-to-class":"transform scale-100 opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"transform scale-100 opacity-100","leave-to-class":"transform scale-95 opacity-0"},{default:W(()=>[t.value?(n(),s("div",{key:0,ref_key:"dropdownRef",ref:u,class:"fixed z-[9999] min-w-max overflow-hidden rounded-lg border border-gray-200 bg-white shadow-lg",style:$(h.value)},[c("div",M,[(n(!0),s(O,null,q(o.options,a=>(n(),s("div",{key:a.value,class:d(["flex cursor-pointer items-center gap-2 whitespace-nowrap px-3 py-2 text-sm transition-colors duration-150",[a.value===o.modelValue?"bg-blue-50 font-medium text-blue-700":"text-gray-700 hover:bg-gray-50"]]),onClick:C=>z(a)},[a.icon?(n(),s("i",{key:0,class:d(["fas",a.icon,"text-xs"])},null,2)):v("",!0),c("span",null,L(a.label),1),a.value===o.modelValue?(n(),s("i",U)):v("",!0)],10,Q))),128))])],4)):v("",!0)]),_:1})]))]))}},K=P(Z,[["__scopeId","data-v-87609db5"]]);export{K as C};
|
||||
import{r as f,c as D,q as E,Z as R,x as s,y as n,z as c,I as N,L as v,C as d,P as L,R as T,J as W,B as $,Q as O,ac as q,T as A,a5 as H,D as I}from"./vue-vendor-DfnFpxGJ.js";import{_ as P}from"./index-NpFg0ijv.js";const F={class:"relative"},J={class:"select-none whitespace-nowrap text-sm font-medium text-gray-700"},M={class:"max-h-60 overflow-y-auto py-1"},Q=["onClick"],U={key:1,class:"fas fa-check ml-auto pl-3 text-xs text-blue-600"},Z={__name:"CustomDropdown",props:{modelValue:{type:[String,Number],default:""},options:{type:Array,required:!0},placeholder:{type:String,default:"请选择"},icon:{type:String,default:""},iconColor:{type:String,default:"text-gray-500"}},emits:["update:modelValue","change"],setup(o,{emit:V}){const w=o,g=V,t=f(!1),r=f(null),u=f(null),h=f({}),B=D(()=>{const e=w.options.find(i=>i.value===w.modelValue);return e?e.label:""}),S=async()=>{t.value=!t.value,t.value&&(await I(),y())},m=()=>{t.value=!1},z=e=>{g("update:modelValue",e.value),g("change",e.value),m()},y=()=>{if(!r.value||!t.value)return;const e=r.value.getBoundingClientRect(),i=250,a=window.innerHeight-e.bottom,C=e.top;let p,l;a>=i||a>=C?p=e.bottom+8:p=e.top-i-8,l=e.left;const _=200;l+_>window.innerWidth&&(l=window.innerWidth-_-10),l<10&&(l=10),h.value={top:`${p}px`,left:`${l}px`,minWidth:`${e.width}px`}},x=()=>{t.value&&y()},b=()=>{t.value&&m()},k=e=>{!r.value||!t.value||r.value.contains(e.target)||(u.value&&!u.value.contains(e.target)?m():u.value||m())};return E(()=>{window.addEventListener("scroll",x,!0),window.addEventListener("resize",b),document.addEventListener("click",k)}),R(()=>{window.removeEventListener("scroll",x,!0),window.removeEventListener("resize",b),document.removeEventListener("click",k)}),(e,i)=>(n(),s("div",F,[c("div",{ref_key:"triggerRef",ref:r,class:d(["relative flex cursor-pointer items-center gap-2 rounded-lg border border-gray-200 bg-white px-3 py-2 shadow-sm transition-all duration-200 hover:shadow-md",[t.value&&"border-blue-400 shadow-md"]]),onClick:S},[o.icon?(n(),s("i",{key:0,class:d(["fas",o.icon,"text-sm",o.iconColor])},null,2)):v("",!0),c("span",J,L(B.value||o.placeholder),1),c("i",{class:d(["fas fa-chevron-down ml-auto text-xs text-gray-400 transition-transform duration-200",t.value&&"rotate-180"])},null,2)],2),(n(),N(H,{to:"body"},[T(A,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"transform scale-95 opacity-0","enter-to-class":"transform scale-100 opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"transform scale-100 opacity-100","leave-to-class":"transform scale-95 opacity-0"},{default:W(()=>[t.value?(n(),s("div",{key:0,ref_key:"dropdownRef",ref:u,class:"fixed z-[9999] min-w-max overflow-hidden rounded-lg border border-gray-200 bg-white shadow-lg",style:$(h.value)},[c("div",M,[(n(!0),s(O,null,q(o.options,a=>(n(),s("div",{key:a.value,class:d(["flex cursor-pointer items-center gap-2 whitespace-nowrap px-3 py-2 text-sm transition-colors duration-150",[a.value===o.modelValue?"bg-blue-50 font-medium text-blue-700":"text-gray-700 hover:bg-gray-50"]]),onClick:C=>z(a)},[a.icon?(n(),s("i",{key:0,class:d(["fas",a.icon,"text-xs"])},null,2)):v("",!0),c("span",null,L(a.label),1),a.value===o.modelValue?(n(),s("i",U)):v("",!0)],10,Q))),128))])],4)):v("",!0)]),_:1})]))]))}},K=P(Z,[["__scopeId","data-v-87609db5"]]);export{K as C};
|
||||
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
import{c as x,r as b,q as f,x as a,z as t,L as i,Q as y,u as o,P as d,Y as w,K as u,aq as c,O as p,y as n}from"./vue-vendor-DfnFpxGJ.js";import{_,u as v}from"./index-KCMFVMd0.js";import"./element-plus-BaMaLFJp.js";import"./vendor-BDiMbLwQ.js";const h={class:"flex min-h-screen items-center justify-center p-4 sm:p-6"},k={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"},L={class:"mb-6 text-center sm:mb-8"},S={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"},V=["src"],I={key:1,class:"fas fa-cloud text-2xl text-gray-700 sm:text-3xl"},N={key:1,class:"h-10 w-10 animate-pulse rounded bg-gray-300/50 sm:h-12 sm:w-12"},q={key:0,class:"header-title mb-2 text-2xl font-bold text-white sm:text-3xl"},D={key:1,class:"mx-auto mb-2 h-8 w-48 animate-pulse rounded bg-gray-300/50 sm:h-9 sm:w-64"},E=["disabled"],j={key:0,class:"fas fa-sign-in-alt mr-2"},B={key:1,class:"loading-spinner mr-2"},M={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 sm:mt-6 sm:rounded-xl sm:p-4 sm:text-sm"},F={__name:"LoginView",setup(O){const e=v(),m=x(()=>e.oemLoading),l=b({username:"",password:""});f(()=>{e.loadOemSettings()});const g=async()=>{await e.login(l.value)};return(T,s)=>(n(),a("div",h,[t("div",k,[t("div",L,[t("div",S,[m.value?(n(),a("div",N)):(n(),a(y,{key:0},[o(e).oemSettings.siteIconData||o(e).oemSettings.siteIcon?(n(),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:s[0]||(s[0]=r=>r.target.style.display="none")},null,40,V)):(n(),a("i",I))],64))]),!m.value&&o(e).oemSettings.siteName?(n(),a("h1",q,d(o(e).oemSettings.siteName),1)):m.value?(n(),a("div",D)):i("",!0),s[3]||(s[3]=t("p",{class:"text-base text-gray-600 sm:text-lg"},"管理后台",-1))]),t("form",{class:"space-y-4 sm:space-y-6",onSubmit:w(g,["prevent"])},[t("div",null,[s[4]||(s[4]=t("label",{class:"mb-2 block text-sm font-semibold text-gray-900 sm:mb-3"},"用户名",-1)),u(t("input",{"onUpdate:modelValue":s[1]||(s[1]=r=>l.value.username=r),class:"form-input w-full",placeholder:"请输入用户名",required:"",type:"text"},null,512),[[c,l.value.username]])]),t("div",null,[s[5]||(s[5]=t("label",{class:"mb-2 block text-sm font-semibold text-gray-900 sm:mb-3"},"密码",-1)),u(t("input",{"onUpdate:modelValue":s[2]||(s[2]=r=>l.value.password=r),class:"form-input w-full",placeholder:"请输入密码",required:"",type:"password"},null,512),[[c,l.value.password]])]),t("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?i("",!0):(n(),a("i",j)),o(e).loginLoading?(n(),a("div",B)):i("",!0),p(" "+d(o(e).loginLoading?"登录中...":"登录"),1)],8,E)],32),o(e).loginError?(n(),a("div",M,[s[6]||(s[6]=t("i",{class:"fas fa-exclamation-triangle mr-2"},null,-1)),p(d(o(e).loginError),1)])):i("",!0)])]))}},K=_(F,[["__scopeId","data-v-1990a2ea"]]);export{K as default};
|
||||
import{c as x,r as b,q as f,x as a,z as t,L as i,Q as y,u as o,P as d,Y as w,K as u,aq as c,O as p,y as n}from"./vue-vendor-DfnFpxGJ.js";import{_,u as v}from"./index-NpFg0ijv.js";import"./element-plus-BaMaLFJp.js";import"./vendor-BDiMbLwQ.js";const h={class:"flex min-h-screen items-center justify-center p-4 sm:p-6"},k={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"},L={class:"mb-6 text-center sm:mb-8"},S={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"},V=["src"],I={key:1,class:"fas fa-cloud text-2xl text-gray-700 sm:text-3xl"},N={key:1,class:"h-10 w-10 animate-pulse rounded bg-gray-300/50 sm:h-12 sm:w-12"},q={key:0,class:"header-title mb-2 text-2xl font-bold text-white sm:text-3xl"},D={key:1,class:"mx-auto mb-2 h-8 w-48 animate-pulse rounded bg-gray-300/50 sm:h-9 sm:w-64"},E=["disabled"],j={key:0,class:"fas fa-sign-in-alt mr-2"},B={key:1,class:"loading-spinner mr-2"},M={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 sm:mt-6 sm:rounded-xl sm:p-4 sm:text-sm"},F={__name:"LoginView",setup(O){const e=v(),m=x(()=>e.oemLoading),l=b({username:"",password:""});f(()=>{e.loadOemSettings()});const g=async()=>{await e.login(l.value)};return(T,s)=>(n(),a("div",h,[t("div",k,[t("div",L,[t("div",S,[m.value?(n(),a("div",N)):(n(),a(y,{key:0},[o(e).oemSettings.siteIconData||o(e).oemSettings.siteIcon?(n(),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:s[0]||(s[0]=r=>r.target.style.display="none")},null,40,V)):(n(),a("i",I))],64))]),!m.value&&o(e).oemSettings.siteName?(n(),a("h1",q,d(o(e).oemSettings.siteName),1)):m.value?(n(),a("div",D)):i("",!0),s[3]||(s[3]=t("p",{class:"text-base text-gray-600 sm:text-lg"},"管理后台",-1))]),t("form",{class:"space-y-4 sm:space-y-6",onSubmit:w(g,["prevent"])},[t("div",null,[s[4]||(s[4]=t("label",{class:"mb-2 block text-sm font-semibold text-gray-900 sm:mb-3"},"用户名",-1)),u(t("input",{"onUpdate:modelValue":s[1]||(s[1]=r=>l.value.username=r),class:"form-input w-full",placeholder:"请输入用户名",required:"",type:"text"},null,512),[[c,l.value.username]])]),t("div",null,[s[5]||(s[5]=t("label",{class:"mb-2 block text-sm font-semibold text-gray-900 sm:mb-3"},"密码",-1)),u(t("input",{"onUpdate:modelValue":s[2]||(s[2]=r=>l.value.password=r),class:"form-input w-full",placeholder:"请输入密码",required:"",type:"password"},null,512),[[c,l.value.password]])]),t("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?i("",!0):(n(),a("i",j)),o(e).loginLoading?(n(),a("div",B)):i("",!0),p(" "+d(o(e).loginLoading?"登录中...":"登录"),1)],8,E)],32),o(e).loginError?(n(),a("div",M,[s[6]||(s[6]=t("i",{class:"fas fa-exclamation-triangle mr-2"},null,-1)),p(d(o(e).loginError),1)])):i("",!0)])]))}},K=_(F,[["__scopeId","data-v-1990a2ea"]]);export{K as default};
|
||||
@@ -1 +1 @@
|
||||
import{_ as r}from"./index-KCMFVMd0.js";import{x as t,y as s,z as a,Q as d,L as o,A as c,C as g,P as i}from"./vue-vendor-DfnFpxGJ.js";const u={class:"flex items-center gap-4"},f={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"},y=["src"],h={key:1,class:"fas fa-cloud text-xl text-gray-700"},m={key:1,class:"h-8 w-8 animate-pulse rounded bg-gray-300/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"},_={key:0,class:"mt-0.5 text-sm leading-tight text-gray-600"},S={__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 n=l=>{l.target.style.display="none"};return(l,v)=>(s(),t("div",u,[a("div",f,[e.loading?(s(),t("div",m)):(s(),t(d,{key:0},[e.logoSrc?(s(),t("img",{key:0,alt:"Logo",class:"h-8 w-8 object-contain",src:e.logoSrc,onError:n},null,40,y)):(s(),t("i",h))],64))]),a("div",x,[a("div",b,[!e.loading&&e.title?(s(),t("h1",{key:0,class:g(["header-title text-2xl font-bold leading-tight",e.titleClass])},i(e.title),3)):e.loading?(s(),t("div",k)):o("",!0),c(l.$slots,"after-title",{},void 0,!0)]),e.subtitle?(s(),t("p",_,i(e.subtitle),1)):o("",!0)])]))}},w=r(S,[["__scopeId","data-v-10fd6442"]]);export{w as L};
|
||||
import{_ as r}from"./index-NpFg0ijv.js";import{x as t,y as s,z as a,Q as d,L as o,A as c,C as g,P as i}from"./vue-vendor-DfnFpxGJ.js";const u={class:"flex items-center gap-4"},f={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"},y=["src"],h={key:1,class:"fas fa-cloud text-xl text-gray-700"},m={key:1,class:"h-8 w-8 animate-pulse rounded bg-gray-300/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"},_={key:0,class:"mt-0.5 text-sm leading-tight text-gray-600"},S={__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 n=l=>{l.target.style.display="none"};return(l,v)=>(s(),t("div",u,[a("div",f,[e.loading?(s(),t("div",m)):(s(),t(d,{key:0},[e.logoSrc?(s(),t("img",{key:0,alt:"Logo",class:"h-8 w-8 object-contain",src:e.logoSrc,onError:n},null,40,y)):(s(),t("i",h))],64))]),a("div",x,[a("div",b,[!e.loading&&e.title?(s(),t("h1",{key:0,class:g(["header-title text-2xl font-bold leading-tight",e.titleClass])},i(e.title),3)):e.loading?(s(),t("div",k)):o("",!0),c(l.$slots,"after-title",{},void 0,!0)]),e.subtitle?(s(),t("p",_,i(e.subtitle),1)):o("",!0)])]))}},w=r(S,[["__scopeId","data-v-10fd6442"]]);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
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
2
assets/index-NpFg0ijv.js
Normal file
2
assets/index-NpFg0ijv.js
Normal file
File diff suppressed because one or more lines are too long
@@ -19,12 +19,12 @@
|
||||
<link rel="preconnect" href="https://cdnjs.cloudflare.com" crossorigin>
|
||||
<link rel="dns-prefetch" href="https://cdn.jsdelivr.net">
|
||||
<link rel="dns-prefetch" href="https://cdnjs.cloudflare.com">
|
||||
<script type="module" crossorigin src="/admin-next/assets/index-KCMFVMd0.js"></script>
|
||||
<script type="module" crossorigin src="/admin-next/assets/index-NpFg0ijv.js"></script>
|
||||
<link rel="modulepreload" crossorigin href="/admin-next/assets/vue-vendor-DfnFpxGJ.js">
|
||||
<link rel="modulepreload" crossorigin href="/admin-next/assets/vendor-BDiMbLwQ.js">
|
||||
<link rel="modulepreload" crossorigin href="/admin-next/assets/element-plus-BaMaLFJp.js">
|
||||
<link rel="stylesheet" crossorigin href="/admin-next/assets/element-plus-CPnoEkWW.css">
|
||||
<link rel="stylesheet" crossorigin href="/admin-next/assets/index-DuIYNWRC.css">
|
||||
<link rel="stylesheet" crossorigin href="/admin-next/assets/index-DfGhMiYR.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
|
||||
.loading-spinner[data-v-4b61f9b3]{width:24px;height:24px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:spin-4b61f9b3 1s linear infinite}@keyframes spin-4b61f9b3{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.accounts-container[data-v-4b61f9b3]{min-height:calc(100vh - 300px)}.table-container[data-v-4b61f9b3]{overflow-x:auto;border-radius:12px;border:1px solid rgba(0,0,0,.05)}.table-row[data-v-4b61f9b3]{transition:all .2s ease}.table-row[data-v-4b61f9b3]:hover{background-color:#00000005}
|
||||
21
web/admin-spa/dist/assets/ApiKeysView-87pX_vxa.js
vendored
Normal file
21
web/admin-spa/dist/assets/ApiKeysView-87pX_vxa.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
1
web/admin-spa/dist/assets/ApiKeysView-NFUpEvXz.css
vendored
Normal file
1
web/admin-spa/dist/assets/ApiKeysView-NFUpEvXz.css
vendored
Normal file
@@ -0,0 +1 @@
|
||||
.custom-scrollbar[data-v-b315d95a]{scrollbar-width:thin;scrollbar-color:#cbd5e0 #f7fafc}.custom-scrollbar[data-v-b315d95a]::-webkit-scrollbar{width:6px}.custom-scrollbar[data-v-b315d95a]::-webkit-scrollbar-track{background:#f7fafc}.custom-scrollbar[data-v-b315d95a]::-webkit-scrollbar-thumb{background-color:#cbd5e0;border-radius:3px}.custom-scrollbar[data-v-b315d95a]::-webkit-scrollbar-thumb:hover{background-color:#a0aec0}pre[data-v-75e2b028],pre[data-v-b0b904b9]{white-space:pre-wrap;word-wrap:break-word}@keyframes fadeIn-cfb0d627{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn[data-v-cfb0d627]{animation:fadeIn-cfb0d627 .2s ease-out}.loading-spinner[data-v-cfb0d627]{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin-cfb0d627 .8s linear infinite;display:inline-block}@keyframes spin-cfb0d627{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tab-content[data-v-bf245221]{min-height:calc(100vh - 300px)}.table-container[data-v-bf245221]{overflow-x:auto;border-radius:12px;border:1px solid rgba(0,0,0,.05)}.table-row[data-v-bf245221]{transition:all .2s ease}.table-row[data-v-bf245221]:hover{background-color:#00000005}.loading-spinner[data-v-bf245221]{width:24px;height:24px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:spin-bf245221 1s linear infinite}@keyframes spin-bf245221{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.api-key-date-picker[data-v-bf245221] .el-input__inner{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.api-key-date-picker[data-v-bf245221] .el-input__inner:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1));--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.api-key-date-picker[data-v-bf245221] .el-range-separator{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}
|
||||
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{r as f,c as D,q as E,Z as R,x as s,y as n,z as c,I as N,L as v,C as d,P as L,R as T,J as W,B as $,Q as O,ac as q,T as A,a5 as H,D as I}from"./vue-vendor-DfnFpxGJ.js";import{_ as P}from"./index-KCMFVMd0.js";const F={class:"relative"},J={class:"select-none whitespace-nowrap text-sm font-medium text-gray-700"},M={class:"max-h-60 overflow-y-auto py-1"},Q=["onClick"],U={key:1,class:"fas fa-check ml-auto pl-3 text-xs text-blue-600"},Z={__name:"CustomDropdown",props:{modelValue:{type:[String,Number],default:""},options:{type:Array,required:!0},placeholder:{type:String,default:"请选择"},icon:{type:String,default:""},iconColor:{type:String,default:"text-gray-500"}},emits:["update:modelValue","change"],setup(o,{emit:V}){const w=o,g=V,t=f(!1),r=f(null),u=f(null),h=f({}),B=D(()=>{const e=w.options.find(i=>i.value===w.modelValue);return e?e.label:""}),S=async()=>{t.value=!t.value,t.value&&(await I(),y())},m=()=>{t.value=!1},z=e=>{g("update:modelValue",e.value),g("change",e.value),m()},y=()=>{if(!r.value||!t.value)return;const e=r.value.getBoundingClientRect(),i=250,a=window.innerHeight-e.bottom,C=e.top;let p,l;a>=i||a>=C?p=e.bottom+8:p=e.top-i-8,l=e.left;const _=200;l+_>window.innerWidth&&(l=window.innerWidth-_-10),l<10&&(l=10),h.value={top:`${p}px`,left:`${l}px`,minWidth:`${e.width}px`}},x=()=>{t.value&&y()},b=()=>{t.value&&m()},k=e=>{!r.value||!t.value||r.value.contains(e.target)||(u.value&&!u.value.contains(e.target)?m():u.value||m())};return E(()=>{window.addEventListener("scroll",x,!0),window.addEventListener("resize",b),document.addEventListener("click",k)}),R(()=>{window.removeEventListener("scroll",x,!0),window.removeEventListener("resize",b),document.removeEventListener("click",k)}),(e,i)=>(n(),s("div",F,[c("div",{ref_key:"triggerRef",ref:r,class:d(["relative flex cursor-pointer items-center gap-2 rounded-lg border border-gray-200 bg-white px-3 py-2 shadow-sm transition-all duration-200 hover:shadow-md",[t.value&&"border-blue-400 shadow-md"]]),onClick:S},[o.icon?(n(),s("i",{key:0,class:d(["fas",o.icon,"text-sm",o.iconColor])},null,2)):v("",!0),c("span",J,L(B.value||o.placeholder),1),c("i",{class:d(["fas fa-chevron-down ml-auto text-xs text-gray-400 transition-transform duration-200",t.value&&"rotate-180"])},null,2)],2),(n(),N(H,{to:"body"},[T(A,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"transform scale-95 opacity-0","enter-to-class":"transform scale-100 opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"transform scale-100 opacity-100","leave-to-class":"transform scale-95 opacity-0"},{default:W(()=>[t.value?(n(),s("div",{key:0,ref_key:"dropdownRef",ref:u,class:"fixed z-[9999] min-w-max overflow-hidden rounded-lg border border-gray-200 bg-white shadow-lg",style:$(h.value)},[c("div",M,[(n(!0),s(O,null,q(o.options,a=>(n(),s("div",{key:a.value,class:d(["flex cursor-pointer items-center gap-2 whitespace-nowrap px-3 py-2 text-sm transition-colors duration-150",[a.value===o.modelValue?"bg-blue-50 font-medium text-blue-700":"text-gray-700 hover:bg-gray-50"]]),onClick:C=>z(a)},[a.icon?(n(),s("i",{key:0,class:d(["fas",a.icon,"text-xs"])},null,2)):v("",!0),c("span",null,L(a.label),1),a.value===o.modelValue?(n(),s("i",U)):v("",!0)],10,Q))),128))])],4)):v("",!0)]),_:1})]))]))}},K=P(Z,[["__scopeId","data-v-87609db5"]]);export{K as C};
|
||||
import{r as f,c as D,q as E,Z as R,x as s,y as n,z as c,I as N,L as v,C as d,P as L,R as T,J as W,B as $,Q as O,ac as q,T as A,a5 as H,D as I}from"./vue-vendor-DfnFpxGJ.js";import{_ as P}from"./index-NpFg0ijv.js";const F={class:"relative"},J={class:"select-none whitespace-nowrap text-sm font-medium text-gray-700"},M={class:"max-h-60 overflow-y-auto py-1"},Q=["onClick"],U={key:1,class:"fas fa-check ml-auto pl-3 text-xs text-blue-600"},Z={__name:"CustomDropdown",props:{modelValue:{type:[String,Number],default:""},options:{type:Array,required:!0},placeholder:{type:String,default:"请选择"},icon:{type:String,default:""},iconColor:{type:String,default:"text-gray-500"}},emits:["update:modelValue","change"],setup(o,{emit:V}){const w=o,g=V,t=f(!1),r=f(null),u=f(null),h=f({}),B=D(()=>{const e=w.options.find(i=>i.value===w.modelValue);return e?e.label:""}),S=async()=>{t.value=!t.value,t.value&&(await I(),y())},m=()=>{t.value=!1},z=e=>{g("update:modelValue",e.value),g("change",e.value),m()},y=()=>{if(!r.value||!t.value)return;const e=r.value.getBoundingClientRect(),i=250,a=window.innerHeight-e.bottom,C=e.top;let p,l;a>=i||a>=C?p=e.bottom+8:p=e.top-i-8,l=e.left;const _=200;l+_>window.innerWidth&&(l=window.innerWidth-_-10),l<10&&(l=10),h.value={top:`${p}px`,left:`${l}px`,minWidth:`${e.width}px`}},x=()=>{t.value&&y()},b=()=>{t.value&&m()},k=e=>{!r.value||!t.value||r.value.contains(e.target)||(u.value&&!u.value.contains(e.target)?m():u.value||m())};return E(()=>{window.addEventListener("scroll",x,!0),window.addEventListener("resize",b),document.addEventListener("click",k)}),R(()=>{window.removeEventListener("scroll",x,!0),window.removeEventListener("resize",b),document.removeEventListener("click",k)}),(e,i)=>(n(),s("div",F,[c("div",{ref_key:"triggerRef",ref:r,class:d(["relative flex cursor-pointer items-center gap-2 rounded-lg border border-gray-200 bg-white px-3 py-2 shadow-sm transition-all duration-200 hover:shadow-md",[t.value&&"border-blue-400 shadow-md"]]),onClick:S},[o.icon?(n(),s("i",{key:0,class:d(["fas",o.icon,"text-sm",o.iconColor])},null,2)):v("",!0),c("span",J,L(B.value||o.placeholder),1),c("i",{class:d(["fas fa-chevron-down ml-auto text-xs text-gray-400 transition-transform duration-200",t.value&&"rotate-180"])},null,2)],2),(n(),N(H,{to:"body"},[T(A,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"transform scale-95 opacity-0","enter-to-class":"transform scale-100 opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"transform scale-100 opacity-100","leave-to-class":"transform scale-95 opacity-0"},{default:W(()=>[t.value?(n(),s("div",{key:0,ref_key:"dropdownRef",ref:u,class:"fixed z-[9999] min-w-max overflow-hidden rounded-lg border border-gray-200 bg-white shadow-lg",style:$(h.value)},[c("div",M,[(n(!0),s(O,null,q(o.options,a=>(n(),s("div",{key:a.value,class:d(["flex cursor-pointer items-center gap-2 whitespace-nowrap px-3 py-2 text-sm transition-colors duration-150",[a.value===o.modelValue?"bg-blue-50 font-medium text-blue-700":"text-gray-700 hover:bg-gray-50"]]),onClick:C=>z(a)},[a.icon?(n(),s("i",{key:0,class:d(["fas",a.icon,"text-xs"])},null,2)):v("",!0),c("span",null,L(a.label),1),a.value===o.modelValue?(n(),s("i",U)):v("",!0)],10,Q))),128))])],4)):v("",!0)]),_:1})]))]))}},K=P(Z,[["__scopeId","data-v-87609db5"]]);export{K as C};
|
||||
1
web/admin-spa/dist/assets/CustomDropdown-lYzmkVRt.css
vendored
Normal file
1
web/admin-spa/dist/assets/CustomDropdown-lYzmkVRt.css
vendored
Normal file
@@ -0,0 +1 @@
|
||||
.max-h-60[data-v-87609db5]::-webkit-scrollbar{width:6px}.max-h-60[data-v-87609db5]::-webkit-scrollbar-track{background:#f3f4f6;border-radius:3px}.max-h-60[data-v-87609db5]::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.max-h-60[data-v-87609db5]::-webkit-scrollbar-thumb:hover{background:#9ca3af}
|
||||
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
|
||||
.custom-date-picker[data-v-ceff92ae] .el-input__inner{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.custom-date-picker[data-v-ceff92ae] .el-input__inner:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1));--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.custom-date-picker[data-v-ceff92ae] .el-input__inner{font-size:13px;padding:0 10px}.custom-date-picker[data-v-ceff92ae] .el-range-separator{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1));padding:0 2px}.custom-date-picker[data-v-ceff92ae] .el-range-input{font-size:13px}@keyframes spin-ceff92ae{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin[data-v-ceff92ae]{animation:spin-ceff92ae 1s linear infinite}
|
||||
@@ -1 +1 @@
|
||||
import{c as x,r as b,q as f,x as a,z as t,L as i,Q as y,u as o,P as d,Y as w,K as u,aq as c,O as p,y as n}from"./vue-vendor-DfnFpxGJ.js";import{_,u as v}from"./index-KCMFVMd0.js";import"./element-plus-BaMaLFJp.js";import"./vendor-BDiMbLwQ.js";const h={class:"flex min-h-screen items-center justify-center p-4 sm:p-6"},k={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"},L={class:"mb-6 text-center sm:mb-8"},S={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"},V=["src"],I={key:1,class:"fas fa-cloud text-2xl text-gray-700 sm:text-3xl"},N={key:1,class:"h-10 w-10 animate-pulse rounded bg-gray-300/50 sm:h-12 sm:w-12"},q={key:0,class:"header-title mb-2 text-2xl font-bold text-white sm:text-3xl"},D={key:1,class:"mx-auto mb-2 h-8 w-48 animate-pulse rounded bg-gray-300/50 sm:h-9 sm:w-64"},E=["disabled"],j={key:0,class:"fas fa-sign-in-alt mr-2"},B={key:1,class:"loading-spinner mr-2"},M={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 sm:mt-6 sm:rounded-xl sm:p-4 sm:text-sm"},F={__name:"LoginView",setup(O){const e=v(),m=x(()=>e.oemLoading),l=b({username:"",password:""});f(()=>{e.loadOemSettings()});const g=async()=>{await e.login(l.value)};return(T,s)=>(n(),a("div",h,[t("div",k,[t("div",L,[t("div",S,[m.value?(n(),a("div",N)):(n(),a(y,{key:0},[o(e).oemSettings.siteIconData||o(e).oemSettings.siteIcon?(n(),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:s[0]||(s[0]=r=>r.target.style.display="none")},null,40,V)):(n(),a("i",I))],64))]),!m.value&&o(e).oemSettings.siteName?(n(),a("h1",q,d(o(e).oemSettings.siteName),1)):m.value?(n(),a("div",D)):i("",!0),s[3]||(s[3]=t("p",{class:"text-base text-gray-600 sm:text-lg"},"管理后台",-1))]),t("form",{class:"space-y-4 sm:space-y-6",onSubmit:w(g,["prevent"])},[t("div",null,[s[4]||(s[4]=t("label",{class:"mb-2 block text-sm font-semibold text-gray-900 sm:mb-3"},"用户名",-1)),u(t("input",{"onUpdate:modelValue":s[1]||(s[1]=r=>l.value.username=r),class:"form-input w-full",placeholder:"请输入用户名",required:"",type:"text"},null,512),[[c,l.value.username]])]),t("div",null,[s[5]||(s[5]=t("label",{class:"mb-2 block text-sm font-semibold text-gray-900 sm:mb-3"},"密码",-1)),u(t("input",{"onUpdate:modelValue":s[2]||(s[2]=r=>l.value.password=r),class:"form-input w-full",placeholder:"请输入密码",required:"",type:"password"},null,512),[[c,l.value.password]])]),t("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?i("",!0):(n(),a("i",j)),o(e).loginLoading?(n(),a("div",B)):i("",!0),p(" "+d(o(e).loginLoading?"登录中...":"登录"),1)],8,E)],32),o(e).loginError?(n(),a("div",M,[s[6]||(s[6]=t("i",{class:"fas fa-exclamation-triangle mr-2"},null,-1)),p(d(o(e).loginError),1)])):i("",!0)])]))}},K=_(F,[["__scopeId","data-v-1990a2ea"]]);export{K as default};
|
||||
import{c as x,r as b,q as f,x as a,z as t,L as i,Q as y,u as o,P as d,Y as w,K as u,aq as c,O as p,y as n}from"./vue-vendor-DfnFpxGJ.js";import{_,u as v}from"./index-NpFg0ijv.js";import"./element-plus-BaMaLFJp.js";import"./vendor-BDiMbLwQ.js";const h={class:"flex min-h-screen items-center justify-center p-4 sm:p-6"},k={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"},L={class:"mb-6 text-center sm:mb-8"},S={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"},V=["src"],I={key:1,class:"fas fa-cloud text-2xl text-gray-700 sm:text-3xl"},N={key:1,class:"h-10 w-10 animate-pulse rounded bg-gray-300/50 sm:h-12 sm:w-12"},q={key:0,class:"header-title mb-2 text-2xl font-bold text-white sm:text-3xl"},D={key:1,class:"mx-auto mb-2 h-8 w-48 animate-pulse rounded bg-gray-300/50 sm:h-9 sm:w-64"},E=["disabled"],j={key:0,class:"fas fa-sign-in-alt mr-2"},B={key:1,class:"loading-spinner mr-2"},M={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 sm:mt-6 sm:rounded-xl sm:p-4 sm:text-sm"},F={__name:"LoginView",setup(O){const e=v(),m=x(()=>e.oemLoading),l=b({username:"",password:""});f(()=>{e.loadOemSettings()});const g=async()=>{await e.login(l.value)};return(T,s)=>(n(),a("div",h,[t("div",k,[t("div",L,[t("div",S,[m.value?(n(),a("div",N)):(n(),a(y,{key:0},[o(e).oemSettings.siteIconData||o(e).oemSettings.siteIcon?(n(),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:s[0]||(s[0]=r=>r.target.style.display="none")},null,40,V)):(n(),a("i",I))],64))]),!m.value&&o(e).oemSettings.siteName?(n(),a("h1",q,d(o(e).oemSettings.siteName),1)):m.value?(n(),a("div",D)):i("",!0),s[3]||(s[3]=t("p",{class:"text-base text-gray-600 sm:text-lg"},"管理后台",-1))]),t("form",{class:"space-y-4 sm:space-y-6",onSubmit:w(g,["prevent"])},[t("div",null,[s[4]||(s[4]=t("label",{class:"mb-2 block text-sm font-semibold text-gray-900 sm:mb-3"},"用户名",-1)),u(t("input",{"onUpdate:modelValue":s[1]||(s[1]=r=>l.value.username=r),class:"form-input w-full",placeholder:"请输入用户名",required:"",type:"text"},null,512),[[c,l.value.username]])]),t("div",null,[s[5]||(s[5]=t("label",{class:"mb-2 block text-sm font-semibold text-gray-900 sm:mb-3"},"密码",-1)),u(t("input",{"onUpdate:modelValue":s[2]||(s[2]=r=>l.value.password=r),class:"form-input w-full",placeholder:"请输入密码",required:"",type:"password"},null,512),[[c,l.value.password]])]),t("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?i("",!0):(n(),a("i",j)),o(e).loginLoading?(n(),a("div",B)):i("",!0),p(" "+d(o(e).loginLoading?"登录中...":"登录"),1)],8,E)],32),o(e).loginError?(n(),a("div",M,[s[6]||(s[6]=t("i",{class:"fas fa-exclamation-triangle mr-2"},null,-1)),p(d(o(e).loginError),1)])):i("",!0)])]))}},K=_(F,[["__scopeId","data-v-1990a2ea"]]);export{K as default};
|
||||
1
web/admin-spa/dist/assets/LogoTitle-Bv46QP3i.css
vendored
Normal file
1
web/admin-spa/dist/assets/LogoTitle-Bv46QP3i.css
vendored
Normal file
@@ -0,0 +1 @@
|
||||
@keyframes pulse-10fd6442{0%{opacity:.7}50%{opacity:.4}to{opacity:.7}}.animate-pulse[data-v-10fd6442]{animation:pulse-10fd6442 2s cubic-bezier(.4,0,.6,1) infinite}.header-title[data-v-10fd6442]{text-shadow:0 1px 2px rgba(0,0,0,.1)}
|
||||
@@ -1 +1 @@
|
||||
import{_ as r}from"./index-KCMFVMd0.js";import{x as t,y as s,z as a,Q as d,L as o,A as c,C as g,P as i}from"./vue-vendor-DfnFpxGJ.js";const u={class:"flex items-center gap-4"},f={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"},y=["src"],h={key:1,class:"fas fa-cloud text-xl text-gray-700"},m={key:1,class:"h-8 w-8 animate-pulse rounded bg-gray-300/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"},_={key:0,class:"mt-0.5 text-sm leading-tight text-gray-600"},S={__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 n=l=>{l.target.style.display="none"};return(l,v)=>(s(),t("div",u,[a("div",f,[e.loading?(s(),t("div",m)):(s(),t(d,{key:0},[e.logoSrc?(s(),t("img",{key:0,alt:"Logo",class:"h-8 w-8 object-contain",src:e.logoSrc,onError:n},null,40,y)):(s(),t("i",h))],64))]),a("div",x,[a("div",b,[!e.loading&&e.title?(s(),t("h1",{key:0,class:g(["header-title text-2xl font-bold leading-tight",e.titleClass])},i(e.title),3)):e.loading?(s(),t("div",k)):o("",!0),c(l.$slots,"after-title",{},void 0,!0)]),e.subtitle?(s(),t("p",_,i(e.subtitle),1)):o("",!0)])]))}},w=r(S,[["__scopeId","data-v-10fd6442"]]);export{w as L};
|
||||
import{_ as r}from"./index-NpFg0ijv.js";import{x as t,y as s,z as a,Q as d,L as o,A as c,C as g,P as i}from"./vue-vendor-DfnFpxGJ.js";const u={class:"flex items-center gap-4"},f={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"},y=["src"],h={key:1,class:"fas fa-cloud text-xl text-gray-700"},m={key:1,class:"h-8 w-8 animate-pulse rounded bg-gray-300/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"},_={key:0,class:"mt-0.5 text-sm leading-tight text-gray-600"},S={__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 n=l=>{l.target.style.display="none"};return(l,v)=>(s(),t("div",u,[a("div",f,[e.loading?(s(),t("div",m)):(s(),t(d,{key:0},[e.logoSrc?(s(),t("img",{key:0,alt:"Logo",class:"h-8 w-8 object-contain",src:e.logoSrc,onError:n},null,40,y)):(s(),t("i",h))],64))]),a("div",x,[a("div",b,[!e.loading&&e.title?(s(),t("h1",{key:0,class:g(["header-title text-2xl font-bold leading-tight",e.titleClass])},i(e.title),3)):e.loading?(s(),t("div",k)):o("",!0),c(l.$slots,"after-title",{},void 0,!0)]),e.subtitle?(s(),t("p",_,i(e.subtitle),1)):o("",!0)])]))}},w=r(S,[["__scopeId","data-v-10fd6442"]]);export{w as L};
|
||||
1
web/admin-spa/dist/assets/MainLayout-Bduen41e.css
vendored
Normal file
1
web/admin-spa/dist/assets/MainLayout-Bduen41e.css
vendored
Normal file
@@ -0,0 +1 @@
|
||||
.user-menu-dropdown[data-v-a00d91a7]{margin-top:8px}.fade-enter-active[data-v-a00d91a7],.fade-leave-active[data-v-a00d91a7]{transition:opacity .3s}.fade-enter-from[data-v-a00d91a7],.fade-leave-to[data-v-a00d91a7]{opacity:0}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
web/admin-spa/dist/assets/SettingsView-D91yuoIv.css
vendored
Normal file
1
web/admin-spa/dist/assets/SettingsView-D91yuoIv.css
vendored
Normal file
@@ -0,0 +1 @@
|
||||
.settings-container[data-v-b2aa7b63]{min-height:calc(100vh - 300px)}.card[data-v-b2aa7b63]{background:#fff;border-radius:12px;box-shadow:0 2px 12px #0000001a;border:1px solid #e5e7eb}.table-container[data-v-b2aa7b63]{overflow:hidden;border-radius:8px;border:1px solid #f3f4f6}.table-row[data-v-b2aa7b63]{transition:background-color .2s ease}.table-row[data-v-b2aa7b63]:hover{background-color:#f9fafb}.form-input[data-v-b2aa7b63]{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-b2aa7b63]: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-b2aa7b63]{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-b2aa7b63]: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-b2aa7b63]{--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-b2aa7b63]:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.btn-primary[data-v-b2aa7b63]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.btn-success[data-v-b2aa7b63]{--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-b2aa7b63]:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.btn-success[data-v-b2aa7b63]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(34 197 94 / var(--tw-ring-opacity, 1))}.loading-spinner[data-v-b2aa7b63]{height:1.25rem;width:1.25rem}@keyframes spin-b2aa7b63{to{transform:rotate(360deg)}}.loading-spinner[data-v-b2aa7b63]{animation:spin-b2aa7b63 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))}
|
||||
@@ -1 +0,0 @@
|
||||
.tutorial-container[data-v-6a18e586]{min-height:calc(100vh - 300px)}.tutorial-content[data-v-6a18e586]{animation:fadeIn-6a18e586 .3s ease-in-out}@keyframes fadeIn-6a18e586{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}code[data-v-6a18e586]{font-family:Fira Code,Monaco,Menlo,Ubuntu Mono,monospace}.tutorial-content h4[data-v-6a18e586]{scroll-margin-top:100px}.tutorial-content .bg-gradient-to-r[data-v-6a18e586]{transition:all .2s ease}.tutorial-content .bg-gradient-to-r[data-v-6a18e586]:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}
|
||||
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
|
||||
import{r as N,c as y,o as x,q as R,V as C,x as i,y as o,z as n,L as f,P as l,O as w,B as k,C as b}from"./vue-vendor-DfnFpxGJ.js";const $={class:"space-y-1"},P={class:"flex items-center justify-between text-xs"},B={class:"text-gray-500"},E={key:0,class:"font-medium text-gray-700"},I={key:1,class:"font-medium text-orange-600"},V={key:2,class:"font-medium text-gray-500"},j={key:3,class:"font-medium text-gray-400"},z={key:0,class:"space-y-0.5"},D={key:0,class:"space-y-0.5"},W={class:"flex items-center justify-between text-xs"},F={class:"text-gray-600"},K={class:"h-1 w-full rounded-full bg-gray-200"},O={key:1,class:"space-y-0.5"},U={class:"flex items-center justify-between text-xs"},A={class:"text-gray-600"},G={class:"h-1 w-full rounded-full bg-gray-200"},H={key:1,class:"text-xs text-gray-500"},J={key:0},Q={key:1},X={key:2},Z={__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},showProgress:{type:Boolean,default:!0},showTooltip:{type:Boolean,default:!1}},setup(a){const s=a,r=N(s.windowRemainingSeconds);let u=null;const c=y(()=>s.windowStartTime===null?"notStarted":r.value===0?"expired":r.value>0?"active":"unknown"),T=y(()=>s.requestLimit>0),_=y(()=>s.tokenLimit>0),L=e=>{if(e==null)return"--:--";const t=Math.floor(e/3600),d=Math.floor(e%3600/60),p=e%60;return t>0?`${t}h ${d}m`:d>0?`${d}m ${p}s`:`${p}s`},q=e=>{const t=Math.floor(e/3600),d=Math.floor(e%3600/60);return t>0?`${t}小时${d}分钟`:`${d}分钟`},g=e=>e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":e.toString(),v=()=>{if(!s.requestLimit||s.requestLimit===0)return 0;const e=(s.currentRequests||0)/s.requestLimit*100;return Math.min(e,100)},S=()=>{const e=v();return e>=100?"bg-red-500":e>=80?"bg-yellow-500":"bg-blue-500"},h=()=>{if(!s.tokenLimit||s.tokenLimit===0)return 0;const e=(s.currentTokens||0)/s.tokenLimit*100;return Math.min(e,100)},M=()=>{const e=h();return e>=100?"bg-red-500":e>=80?"bg-yellow-500":"bg-purple-500"},m=()=>{if(s.windowEndTime&&r.value>0){const e=Date.now(),t=Math.max(0,Math.floor((s.windowEndTime-e)/1e3));r.value=t,t===0&&u&&(clearInterval(u),u=null)}};return x(()=>s.windowRemainingSeconds,e=>{r.value=e}),x(()=>s.windowEndTime,e=>{e&&(m(),!u&&r.value>0&&(u=setInterval(m,1e3)))}),R(()=>{s.windowEndTime&&r.value>0&&(m(),u=setInterval(m,1e3))}),C(()=>{u&&clearInterval(u)}),(e,t)=>(o(),i("div",$,[n("div",P,[n("span",B,l(a.label),1),c.value==="active"?(o(),i("span",E,[t[0]||(t[0]=n("i",{class:"fas fa-clock mr-1 text-blue-500"},null,-1)),w(" "+l(L(r.value)),1)])):c.value==="expired"?(o(),i("span",I,t[1]||(t[1]=[n("i",{class:"fas fa-sync-alt mr-1"},null,-1),w(" 窗口已过期 ",-1)]))):c.value==="notStarted"?(o(),i("span",V,t[2]||(t[2]=[n("i",{class:"fas fa-pause-circle mr-1"},null,-1),w(" 窗口未激活 ",-1)]))):(o(),i("span",j,l(a.rateLimitWindow)+" 分钟 ",1))]),a.showProgress?(o(),i("div",z,[T.value?(o(),i("div",D,[n("div",W,[t[3]||(t[3]=n("span",{class:"text-gray-400"},"请求",-1)),n("span",F,l(a.currentRequests||0)+"/"+l(a.requestLimit),1)]),n("div",K,[n("div",{class:b(["h-1 rounded-full transition-all duration-300",S()]),style:k({width:v()+"%"})},null,6)])])):f("",!0),_.value?(o(),i("div",O,[n("div",U,[t[4]||(t[4]=n("span",{class:"text-gray-400"},"Token",-1)),n("span",A,l(g(a.currentTokens||0))+"/"+l(g(a.tokenLimit)),1)]),n("div",G,[n("div",{class:b(["h-1 rounded-full transition-all duration-300",M()]),style:k({width:h()+"%"})},null,6)])])):f("",!0)])):f("",!0),c.value==="active"&&a.showTooltip?(o(),i("div",H,[t[5]||(t[5]=n("i",{class:"fas fa-info-circle mr-1"},null,-1)),r.value<60?(o(),i("span",J,"即将重置")):r.value<300?(o(),i("span",Q,l(Math.ceil(r.value/60))+" 分钟后重置",1)):(o(),i("span",X,l(q(r.value))+"后重置",1))])):f("",!0)]))}};export{Z as _};
|
||||
13
web/admin-spa/dist/assets/chart-Cor9iTVD.js
vendored
13
web/admin-spa/dist/assets/chart-Cor9iTVD.js
vendored
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
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.
File diff suppressed because one or more lines are too long
2
web/admin-spa/dist/assets/index-KCMFVMd0.js
vendored
2
web/admin-spa/dist/assets/index-KCMFVMd0.js
vendored
File diff suppressed because one or more lines are too long
2
web/admin-spa/dist/assets/index-NpFg0ijv.js
vendored
Normal file
2
web/admin-spa/dist/assets/index-NpFg0ijv.js
vendored
Normal file
File diff suppressed because one or more lines are too long
22
web/admin-spa/dist/assets/toast-BvwA7Mwb.js
vendored
22
web/admin-spa/dist/assets/toast-BvwA7Mwb.js
vendored
@@ -1,22 +0,0 @@
|
||||
let e=null,r=0;function c(n,s="info",a="",i=3e3){e||(e=document.createElement("div"),e.id="toast-container",e.style.cssText="position: fixed; top: 20px; right: 20px; z-index: 10000;",document.body.appendChild(e));const o=++r,t=document.createElement("div");t.className=`toast rounded-2xl p-4 shadow-2xl backdrop-blur-sm toast-${s}`,t.style.cssText=`
|
||||
position: relative;
|
||||
min-width: 320px;
|
||||
max-width: 500px;
|
||||
margin-bottom: 16px;
|
||||
transform: translateX(100%);
|
||||
transition: transform 0.3s ease-in-out;
|
||||
`;const l={success:"fas fa-check-circle",error:"fas fa-times-circle",warning:"fas fa-exclamation-triangle",info:"fas fa-info-circle"};return t.innerHTML=`
|
||||
<div class="flex items-start gap-3">
|
||||
<div class="flex-shrink-0 mt-0.5">
|
||||
<i class="${l[s]} text-lg"></i>
|
||||
</div>
|
||||
<div class="flex-1 min-w-0">
|
||||
${a?`<h4 class="font-semibold text-sm mb-1">${a}</h4>`:""}
|
||||
<p class="text-sm opacity-90 leading-relaxed">${n}</p>
|
||||
</div>
|
||||
<button onclick="this.parentElement.parentElement.remove()"
|
||||
class="flex-shrink-0 text-white/70 hover:text-white transition-colors ml-2">
|
||||
<i class="fas fa-times"></i>
|
||||
</button>
|
||||
</div>
|
||||
`,e.appendChild(t),setTimeout(()=>{t.style.transform="translateX(0)"},10),i>0&&setTimeout(()=>{t.style.transform="translateX(100%)",setTimeout(()=>{t.remove()},300)},i),o}export{c as s};
|
||||
30
web/admin-spa/dist/assets/vendor-BDiMbLwQ.js
vendored
30
web/admin-spa/dist/assets/vendor-BDiMbLwQ.js
vendored
File diff suppressed because one or more lines are too long
25
web/admin-spa/dist/assets/vue-vendor-DfnFpxGJ.js
vendored
25
web/admin-spa/dist/assets/vue-vendor-DfnFpxGJ.js
vendored
File diff suppressed because one or more lines are too long
34
web/admin-spa/dist/index.html
vendored
34
web/admin-spa/dist/index.html
vendored
@@ -1,34 +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>
|
||||
|
||||
<!-- Google Fonts -->
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap" rel="stylesheet">
|
||||
|
||||
<!-- Font Awesome -->
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
|
||||
|
||||
<!-- 预连接到CDN域名,加速资源加载 -->
|
||||
<link rel="preconnect" href="https://cdn.jsdelivr.net" crossorigin>
|
||||
<link rel="preconnect" href="https://cdnjs.cloudflare.com" crossorigin>
|
||||
<link rel="dns-prefetch" href="https://cdn.jsdelivr.net">
|
||||
<link rel="dns-prefetch" href="https://cdnjs.cloudflare.com">
|
||||
<script type="module" crossorigin src="/admin-next/assets/index-KCMFVMd0.js"></script>
|
||||
<link rel="modulepreload" crossorigin href="/admin-next/assets/vue-vendor-DfnFpxGJ.js">
|
||||
<link rel="modulepreload" crossorigin href="/admin-next/assets/vendor-BDiMbLwQ.js">
|
||||
<link rel="modulepreload" crossorigin href="/admin-next/assets/element-plus-BaMaLFJp.js">
|
||||
<link rel="stylesheet" crossorigin href="/admin-next/assets/element-plus-CPnoEkWW.css">
|
||||
<link rel="stylesheet" crossorigin href="/admin-next/assets/index-DuIYNWRC.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
Reference in New Issue
Block a user