From 8862e353aa5897a7dc389289969c76d281022d90 Mon Sep 17 00:00:00 2001 From: archer <545436317@qq.com> Date: Wed, 2 Aug 2023 16:33:31 +0800 Subject: [PATCH] fix: extract modules --- .../AdEdit/components/Nodes/NodeExtract.tsx | 2 +- .../components/modules/ExtractFieldModal.tsx | 24 ++++++++++++------- .../src/pages/chat/components/ChatHeader.tsx | 12 +++++++++- client/src/pages/chat/index.tsx | 1 + client/src/utils/adapt.ts | 6 +---- 5 files changed, 30 insertions(+), 15 deletions(-) diff --git a/client/src/pages/app/detail/components/AdEdit/components/Nodes/NodeExtract.tsx b/client/src/pages/app/detail/components/AdEdit/components/Nodes/NodeExtract.tsx index 936172a7d..f4d71cef3 100644 --- a/client/src/pages/app/detail/components/AdEdit/components/Nodes/NodeExtract.tsx +++ b/client/src/pages/app/detail/components/AdEdit/components/Nodes/NodeExtract.tsx @@ -13,7 +13,6 @@ import RenderOutput from '../render/RenderOutput'; import MyIcon from '@/components/Icon'; import ExtractFieldModal from '../modules/ExtractFieldModal'; import { ContextExtractEnum } from '@/constants/flow/flowField'; -import SourceHandle from '../render/SourceHandle'; import { FlowOutputItemTypeEnum, FlowValueTypeEnum } from '@/constants/flow'; const NodeExtract = ({ @@ -150,6 +149,7 @@ const NodeExtract = ({ : outputs.concat({ key: data.key, label: `提取结果-${data.desc}`, + description: '无法提取时不会返回', valueType: FlowValueTypeEnum.string, type: FlowOutputItemTypeEnum.source, targets: [] diff --git a/client/src/pages/app/detail/components/AdEdit/components/modules/ExtractFieldModal.tsx b/client/src/pages/app/detail/components/AdEdit/components/modules/ExtractFieldModal.tsx index 62a32bde7..9f85a76fa 100644 --- a/client/src/pages/app/detail/components/AdEdit/components/modules/ExtractFieldModal.tsx +++ b/client/src/pages/app/detail/components/AdEdit/components/modules/ExtractFieldModal.tsx @@ -1,4 +1,4 @@ -import React, { useState } from 'react'; +import React, { useMemo, useState } from 'react'; import { Box, Button, @@ -16,6 +16,7 @@ import { customAlphabet } from 'nanoid'; const nanoid = customAlphabet('abcdefghijklmnopqrstuvwxyz1234567890', 6); import MyModal from '@/components/MyModal'; import Avatar from '@/components/Avatar'; +import MyTooltip from '@/components/MyTooltip'; const ExtractFieldModal = ({ defaultField = { @@ -33,6 +34,7 @@ const ExtractFieldModal = ({ const { register, handleSubmit } = useForm({ defaultValues: defaultField }); + const isEdit = useMemo(() => !!defaultField.key, [defaultField]); return ( @@ -42,23 +44,29 @@ const ExtractFieldModal = ({ - 必填 + 必填 - 字段描述 + 字段描述 - 字段 key - + 字段 key + + + + + 注意: key 字段创建后无法修改 + diff --git a/client/src/pages/chat/components/ChatHeader.tsx b/client/src/pages/chat/components/ChatHeader.tsx index 61ff138d2..daa5d8906 100644 --- a/client/src/pages/chat/components/ChatHeader.tsx +++ b/client/src/pages/chat/components/ChatHeader.tsx @@ -6,20 +6,24 @@ import Tag from '@/components/Tag'; import Avatar from '@/components/Avatar'; import ToolMenu from './ToolMenu'; import { ChatItemType } from '@/types/chat'; +import { useRouter } from 'next/router'; const ChatHeader = ({ history, appName, appAvatar, chatModels, + appId, onOpenSlider }: { history: ChatItemType[]; appName: string; appAvatar: string; chatModels?: string[]; + appId?: string; onOpenSlider: () => void; }) => { + const router = useRouter(); const theme = useTheme(); const { isPc } = useGlobalStore(); const title = useMemo( @@ -58,7 +62,13 @@ const ChatHeader = ({ - + { + appId && router.push(`/app/detail?appId=${appId}`); + }} + > {appName} diff --git a/client/src/pages/chat/index.tsx b/client/src/pages/chat/index.tsx index 7add276ef..b22c2a9e2 100644 --- a/client/src/pages/chat/index.tsx +++ b/client/src/pages/chat/index.tsx @@ -345,6 +345,7 @@ const Chat = ({ appId, chatId }: { appId: string; chatId: string }) => { template.flowType === item.flowType) || EmptyModule; - const mergeOutputs = item.outputs.concat( - template.outputs.filter((output) => !item.outputs.find((item) => item.key === output.key)) - ); - // replace item data const moduleItem: FlowModuleItemType = { ...item, @@ -90,7 +86,7 @@ export const appModule2FlowNode = ({ }; }), // 合并 template 和数据库,文案以 template 为准 - outputs: mergeOutputs.map((output) => { + outputs: item.outputs.map((output) => { // unChange outputs const templateOutput = template.outputs.find((item) => item.key === output.key);