var f=(u,p,o)=>new Promise((l,i)=>{var d=e=>{try{s(o.next(e))}catch(a){i(a)}},c=e=>{try{s(o.throw(e))}catch(a){i(a)}},s=e=>e.done?l(e.value):Promise.resolve(e.value).then(d,c);s((o=o.apply(u,p)).next())});import{a as P,B as _}from"./index-CD5zFmZN.js";import{_ as g}from"./BasicForm.vue_vue_type_script_setup_true_lang-ByuHmjlN.js";import"./BasicForm.vue_vue_type_style_index_0_lang-wVUE9AOT.js";import"./helper-B0yEaptj.js";import{u as $}from"./useForm-C-769eP8.js";import{aj as h,aw as b,u as v}from"./entry/index-CRWhxBeP.js";import{d as y,c as M,Z as B,a4 as j,a5 as k,a9 as x,u as m,$ as A,k as N}from"./vue-DM5HGU8Z.js";import"./antd-BfqWtMX3.js";import"./useWindowSizeFn-CEueHQop.js";import"./FormItem.vue_vue_type_script_lang-r-ozwU0K.js";import"./index-BshNMORD.js";import"./index-BGDG2Aiy.js";import"./uuid-BUBnBT7J.js";import"./useSortable-BUyXn7hO.js";import"./download-DbzL13NI.js";import"./base64Conver-DEMZeTZS.js";import"./index-BZ4uXGij.js";import"./IconPicker.vue_vue_type_script_setup_true_lang-BMkV6zCu.js";import"./copyTextToClipboard-B8vsl9wq.js";import"./index-CIEo7xez.js";import"./index-DOkdpLQv.js";import"./onMountedOrActivated-Ckq_czNf.js";import"./index-lE2idd8k.js";import"./UploadPreviewModal-BZsd-hmR.js";import"./cateApi-BE6kfD5q.js";import"./resourceApi-CKj0y817.js";import"./common-DpkSdXuu.js";import"./imageEnum-BRgYKvjO.js";import"./sysOrgApi-tY_yXKfV.js";const R={class:"px-4 pr-8"},pe=y({__name:"PasswordModal",setup(u){const p=M(()=>"修改密码"),o=h(),{createMessage:l}=v(),[i,{resetFields:d,validate:c}]=$({labelWidth:100,schemas:[{field:"passwordOld",label:"当前密码",component:"Input",required:!0},{field:"passwordNew",label:"新密码",component:"InputPassword",componentProps:{placeholder:"新密码",maxlength:18},rules:[{required:!0,validator:(r,t)=>t?t.match(/^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\\W_!@#$%^&*`~()-+=]+$)(?![a-z0-9]+$)(?![a-z\\W_!@#$%^&*`~()-+=]+$)(?![0-9\\W_!@#$%^&*`~()-+=]+$)[a-zA-Z0-9\\W_!@.#$%^&*`~()-+=]{8,16}$/)?Promise.resolve():Promise.reject("密码强度不够,请重新输入!"):Promise.reject("请输入新密码")}]},{field:"confirmPassword",label:"确认密码",component:"InputPassword",componentProps:{maxLength:18},dynamicRules:({values:r})=>[{required:!0,validator:(t,n)=>n?n!==r.passwordNew?Promise.reject("两次输入的密码不一致!"):Promise.resolve():Promise.reject("不能为空")}]}],showActionButtonGroup:!1,baseColProps:{span:24}}),[s,{setModalProps:e}]=P(r=>{d(),e({confirmLoading:!1})});function a(){return f(this,null,function*(){try{const r=yield c(),{passwordOld:t,passwordNew:n,confirmPassword:w}=r;yield b({oldPsw:t,newPsw:n,confirmPsw:w}),l.success("修改成功,请重新登录"),setTimeout(()=>{o.logout(!0)},2e3)}finally{e({confirmLoading:!1})}})}return(r,t)=>(B(),j(m(_),x(r.$attrs,{destroyOnClose:"",onRegister:m(s),title:p.value,onOk:a,keyboard:!1}),{default:k(()=>[A("div",R,[N(m(g),{onRegister:m(i),layout:"vertical"},null,8,["onRegister"])])]),_:1},16,["onRegister","title"]))}});export{pe as default};