From 297d0f1f3070533ff1c2f5d7c2f5f8ddbf02c664 Mon Sep 17 00:00:00 2001 From: zxhlyh Date: Tue, 20 Feb 2024 14:49:00 +0800 Subject: [PATCH] fix: code-based extension (#2490) --- .../app/configuration/config-var/index.tsx | 3 +- .../app/configuration/debug/index.tsx | 2 +- .../toolbox/moderation/form-generation.tsx | 2 +- web/app/components/base/chat/chat/hooks.ts | 2 +- web/utils/model-config.ts | 48 +++++++++---------- 5 files changed, 29 insertions(+), 28 deletions(-) diff --git a/web/app/components/app/configuration/config-var/index.tsx b/web/app/components/app/configuration/config-var/index.tsx index 671ff9746e..9aeb00de8f 100644 --- a/web/app/components/app/configuration/config-var/index.tsx +++ b/web/app/components/app/configuration/config-var/index.tsx @@ -147,6 +147,7 @@ const ConfigVar: FC = ({ promptVariables, readonly, onPromptVar ) => { setShowExternalDataToolModal({ payload: { + type, variable: key, label: name, config, @@ -245,7 +246,7 @@ const ConfigVar: FC = ({ promptVariables, readonly, onPromptVar const handleConfig = ({ key, type, index, name, config, icon, icon_background }: ExternalDataToolParams) => { setCurrKey(key) - if (type === 'api') { + if (type !== 'string' && type !== 'paragraph' && type !== 'select') { handleOpenExternalDataToolModal({ key, type, index, name, config, icon, icon_background }, promptVariables) return } diff --git a/web/app/components/app/configuration/debug/index.tsx b/web/app/components/app/configuration/debug/index.tsx index 194bc1f8b5..68bbdacfad 100644 --- a/web/app/components/app/configuration/debug/index.tsx +++ b/web/app/components/app/configuration/debug/index.tsx @@ -149,7 +149,7 @@ const Debug: FC = ({ } let hasEmptyInput = '' const requiredVars = modelConfig.configs.prompt_variables.filter(({ key, name, required, type }) => { - if (type === 'api') + if (type !== 'string' && type !== 'paragraph' && type !== 'select') return false const res = (!key || !key.trim()) || (!name || !name.trim()) || (required || required === undefined || required === null) return res diff --git a/web/app/components/app/configuration/toolbox/moderation/form-generation.tsx b/web/app/components/app/configuration/toolbox/moderation/form-generation.tsx index 15a237efee..daf964447b 100644 --- a/web/app/components/app/configuration/toolbox/moderation/form-generation.tsx +++ b/web/app/components/app/configuration/toolbox/moderation/form-generation.tsx @@ -65,7 +65,7 @@ const FormGeneration: FC = ({ } })} onSelect={item => handleFormChange(form.variable, item.value as string)} - popupClassName='w-[576px]' + popupClassName='w-[576px] !z-[102]' /> ) } diff --git a/web/app/components/base/chat/chat/hooks.ts b/web/app/components/base/chat/chat/hooks.ts index 00d62241c8..d870cfc79f 100644 --- a/web/app/components/base/chat/chat/hooks.ts +++ b/web/app/components/base/chat/chat/hooks.ts @@ -42,7 +42,7 @@ export const useCheckPromptVariables = () => { } = promptVariablesConfig let hasEmptyInput = '' const requiredVars = promptVariables.filter(({ key, name, required, type }) => { - if (type === 'api') + if (type !== 'string' && type !== 'paragraph' && type !== 'select') return false const res = (!key || !key.trim()) || (!name || !name.trim()) || (required || required === undefined || required === null) return res diff --git a/web/utils/model-config.ts b/web/utils/model-config.ts index c465b57dfc..66b8babb21 100644 --- a/web/utils/model-config.ts +++ b/web/utils/model-config.ts @@ -16,7 +16,7 @@ export const userInputsFormToPromptVariables = (useInputs: UserInputFormItem[] | return ['string', item['text-input']] if (item.external_data_tool) - return ['api', item.external_data_tool] + return [item.external_data_tool.type, item.external_data_tool] return ['select', item.select] })() @@ -33,7 +33,17 @@ export const userInputsFormToPromptVariables = (useInputs: UserInputFormItem[] | is_context_var, }) } - else if (type === 'api') { + else if (type === 'select') { + promptVariables.push({ + key: content.variable, + name: content.label, + required: content.required, + type: 'select', + options: content.options, + is_context_var, + }) + } + else { promptVariables.push({ key: content.variable, name: content.label, @@ -46,16 +56,6 @@ export const userInputsFormToPromptVariables = (useInputs: UserInputFormItem[] | is_context_var, }) } - else { - promptVariables.push({ - key: content.variable, - name: content.label, - required: content.required, - type: 'select', - options: content.options, - is_context_var, - }) - } }) return promptVariables } @@ -79,7 +79,18 @@ export const promptVariablesToUserInputsForm = (promptVariables: PromptVariable[ }, } as any) } - else if (item.type === 'api') { + else if (item.type === 'select') { + userInputs.push({ + select: { + label: item.name, + variable: item.key, + required: item.required !== false, // default true + options: item.options, + default: '', + }, + } as any) + } + else { userInputs.push({ external_data_tool: { label: item.name, @@ -93,17 +104,6 @@ export const promptVariablesToUserInputsForm = (promptVariables: PromptVariable[ }, } as any) } - else { - userInputs.push({ - select: { - label: item.name, - variable: item.key, - required: item.required !== false, // default true - options: item.options, - default: '', - }, - } as any) - } }) return userInputs }