From 6c15129ce8ec2979e919ef81da0343c830168761 Mon Sep 17 00:00:00 2001 From: Faisal Amir Date: Fri, 25 Jul 2025 20:27:38 +0700 Subject: [PATCH] fix: validate name assistant and improve area clickable (#5920) --- web-app/src/containers/DropdownAssistant.tsx | 2 +- .../containers/dialogs/AddEditAssistant.tsx | 18 +++++++++++++++++- web-app/src/locales/de-DE/assistants.json | 1 + web-app/src/locales/en/assistants.json | 3 ++- web-app/src/locales/id/assistants.json | 3 ++- web-app/src/locales/vn/assistants.json | 3 ++- web-app/src/locales/zh-CN/assistants.json | 3 ++- web-app/src/locales/zh-TW/assistants.json | 3 ++- 8 files changed, 29 insertions(+), 7 deletions(-) diff --git a/web-app/src/containers/DropdownAssistant.tsx b/web-app/src/containers/DropdownAssistant.tsx index 67f4ef3bf..7849e8769 100644 --- a/web-app/src/containers/DropdownAssistant.tsx +++ b/web-app/src/containers/DropdownAssistant.tsx @@ -81,7 +81,7 @@ const DropdownAssistant = () => { >
{ setCurrentAssistant(assistant) updateCurrentThreadAssistant(assistant) diff --git a/web-app/src/containers/dialogs/AddEditAssistant.tsx b/web-app/src/containers/dialogs/AddEditAssistant.tsx index f4e327e35..aa7a215ba 100644 --- a/web-app/src/containers/dialogs/AddEditAssistant.tsx +++ b/web-app/src/containers/dialogs/AddEditAssistant.tsx @@ -61,6 +61,7 @@ export default function AddEditAssistant({ const [paramsTypes, setParamsTypes] = useState(['string']) const [showEmojiPicker, setShowEmojiPicker] = useState(false) const emojiPickerRef = useRef(null) + const [nameError, setNameError] = useState(null) // Handle click outside emoji picker useEffect(() => { @@ -118,6 +119,7 @@ export default function AddEditAssistant({ setParamsKeys(['']) setParamsValues(['']) setParamsTypes(['string']) + setNameError(null) } const handleParameterChange = ( @@ -193,6 +195,11 @@ export default function AddEditAssistant({ } const handleSave = () => { + if (!name.trim()) { + setNameError(t('assistants:nameRequired')) + return + } + setNameError(null) // Convert parameters arrays to object const parameters: Record = {} paramsKeys.forEach((key, index) => { @@ -275,13 +282,22 @@ export default function AddEditAssistant({ setName(e.target.value)} + onChange={(e) => { + setName(e.target.value) + if (e.target.value.trim()) setNameError(null) + }} placeholder={t('assistants:enterName')} autoFocus />
+ {nameError && ( +
+ {nameError} +
+ )} +