1 line
2.6 KiB
JavaScript
1 line
2.6 KiB
JavaScript
import{t as e}from"./VDataTable-pRRodit6.js";import{Ar as t,Er as n,L as r,Nr as i,Tr as a,jr as o,li as s,qr as c,ri as l,ui as u,xi as d}from"./index-a0fi5f-0.js";import{t as f}from"./VTextField-GUQr1tUN.js";import{t as p}from"./VTextarea-BMTWx02W.js";import{i as m,n as h,t as g}from"./VExpansionPanels-DUlWPWNJ.js";import{g as _,i as v,y}from"./btpanel-BsL25ffd.js";import{n as b,t as x}from"./useBtPanelPageLoad-CV_unS2-.js";var S=i({name:`BtPanelSslPage`,__name:`BtPanelSslPage`,setup(i){let S=u(!1),C=u([]),w=s({siteName:``,key:``,csr:``}),T=[{title:`ID`,key:`id`,width:70},{title:`网站`,key:`name`},{title:`SSL`,key:`ssl`},{title:`操作`,key:`actions`,sortable:!1,width:100}],{serverId:E,run:D}=x(async e=>{S.value=!0;try{C.value=(await y(e)).data??[]}catch(e){window.$snackbar?.(e instanceof Error?e.message:`加载失败`,`error`)}finally{S.value=!1}});function O(e){return!e.ssl||e.ssl===-1?`无`:typeof e.ssl==`object`?e.ssl.subject||e.ssl.notAfter||`已配置`:String(e.ssl)}async function k(e){let t=E.value;if(t){S.value=!0;try{await v(t,{domains:e.name,id:e.id,auth_type:`http`}),window.$snackbar?.(`已提交申请`,`success`),await D()}catch(e){window.$snackbar?.(e instanceof Error?e.message:`申请失败`,`error`)}finally{S.value=!1}}}async function A(){let e=E.value;if(!(!e||!w.siteName)){S.value=!0;try{await _(e,{siteName:w.siteName,key:w.key,csr:w.csr}),window.$snackbar?.(`证书已上传`,`success`),await D()}catch(e){window.$snackbar?.(e instanceof Error?e.message:`上传失败`,`error`)}finally{S.value=!1}}}return(i,s)=>(c(),n(b,{title:`宝塔 · SSL 证书`,subtitle:`站点证书查看 / 上传 / Let's Encrypt(C15)`},{default:l(()=>[o(e,{headers:T,items:C.value,loading:S.value,density:`compact`},{"item.ssl":l(({item:e})=>[a(`span`,null,d(O(e)),1)]),"item.actions":l(({item:e})=>[o(r,{size:`x-small`,variant:`text`,onClick:t=>k(e)},{default:l(()=>[...s[3]||=[t(`申请 LE`,-1)]]),_:1},8,[`onClick`])]),_:1},8,[`items`,`loading`]),o(g,{class:`mt-4`,variant:`accordion`},{default:l(()=>[o(h,{title:`上传证书(SetSSL)`},{default:l(()=>[o(m,null,{default:l(()=>[o(f,{modelValue:w.siteName,"onUpdate:modelValue":s[0]||=e=>w.siteName=e,label:`网站名`,density:`compact`,class:`mb-2`},null,8,[`modelValue`]),o(p,{modelValue:w.csr,"onUpdate:modelValue":s[1]||=e=>w.csr=e,label:`证书 PEM`,rows:`4`,class:`mb-2`},null,8,[`modelValue`]),o(p,{modelValue:w.key,"onUpdate:modelValue":s[2]||=e=>w.key=e,label:`私钥 PEM`,rows:`4`,class:`mb-2`},null,8,[`modelValue`]),o(r,{color:`primary`,loading:S.value,onClick:A},{default:l(()=>[...s[4]||=[t(`上传`,-1)]]),_:1},8,[`loading`])]),_:1})]),_:1})]),_:1})]),_:1}))}});export{S as default}; |