1 line
7.1 KiB
JavaScript
1 line
7.1 KiB
JavaScript
import{i as e}from"./rolldown-runtime-BgaNhQyE.js";import{Dr as t,t as n}from"./jsx-runtime-CRBytmvs.js";import{t as r}from"./typography-DRFhazK9.js";import{t as i}from"./space-Cu4QVMgQ.js";import{t as a}from"./button-BILozH6U.js";import{t as o}from"./avatar-DPxbCsa4.js";import{n as s,t as c}from"./LockOutlined-B8eRH1x4.js";import{t as l}from"./radio-CxFl70_7.js";import{n as u,t as d}from"./card-DU2T2-YW.js";import{t as f}from"./form-B3R3kIqp.js";import{t as p}from"./input-CHcsaDtX.js";import{t as m}from"./list-C8spiXAQ.js";import{r as h}from"./PictureOutlined-CB8Pr7jP.js";import{t as g}from"./tag-DBV1bHre.js";import{t as _}from"./upload-oMV5VJeJ.js";import{t as v}from"./CheckCircleOutlined-IJiAu4Hy.js";import{t as y}from"./CloseCircleOutlined-D2to6Tog.js";import{t as b}from"./EnvironmentOutlined-Be7mN2bK.js";import{n as x,r as S,t as C}from"./UploadOutlined-NadwXvrl.js";import{t as w}from"./UserOutlined-D5Ziy0eL.js";import{c as T,r as E,s as D,t as O}from"./user-LBumqaa7.js";import{t as k}from"./useTranslation-DBl6NYjI.js";import{t as A}from"./useMobile-Bcq0nkW4.js";var j=e(t(),1),M=e(s(),1),N=n(),{Text:P}=r,F=()=>{let e=O(e=>e.userinfo),t=O(e=>e.info),[n]=f.useForm(),[r,i]=(0,j.useState)(!1),{t:s}=k();return(0,N.jsxs)(`div`,{className:`w-full px-6 py-4`,children:[(0,N.jsxs)(`div`,{className:`flex flex-col items-center mb-3`,children:[(0,N.jsx)(o,{size:120,src:e?.avatar_url,className:`mb-4 border-2 border-gray-200`}),(0,N.jsx)(_,{name:`file`,action:`/index.php/system/uploadAvatar`,headers:{Authorization:`Bearer ${localStorage.getItem(`token`)}`},showUploadList:!1,onChange:async e=>{e.file.status===`done`&&(h.success(s(`user.profile.baseInfo.avatarSuccess`)),await t())},children:(0,N.jsx)(a,{icon:(0,N.jsx)(C,{}),children:s(`user.profile.baseInfo.updateAvatar`)})}),(0,N.jsx)(`p`,{className:`text-gray-500 text-sm mt-2`,children:s(`user.profile.baseInfo.updateAvatarDesc`)})]}),(0,N.jsxs)(f,{form:n,layout:`vertical`,onFinish:async e=>{try{i(!0),await D(e),await t(),h.success(s(`user.profile.baseInfo.success`))}finally{i(!1)}},initialValues:{bio:e?.bio,email:e?.email,mobile:e?.mobile,nickname:e?.nickname,sex:e?.sex,username:e?.username},children:[(0,N.jsx)(f.Item,{label:s(`user.profile.baseInfo.username`),name:`username`,rules:[{required:!0,message:s(`user.profile.baseInfo.username.message`)}],children:(0,N.jsx)(p,{disabled:!0})}),(0,N.jsx)(f.Item,{label:s(`user.profile.baseInfo.nickname`),name:`nickname`,rules:[{required:!0,message:s(`user.profile.baseInfo.nickname.message`)}],children:(0,N.jsx)(p,{})}),(0,N.jsx)(f.Item,{label:s(`user.profile.baseInfo.sex`),name:`sex`,children:(0,N.jsx)(l.Group,{options:[{value:0,label:s(`user.profile.baseInfo.sex.0`)},{value:1,label:s(`user.profile.baseInfo.sex.1`)}]})}),(0,N.jsx)(f.Item,{label:s(`user.profile.baseInfo.bio`),name:`bio`,children:(0,N.jsx)(p.TextArea,{rows:4})}),(0,N.jsx)(f.Item,{label:s(`user.profile.baseInfo.email`),name:`email`,rules:[{type:`email`,message:s(`user.profile.baseInfo.email.typeMessage`)},{required:!0,message:s(`user.profile.baseInfo.email.requiredMessage`)}],children:(0,N.jsx)(p,{})}),(0,N.jsx)(f.Item,{label:s(`user.profile.baseInfo.mobile`),name:`mobile`,rules:[{required:!0,message:s(`user.profile.baseInfo.mobile.message`)}],children:(0,N.jsx)(p,{})}),(0,N.jsx)(f.Item,{children:(0,N.jsx)(a,{type:`primary`,htmlType:`submit`,size:`large`,loading:r,block:!0,children:s(`user.profile.baseInfo.submit`)})})]})]})},I=()=>{let[e]=f.useForm(),[t,n]=(0,j.useState)(!1),{t:r}=k();return(0,N.jsxs)(f,{form:e,layout:`vertical`,onFinish:async t=>{try{n(!0),await T(t),e.resetFields(),h.success(r(`user.profile.changePassword.success`))}finally{n(!1)}},className:`w-full px-6 py-4`,children:[(0,N.jsx)(f.Item,{label:r(`user.profile.changePassword.oldPassword`),name:`oldPassword`,rules:[{required:!0,message:r(`user.profile.changePassword.oldPassword.message`)}],children:(0,N.jsx)(p.Password,{})}),(0,N.jsx)(f.Item,{label:r(`user.profile.changePassword.newPassword`),name:`newPassword`,rules:[{required:!0,message:r(`user.profile.changePassword.requiredMessage`)},{min:8,message:r(`user.profile.changePassword.minMessage`)}],children:(0,N.jsx)(p.Password,{})}),(0,N.jsx)(f.Item,{label:r(`user.profile.changePassword.rePassword`),name:`rePassword`,dependencies:[`newPassword`],rules:[{required:!0,message:r(`user.profile.changePassword.requiredMessage`)},({getFieldValue:e})=>({validator(t,n){return!n||e(`newPassword`)===n?Promise.resolve():Promise.reject(Error(r(`user.profile.changePassword.rePassword.message`)))}})],children:(0,N.jsx)(p.Password,{})}),(0,N.jsx)(a,{type:`primary`,block:!0,htmlType:`submit`,size:`large`,loading:t,children:r(`user.profile.changePassword.submit`)})]})},L=()=>{let[e,t]=(0,j.useState)([]),{t:n}=k();(0,j.useEffect)(()=>{E().then(e=>t(e.data.data||[]))},[]);let r=({browser:e})=>{let t={Chrome:`🚀`,Firefox:`🦊`,Safari:`🍎`,Edge:`🌊`},n=Object.keys(t).find(t=>e?.includes(t));return(0,N.jsx)(`span`,{children:n?t[n]:`💻`})};return(0,N.jsx)(m,{dataSource:e,className:`w-full px-6 py-4 overflow-auto`,locale:{emptyText:n(`user.profile.loginLog.empty`)},renderItem:e=>(0,N.jsxs)(m.Item,{style:{minWidth:600},children:[(0,N.jsx)(o,{size:`large`,icon:(0,N.jsx)(w,{}),style:{backgroundColor:e.status===`0`?`#87d068`:`#f56a00`,marginRight:16}}),(0,N.jsxs)(`div`,{className:`flex-1`,children:[(0,N.jsxs)(`div`,{className:`flex items-center mb-2`,children:[(0,N.jsx)(P,{strong:!0,className:`mr-3 text-base`,children:e.username}),e.status===`0`?(0,N.jsx)(g,{color:`green`,icon:(0,N.jsx)(v,{}),children:n(`user.profile.loginLog.success`)}):(0,N.jsx)(g,{color:`red`,icon:(0,N.jsx)(y,{}),children:n(`user.profile.loginLog.error`)}),(0,N.jsx)(P,{type:`secondary`,className:`ml-auto`,children:(0,M.default)(e.login_time).format(`YYYY-MM-DD HH:mm:ss`)})]}),(0,N.jsxs)(i,{size:`large`,wrap:!0,children:[(0,N.jsxs)(`div`,{className:`flex items-center`,children:[(0,N.jsx)(S,{className:`mr-1 text-blue-500`}),(0,N.jsx)(P,{type:`secondary`,children:e.ipaddr})]}),(0,N.jsxs)(`div`,{className:`flex items-center`,children:[(0,N.jsx)(b,{className:`mr-1 text-green-500`}),(0,N.jsx)(P,{type:`secondary`,children:e.login_location})]}),(0,N.jsxs)(`div`,{className:`flex items-center`,children:[(0,N.jsx)(r,{browser:e.browser}),(0,N.jsx)(P,{type:`secondary`,className:`ml-1`,children:e.browser})]}),(0,N.jsxs)(P,{type:`secondary`,children:[`OS: `,e.os]})]})]})]})})},R=()=>{let[e,t]=(0,j.useState)(`info`),{t:n}=k(),r=A(),i=[{label:(0,N.jsxs)(`span`,{className:`flex items-center`,children:[(0,N.jsx)(w,{className:`mr-2`}),r?null:n(`user.profile.baseInfo`)]}),key:`info`,children:(0,N.jsx)(F,{})},{label:(0,N.jsxs)(`span`,{className:`flex items-center`,children:[(0,N.jsx)(c,{className:`mr-2`}),r?null:n(`user.profile.changePassword`)]}),key:`security`,children:(0,N.jsx)(I,{})},{label:(0,N.jsxs)(`span`,{className:`flex items-center`,children:[(0,N.jsx)(x,{className:`mr-2`}),r?null:n(`user.profile.loginLog`)]}),key:`loginlog`,children:(0,N.jsx)(L,{})}];return(0,N.jsx)(d,{title:n(`user.profile.title`),variant:`borderless`,style:{maxWidth:800,width:`100%`},styles:{body:{paddingInline:0,paddingRight:25,display:`flex`}},children:(0,N.jsx)(u,{activeKey:e,onChange:t,tabPlacement:`start`,className:`min-h-[500px] w-full`,items:i})})};export{R as default}; |