@copilotkit/runtime-client-gql 1.51.4-next.7 → 1.51.4

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 (94) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/codegen.ts +4 -1
  3. package/dist/{chunk-FTOMK35N.mjs → chunk-2XWNDVTL.mjs} +18 -7
  4. package/dist/chunk-2XWNDVTL.mjs.map +1 -0
  5. package/dist/{chunk-L6PM6AT3.mjs → chunk-A4INSSNE.mjs} +55 -55
  6. package/dist/chunk-A4INSSNE.mjs.map +1 -0
  7. package/dist/{chunk-KTA7QTTU.mjs → chunk-E5FOLXLN.mjs} +6 -3
  8. package/dist/chunk-E5FOLXLN.mjs.map +1 -0
  9. package/dist/{chunk-RNENVFJ3.mjs → chunk-LTVE64IE.mjs} +31 -11
  10. package/dist/chunk-LTVE64IE.mjs.map +1 -0
  11. package/dist/{chunk-AMFKR5ST.mjs → chunk-M4CK5HDR.mjs} +2 -2
  12. package/dist/chunk-M4CK5HDR.mjs.map +1 -0
  13. package/dist/{chunk-3ETRQN2E.mjs → chunk-QUH7QWUA.mjs} +2 -2
  14. package/dist/chunk-SDQPJXLL.mjs +20 -0
  15. package/dist/chunk-SDQPJXLL.mjs.map +1 -0
  16. package/dist/{chunk-NHOKFX55.mjs → chunk-UOAPP5IN.mjs} +6 -2
  17. package/dist/chunk-UOAPP5IN.mjs.map +1 -0
  18. package/dist/{chunk-EIPAWDCN.mjs → chunk-VIHKTLUA.mjs} +14 -6
  19. package/dist/chunk-VIHKTLUA.mjs.map +1 -0
  20. package/dist/client/CopilotRuntimeClient.js +20 -6
  21. package/dist/client/CopilotRuntimeClient.js.map +1 -1
  22. package/dist/client/CopilotRuntimeClient.mjs +4 -4
  23. package/dist/client/conversion.js.map +1 -1
  24. package/dist/client/conversion.mjs +2 -2
  25. package/dist/client/index.js +25 -7
  26. package/dist/client/index.js.map +1 -1
  27. package/dist/client/index.mjs +6 -6
  28. package/dist/client/types.js +5 -1
  29. package/dist/client/types.js.map +1 -1
  30. package/dist/client/types.mjs +1 -1
  31. package/dist/graphql/@generated/gql.d.ts +2 -2
  32. package/dist/graphql/@generated/gql.js +1 -1
  33. package/dist/graphql/@generated/gql.js.map +1 -1
  34. package/dist/graphql/@generated/gql.mjs +1 -1
  35. package/dist/graphql/@generated/index.js +1 -1
  36. package/dist/graphql/@generated/index.js.map +1 -1
  37. package/dist/graphql/@generated/index.mjs +1 -1
  38. package/dist/graphql/definitions/mutations.js +5 -2
  39. package/dist/graphql/definitions/mutations.js.map +1 -1
  40. package/dist/graphql/definitions/mutations.mjs +2 -2
  41. package/dist/graphql/definitions/queries.js +1 -1
  42. package/dist/graphql/definitions/queries.js.map +1 -1
  43. package/dist/graphql/definitions/queries.mjs +2 -2
  44. package/dist/index.js +66 -20
  45. package/dist/index.js.map +1 -1
  46. package/dist/index.mjs +8 -8
  47. package/dist/index.umd.js +1 -1
  48. package/dist/index.umd.js.map +1 -1
  49. package/dist/{magic-string.es-26DP735G.mjs → magic-string.es-XBKSJO3K.mjs} +3 -3
  50. package/dist/magic-string.es-XBKSJO3K.mjs.map +1 -0
  51. package/dist/message-conversion/agui-to-gql.js +29 -9
  52. package/dist/message-conversion/agui-to-gql.js.map +1 -1
  53. package/dist/message-conversion/agui-to-gql.mjs +7 -7
  54. package/dist/message-conversion/agui-to-gql.test.js +133 -82
  55. package/dist/message-conversion/agui-to-gql.test.js.map +1 -1
  56. package/dist/message-conversion/agui-to-gql.test.mjs +55 -24
  57. package/dist/message-conversion/agui-to-gql.test.mjs.map +1 -1
  58. package/dist/message-conversion/gql-to-agui.js +12 -4
  59. package/dist/message-conversion/gql-to-agui.js.map +1 -1
  60. package/dist/message-conversion/gql-to-agui.mjs +7 -7
  61. package/dist/message-conversion/gql-to-agui.test.js +166 -85
  62. package/dist/message-conversion/gql-to-agui.test.js.map +1 -1
  63. package/dist/message-conversion/gql-to-agui.test.mjs +105 -32
  64. package/dist/message-conversion/gql-to-agui.test.mjs.map +1 -1
  65. package/dist/message-conversion/index.js +41 -13
  66. package/dist/message-conversion/index.js.map +1 -1
  67. package/dist/message-conversion/index.mjs +8 -8
  68. package/dist/message-conversion/roundtrip-conversion.test.js +149 -87
  69. package/dist/message-conversion/roundtrip-conversion.test.js.map +1 -1
  70. package/dist/message-conversion/roundtrip-conversion.test.mjs +60 -26
  71. package/dist/message-conversion/roundtrip-conversion.test.mjs.map +1 -1
  72. package/package.json +3 -4
  73. package/src/client/CopilotRuntimeClient.ts +21 -5
  74. package/src/client/conversion.ts +3 -1
  75. package/src/client/types.ts +34 -12
  76. package/src/graphql/@generated/gql.ts +3 -3
  77. package/src/graphql/definitions/mutations.ts +4 -1
  78. package/src/message-conversion/agui-to-gql.test.ts +49 -17
  79. package/src/message-conversion/agui-to-gql.ts +47 -15
  80. package/src/message-conversion/gql-to-agui.test.ts +101 -26
  81. package/src/message-conversion/gql-to-agui.ts +30 -11
  82. package/src/message-conversion/roundtrip-conversion.test.ts +53 -18
  83. package/tsconfig.json +1 -1
  84. package/dist/chunk-AMFKR5ST.mjs.map +0 -1
  85. package/dist/chunk-EIPAWDCN.mjs.map +0 -1
  86. package/dist/chunk-FTOMK35N.mjs.map +0 -1
  87. package/dist/chunk-KTA7QTTU.mjs.map +0 -1
  88. package/dist/chunk-L6PM6AT3.mjs.map +0 -1
  89. package/dist/chunk-M5LBGBWO.mjs +0 -20
  90. package/dist/chunk-M5LBGBWO.mjs.map +0 -1
  91. package/dist/chunk-NHOKFX55.mjs.map +0 -1
  92. package/dist/chunk-RNENVFJ3.mjs.map +0 -1
  93. package/dist/magic-string.es-26DP735G.mjs.map +0 -1
  94. /package/dist/{chunk-3ETRQN2E.mjs.map → chunk-QUH7QWUA.mjs.map} +0 -0
@@ -1,12 +1,15 @@
1
1
  import {
2
2
  graphql
3
- } from "./chunk-M5LBGBWO.mjs";
3
+ } from "./chunk-SDQPJXLL.mjs";
4
4
 
5
5
  // src/graphql/definitions/mutations.ts
6
6
  var generateCopilotResponseMutation = graphql(
7
7
  /** GraphQL **/
8
8
  `
9
- mutation generateCopilotResponse($data: GenerateCopilotResponseInput!, $properties: JSONObject) {
9
+ mutation generateCopilotResponse(
10
+ $data: GenerateCopilotResponseInput!
11
+ $properties: JSONObject
12
+ ) {
10
13
  generateCopilotResponse(data: $data, properties: $properties) {
11
14
  threadId
12
15
  runId
@@ -138,4 +141,4 @@ var generateCopilotResponseMutation = graphql(
138
141
  export {
139
142
  generateCopilotResponseMutation
140
143
  };
141
- //# sourceMappingURL=chunk-KTA7QTTU.mjs.map
144
+ //# sourceMappingURL=chunk-E5FOLXLN.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/graphql/definitions/mutations.ts"],"sourcesContent":["import { graphql } from \"../@generated/gql\";\n\nexport const generateCopilotResponseMutation = graphql(/** GraphQL **/ `\n mutation generateCopilotResponse(\n $data: GenerateCopilotResponseInput!\n $properties: JSONObject\n ) {\n generateCopilotResponse(data: $data, properties: $properties) {\n threadId\n runId\n extensions {\n openaiAssistantAPI {\n runId\n threadId\n }\n }\n ... on CopilotResponse @defer {\n status {\n ... on BaseResponseStatus {\n code\n }\n ... on FailedResponseStatus {\n reason\n details\n }\n }\n }\n messages @stream {\n __typename\n ... on BaseMessageOutput {\n id\n createdAt\n }\n ... on BaseMessageOutput @defer {\n status {\n ... on SuccessMessageStatus {\n code\n }\n ... on FailedMessageStatus {\n code\n reason\n }\n ... on PendingMessageStatus {\n code\n }\n }\n }\n ... on TextMessageOutput {\n content @stream\n role\n parentMessageId\n }\n ... on ImageMessageOutput {\n format\n bytes\n role\n parentMessageId\n }\n ... on ActionExecutionMessageOutput {\n name\n arguments @stream\n parentMessageId\n }\n ... on ResultMessageOutput {\n result\n actionExecutionId\n actionName\n }\n ... on AgentStateMessageOutput {\n threadId\n state\n running\n agentName\n nodeName\n runId\n active\n role\n }\n }\n metaEvents @stream {\n ... on LangGraphInterruptEvent {\n type\n name\n value\n }\n\n ... on CopilotKitLangGraphInterruptEvent {\n type\n name\n data {\n messages {\n __typename\n ... on BaseMessageOutput {\n id\n createdAt\n }\n ... on BaseMessageOutput @defer {\n status {\n ... on SuccessMessageStatus {\n code\n }\n ... on FailedMessageStatus {\n code\n reason\n }\n ... on PendingMessageStatus {\n code\n }\n }\n }\n ... on TextMessageOutput {\n content\n role\n parentMessageId\n }\n ... on ActionExecutionMessageOutput {\n name\n arguments\n parentMessageId\n }\n ... on ResultMessageOutput {\n result\n actionExecutionId\n actionName\n }\n }\n value\n }\n }\n }\n }\n }\n`);\n"],"mappings":";;;;;AAEO,IAAM,kCAAkC;AAAA;AAAA,EAAwB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkItE;","names":[]}
@@ -5,12 +5,14 @@ import {
5
5
  ResultMessage,
6
6
  Role,
7
7
  TextMessage
8
- } from "./chunk-NHOKFX55.mjs";
8
+ } from "./chunk-UOAPP5IN.mjs";
9
9
 
10
10
  // src/message-conversion/agui-to-gql.ts
11
11
  function extractAgentName(message) {
12
12
  if (message.role !== "assistant") {
13
- throw new Error(`Cannot extract agent name from message with role ${message.role}`);
13
+ throw new Error(
14
+ `Cannot extract agent name from message with role ${message.role}`
15
+ );
14
16
  }
15
17
  return message.agentName || "unknown";
16
18
  }
@@ -60,13 +62,18 @@ function aguiToGQL(messages, actions, coAgentStateRenders) {
60
62
  gqlMessages.push(aguiTextMessageToGQLMessage(message));
61
63
  for (const toolCall of message.toolCalls) {
62
64
  toolCallNames[toolCall.id] = toolCall.function.name;
63
- const actionExecMsg = aguiToolCallToGQLActionExecution(toolCall, message.id);
65
+ const actionExecMsg = aguiToolCallToGQLActionExecution(
66
+ toolCall,
67
+ message.id
68
+ );
64
69
  if ("generativeUI" in message && message.generativeUI && actions) {
65
70
  const actionName = toolCall.function.name;
66
71
  const specificAction = Object.values(actions).find(
67
72
  (action) => action.name === actionName
68
73
  );
69
- const wildcardAction = Object.values(actions).find((action) => action.name === "*");
74
+ const wildcardAction = Object.values(actions).find(
75
+ (action) => action.name === "*"
76
+ );
70
77
  if (specificAction) {
71
78
  specificAction.render = message.generativeUI;
72
79
  } else if (wildcardAction) {
@@ -82,7 +89,9 @@ function aguiToGQL(messages, actions, coAgentStateRenders) {
82
89
  continue;
83
90
  }
84
91
  if (message.role === "tool") {
85
- gqlMessages.push(aguiToolMessageToGQLResultMessage(message, toolCallNames));
92
+ gqlMessages.push(
93
+ aguiToolMessageToGQLResultMessage(message, toolCallNames)
94
+ );
86
95
  continue;
87
96
  }
88
97
  throw new Error(
@@ -93,7 +102,9 @@ function aguiToGQL(messages, actions, coAgentStateRenders) {
93
102
  }
94
103
  function aguiTextMessageToGQLMessage(message) {
95
104
  if (message.role !== "developer" && message.role !== "system" && message.role !== "assistant" && message.role !== "user") {
96
- throw new Error(`Cannot convert message with role ${message.role} to TextMessage`);
105
+ throw new Error(
106
+ `Cannot convert message with role ${message.role} to TextMessage`
107
+ );
97
108
  }
98
109
  let roleValue;
99
110
  if (message.role === "developer") {
@@ -120,7 +131,10 @@ function aguiToolCallToGQLActionExecution(toolCall, parentMessageId) {
120
131
  try {
121
132
  argumentsObj = JSON.parse(toolCall.function.arguments);
122
133
  } catch (error) {
123
- console.warn(`Failed to parse tool call arguments for ${toolCall.function.name}:`, error);
134
+ console.warn(
135
+ `Failed to parse tool call arguments for ${toolCall.function.name}:`,
136
+ error
137
+ );
124
138
  argumentsObj = {};
125
139
  }
126
140
  } else if (typeof toolCall.function.arguments === "object" && toolCall.function.arguments !== null) {
@@ -141,7 +155,9 @@ function aguiToolCallToGQLActionExecution(toolCall, parentMessageId) {
141
155
  }
142
156
  function aguiToolMessageToGQLResultMessage(message, toolCallNames) {
143
157
  if (message.role !== "tool") {
144
- throw new Error(`Cannot convert message with role ${message.role} to ResultMessage`);
158
+ throw new Error(
159
+ `Cannot convert message with role ${message.role} to ResultMessage`
160
+ );
145
161
  }
146
162
  if (!message.toolCallId) {
147
163
  throw new Error("Tool message must have a toolCallId");
@@ -191,7 +207,9 @@ function aguiMessageWithRenderToGQL(message, actions, coAgentStateRenders) {
191
207
  }
192
208
  function aguiMessageWithImageToGQLMessage(message) {
193
209
  if (!hasImageProperty(message)) {
194
- throw new Error(`Cannot convert message to ImageMessage: missing format or bytes`);
210
+ throw new Error(
211
+ `Cannot convert message to ImageMessage: missing format or bytes`
212
+ );
195
213
  }
196
214
  let roleValue;
197
215
  if (message.role === "assistant") {
@@ -200,7 +218,9 @@ function aguiMessageWithImageToGQLMessage(message) {
200
218
  roleValue = Role.User;
201
219
  }
202
220
  if (message.role !== "assistant" && message.role !== "user") {
203
- throw new Error(`Cannot convert message with role ${message.role} to ImageMessage`);
221
+ throw new Error(
222
+ `Cannot convert message with role ${message.role} to ImageMessage`
223
+ );
204
224
  }
205
225
  return new ImageMessage({
206
226
  id: message.id,
@@ -218,4 +238,4 @@ export {
218
238
  aguiMessageWithRenderToGQL,
219
239
  aguiMessageWithImageToGQLMessage
220
240
  };
221
- //# sourceMappingURL=chunk-RNENVFJ3.mjs.map
241
+ //# sourceMappingURL=chunk-LTVE64IE.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/message-conversion/agui-to-gql.ts"],"sourcesContent":["import * as gql from \"../client\";\nimport { MessageRole } from \"../graphql/@generated/graphql\";\nimport agui from \"@copilotkit/shared\"; // named agui for clarity, but this only includes agui message types\n\n// Helper function to extract agent name from message\nfunction extractAgentName(message: agui.Message): string {\n if (message.role !== \"assistant\") {\n throw new Error(\n `Cannot extract agent name from message with role ${message.role}`,\n );\n }\n\n return message.agentName || \"unknown\";\n}\n\n// Type guard for agent state message\nfunction isAgentStateMessage(message: agui.Message): boolean {\n return (\n message.role === \"assistant\" && \"agentName\" in message && \"state\" in message\n );\n}\n\n// Type guard for messages with image property\nfunction hasImageProperty(message: agui.Message): boolean {\n const canContainImage =\n message.role === \"assistant\" || message.role === \"user\";\n if (!canContainImage || message.image === undefined) {\n return false;\n }\n\n const isMalformed =\n message.image.format === undefined || message.image.bytes === undefined;\n if (isMalformed) {\n return false;\n }\n\n return true;\n}\n\n/*\n ----------------------------\n AGUI Message -> GQL Message\n ----------------------------\n*/\nexport function aguiToGQL(\n messages: agui.Message[] | agui.Message,\n actions?: Record<string, any>,\n coAgentStateRenders?: Record<string, any>,\n): gql.Message[] {\n const gqlMessages: gql.Message[] = [];\n messages = Array.isArray(messages) ? messages : [messages];\n\n // Track tool call names by their IDs for use in result messages\n const toolCallNames: Record<string, string> = {};\n\n for (const message of messages) {\n // Agent state message support\n if (isAgentStateMessage(message)) {\n const agentName = extractAgentName(message);\n const state = \"state\" in message && message.state ? message.state : {};\n gqlMessages.push(\n new gql.AgentStateMessage({\n id: message.id,\n agentName,\n state,\n role: gql.Role.Assistant,\n }),\n );\n // Optionally preserve render function\n if (\n \"generativeUI\" in message &&\n message.generativeUI &&\n coAgentStateRenders\n ) {\n coAgentStateRenders[agentName] = {\n name: agentName,\n render: message.generativeUI,\n };\n }\n continue;\n }\n\n if (hasImageProperty(message)) {\n gqlMessages.push(aguiMessageWithImageToGQLMessage(message));\n continue;\n }\n\n // Action execution message support\n if (message.role === \"assistant\" && message.toolCalls) {\n gqlMessages.push(aguiTextMessageToGQLMessage(message));\n for (const toolCall of message.toolCalls) {\n // Track the tool call name by its ID\n toolCallNames[toolCall.id] = toolCall.function.name;\n\n const actionExecMsg = aguiToolCallToGQLActionExecution(\n toolCall,\n message.id,\n );\n // Preserve render function in actions context\n if (\"generativeUI\" in message && message.generativeUI && actions) {\n const actionName = toolCall.function.name;\n // Check for specific action first, then wild card action\n const specificAction = Object.values(actions).find(\n (action: any) => action.name === actionName,\n );\n const wildcardAction = Object.values(actions).find(\n (action: any) => action.name === \"*\",\n );\n\n // Assign render function to the matching action (specific takes priority)\n if (specificAction) {\n specificAction.render = message.generativeUI;\n } else if (wildcardAction) {\n wildcardAction.render = message.generativeUI;\n }\n }\n gqlMessages.push(actionExecMsg);\n }\n continue;\n }\n // Regular text messages\n if (\n message.role === \"developer\" ||\n message.role === \"system\" ||\n message.role === \"assistant\" ||\n message.role === \"user\"\n ) {\n gqlMessages.push(aguiTextMessageToGQLMessage(message));\n continue;\n }\n // Tool result message\n if (message.role === \"tool\") {\n gqlMessages.push(\n aguiToolMessageToGQLResultMessage(message, toolCallNames),\n );\n continue;\n }\n throw new Error(\n `Unknown message role: \"${(message as any).role}\" in message with id: ${(message as any).id}`,\n );\n }\n\n return gqlMessages;\n}\n\nexport function aguiTextMessageToGQLMessage(\n message: agui.Message,\n): gql.TextMessage {\n if (\n message.role !== \"developer\" &&\n message.role !== \"system\" &&\n message.role !== \"assistant\" &&\n message.role !== \"user\"\n ) {\n throw new Error(\n `Cannot convert message with role ${message.role} to TextMessage`,\n );\n }\n\n let roleValue: MessageRole;\n\n if (message.role === \"developer\") {\n roleValue = gql.Role.Developer;\n } else if (message.role === \"system\") {\n roleValue = gql.Role.System;\n } else if (message.role === \"assistant\") {\n roleValue = gql.Role.Assistant;\n } else {\n roleValue = gql.Role.User;\n }\n\n return new gql.TextMessage({\n id: message.id,\n content: (message.content as any) || \"\",\n role: roleValue,\n });\n}\n\nexport function aguiToolCallToGQLActionExecution(\n toolCall: agui.ToolCall,\n parentMessageId: string,\n): gql.ActionExecutionMessage {\n if (toolCall.type !== \"function\") {\n throw new Error(`Unsupported tool call type: ${toolCall.type}`);\n }\n\n // Handle arguments - they should be a JSON string in AGUI format,\n // but we need to convert them to an object for GQL format\n let argumentsObj: any;\n\n if (typeof toolCall.function.arguments === \"string\") {\n // Expected case: arguments is a JSON string\n try {\n argumentsObj = JSON.parse(toolCall.function.arguments);\n } catch (error) {\n console.warn(\n `Failed to parse tool call arguments for ${toolCall.function.name}:`,\n error,\n );\n // Provide fallback empty object to prevent application crash\n argumentsObj = {};\n }\n } else if (\n typeof toolCall.function.arguments === \"object\" &&\n toolCall.function.arguments !== null\n ) {\n // Backward compatibility: arguments is already an object\n argumentsObj = toolCall.function.arguments;\n } else {\n // Fallback for undefined, null, or other types\n console.warn(\n `Invalid tool call arguments type for ${toolCall.function.name}:`,\n typeof toolCall.function.arguments,\n );\n argumentsObj = {};\n }\n\n // Always include name and arguments\n return new gql.ActionExecutionMessage({\n id: toolCall.id,\n name: toolCall.function.name,\n arguments: argumentsObj,\n parentMessageId: parentMessageId,\n });\n}\n\nexport function aguiToolMessageToGQLResultMessage(\n message: agui.Message,\n toolCallNames: Record<string, string>,\n): gql.ResultMessage {\n if (message.role !== \"tool\") {\n throw new Error(\n `Cannot convert message with role ${message.role} to ResultMessage`,\n );\n }\n\n if (!message.toolCallId) {\n throw new Error(\"Tool message must have a toolCallId\");\n }\n\n const actionName = toolCallNames[message.toolCallId] || \"unknown\";\n\n // Handle result content - it could be a string or an object that needs serialization\n let resultContent: string;\n const messageContent = message.content || \"\";\n\n if (typeof messageContent === \"string\") {\n // Expected case: content is already a string\n resultContent = messageContent;\n } else if (typeof messageContent === \"object\" && messageContent !== null) {\n // Handle case where content is an object that needs to be serialized\n try {\n resultContent = JSON.stringify(messageContent);\n } catch (error) {\n console.warn(`Failed to stringify tool result for ${actionName}:`, error);\n resultContent = String(messageContent);\n }\n } else {\n // Handle other types (number, boolean, etc.)\n resultContent = String(messageContent);\n }\n\n return new gql.ResultMessage({\n id: message.id,\n result: resultContent,\n actionExecutionId: message.toolCallId,\n actionName: message.toolName || actionName,\n });\n}\n\n// New function to handle AGUI messages with render functions\nexport function aguiMessageWithRenderToGQL(\n message: agui.Message,\n actions?: Record<string, any>,\n coAgentStateRenders?: Record<string, any>,\n): gql.Message[] {\n // Handle the special case: assistant messages with render function but no tool calls\n if (\n message.role === \"assistant\" &&\n \"generativeUI\" in message &&\n message.generativeUI &&\n !message.toolCalls\n ) {\n const gqlMessages: gql.Message[] = [];\n gqlMessages.push(\n new gql.AgentStateMessage({\n id: message.id,\n agentName: \"unknown\",\n state: {},\n role: gql.Role.Assistant,\n }),\n );\n if (coAgentStateRenders) {\n coAgentStateRenders.unknown = {\n name: \"unknown\",\n render: message.generativeUI,\n };\n }\n return gqlMessages;\n }\n\n // For all other cases, delegate to aguiToGQL\n return aguiToGQL([message], actions, coAgentStateRenders);\n}\n\nexport function aguiMessageWithImageToGQLMessage(\n message: agui.Message,\n): gql.ImageMessage {\n if (!hasImageProperty(message)) {\n throw new Error(\n `Cannot convert message to ImageMessage: missing format or bytes`,\n );\n }\n\n let roleValue: MessageRole;\n if (message.role === \"assistant\") {\n roleValue = gql.Role.Assistant;\n } else {\n roleValue = gql.Role.User;\n }\n\n if (message.role !== \"assistant\" && message.role !== \"user\") {\n throw new Error(\n `Cannot convert message with role ${message.role} to ImageMessage`,\n );\n }\n\n return new gql.ImageMessage({\n id: message.id,\n format: message.image!.format,\n bytes: message.image!.bytes,\n role: roleValue,\n });\n}\n"],"mappings":"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","names":[]}
@@ -4,7 +4,7 @@ import {
4
4
  ImageMessage,
5
5
  ResultMessage,
6
6
  TextMessage
7
- } from "./chunk-NHOKFX55.mjs";
7
+ } from "./chunk-UOAPP5IN.mjs";
8
8
 
9
9
  // src/client/conversion.ts
10
10
  import untruncateJson from "untruncate-json";
@@ -234,4 +234,4 @@ export {
234
234
  convertGqlOutputToMessages,
235
235
  loadMessagesFromJsonRepresentation
236
236
  };
237
- //# sourceMappingURL=chunk-AMFKR5ST.mjs.map
237
+ //# sourceMappingURL=chunk-M4CK5HDR.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/client/conversion.ts"],"sourcesContent":["import {\n GenerateCopilotResponseMutation,\n MessageInput,\n MessageStatusCode,\n} from \"../graphql/@generated/graphql\";\nimport {\n ActionExecutionMessage,\n AgentStateMessage,\n Message,\n ResultMessage,\n TextMessage,\n ImageMessage,\n} from \"./types\";\n\nimport untruncateJson from \"untruncate-json\";\nimport { parseJson } from \"@copilotkit/shared\";\n\nexport function filterAgentStateMessages(messages: Message[]): Message[] {\n return messages.filter((message) => !message.isAgentStateMessage());\n}\n\nexport function convertMessagesToGqlInput(messages: Message[]): MessageInput[] {\n return messages.map((message) => {\n if (message.isTextMessage()) {\n return {\n id: message.id,\n createdAt: message.createdAt,\n textMessage: {\n content: message.content,\n role: message.role as any,\n parentMessageId: message.parentMessageId,\n },\n };\n } else if (message.isActionExecutionMessage()) {\n return {\n id: message.id,\n createdAt: message.createdAt,\n actionExecutionMessage: {\n name: message.name,\n arguments: JSON.stringify(message.arguments),\n parentMessageId: message.parentMessageId,\n },\n };\n } else if (message.isResultMessage()) {\n return {\n id: message.id,\n createdAt: message.createdAt,\n resultMessage: {\n result: message.result,\n actionExecutionId: message.actionExecutionId,\n actionName: message.actionName,\n },\n };\n } else if (message.isAgentStateMessage()) {\n return {\n id: message.id,\n createdAt: message.createdAt,\n agentStateMessage: {\n threadId: message.threadId,\n role: message.role,\n agentName: message.agentName,\n nodeName: message.nodeName,\n runId: message.runId,\n active: message.active,\n running: message.running,\n state: JSON.stringify(message.state),\n },\n };\n } else if (message.isImageMessage()) {\n return {\n id: message.id,\n createdAt: message.createdAt,\n imageMessage: {\n format: message.format,\n bytes: message.bytes,\n role: message.role as any,\n parentMessageId: message.parentMessageId,\n },\n };\n } else {\n throw new Error(\"Unknown message type\");\n }\n });\n}\n\nexport function filterAdjacentAgentStateMessages(\n messages: GenerateCopilotResponseMutation[\"generateCopilotResponse\"][\"messages\"],\n): GenerateCopilotResponseMutation[\"generateCopilotResponse\"][\"messages\"] {\n const filteredMessages: GenerateCopilotResponseMutation[\"generateCopilotResponse\"][\"messages\"] =\n [];\n\n messages.forEach((message, i) => {\n // keep all other message types\n if (message.__typename !== \"AgentStateMessageOutput\") {\n filteredMessages.push(message);\n } else {\n const prevAgentStateMessageIndex = filteredMessages.findIndex(\n // TODO: also check runId\n (m) =>\n m.__typename === \"AgentStateMessageOutput\" &&\n m.agentName === message.agentName,\n );\n if (prevAgentStateMessageIndex === -1) {\n filteredMessages.push(message);\n } else {\n filteredMessages[prevAgentStateMessageIndex] = message;\n }\n }\n });\n\n return filteredMessages;\n}\n\nexport function convertGqlOutputToMessages(\n messages: GenerateCopilotResponseMutation[\"generateCopilotResponse\"][\"messages\"],\n): Message[] {\n return messages.map((message) => {\n if (message.__typename === \"TextMessageOutput\") {\n return new TextMessage({\n id: message.id,\n role: message.role,\n content: message.content.join(\"\"),\n parentMessageId: message.parentMessageId,\n createdAt: new Date(),\n status: message.status || { code: MessageStatusCode.Pending },\n });\n } else if (message.__typename === \"ActionExecutionMessageOutput\") {\n return new ActionExecutionMessage({\n id: message.id,\n name: message.name,\n arguments: getPartialArguments(message.arguments),\n parentMessageId: message.parentMessageId,\n createdAt: new Date(),\n status: message.status || { code: MessageStatusCode.Pending },\n });\n } else if (message.__typename === \"ResultMessageOutput\") {\n return new ResultMessage({\n id: message.id,\n result: message.result,\n actionExecutionId: message.actionExecutionId,\n actionName: message.actionName,\n createdAt: new Date(),\n status: message.status || { code: MessageStatusCode.Pending },\n });\n } else if (message.__typename === \"AgentStateMessageOutput\") {\n return new AgentStateMessage({\n id: message.id,\n threadId: message.threadId,\n role: message.role,\n agentName: message.agentName,\n nodeName: message.nodeName,\n runId: message.runId,\n active: message.active,\n running: message.running,\n state: parseJson(message.state, {}),\n createdAt: new Date(),\n });\n } else if (message.__typename === \"ImageMessageOutput\") {\n return new ImageMessage({\n id: message.id,\n format: message.format,\n bytes: message.bytes,\n role: message.role,\n parentMessageId: message.parentMessageId,\n createdAt: new Date(),\n status: message.status || { code: MessageStatusCode.Pending },\n });\n }\n\n throw new Error(\"Unknown message type\");\n });\n}\n\nexport function loadMessagesFromJsonRepresentation(json: any[]): Message[] {\n const result: Message[] = [];\n for (const item of json) {\n if (\"content\" in item) {\n result.push(\n new TextMessage({\n id: item.id,\n role: item.role,\n content: item.content,\n parentMessageId: item.parentMessageId,\n createdAt: item.createdAt || new Date(),\n status: item.status || { code: MessageStatusCode.Success },\n }),\n );\n } else if (\"arguments\" in item) {\n result.push(\n new ActionExecutionMessage({\n id: item.id,\n name: item.name,\n arguments: item.arguments,\n parentMessageId: item.parentMessageId,\n createdAt: item.createdAt || new Date(),\n status: item.status || { code: MessageStatusCode.Success },\n }),\n );\n } else if (\"result\" in item) {\n result.push(\n new ResultMessage({\n id: item.id,\n result: item.result,\n actionExecutionId: item.actionExecutionId,\n actionName: item.actionName,\n createdAt: item.createdAt || new Date(),\n status: item.status || { code: MessageStatusCode.Success },\n }),\n );\n } else if (\"state\" in item) {\n result.push(\n new AgentStateMessage({\n id: item.id,\n threadId: item.threadId,\n role: item.role,\n agentName: item.agentName,\n nodeName: item.nodeName,\n runId: item.runId,\n active: item.active,\n running: item.running,\n state: item.state,\n createdAt: item.createdAt || new Date(),\n }),\n );\n } else if (\"format\" in item && \"bytes\" in item) {\n result.push(\n new ImageMessage({\n id: item.id,\n format: item.format,\n bytes: item.bytes,\n role: item.role,\n parentMessageId: item.parentMessageId,\n createdAt: item.createdAt || new Date(),\n status: item.status || { code: MessageStatusCode.Success },\n }),\n );\n }\n }\n return result;\n}\n\nfunction getPartialArguments(args: string[]) {\n try {\n if (!args.length) return {};\n\n return JSON.parse(untruncateJson(args.join(\"\")));\n } catch (e) {\n return {};\n }\n}\n"],"mappings":";;;;;;;;;AAcA,OAAO,oBAAoB;AAC3B,SAAS,iBAAiB;AAEnB,SAAS,yBAAyB,UAAgC;AACvE,SAAO,SAAS,OAAO,CAAC,YAAY,CAAC,QAAQ,oBAAoB,CAAC;AACpE;AAEO,SAAS,0BAA0B,UAAqC;AAC7E,SAAO,SAAS,IAAI,CAAC,YAAY;AAC/B,QAAI,QAAQ,cAAc,GAAG;AAC3B,aAAO;AAAA,QACL,IAAI,QAAQ;AAAA,QACZ,WAAW,QAAQ;AAAA,QACnB,aAAa;AAAA,UACX,SAAS,QAAQ;AAAA,UACjB,MAAM,QAAQ;AAAA,UACd,iBAAiB,QAAQ;AAAA,QAC3B;AAAA,MACF;AAAA,IACF,WAAW,QAAQ,yBAAyB,GAAG;AAC7C,aAAO;AAAA,QACL,IAAI,QAAQ;AAAA,QACZ,WAAW,QAAQ;AAAA,QACnB,wBAAwB;AAAA,UACtB,MAAM,QAAQ;AAAA,UACd,WAAW,KAAK,UAAU,QAAQ,SAAS;AAAA,UAC3C,iBAAiB,QAAQ;AAAA,QAC3B;AAAA,MACF;AAAA,IACF,WAAW,QAAQ,gBAAgB,GAAG;AACpC,aAAO;AAAA,QACL,IAAI,QAAQ;AAAA,QACZ,WAAW,QAAQ;AAAA,QACnB,eAAe;AAAA,UACb,QAAQ,QAAQ;AAAA,UAChB,mBAAmB,QAAQ;AAAA,UAC3B,YAAY,QAAQ;AAAA,QACtB;AAAA,MACF;AAAA,IACF,WAAW,QAAQ,oBAAoB,GAAG;AACxC,aAAO;AAAA,QACL,IAAI,QAAQ;AAAA,QACZ,WAAW,QAAQ;AAAA,QACnB,mBAAmB;AAAA,UACjB,UAAU,QAAQ;AAAA,UAClB,MAAM,QAAQ;AAAA,UACd,WAAW,QAAQ;AAAA,UACnB,UAAU,QAAQ;AAAA,UAClB,OAAO,QAAQ;AAAA,UACf,QAAQ,QAAQ;AAAA,UAChB,SAAS,QAAQ;AAAA,UACjB,OAAO,KAAK,UAAU,QAAQ,KAAK;AAAA,QACrC;AAAA,MACF;AAAA,IACF,WAAW,QAAQ,eAAe,GAAG;AACnC,aAAO;AAAA,QACL,IAAI,QAAQ;AAAA,QACZ,WAAW,QAAQ;AAAA,QACnB,cAAc;AAAA,UACZ,QAAQ,QAAQ;AAAA,UAChB,OAAO,QAAQ;AAAA,UACf,MAAM,QAAQ;AAAA,UACd,iBAAiB,QAAQ;AAAA,QAC3B;AAAA,MACF;AAAA,IACF,OAAO;AACL,YAAM,IAAI,MAAM,sBAAsB;AAAA,IACxC;AAAA,EACF,CAAC;AACH;AAEO,SAAS,iCACd,UACwE;AACxE,QAAM,mBACJ,CAAC;AAEH,WAAS,QAAQ,CAAC,SAAS,MAAM;AAE/B,QAAI,QAAQ,eAAe,2BAA2B;AACpD,uBAAiB,KAAK,OAAO;AAAA,IAC/B,OAAO;AACL,YAAM,6BAA6B,iBAAiB;AAAA;AAAA,QAElD,CAAC,MACC,EAAE,eAAe,6BACjB,EAAE,cAAc,QAAQ;AAAA,MAC5B;AACA,UAAI,+BAA+B,IAAI;AACrC,yBAAiB,KAAK,OAAO;AAAA,MAC/B,OAAO;AACL,yBAAiB,0BAA0B,IAAI;AAAA,MACjD;AAAA,IACF;AAAA,EACF,CAAC;AAED,SAAO;AACT;AAEO,SAAS,2BACd,UACW;AACX,SAAO,SAAS,IAAI,CAAC,YAAY;AAC/B,QAAI,QAAQ,eAAe,qBAAqB;AAC9C,aAAO,IAAI,YAAY;AAAA,QACrB,IAAI,QAAQ;AAAA,QACZ,MAAM,QAAQ;AAAA,QACd,SAAS,QAAQ,QAAQ,KAAK,EAAE;AAAA,QAChC,iBAAiB,QAAQ;AAAA,QACzB,WAAW,oBAAI,KAAK;AAAA,QACpB,QAAQ,QAAQ,UAAU,EAAE,8BAAgC;AAAA,MAC9D,CAAC;AAAA,IACH,WAAW,QAAQ,eAAe,gCAAgC;AAChE,aAAO,IAAI,uBAAuB;AAAA,QAChC,IAAI,QAAQ;AAAA,QACZ,MAAM,QAAQ;AAAA,QACd,WAAW,oBAAoB,QAAQ,SAAS;AAAA,QAChD,iBAAiB,QAAQ;AAAA,QACzB,WAAW,oBAAI,KAAK;AAAA,QACpB,QAAQ,QAAQ,UAAU,EAAE,8BAAgC;AAAA,MAC9D,CAAC;AAAA,IACH,WAAW,QAAQ,eAAe,uBAAuB;AACvD,aAAO,IAAI,cAAc;AAAA,QACvB,IAAI,QAAQ;AAAA,QACZ,QAAQ,QAAQ;AAAA,QAChB,mBAAmB,QAAQ;AAAA,QAC3B,YAAY,QAAQ;AAAA,QACpB,WAAW,oBAAI,KAAK;AAAA,QACpB,QAAQ,QAAQ,UAAU,EAAE,8BAAgC;AAAA,MAC9D,CAAC;AAAA,IACH,WAAW,QAAQ,eAAe,2BAA2B;AAC3D,aAAO,IAAI,kBAAkB;AAAA,QAC3B,IAAI,QAAQ;AAAA,QACZ,UAAU,QAAQ;AAAA,QAClB,MAAM,QAAQ;AAAA,QACd,WAAW,QAAQ;AAAA,QACnB,UAAU,QAAQ;AAAA,QAClB,OAAO,QAAQ;AAAA,QACf,QAAQ,QAAQ;AAAA,QAChB,SAAS,QAAQ;AAAA,QACjB,OAAO,UAAU,QAAQ,OAAO,CAAC,CAAC;AAAA,QAClC,WAAW,oBAAI,KAAK;AAAA,MACtB,CAAC;AAAA,IACH,WAAW,QAAQ,eAAe,sBAAsB;AACtD,aAAO,IAAI,aAAa;AAAA,QACtB,IAAI,QAAQ;AAAA,QACZ,QAAQ,QAAQ;AAAA,QAChB,OAAO,QAAQ;AAAA,QACf,MAAM,QAAQ;AAAA,QACd,iBAAiB,QAAQ;AAAA,QACzB,WAAW,oBAAI,KAAK;AAAA,QACpB,QAAQ,QAAQ,UAAU,EAAE,8BAAgC;AAAA,MAC9D,CAAC;AAAA,IACH;AAEA,UAAM,IAAI,MAAM,sBAAsB;AAAA,EACxC,CAAC;AACH;AAEO,SAAS,mCAAmC,MAAwB;AACzE,QAAM,SAAoB,CAAC;AAC3B,aAAW,QAAQ,MAAM;AACvB,QAAI,aAAa,MAAM;AACrB,aAAO;AAAA,QACL,IAAI,YAAY;AAAA,UACd,IAAI,KAAK;AAAA,UACT,MAAM,KAAK;AAAA,UACX,SAAS,KAAK;AAAA,UACd,iBAAiB,KAAK;AAAA,UACtB,WAAW,KAAK,aAAa,oBAAI,KAAK;AAAA,UACtC,QAAQ,KAAK,UAAU,EAAE,8BAAgC;AAAA,QAC3D,CAAC;AAAA,MACH;AAAA,IACF,WAAW,eAAe,MAAM;AAC9B,aAAO;AAAA,QACL,IAAI,uBAAuB;AAAA,UACzB,IAAI,KAAK;AAAA,UACT,MAAM,KAAK;AAAA,UACX,WAAW,KAAK;AAAA,UAChB,iBAAiB,KAAK;AAAA,UACtB,WAAW,KAAK,aAAa,oBAAI,KAAK;AAAA,UACtC,QAAQ,KAAK,UAAU,EAAE,8BAAgC;AAAA,QAC3D,CAAC;AAAA,MACH;AAAA,IACF,WAAW,YAAY,MAAM;AAC3B,aAAO;AAAA,QACL,IAAI,cAAc;AAAA,UAChB,IAAI,KAAK;AAAA,UACT,QAAQ,KAAK;AAAA,UACb,mBAAmB,KAAK;AAAA,UACxB,YAAY,KAAK;AAAA,UACjB,WAAW,KAAK,aAAa,oBAAI,KAAK;AAAA,UACtC,QAAQ,KAAK,UAAU,EAAE,8BAAgC;AAAA,QAC3D,CAAC;AAAA,MACH;AAAA,IACF,WAAW,WAAW,MAAM;AAC1B,aAAO;AAAA,QACL,IAAI,kBAAkB;AAAA,UACpB,IAAI,KAAK;AAAA,UACT,UAAU,KAAK;AAAA,UACf,MAAM,KAAK;AAAA,UACX,WAAW,KAAK;AAAA,UAChB,UAAU,KAAK;AAAA,UACf,OAAO,KAAK;AAAA,UACZ,QAAQ,KAAK;AAAA,UACb,SAAS,KAAK;AAAA,UACd,OAAO,KAAK;AAAA,UACZ,WAAW,KAAK,aAAa,oBAAI,KAAK;AAAA,QACxC,CAAC;AAAA,MACH;AAAA,IACF,WAAW,YAAY,QAAQ,WAAW,MAAM;AAC9C,aAAO;AAAA,QACL,IAAI,aAAa;AAAA,UACf,IAAI,KAAK;AAAA,UACT,QAAQ,KAAK;AAAA,UACb,OAAO,KAAK;AAAA,UACZ,MAAM,KAAK;AAAA,UACX,iBAAiB,KAAK;AAAA,UACtB,WAAW,KAAK,aAAa,oBAAI,KAAK;AAAA,UACtC,QAAQ,KAAK,UAAU,EAAE,8BAAgC;AAAA,QAC3D,CAAC;AAAA,MACH;AAAA,IACF;AAAA,EACF;AACA,SAAO;AACT;AAEA,SAAS,oBAAoB,MAAgB;AAC3C,MAAI;AACF,QAAI,CAAC,KAAK;AAAQ,aAAO,CAAC;AAE1B,WAAO,KAAK,MAAM,eAAe,KAAK,KAAK,EAAE,CAAC,CAAC;AAAA,EACjD,SAAS,GAAP;AACA,WAAO,CAAC;AAAA,EACV;AACF;","names":[]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  graphql
3
- } from "./chunk-M5LBGBWO.mjs";
3
+ } from "./chunk-SDQPJXLL.mjs";
4
4
 
5
5
  // src/graphql/definitions/queries.ts
6
6
  var getAvailableAgentsQuery = graphql(
@@ -35,4 +35,4 @@ export {
35
35
  getAvailableAgentsQuery,
36
36
  loadAgentStateQuery
37
37
  };
38
- //# sourceMappingURL=chunk-3ETRQN2E.mjs.map
38
+ //# sourceMappingURL=chunk-QUH7QWUA.mjs.map
@@ -0,0 +1,20 @@
1
+ import {
2
+ AvailableAgentsDocument,
3
+ GenerateCopilotResponseDocument,
4
+ LoadAgentStateDocument
5
+ } from "./chunk-OBDQ5BWD.mjs";
6
+
7
+ // src/graphql/@generated/gql.ts
8
+ var documents = {
9
+ "\n mutation generateCopilotResponse(\n $data: GenerateCopilotResponseInput!\n $properties: JSONObject\n ) {\n generateCopilotResponse(data: $data, properties: $properties) {\n threadId\n runId\n extensions {\n openaiAssistantAPI {\n runId\n threadId\n }\n }\n ... on CopilotResponse @defer {\n status {\n ... on BaseResponseStatus {\n code\n }\n ... on FailedResponseStatus {\n reason\n details\n }\n }\n }\n messages @stream {\n __typename\n ... on BaseMessageOutput {\n id\n createdAt\n }\n ... on BaseMessageOutput @defer {\n status {\n ... on SuccessMessageStatus {\n code\n }\n ... on FailedMessageStatus {\n code\n reason\n }\n ... on PendingMessageStatus {\n code\n }\n }\n }\n ... on TextMessageOutput {\n content @stream\n role\n parentMessageId\n }\n ... on ImageMessageOutput {\n format\n bytes\n role\n parentMessageId\n }\n ... on ActionExecutionMessageOutput {\n name\n arguments @stream\n parentMessageId\n }\n ... on ResultMessageOutput {\n result\n actionExecutionId\n actionName\n }\n ... on AgentStateMessageOutput {\n threadId\n state\n running\n agentName\n nodeName\n runId\n active\n role\n }\n }\n metaEvents @stream {\n ... on LangGraphInterruptEvent {\n type\n name\n value\n }\n\n ... on CopilotKitLangGraphInterruptEvent {\n type\n name\n data {\n messages {\n __typename\n ... on BaseMessageOutput {\n id\n createdAt\n }\n ... on BaseMessageOutput @defer {\n status {\n ... on SuccessMessageStatus {\n code\n }\n ... on FailedMessageStatus {\n code\n reason\n }\n ... on PendingMessageStatus {\n code\n }\n }\n }\n ... on TextMessageOutput {\n content\n role\n parentMessageId\n }\n ... on ActionExecutionMessageOutput {\n name\n arguments\n parentMessageId\n }\n ... on ResultMessageOutput {\n result\n actionExecutionId\n actionName\n }\n }\n value\n }\n }\n }\n }\n }\n": GenerateCopilotResponseDocument,
10
+ "\n query availableAgents {\n availableAgents {\n agents {\n name\n id\n description\n }\n }\n }\n": AvailableAgentsDocument,
11
+ "\n query loadAgentState($data: LoadAgentStateInput!) {\n loadAgentState(data: $data) {\n threadId\n threadExists\n state\n messages\n }\n }\n": LoadAgentStateDocument
12
+ };
13
+ function graphql(source) {
14
+ return documents[source] ?? {};
15
+ }
16
+
17
+ export {
18
+ graphql
19
+ };
20
+ //# sourceMappingURL=chunk-SDQPJXLL.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/graphql/@generated/gql.ts"],"sourcesContent":["/* eslint-disable */\nimport * as types from './graphql';\nimport type { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/core';\n\n/**\n * Map of all GraphQL operations in the project.\n *\n * This map has several performance disadvantages:\n * 1. It is not tree-shakeable, so it will include all operations in the project.\n * 2. It is not minifiable, so the string of a GraphQL query will be multiple times inside the bundle.\n * 3. It does not support dead code elimination, so it will add unused operations.\n *\n * Therefore it is highly recommended to use the babel or swc plugin for production.\n * Learn more about it here: https://the-guild.dev/graphql/codegen/plugins/presets/preset-client#reducing-bundle-size\n */\ntype Documents = {\n \"\\n mutation generateCopilotResponse(\\n $data: GenerateCopilotResponseInput!\\n $properties: JSONObject\\n ) {\\n generateCopilotResponse(data: $data, properties: $properties) {\\n threadId\\n runId\\n extensions {\\n openaiAssistantAPI {\\n runId\\n threadId\\n }\\n }\\n ... on CopilotResponse @defer {\\n status {\\n ... on BaseResponseStatus {\\n code\\n }\\n ... on FailedResponseStatus {\\n reason\\n details\\n }\\n }\\n }\\n messages @stream {\\n __typename\\n ... on BaseMessageOutput {\\n id\\n createdAt\\n }\\n ... on BaseMessageOutput @defer {\\n status {\\n ... on SuccessMessageStatus {\\n code\\n }\\n ... on FailedMessageStatus {\\n code\\n reason\\n }\\n ... on PendingMessageStatus {\\n code\\n }\\n }\\n }\\n ... on TextMessageOutput {\\n content @stream\\n role\\n parentMessageId\\n }\\n ... on ImageMessageOutput {\\n format\\n bytes\\n role\\n parentMessageId\\n }\\n ... on ActionExecutionMessageOutput {\\n name\\n arguments @stream\\n parentMessageId\\n }\\n ... on ResultMessageOutput {\\n result\\n actionExecutionId\\n actionName\\n }\\n ... on AgentStateMessageOutput {\\n threadId\\n state\\n running\\n agentName\\n nodeName\\n runId\\n active\\n role\\n }\\n }\\n metaEvents @stream {\\n ... on LangGraphInterruptEvent {\\n type\\n name\\n value\\n }\\n\\n ... on CopilotKitLangGraphInterruptEvent {\\n type\\n name\\n data {\\n messages {\\n __typename\\n ... on BaseMessageOutput {\\n id\\n createdAt\\n }\\n ... on BaseMessageOutput @defer {\\n status {\\n ... on SuccessMessageStatus {\\n code\\n }\\n ... on FailedMessageStatus {\\n code\\n reason\\n }\\n ... on PendingMessageStatus {\\n code\\n }\\n }\\n }\\n ... on TextMessageOutput {\\n content\\n role\\n parentMessageId\\n }\\n ... on ActionExecutionMessageOutput {\\n name\\n arguments\\n parentMessageId\\n }\\n ... on ResultMessageOutput {\\n result\\n actionExecutionId\\n actionName\\n }\\n }\\n value\\n }\\n }\\n }\\n }\\n }\\n\": typeof types.GenerateCopilotResponseDocument,\n \"\\n query availableAgents {\\n availableAgents {\\n agents {\\n name\\n id\\n description\\n }\\n }\\n }\\n\": typeof types.AvailableAgentsDocument,\n \"\\n query loadAgentState($data: LoadAgentStateInput!) {\\n loadAgentState(data: $data) {\\n threadId\\n threadExists\\n state\\n messages\\n }\\n }\\n\": typeof types.LoadAgentStateDocument,\n};\nconst documents: Documents = {\n \"\\n mutation generateCopilotResponse(\\n $data: GenerateCopilotResponseInput!\\n $properties: JSONObject\\n ) {\\n generateCopilotResponse(data: $data, properties: $properties) {\\n threadId\\n runId\\n extensions {\\n openaiAssistantAPI {\\n runId\\n threadId\\n }\\n }\\n ... on CopilotResponse @defer {\\n status {\\n ... on BaseResponseStatus {\\n code\\n }\\n ... on FailedResponseStatus {\\n reason\\n details\\n }\\n }\\n }\\n messages @stream {\\n __typename\\n ... on BaseMessageOutput {\\n id\\n createdAt\\n }\\n ... on BaseMessageOutput @defer {\\n status {\\n ... on SuccessMessageStatus {\\n code\\n }\\n ... on FailedMessageStatus {\\n code\\n reason\\n }\\n ... on PendingMessageStatus {\\n code\\n }\\n }\\n }\\n ... on TextMessageOutput {\\n content @stream\\n role\\n parentMessageId\\n }\\n ... on ImageMessageOutput {\\n format\\n bytes\\n role\\n parentMessageId\\n }\\n ... on ActionExecutionMessageOutput {\\n name\\n arguments @stream\\n parentMessageId\\n }\\n ... on ResultMessageOutput {\\n result\\n actionExecutionId\\n actionName\\n }\\n ... on AgentStateMessageOutput {\\n threadId\\n state\\n running\\n agentName\\n nodeName\\n runId\\n active\\n role\\n }\\n }\\n metaEvents @stream {\\n ... on LangGraphInterruptEvent {\\n type\\n name\\n value\\n }\\n\\n ... on CopilotKitLangGraphInterruptEvent {\\n type\\n name\\n data {\\n messages {\\n __typename\\n ... on BaseMessageOutput {\\n id\\n createdAt\\n }\\n ... on BaseMessageOutput @defer {\\n status {\\n ... on SuccessMessageStatus {\\n code\\n }\\n ... on FailedMessageStatus {\\n code\\n reason\\n }\\n ... on PendingMessageStatus {\\n code\\n }\\n }\\n }\\n ... on TextMessageOutput {\\n content\\n role\\n parentMessageId\\n }\\n ... on ActionExecutionMessageOutput {\\n name\\n arguments\\n parentMessageId\\n }\\n ... on ResultMessageOutput {\\n result\\n actionExecutionId\\n actionName\\n }\\n }\\n value\\n }\\n }\\n }\\n }\\n }\\n\": types.GenerateCopilotResponseDocument,\n \"\\n query availableAgents {\\n availableAgents {\\n agents {\\n name\\n id\\n description\\n }\\n }\\n }\\n\": types.AvailableAgentsDocument,\n \"\\n query loadAgentState($data: LoadAgentStateInput!) {\\n loadAgentState(data: $data) {\\n threadId\\n threadExists\\n state\\n messages\\n }\\n }\\n\": types.LoadAgentStateDocument,\n};\n\n/**\n * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.\n *\n *\n * @example\n * ```ts\n * const query = graphql(`query GetUser($id: ID!) { user(id: $id) { name } }`);\n * ```\n *\n * The query argument is unknown!\n * Please regenerate the types.\n */\nexport function graphql(source: string): unknown;\n\n/**\n * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.\n */\nexport function graphql(source: \"\\n mutation generateCopilotResponse(\\n $data: GenerateCopilotResponseInput!\\n $properties: JSONObject\\n ) {\\n generateCopilotResponse(data: $data, properties: $properties) {\\n threadId\\n runId\\n extensions {\\n openaiAssistantAPI {\\n runId\\n threadId\\n }\\n }\\n ... on CopilotResponse @defer {\\n status {\\n ... on BaseResponseStatus {\\n code\\n }\\n ... on FailedResponseStatus {\\n reason\\n details\\n }\\n }\\n }\\n messages @stream {\\n __typename\\n ... on BaseMessageOutput {\\n id\\n createdAt\\n }\\n ... on BaseMessageOutput @defer {\\n status {\\n ... on SuccessMessageStatus {\\n code\\n }\\n ... on FailedMessageStatus {\\n code\\n reason\\n }\\n ... on PendingMessageStatus {\\n code\\n }\\n }\\n }\\n ... on TextMessageOutput {\\n content @stream\\n role\\n parentMessageId\\n }\\n ... on ImageMessageOutput {\\n format\\n bytes\\n role\\n parentMessageId\\n }\\n ... on ActionExecutionMessageOutput {\\n name\\n arguments @stream\\n parentMessageId\\n }\\n ... on ResultMessageOutput {\\n result\\n actionExecutionId\\n actionName\\n }\\n ... on AgentStateMessageOutput {\\n threadId\\n state\\n running\\n agentName\\n nodeName\\n runId\\n active\\n role\\n }\\n }\\n metaEvents @stream {\\n ... on LangGraphInterruptEvent {\\n type\\n name\\n value\\n }\\n\\n ... on CopilotKitLangGraphInterruptEvent {\\n type\\n name\\n data {\\n messages {\\n __typename\\n ... on BaseMessageOutput {\\n id\\n createdAt\\n }\\n ... on BaseMessageOutput @defer {\\n status {\\n ... on SuccessMessageStatus {\\n code\\n }\\n ... on FailedMessageStatus {\\n code\\n reason\\n }\\n ... on PendingMessageStatus {\\n code\\n }\\n }\\n }\\n ... on TextMessageOutput {\\n content\\n role\\n parentMessageId\\n }\\n ... on ActionExecutionMessageOutput {\\n name\\n arguments\\n parentMessageId\\n }\\n ... on ResultMessageOutput {\\n result\\n actionExecutionId\\n actionName\\n }\\n }\\n value\\n }\\n }\\n }\\n }\\n }\\n\"): (typeof documents)[\"\\n mutation generateCopilotResponse(\\n $data: GenerateCopilotResponseInput!\\n $properties: JSONObject\\n ) {\\n generateCopilotResponse(data: $data, properties: $properties) {\\n threadId\\n runId\\n extensions {\\n openaiAssistantAPI {\\n runId\\n threadId\\n }\\n }\\n ... on CopilotResponse @defer {\\n status {\\n ... on BaseResponseStatus {\\n code\\n }\\n ... on FailedResponseStatus {\\n reason\\n details\\n }\\n }\\n }\\n messages @stream {\\n __typename\\n ... on BaseMessageOutput {\\n id\\n createdAt\\n }\\n ... on BaseMessageOutput @defer {\\n status {\\n ... on SuccessMessageStatus {\\n code\\n }\\n ... on FailedMessageStatus {\\n code\\n reason\\n }\\n ... on PendingMessageStatus {\\n code\\n }\\n }\\n }\\n ... on TextMessageOutput {\\n content @stream\\n role\\n parentMessageId\\n }\\n ... on ImageMessageOutput {\\n format\\n bytes\\n role\\n parentMessageId\\n }\\n ... on ActionExecutionMessageOutput {\\n name\\n arguments @stream\\n parentMessageId\\n }\\n ... on ResultMessageOutput {\\n result\\n actionExecutionId\\n actionName\\n }\\n ... on AgentStateMessageOutput {\\n threadId\\n state\\n running\\n agentName\\n nodeName\\n runId\\n active\\n role\\n }\\n }\\n metaEvents @stream {\\n ... on LangGraphInterruptEvent {\\n type\\n name\\n value\\n }\\n\\n ... on CopilotKitLangGraphInterruptEvent {\\n type\\n name\\n data {\\n messages {\\n __typename\\n ... on BaseMessageOutput {\\n id\\n createdAt\\n }\\n ... on BaseMessageOutput @defer {\\n status {\\n ... on SuccessMessageStatus {\\n code\\n }\\n ... on FailedMessageStatus {\\n code\\n reason\\n }\\n ... on PendingMessageStatus {\\n code\\n }\\n }\\n }\\n ... on TextMessageOutput {\\n content\\n role\\n parentMessageId\\n }\\n ... on ActionExecutionMessageOutput {\\n name\\n arguments\\n parentMessageId\\n }\\n ... on ResultMessageOutput {\\n result\\n actionExecutionId\\n actionName\\n }\\n }\\n value\\n }\\n }\\n }\\n }\\n }\\n\"];\n/**\n * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.\n */\nexport function graphql(source: \"\\n query availableAgents {\\n availableAgents {\\n agents {\\n name\\n id\\n description\\n }\\n }\\n }\\n\"): (typeof documents)[\"\\n query availableAgents {\\n availableAgents {\\n agents {\\n name\\n id\\n description\\n }\\n }\\n }\\n\"];\n/**\n * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.\n */\nexport function graphql(source: \"\\n query loadAgentState($data: LoadAgentStateInput!) {\\n loadAgentState(data: $data) {\\n threadId\\n threadExists\\n state\\n messages\\n }\\n }\\n\"): (typeof documents)[\"\\n query loadAgentState($data: LoadAgentStateInput!) {\\n loadAgentState(data: $data) {\\n threadId\\n threadExists\\n state\\n messages\\n }\\n }\\n\"];\n\nexport function graphql(source: string) {\n return (documents as any)[source] ?? {};\n}\n\nexport type DocumentType<TDocumentNode extends DocumentNode<any, any>> = TDocumentNode extends DocumentNode< infer TType, any> ? TType : never;"],"mappings":";;;;;;;AAoBA,IAAM,YAAuB;AAAA,EACzB,igGAAugG;AAAA,EACvgG,4IAAkJ;AAAA,EAClJ,6KAAmL;AACvL;AA6BO,SAAS,QAAQ,QAAgB;AACtC,SAAQ,UAAkB,MAAM,KAAK,CAAC;AACxC;","names":[]}
@@ -73,7 +73,11 @@ var ImageMessage = class extends Message {
73
73
  }
74
74
  };
75
75
  function langGraphInterruptEvent(eventProps) {
76
- return { ...eventProps, name: "LangGraphInterruptEvent" /* LangGraphInterruptEvent */, type: "MetaEvent" };
76
+ return {
77
+ ...eventProps,
78
+ name: "LangGraphInterruptEvent" /* LangGraphInterruptEvent */,
79
+ type: "MetaEvent"
80
+ };
77
81
  }
78
82
 
79
83
  export {
@@ -86,4 +90,4 @@ export {
86
90
  ImageMessage,
87
91
  langGraphInterruptEvent
88
92
  };
89
- //# sourceMappingURL=chunk-NHOKFX55.mjs.map
93
+ //# sourceMappingURL=chunk-UOAPP5IN.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/client/types.ts"],"sourcesContent":["import { randomId } from \"@copilotkit/shared\";\nimport {\n ActionExecutionMessageInput,\n MessageRole,\n MessageStatus,\n ResultMessageInput,\n TextMessageInput,\n BaseMessageOutput,\n AgentStateMessageInput,\n MessageStatusCode,\n LangGraphInterruptEvent as GqlLangGraphInterruptEvent,\n MetaEventName,\n CopilotKitLangGraphInterruptEvent as GqlCopilotKitLangGraphInterruptEvent,\n ImageMessageInput,\n} from \"../graphql/@generated/graphql\";\nimport { parseJson } from \"@copilotkit/shared\";\n\ntype MessageType =\n | \"TextMessage\"\n | \"ActionExecutionMessage\"\n | \"ResultMessage\"\n | \"AgentStateMessage\"\n | \"ImageMessage\";\n\nexport class Message {\n type: MessageType;\n id: BaseMessageOutput[\"id\"];\n createdAt: BaseMessageOutput[\"createdAt\"];\n status: MessageStatus;\n\n constructor(props: any) {\n props.id ??= randomId();\n props.status ??= { code: MessageStatusCode.Success };\n props.createdAt ??= new Date();\n Object.assign(this, props);\n }\n\n isTextMessage(): this is TextMessage {\n return this.type === \"TextMessage\";\n }\n\n isActionExecutionMessage(): this is ActionExecutionMessage {\n return this.type === \"ActionExecutionMessage\";\n }\n\n isResultMessage(): this is ResultMessage {\n return this.type === \"ResultMessage\";\n }\n\n isAgentStateMessage(): this is AgentStateMessage {\n return this.type === \"AgentStateMessage\";\n }\n\n isImageMessage(): this is ImageMessage {\n return this.type === \"ImageMessage\";\n }\n}\n\n// alias Role to MessageRole\nexport const Role = MessageRole;\n\n// when constructing any message, the base fields are optional\ntype MessageConstructorOptions = Partial<Message>;\n\ntype TextMessageConstructorOptions = MessageConstructorOptions &\n TextMessageInput;\n\nexport class TextMessage\n extends Message\n implements TextMessageConstructorOptions\n{\n content: TextMessageInput[\"content\"];\n parentMessageId: TextMessageInput[\"parentMessageId\"];\n role: TextMessageInput[\"role\"];\n type = \"TextMessage\" as const;\n\n constructor(props: TextMessageConstructorOptions) {\n super(props);\n this.type = \"TextMessage\";\n }\n}\n\ntype ActionExecutionMessageConstructorOptions = MessageConstructorOptions &\n Omit<ActionExecutionMessageInput, \"arguments\"> & {\n arguments: Record<string, any>;\n };\n\nexport class ActionExecutionMessage\n extends Message\n implements Omit<ActionExecutionMessageInput, \"arguments\" | \"scope\">\n{\n name: ActionExecutionMessageInput[\"name\"];\n arguments: Record<string, any>;\n parentMessageId: ActionExecutionMessageInput[\"parentMessageId\"];\n constructor(props: ActionExecutionMessageConstructorOptions) {\n super(props);\n this.type = \"ActionExecutionMessage\";\n }\n}\n\ntype ResultMessageConstructorOptions = MessageConstructorOptions &\n ResultMessageInput;\n\nexport class ResultMessage\n extends Message\n implements ResultMessageConstructorOptions\n{\n actionExecutionId: ResultMessageInput[\"actionExecutionId\"];\n actionName: ResultMessageInput[\"actionName\"];\n result: ResultMessageInput[\"result\"];\n\n constructor(props: ResultMessageConstructorOptions) {\n super(props);\n this.type = \"ResultMessage\";\n }\n\n static decodeResult(result: string): any {\n return parseJson(result, result);\n }\n\n static encodeResult(result: any): string {\n if (result === undefined) {\n return \"\";\n } else if (typeof result === \"string\") {\n return result;\n } else {\n return JSON.stringify(result);\n }\n }\n}\n\nexport class AgentStateMessage\n extends Message\n implements Omit<AgentStateMessageInput, \"state\">\n{\n agentName: AgentStateMessageInput[\"agentName\"];\n state: any;\n running: AgentStateMessageInput[\"running\"];\n threadId: AgentStateMessageInput[\"threadId\"];\n role: AgentStateMessageInput[\"role\"];\n nodeName: AgentStateMessageInput[\"nodeName\"];\n runId: AgentStateMessageInput[\"runId\"];\n active: AgentStateMessageInput[\"active\"];\n\n constructor(props: any) {\n super(props);\n this.type = \"AgentStateMessage\";\n }\n}\n\ntype ImageMessageConstructorOptions = MessageConstructorOptions &\n ImageMessageInput;\n\nexport class ImageMessage\n extends Message\n implements ImageMessageConstructorOptions\n{\n format: ImageMessageInput[\"format\"];\n bytes: ImageMessageInput[\"bytes\"];\n role: ImageMessageInput[\"role\"];\n parentMessageId: ImageMessageInput[\"parentMessageId\"];\n\n constructor(props: ImageMessageConstructorOptions) {\n super(props);\n this.type = \"ImageMessage\";\n }\n}\n\nexport function langGraphInterruptEvent(\n eventProps: Omit<LangGraphInterruptEvent, \"name\" | \"type\" | \"__typename\">,\n): LangGraphInterruptEvent {\n return {\n ...eventProps,\n name: MetaEventName.LangGraphInterruptEvent,\n type: \"MetaEvent\",\n };\n}\n\nexport type LangGraphInterruptEvent<TValue extends any = any> =\n GqlLangGraphInterruptEvent & {\n value: TValue;\n };\n\ntype CopilotKitLangGraphInterruptEvent<TValue extends any = any> =\n GqlCopilotKitLangGraphInterruptEvent & {\n data: GqlCopilotKitLangGraphInterruptEvent[\"data\"] & { value: TValue };\n };\n\nexport type MetaEvent =\n | LangGraphInterruptEvent\n | CopilotKitLangGraphInterruptEvent;\n"],"mappings":";;;;;AAAA,SAAS,gBAAgB;AAezB,SAAS,iBAAiB;AASnB,IAAM,UAAN,MAAc;AAAA,EAMnB,YAAY,OAAY;AACtB,UAAM,OAAN,MAAM,KAAO,SAAS;AACtB,UAAM,WAAN,MAAM,SAAW,EAAE,8BAAgC;AACnD,UAAM,cAAN,MAAM,YAAc,oBAAI,KAAK;AAC7B,WAAO,OAAO,MAAM,KAAK;AAAA,EAC3B;AAAA,EAEA,gBAAqC;AACnC,WAAO,KAAK,SAAS;AAAA,EACvB;AAAA,EAEA,2BAA2D;AACzD,WAAO,KAAK,SAAS;AAAA,EACvB;AAAA,EAEA,kBAAyC;AACvC,WAAO,KAAK,SAAS;AAAA,EACvB;AAAA,EAEA,sBAAiD;AAC/C,WAAO,KAAK,SAAS;AAAA,EACvB;AAAA,EAEA,iBAAuC;AACrC,WAAO,KAAK,SAAS;AAAA,EACvB;AACF;AAGO,IAAM,OAAO;AAQb,IAAM,cAAN,cACG,QAEV;AAAA,EAME,YAAY,OAAsC;AAChD,UAAM,KAAK;AAHb,gBAAO;AAIL,SAAK,OAAO;AAAA,EACd;AACF;AAOO,IAAM,yBAAN,cACG,QAEV;AAAA,EAIE,YAAY,OAAiD;AAC3D,UAAM,KAAK;AACX,SAAK,OAAO;AAAA,EACd;AACF;AAKO,IAAM,gBAAN,cACG,QAEV;AAAA,EAKE,YAAY,OAAwC;AAClD,UAAM,KAAK;AACX,SAAK,OAAO;AAAA,EACd;AAAA,EAEA,OAAO,aAAa,QAAqB;AACvC,WAAO,UAAU,QAAQ,MAAM;AAAA,EACjC;AAAA,EAEA,OAAO,aAAa,QAAqB;AACvC,QAAI,WAAW,QAAW;AACxB,aAAO;AAAA,IACT,WAAW,OAAO,WAAW,UAAU;AACrC,aAAO;AAAA,IACT,OAAO;AACL,aAAO,KAAK,UAAU,MAAM;AAAA,IAC9B;AAAA,EACF;AACF;AAEO,IAAM,oBAAN,cACG,QAEV;AAAA,EAUE,YAAY,OAAY;AACtB,UAAM,KAAK;AACX,SAAK,OAAO;AAAA,EACd;AACF;AAKO,IAAM,eAAN,cACG,QAEV;AAAA,EAME,YAAY,OAAuC;AACjD,UAAM,KAAK;AACX,SAAK,OAAO;AAAA,EACd;AACF;AAEO,SAAS,wBACd,YACyB;AACzB,SAAO;AAAA,IACL,GAAG;AAAA,IACH;AAAA,IACA,MAAM;AAAA,EACR;AACF;","names":[]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Role
3
- } from "./chunk-NHOKFX55.mjs";
3
+ } from "./chunk-UOAPP5IN.mjs";
4
4
 
5
5
  // src/message-conversion/gql-to-agui.ts
6
6
  var VALID_IMAGE_FORMATS = ["jpeg", "png", "webp", "gif"];
@@ -22,9 +22,13 @@ function gqlToAGUI(messages, actions, coAgentStateRenders) {
22
22
  } else if (message.isResultMessage()) {
23
23
  aguiMessages.push(gqlResultMessageToAGUIMessage(message));
24
24
  } else if (message.isActionExecutionMessage()) {
25
- aguiMessages.push(gqlActionExecutionMessageToAGUIMessage(message, actions, actionResults));
25
+ aguiMessages.push(
26
+ gqlActionExecutionMessageToAGUIMessage(message, actions, actionResults)
27
+ );
26
28
  } else if (message.isAgentStateMessage()) {
27
- aguiMessages.push(gqlAgentStateMessageToAGUIMessage(message, coAgentStateRenders));
29
+ aguiMessages.push(
30
+ gqlAgentStateMessageToAGUIMessage(message, coAgentStateRenders)
31
+ );
28
32
  } else if (message.isImageMessage()) {
29
33
  aguiMessages.push(gqlImageMessageToAGUIMessage(message));
30
34
  } else {
@@ -44,7 +48,9 @@ function gqlActionExecutionMessageToAGUIMessage(message, actions, actionResults)
44
48
  name: message.name
45
49
  };
46
50
  }
47
- const action = Object.values(actions).find((action2) => action2.name === message.name) || Object.values(actions).find((action2) => action2.name === "*");
51
+ const action = Object.values(actions).find(
52
+ (action2) => action2.name === message.name
53
+ ) || Object.values(actions).find((action2) => action2.name === "*");
48
54
  const createRenderWrapper = (originalRender) => {
49
55
  if (!originalRender)
50
56
  return void 0;
@@ -102,7 +108,9 @@ function gqlActionExecutionMessageToAGUIMessage(message, actions, actionResults)
102
108
  };
103
109
  }
104
110
  function gqlAgentStateMessageToAGUIMessage(message, coAgentStateRenders) {
105
- if (coAgentStateRenders && Object.values(coAgentStateRenders).some((render) => render.name === message.agentName)) {
111
+ if (coAgentStateRenders && Object.values(coAgentStateRenders).some(
112
+ (render) => render.name === message.agentName
113
+ )) {
106
114
  const render = Object.values(coAgentStateRenders).find(
107
115
  (render2) => render2.name === message.agentName
108
116
  );
@@ -210,4 +218,4 @@ export {
210
218
  gqlResultMessageToAGUIMessage,
211
219
  gqlImageMessageToAGUIMessage
212
220
  };
213
- //# sourceMappingURL=chunk-EIPAWDCN.mjs.map
221
+ //# sourceMappingURL=chunk-VIHKTLUA.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/message-conversion/gql-to-agui.ts"],"sourcesContent":["import * as gql from \"../client\";\nimport agui from \"@copilotkit/shared\";\nimport { MessageStatusCode } from \"../graphql/@generated/graphql\";\n\n// Define valid image formats based on the supported formats in the codebase\nconst VALID_IMAGE_FORMATS = [\"jpeg\", \"png\", \"webp\", \"gif\"] as const;\ntype ValidImageFormat = (typeof VALID_IMAGE_FORMATS)[number];\n\n// Validation function for image format\nfunction validateImageFormat(format: string): format is ValidImageFormat {\n return VALID_IMAGE_FORMATS.includes(format as ValidImageFormat);\n}\n\n/*\n ----------------------------\n GQL Message -> AGUI Message\n ----------------------------\n*/\nexport function gqlToAGUI(\n messages: gql.Message[] | gql.Message,\n actions?: Record<string, any>,\n coAgentStateRenders?: Record<string, any>,\n): agui.Message[] {\n let aguiMessages: agui.Message[] = [];\n messages = Array.isArray(messages) ? messages : [messages];\n\n // Create a map of action execution ID to result for completed actions\n const actionResults = new Map<string, string>();\n for (const message of messages) {\n if (message.isResultMessage()) {\n actionResults.set(message.actionExecutionId, message.result);\n }\n }\n\n for (const message of messages) {\n if (message.isTextMessage()) {\n aguiMessages.push(gqlTextMessageToAGUIMessage(message));\n } else if (message.isResultMessage()) {\n aguiMessages.push(gqlResultMessageToAGUIMessage(message));\n } else if (message.isActionExecutionMessage()) {\n aguiMessages.push(\n gqlActionExecutionMessageToAGUIMessage(message, actions, actionResults),\n );\n } else if (message.isAgentStateMessage()) {\n aguiMessages.push(\n gqlAgentStateMessageToAGUIMessage(message, coAgentStateRenders),\n );\n } else if (message.isImageMessage()) {\n aguiMessages.push(gqlImageMessageToAGUIMessage(message));\n } else {\n throw new Error(\"Unknown message type\");\n }\n }\n\n return aguiMessages;\n}\n\nexport function gqlActionExecutionMessageToAGUIMessage(\n message: gql.ActionExecutionMessage,\n actions?: Record<string, any>,\n actionResults?: Map<string, string>,\n): agui.Message {\n // Check if we have actions and if there's a specific action or wild card action\n const hasSpecificAction =\n actions &&\n Object.values(actions).some((action: any) => action.name === message.name);\n const hasWildcardAction =\n actions &&\n Object.values(actions).some((action: any) => action.name === \"*\");\n\n if (!actions || (!hasSpecificAction && !hasWildcardAction)) {\n return {\n id: message.id,\n role: \"assistant\",\n toolCalls: [actionExecutionMessageToAGUIMessage(message)],\n name: message.name,\n };\n }\n\n // Find the specific action first, then fall back to wild card action\n const action =\n Object.values(actions).find(\n (action: any) => action.name === message.name,\n ) || Object.values(actions).find((action: any) => action.name === \"*\");\n\n // Create render function wrapper that provides proper props\n const createRenderWrapper = (originalRender: any) => {\n if (!originalRender) return undefined;\n\n return (props?: any) => {\n // Determine the correct status based on the same logic as RenderActionExecutionMessage\n let actionResult: any = actionResults?.get(message.id);\n let status: \"inProgress\" | \"executing\" | \"complete\" = \"inProgress\";\n\n if (actionResult !== undefined) {\n status = \"complete\";\n } else if (message.status?.code !== MessageStatusCode.Pending) {\n status = \"executing\";\n }\n\n // if props.result is a string, parse it as JSON but don't throw an error if it's not valid JSON\n if (typeof props?.result === \"string\") {\n try {\n props.result = JSON.parse(props.result);\n } catch (e) {\n /* do nothing */\n }\n }\n\n // if actionResult is a string, parse it as JSON but don't throw an error if it's not valid JSON\n if (typeof actionResult === \"string\") {\n try {\n actionResult = JSON.parse(actionResult);\n } catch (e) {\n /* do nothing */\n }\n }\n\n // Base props that all actions receive\n const baseProps = {\n status: props?.status || status,\n args: message.arguments || {},\n result: props?.result || actionResult || undefined,\n messageId: message.id,\n };\n\n // Add properties based on action type\n if (action.name === \"*\") {\n // Wildcard actions get the tool name; ensure it cannot be overridden by incoming props\n return originalRender({\n ...baseProps,\n ...props,\n name: message.name,\n });\n } else {\n // Regular actions get respond (defaulting to a no-op if not provided)\n const respond = props?.respond ?? (() => {});\n return originalRender({\n ...baseProps,\n ...props,\n respond,\n });\n }\n };\n };\n\n return {\n id: message.id,\n role: \"assistant\",\n content: \"\",\n toolCalls: [actionExecutionMessageToAGUIMessage(message)],\n generativeUI: createRenderWrapper(action.render),\n name: message.name,\n } as agui.AIMessage;\n}\n\nfunction gqlAgentStateMessageToAGUIMessage(\n message: gql.AgentStateMessage,\n coAgentStateRenders?: Record<string, any>,\n): agui.Message {\n if (\n coAgentStateRenders &&\n Object.values(coAgentStateRenders).some(\n (render: any) => render.name === message.agentName,\n )\n ) {\n const render = Object.values(coAgentStateRenders).find(\n (render: any) => render.name === message.agentName,\n );\n\n // Create render function wrapper that provides proper props\n const createRenderWrapper = (originalRender: any) => {\n if (!originalRender) return undefined;\n\n return (props?: any) => {\n // Determine the correct status based on the same logic as RenderActionExecutionMessage\n const state = message.state;\n\n // Provide the full props structure that the render function expects\n const renderProps = {\n state: state,\n };\n\n return originalRender(renderProps);\n };\n };\n\n return {\n id: message.id,\n role: \"assistant\",\n generativeUI: createRenderWrapper(render.render),\n agentName: message.agentName,\n state: message.state,\n };\n }\n\n return {\n id: message.id,\n role: \"assistant\",\n agentName: message.agentName,\n state: message.state,\n };\n}\n\nfunction actionExecutionMessageToAGUIMessage(\n actionExecutionMessage: gql.ActionExecutionMessage,\n): agui.ToolCall {\n return {\n id: actionExecutionMessage.id,\n function: {\n name: actionExecutionMessage.name,\n arguments: JSON.stringify(actionExecutionMessage.arguments),\n },\n type: \"function\",\n };\n}\n\nexport function gqlTextMessageToAGUIMessage(\n message: gql.TextMessage,\n): agui.Message {\n switch (message.role) {\n case gql.Role.Developer:\n return {\n id: message.id,\n role: \"developer\",\n content: message.content,\n };\n case gql.Role.System:\n return {\n id: message.id,\n role: \"system\",\n content: message.content,\n };\n case gql.Role.Assistant:\n return {\n id: message.id,\n role: \"assistant\",\n content: message.content,\n };\n case gql.Role.User:\n return {\n id: message.id,\n role: \"user\",\n content: message.content,\n };\n default:\n throw new Error(\"Unknown message role\");\n }\n}\n\nexport function gqlResultMessageToAGUIMessage(\n message: gql.ResultMessage,\n): agui.Message {\n return {\n id: message.id,\n role: \"tool\",\n content: message.result,\n toolCallId: message.actionExecutionId,\n toolName: message.actionName,\n };\n}\n\nexport function gqlImageMessageToAGUIMessage(\n message: gql.ImageMessage,\n): agui.Message {\n // Validate image format\n if (!validateImageFormat(message.format)) {\n throw new Error(\n `Invalid image format: ${message.format}. Supported formats are: ${VALID_IMAGE_FORMATS.join(\", \")}`,\n );\n }\n\n // Validate that bytes is a non-empty string\n if (\n !message.bytes ||\n typeof message.bytes !== \"string\" ||\n message.bytes.trim() === \"\"\n ) {\n throw new Error(\"Image bytes must be a non-empty string\");\n }\n\n // Determine the role based on the message role\n const role = message.role === gql.Role.Assistant ? \"assistant\" : \"user\";\n\n // Create the image message with proper typing\n const imageMessage: agui.Message = {\n id: message.id,\n role,\n content: \"\",\n image: {\n format: message.format,\n bytes: message.bytes,\n },\n };\n\n return imageMessage;\n}\n"],"mappings":"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","names":["action","render"]}
@@ -26,7 +26,7 @@ module.exports = __toCommonJS(CopilotRuntimeClient_exports);
26
26
  var import_core = require("@urql/core");
27
27
 
28
28
  // package.json
29
- var version = "1.51.4-next.7";
29
+ var version = "1.51.4";
30
30
 
31
31
  // src/graphql/@generated/graphql.ts
32
32
  var GenerateCopilotResponseDocument = { "kind": "Document", "definitions": [{ "kind": "OperationDefinition", "operation": "mutation", "name": { "kind": "Name", "value": "generateCopilotResponse" }, "variableDefinitions": [{ "kind": "VariableDefinition", "variable": { "kind": "Variable", "name": { "kind": "Name", "value": "data" } }, "type": { "kind": "NonNullType", "type": { "kind": "NamedType", "name": { "kind": "Name", "value": "GenerateCopilotResponseInput" } } } }, { "kind": "VariableDefinition", "variable": { "kind": "Variable", "name": { "kind": "Name", "value": "properties" } }, "type": { "kind": "NamedType", "name": { "kind": "Name", "value": "JSONObject" } } }], "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "generateCopilotResponse" }, "arguments": [{ "kind": "Argument", "name": { "kind": "Name", "value": "data" }, "value": { "kind": "Variable", "name": { "kind": "Name", "value": "data" } } }, { "kind": "Argument", "name": { "kind": "Name", "value": "properties" }, "value": { "kind": "Variable", "name": { "kind": "Name", "value": "properties" } } }], "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "threadId" } }, { "kind": "Field", "name": { "kind": "Name", "value": "runId" } }, { "kind": "Field", "name": { "kind": "Name", "value": "extensions" }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "openaiAssistantAPI" }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "runId" } }, { "kind": "Field", "name": { "kind": "Name", "value": "threadId" } }] } }] } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "CopilotResponse" } }, "directives": [{ "kind": "Directive", "name": { "kind": "Name", "value": "defer" } }], "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "status" }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "BaseResponseStatus" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "code" } }] } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "FailedResponseStatus" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "reason" } }, { "kind": "Field", "name": { "kind": "Name", "value": "details" } }] } }] } }] } }, { "kind": "Field", "name": { "kind": "Name", "value": "messages" }, "directives": [{ "kind": "Directive", "name": { "kind": "Name", "value": "stream" } }], "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "__typename" } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "BaseMessageOutput" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "id" } }, { "kind": "Field", "name": { "kind": "Name", "value": "createdAt" } }] } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "BaseMessageOutput" } }, "directives": [{ "kind": "Directive", "name": { "kind": "Name", "value": "defer" } }], "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "status" }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "SuccessMessageStatus" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "code" } }] } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "FailedMessageStatus" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "code" } }, { "kind": "Field", "name": { "kind": "Name", "value": "reason" } }] } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "PendingMessageStatus" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "code" } }] } }] } }] } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "TextMessageOutput" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "content" }, "directives": [{ "kind": "Directive", "name": { "kind": "Name", "value": "stream" } }] }, { "kind": "Field", "name": { "kind": "Name", "value": "role" } }, { "kind": "Field", "name": { "kind": "Name", "value": "parentMessageId" } }] } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "ImageMessageOutput" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "format" } }, { "kind": "Field", "name": { "kind": "Name", "value": "bytes" } }, { "kind": "Field", "name": { "kind": "Name", "value": "role" } }, { "kind": "Field", "name": { "kind": "Name", "value": "parentMessageId" } }] } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "ActionExecutionMessageOutput" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "name" } }, { "kind": "Field", "name": { "kind": "Name", "value": "arguments" }, "directives": [{ "kind": "Directive", "name": { "kind": "Name", "value": "stream" } }] }, { "kind": "Field", "name": { "kind": "Name", "value": "parentMessageId" } }] } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "ResultMessageOutput" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "result" } }, { "kind": "Field", "name": { "kind": "Name", "value": "actionExecutionId" } }, { "kind": "Field", "name": { "kind": "Name", "value": "actionName" } }] } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "AgentStateMessageOutput" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "threadId" } }, { "kind": "Field", "name": { "kind": "Name", "value": "state" } }, { "kind": "Field", "name": { "kind": "Name", "value": "running" } }, { "kind": "Field", "name": { "kind": "Name", "value": "agentName" } }, { "kind": "Field", "name": { "kind": "Name", "value": "nodeName" } }, { "kind": "Field", "name": { "kind": "Name", "value": "runId" } }, { "kind": "Field", "name": { "kind": "Name", "value": "active" } }, { "kind": "Field", "name": { "kind": "Name", "value": "role" } }] } }] } }, { "kind": "Field", "name": { "kind": "Name", "value": "metaEvents" }, "directives": [{ "kind": "Directive", "name": { "kind": "Name", "value": "stream" } }], "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "LangGraphInterruptEvent" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "type" } }, { "kind": "Field", "name": { "kind": "Name", "value": "name" } }, { "kind": "Field", "name": { "kind": "Name", "value": "value" } }] } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "CopilotKitLangGraphInterruptEvent" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "type" } }, { "kind": "Field", "name": { "kind": "Name", "value": "name" } }, { "kind": "Field", "name": { "kind": "Name", "value": "data" }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "messages" }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "__typename" } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "BaseMessageOutput" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "id" } }, { "kind": "Field", "name": { "kind": "Name", "value": "createdAt" } }] } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "BaseMessageOutput" } }, "directives": [{ "kind": "Directive", "name": { "kind": "Name", "value": "defer" } }], "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "status" }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "SuccessMessageStatus" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "code" } }] } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "FailedMessageStatus" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "code" } }, { "kind": "Field", "name": { "kind": "Name", "value": "reason" } }] } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "PendingMessageStatus" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "code" } }] } }] } }] } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "TextMessageOutput" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "content" } }, { "kind": "Field", "name": { "kind": "Name", "value": "role" } }, { "kind": "Field", "name": { "kind": "Name", "value": "parentMessageId" } }] } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "ActionExecutionMessageOutput" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "name" } }, { "kind": "Field", "name": { "kind": "Name", "value": "arguments" } }, { "kind": "Field", "name": { "kind": "Name", "value": "parentMessageId" } }] } }, { "kind": "InlineFragment", "typeCondition": { "kind": "NamedType", "name": { "kind": "Name", "value": "ResultMessageOutput" } }, "selectionSet": { "kind": "SelectionSet", "selections": [{ "kind": "Field", "name": { "kind": "Name", "value": "result" } }, { "kind": "Field", "name": { "kind": "Name", "value": "actionExecutionId" } }, { "kind": "Field", "name": { "kind": "Name", "value": "actionName" } }] } }] } }, { "kind": "Field", "name": { "kind": "Name", "value": "value" } }] } }] } }] } }] } }] } }] };
@@ -35,7 +35,7 @@ var LoadAgentStateDocument = { "kind": "Document", "definitions": [{ "kind": "Op
35
35
 
36
36
  // src/graphql/@generated/gql.ts
37
37
  var documents = {
38
- "\n mutation generateCopilotResponse($data: GenerateCopilotResponseInput!, $properties: JSONObject) {\n generateCopilotResponse(data: $data, properties: $properties) {\n threadId\n runId\n extensions {\n openaiAssistantAPI {\n runId\n threadId\n }\n }\n ... on CopilotResponse @defer {\n status {\n ... on BaseResponseStatus {\n code\n }\n ... on FailedResponseStatus {\n reason\n details\n }\n }\n }\n messages @stream {\n __typename\n ... on BaseMessageOutput {\n id\n createdAt\n }\n ... on BaseMessageOutput @defer {\n status {\n ... on SuccessMessageStatus {\n code\n }\n ... on FailedMessageStatus {\n code\n reason\n }\n ... on PendingMessageStatus {\n code\n }\n }\n }\n ... on TextMessageOutput {\n content @stream\n role\n parentMessageId\n }\n ... on ImageMessageOutput {\n format\n bytes\n role\n parentMessageId\n }\n ... on ActionExecutionMessageOutput {\n name\n arguments @stream\n parentMessageId\n }\n ... on ResultMessageOutput {\n result\n actionExecutionId\n actionName\n }\n ... on AgentStateMessageOutput {\n threadId\n state\n running\n agentName\n nodeName\n runId\n active\n role\n }\n }\n metaEvents @stream {\n ... on LangGraphInterruptEvent {\n type\n name\n value\n }\n\n ... on CopilotKitLangGraphInterruptEvent {\n type\n name\n data {\n messages {\n __typename\n ... on BaseMessageOutput {\n id\n createdAt\n }\n ... on BaseMessageOutput @defer {\n status {\n ... on SuccessMessageStatus {\n code\n }\n ... on FailedMessageStatus {\n code\n reason\n }\n ... on PendingMessageStatus {\n code\n }\n }\n }\n ... on TextMessageOutput {\n content\n role\n parentMessageId\n }\n ... on ActionExecutionMessageOutput {\n name\n arguments\n parentMessageId\n }\n ... on ResultMessageOutput {\n result\n actionExecutionId\n actionName\n }\n }\n value\n }\n }\n }\n }\n }\n": GenerateCopilotResponseDocument,
38
+ "\n mutation generateCopilotResponse(\n $data: GenerateCopilotResponseInput!\n $properties: JSONObject\n ) {\n generateCopilotResponse(data: $data, properties: $properties) {\n threadId\n runId\n extensions {\n openaiAssistantAPI {\n runId\n threadId\n }\n }\n ... on CopilotResponse @defer {\n status {\n ... on BaseResponseStatus {\n code\n }\n ... on FailedResponseStatus {\n reason\n details\n }\n }\n }\n messages @stream {\n __typename\n ... on BaseMessageOutput {\n id\n createdAt\n }\n ... on BaseMessageOutput @defer {\n status {\n ... on SuccessMessageStatus {\n code\n }\n ... on FailedMessageStatus {\n code\n reason\n }\n ... on PendingMessageStatus {\n code\n }\n }\n }\n ... on TextMessageOutput {\n content @stream\n role\n parentMessageId\n }\n ... on ImageMessageOutput {\n format\n bytes\n role\n parentMessageId\n }\n ... on ActionExecutionMessageOutput {\n name\n arguments @stream\n parentMessageId\n }\n ... on ResultMessageOutput {\n result\n actionExecutionId\n actionName\n }\n ... on AgentStateMessageOutput {\n threadId\n state\n running\n agentName\n nodeName\n runId\n active\n role\n }\n }\n metaEvents @stream {\n ... on LangGraphInterruptEvent {\n type\n name\n value\n }\n\n ... on CopilotKitLangGraphInterruptEvent {\n type\n name\n data {\n messages {\n __typename\n ... on BaseMessageOutput {\n id\n createdAt\n }\n ... on BaseMessageOutput @defer {\n status {\n ... on SuccessMessageStatus {\n code\n }\n ... on FailedMessageStatus {\n code\n reason\n }\n ... on PendingMessageStatus {\n code\n }\n }\n }\n ... on TextMessageOutput {\n content\n role\n parentMessageId\n }\n ... on ActionExecutionMessageOutput {\n name\n arguments\n parentMessageId\n }\n ... on ResultMessageOutput {\n result\n actionExecutionId\n actionName\n }\n }\n value\n }\n }\n }\n }\n }\n": GenerateCopilotResponseDocument,
39
39
  "\n query availableAgents {\n availableAgents {\n agents {\n name\n id\n description\n }\n }\n }\n": AvailableAgentsDocument,
40
40
  "\n query loadAgentState($data: LoadAgentStateInput!) {\n loadAgentState(data: $data) {\n threadId\n threadExists\n state\n messages\n }\n }\n": LoadAgentStateDocument
41
41
  };
@@ -47,7 +47,10 @@ function graphql(source) {
47
47
  var generateCopilotResponseMutation = graphql(
48
48
  /** GraphQL **/
49
49
  `
50
- mutation generateCopilotResponse($data: GenerateCopilotResponseInput!, $properties: JSONObject) {
50
+ mutation generateCopilotResponse(
51
+ $data: GenerateCopilotResponseInput!
52
+ $properties: JSONObject
53
+ ) {
51
54
  generateCopilotResponse(data: $data, properties: $properties) {
52
55
  threadId
53
56
  runId
@@ -235,7 +238,10 @@ var createFetchFn = (signal, handleGQLWarning) => async (...args) => {
235
238
  if (error instanceof import_shared.CopilotKitError) {
236
239
  throw error;
237
240
  }
238
- throw new import_shared.CopilotKitLowLevelError({ error, url: args[0] });
241
+ throw new import_shared.CopilotKitLowLevelError({
242
+ error,
243
+ url: args[0]
244
+ });
239
245
  }
240
246
  };
241
247
  var CopilotRuntimeClient = class {
@@ -267,7 +273,11 @@ var CopilotRuntimeClient = class {
267
273
  signal
268
274
  }) {
269
275
  const fetchFn = createFetchFn(signal, this.handleGQLWarning);
270
- const result = this.client.mutation(generateCopilotResponseMutation, { data, properties }, { fetch: fetchFn });
276
+ const result = this.client.mutation(
277
+ generateCopilotResponseMutation,
278
+ { data, properties },
279
+ { fetch: fetchFn }
280
+ );
271
281
  return result;
272
282
  }
273
283
  asStream(source) {
@@ -314,7 +324,11 @@ var CopilotRuntimeClient = class {
314
324
  }
315
325
  availableAgents() {
316
326
  const fetchFn = createFetchFn();
317
- return this.client.query(getAvailableAgentsQuery, {}, { fetch: fetchFn });
327
+ return this.client.query(
328
+ getAvailableAgentsQuery,
329
+ {},
330
+ { fetch: fetchFn }
331
+ );
318
332
  }
319
333
  loadAgentState(data) {
320
334
  const fetchFn = createFetchFn();