From 1fe42a6edab7002b464fdcebdb1349003b457ead Mon Sep 17 00:00:00 2001 From: jialin Date: Sat, 14 Sep 2024 19:47:30 +0800 Subject: [PATCH] fix: resource label value validation --- src/locales/en-US/common.ts | 2 +- src/locales/en-US/resources.ts | 1 + src/locales/zh-CN/common.ts | 2 +- src/locales/zh-CN/resources.ts | 1 + .../llmodels/components/advance-config.tsx | 4 ++- .../resources/components/update-labels.tsx | 28 ++++++++++++++++++- 6 files changed, 34 insertions(+), 4 deletions(-) diff --git a/src/locales/en-US/common.ts b/src/locales/en-US/common.ts index 3b756460..b46ba441 100644 --- a/src/locales/en-US/common.ts +++ b/src/locales/en-US/common.ts @@ -46,7 +46,7 @@ export default { 'common.button.disabled': 'Disabled', 'common.button.upgrade': 'Upgrade', 'common.input.holder': 'Please enter', - 'common.validate.value': 'value is required', + 'common.validate.value': '{name} value is required', 'common.button.edit': 'Edit', 'common.button.authorize': 'Role Authorization', 'common.button.confirm': 'Confirm', diff --git a/src/locales/en-US/resources.ts b/src/locales/en-US/resources.ts index ad5905fc..def70160 100644 --- a/src/locales/en-US/resources.ts +++ b/src/locales/en-US/resources.ts @@ -8,6 +8,7 @@ export default { 'resources.table.labels': 'Labels', 'resources.table.hostname': 'Hostname', 'resources.table.key.tips': 'The same key exists.', + 'resources.form.label': 'Label', 'resources.form.advanced': 'Advanced', 'resources.form.enablePartialOffload': 'Allow CPU Offloading', 'resources.form.placementStrategy': 'Placement Strategy', diff --git a/src/locales/zh-CN/common.ts b/src/locales/zh-CN/common.ts index 4c8f30ea..c5255e0d 100644 --- a/src/locales/zh-CN/common.ts +++ b/src/locales/zh-CN/common.ts @@ -109,7 +109,7 @@ export default { 'common.ws.reconnect': '重新连接', 'common.input.key': '键', 'common.input.value': '值', - 'common.validate.value': '值必填', + 'common.validate.value': '{name}值必填', 'common.input.type': '类型', 'common.input.visible': '是否可见', 'common.input.description': '描述', diff --git a/src/locales/zh-CN/resources.ts b/src/locales/zh-CN/resources.ts index 5094fb0f..6ccf4713 100644 --- a/src/locales/zh-CN/resources.ts +++ b/src/locales/zh-CN/resources.ts @@ -7,6 +7,7 @@ export default { 'resources.nodes': '节点', 'resources.table.hostname': '主机名', 'resources.table.key.tips': '存在相同的 key.', + 'resources.form.label': '标签', 'resources.table.labels': '标签', 'resources.form.advanced': '高级', 'resources.form.enablePartialOffload': '允许 CPU 卸载', diff --git a/src/pages/llmodels/components/advance-config.tsx b/src/pages/llmodels/components/advance-config.tsx index 734a9fb3..02f05c84 100644 --- a/src/pages/llmodels/components/advance-config.tsx +++ b/src/pages/llmodels/components/advance-config.tsx @@ -146,7 +146,9 @@ const AdvanceConfig: React.FC = (props) => { id: 'common.validate.value' }, { - name: 'models.form.selector' + name: intl.formatMessage({ + id: 'models.form.selector' + }) } ) ); diff --git a/src/pages/resources/components/update-labels.tsx b/src/pages/resources/components/update-labels.tsx index 50480ae3..3b2f8dfb 100644 --- a/src/pages/resources/components/update-labels.tsx +++ b/src/pages/resources/components/update-labels.tsx @@ -3,6 +3,7 @@ import ModalFooter from '@/components/modal-footer'; import SealInput from '@/components/seal-form/seal-input'; import { useIntl } from '@umijs/max'; import { Form, Modal } from 'antd'; +import _ from 'lodash'; import React from 'react'; import SimpleBar from 'simplebar-react'; import 'simplebar-react/dist/simplebar.min.css'; @@ -93,7 +94,32 @@ const UpdateLabels: React.FC = (props) => { disabled /> - name="labels"> + + name="labels" + rules={[ + () => ({ + validator(rule, value) { + if (_.keys(value).length > 0) { + if (_.some(_.keys(value), (k: string) => !value[k])) { + return Promise.reject( + intl.formatMessage( + { + id: 'common.validate.value' + }, + { + name: intl.formatMessage({ + id: 'resources.form.label' + }) + } + ) + ); + } + } + return Promise.resolve(); + } + }) + ]} + >