diff --git a/src/renderer/src/pages/Sign/Forget.tsx b/src/renderer/src/pages/Sign/Forget.tsx index 4c1f4ca..1cbc871 100644 --- a/src/renderer/src/pages/Sign/Forget.tsx +++ b/src/renderer/src/pages/Sign/Forget.tsx @@ -155,8 +155,8 @@ const Forget = () => { > } - placeholder={'邮箱'} disabled={isSending} + placeholder={'邮箱'} /> @@ -199,6 +199,7 @@ const Forget = () => { name={'password'} rules={[ { required: true, message: '请输入密码' }, + { whitespace: true, message: '密码不能为空字符' }, { min: 10, message: '密码至少为10位' }, { max: 30, message: '密码最多为30位' } ]} @@ -208,8 +209,8 @@ const Forget = () => { addonBefore={ 新  密  码 } - placeholder={'密码'} disabled={isChanging} + placeholder={'密码'} /> { diff --git a/src/renderer/src/pages/Sign/SignIn.tsx b/src/renderer/src/pages/Sign/SignIn.tsx index b81bc4d..be500bd 100644 --- a/src/renderer/src/pages/Sign/SignIn.tsx +++ b/src/renderer/src/pages/Sign/SignIn.tsx @@ -124,6 +124,7 @@ const SignIn = () => { form={twoFactorForm} ref={(ref) => { setTimeout(() => { + // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access ref?.getFieldInstance('twoFactorCode').focus() }, 50) }} @@ -132,7 +133,7 @@ const SignIn = () => { name={'twoFactorCode'} label={'验证码'} style={{ marginTop: 10 }} - rules={[{ required: true, len: 6 }]} + rules={[{ required: true, whitespace: true, len: 6 }]} > { } - placeholder={'邮箱/用户名'} disabled={isSigningIn} + placeholder={'邮箱/用户名'} /> } - placeholder={'密码'} disabled={isSigningIn} + placeholder={'密码'} /> diff --git a/src/renderer/src/pages/Sign/SignUp.tsx b/src/renderer/src/pages/Sign/SignUp.tsx index 99d6db4..b1c8b41 100644 --- a/src/renderer/src/pages/Sign/SignUp.tsx +++ b/src/renderer/src/pages/Sign/SignUp.tsx @@ -139,6 +139,7 @@ const SignUp = () => { name={'username'} rules={[ { required: true, message: '请输入用户名' }, + { whitespace: true, message: '用户名不能为空字符' }, { pattern: /^[a-zA-Z-_][0-9a-zA-Z-_]{2,38}$/, message: @@ -148,10 +149,10 @@ const SignUp = () => { > } - placeholder={'用户名'} maxLength={39} showCount={true} disabled={isSigningUp} + placeholder={'用户名'} /> { } - placeholder={'邮箱'} disabled={isSigningUp} + placeholder={'邮箱'} /> { } - placeholder={'密码'} disabled={isSigningUp} + placeholder={'密码'} /> { } - placeholder={'确认密码'} disabled={isSigningUp} + placeholder={'确认密码'} /> diff --git a/src/renderer/src/pages/Sign/Verify.tsx b/src/renderer/src/pages/Sign/Verify.tsx index 26efe94..006b72d 100644 --- a/src/renderer/src/pages/Sign/Verify.tsx +++ b/src/renderer/src/pages/Sign/Verify.tsx @@ -195,6 +195,7 @@ const Verify = () => { name={'nickname'} rules={[ { required: true, message: '请输入昵称' }, + { whitespace: true, message: '昵称不能为空字符' }, { min: 3, message: '昵称至少为3个字符' } ]} > diff --git a/src/renderer/src/pages/System/Group.tsx b/src/renderer/src/pages/System/Group.tsx index 15bdbe7..f248ffb 100644 --- a/src/renderer/src/pages/System/Group.tsx +++ b/src/renderer/src/pages/System/Group.tsx @@ -190,8 +190,9 @@ const Group = () => { const handleOnListDeleteBtnClick = () => { modal .confirm({ - title: '确定删除', + centered: true, maskClosable: true, + title: '确定删除', content: `确定删除选中的 ${tableSelectedItem.length} 个用户组吗?` }) .then( @@ -243,8 +244,9 @@ const Group = () => { return () => { modal .confirm({ - title: '确定删除', + centered: true, maskClosable: true, + title: '确定删除', content: `确定删除角色 ${value.name} 吗?` }) .then( @@ -543,6 +545,7 @@ const Group = () => { onChange={handleOnSearchNameChange} onKeyDown={handleOnSearchNameKeyDown} status={isRegexLegal ? undefined : 'error'} + placeholder={'请输入搜索内容'} /> @@ -597,7 +600,7 @@ const Group = () => { const addAndEditForm = ( - diff --git a/src/renderer/src/pages/System/Role.tsx b/src/renderer/src/pages/System/Role.tsx index 570beb2..ce4e5e7 100644 --- a/src/renderer/src/pages/System/Role.tsx +++ b/src/renderer/src/pages/System/Role.tsx @@ -182,8 +182,9 @@ const Role = () => { const handleOnListDeleteBtnClick = () => { modal .confirm({ - title: '确定删除', + centered: true, maskClosable: true, + title: '确定删除', content: `确定删除选中的 ${tableSelectedItem.length} 个角色吗?` }) .then( @@ -235,8 +236,9 @@ const Role = () => { return () => { modal .confirm({ - title: '确定删除', + centered: true, maskClosable: true, + title: '确定删除', content: `确定删除角色 ${value.name} 吗?` }) .then( @@ -552,6 +554,7 @@ const Role = () => { onChange={handleOnSearchNameChange} onKeyDown={handleOnSearchNameKeyDown} status={isRegexLegal ? undefined : 'error'} + placeholder={'请输入搜索内容'} /> @@ -606,7 +609,7 @@ const Role = () => { const addAndEditForm = ( - diff --git a/src/renderer/src/pages/System/Settings/Mail.tsx b/src/renderer/src/pages/System/Settings/Mail.tsx index 898581e..22d0222 100644 --- a/src/renderer/src/pages/System/Settings/Mail.tsx +++ b/src/renderer/src/pages/System/Settings/Mail.tsx @@ -31,6 +31,7 @@ const Mail = () => { form={mailSendForm} ref={(ref) => { setTimeout(() => { + // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access ref?.getFieldInstance('to').focus() }, 50) }} @@ -41,7 +42,7 @@ const Mail = () => { style={{ marginTop: 10 }} rules={[{ required: true, type: 'email' }]} > - + @@ -134,29 +135,34 @@ const Mail = () => { disabled={!hasPermission('system:settings:modify:mail')} > - + - - + + - + None SSL/TLS StartTls - + - + - + - + diff --git a/src/renderer/src/pages/System/Settings/SensitiveWord.tsx b/src/renderer/src/pages/System/Settings/SensitiveWord.tsx index 7284f54..7b738a3 100644 --- a/src/renderer/src/pages/System/Settings/SensitiveWord.tsx +++ b/src/renderer/src/pages/System/Settings/SensitiveWord.tsx @@ -153,7 +153,8 @@ const SensitiveWord = () => { } - > + placeholder={'请输入敏感词'} + /> ) diff --git a/src/renderer/src/pages/System/Settings/TwoFactor.tsx b/src/renderer/src/pages/System/Settings/TwoFactor.tsx index a94e8fc..7d93d61 100644 --- a/src/renderer/src/pages/System/Settings/TwoFactor.tsx +++ b/src/renderer/src/pages/System/Settings/TwoFactor.tsx @@ -59,10 +59,15 @@ const TwoFactor = () => { disabled={!hasPermission('system:settings:modify:two-factor')} > - + - + diff --git a/src/renderer/src/pages/System/Tools/Base.tsx b/src/renderer/src/pages/System/Tools/Base.tsx index 528a107..d68e248 100644 --- a/src/renderer/src/pages/System/Tools/Base.tsx +++ b/src/renderer/src/pages/System/Tools/Base.tsx @@ -279,9 +279,9 @@ const Base = () => { compileForm.setFieldValue('entryFileName', undefined) void modal.confirm({ - title: '编译', centered: true, maskClosable: true, + title: '编译', footer: (_, { OkBtn, CancelBtn }) => ( <> @@ -295,7 +295,7 @@ const Base = () => { name={'entryFileName'} label={'入口文件'} style={{ marginTop: 10 }} - rules={[{ required: true, message: '请选择入口文件' }]} + rules={[{ required: true }]} > { ].includes(value) ) .map((value) => ({ value, label: value }))} + placeholder={'请选择入口文件'} /> @@ -428,8 +429,9 @@ const Base = () => { return () => { modal .confirm({ - title: '确定删除', + centered: true, maskClosable: true, + title: '确定删除', content: `确定删除基板 ${value.name} 吗?` }) .then( @@ -609,9 +611,9 @@ const Base = () => { const handleOnAddFile = () => { void modal.confirm({ - title: '新建文件', centered: true, maskClosable: true, + title: '新建文件', footer: (_, { OkBtn, CancelBtn }) => ( <> @@ -623,6 +625,7 @@ const Base = () => { form={addFileForm} ref={(ref) => { setTimeout(() => { + // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access ref?.getFieldInstance('fileName').focus() }, 50) }} @@ -652,7 +655,7 @@ const Base = () => { }) ]} > - + ), @@ -800,9 +803,9 @@ const Base = () => { return () => { renameFileForm.setFieldValue('fileName', fileName) void modal.confirm({ - title: '重命名文件', centered: true, maskClosable: true, + title: '重命名文件', footer: (_, { OkBtn, CancelBtn }) => ( <> @@ -814,6 +817,7 @@ const Base = () => { form={renameFileForm} ref={(ref) => { setTimeout(() => { + // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access ref?.getFieldInstance('fileName').focus() }, 50) }} @@ -846,7 +850,7 @@ const Base = () => { }) ]} > - + ), @@ -915,8 +919,9 @@ const Base = () => { return () => { modal .confirm({ - title: '确定删除', + centered: true, maskClosable: true, + title: '确定删除', content: `确定删除文件 ${fileName} 吗?` }) .then( @@ -1040,7 +1045,7 @@ const Base = () => { const addAndEditForm = ( - ), @@ -773,8 +776,9 @@ const Template = () => { return () => { modal .confirm({ - title: '确定删除', + centered: true, maskClosable: true, + title: '确定删除', content: `确定删除文件 ${fileName} 吗?` }) .then( @@ -979,7 +983,7 @@ const Template = () => { const addAndEditForm = ( - diff --git a/src/renderer/src/pages/Tools/Store.tsx b/src/renderer/src/pages/Tools/Store.tsx index 0e11024..f3837d0 100644 --- a/src/renderer/src/pages/Tools/Store.tsx +++ b/src/renderer/src/pages/Tools/Store.tsx @@ -331,11 +331,11 @@ const Store = () => { >
diff --git a/src/renderer/src/pages/Tools/index.tsx b/src/renderer/src/pages/Tools/index.tsx index 8671178..ee81c29 100644 --- a/src/renderer/src/pages/Tools/index.tsx +++ b/src/renderer/src/pages/Tools/index.tsx @@ -348,6 +348,7 @@ const Tools = () => { form={upgradeForm} ref={(ref) => { setTimeout(() => { + // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access ref?.getFieldInstance('toolId').focus() }, 50) }} @@ -376,7 +377,7 @@ const Tools = () => { name={'ver'} label={'版本'} rules={[ - { required: true }, + { required: true, whitespace: true }, { pattern: /^\d+\.\d+\.\d+$/, message: `格式必须为 '<数字>.<数字>.<数字>', eg. 1.0.3` diff --git a/src/renderer/src/pages/User/index.tsx b/src/renderer/src/pages/User/index.tsx index 23c4671..7cf28a2 100644 --- a/src/renderer/src/pages/User/index.tsx +++ b/src/renderer/src/pages/User/index.tsx @@ -115,6 +115,7 @@ const User = () => { wrapperCol={{ span: 18 }} ref={(ref) => { setTimeout(() => { + // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access ref?.getFieldInstance('originalPassword').focus() }, 50) }} @@ -123,7 +124,7 @@ const User = () => { name={'originalPassword'} label={'原密码'} labelAlign={'right'} - rules={[{ required: true, message: '请输入原密码' }]} + rules={[{ required: true, whitespace: true }]} > @@ -132,7 +133,7 @@ const User = () => { label={'新密码'} labelAlign={'right'} rules={[ - { required: true, message: '请输入新密码' }, + { required: true, whitespace: true }, { min: 10, message: '密码至少为10位' }, { max: 30, message: '密码最多为30位' } ]} @@ -144,7 +145,7 @@ const User = () => { label={'确认密码'} labelAlign={'right'} rules={[ - { required: true, message: '请确认密码' }, + { required: true }, ({ getFieldValue }) => ({ validator(_, value) { if (!value || getFieldValue('newPassword') === value) { @@ -247,6 +248,7 @@ const User = () => { form={twoFactorForm} ref={(ref) => { setTimeout(() => { + // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access ref?.getFieldInstance('twoFactorCode').focus() }, 50) }} @@ -255,12 +257,13 @@ const User = () => { name={'twoFactorCode'} label={'验证码'} style={{ marginTop: 10 }} - rules={[{ required: true, len: 6 }]} + rules={[{ required: true, whitespace: true, len: 6 }]} > @@ -334,6 +337,7 @@ const User = () => { form={twoFactorForm} ref={(ref) => { setTimeout(() => { + // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access ref?.getFieldInstance('twoFactorCode').focus() }, 50) }} @@ -342,12 +346,15 @@ const User = () => { name={'twoFactorCode'} label={'验证码'} style={{ marginTop: 10, marginRight: 30 }} - rules={[{ required: true, len: 6 }]} + rules={[ + { required: true, whitespace: true, len: 6 } + ]} > @@ -410,6 +417,7 @@ const User = () => { setAvatar(userWithPowerInfoVo.userInfo.avatar) form.setFieldValue('nickname', userWithPowerInfoVo.userInfo.nickname) setUserWithPowerInfoVo(userWithPowerInfoVo) + void form.validateFields() }) .finally(() => { setIsLoading(false) @@ -509,7 +517,7 @@ const User = () => { { maxLength={20} showCount disabled={isLoading} + placeholder={'请输入昵称'} />