From 34b76ffd53f2aadc8a7c748d43e11068008195b4 Mon Sep 17 00:00:00 2001 From: williamhliu <137068196+williamhliu@users.noreply.github.com> Date: Wed, 26 Jun 2024 10:20:17 +0800 Subject: [PATCH] (improvement)(chat-sdk) optimize parse style (#1230) --- .../src/components/ChatItem/ExecuteItem.tsx | 22 ++++----- .../src/components/ChatItem/ParseTip.tsx | 14 ++++-- .../src/components/ChatItem/index.tsx | 47 +++++++++---------- .../src/components/ChatItem/style.less | 4 ++ 4 files changed, 49 insertions(+), 38 deletions(-) diff --git a/webapp/packages/chat-sdk/src/components/ChatItem/ExecuteItem.tsx b/webapp/packages/chat-sdk/src/components/ChatItem/ExecuteItem.tsx index 65ccc7958..95fe654b5 100644 --- a/webapp/packages/chat-sdk/src/components/ChatItem/ExecuteItem.tsx +++ b/webapp/packages/chat-sdk/src/components/ChatItem/ExecuteItem.tsx @@ -40,6 +40,8 @@ const ExecuteItem: React.FC = ({ const [showMsgContentTable, setShowMsgContentTable] = useState(false); const [msgContentType, setMsgContentType] = useState(); + const titlePrefix = queryMode === 'PLAIN_TEXT' ? '问答' : '数据'; + const getNodeTip = (title: ReactNode, tip?: string) => { return ( <> @@ -56,16 +58,13 @@ const ExecuteItem: React.FC = ({ }; if (executeLoading) { - if (queryMode === 'PLAIN_TEXT') { - return ; - } - return getNodeTip('数据查询中'); + return getNodeTip(`${titlePrefix}查询中`); } if (executeTip) { return getNodeTip( <> - 数据查询失败 + {titlePrefix}查询失败 {data?.queryTimeCost && isDeveloper && ( (耗时: {data.queryTimeCost}ms) )} @@ -78,10 +77,6 @@ const ExecuteItem: React.FC = ({ return null; } - if (data.queryMode === 'PLAIN_TEXT') { - return <>{data.textResult}; - } - return ( <>
@@ -89,7 +84,7 @@ const ExecuteItem: React.FC = ({
- 数据查询 + {titlePrefix}查询 {data?.queryTimeCost && isDeveloper && ( (耗时: {data.queryTimeCost}ms) )} @@ -110,13 +105,18 @@ const ExecuteItem: React.FC = ({
-
+
{data.queryAuthorization?.message && (
提示:{data.queryAuthorization.message}
)} {renderCustomExecuteNode && executeItemNode ? ( executeItemNode + ) : data?.queryMode === 'PLAIN_TEXT' ? ( + data?.textResult ) : data?.queryMode === 'WEB_PAGE' ? ( ) : ( diff --git a/webapp/packages/chat-sdk/src/components/ChatItem/ParseTip.tsx b/webapp/packages/chat-sdk/src/components/ChatItem/ParseTip.tsx index de54a1510..91b832254 100644 --- a/webapp/packages/chat-sdk/src/components/ChatItem/ParseTip.tsx +++ b/webapp/packages/chat-sdk/src/components/ChatItem/ParseTip.tsx @@ -61,10 +61,18 @@ const ParseTip: React.FC = ({
{tipTitle} - {!tipNode && } + {tipNode === undefined && }
- {tipNode &&
{tipNode}
} + {(tipNode || tipNode === null) && ( +
+ {tipNode} +
+ )}
); }; @@ -310,7 +318,7 @@ const ParseTip: React.FC = ({ )} , - isSimpleMode ? : tipNode + isSimpleMode ? : queryMode === 'PLAIN_TEXT' ? null : tipNode ); }; diff --git a/webapp/packages/chat-sdk/src/components/ChatItem/index.tsx b/webapp/packages/chat-sdk/src/components/ChatItem/index.tsx index 0a37f7a76..e69554412 100644 --- a/webapp/packages/chat-sdk/src/components/ChatItem/index.tsx +++ b/webapp/packages/chat-sdk/src/components/ChatItem/index.tsx @@ -320,27 +320,25 @@ const ChatItem: React.FC = ({ )}
- {parseInfo?.queryMode !== 'PLAIN_TEXT' && ( - - )} + {executeMode && ( <> {!isMobile && parseInfo?.sqlInfo && isDeveloper && !isSimpleMode && ( @@ -380,9 +378,10 @@ const ChatItem: React.FC = ({ /> )}
- {(parseTip !== '' || (executeMode && !executeLoading)) && ( - - )} + {(parseTip !== '' || (executeMode && !executeLoading)) && + parseInfo?.queryMode !== 'PLAIN_TEXT' && ( + + )}
); diff --git a/webapp/packages/chat-sdk/src/components/ChatItem/style.less b/webapp/packages/chat-sdk/src/components/ChatItem/style.less index 7567c104f..fdb5608dc 100644 --- a/webapp/packages/chat-sdk/src/components/ChatItem/style.less +++ b/webapp/packages/chat-sdk/src/components/ChatItem/style.less @@ -168,6 +168,10 @@ padding-bottom: 10px; } + &-empty-content-container { + padding-bottom: 0; + } + &-auth-tip { font-size: 13px; color: var(--text-color-secondary);