@copilotkit/runtime-client-gql 1.10.1-next.0 → 1.10.1-next.2

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 (45) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/{chunk-AES3X7TL.mjs → chunk-23JYINXK.mjs} +2 -2
  3. package/dist/{chunk-AES3X7TL.mjs.map → chunk-23JYINXK.mjs.map} +1 -1
  4. package/dist/{chunk-7OSRQ2O3.mjs → chunk-SCACOKQX.mjs} +30 -6
  5. package/dist/chunk-SCACOKQX.mjs.map +1 -0
  6. package/dist/{chunk-IGXWE4TX.mjs → chunk-ZYA32QXZ.mjs} +14 -2
  7. package/dist/chunk-ZYA32QXZ.mjs.map +1 -0
  8. package/dist/client/CopilotRuntimeClient.js +1 -1
  9. package/dist/client/CopilotRuntimeClient.js.map +1 -1
  10. package/dist/client/CopilotRuntimeClient.mjs +1 -1
  11. package/dist/client/index.js +1 -1
  12. package/dist/client/index.js.map +1 -1
  13. package/dist/client/index.mjs +1 -1
  14. package/dist/index.js +43 -7
  15. package/dist/index.js.map +1 -1
  16. package/dist/index.mjs +3 -3
  17. package/dist/message-conversion/agui-to-gql.js +29 -5
  18. package/dist/message-conversion/agui-to-gql.js.map +1 -1
  19. package/dist/message-conversion/agui-to-gql.mjs +2 -2
  20. package/dist/message-conversion/agui-to-gql.test.js +149 -5
  21. package/dist/message-conversion/agui-to-gql.test.js.map +1 -1
  22. package/dist/message-conversion/agui-to-gql.test.mjs +122 -2
  23. package/dist/message-conversion/agui-to-gql.test.mjs.map +1 -1
  24. package/dist/message-conversion/gql-to-agui.js +13 -1
  25. package/dist/message-conversion/gql-to-agui.js.map +1 -1
  26. package/dist/message-conversion/gql-to-agui.mjs +2 -2
  27. package/dist/message-conversion/gql-to-agui.test.js +127 -1
  28. package/dist/message-conversion/gql-to-agui.test.js.map +1 -1
  29. package/dist/message-conversion/gql-to-agui.test.mjs +116 -2
  30. package/dist/message-conversion/gql-to-agui.test.mjs.map +1 -1
  31. package/dist/message-conversion/index.js +42 -6
  32. package/dist/message-conversion/index.js.map +1 -1
  33. package/dist/message-conversion/index.mjs +3 -3
  34. package/dist/message-conversion/roundtrip-conversion.test.js +119 -6
  35. package/dist/message-conversion/roundtrip-conversion.test.js.map +1 -1
  36. package/dist/message-conversion/roundtrip-conversion.test.mjs +80 -3
  37. package/dist/message-conversion/roundtrip-conversion.test.mjs.map +1 -1
  38. package/package.json +3 -3
  39. package/src/message-conversion/agui-to-gql.test.ts +140 -0
  40. package/src/message-conversion/agui-to-gql.ts +45 -7
  41. package/src/message-conversion/gql-to-agui.test.ts +139 -0
  42. package/src/message-conversion/gql-to-agui.ts +19 -1
  43. package/src/message-conversion/roundtrip-conversion.test.ts +106 -0
  44. package/dist/chunk-7OSRQ2O3.mjs.map +0 -1
  45. package/dist/chunk-IGXWE4TX.mjs.map +0 -1
package/dist/index.js CHANGED
@@ -72,7 +72,7 @@ module.exports = __toCommonJS(src_exports);
72
72
  var import_core = require("@urql/core");
73
73
 
74
74
  // package.json
75
- var version = "1.10.1-next.0";
75
+ var version = "1.10.1-next.2";
76
76
 
77
77
  // src/graphql/@generated/graphql.ts
78
78
  var ActionInputAvailability = /* @__PURE__ */ ((ActionInputAvailability2) => {
@@ -845,10 +845,20 @@ function aguiToolCallToGQLActionExecution(toolCall, parentMessageId) {
845
845
  throw new Error(`Unsupported tool call type: ${toolCall.type}`);
846
846
  }
847
847
  let argumentsObj;
848
- try {
849
- argumentsObj = JSON.parse(toolCall.function.arguments);
850
- } catch (error) {
851
- console.warn(`Failed to parse tool call arguments for ${toolCall.function.name}:`, error);
848
+ if (typeof toolCall.function.arguments === "string") {
849
+ try {
850
+ argumentsObj = JSON.parse(toolCall.function.arguments);
851
+ } catch (error) {
852
+ console.warn(`Failed to parse tool call arguments for ${toolCall.function.name}:`, error);
853
+ argumentsObj = {};
854
+ }
855
+ } else if (typeof toolCall.function.arguments === "object" && toolCall.function.arguments !== null) {
856
+ argumentsObj = toolCall.function.arguments;
857
+ } else {
858
+ console.warn(
859
+ `Invalid tool call arguments type for ${toolCall.function.name}:`,
860
+ typeof toolCall.function.arguments
861
+ );
852
862
  argumentsObj = {};
853
863
  }
854
864
  return new ActionExecutionMessage({
@@ -866,9 +876,23 @@ function aguiToolMessageToGQLResultMessage(message, toolCallNames) {
866
876
  throw new Error("Tool message must have a toolCallId");
867
877
  }
868
878
  const actionName = toolCallNames[message.toolCallId] || "unknown";
879
+ let resultContent;
880
+ const messageContent = message.content || "";
881
+ if (typeof messageContent === "string") {
882
+ resultContent = messageContent;
883
+ } else if (typeof messageContent === "object" && messageContent !== null) {
884
+ try {
885
+ resultContent = JSON.stringify(messageContent);
886
+ } catch (error) {
887
+ console.warn(`Failed to stringify tool result for ${actionName}:`, error);
888
+ resultContent = String(messageContent);
889
+ }
890
+ } else {
891
+ resultContent = String(messageContent);
892
+ }
869
893
  return new ResultMessage({
870
894
  id: message.id,
871
- result: message.content || "",
895
+ result: resultContent,
872
896
  actionExecutionId: message.toolCallId,
873
897
  actionName: message.toolName || actionName
874
898
  });
@@ -963,13 +987,25 @@ function gqlActionExecutionMessageToAGUIMessage(message, actions, actionResults)
963
987
  return void 0;
964
988
  return (props) => {
965
989
  var _a;
966
- const actionResult = actionResults == null ? void 0 : actionResults.get(message.id);
990
+ let actionResult = actionResults == null ? void 0 : actionResults.get(message.id);
967
991
  let status = "inProgress";
968
992
  if (actionResult !== void 0) {
969
993
  status = "complete";
970
994
  } else if (((_a = message.status) == null ? void 0 : _a.code) !== "Pending" /* Pending */) {
971
995
  status = "executing";
972
996
  }
997
+ if (typeof (props == null ? void 0 : props.result) === "string") {
998
+ try {
999
+ props.result = JSON.parse(props.result);
1000
+ } catch (e) {
1001
+ }
1002
+ }
1003
+ if (typeof actionResult === "string") {
1004
+ try {
1005
+ actionResult = JSON.parse(actionResult);
1006
+ } catch (e) {
1007
+ }
1008
+ }
973
1009
  const renderProps = {
974
1010
  status: (props == null ? void 0 : props.status) || status,
975
1011
  args: message.arguments || {},