UNPKG

yunzai-micro-plugin

Version:

Yunzai开发管理面板

2 lines (1 loc) 4.25 kB
import{g as Y,h as G}from"./index-dc390867.js";import{a as H,k as v,B as K,r as o,o as r,c as h,i as t,w as n,b as g,y as x,t as V,F as U,g as N,h as f,e as k,u as Q,x as W,ai as m,C as X,D as Z,_ as ee}from"./index-6f2f2fc7.js";const le=y=>(X("data-v-54d561a2"),y=y(),Z(),y),te={class:"top_bar"},ae=le(()=>g("div",{class:"sub-title"},"用户权限",-1)),oe={style:{"font-size":"12px"}},ne={class:"sub-title"},ue={key:3},se=H({__name:"index",setup(y){const I=v([{route:"Status",title:"状态"},{route:"Logs",title:"日志"},{route:"Fs",title:"文件"},{route:"Plugin",title:"开发"},{route:"Bot",title:"Bot配置"},{route:"Protocol",title:"协议配置"},{route:"Plugins",title:"其它配置"},{route:"Permission",title:"权限管理"},{route:"About",title:"关于"}]);let d=v(!1);const s=v([]),S=v(0),C=v("add"),a=v({}),w=async()=>{let l=await Y();l.code==200&&(s.value=l.data)},L=()=>{C.value="add";const l=JSON.parse(JSON.stringify(s.value[0]));l.username.value="",l.password.value="",l.avatar.value="",l.expires.value="86400s",a.value=l,d.value=!0},P=(l,_)=>{C.value="update",a.value=l,S.value=_,d.value=!0},D=(l,_)=>{const i=new Set;for(let c=0;c<l.length;c++){const b=l[c][_].value;if(i.has(b))return!0;i.add(b)}return!1},A=async()=>{let l=await G(s.value);console.log(l),l.code==200&&(m.success("保存成功!"),w(),d.value=!1)},z=l=>{if(s.value.length<=1){m.error("不可清空!");return}s.value.splice(l,1),console.log(s.value),A()},E=()=>{if(C.value=="add"){if(!a.value.password.value){m.error("密码不能为空!");return}if(a.value.password.value.length<5||a.value.password.value.length>20){m.error("密码长度5-20位!");return}if(a.value.username.value.length<2||a.value.username.value.length>20){m.error("账号长度2-20位!");return}if(s.value.push(a.value),D(s.value,"username")){m.error("已存在相同账号!"),w();return}}else s.value[S.value]=a.value;d.value=!1,A()};return K(()=>{w()}),(l,_)=>{const i=o("el-button"),c=o("el-table-column"),b=o("el-popconfirm"),F=o("el-table"),M=o("el-card"),O=o("el-input"),q=o("el-input-number"),J=o("el-switch"),$=o("el-checkbox"),j=o("el-checkbox-group"),R=o("el-form-item"),T=o("el-dialog");return r(),h(U,null,[t(M,null,{default:n(()=>[g("div",te,[ae,g("div",null,[t(i,{type:"primary",icon:"Plus",onClick:L},{default:n(()=>[x(" 添加 ")]),_:1})])]),t(F,{data:s.value},{default:n(()=>[t(c,{type:"index",label:"#"}),t(c,{label:"账号"},{default:n(({row:e,$index:p})=>[x(V(e.username.value),1)]),_:1}),t(c,{label:"描述"},{default:n(({row:e,$index:p})=>[g("span",oe,V(e.desc.value),1)]),_:1}),t(c,{label:"操作",fixed:"right","min-width":"120px"},{default:n(({row:e,$index:p})=>[t(i,{type:"primary",size:"small",icon:"Edit",onClick:B=>P(e,p)},null,8,["onClick"]),t(b,{title:"删除后不可恢复,您确定吗?",onConfirm:B=>z(p)},{reference:n(()=>[t(i,{type:"primary",size:"small",icon:"Delete"})]),_:2},1032,["onConfirm"])]),_:1})]),_:1},8,["data"])]),_:1}),t(T,{modelValue:Q(d),"onUpdate:modelValue":_[0]||(_[0]=e=>W(d)?d.value=e:d=e),title:a.value.desc?a.value.desc.value:"新增管理员"},{default:n(()=>[t(i,{type:"primary",onClick:E},{default:n(()=>[x(" 保存 ")]),_:1}),(r(!0),h(U,null,N(a.value,(e,p,B)=>(r(),f(R,{key:p,lable:e.desc},{default:n(()=>[g("div",ne,V(e.desc),1),e.type=="string"?(r(),f(O,{key:0,modelValue:e.value,"onUpdate:modelValue":u=>e.value=u},null,8,["modelValue","onUpdate:modelValue"])):k("",!0),e.type=="number"?(r(),f(q,{key:1,modelValue:e.value,"onUpdate:modelValue":u=>e.value=u},null,8,["modelValue","onUpdate:modelValue"])):k("",!0),e.type=="boolean"?(r(),f(J,{key:2,modelValue:e.value,"onUpdate:modelValue":u=>e.value=u,class:"ml-2","inline-prompt":"",style:{"--el-switch-on-color":"#13ce66"},"active-text":"Y","inactive-text":"N"},null,8,["modelValue","onUpdate:modelValue"])):k("",!0),e.type=="array"?(r(),h("div",ue,[t(j,{modelValue:e.value,"onUpdate:modelValue":u=>e.value=u},{default:n(()=>[(r(!0),h(U,null,N(I.value,u=>(r(),f($,{key:u.route,value:u.route},{default:n(()=>[x(V(u.title),1)]),_:2},1032,["value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])])):k("",!0)]),_:2},1032,["lable"]))),128))]),_:1},8,["modelValue","title"])],64)}}});const ce=ee(se,[["__scopeId","data-v-54d561a2"]]);export{ce as default};