1 line
3.2 KiB
JavaScript
1 line
3.2 KiB
JavaScript
import{t as e}from"./VDataTable-pRRodit6.js";import{Ar as t,Er as n,L as r,Nr as i,jr as a,li as o,qr as s,ri as c,ui as l}from"./index-a0fi5f-0.js";import{t as u}from"./VTextField-GUQr1tUN.js";import{i as d,n as f,t as p}from"./VExpansionPanels-DUlWPWNJ.js";import{a as m,c as h,d as g,l as _}from"./btpanel-BsL25ffd.js";import{n as v,t as y}from"./useBtPanelPageLoad-CV_unS2-.js";var b=i({name:`BtPanelDatabasesPage`,__name:`BtPanelDatabasesPage`,setup(i){let b=l(!1),x=l([]),S=o({name:``,password:``}),C=o({id:0,name:``,password:``}),w=[{title:`ID`,key:`id`,width:70},{title:`库名`,key:`name`},{title:`用户`,key:`username`},{title:`备注`,key:`ps`},{title:`操作`,key:`actions`,sortable:!1,width:80}],{serverId:T,run:E}=y(async e=>{b.value=!0;try{x.value=(await g(e)).data??[]}catch(e){window.$snackbar?.(e instanceof Error?e.message:`加载失败`,`error`)}finally{b.value=!1}});async function D(){let e=T.value;if(!(!e||!S.name)){b.value=!0;try{await m(e,{name:S.name,password:S.password,db_user:S.name,codeing:`utf8mb4`}),window.$snackbar?.(`已创建`,`success`),await E()}catch(e){window.$snackbar?.(e instanceof Error?e.message:`创建失败`,`error`)}finally{b.value=!1}}}async function O(){let e=T.value;if(!(!e||!C.id)){b.value=!0;try{await _(e,{...C}),window.$snackbar?.(`密码已更新`,`success`)}catch(e){window.$snackbar?.(e instanceof Error?e.message:`失败`,`error`)}finally{b.value=!1}}}async function k(e){let t=T.value;if(t){b.value=!0;try{await h(t,e.id),window.$snackbar?.(`备份任务已提交`,`success`)}catch(e){window.$snackbar?.(e instanceof Error?e.message:`备份失败`,`error`)}finally{b.value=!1}}}return(i,o)=>(s(),n(v,{title:`宝塔 · 数据库`,subtitle:`列表 / 创建 / 改密 / 备份(D1–D4)`},{default:c(()=>[a(e,{headers:w,items:x.value,loading:b.value,density:`compact`},{"item.actions":c(({item:e})=>[a(r,{size:`x-small`,variant:`text`,onClick:t=>k(e)},{default:c(()=>[...o[5]||=[t(`备份`,-1)]]),_:1},8,[`onClick`])]),_:1},8,[`items`,`loading`]),a(p,{class:`mt-4`,variant:`accordion`},{default:c(()=>[a(f,{title:`创建数据库`},{default:c(()=>[a(d,null,{default:c(()=>[a(u,{modelValue:S.name,"onUpdate:modelValue":o[0]||=e=>S.name=e,label:`库名`,density:`compact`,class:`mb-2`},null,8,[`modelValue`]),a(u,{modelValue:S.password,"onUpdate:modelValue":o[1]||=e=>S.password=e,label:`密码`,type:`password`,density:`compact`,class:`mb-2`},null,8,[`modelValue`]),a(r,{color:`primary`,loading:b.value,onClick:D},{default:c(()=>[...o[6]||=[t(`创建`,-1)]]),_:1},8,[`loading`])]),_:1})]),_:1}),a(f,{title:`修改密码`},{default:c(()=>[a(d,null,{default:c(()=>[a(u,{modelValue:C.id,"onUpdate:modelValue":o[2]||=e=>C.id=e,modelModifiers:{number:!0},label:`ID`,type:`number`,density:`compact`,class:`mb-2`},null,8,[`modelValue`]),a(u,{modelValue:C.name,"onUpdate:modelValue":o[3]||=e=>C.name=e,label:`库名`,density:`compact`,class:`mb-2`},null,8,[`modelValue`]),a(u,{modelValue:C.password,"onUpdate:modelValue":o[4]||=e=>C.password=e,label:`新密码`,type:`password`,density:`compact`,class:`mb-2`},null,8,[`modelValue`]),a(r,{variant:`tonal`,loading:b.value,onClick:O},{default:c(()=>[...o[7]||=[t(`修改`,-1)]]),_:1},8,[`loading`])]),_:1})]),_:1})]),_:1})]),_:1}))}});export{b as default}; |