From 5c228bca4fd13f33ad2b64ca10bfa8aa3221ecf5 Mon Sep 17 00:00:00 2001 From: twwu Date: Fri, 13 Jun 2025 15:02:31 +0800 Subject: [PATCH 1/2] feat: replace TypeIcon with AppIcon in SelectDataSet component for improved icon display --- .../dataset-config/select-dataset/index.tsx | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/web/app/components/app/configuration/dataset-config/select-dataset/index.tsx b/web/app/components/app/configuration/dataset-config/select-dataset/index.tsx index ffdb714f08..99dc32dfa2 100644 --- a/web/app/components/app/configuration/dataset-config/select-dataset/index.tsx +++ b/web/app/components/app/configuration/dataset-config/select-dataset/index.tsx @@ -5,7 +5,6 @@ import { useGetState, useInfiniteScroll } from 'ahooks' import { useTranslation } from 'react-i18next' import Link from 'next/link' import produce from 'immer' -import TypeIcon from '../type-icon' import Modal from '@/app/components/base/modal' import type { DataSet } from '@/models/datasets' import Button from '@/app/components/base/button' @@ -15,6 +14,7 @@ import Badge from '@/app/components/base/badge' import { useKnowledge } from '@/hooks/use-knowledge' import cn from '@/utils/classnames' import { basePath } from '@/utils/var' +import AppIcon from '@/app/components/base/app-icon' export type ISelectDataSetProps = { isShow: boolean @@ -91,6 +91,7 @@ const SelectDataSet: FC = ({ const handleSelect = () => { onSelect(selected) } + return ( = ({ >
- +
{item.name}
{!item.embedding_available && ( From 26aff400e4d187234f6ab15e406eda623838df18 Mon Sep 17 00:00:00 2001 From: zxhlyh Date: Fri, 13 Jun 2025 16:38:35 +0800 Subject: [PATCH 2/2] node default configs --- .../workflow/nodes/code/use-config.ts | 19 ++++++++++++++++++- web/service/workflow.ts | 6 ++++++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/web/app/components/workflow/nodes/code/use-config.ts b/web/app/components/workflow/nodes/code/use-config.ts index 16f06c18ce..18c32f1ffa 100644 --- a/web/app/components/workflow/nodes/code/use-config.ts +++ b/web/app/components/workflow/nodes/code/use-config.ts @@ -9,7 +9,10 @@ import type { CodeNodeType, OutputVar } from './types' import { CodeLanguage } from './types' import useNodeCrud from '@/app/components/workflow/nodes/_base/hooks/use-node-crud' import useOneStepRun from '@/app/components/workflow/nodes/_base/hooks/use-one-step-run' -import { fetchNodeDefault } from '@/service/workflow' +import { + fetchNodeDefault, + fetchPipelineNodeDefault, +} from '@/service/workflow' import { useNodesReadOnly, } from '@/app/components/workflow/hooks' @@ -18,6 +21,7 @@ const useConfig = (id: string, payload: CodeNodeType) => { const { nodesReadOnly: readOnly } = useNodesReadOnly() const appId = useStore(s => s.appId) + const pipelineId = useStore(s => s.pipelineId) const [allLanguageDefault, setAllLanguageDefault] = useState | null>(null) useEffect(() => { @@ -33,6 +37,19 @@ const useConfig = (id: string, payload: CodeNodeType) => { } }, [appId]) + useEffect(() => { + if (pipelineId) { + (async () => { + const { config: javaScriptConfig } = await fetchPipelineNodeDefault(pipelineId, BlockEnum.Code, { code_language: CodeLanguage.javascript }) as any + const { config: pythonConfig } = await fetchPipelineNodeDefault(pipelineId, BlockEnum.Code, { code_language: CodeLanguage.python3 }) as any + setAllLanguageDefault({ + [CodeLanguage.javascript]: javaScriptConfig as CodeNodeType, + [CodeLanguage.python3]: pythonConfig as CodeNodeType, + } as any) + })() + } + }, [pipelineId]) + const defaultConfig = useStore(s => s.nodesDefaultConfigs)?.[payload.type] const { inputs, setInputs } = useNodeCrud(id, payload) const { handleVarListChange, handleAddVariable } = useVarList({ diff --git a/web/service/workflow.ts b/web/service/workflow.ts index 7d10394246..ce72966528 100644 --- a/web/service/workflow.ts +++ b/web/service/workflow.ts @@ -59,6 +59,12 @@ export const fetchNodeDefault = (appId: string, blockType: BlockEnum, query = {} }) } +export const fetchPipelineNodeDefault = (pipelineId: string, blockType: BlockEnum, query = {}) => { + return get(`rag/pipelines/${pipelineId}/workflows/default-workflow-block-configs/${blockType}`, { + params: { q: JSON.stringify(query) }, + }) +} + // TODO: archived export const updateWorkflowDraftFromDSL = (appId: string, data: string) => { return post(`apps/${appId}/workflows/draft/import`, { body: { data } })