@copilotkit/react-ui 1.2.0 → 1.2.2-feat-runtime-remote-actions.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/dist/components/chat/Chat.d.mts +1 -1
  3. package/dist/components/chat/Chat.d.ts +1 -1
  4. package/dist/components/chat/Chat.js +101 -5
  5. package/dist/components/chat/Chat.js.map +1 -1
  6. package/dist/components/chat/Chat.mjs +108 -11
  7. package/dist/components/chat/Chat.mjs.map +1 -1
  8. package/dist/components/chat/Messages.js +46 -2
  9. package/dist/components/chat/Messages.js.map +1 -1
  10. package/dist/components/chat/Messages.mjs +48 -3
  11. package/dist/components/chat/Messages.mjs.map +1 -1
  12. package/dist/components/chat/Modal.js +101 -6
  13. package/dist/components/chat/Modal.js.map +1 -1
  14. package/dist/components/chat/Modal.mjs +108 -12
  15. package/dist/components/chat/Modal.mjs.map +1 -1
  16. package/dist/components/chat/Popup.js +101 -6
  17. package/dist/components/chat/Popup.js.map +1 -1
  18. package/dist/components/chat/Popup.mjs +108 -12
  19. package/dist/components/chat/Popup.mjs.map +1 -1
  20. package/dist/components/chat/Sidebar.js +101 -7
  21. package/dist/components/chat/Sidebar.js.map +1 -1
  22. package/dist/components/chat/Sidebar.mjs +108 -13
  23. package/dist/components/chat/Sidebar.mjs.map +1 -1
  24. package/dist/components/chat/Suggestion.js.map +1 -1
  25. package/dist/components/chat/Suggestion.mjs.map +1 -1
  26. package/dist/components/chat/index.js +101 -7
  27. package/dist/components/chat/index.js.map +1 -1
  28. package/dist/components/chat/index.mjs +108 -13
  29. package/dist/components/chat/index.mjs.map +1 -1
  30. package/dist/components/dev-console/console.js +52 -0
  31. package/dist/components/dev-console/console.js.map +1 -1
  32. package/dist/components/dev-console/console.mjs +52 -0
  33. package/dist/components/dev-console/console.mjs.map +1 -1
  34. package/dist/components/dev-console/index.js +52 -0
  35. package/dist/components/dev-console/index.js.map +1 -1
  36. package/dist/components/dev-console/index.mjs +52 -0
  37. package/dist/components/dev-console/index.mjs.map +1 -1
  38. package/dist/components/dev-console/utils.d.mts +2 -1
  39. package/dist/components/dev-console/utils.d.ts +2 -1
  40. package/dist/components/dev-console/utils.js +53 -0
  41. package/dist/components/dev-console/utils.js.map +1 -1
  42. package/dist/components/dev-console/utils.mjs +52 -0
  43. package/dist/components/dev-console/utils.mjs.map +1 -1
  44. package/dist/components/index.js +101 -7
  45. package/dist/components/index.js.map +1 -1
  46. package/dist/components/index.mjs +108 -13
  47. package/dist/components/index.mjs.map +1 -1
  48. package/dist/index.js +101 -7
  49. package/dist/index.js.map +1 -1
  50. package/dist/index.mjs +110 -15
  51. package/dist/index.mjs.map +1 -1
  52. package/package.json +7 -7
  53. package/src/components/chat/Chat.tsx +1 -1
  54. package/src/components/chat/Messages.tsx +83 -2
  55. package/src/components/chat/Modal.tsx +0 -1
  56. package/src/components/chat/Sidebar.tsx +0 -1
  57. package/src/components/chat/Suggestion.tsx +2 -0
  58. package/src/components/dev-console/console.tsx +6 -0
  59. package/src/components/dev-console/utils.ts +56 -0
@@ -958,7 +958,8 @@ import {
958
958
  ActionExecutionMessage,
959
959
  ResultMessage,
960
960
  TextMessage,
961
- Role
961
+ Role,
962
+ AgentStateMessage
962
963
  } from "@copilotkit/runtime-client-gql";
963
964
  import { jsx as jsx8, jsxs as jsxs5 } from "react/jsx-runtime";
964
965
  var Messages = ({ messages, inProgress, children }) => {
@@ -1000,8 +1001,8 @@ var Messages = ({ messages, inProgress, children }) => {
1000
1001
  } else if (message instanceof TextMessage && message.role == "assistant") {
1001
1002
  return /* @__PURE__ */ jsx8("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: isCurrentMessage && inProgress && !message.content ? context.icons.spinnerIcon : /* @__PURE__ */ jsx8(Markdown, { content: message.content }) }, index);
1002
1003
  } else if (message instanceof ActionExecutionMessage) {
1003
- if (chatComponentsCache.current !== null && chatComponentsCache.current[message.name]) {
1004
- const render = chatComponentsCache.current[message.name];
1004
+ if (chatComponentsCache.current !== null && chatComponentsCache.current.actions[message.name]) {
1005
+ const render = chatComponentsCache.current.actions[message.name];
1005
1006
  if (typeof render === "string") {
1006
1007
  if (isCurrentMessage && inProgress) {
1007
1008
  return /* @__PURE__ */ jsxs5("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: [
@@ -1043,6 +1044,50 @@ var Messages = ({ messages, inProgress, children }) => {
1043
1044
  } else {
1044
1045
  return /* @__PURE__ */ jsx8("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: context.icons.spinnerIcon }, index);
1045
1046
  }
1047
+ } else if (message instanceof AgentStateMessage) {
1048
+ let render;
1049
+ if (chatComponentsCache.current !== null) {
1050
+ render = chatComponentsCache.current.coagentActions[`${message.agentName}-${message.nodeName}`] || chatComponentsCache.current.coagentActions[`${message.agentName}-global`];
1051
+ }
1052
+ if (render) {
1053
+ if (typeof render === "string") {
1054
+ if (isCurrentMessage && inProgress) {
1055
+ return /* @__PURE__ */ jsxs5("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: [
1056
+ context.icons.spinnerIcon,
1057
+ " ",
1058
+ /* @__PURE__ */ jsx8("span", { className: "inProgressLabel", children: render })
1059
+ ] }, index);
1060
+ } else {
1061
+ return null;
1062
+ }
1063
+ } else {
1064
+ const state = message.state;
1065
+ let status = message.active ? "inProgress" : "complete";
1066
+ const toRender = render({
1067
+ status,
1068
+ state,
1069
+ nodeName: message.nodeName
1070
+ });
1071
+ if (!toRender && status === "complete") {
1072
+ return null;
1073
+ }
1074
+ if (typeof toRender === "string") {
1075
+ return /* @__PURE__ */ jsxs5("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: [
1076
+ isCurrentMessage && inProgress && context.icons.spinnerIcon,
1077
+ " ",
1078
+ toRender
1079
+ ] }, index);
1080
+ } else {
1081
+ return /* @__PURE__ */ jsx8("div", { className: "copilotKitCustomAssistantMessage", children: toRender }, index);
1082
+ }
1083
+ }
1084
+ } else if (!inProgress || !isCurrentMessage) {
1085
+ return null;
1086
+ } else {
1087
+ return /* @__PURE__ */ jsx8("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: context.icons.spinnerIcon }, index);
1088
+ }
1089
+ } else if (message instanceof ResultMessage && inProgress && isCurrentMessage) {
1090
+ return /* @__PURE__ */ jsx8("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: context.icons.spinnerIcon }, index);
1046
1091
  }
1047
1092
  }),
1048
1093
  /* @__PURE__ */ jsx8("footer", { ref: messagesEndRef, children })
@@ -1392,12 +1437,14 @@ var reloadSuggestions = (context, chatSuggestionConfiguration, setCurrentSuggest
1392
1437
 
1393
1438
  // src/components/chat/Chat.tsx
1394
1439
  import React7, { useEffect as useEffect7, useRef as useRef5, useState as useState7 } from "react";
1395
- import { useCopilotChat, useCopilotContext as useCopilotContext5 } from "@copilotkit/react-core";
1396
- import { Role as Role2, TextMessage as TextMessage3 } from "@copilotkit/runtime-client-gql";
1440
+ import { useCopilotChat, useCopilotContext as useCopilotContext6 } from "@copilotkit/react-core";
1441
+ import { Role as Role2, TextMessage as TextMessage4 } from "@copilotkit/runtime-client-gql";
1397
1442
  import { randomId } from "@copilotkit/shared";
1398
1443
 
1399
1444
  // src/components/dev-console/utils.ts
1400
1445
  import { defaultCopilotContextCategories } from "@copilotkit/react-core";
1446
+ import { ActionExecutionMessage as ActionExecutionMessage2, ResultMessage as ResultMessage2, TextMessage as TextMessage3 } from "@copilotkit/runtime-client-gql";
1447
+ import { AgentStateMessage as AgentStateMessage2 } from "@copilotkit/runtime-client-gql";
1401
1448
  function shouldShowDevConsole(showDevConsole) {
1402
1449
  if (typeof showDevConsole === "boolean") {
1403
1450
  return showDevConsole;
@@ -1458,6 +1505,7 @@ function getPublishedCopilotKitVersion(current, forceCheck = false) {
1458
1505
  });
1459
1506
  }
1460
1507
  function logReadables(context) {
1508
+ console.log("%cCurrent Readables:", "font-size: 16px; font-weight: bold;");
1461
1509
  const readables = context.getContextString([], defaultCopilotContextCategories).trim();
1462
1510
  if (readables.length === 0) {
1463
1511
  console.log("No readables found");
@@ -1466,6 +1514,7 @@ function logReadables(context) {
1466
1514
  console.log(readables);
1467
1515
  }
1468
1516
  function logActions(context) {
1517
+ console.log("%cCurrent Actions:", "font-size: 16px; font-weight: bold;");
1469
1518
  if (Object.values(context.actions).length === 0) {
1470
1519
  console.log("No actions found");
1471
1520
  return;
@@ -1478,9 +1527,56 @@ function logActions(context) {
1478
1527
  console.groupEnd();
1479
1528
  }
1480
1529
  }
1530
+ function logMessages(context) {
1531
+ console.log("%cCurrent Messages:", "font-size: 16px; font-weight: bold;");
1532
+ if (context.messages.length === 0) {
1533
+ console.log("No messages found");
1534
+ return;
1535
+ }
1536
+ const tableData = context.messages.map((message) => {
1537
+ if (message instanceof TextMessage3) {
1538
+ return {
1539
+ id: message.id,
1540
+ type: "TextMessage",
1541
+ role: message.role,
1542
+ name: void 0,
1543
+ scope: void 0,
1544
+ content: message.content
1545
+ };
1546
+ } else if (message instanceof ActionExecutionMessage2) {
1547
+ return {
1548
+ id: message.id,
1549
+ type: "ActionExecutionMessage",
1550
+ role: void 0,
1551
+ name: message.name,
1552
+ scope: message.scope,
1553
+ content: message.arguments
1554
+ };
1555
+ } else if (message instanceof ResultMessage2) {
1556
+ return {
1557
+ id: message.id,
1558
+ type: "ResultMessage",
1559
+ role: void 0,
1560
+ name: message.actionName,
1561
+ scope: message.actionExecutionId,
1562
+ content: message.result
1563
+ };
1564
+ } else if (message instanceof AgentStateMessage2) {
1565
+ return {
1566
+ id: message.id,
1567
+ type: `AgentStateMessage (running: ${message.running})`,
1568
+ role: message.role,
1569
+ name: void 0,
1570
+ scope: message.threadId,
1571
+ content: message.state
1572
+ };
1573
+ }
1574
+ });
1575
+ console.table(tableData);
1576
+ }
1481
1577
 
1482
1578
  // src/components/dev-console/console.tsx
1483
- import { useCopilotContext as useCopilotContext4 } from "@copilotkit/react-core";
1579
+ import { useCopilotContext as useCopilotContext5 } from "@copilotkit/react-core";
1484
1580
  import { useEffect as useEffect6, useRef as useRef4, useState as useState6 } from "react";
1485
1581
 
1486
1582
  // src/components/dev-console/icons.tsx
@@ -1573,7 +1669,7 @@ import { COPILOTKIT_VERSION } from "@copilotkit/shared";
1573
1669
  import { Fragment, jsx as jsx14, jsxs as jsxs10 } from "react/jsx-runtime";
1574
1670
  function CopilotDevConsole() {
1575
1671
  const currentVersion = COPILOTKIT_VERSION;
1576
- const context = useCopilotContext4();
1672
+ const context = useCopilotContext5();
1577
1673
  const [showDevConsole, setShowDevConsole] = useState6(false);
1578
1674
  useEffect6(() => {
1579
1675
  setShowDevConsole(shouldShowDevConsole(context.showDevConsole));
@@ -1736,7 +1832,7 @@ function DebugMenuButton({
1736
1832
  checkForUpdates,
1737
1833
  mode
1738
1834
  }) {
1739
- const context = useCopilotContext4();
1835
+ const context = useCopilotContext5();
1740
1836
  return /* @__PURE__ */ jsx14("div", { className: "bg-black fixed top-24 w-52 text-right", children: /* @__PURE__ */ jsxs10(Menu, { children: [
1741
1837
  /* @__PURE__ */ jsx14(MenuButton, { className: `copilotKitDebugMenuButton ${mode === "compact" ? "compact" : ""}`, children: mode == "compact" ? "Debug" : /* @__PURE__ */ jsxs10(Fragment, { children: [
1742
1838
  "Debug ",
@@ -1752,6 +1848,7 @@ function DebugMenuButton({
1752
1848
  children: [
1753
1849
  /* @__PURE__ */ jsx14(MenuItem, { children: /* @__PURE__ */ jsx14("button", { className: "copilotKitDebugMenuItem", onClick: () => logReadables(context), children: "Log Readables" }) }),
1754
1850
  /* @__PURE__ */ jsx14(MenuItem, { children: /* @__PURE__ */ jsx14("button", { className: "copilotKitDebugMenuItem", onClick: () => logActions(context), children: "Log Actions" }) }),
1851
+ /* @__PURE__ */ jsx14(MenuItem, { children: /* @__PURE__ */ jsx14("button", { className: "copilotKitDebugMenuItem", onClick: () => logMessages(context), children: "Log Messages" }) }),
1755
1852
  /* @__PURE__ */ jsx14(MenuItem, { children: /* @__PURE__ */ jsx14("button", { className: "copilotKitDebugMenuItem", onClick: () => checkForUpdates(true), children: "Check for Updates" }) }),
1756
1853
  /* @__PURE__ */ jsx14("hr", {}),
1757
1854
  /* @__PURE__ */ jsx14(MenuItem, { children: /* @__PURE__ */ jsx14("button", { className: "copilotKitDebugMenuItem", onClick: () => setShowDevConsole(false), children: "Hide Dev Console" }) })
@@ -1776,7 +1873,7 @@ function CopilotChat({
1776
1873
  icons,
1777
1874
  labels
1778
1875
  }) {
1779
- const context = useCopilotContext5();
1876
+ const context = useCopilotContext6();
1780
1877
  useEffect7(() => {
1781
1878
  context.setChatInstructions(instructions || "");
1782
1879
  }, [instructions]);
@@ -1845,7 +1942,7 @@ var useCopilotChatLogic = (makeSystemMessage, onInProgress, onSubmitMessage) =>
1845
1942
  (_a = suggestionsAbortControllerRef.current) == null ? void 0 : _a.abort();
1846
1943
  suggestionsAbortControllerRef.current = null;
1847
1944
  };
1848
- const context = useCopilotContext5();
1945
+ const context = useCopilotContext6();
1849
1946
  useEffect7(() => {
1850
1947
  onInProgress == null ? void 0 : onInProgress(isLoading);
1851
1948
  abortSuggestions();
@@ -1870,7 +1967,7 @@ var useCopilotChatLogic = (makeSystemMessage, onInProgress, onSubmitMessage) =>
1870
1967
  const sendMessage = (messageContent) => __async(void 0, null, function* () {
1871
1968
  abortSuggestions();
1872
1969
  setCurrentSuggestions([]);
1873
- const message = new TextMessage3({
1970
+ const message = new TextMessage4({
1874
1971
  content: messageContent,
1875
1972
  role: Role2.User
1876
1973
  });
@@ -1920,7 +2017,6 @@ var CopilotModal = ({
1920
2017
  }) => {
1921
2018
  const [openState, setOpenState] = React8.useState(defaultOpen);
1922
2019
  const setOpen = (open) => {
1923
- console.log("setOpen!!", open);
1924
2020
  onSetOpen == null ? void 0 : onSetOpen(open);
1925
2021
  setOpenState(open);
1926
2022
  };