mirror of https://github.com/rocboss/paopao-ce
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 line
9.2 KiB
1 line
9.2 KiB
import{$ as e,A as t,Bt as n,C as r,D as i,H as a,O as o,Q as s,S as c,W as l,d as ee,f as u,ht as d,lt as f,p,st as m,w as h,x as g}from"./@css-render-YsNuQTaE.js";import{r as _}from"./pinia-TbaIYBWH.js";import{$ as te,A as ne,G as re,M as ie,N as ae,Q as v,it as y,j as b,n as oe,nt as se,rt as ce,tt as le}from"./naive-ui-Dv03sO69.js";import"./@juggle-BrKhuOcS.js";import{a as x,c as S,i as C,l as w,r as T,s as E}from"./sidebar-B2rODElh.js";import{p as ue}from"./@vicons-CZeOmejd.js";import{t as de}from"./main-nav-BW6UKmWQ.js";var fe={class:`base-line avatar`},pe={class:`base-line`},me={key:0},he={class:`base-line`},ge={key:0},_e={key:1},ve={key:2,class:`phone-bind-wrap`},ye={class:`captcha-img-wrap`},be={class:`captcha-img`},xe=[`src`],D={class:`form-submit-wrap`},O={key:1,class:`phone-bind-wrap`},k={class:`form-submit-wrap`},A=T(t({__name:`Setting`,setup(t){let T=`Bearer `+localStorage.getItem(E),A=f(`public/avatar`),j=w(),M=S(),N=C(),{userInfo:P}=_(M),{profile:F}=_(N),I=f(!1),L=f(!1);f(!1);let R=f(),z=f(),B=f(!1),V=f(!1),H=f(!1),U=f(!1),W=f(60),G=f(!1);f(!1);let K=f();f();let q=f(),J=f(),Y=m({id:``,b64s:``,imgCaptcha:``,phone:``,phone_captcha:``,password:``,old_password:``,reenteredPassword:``}),X=m({id:``,b64s:``,imgCaptcha:``,activate_code:``}),Se=async e=>A.value===`public/avatar`&&![`image/png`,`image/jpg`,`image/jpeg`].includes(e.file.file?.type)?(window.$message.warning(`头像仅允许 png/jpg 格式`),!1):A.value===`image`&&e.file.file?.size>1048576?(window.$message.warning(`头像大小不能超过1MB`),!1):!0,Ce=({file:e,event:t})=>{try{let e=JSON.parse(t.target?.response);e.code===0&&A.value===`public/avatar`&&x.v1.user.post.avatar({avatar:e.data.content}).then(t=>{window.$message.success(`头像更新成功`),R.value?.clear(),M.updateUserinfo({...P.value,avatar:e.data.content})}).catch(e=>{console.log(e)})}catch{window.$message.error(`上传失败`)}},Z=(e,t)=>!!Y.password&&Y.password.startsWith(t)&&Y.password.length>=t.length,we=(e,t)=>t===Y.password,Q=()=>{Y.reenteredPassword&&J.value?.validate({trigger:`password-input`})},Te=e=>{e.preventDefault(),q.value?.validate(e=>{e||(V.value=!0,x.v1.user.post.password({password:Y.password,old_password:Y.old_password}).then(e=>{V.value=!1,H.value=!1,window.$message.success(`密码重置成功`),M.userLogout(),j.triggerAuth(!0),j.triggerAuthKey(`signin`)}).catch(e=>{V.value=!1}))})},Ee=e=>{e.preventDefault(),K.value?.validate(e=>{e||(L.value=!0,x.v1.user.post.phone({phone:Y.phone,captcha:Y.phone_captcha}).then(e=>{L.value=!1,G.value=!1,window.$message.success(`绑定成功`),M.updateUserinfo({...P.value,phone:Y.phone}),Y.id=``,Y.b64s=``,Y.imgCaptcha=``,Y.phone=``,Y.phone_captcha=``}).catch(e=>{L.value=!1}))})},$=()=>{x.v1.captcha.get._self({}).then(e=>{Y.id=e.id,Y.b64s=e.b64s}).catch(e=>{console.log(e)})},De=()=>{x.v1.captcha.get._self({}).then(e=>{X.id=e.id,X.b64s=e.b64s}).catch(e=>{console.log(e)})},Oe=()=>{x.v1.user.post.nickname({nickname:P.value.nickname||``}).then(e=>{B.value=!1,window.$message.success(`昵称修改成功`)}).catch(e=>{B.value=!0})},ke=()=>{if(!(W.value>0&&U.value)){if(Y.imgCaptcha===``){window.$message.warning(`请输入图片验证码`);return}I.value=!0,x.v1.captcha.post._self({phone:Y.phone,img_captcha:Y.imgCaptcha,img_captcha_id:Y.id}).then(e=>{U.value=!0,I.value=!1,window.$message.success(`发送成功`);let t=setInterval(()=>{W.value--,W.value===0&&(clearInterval(t),W.value=60,U.value=!1)},1e3)}).catch(e=>{I.value=!1,e.code===20012&&$(),console.log(e)})}},Ae={phone:[{required:!0,message:`请输入手机号`,trigger:[`input`],validator:(e,t)=>/^[1]+[3-9]{1}\d{9}$/.test(t)}],phone_captcha:[{required:!0,message:`请输入手机验证码`}]},je={password:[{required:!0,message:`请输入新密码`}],old_password:[{required:!0,message:`请输入旧密码`}],reenteredPassword:[{required:!0,message:`请再次输入密码`,trigger:[`input`,`blur`]},{validator:Z,message:`两次密码输入不一致`,trigger:`input`},{validator:we,message:`两次密码输入不一致`,trigger:[`blur`,`password-input`]}]},Me=()=>{B.value=!0,setTimeout(()=>{z.value?.focus()},30)};return a(()=>{P.value.id===0&&(j.triggerAuth(!0),j.triggerAuthKey(`signin`)),$(),De()}),(t,a)=>{let f=de,m=le,_=te,x=oe,S=ce,C=re,w=v,E=y,j=ie,M=se,N=ne,X=b,Z=ae;return l(),h(`div`,null,[o(f,{title:`设置`,theme:``}),o(w,{title:`基本信息`,size:`small`,class:`setting-card`},{default:s(()=>[g(`div`,fe,[o(m,{class:`avatar-img`,size:80,src:d(P).avatar},null,8,[`src`]),!d(F).allowPhoneBind||d(F).allowPhoneBind&&d(P).phone&&d(P).phone.length>0?(l(),c(x,{key:0,ref_key:`avatarRef`,ref:R,action:`/v1/attachment`,headers:{Authorization:T},data:{type:A.value},onBeforeUpload:Se,onFinish:Ce},{default:s(()=>[o(_,{size:`small`},{default:s(()=>[...a[22]||=[i(`更改头像`,-1)]]),_:1})]),_:1},8,[`headers`,`data`])):r(``,!0)]),g(`div`,pe,[a[23]||=g(`span`,{class:`base-label`},`昵称`,-1),B.value?r(``,!0):(l(),h(`div`,me,n(d(P).nickname),1)),e(o(S,{ref_key:`inputInstRef`,ref:z,class:`nickname-input`,value:d(P).nickname,"onUpdate:value":a[0]||=e=>d(P).nickname=e,type:`text`,size:`small`,placeholder:`请输入昵称`,onBlur:Oe,maxlength:16},null,8,[`value`]),[[ee,B.value]]),!B.value&&(!d(F).allowPhoneBind||d(F).allowPhoneBind&&d(P).phone&&d(P).phone.length>0&&d(P).status==1)?(l(),c(_,{key:1,quaternary:``,round:``,type:`success`,size:`small`,onClick:Me},{icon:s(()=>[o(C,null,{default:s(()=>[o(d(ue))]),_:1})]),_:1})):r(``,!0)]),g(`div`,he,[a[24]||=g(`span`,{class:`base-label`},`用户名`,-1),i(` @`+n(d(P).username),1)])]),_:1}),d(F).allowPhoneBind?(l(),c(w,{key:0,title:`手机号`,size:`small`,class:`setting-card`},{default:s(()=>[d(P).phone&&d(P).phone.length>0?(l(),h(`div`,ge,[i(n(d(P).phone)+` `,1),!G.value&&d(P).status==1?(l(),c(_,{key:0,quaternary:``,round:``,type:`success`,onClick:a[1]||=e=>G.value=!0},{default:s(()=>[...a[25]||=[i(` 换绑手机 `,-1)]]),_:1})):r(``,!0)])):(l(),h(`div`,_e,[o(E,{title:`手机绑定提示`,type:`warning`},{default:s(()=>[a[26]||=i(` 成功绑定手机后,才能进行换头像、发动态、回复等交互~`,-1),a[27]||=g(`br`,null,null,-1),G.value?r(``,!0):(l(),h(`a`,{key:0,class:`hash-link`,onClick:a[2]||=e=>G.value=!0},` 立即绑定 `))]),_:1})])),G.value?(l(),h(`div`,ve,[o(Z,{ref_key:`phoneFormRef`,ref:K,model:Y,rules:Ae},{default:s(()=>[o(j,{path:`phone`,label:`手机号`},{default:s(()=>[o(S,{value:Y.phone,"onUpdate:value":a[3]||=e=>Y.phone=e.trim(),placeholder:`请输入中国大陆手机号`,onKeydown:a[4]||=u(p(()=>{},[`prevent`]),[`enter`])},null,8,[`value`])]),_:1}),o(j,{path:`img_captcha`,label:`图形验证码`},{default:s(()=>[g(`div`,ye,[o(S,{value:Y.imgCaptcha,"onUpdate:value":a[5]||=e=>Y.imgCaptcha=e,placeholder:`请输入图形验证码后获取验证码`},null,8,[`value`]),g(`div`,be,[Y.b64s?(l(),h(`img`,{key:0,src:Y.b64s,onClick:$},null,8,xe)):r(``,!0)])])]),_:1}),o(j,{path:`phone_captcha`,label:`短信验证码`},{default:s(()=>[o(M,null,{default:s(()=>[o(S,{value:Y.phone_captcha,"onUpdate:value":a[6]||=e=>Y.phone_captcha=e,placeholder:`请输入收到的短信验证码`},null,8,[`value`]),o(_,{type:`primary`,ghost:``,disabled:U.value,loading:I.value,onClick:ke},{default:s(()=>[i(n(W.value>0&&U.value?W.value+`s后重新发送`:`发送验证码`),1)]),_:1},8,[`disabled`,`loading`])]),_:1})]),_:1}),o(X,{gutter:[0,24]},{default:s(()=>[o(N,{span:24},{default:s(()=>[g(`div`,D,[o(_,{quaternary:``,round:``,onClick:a[7]||=e=>G.value=!1},{default:s(()=>[...a[28]||=[i(` 取消 `,-1)]]),_:1}),o(_,{secondary:``,round:``,type:`primary`,loading:L.value,onClick:Ee},{default:s(()=>[...a[29]||=[i(` 绑定 `,-1)]]),_:1},8,[`loading`])])]),_:1})]),_:1})]),_:1},8,[`model`])])):r(``,!0)]),_:1})):r(``,!0),r(``,!0),o(w,{title:`账户安全`,size:`small`,class:`setting-card`},{default:s(()=>[a[38]||=i(` 您已设置密码 `,-1),H.value?r(``,!0):(l(),c(_,{key:0,quaternary:``,round:``,type:`success`,onClick:a[14]||=e=>H.value=!0},{default:s(()=>[...a[35]||=[i(` 重置密码 `,-1)]]),_:1})),H.value?(l(),h(`div`,O,[o(Z,{ref_key:`formRef`,ref:q,model:Y,rules:je},{default:s(()=>[o(j,{path:`old_password`,label:`旧密码`},{default:s(()=>[o(S,{value:Y.old_password,"onUpdate:value":a[15]||=e=>Y.old_password=e,type:`password`,placeholder:`请输入当前密码`,onKeydown:a[16]||=u(p(()=>{},[`prevent`]),[`enter`])},null,8,[`value`])]),_:1}),o(j,{path:`password`,label:`新密码`},{default:s(()=>[o(S,{value:Y.password,"onUpdate:value":a[17]||=e=>Y.password=e,type:`password`,placeholder:`请输入新密码`,onInput:Q,onKeydown:a[18]||=u(p(()=>{},[`prevent`]),[`enter`])},null,8,[`value`])]),_:1}),o(j,{ref_key:`rPasswordFormItemRef`,ref:J,first:``,path:`reenteredPassword`,label:`重复密码`},{default:s(()=>[o(S,{value:Y.reenteredPassword,"onUpdate:value":a[19]||=e=>Y.reenteredPassword=e,disabled:!Y.password,type:`password`,placeholder:`请再次输入密码`,onKeydown:a[20]||=u(p(()=>{},[`prevent`]),[`enter`])},null,8,[`value`,`disabled`])]),_:1},512),o(X,{gutter:[0,24]},{default:s(()=>[o(N,{span:24},{default:s(()=>[g(`div`,k,[o(_,{quaternary:``,round:``,onClick:a[21]||=e=>H.value=!1},{default:s(()=>[...a[36]||=[i(` 取消 `,-1)]]),_:1}),o(_,{secondary:``,round:``,type:`primary`,loading:V.value,onClick:Te},{default:s(()=>[...a[37]||=[i(` 更新 `,-1)]]),_:1},8,[`loading`])])]),_:1})]),_:1})]),_:1},8,[`model`])])):r(``,!0)]),_:1})])}}}),[[`__scopeId`,`data-v-0bce70f5`]]);export{A as default}; |