diff --git a/web/app/components/header/account-setting/model-provider-page/declarations.ts b/web/app/components/header/account-setting/model-provider-page/declarations.ts index 4500ebc1f7..486a1e44f5 100644 --- a/web/app/components/header/account-setting/model-provider-page/declarations.ts +++ b/web/app/components/header/account-setting/model-provider-page/declarations.ts @@ -116,7 +116,16 @@ export type CredentialFormSchemaBase = { scope?: string } -export type CredentialFormSchemaTextInput = CredentialFormSchemaBase & { max_length?: number; placeholder?: TypeWithI18N } +export type CredentialFormSchemaTextInput = CredentialFormSchemaBase & { + max_length?: number; + placeholder?: TypeWithI18N, + template?: { + enabled: boolean + }, + auto_generate?: { + type: string + } +} export type CredentialFormSchemaNumberInput = CredentialFormSchemaBase & { min?: number; max?: number; placeholder?: TypeWithI18N } export type CredentialFormSchemaSelect = CredentialFormSchemaBase & { options: FormOption[]; placeholder?: TypeWithI18N } export type CredentialFormSchemaRadio = CredentialFormSchemaBase & { options: FormOption[] } diff --git a/web/app/components/header/account-setting/model-provider-page/model-selector/deprecated-model-trigger.tsx b/web/app/components/header/account-setting/model-provider-page/model-selector/deprecated-model-trigger.tsx index 207e0a7eaf..bcc573b06a 100644 --- a/web/app/components/header/account-setting/model-provider-page/model-selector/deprecated-model-trigger.tsx +++ b/web/app/components/header/account-setting/model-provider-page/model-selector/deprecated-model-trigger.tsx @@ -22,22 +22,24 @@ const ModelTrigger: FC = ({ return (
-
- -
- {modelName} +
+
+ +
+ {modelName} +
+
+
+ + +
-
-
- - -
) diff --git a/web/app/components/workflow/nodes/_base/components/agent-strategy.tsx b/web/app/components/workflow/nodes/_base/components/agent-strategy.tsx index 7efd77b4c5..295c0a6252 100644 --- a/web/app/components/workflow/nodes/_base/components/agent-strategy.tsx +++ b/web/app/components/workflow/nodes/_base/components/agent-strategy.tsx @@ -1,4 +1,4 @@ -import type { CredentialFormSchemaNumberInput } from '@/app/components/header/account-setting/model-provider-page/declarations' +import type { CredentialFormSchemaNumberInput, CredentialFormSchemaTextInput } from '@/app/components/header/account-setting/model-provider-page/declarations' import { type CredentialFormSchema, FormTypeEnum, ModelTypeEnum } from '@/app/components/header/account-setting/model-provider-page/declarations' import type { ToolVarInputs } from '../../tool/types' import ListEmpty from '@/app/components/base/list-empty' @@ -19,7 +19,6 @@ import { useWorkflowStore } from '../../../store' import { useRenderI18nObject } from '@/hooks/use-i18n' import type { NodeOutPutVar } from '../../../types' import type { Node } from 'reactflow' -import { toType } from '@/app/components/tools/utils/to-form-schema' export type Strategy = { agent_strategy_provider_name: string @@ -43,16 +42,8 @@ type CustomSchema = Omit & { typ type ToolSelectorSchema = CustomSchema<'tool-selector'> type MultipleToolSelectorSchema = CustomSchema<'array[tools]'> -type StringSchema = CustomSchema<'string', { - template?: { - enabled: boolean - }, - auto_generate?: { - type: string - } -}> -type CustomField = ToolSelectorSchema | MultipleToolSelectorSchema | StringSchema +type CustomField = ToolSelectorSchema | MultipleToolSelectorSchema export const AgentStrategy = memo((props: AgentStrategyProps) => { const { strategy, onStrategyChange, formSchema, formValue, onFormValueChange, nodeOutputVars, availableNodes } = props @@ -64,9 +55,48 @@ export const AgentStrategy = memo((props: AgentStrategyProps) => { setControlPromptEditorRerenderKey, } = workflowStore.getState() const override: ComponentProps>['override'] = [ - [FormTypeEnum.textNumber], + [FormTypeEnum.textNumber, FormTypeEnum.textInput], (schema, props) => { switch (schema.type) { + case FormTypeEnum.textInput: { + const def = schema as CredentialFormSchemaTextInput + const value = props.value[schema.variable] + const onChange = (value: string) => { + props.onChange({ ...props.value, [schema.variable]: value }) + } + const handleGenerated = (value: string) => { + onChange(value) + setControlPromptEditorRerenderKey(Math.random()) + } + return + } case FormTypeEnum.textNumber: { const def = schema as CredentialFormSchemaNumberInput if (!def.max || !def.min) @@ -136,44 +166,6 @@ export const AgentStrategy = memo((props: AgentStrategyProps) => { /> ) } - case 'string': { - const value = props.value[schema.variable] - const onChange = (value: string) => { - props.onChange({ ...props.value, [schema.variable]: value }) - } - const handleGenerated = (value: string) => { - onChange(value) - setControlPromptEditorRerenderKey(Math.random()) - } - return - } } } return
@@ -182,18 +174,9 @@ export const AgentStrategy = memo((props: AgentStrategyProps) => { strategy ?
- formSchemas={[...formSchema, { - name: 'max_iteration', - type: toType('number'), - required: true, - label: { - en_US: 'Max Iteration', - zh_Hans: '最大迭代次数', - pt_BR: 'Max Iteration', - }, - show_on: [], - variable: 'max-ite', - }]} + formSchemas={[ + ...formSchema, + ]} value={formValue} onChange={onFormValueChange} validating={false}