UNPKG

aichat-core

Version:

AI 流式聊天业务核心TS模型封装及业务实现模块

37 lines (36 loc) 1.6 kB
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime"; import { useEffect } from "react"; import ChatMesageMarkDown from "../chat-markdown"; import ChatAttachments from "../chat-attachements"; var ChatContent = function (_a) { var content = _a.content; useEffect(function () { }, []); var buildContentComponent = function (content) { if (typeof content === "string") { return _jsx(ChatMesageMarkDown, { content: content }); } if (Array.isArray(content)) { var imageUrls = []; for (var i = 0; i < content.length; i++) { if (content[i].type === "image_url" && content[i].image_url) { imageUrls.push(content[i].image_url.url); } } for (var i = 0; i < content.length; i++) { if (content[i].type === "text" && content[i].text) { content = content[i].text; break; } } var textContent = content; if (textContent && imageUrls && imageUrls.length > 0) { return (_jsxs("div", { children: [_jsx(ChatMesageMarkDown, { content: textContent }), _jsx(ChatAttachments, { items: imageUrls })] })); } if (textContent && (!imageUrls || imageUrls.length === 0)) return _jsx(ChatMesageMarkDown, { content: textContent }); } return content; }; return (_jsx("div", { className: "chat-bubble-item-content", children: buildContentComponent(content) })); }; export default ChatContent;