diff --git a/ui/src/locales/lang/en-US/common.ts b/ui/src/locales/lang/en-US/common.ts index aa6e74795..2fd0a30b3 100644 --- a/ui/src/locales/lang/en-US/common.ts +++ b/ui/src/locales/lang/en-US/common.ts @@ -47,7 +47,8 @@ export default { audio: 'Audio', video: 'Video', other: 'Other', - addExtensions: 'Add suffix' + addExtensions: 'Add suffix', + existingExtensionsTip: 'File suffix already exists', }, status: { label: 'Status', diff --git a/ui/src/locales/lang/zh-CN/common.ts b/ui/src/locales/lang/zh-CN/common.ts index cc8af067e..db1e7e731 100644 --- a/ui/src/locales/lang/zh-CN/common.ts +++ b/ui/src/locales/lang/zh-CN/common.ts @@ -48,6 +48,7 @@ export default { video: '视频', other: '其他文件', addExtensions: '添加后缀名', + existingExtensionsTip: '文件后缀已存在', }, status: { label: '状态', diff --git a/ui/src/locales/lang/zh-Hant/common.ts b/ui/src/locales/lang/zh-Hant/common.ts index 6fe33c876..8e6293076 100644 --- a/ui/src/locales/lang/zh-Hant/common.ts +++ b/ui/src/locales/lang/zh-Hant/common.ts @@ -48,6 +48,7 @@ export default { video: '視頻', other: '其他文件', addExtensions: '添加後綴名', + existingExtensionsTip: '文件後綴已存在', }, status: { label: '狀態', diff --git a/ui/src/workflow/nodes/base-node/component/FileUploadSettingDialog.vue b/ui/src/workflow/nodes/base-node/component/FileUploadSettingDialog.vue index 27fc88a03..5e943af32 100644 --- a/ui/src/workflow/nodes/base-node/component/FileUploadSettingDialog.vue +++ b/ui/src/workflow/nodes/base-node/component/FileUploadSettingDialog.vue @@ -63,7 +63,7 @@ }}

-

TXT、MD、DOCX、HTML、CSV、XLSX、XLS、PDF

+

{{ documentExtensions.map(s => s.toUpperCase()).join('、') }}

-

JPG、JPEG、PNG、GIF

+

{{ imageExtensions.map(s => s.toUpperCase()).join('、') }}

@@ -121,7 +121,7 @@ }}

-

MP3、WAV、OGG、ACC、M4A

+

{{ audioExtensions.map(s => s.toUpperCase()).join('、') }}

@@ -199,6 +199,8 @@ import { nextTick, ref } from 'vue' import type { InputInstance } from 'element-plus' import { cloneDeep } from 'lodash' +import { MsgWarning } from '@/utils/message' +import { t } from '@/locales' const emit = defineEmits(['refresh']) const props = defineProps<{ nodeModel: any }>() @@ -210,6 +212,10 @@ const loading = ref(false) const fieldFormRef = ref() const InputRef = ref() +const documentExtensions = ['txt', 'md', 'docx', 'html', 'csv', 'xlsx', 'xls', 'pdf'] +const imageExtensions = ['jpg', 'jpeg', 'png', 'gif'] +const audioExtensions = ['mp3', 'wav', 'ogg', 'acc', 'm4a'] + const form_data = ref({ maxFiles: 3, fileLimit: 50, @@ -244,9 +250,15 @@ const showInput = () => { } const handleInputConfirm = () => { if (inputValue.value) { - if (form_data.value.otherExtensions.includes(inputValue.value)) { + if ( + form_data.value.otherExtensions.includes(inputValue.value) || + documentExtensions.includes(inputValue.value) || + imageExtensions.includes(inputValue.value) || + audioExtensions.includes(inputValue.value) + ) { inputVisible.value = false inputValue.value = '' + MsgWarning(t('common.fileUpload.existingExtensionsTip')) return } form_data.value.otherExtensions.push(inputValue.value)