2 lines
21 KiB
JavaScript
2 lines
21 KiB
JavaScript
import{a as qe,f as $e,b as Ae,c as De,u as He}from"./email-DiVz51rK.js";import{D as E,_ as Ne,r as p,G as me,A as Fe,c as pe,o as ze,a as T,b as n,p as K,d as l,w as o,e as f,n as Qe,l as M,h as _,j as d,t as u,m as C,F as ae,k as ce,E as U,q as c}from"./index-Do26tg8I.js";async function Ie(){const{data:v}=await E.get("/smtp/configs");return v}async function je(v){const{data:b}=await E.post("/smtp/configs",v);return b}async function Ge(v,b){const{data:h}=await E.put(`/smtp/configs/${v}`,b);return h}async function Ke(v){const{data:b}=await E.delete(`/smtp/configs/${v}`);return b}async function Oe(v,b){const{data:h}=await E.post(`/smtp/configs/${v}/test`,{email:b});return h}async function Re(v){const{data:b}=await E.post(`/smtp/configs/${v}/primary`);return b}async function Je(){const{data:v}=await E.post("/smtp/configs/primary/clear");return v}const We={class:"page-stack"},Xe={class:"app-page-title"},Ye={class:"toolbar"},Ze={class:"help app-muted"},el={class:"section-head"},ll={class:"table-wrap"},tl={class:"stat-value"},al={class:"stat-value ok"},sl={class:"stat-value err"},ol={class:"stat-value"},nl={class:"sub-stats"},il={class:"help app-muted"},ul={class:"section-head"},rl={class:"toolbar"},dl={class:"table-wrap"},ml=["title"],pl=["title"],cl={class:"pagination"},fl={class:"page-hint app-muted"},_l={style:{width:"100%"}},vl={key:0,class:"help"},bl={key:0},yl={key:0},gl={key:0},hl={class:"dialog-actions"},fe=15,wl={__name:"EmailPage",setup(v){const b=p(!1),h=p(!1),r=me({enabled:!1,failover_enabled:!0,register_verify_enabled:!1,task_notify_enabled:!1,base_url:"",updated_at:null});let L=null;async function se(){b.value=!0;try{const s=await qe();r.enabled=!!s.enabled,r.failover_enabled=!!s.failover_enabled,r.register_verify_enabled=!!s.register_verify_enabled,r.task_notify_enabled=!!s.task_notify_enabled,r.base_url=s.base_url||"",r.updated_at=s.updated_at||null}catch{}finally{b.value=!1}}async function _e(){if(!b.value){h.value=!0;try{const s=await He({enabled:r.enabled,failover_enabled:r.failover_enabled,register_verify_enabled:r.register_verify_enabled,task_notify_enabled:r.task_notify_enabled,base_url:(r.base_url||"").trim()});if(!s?.success){c.error(s?.error||"更新失败");return}c.success("邮件设置已更新"),await se()}catch{}finally{h.value=!1}}}function D(){L&&window.clearTimeout(L),L=window.setTimeout(_e,300)}Fe(()=>{L&&window.clearTimeout(L),L=null});const O=p(!1),R=p([]),S=p(!1),y=p(!1),J=p(!1),N=p(!1),t=me({id:null,name:"默认配置",enabled:!0,host:"",port:465,username:"",password:"",use_ssl:!0,use_tls:!1,sender_name:"自动化学习",sender_email:"",daily_limit:0,priority:0}),F=[{key:"custom",label:"自定义(手动填写)",defaults:null,note:"适用于其他邮箱/自建SMTP",links:[]},{key:"gmail",label:"Gmail",defaults:{host:"smtp.gmail.com",port:465,use_ssl:!0,use_tls:!1},note:"通常需要开启两步验证并创建应用专用密码(App Password)",links:[{label:"SMTP 设置说明",url:"https://support.google.com/mail/answer/7126229?hl=zh-Hans"},{label:"App Password",url:"https://myaccount.google.com/apppasswords"}]},{key:"qq",label:"QQ 邮箱",defaults:{host:"smtp.qq.com",port:465,use_ssl:!0,use_tls:!1},note:"需要在邮箱设置中开启 SMTP 并获取授权码(不是QQ登录密码)",links:[{label:"QQ邮箱 SMTP 帮助",url:"https://service.mail.qq.com/cgi-bin/help?subtype=1&id=28&no=1001256"}]},{key:"163",label:"163 邮箱",defaults:{host:"smtp.163.com",port:465,use_ssl:!0,use_tls:!1},note:"需要在邮箱设置中开启 SMTP 并使用授权码/客户端授权密码",links:[{label:"网易邮箱 SMTP 帮助",url:"https://help.mail.163.com/faqDetail.do?code=d7a5dc8471a22b76"}]},{key:"126",label:"126 邮箱",defaults:{host:"smtp.126.com",port:465,use_ssl:!0,use_tls:!1},note:"需要在邮箱设置中开启 SMTP 并使用授权码/客户端授权密码",links:[{label:"网易邮箱帮助",url:"https://help.mail.163.com/"}]},{key:"outlook",label:"Outlook/Hotmail",defaults:{host:"smtp-mail.outlook.com",port:587,use_ssl:!1,use_tls:!0},note:"建议使用 TLS 587(部分账号需开启 SMTP AUTH)",links:[{label:"微软 SMTP 设置",url:"https://support.microsoft.com/office/pop-imap-and-smtp-settings-for-outlook-com-d088b0b7-0d38-4f9a-bc5d-509f9e4c6d3d"}]},{key:"office365",label:"Microsoft 365/Exchange",defaults:{host:"smtp.office365.com",port:587,use_ssl:!1,use_tls:!0},note:"企业邮箱常用配置(需启用 SMTP AUTH)",links:[{label:"微软官方说明",url:"https://learn.microsoft.com/exchange/clients-and-mobile-in-exchange-online/authenticated-client-smtp-submission"}]},{key:"icloud",label:"iCloud",defaults:{host:"smtp.mail.me.com",port:587,use_ssl:!1,use_tls:!0},note:"需要在 Apple ID 中生成“App 专用密码”",links:[{label:"Apple 邮件服务器设置",url:"https://support.apple.com/zh-cn/HT202304"}]},{key:"tencent_exmail",label:"腾讯企业邮箱",defaults:{host:"smtp.exmail.qq.com",port:465,use_ssl:!0,use_tls:!1},note:"企业邮箱常用配置",links:[{label:"腾讯企业邮箱帮助",url:"https://service.exmail.qq.com/cgi-bin/help?subtype=1&id=23&no=1001068"}]},{key:"aliyun_exmail",label:"阿里企业邮箱",defaults:{host:"smtp.mxhichina.com",port:465,use_ssl:!0,use_tls:!1},note:"企业邮箱常用配置",links:[{label:"阿里云文档",url:"https://help.aliyun.com/document_detail/50652.html"}]}],q=p("custom"),k=pe(()=>F.find(s=>s.key===q.value)||F[0]),ve=pe(()=>y.value&&J.value?"留空保持不变":"SMTP密码或授权码");function be(s){const e=String(s?.host||"").trim().toLowerCase();return e&&{"smtp.gmail.com":"gmail","smtp.qq.com":"qq","smtp.163.com":"163","smtp.126.com":"126","smtp-mail.outlook.com":"outlook","smtp.office365.com":"office365","smtp.mail.me.com":"icloud","smtp.exmail.qq.com":"tencent_exmail","smtp.mxhichina.com":"aliyun_exmail"}[e]||"custom"}function ye(s){const e=F.find(i=>i.key===s);!e||!e.defaults||(t.host=e.defaults.host,t.port=e.defaults.port,t.use_ssl=e.defaults.use_ssl,t.use_tls=e.defaults.use_tls)}function oe(){t.id=null,t.name="默认配置",t.enabled=!0,t.host="",t.port=465,t.username="",t.password="",t.use_ssl=!0,t.use_tls=!1,t.sender_name="自动化学习",t.sender_email="",t.daily_limit=0,t.priority=0,J.value=!1,N.value=!1,q.value="custom"}async function $(){O.value=!0;try{R.value=await Ie()}catch{R.value=[]}finally{O.value=!1}}function ge(){y.value=!1,oe(),q.value="custom",S.value=!0}function he(s){y.value=!0,oe(),t.id=s.id,t.name=s.name||"默认配置",t.enabled=!!s.enabled,t.host=s.host||"",t.port=s.port||465,t.username=s.username||"",t.password="",t.use_ssl=!!s.use_ssl,t.use_tls=!!s.use_tls,t.sender_name=s.sender_name||"自动化学习",t.sender_email=s.sender_email||"",t.daily_limit=s.daily_limit??0,t.priority=s.priority??0,J.value=!!s.has_password,N.value=!!s.is_primary,q.value=be(s),S.value=!0}function ne(s){return s.is_primary?{label:"主",type:"warning"}:s.enabled?{label:"备用",type:"success"}:{label:"禁用",type:"info"}}function we(s){return s.daily_limit&&s.daily_limit>0?`${s.daily_sent}/${s.daily_limit}`:`${s.daily_sent}/∞`}async function ke(){if(!t.host.trim()){c.error("SMTP服务器地址不能为空");return}if(!t.username.trim()){c.error("SMTP用户名不能为空");return}const s={name:t.name.trim()||"默认配置",enabled:!!t.enabled,priority:Number(t.priority)||0,host:t.host.trim(),port:Number(t.port)||465,username:t.username.trim(),use_ssl:!!t.use_ssl,use_tls:!!t.use_tls,sender_name:(t.sender_name||"").trim(),sender_email:(t.sender_email||"").trim(),daily_limit:Number(t.daily_limit)||0};try{if(y.value){const e={...s};t.password&&(e.password=t.password);const i=await Ge(t.id,e);if(!i?.success){c.error(i?.error||"更新失败");return}c.success("保存成功")}else{const e={...s};t.password&&(e.password=t.password);const i=await je(e);if(!i?.success){c.error(i?.error||"创建失败");return}c.success("创建成功")}S.value=!1,await $()}catch{}}async function Ve(){if(!y.value||!t.id){c.error("请先保存配置后再测试");return}let s;try{const e=await U.prompt("请输入测试收件邮箱","测试连接",{inputPlaceholder:"name@example.com",confirmButtonText:"发送测试邮件",cancelButtonText:"取消",inputValidator:i=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(String(i||"").trim()),inputErrorMessage:"邮箱格式不正确"});s=String(e.value||"").trim()}catch{return}try{const e=await Oe(t.id,s);e?.success?(c.success("测试成功,邮件已发送"),await $()):await U.alert(e?.error||"测试失败","测试失败",{confirmButtonText:"知道了"})}catch{}}async function Se(){if(!(!y.value||!t.id)){try{await U.confirm("确定将该配置设为主配置吗?","设为主配置",{confirmButtonText:"设为主配置",cancelButtonText:"取消",type:"warning"})}catch{return}try{const s=await Re(t.id);if(!s?.success){c.error(s?.error||"设置失败");return}c.success("已设为主配置"),S.value=!1,await $()}catch{}}}async function xe(){if(y.value){try{await U.confirm("确定取消主配置吗?取消后将按优先级选择可用SMTP。","取消主配置",{confirmButtonText:"取消主配置",cancelButtonText:"保留",type:"warning"})}catch{return}try{const s=await Je();if(!s?.success){c.error(s?.error||"操作失败");return}c.success("已取消主配置"),S.value=!1,await $()}catch{}}}async function Te(){if(!(!y.value||!t.id)){try{await U.confirm("确定删除该SMTP配置吗?此操作不可恢复。","删除配置",{confirmButtonText:"删除",cancelButtonText:"取消",type:"error"})}catch{return}try{const s=await Ke(t.id);if(!s?.success){c.error(s?.error||"删除失败");return}c.success("已删除"),S.value=!1,await $()}catch{}}}const W=p(!1),w=p({}),X=p(!1),z=p(""),Q=p(""),I=p(1),Y=p([]),Z=p(0),ee=p(1);function Pe(s){return{register:"注册验证",reset:"密码重置",bind:"邮箱绑定",task_complete:"任务完成"}[s]||s}async function Ce(){W.value=!0;try{w.value=await $e()}catch{w.value={}}finally{W.value=!1}}async function H(s=1){X.value=!0;try{const e={page:s,page_size:fe};z.value&&(e.type=z.value),Q.value&&(e.status=Q.value);const i=await Ae(e);Y.value=i?.logs||[],Z.value=i?.total||0,I.value=i?.page||s,ee.value=i?.total_pages||1}catch{Y.value=[],Z.value=0,ee.value=1}finally{X.value=!1}}async function Be(){let s;try{const e=await U.prompt("请输入保留天数(将删除该天数之前的日志)","清理日志",{inputValue:"30",confirmButtonText:"清理",cancelButtonText:"取消",inputValidator:i=>{const V=parseInt(String(i),10);return Number.isFinite(V)&&V>=7},inputErrorMessage:"天数必须大于等于7"});s=parseInt(String(e.value),10)}catch{return}try{await U.confirm(`确定删除 ${s} 天之前的邮件日志吗?`,"二次确认",{confirmButtonText:"删除",cancelButtonText:"取消",type:"warning"})}catch{return}try{const e=await De(s);if(!e?.success){c.error(e?.error||"清理失败");return}c.success(`已清理 ${e.deleted} 条日志`),await H(1)}catch{}}async function ie(){await Promise.all([se(),$(),Ce(),H(1)])}return ze(ie),(s,e)=>{const i=f("el-button"),V=f("el-switch"),m=f("el-form-item"),B=f("el-input"),ue=f("el-form"),P=f("el-card"),A=f("el-tag"),g=f("el-table-column"),re=f("el-table"),j=f("el-col"),Me=f("el-row"),x=f("el-option"),le=f("el-select"),Ue=f("el-pagination"),Ee=f("el-link"),te=f("el-input-number"),Le=f("el-dialog"),G=Qe("loading");return _(),T("div",We,[n("div",Xe,[e[26]||(e[26]=n("h2",null,"邮件配置",-1)),n("div",Ye,[l(i,{onClick:ie},{default:o(()=>[...e[25]||(e[25]=[d("刷新",-1)])]),_:1})])]),K((_(),M(P,{shadow:"never","body-style":{padding:"16px"},class:"card"},{default:o(()=>[e[28]||(e[28]=n("h3",{class:"section-title"},"全局设置",-1)),l(ue,{"label-width":"140px"},{default:o(()=>[l(m,{label:"启用邮件功能"},{default:o(()=>[l(V,{modelValue:r.enabled,"onUpdate:modelValue":e[0]||(e[0]=a=>r.enabled=a),disabled:h.value,onChange:D},null,8,["modelValue","disabled"])]),_:1}),l(m,{label:"启用故障转移"},{default:o(()=>[l(V,{modelValue:r.failover_enabled,"onUpdate:modelValue":e[1]||(e[1]=a=>r.failover_enabled=a),disabled:h.value,onChange:D},null,8,["modelValue","disabled"])]),_:1}),l(m,{label:"启用注册邮箱验证"},{default:o(()=>[l(V,{modelValue:r.register_verify_enabled,"onUpdate:modelValue":e[2]||(e[2]=a=>r.register_verify_enabled=a),disabled:h.value,onChange:D},null,8,["modelValue","disabled"])]),_:1}),l(m,{label:"启用任务完成通知"},{default:o(()=>[l(V,{modelValue:r.task_notify_enabled,"onUpdate:modelValue":e[3]||(e[3]=a=>r.task_notify_enabled=a),disabled:h.value,onChange:D},null,8,["modelValue","disabled"])]),_:1}),l(m,{label:"网站基础URL"},{default:o(()=>[l(B,{modelValue:r.base_url,"onUpdate:modelValue":e[4]||(e[4]=a=>r.base_url=a),placeholder:"例如: https://example.com",disabled:h.value,onBlur:D},null,8,["modelValue","disabled"]),e[27]||(e[27]=n("div",{class:"help"},"用于生成邮件中的验证链接,留空则使用默认配置。",-1))]),_:1})]),_:1}),n("div",Ze,"最近更新时间:"+u(r.updated_at||"-"),1)]),_:1})),[[G,b.value]]),l(P,{shadow:"never","body-style":{padding:"16px"},class:"card"},{default:o(()=>[n("div",el,[e[30]||(e[30]=n("h3",{class:"section-title"},"SMTP配置列表",-1)),l(i,{type:"primary",onClick:ge},{default:o(()=>[...e[29]||(e[29]=[d("+ 添加配置",-1)])]),_:1})]),n("div",ll,[K((_(),M(re,{data:R.value,style:{width:"100%"}},{default:o(()=>[l(g,{label:"状态",width:"90"},{default:o(({row:a})=>[l(A,{type:ne(a).type,effect:"light"},{default:o(()=>[d(u(ne(a).label),1)]),_:2},1032,["type"])]),_:1}),l(g,{prop:"name",label:"名称","min-width":"160"}),l(g,{label:"服务器","min-width":"200"},{default:o(({row:a})=>[d(u(a.host)+":"+u(a.port),1)]),_:1}),l(g,{label:"今日/限额",width:"110"},{default:o(({row:a})=>[d(u(we(a)),1)]),_:1}),l(g,{label:"成功率",width:"100"},{default:o(({row:a})=>[d(u(a.success_rate)+"%",1)]),_:1}),l(g,{label:"操作",width:"120",fixed:"right"},{default:o(({row:a})=>[l(i,{size:"small",onClick:de=>he(a)},{default:o(()=>[...e[31]||(e[31]=[d("编辑",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[G,O.value]])])]),_:1}),K((_(),M(P,{shadow:"never","body-style":{padding:"16px"},class:"card"},{default:o(()=>[e[36]||(e[36]=n("h3",{class:"section-title"},"邮件发送统计",-1)),l(Me,{gutter:12},{default:o(()=>[l(j,{xs:12,sm:6},{default:o(()=>[l(P,{shadow:"never",class:"stat-card","body-style":{padding:"14px"}},{default:o(()=>[n("div",tl,u(w.value.total_sent||0),1),e[32]||(e[32]=n("div",{class:"stat-label"},"总发送",-1))]),_:1})]),_:1}),l(j,{xs:12,sm:6},{default:o(()=>[l(P,{shadow:"never",class:"stat-card","body-style":{padding:"14px"}},{default:o(()=>[n("div",al,u(w.value.total_success||0),1),e[33]||(e[33]=n("div",{class:"stat-label"},"成功",-1))]),_:1})]),_:1}),l(j,{xs:12,sm:6},{default:o(()=>[l(P,{shadow:"never",class:"stat-card","body-style":{padding:"14px"}},{default:o(()=>[n("div",sl,u(w.value.total_failed||0),1),e[34]||(e[34]=n("div",{class:"stat-label"},"失败",-1))]),_:1})]),_:1}),l(j,{xs:12,sm:6},{default:o(()=>[l(P,{shadow:"never",class:"stat-card","body-style":{padding:"14px"}},{default:o(()=>[n("div",ol,u(w.value.success_rate||0)+"%",1),e[35]||(e[35]=n("div",{class:"stat-label"},"成功率",-1))]),_:1})]),_:1})]),_:1}),n("div",nl,[l(A,{effect:"light"},{default:o(()=>[d("注册验证 "+u(w.value.register_sent||0),1)]),_:1}),l(A,{effect:"light"},{default:o(()=>[d("密码重置 "+u(w.value.reset_sent||0),1)]),_:1}),l(A,{effect:"light"},{default:o(()=>[d("邮箱绑定 "+u(w.value.bind_sent||0),1)]),_:1}),l(A,{effect:"light"},{default:o(()=>[d("任务完成 "+u(w.value.task_complete_sent||0),1)]),_:1})]),n("div",il,"最后更新:"+u(w.value.last_updated||"-"),1)]),_:1})),[[G,W.value]]),l(P,{shadow:"never","body-style":{padding:"16px"},class:"card"},{default:o(()=>[n("div",ul,[e[38]||(e[38]=n("h3",{class:"section-title"},"邮件发送日志",-1)),n("div",rl,[l(le,{modelValue:z.value,"onUpdate:modelValue":e[5]||(e[5]=a=>z.value=a),style:{width:"140px"},onChange:e[6]||(e[6]=a=>H(1))},{default:o(()=>[l(x,{label:"全部类型",value:""}),l(x,{label:"注册验证",value:"register"}),l(x,{label:"密码重置",value:"reset"}),l(x,{label:"邮箱绑定",value:"bind"}),l(x,{label:"任务完成",value:"task_complete"})]),_:1},8,["modelValue"]),l(le,{modelValue:Q.value,"onUpdate:modelValue":e[7]||(e[7]=a=>Q.value=a),style:{width:"120px"},onChange:e[8]||(e[8]=a=>H(1))},{default:o(()=>[l(x,{label:"全部状态",value:""}),l(x,{label:"成功",value:"success"}),l(x,{label:"失败",value:"failed"})]),_:1},8,["modelValue"]),l(i,{type:"danger",plain:"",onClick:Be},{default:o(()=>[...e[37]||(e[37]=[d("清理日志",-1)])]),_:1})])]),n("div",dl,[K((_(),M(re,{data:Y.value,style:{width:"100%"}},{default:o(()=>[l(g,{prop:"created_at",label:"时间",width:"180"}),l(g,{prop:"email_to",label:"收件人","min-width":"180"}),l(g,{label:"类型",width:"120"},{default:o(({row:a})=>[d(u(Pe(a.email_type)),1)]),_:1}),l(g,{label:"主题","min-width":"220"},{default:o(({row:a})=>[n("span",{class:"ellipsis",title:a.subject},u(a.subject),9,ml)]),_:1}),l(g,{label:"状态",width:"90"},{default:o(({row:a})=>[l(A,{type:a.status==="success"?"success":"danger",effect:"light"},{default:o(()=>[d(u(a.status==="success"?"成功":"失败"),1)]),_:2},1032,["type"])]),_:1}),l(g,{label:"错误","min-width":"200"},{default:o(({row:a})=>[n("span",{class:"ellipsis",title:a.error_message||""},u(a.error_message||"-"),9,pl)]),_:1})]),_:1},8,["data"])),[[G,X.value]])]),n("div",cl,[l(Ue,{"current-page":I.value,"onUpdate:currentPage":e[9]||(e[9]=a=>I.value=a),"page-size":fe,total:Z.value,layout:"prev, pager, next, ->, total",onCurrentChange:H},null,8,["current-page","total"]),n("div",fl,"第 "+u(I.value)+" / "+u(ee.value)+" 页",1)])]),_:1}),l(Le,{modelValue:S.value,"onUpdate:modelValue":e[24]||(e[24]=a=>S.value=a),title:y.value?"编辑SMTP配置":"添加SMTP配置",width:"min(560px, 92vw)"},{footer:o(()=>[n("div",hl,[l(i,{onClick:Ve},{default:o(()=>[...e[39]||(e[39]=[d("测试连接",-1)])]),_:1}),y.value&&N.value?(_(),M(i,{key:0,type:"warning",plain:"",onClick:xe},{default:o(()=>[...e[40]||(e[40]=[d("取消主配置",-1)])]),_:1})):C("",!0),y.value&&!N.value?(_(),M(i,{key:1,onClick:Se},{default:o(()=>[...e[41]||(e[41]=[d("设为主配置",-1)])]),_:1})):C("",!0),y.value?(_(),M(i,{key:2,type:"danger",plain:"",onClick:Te},{default:o(()=>[...e[42]||(e[42]=[d("删除配置",-1)])]),_:1})):C("",!0),e[45]||(e[45]=n("div",{class:"spacer"},null,-1)),l(i,{onClick:e[23]||(e[23]=a=>S.value=!1)},{default:o(()=>[...e[43]||(e[43]=[d("取消",-1)])]),_:1}),l(i,{type:"primary",onClick:ke},{default:o(()=>[...e[44]||(e[44]=[d("保存",-1)])]),_:1})])]),default:o(()=>[l(ue,{"label-width":"120px"},{default:o(()=>[l(m,{label:"名称"},{default:o(()=>[l(B,{modelValue:t.name,"onUpdate:modelValue":e[10]||(e[10]=a=>t.name=a)},null,8,["modelValue"])]),_:1}),l(m,{label:"启用"},{default:o(()=>[l(V,{modelValue:t.enabled,"onUpdate:modelValue":e[11]||(e[11]=a=>t.enabled=a)},null,8,["modelValue"])]),_:1}),l(m,{label:"邮箱模板"},{default:o(()=>[n("div",_l,[l(le,{modelValue:q.value,"onUpdate:modelValue":e[12]||(e[12]=a=>q.value=a),placeholder:"选择常用邮箱模板",style:{width:"100%"},onChange:ye},{default:o(()=>[(_(),T(ae,null,ce(F,a=>l(x,{key:a.key,label:a.label,value:a.key},null,8,["label","value"])),64))]),_:1},8,["modelValue"]),k.value.note||k.value.links&&k.value.links.length?(_(),T("div",vl,[k.value.note?(_(),T("span",bl,u(k.value.note),1)):C("",!0),k.value.links&&k.value.links.length?(_(),T(ae,{key:1},[k.value.note?(_(),T("span",yl," · ")):C("",!0),(_(!0),T(ae,null,ce(k.value.links,(a,de)=>(_(),T("span",{key:a.url},[l(Ee,{href:a.url,target:"_blank",type:"primary",underline:!1},{default:o(()=>[d(u(a.label),1)]),_:2},1032,["href"]),de<k.value.links.length-1?(_(),T("span",gl," · ")):C("",!0)]))),128))],64)):C("",!0)])):C("",!0)])]),_:1}),l(m,{label:"服务器"},{default:o(()=>[l(B,{modelValue:t.host,"onUpdate:modelValue":e[13]||(e[13]=a=>t.host=a),placeholder:"smtp.example.com"},null,8,["modelValue"])]),_:1}),l(m,{label:"端口"},{default:o(()=>[l(te,{modelValue:t.port,"onUpdate:modelValue":e[14]||(e[14]=a=>t.port=a),min:1,max:65535},null,8,["modelValue"])]),_:1}),l(m,{label:"用户名"},{default:o(()=>[l(B,{modelValue:t.username,"onUpdate:modelValue":e[15]||(e[15]=a=>t.username=a)},null,8,["modelValue"])]),_:1}),l(m,{label:"密码"},{default:o(()=>[l(B,{modelValue:t.password,"onUpdate:modelValue":e[16]||(e[16]=a=>t.password=a),type:"password","show-password":"",placeholder:ve.value},null,8,["modelValue","placeholder"])]),_:1}),l(m,{label:"SSL"},{default:o(()=>[l(V,{modelValue:t.use_ssl,"onUpdate:modelValue":e[17]||(e[17]=a=>t.use_ssl=a)},null,8,["modelValue"])]),_:1}),l(m,{label:"TLS"},{default:o(()=>[l(V,{modelValue:t.use_tls,"onUpdate:modelValue":e[18]||(e[18]=a=>t.use_tls=a)},null,8,["modelValue"])]),_:1}),l(m,{label:"发件人名称"},{default:o(()=>[l(B,{modelValue:t.sender_name,"onUpdate:modelValue":e[19]||(e[19]=a=>t.sender_name=a)},null,8,["modelValue"])]),_:1}),l(m,{label:"发件人邮箱"},{default:o(()=>[l(B,{modelValue:t.sender_email,"onUpdate:modelValue":e[20]||(e[20]=a=>t.sender_email=a),placeholder:"可选"},null,8,["modelValue"])]),_:1}),l(m,{label:"每日限额"},{default:o(()=>[l(te,{modelValue:t.daily_limit,"onUpdate:modelValue":e[21]||(e[21]=a=>t.daily_limit=a),min:0,max:1e6},null,8,["modelValue"])]),_:1}),l(m,{label:"优先级"},{default:o(()=>[l(te,{modelValue:t.priority,"onUpdate:modelValue":e[22]||(e[22]=a=>t.priority=a),min:0,max:1e3},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},8,["modelValue","title"])])}}},Sl=Ne(wl,[["__scopeId","data-v-988a6b4f"]]);export{Sl as default};
|