UNPKG

@copilotkit/react-ui

Version:

<img src="https://github.com/user-attachments/assets/0a6b64d9-e193-4940-a3f6-60334ac34084" alt="banner" style="border-radius: 12px; border: 2px solid #d6d4fa;" />

112 lines (110 loc) 3.16 kB
import { AssistantMessage } from "./chunk-L3GZ7TXC.mjs"; import { __objRest } from "./chunk-MRXNTQOX.mjs"; // src/components/chat/messages/RenderAgentStateMessage.tsx import { useCopilotContext } from "@copilotkit/react-core"; import { jsx } from "react/jsx-runtime"; function RenderAgentStateMessage(_a) { var _b = _a, { AssistantMessage: AssistantMessage2 = AssistantMessage } = _b, props = __objRest(_b, [ "AssistantMessage" ]); const { chatComponentsCache } = useCopilotContext(); const { message, inProgress, index, isCurrentMessage } = props; if (message.isAgentStateMessage()) { let render; if (chatComponentsCache.current !== null) { render = chatComponentsCache.current.coAgentStateRenders[`${message.agentName}-${message.nodeName}`] || chatComponentsCache.current.coAgentStateRenders[`${message.agentName}-global`]; } if (render) { if (typeof render === "string") { if (isCurrentMessage && inProgress) { return /* @__PURE__ */ jsx( AssistantMessage2, { rawData: message, message: render, "data-message-role": "assistant", isLoading: true, isGenerating: true }, index ); } else { return null; } } else { const state = message.state; let status = message.active ? "inProgress" : "complete"; const toRender = render({ status, state, nodeName: message.nodeName }); if (!toRender && status === "complete") { return null; } if (!toRender && isCurrentMessage && inProgress) { return /* @__PURE__ */ jsx( AssistantMessage2, { "data-message-role": "assistant", rawData: message, isLoading: true, isGenerating: true }, index ); } else if (!toRender) { return null; } if (typeof toRender === "string") { return /* @__PURE__ */ jsx( AssistantMessage2, { rawData: message, message: toRender, isLoading: true, isGenerating: true, "data-message-role": "assistant" }, index ); } else { return /* @__PURE__ */ jsx( AssistantMessage2, { rawData: message, "data-message-role": "agent-state-render", isLoading: false, isGenerating: false, subComponent: toRender }, index ); } } } else if (!inProgress || !isCurrentMessage) { return null; } else { return /* @__PURE__ */ jsx( AssistantMessage2, { rawData: message, isLoading: true, isGenerating: true, "data-message-role": "assistant" }, index ); } } } export { RenderAgentStateMessage }; //# sourceMappingURL=chunk-2II3Q27P.mjs.map