@copilotkit/runtime-client-gql 1.3.7-fix-chat-interactions-rerenders.0 → 1.3.8-fix-memoize-chat-ui-context.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.
- package/CHANGELOG.md +13 -4
- package/dist/{chunk-2PZ4ZVCH.mjs → chunk-2AWTH4O4.mjs} +2 -2
- package/dist/chunk-2AWTH4O4.mjs.map +1 -0
- package/dist/{chunk-UTB4B2W3.mjs → chunk-2SX4BZNM.mjs} +20 -1
- package/dist/chunk-2SX4BZNM.mjs.map +1 -0
- package/dist/{chunk-IIG2QQK6.mjs → chunk-FG2ZWCDK.mjs} +7 -7
- package/dist/chunk-FG2ZWCDK.mjs.map +1 -0
- package/dist/client/CopilotRuntimeClient.js +1 -1
- package/dist/client/CopilotRuntimeClient.js.map +1 -1
- package/dist/client/CopilotRuntimeClient.mjs +1 -1
- package/dist/client/conversion.js +24 -5
- package/dist/client/conversion.js.map +1 -1
- package/dist/client/conversion.mjs +2 -2
- package/dist/client/index.js +25 -6
- package/dist/client/index.js.map +1 -1
- package/dist/client/index.mjs +3 -3
- package/dist/client/types.d.ts +7 -0
- package/dist/client/types.js +19 -0
- package/dist/client/types.js.map +1 -1
- package/dist/client/types.mjs +1 -1
- package/dist/index.js +25 -6
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +3 -3
- package/package.json +4 -4
- package/src/client/conversion.ts +5 -5
- package/src/client/types.ts +27 -0
- package/dist/chunk-2PZ4ZVCH.mjs.map +0 -1
- package/dist/chunk-IIG2QQK6.mjs.map +0 -1
- package/dist/chunk-UTB4B2W3.mjs.map +0 -1
package/dist/client/types.mjs
CHANGED
package/dist/index.js
CHANGED
|
@@ -55,7 +55,7 @@ module.exports = __toCommonJS(src_exports);
|
|
|
55
55
|
var import_core = require("@urql/core");
|
|
56
56
|
|
|
57
57
|
// package.json
|
|
58
|
-
var version = "1.3.
|
|
58
|
+
var version = "1.3.8-fix-memoize-chat-ui-context.0";
|
|
59
59
|
|
|
60
60
|
// src/graphql/@generated/graphql.ts
|
|
61
61
|
var ActionExecutionScope = /* @__PURE__ */ ((ActionExecutionScope2) => {
|
|
@@ -232,21 +232,36 @@ var Message = class {
|
|
|
232
232
|
props.createdAt ?? (props.createdAt = /* @__PURE__ */ new Date());
|
|
233
233
|
Object.assign(this, props);
|
|
234
234
|
}
|
|
235
|
+
isTextMessage() {
|
|
236
|
+
return this.type === "TextMessage";
|
|
237
|
+
}
|
|
238
|
+
isActionExecutionMessage() {
|
|
239
|
+
return this.type === "ActionExecutionMessage";
|
|
240
|
+
}
|
|
241
|
+
isResultMessage() {
|
|
242
|
+
return this.type === "ResultMessage";
|
|
243
|
+
}
|
|
244
|
+
isAgentStateMessage() {
|
|
245
|
+
return this.type === "AgentStateMessage";
|
|
246
|
+
}
|
|
235
247
|
};
|
|
236
248
|
var Role = MessageRole;
|
|
237
249
|
var TextMessage = class extends Message {
|
|
238
250
|
constructor(props) {
|
|
239
251
|
super(props);
|
|
252
|
+
this.type = "TextMessage";
|
|
240
253
|
}
|
|
241
254
|
};
|
|
242
255
|
var ActionExecutionMessage = class extends Message {
|
|
243
256
|
constructor(props) {
|
|
244
257
|
super(props);
|
|
258
|
+
this.type = "ActionExecutionMessage";
|
|
245
259
|
}
|
|
246
260
|
};
|
|
247
261
|
var ResultMessage = class extends Message {
|
|
248
262
|
constructor(props) {
|
|
249
263
|
super(props);
|
|
264
|
+
this.type = "ResultMessage";
|
|
250
265
|
}
|
|
251
266
|
static decodeResult(result) {
|
|
252
267
|
try {
|
|
@@ -266,16 +281,20 @@ var ResultMessage = class extends Message {
|
|
|
266
281
|
}
|
|
267
282
|
};
|
|
268
283
|
var AgentStateMessage = class extends Message {
|
|
284
|
+
constructor(props) {
|
|
285
|
+
super(props);
|
|
286
|
+
this.type = "AgentStateMessage";
|
|
287
|
+
}
|
|
269
288
|
};
|
|
270
289
|
|
|
271
290
|
// src/client/conversion.ts
|
|
272
291
|
var import_untruncate_json = __toESM(require("untruncate-json"));
|
|
273
292
|
function filterAgentStateMessages(messages) {
|
|
274
|
-
return messages.filter((message) => !(
|
|
293
|
+
return messages.filter((message) => !message.isAgentStateMessage());
|
|
275
294
|
}
|
|
276
295
|
function convertMessagesToGqlInput(messages) {
|
|
277
296
|
return messages.map((message) => {
|
|
278
|
-
if (message
|
|
297
|
+
if (message.isTextMessage()) {
|
|
279
298
|
return {
|
|
280
299
|
id: message.id,
|
|
281
300
|
createdAt: message.createdAt,
|
|
@@ -284,7 +303,7 @@ function convertMessagesToGqlInput(messages) {
|
|
|
284
303
|
role: message.role
|
|
285
304
|
}
|
|
286
305
|
};
|
|
287
|
-
} else if (message
|
|
306
|
+
} else if (message.isActionExecutionMessage()) {
|
|
288
307
|
return {
|
|
289
308
|
id: message.id,
|
|
290
309
|
createdAt: message.createdAt,
|
|
@@ -294,7 +313,7 @@ function convertMessagesToGqlInput(messages) {
|
|
|
294
313
|
scope: message.scope
|
|
295
314
|
}
|
|
296
315
|
};
|
|
297
|
-
} else if (message
|
|
316
|
+
} else if (message.isResultMessage()) {
|
|
298
317
|
return {
|
|
299
318
|
id: message.id,
|
|
300
319
|
createdAt: message.createdAt,
|
|
@@ -304,7 +323,7 @@ function convertMessagesToGqlInput(messages) {
|
|
|
304
323
|
actionName: message.actionName
|
|
305
324
|
}
|
|
306
325
|
};
|
|
307
|
-
} else if (message
|
|
326
|
+
} else if (message.isAgentStateMessage()) {
|
|
308
327
|
return {
|
|
309
328
|
id: message.id,
|
|
310
329
|
createdAt: message.createdAt,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/client/CopilotRuntimeClient.ts","../package.json","../src/graphql/@generated/graphql.ts","../src/graphql/@generated/gql.ts","../src/graphql/definitions/mutations.ts","../src/client/types.ts","../src/client/conversion.ts"],"sourcesContent":["export * from \"./client\";\nexport * from \"./graphql/@generated/graphql\";\n","import { Client, cacheExchange, fetchExchange } from \"@urql/core\";\nimport * as packageJson from \"../../package.json\";\n\nimport {\n GenerateCopilotResponseMutation,\n GenerateCopilotResponseMutationVariables,\n} from \"../graphql/@generated/graphql\";\nimport { generateCopilotResponseMutation } from \"../graphql/definitions/mutations\";\nimport { OperationResultSource, OperationResult } from \"urql\";\n\ninterface CopilotRuntimeClientOptions {\n url: string;\n publicApiKey?: string;\n headers?: Record<string, string>;\n credentials?: RequestCredentials;\n}\n\nexport class CopilotRuntimeClient {\n client: Client;\n\n constructor(options: CopilotRuntimeClientOptions) {\n const headers: Record<string, string> = {};\n\n if (options.headers) {\n Object.assign(headers, options.headers);\n }\n\n if (options.publicApiKey) {\n headers[\"x-copilotcloud-public-api-key\"] = options.publicApiKey;\n }\n\n this.client = new Client({\n url: options.url,\n exchanges: [cacheExchange, fetchExchange],\n fetchOptions: {\n headers: {\n ...headers,\n \"X-CopilotKit-Runtime-Client-GQL-Version\": packageJson.version,\n },\n ...(options.credentials ? { credentials: options.credentials } : {}),\n },\n });\n }\n\n generateCopilotResponse({\n data,\n properties,\n signal,\n }: {\n data: GenerateCopilotResponseMutationVariables[\"data\"];\n properties?: GenerateCopilotResponseMutationVariables[\"properties\"];\n signal?: AbortSignal;\n }) {\n const result = this.client.mutation<\n GenerateCopilotResponseMutation,\n GenerateCopilotResponseMutationVariables\n >(\n generateCopilotResponseMutation,\n { data, properties },\n { fetch: (url, opts) => fetch(url, { ...opts, signal }) },\n );\n\n return result;\n }\n\n static asStream<S, T>(source: OperationResultSource<OperationResult<S, { data: T }>>) {\n return new ReadableStream<S>({\n start(controller) {\n source.subscribe(({ data, hasNext }) => {\n controller.enqueue(data);\n if (!hasNext) {\n controller.close();\n }\n });\n },\n });\n }\n}\n","{\n \"name\": \"@copilotkit/runtime-client-gql\",\n \"private\": false,\n \"homepage\": \"https://github.com/CopilotKit/CopilotKit\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/CopilotKit/CopilotKit.git\"\n },\n \"publishConfig\": {\n \"access\": \"public\"\n },\n \"version\": \"1.3.7-fix-chat-interactions-rerenders.0\",\n \"sideEffects\": false,\n \"main\": \"./dist/index.js\",\n \"module\": \"./dist/index.mjs\",\n \"exports\": {\n \".\": {\n \"import\": \"./dist/index.mjs\",\n \"require\": \"./dist/index.js\",\n \"types\": \"./dist/index.d.ts\"\n }\n },\n \"types\": \"./dist/index.d.ts\",\n \"license\": \"MIT\",\n \"scripts\": {\n \"build\": \"tsup --clean\",\n \"dev\": \"tsup --watch --no-splitting\",\n \"test\": \"jest --passWithNoTests\",\n \"check-types\": \"tsc --noEmit\",\n \"clean\": \"rm -rf .turbo && rm -rf node_modules && rm -rf dist && rm -rf .next\",\n \"graphql-codegen\": \"graphql-codegen\",\n \"graphql-codegen:watch\": \"graphql-codegen --watch\",\n \"link:global\": \"pnpm link --global\",\n \"unlink:global\": \"pnpm unlink --global\"\n },\n \"peerDependencies\": {\n \"react\": \"^18.2.0\"\n },\n \"devDependencies\": {\n \"@graphql-codegen/cli\": \"^5.0.2\",\n \"@graphql-codegen/client-preset\": \"^4.2.6\",\n \"@graphql-codegen/introspection\": \"^4.0.3\",\n \"@graphql-codegen/typescript\": \"^4.0.7\",\n \"@graphql-codegen/typescript-operations\": \"^4.2.1\",\n \"@graphql-codegen/typescript-urql\": \"^4.0.0\",\n \"@graphql-codegen/urql-introspection\": \"^3.0.0\",\n \"@graphql-typed-document-node/core\": \"^3.2.0\",\n \"@parcel/watcher\": \"^2.4.1\",\n \"@types/node\": \"^20.12.12\",\n \"esbuild\": \"^0.23.0\",\n \"jest\": \"^29.6.4\",\n \"ts-jest\": \"^29.1.1\",\n \"ts-node\": \"^10.9.2\",\n \"tsup\": \"^6.7.0\",\n \"typescript\": \"^5.4.5\"\n },\n \"dependencies\": {\n \"@copilotkit/runtime\": \"workspace:*\",\n \"@copilotkit/shared\": \"workspace:*\",\n \"@urql/core\": \"^5.0.3\",\n \"class-transformer\": \"^0.5.1\",\n \"class-validator\": \"^0.14.1\",\n \"graphql\": \"^16.8.1\",\n \"untruncate-json\": \"^0.0.1\",\n \"urql\": \"^4.1.0\",\n \"wonka\": \"^6.3.4\"\n },\n \"keywords\": [\n \"copilotkit\",\n \"copilot\",\n \"react\",\n \"nextjs\",\n \"nodejs\",\n \"ai\",\n \"assistant\",\n \"javascript\",\n \"automation\",\n \"textarea\"\n ]\n}\n","/* eslint-disable */\nimport type { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/core';\nexport type Maybe<T> = T | null;\nexport type InputMaybe<T> = Maybe<T>;\nexport type Exact<T extends { [key: string]: unknown }> = { [K in keyof T]: T[K] };\nexport type MakeOptional<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]?: Maybe<T[SubKey]> };\nexport type MakeMaybe<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]: Maybe<T[SubKey]> };\nexport type MakeEmpty<T extends { [key: string]: unknown }, K extends keyof T> = { [_ in K]?: never };\nexport type Incremental<T> = T | { [P in keyof T]?: P extends ' $fragmentName' | '__typename' ? T[P] : never };\n/** All built-in and custom scalars, mapped to their actual values */\nexport type Scalars = {\n ID: { input: string; output: string; }\n String: { input: string; output: string; }\n Boolean: { input: boolean; output: boolean; }\n Int: { input: number; output: number; }\n Float: { input: number; output: number; }\n /** A date-time string at UTC, such as 2007-12-03T10:15:30Z, compliant with the `date-time` format outlined in section 5.6 of the RFC 3339 profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar.This scalar is serialized to a string in ISO 8601 format and parsed from a string in ISO 8601 format. */\n DateTimeISO: { input: any; output: any; }\n /** The `JSON` scalar type represents JSON values as specified by [ECMA-404](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf). */\n JSON: { input: any; output: any; }\n /** The `JSONObject` scalar type represents JSON objects as specified by [ECMA-404](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf). */\n JSONObject: { input: any; output: any; }\n};\n\nexport type ActionExecutionMessageInput = {\n arguments: Scalars['String']['input'];\n name: Scalars['String']['input'];\n scope: ActionExecutionScope;\n};\n\nexport type ActionExecutionMessageOutput = BaseMessageOutput & {\n __typename?: 'ActionExecutionMessageOutput';\n arguments: Array<Scalars['String']['output']>;\n createdAt: Scalars['DateTimeISO']['output'];\n id: Scalars['String']['output'];\n name: Scalars['String']['output'];\n scope: ActionExecutionScope;\n status: MessageStatus;\n};\n\n/** The scope of the action */\nexport enum ActionExecutionScope {\n Client = 'client',\n PassThrough = 'passThrough',\n Server = 'server'\n}\n\nexport type ActionInput = {\n description: Scalars['String']['input'];\n jsonSchema: Scalars['String']['input'];\n name: Scalars['String']['input'];\n};\n\nexport type AgentSessionInput = {\n agentName: Scalars['String']['input'];\n nodeName?: InputMaybe<Scalars['String']['input']>;\n threadId?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type AgentStateInput = {\n agentName: Scalars['String']['input'];\n state: Scalars['String']['input'];\n};\n\nexport type AgentStateMessageInput = {\n active: Scalars['Boolean']['input'];\n agentName: Scalars['String']['input'];\n nodeName: Scalars['String']['input'];\n role: MessageRole;\n runId: Scalars['String']['input'];\n running: Scalars['Boolean']['input'];\n state: Scalars['String']['input'];\n threadId: Scalars['String']['input'];\n};\n\nexport type AgentStateMessageOutput = BaseMessageOutput & {\n __typename?: 'AgentStateMessageOutput';\n active: Scalars['Boolean']['output'];\n agentName: Scalars['String']['output'];\n createdAt: Scalars['DateTimeISO']['output'];\n id: Scalars['String']['output'];\n nodeName: Scalars['String']['output'];\n role: MessageRole;\n runId: Scalars['String']['output'];\n running: Scalars['Boolean']['output'];\n state: Scalars['String']['output'];\n status: MessageStatus;\n threadId: Scalars['String']['output'];\n};\n\nexport type BaseMessageOutput = {\n createdAt: Scalars['DateTimeISO']['output'];\n id: Scalars['String']['output'];\n status: MessageStatus;\n};\n\nexport type BaseResponseStatus = {\n code: ResponseStatusCode;\n};\n\nexport type CloudInput = {\n guardrails?: InputMaybe<GuardrailsInput>;\n};\n\n/** The type of Copilot request */\nexport enum CopilotRequestType {\n Chat = 'Chat',\n Suggestion = 'Suggestion',\n Task = 'Task',\n TextareaCompletion = 'TextareaCompletion',\n TextareaPopover = 'TextareaPopover'\n}\n\nexport type CopilotResponse = {\n __typename?: 'CopilotResponse';\n messages: Array<BaseMessageOutput>;\n runId?: Maybe<Scalars['String']['output']>;\n status: ResponseStatus;\n threadId: Scalars['String']['output'];\n};\n\nexport type FailedMessageStatus = {\n __typename?: 'FailedMessageStatus';\n code: MessageStatusCode;\n reason: Scalars['String']['output'];\n};\n\nexport type FailedResponseStatus = BaseResponseStatus & {\n __typename?: 'FailedResponseStatus';\n code: ResponseStatusCode;\n details?: Maybe<Scalars['JSON']['output']>;\n reason: FailedResponseStatusReason;\n};\n\nexport enum FailedResponseStatusReason {\n GuardrailsValidationFailed = 'GUARDRAILS_VALIDATION_FAILED',\n MessageStreamInterrupted = 'MESSAGE_STREAM_INTERRUPTED',\n UnknownError = 'UNKNOWN_ERROR'\n}\n\nexport type ForwardedParametersInput = {\n maxTokens?: InputMaybe<Scalars['Float']['input']>;\n model?: InputMaybe<Scalars['String']['input']>;\n stop?: InputMaybe<Array<Scalars['String']['input']>>;\n toolChoice?: InputMaybe<Scalars['String']['input']>;\n toolChoiceFunctionName?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type FrontendInput = {\n actions: Array<ActionInput>;\n toDeprecate_fullContext?: InputMaybe<Scalars['String']['input']>;\n url?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type GenerateCopilotResponseInput = {\n agentSession?: InputMaybe<AgentSessionInput>;\n agentState?: InputMaybe<AgentStateInput>;\n agentStates?: InputMaybe<Array<AgentStateInput>>;\n cloud?: InputMaybe<CloudInput>;\n forwardedParameters?: InputMaybe<ForwardedParametersInput>;\n frontend: FrontendInput;\n messages: Array<MessageInput>;\n metadata: GenerateCopilotResponseMetadataInput;\n runId?: InputMaybe<Scalars['String']['input']>;\n threadId?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type GenerateCopilotResponseMetadataInput = {\n requestType?: InputMaybe<CopilotRequestType>;\n};\n\nexport type GuardrailsInput = {\n inputValidationRules: GuardrailsRuleInput;\n};\n\nexport type GuardrailsRuleInput = {\n allowList?: InputMaybe<Array<Scalars['String']['input']>>;\n denyList?: InputMaybe<Array<Scalars['String']['input']>>;\n};\n\nexport type MessageInput = {\n actionExecutionMessage?: InputMaybe<ActionExecutionMessageInput>;\n agentStateMessage?: InputMaybe<AgentStateMessageInput>;\n createdAt: Scalars['DateTimeISO']['input'];\n id: Scalars['String']['input'];\n resultMessage?: InputMaybe<ResultMessageInput>;\n textMessage?: InputMaybe<TextMessageInput>;\n};\n\n/** The role of the message */\nexport enum MessageRole {\n Assistant = 'assistant',\n System = 'system',\n User = 'user'\n}\n\nexport type MessageStatus = FailedMessageStatus | PendingMessageStatus | SuccessMessageStatus;\n\nexport enum MessageStatusCode {\n Failed = 'Failed',\n Pending = 'Pending',\n Success = 'Success'\n}\n\nexport type Mutation = {\n __typename?: 'Mutation';\n generateCopilotResponse: CopilotResponse;\n};\n\n\nexport type MutationGenerateCopilotResponseArgs = {\n data: GenerateCopilotResponseInput;\n properties?: InputMaybe<Scalars['JSONObject']['input']>;\n};\n\nexport type PendingMessageStatus = {\n __typename?: 'PendingMessageStatus';\n code: MessageStatusCode;\n};\n\nexport type PendingResponseStatus = BaseResponseStatus & {\n __typename?: 'PendingResponseStatus';\n code: ResponseStatusCode;\n};\n\nexport type Query = {\n __typename?: 'Query';\n hello: Scalars['String']['output'];\n};\n\nexport type ResponseStatus = FailedResponseStatus | PendingResponseStatus | SuccessResponseStatus;\n\nexport enum ResponseStatusCode {\n Failed = 'Failed',\n Pending = 'Pending',\n Success = 'Success'\n}\n\nexport type ResultMessageInput = {\n actionExecutionId: Scalars['String']['input'];\n actionName: Scalars['String']['input'];\n result: Scalars['String']['input'];\n};\n\nexport type ResultMessageOutput = BaseMessageOutput & {\n __typename?: 'ResultMessageOutput';\n actionExecutionId: Scalars['String']['output'];\n actionName: Scalars['String']['output'];\n createdAt: Scalars['DateTimeISO']['output'];\n id: Scalars['String']['output'];\n result: Scalars['String']['output'];\n status: MessageStatus;\n};\n\nexport type SuccessMessageStatus = {\n __typename?: 'SuccessMessageStatus';\n code: MessageStatusCode;\n};\n\nexport type SuccessResponseStatus = BaseResponseStatus & {\n __typename?: 'SuccessResponseStatus';\n code: ResponseStatusCode;\n};\n\nexport type TextMessageInput = {\n content: Scalars['String']['input'];\n role: MessageRole;\n};\n\nexport type TextMessageOutput = BaseMessageOutput & {\n __typename?: 'TextMessageOutput';\n content: Array<Scalars['String']['output']>;\n createdAt: Scalars['DateTimeISO']['output'];\n id: Scalars['String']['output'];\n role: MessageRole;\n status: MessageStatus;\n};\n\nexport type GenerateCopilotResponseMutationVariables = Exact<{\n data: GenerateCopilotResponseInput;\n properties?: InputMaybe<Scalars['JSONObject']['input']>;\n}>;\n\n\nexport type GenerateCopilotResponseMutation = { __typename?: 'Mutation', generateCopilotResponse: { __typename?: 'CopilotResponse', threadId: string, runId?: string | null, messages: Array<{ __typename: 'ActionExecutionMessageOutput', id: string, createdAt: any, name: string, scope: ActionExecutionScope, arguments: Array<string>, status: { __typename?: 'FailedMessageStatus', code: MessageStatusCode, reason: string } | { __typename?: 'PendingMessageStatus', code: MessageStatusCode } | { __typename?: 'SuccessMessageStatus', code: MessageStatusCode } } | { __typename: 'AgentStateMessageOutput', id: string, createdAt: any, threadId: string, state: string, running: boolean, agentName: string, nodeName: string, runId: string, active: boolean, role: MessageRole, status: { __typename?: 'FailedMessageStatus', code: MessageStatusCode, reason: string } | { __typename?: 'PendingMessageStatus', code: MessageStatusCode } | { __typename?: 'SuccessMessageStatus', code: MessageStatusCode } } | { __typename: 'ResultMessageOutput', id: string, createdAt: any, result: string, actionExecutionId: string, actionName: string, status: { __typename?: 'FailedMessageStatus', code: MessageStatusCode, reason: string } | { __typename?: 'PendingMessageStatus', code: MessageStatusCode } | { __typename?: 'SuccessMessageStatus', code: MessageStatusCode } } | { __typename: 'TextMessageOutput', id: string, createdAt: any, content: Array<string>, role: MessageRole, status: { __typename?: 'FailedMessageStatus', code: MessageStatusCode, reason: string } | { __typename?: 'PendingMessageStatus', code: MessageStatusCode } | { __typename?: 'SuccessMessageStatus', code: MessageStatusCode } }> } & ({ __typename?: 'CopilotResponse', status: { __typename?: 'FailedResponseStatus', code: ResponseStatusCode, reason: FailedResponseStatusReason, details?: any | null } | { __typename?: 'PendingResponseStatus', code: ResponseStatusCode } | { __typename?: 'SuccessResponseStatus', code: ResponseStatusCode } } | { __typename?: 'CopilotResponse', status?: never }) };\n\n\nexport const 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\":\"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\":\"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\":\"scope\"}},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"arguments\"},\"directives\":[{\"kind\":\"Directive\",\"name\":{\"kind\":\"Name\",\"value\":\"stream\"}}]}]}},{\"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\"}}]}}]}}]}}]}}]} as unknown as DocumentNode<GenerateCopilotResponseMutation, GenerateCopilotResponseMutationVariables>;","/* 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 */\nconst documents = {\n \"\\n mutation generateCopilotResponse($data: GenerateCopilotResponseInput!, $properties: JSONObject) {\\n generateCopilotResponse(data: $data, properties: $properties) {\\n threadId\\n runId\\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 }\\n ... on ActionExecutionMessageOutput {\\n name\\n scope\\n arguments @stream\\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 }\\n }\\n\": types.GenerateCopilotResponseDocument,\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($data: GenerateCopilotResponseInput!, $properties: JSONObject) {\\n generateCopilotResponse(data: $data, properties: $properties) {\\n threadId\\n runId\\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 }\\n ... on ActionExecutionMessageOutput {\\n name\\n scope\\n arguments @stream\\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 }\\n }\\n\"): (typeof documents)[\"\\n mutation generateCopilotResponse($data: GenerateCopilotResponseInput!, $properties: JSONObject) {\\n generateCopilotResponse(data: $data, properties: $properties) {\\n threadId\\n runId\\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 }\\n ... on ActionExecutionMessageOutput {\\n name\\n scope\\n arguments @stream\\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 }\\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;","import { graphql } from \"../@generated/gql\";\n\nexport const generateCopilotResponseMutation = graphql(/** GraphQL **/ `\n mutation generateCopilotResponse($data: GenerateCopilotResponseInput!, $properties: JSONObject) {\n generateCopilotResponse(data: $data, properties: $properties) {\n threadId\n runId\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 }\n ... on ActionExecutionMessageOutput {\n name\n scope\n arguments @stream\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 }\n }\n`);\n","import { randomId } from \"@copilotkit/shared\";\nimport {\n ActionExecutionMessageInput,\n MessageRole,\n MessageStatus,\n ResultMessageInput,\n TextMessageInput,\n BaseMessageOutput,\n AgentStateMessageInput,\n MessageStatusCode,\n} from \"../graphql/@generated/graphql\";\n\nexport class Message {\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\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 & TextMessageInput;\n\nexport class TextMessage extends Message implements TextMessageConstructorOptions {\n role: TextMessageInput[\"role\"];\n content: TextMessageInput[\"content\"];\n\n constructor(props: TextMessageConstructorOptions) {\n super(props);\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\">\n{\n name: ActionExecutionMessageInput[\"name\"];\n arguments: Record<string, any>;\n scope: ActionExecutionMessageInput[\"scope\"];\n\n constructor(props: ActionExecutionMessageConstructorOptions) {\n super(props);\n }\n}\n\ntype ResultMessageConstructorOptions = MessageConstructorOptions & ResultMessageInput;\n\nexport class ResultMessage extends Message implements ResultMessageConstructorOptions {\n actionExecutionId: ResultMessageInput[\"actionExecutionId\"];\n actionName: ResultMessageInput[\"actionName\"];\n result: ResultMessageInput[\"result\"];\n\n constructor(props: ResultMessageConstructorOptions) {\n super(props);\n }\n\n static decodeResult(result: string): any {\n try {\n return JSON.parse(result);\n } catch (e) {\n return result;\n }\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 extends Message implements Omit<AgentStateMessageInput, \"state\"> {\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","import {\n GenerateCopilotResponseMutation,\n MessageInput,\n MessageStatusCode,\n} from \"../graphql/@generated/graphql\";\nimport {\n ActionExecutionMessage,\n AgentStateMessage,\n Message,\n ResultMessage,\n TextMessage,\n} from \"./types\";\n\nimport untruncateJson from \"untruncate-json\";\n\nexport function filterAgentStateMessages(messages: Message[]): Message[] {\n return messages.filter((message) => !(message instanceof AgentStateMessage));\n}\n\nexport function convertMessagesToGqlInput(messages: Message[]): MessageInput[] {\n return messages.map((message) => {\n if (message instanceof TextMessage) {\n return {\n id: message.id,\n createdAt: message.createdAt,\n textMessage: {\n content: message.content,\n role: message.role as any,\n },\n };\n } else if (message instanceof ActionExecutionMessage) {\n return {\n id: message.id,\n createdAt: message.createdAt,\n actionExecutionMessage: {\n name: message.name,\n arguments: JSON.stringify(message.arguments),\n scope: message.scope as any,\n },\n };\n } else if (message instanceof ResultMessage) {\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 instanceof AgentStateMessage) {\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 {\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) => m.__typename === \"AgentStateMessageOutput\" && 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 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 scope: message.scope,\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: JSON.parse(message.state),\n createdAt: new Date(),\n });\n }\n\n throw new Error(\"Unknown message type\");\n });\n}\n\nfunction getPartialArguments(args: string[]) {\n try {\n return JSON.parse(untruncateJson(args.join(\"\")));\n } catch (e) {\n return {};\n }\n}\n"],"mappings":"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","names":["ActionExecutionScope","CopilotRequestType","FailedResponseStatusReason","MessageRole","MessageStatusCode","ResponseStatusCode","untruncateJson"]}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/client/CopilotRuntimeClient.ts","../package.json","../src/graphql/@generated/graphql.ts","../src/graphql/@generated/gql.ts","../src/graphql/definitions/mutations.ts","../src/client/types.ts","../src/client/conversion.ts"],"sourcesContent":["export * from \"./client\";\nexport * from \"./graphql/@generated/graphql\";\n","import { Client, cacheExchange, fetchExchange } from \"@urql/core\";\nimport * as packageJson from \"../../package.json\";\n\nimport {\n GenerateCopilotResponseMutation,\n GenerateCopilotResponseMutationVariables,\n} from \"../graphql/@generated/graphql\";\nimport { generateCopilotResponseMutation } from \"../graphql/definitions/mutations\";\nimport { OperationResultSource, OperationResult } from \"urql\";\n\ninterface CopilotRuntimeClientOptions {\n url: string;\n publicApiKey?: string;\n headers?: Record<string, string>;\n credentials?: RequestCredentials;\n}\n\nexport class CopilotRuntimeClient {\n client: Client;\n\n constructor(options: CopilotRuntimeClientOptions) {\n const headers: Record<string, string> = {};\n\n if (options.headers) {\n Object.assign(headers, options.headers);\n }\n\n if (options.publicApiKey) {\n headers[\"x-copilotcloud-public-api-key\"] = options.publicApiKey;\n }\n\n this.client = new Client({\n url: options.url,\n exchanges: [cacheExchange, fetchExchange],\n fetchOptions: {\n headers: {\n ...headers,\n \"X-CopilotKit-Runtime-Client-GQL-Version\": packageJson.version,\n },\n ...(options.credentials ? { credentials: options.credentials } : {}),\n },\n });\n }\n\n generateCopilotResponse({\n data,\n properties,\n signal,\n }: {\n data: GenerateCopilotResponseMutationVariables[\"data\"];\n properties?: GenerateCopilotResponseMutationVariables[\"properties\"];\n signal?: AbortSignal;\n }) {\n const result = this.client.mutation<\n GenerateCopilotResponseMutation,\n GenerateCopilotResponseMutationVariables\n >(\n generateCopilotResponseMutation,\n { data, properties },\n { fetch: (url, opts) => fetch(url, { ...opts, signal }) },\n );\n\n return result;\n }\n\n static asStream<S, T>(source: OperationResultSource<OperationResult<S, { data: T }>>) {\n return new ReadableStream<S>({\n start(controller) {\n source.subscribe(({ data, hasNext }) => {\n controller.enqueue(data);\n if (!hasNext) {\n controller.close();\n }\n });\n },\n });\n }\n}\n","{\n \"name\": \"@copilotkit/runtime-client-gql\",\n \"private\": false,\n \"homepage\": \"https://github.com/CopilotKit/CopilotKit\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/CopilotKit/CopilotKit.git\"\n },\n \"publishConfig\": {\n \"access\": \"public\"\n },\n \"version\": \"1.3.8-fix-memoize-chat-ui-context.0\",\n \"sideEffects\": false,\n \"main\": \"./dist/index.js\",\n \"module\": \"./dist/index.mjs\",\n \"exports\": {\n \".\": {\n \"import\": \"./dist/index.mjs\",\n \"require\": \"./dist/index.js\",\n \"types\": \"./dist/index.d.ts\"\n }\n },\n \"types\": \"./dist/index.d.ts\",\n \"license\": \"MIT\",\n \"scripts\": {\n \"build\": \"tsup --clean\",\n \"dev\": \"tsup --watch --no-splitting\",\n \"test\": \"jest --passWithNoTests\",\n \"check-types\": \"tsc --noEmit\",\n \"clean\": \"rm -rf .turbo && rm -rf node_modules && rm -rf dist && rm -rf .next\",\n \"graphql-codegen\": \"graphql-codegen\",\n \"graphql-codegen:watch\": \"graphql-codegen --watch\",\n \"link:global\": \"pnpm link --global\",\n \"unlink:global\": \"pnpm unlink --global\"\n },\n \"peerDependencies\": {\n \"react\": \"^18 || ^19 || ^19.0.0-rc\"\n },\n \"devDependencies\": {\n \"@graphql-codegen/cli\": \"^5.0.2\",\n \"@graphql-codegen/client-preset\": \"^4.2.6\",\n \"@graphql-codegen/introspection\": \"^4.0.3\",\n \"@graphql-codegen/typescript\": \"^4.0.7\",\n \"@graphql-codegen/typescript-operations\": \"^4.2.1\",\n \"@graphql-codegen/typescript-urql\": \"^4.0.0\",\n \"@graphql-codegen/urql-introspection\": \"^3.0.0\",\n \"@graphql-typed-document-node/core\": \"^3.2.0\",\n \"@parcel/watcher\": \"^2.4.1\",\n \"@types/node\": \"^20.12.12\",\n \"esbuild\": \"^0.23.0\",\n \"jest\": \"^29.6.4\",\n \"ts-jest\": \"^29.1.1\",\n \"ts-node\": \"^10.9.2\",\n \"tsup\": \"^6.7.0\",\n \"typescript\": \"^5.4.5\"\n },\n \"dependencies\": {\n \"@copilotkit/runtime\": \"workspace:*\",\n \"@copilotkit/shared\": \"workspace:*\",\n \"@urql/core\": \"^5.0.3\",\n \"class-transformer\": \"^0.5.1\",\n \"class-validator\": \"^0.14.1\",\n \"graphql\": \"^16.8.1\",\n \"untruncate-json\": \"^0.0.1\",\n \"urql\": \"^4.1.0\",\n \"wonka\": \"^6.3.4\"\n },\n \"keywords\": [\n \"copilotkit\",\n \"copilot\",\n \"react\",\n \"nextjs\",\n \"nodejs\",\n \"ai\",\n \"assistant\",\n \"javascript\",\n \"automation\",\n \"textarea\"\n ]\n}\n","/* eslint-disable */\nimport type { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/core';\nexport type Maybe<T> = T | null;\nexport type InputMaybe<T> = Maybe<T>;\nexport type Exact<T extends { [key: string]: unknown }> = { [K in keyof T]: T[K] };\nexport type MakeOptional<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]?: Maybe<T[SubKey]> };\nexport type MakeMaybe<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]: Maybe<T[SubKey]> };\nexport type MakeEmpty<T extends { [key: string]: unknown }, K extends keyof T> = { [_ in K]?: never };\nexport type Incremental<T> = T | { [P in keyof T]?: P extends ' $fragmentName' | '__typename' ? T[P] : never };\n/** All built-in and custom scalars, mapped to their actual values */\nexport type Scalars = {\n ID: { input: string; output: string; }\n String: { input: string; output: string; }\n Boolean: { input: boolean; output: boolean; }\n Int: { input: number; output: number; }\n Float: { input: number; output: number; }\n /** A date-time string at UTC, such as 2007-12-03T10:15:30Z, compliant with the `date-time` format outlined in section 5.6 of the RFC 3339 profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar.This scalar is serialized to a string in ISO 8601 format and parsed from a string in ISO 8601 format. */\n DateTimeISO: { input: any; output: any; }\n /** The `JSON` scalar type represents JSON values as specified by [ECMA-404](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf). */\n JSON: { input: any; output: any; }\n /** The `JSONObject` scalar type represents JSON objects as specified by [ECMA-404](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf). */\n JSONObject: { input: any; output: any; }\n};\n\nexport type ActionExecutionMessageInput = {\n arguments: Scalars['String']['input'];\n name: Scalars['String']['input'];\n scope: ActionExecutionScope;\n};\n\nexport type ActionExecutionMessageOutput = BaseMessageOutput & {\n __typename?: 'ActionExecutionMessageOutput';\n arguments: Array<Scalars['String']['output']>;\n createdAt: Scalars['DateTimeISO']['output'];\n id: Scalars['String']['output'];\n name: Scalars['String']['output'];\n scope: ActionExecutionScope;\n status: MessageStatus;\n};\n\n/** The scope of the action */\nexport enum ActionExecutionScope {\n Client = 'client',\n PassThrough = 'passThrough',\n Server = 'server'\n}\n\nexport type ActionInput = {\n description: Scalars['String']['input'];\n jsonSchema: Scalars['String']['input'];\n name: Scalars['String']['input'];\n};\n\nexport type AgentSessionInput = {\n agentName: Scalars['String']['input'];\n nodeName?: InputMaybe<Scalars['String']['input']>;\n threadId?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type AgentStateInput = {\n agentName: Scalars['String']['input'];\n state: Scalars['String']['input'];\n};\n\nexport type AgentStateMessageInput = {\n active: Scalars['Boolean']['input'];\n agentName: Scalars['String']['input'];\n nodeName: Scalars['String']['input'];\n role: MessageRole;\n runId: Scalars['String']['input'];\n running: Scalars['Boolean']['input'];\n state: Scalars['String']['input'];\n threadId: Scalars['String']['input'];\n};\n\nexport type AgentStateMessageOutput = BaseMessageOutput & {\n __typename?: 'AgentStateMessageOutput';\n active: Scalars['Boolean']['output'];\n agentName: Scalars['String']['output'];\n createdAt: Scalars['DateTimeISO']['output'];\n id: Scalars['String']['output'];\n nodeName: Scalars['String']['output'];\n role: MessageRole;\n runId: Scalars['String']['output'];\n running: Scalars['Boolean']['output'];\n state: Scalars['String']['output'];\n status: MessageStatus;\n threadId: Scalars['String']['output'];\n};\n\nexport type BaseMessageOutput = {\n createdAt: Scalars['DateTimeISO']['output'];\n id: Scalars['String']['output'];\n status: MessageStatus;\n};\n\nexport type BaseResponseStatus = {\n code: ResponseStatusCode;\n};\n\nexport type CloudInput = {\n guardrails?: InputMaybe<GuardrailsInput>;\n};\n\n/** The type of Copilot request */\nexport enum CopilotRequestType {\n Chat = 'Chat',\n Suggestion = 'Suggestion',\n Task = 'Task',\n TextareaCompletion = 'TextareaCompletion',\n TextareaPopover = 'TextareaPopover'\n}\n\nexport type CopilotResponse = {\n __typename?: 'CopilotResponse';\n messages: Array<BaseMessageOutput>;\n runId?: Maybe<Scalars['String']['output']>;\n status: ResponseStatus;\n threadId: Scalars['String']['output'];\n};\n\nexport type FailedMessageStatus = {\n __typename?: 'FailedMessageStatus';\n code: MessageStatusCode;\n reason: Scalars['String']['output'];\n};\n\nexport type FailedResponseStatus = BaseResponseStatus & {\n __typename?: 'FailedResponseStatus';\n code: ResponseStatusCode;\n details?: Maybe<Scalars['JSON']['output']>;\n reason: FailedResponseStatusReason;\n};\n\nexport enum FailedResponseStatusReason {\n GuardrailsValidationFailed = 'GUARDRAILS_VALIDATION_FAILED',\n MessageStreamInterrupted = 'MESSAGE_STREAM_INTERRUPTED',\n UnknownError = 'UNKNOWN_ERROR'\n}\n\nexport type ForwardedParametersInput = {\n maxTokens?: InputMaybe<Scalars['Float']['input']>;\n model?: InputMaybe<Scalars['String']['input']>;\n stop?: InputMaybe<Array<Scalars['String']['input']>>;\n toolChoice?: InputMaybe<Scalars['String']['input']>;\n toolChoiceFunctionName?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type FrontendInput = {\n actions: Array<ActionInput>;\n toDeprecate_fullContext?: InputMaybe<Scalars['String']['input']>;\n url?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type GenerateCopilotResponseInput = {\n agentSession?: InputMaybe<AgentSessionInput>;\n agentState?: InputMaybe<AgentStateInput>;\n agentStates?: InputMaybe<Array<AgentStateInput>>;\n cloud?: InputMaybe<CloudInput>;\n forwardedParameters?: InputMaybe<ForwardedParametersInput>;\n frontend: FrontendInput;\n messages: Array<MessageInput>;\n metadata: GenerateCopilotResponseMetadataInput;\n runId?: InputMaybe<Scalars['String']['input']>;\n threadId?: InputMaybe<Scalars['String']['input']>;\n};\n\nexport type GenerateCopilotResponseMetadataInput = {\n requestType?: InputMaybe<CopilotRequestType>;\n};\n\nexport type GuardrailsInput = {\n inputValidationRules: GuardrailsRuleInput;\n};\n\nexport type GuardrailsRuleInput = {\n allowList?: InputMaybe<Array<Scalars['String']['input']>>;\n denyList?: InputMaybe<Array<Scalars['String']['input']>>;\n};\n\nexport type MessageInput = {\n actionExecutionMessage?: InputMaybe<ActionExecutionMessageInput>;\n agentStateMessage?: InputMaybe<AgentStateMessageInput>;\n createdAt: Scalars['DateTimeISO']['input'];\n id: Scalars['String']['input'];\n resultMessage?: InputMaybe<ResultMessageInput>;\n textMessage?: InputMaybe<TextMessageInput>;\n};\n\n/** The role of the message */\nexport enum MessageRole {\n Assistant = 'assistant',\n System = 'system',\n User = 'user'\n}\n\nexport type MessageStatus = FailedMessageStatus | PendingMessageStatus | SuccessMessageStatus;\n\nexport enum MessageStatusCode {\n Failed = 'Failed',\n Pending = 'Pending',\n Success = 'Success'\n}\n\nexport type Mutation = {\n __typename?: 'Mutation';\n generateCopilotResponse: CopilotResponse;\n};\n\n\nexport type MutationGenerateCopilotResponseArgs = {\n data: GenerateCopilotResponseInput;\n properties?: InputMaybe<Scalars['JSONObject']['input']>;\n};\n\nexport type PendingMessageStatus = {\n __typename?: 'PendingMessageStatus';\n code: MessageStatusCode;\n};\n\nexport type PendingResponseStatus = BaseResponseStatus & {\n __typename?: 'PendingResponseStatus';\n code: ResponseStatusCode;\n};\n\nexport type Query = {\n __typename?: 'Query';\n hello: Scalars['String']['output'];\n};\n\nexport type ResponseStatus = FailedResponseStatus | PendingResponseStatus | SuccessResponseStatus;\n\nexport enum ResponseStatusCode {\n Failed = 'Failed',\n Pending = 'Pending',\n Success = 'Success'\n}\n\nexport type ResultMessageInput = {\n actionExecutionId: Scalars['String']['input'];\n actionName: Scalars['String']['input'];\n result: Scalars['String']['input'];\n};\n\nexport type ResultMessageOutput = BaseMessageOutput & {\n __typename?: 'ResultMessageOutput';\n actionExecutionId: Scalars['String']['output'];\n actionName: Scalars['String']['output'];\n createdAt: Scalars['DateTimeISO']['output'];\n id: Scalars['String']['output'];\n result: Scalars['String']['output'];\n status: MessageStatus;\n};\n\nexport type SuccessMessageStatus = {\n __typename?: 'SuccessMessageStatus';\n code: MessageStatusCode;\n};\n\nexport type SuccessResponseStatus = BaseResponseStatus & {\n __typename?: 'SuccessResponseStatus';\n code: ResponseStatusCode;\n};\n\nexport type TextMessageInput = {\n content: Scalars['String']['input'];\n role: MessageRole;\n};\n\nexport type TextMessageOutput = BaseMessageOutput & {\n __typename?: 'TextMessageOutput';\n content: Array<Scalars['String']['output']>;\n createdAt: Scalars['DateTimeISO']['output'];\n id: Scalars['String']['output'];\n role: MessageRole;\n status: MessageStatus;\n};\n\nexport type GenerateCopilotResponseMutationVariables = Exact<{\n data: GenerateCopilotResponseInput;\n properties?: InputMaybe<Scalars['JSONObject']['input']>;\n}>;\n\n\nexport type GenerateCopilotResponseMutation = { __typename?: 'Mutation', generateCopilotResponse: { __typename?: 'CopilotResponse', threadId: string, runId?: string | null, messages: Array<{ __typename: 'ActionExecutionMessageOutput', id: string, createdAt: any, name: string, scope: ActionExecutionScope, arguments: Array<string>, status: { __typename?: 'FailedMessageStatus', code: MessageStatusCode, reason: string } | { __typename?: 'PendingMessageStatus', code: MessageStatusCode } | { __typename?: 'SuccessMessageStatus', code: MessageStatusCode } } | { __typename: 'AgentStateMessageOutput', id: string, createdAt: any, threadId: string, state: string, running: boolean, agentName: string, nodeName: string, runId: string, active: boolean, role: MessageRole, status: { __typename?: 'FailedMessageStatus', code: MessageStatusCode, reason: string } | { __typename?: 'PendingMessageStatus', code: MessageStatusCode } | { __typename?: 'SuccessMessageStatus', code: MessageStatusCode } } | { __typename: 'ResultMessageOutput', id: string, createdAt: any, result: string, actionExecutionId: string, actionName: string, status: { __typename?: 'FailedMessageStatus', code: MessageStatusCode, reason: string } | { __typename?: 'PendingMessageStatus', code: MessageStatusCode } | { __typename?: 'SuccessMessageStatus', code: MessageStatusCode } } | { __typename: 'TextMessageOutput', id: string, createdAt: any, content: Array<string>, role: MessageRole, status: { __typename?: 'FailedMessageStatus', code: MessageStatusCode, reason: string } | { __typename?: 'PendingMessageStatus', code: MessageStatusCode } | { __typename?: 'SuccessMessageStatus', code: MessageStatusCode } }> } & ({ __typename?: 'CopilotResponse', status: { __typename?: 'FailedResponseStatus', code: ResponseStatusCode, reason: FailedResponseStatusReason, details?: any | null } | { __typename?: 'PendingResponseStatus', code: ResponseStatusCode } | { __typename?: 'SuccessResponseStatus', code: ResponseStatusCode } } | { __typename?: 'CopilotResponse', status?: never }) };\n\n\nexport const 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\":\"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\":\"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\":\"scope\"}},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"arguments\"},\"directives\":[{\"kind\":\"Directive\",\"name\":{\"kind\":\"Name\",\"value\":\"stream\"}}]}]}},{\"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\"}}]}}]}}]}}]}}]} as unknown as DocumentNode<GenerateCopilotResponseMutation, GenerateCopilotResponseMutationVariables>;","/* 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 */\nconst documents = {\n \"\\n mutation generateCopilotResponse($data: GenerateCopilotResponseInput!, $properties: JSONObject) {\\n generateCopilotResponse(data: $data, properties: $properties) {\\n threadId\\n runId\\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 }\\n ... on ActionExecutionMessageOutput {\\n name\\n scope\\n arguments @stream\\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 }\\n }\\n\": types.GenerateCopilotResponseDocument,\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($data: GenerateCopilotResponseInput!, $properties: JSONObject) {\\n generateCopilotResponse(data: $data, properties: $properties) {\\n threadId\\n runId\\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 }\\n ... on ActionExecutionMessageOutput {\\n name\\n scope\\n arguments @stream\\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 }\\n }\\n\"): (typeof documents)[\"\\n mutation generateCopilotResponse($data: GenerateCopilotResponseInput!, $properties: JSONObject) {\\n generateCopilotResponse(data: $data, properties: $properties) {\\n threadId\\n runId\\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 }\\n ... on ActionExecutionMessageOutput {\\n name\\n scope\\n arguments @stream\\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 }\\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;","import { graphql } from \"../@generated/gql\";\n\nexport const generateCopilotResponseMutation = graphql(/** GraphQL **/ `\n mutation generateCopilotResponse($data: GenerateCopilotResponseInput!, $properties: JSONObject) {\n generateCopilotResponse(data: $data, properties: $properties) {\n threadId\n runId\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 }\n ... on ActionExecutionMessageOutput {\n name\n scope\n arguments @stream\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 }\n }\n`);\n","import { randomId } from \"@copilotkit/shared\";\nimport {\n ActionExecutionMessageInput,\n MessageRole,\n MessageStatus,\n ResultMessageInput,\n TextMessageInput,\n BaseMessageOutput,\n AgentStateMessageInput,\n MessageStatusCode,\n} from \"../graphql/@generated/graphql\";\n\ntype MessageType = \"TextMessage\" | \"ActionExecutionMessage\" | \"ResultMessage\" | \"AgentStateMessage\";\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\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 & TextMessageInput;\n\nexport class TextMessage extends Message implements TextMessageConstructorOptions {\n role: TextMessageInput[\"role\"];\n content: TextMessageInput[\"content\"];\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\">\n{\n name: ActionExecutionMessageInput[\"name\"];\n arguments: Record<string, any>;\n scope: ActionExecutionMessageInput[\"scope\"];\n\n constructor(props: ActionExecutionMessageConstructorOptions) {\n super(props);\n this.type = \"ActionExecutionMessage\";\n }\n}\n\ntype ResultMessageConstructorOptions = MessageConstructorOptions & ResultMessageInput;\n\nexport class ResultMessage extends Message implements ResultMessageConstructorOptions {\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 try {\n return JSON.parse(result);\n } catch (e) {\n return result;\n }\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 extends Message implements Omit<AgentStateMessageInput, \"state\"> {\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","import {\n GenerateCopilotResponseMutation,\n MessageInput,\n MessageStatusCode,\n} from \"../graphql/@generated/graphql\";\nimport {\n ActionExecutionMessage,\n AgentStateMessage,\n Message,\n ResultMessage,\n TextMessage,\n} from \"./types\";\n\nimport untruncateJson from \"untruncate-json\";\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 },\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 scope: message.scope as any,\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 {\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) => m.__typename === \"AgentStateMessageOutput\" && 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 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 scope: message.scope,\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: JSON.parse(message.state),\n createdAt: new Date(),\n });\n }\n\n throw new Error(\"Unknown message type\");\n });\n}\n\nfunction getPartialArguments(args: string[]) {\n try {\n return JSON.parse(untruncateJson(args.join(\"\")));\n } catch (e) {\n return {};\n }\n}\n"],"mappings":"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","names":["ActionExecutionScope","CopilotRequestType","FailedResponseStatusReason","MessageRole","MessageStatusCode","ResponseStatusCode","untruncateJson"]}
|
package/dist/index.mjs
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import "./chunk-7ECCT6PK.mjs";
|
|
2
2
|
import {
|
|
3
3
|
CopilotRuntimeClient
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-2AWTH4O4.mjs";
|
|
5
5
|
import {
|
|
6
6
|
convertGqlOutputToMessages,
|
|
7
7
|
convertMessagesToGqlInput,
|
|
8
8
|
filterAdjacentAgentStateMessages,
|
|
9
9
|
filterAgentStateMessages
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-FG2ZWCDK.mjs";
|
|
11
11
|
import {
|
|
12
12
|
ActionExecutionMessage,
|
|
13
13
|
AgentStateMessage,
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
ResultMessage,
|
|
16
16
|
Role,
|
|
17
17
|
TextMessage
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-2SX4BZNM.mjs";
|
|
19
19
|
import "./chunk-2G5YL4FF.mjs";
|
|
20
20
|
import {
|
|
21
21
|
ActionExecutionScope,
|
package/package.json
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"publishConfig": {
|
|
10
10
|
"access": "public"
|
|
11
11
|
},
|
|
12
|
-
"version": "1.3.
|
|
12
|
+
"version": "1.3.8-fix-memoize-chat-ui-context.0",
|
|
13
13
|
"sideEffects": false,
|
|
14
14
|
"main": "./dist/index.js",
|
|
15
15
|
"module": "./dist/index.mjs",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"types": "./dist/index.d.ts",
|
|
24
24
|
"license": "MIT",
|
|
25
25
|
"peerDependencies": {
|
|
26
|
-
"react": "^18.
|
|
26
|
+
"react": "^18 || ^19 || ^19.0.0-rc"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"@graphql-codegen/cli": "^5.0.2",
|
|
@@ -51,8 +51,8 @@
|
|
|
51
51
|
"untruncate-json": "^0.0.1",
|
|
52
52
|
"urql": "^4.1.0",
|
|
53
53
|
"wonka": "^6.3.4",
|
|
54
|
-
"@copilotkit/runtime": "1.3.
|
|
55
|
-
"@copilotkit/shared": "1.3.
|
|
54
|
+
"@copilotkit/runtime": "1.3.8-fix-memoize-chat-ui-context.0",
|
|
55
|
+
"@copilotkit/shared": "1.3.8-fix-memoize-chat-ui-context.0"
|
|
56
56
|
},
|
|
57
57
|
"keywords": [
|
|
58
58
|
"copilotkit",
|
package/src/client/conversion.ts
CHANGED
|
@@ -14,12 +14,12 @@ import {
|
|
|
14
14
|
import untruncateJson from "untruncate-json";
|
|
15
15
|
|
|
16
16
|
export function filterAgentStateMessages(messages: Message[]): Message[] {
|
|
17
|
-
return messages.filter((message) => !(
|
|
17
|
+
return messages.filter((message) => !message.isAgentStateMessage());
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
export function convertMessagesToGqlInput(messages: Message[]): MessageInput[] {
|
|
21
21
|
return messages.map((message) => {
|
|
22
|
-
if (message
|
|
22
|
+
if (message.isTextMessage()) {
|
|
23
23
|
return {
|
|
24
24
|
id: message.id,
|
|
25
25
|
createdAt: message.createdAt,
|
|
@@ -28,7 +28,7 @@ export function convertMessagesToGqlInput(messages: Message[]): MessageInput[] {
|
|
|
28
28
|
role: message.role as any,
|
|
29
29
|
},
|
|
30
30
|
};
|
|
31
|
-
} else if (message
|
|
31
|
+
} else if (message.isActionExecutionMessage()) {
|
|
32
32
|
return {
|
|
33
33
|
id: message.id,
|
|
34
34
|
createdAt: message.createdAt,
|
|
@@ -38,7 +38,7 @@ export function convertMessagesToGqlInput(messages: Message[]): MessageInput[] {
|
|
|
38
38
|
scope: message.scope as any,
|
|
39
39
|
},
|
|
40
40
|
};
|
|
41
|
-
} else if (message
|
|
41
|
+
} else if (message.isResultMessage()) {
|
|
42
42
|
return {
|
|
43
43
|
id: message.id,
|
|
44
44
|
createdAt: message.createdAt,
|
|
@@ -48,7 +48,7 @@ export function convertMessagesToGqlInput(messages: Message[]): MessageInput[] {
|
|
|
48
48
|
actionName: message.actionName,
|
|
49
49
|
},
|
|
50
50
|
};
|
|
51
|
-
} else if (message
|
|
51
|
+
} else if (message.isAgentStateMessage()) {
|
|
52
52
|
return {
|
|
53
53
|
id: message.id,
|
|
54
54
|
createdAt: message.createdAt,
|
package/src/client/types.ts
CHANGED
|
@@ -10,7 +10,10 @@ import {
|
|
|
10
10
|
MessageStatusCode,
|
|
11
11
|
} from "../graphql/@generated/graphql";
|
|
12
12
|
|
|
13
|
+
type MessageType = "TextMessage" | "ActionExecutionMessage" | "ResultMessage" | "AgentStateMessage";
|
|
14
|
+
|
|
13
15
|
export class Message {
|
|
16
|
+
type: MessageType;
|
|
14
17
|
id: BaseMessageOutput["id"];
|
|
15
18
|
createdAt: BaseMessageOutput["createdAt"];
|
|
16
19
|
status: MessageStatus;
|
|
@@ -21,6 +24,22 @@ export class Message {
|
|
|
21
24
|
props.createdAt ??= new Date();
|
|
22
25
|
Object.assign(this, props);
|
|
23
26
|
}
|
|
27
|
+
|
|
28
|
+
isTextMessage(): this is TextMessage {
|
|
29
|
+
return this.type === "TextMessage";
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
isActionExecutionMessage(): this is ActionExecutionMessage {
|
|
33
|
+
return this.type === "ActionExecutionMessage";
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
isResultMessage(): this is ResultMessage {
|
|
37
|
+
return this.type === "ResultMessage";
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
isAgentStateMessage(): this is AgentStateMessage {
|
|
41
|
+
return this.type === "AgentStateMessage";
|
|
42
|
+
}
|
|
24
43
|
}
|
|
25
44
|
|
|
26
45
|
// alias Role to MessageRole
|
|
@@ -37,6 +56,7 @@ export class TextMessage extends Message implements TextMessageConstructorOption
|
|
|
37
56
|
|
|
38
57
|
constructor(props: TextMessageConstructorOptions) {
|
|
39
58
|
super(props);
|
|
59
|
+
this.type = "TextMessage";
|
|
40
60
|
}
|
|
41
61
|
}
|
|
42
62
|
|
|
@@ -55,6 +75,7 @@ export class ActionExecutionMessage
|
|
|
55
75
|
|
|
56
76
|
constructor(props: ActionExecutionMessageConstructorOptions) {
|
|
57
77
|
super(props);
|
|
78
|
+
this.type = "ActionExecutionMessage";
|
|
58
79
|
}
|
|
59
80
|
}
|
|
60
81
|
|
|
@@ -67,6 +88,7 @@ export class ResultMessage extends Message implements ResultMessageConstructorOp
|
|
|
67
88
|
|
|
68
89
|
constructor(props: ResultMessageConstructorOptions) {
|
|
69
90
|
super(props);
|
|
91
|
+
this.type = "ResultMessage";
|
|
70
92
|
}
|
|
71
93
|
|
|
72
94
|
static decodeResult(result: string): any {
|
|
@@ -97,4 +119,9 @@ export class AgentStateMessage extends Message implements Omit<AgentStateMessage
|
|
|
97
119
|
nodeName: AgentStateMessageInput["nodeName"];
|
|
98
120
|
runId: AgentStateMessageInput["runId"];
|
|
99
121
|
active: AgentStateMessageInput["active"];
|
|
122
|
+
|
|
123
|
+
constructor(props: any) {
|
|
124
|
+
super(props);
|
|
125
|
+
this.type = "AgentStateMessage";
|
|
126
|
+
}
|
|
100
127
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/client/CopilotRuntimeClient.ts","../package.json"],"sourcesContent":["import { Client, cacheExchange, fetchExchange } from \"@urql/core\";\nimport * as packageJson from \"../../package.json\";\n\nimport {\n GenerateCopilotResponseMutation,\n GenerateCopilotResponseMutationVariables,\n} from \"../graphql/@generated/graphql\";\nimport { generateCopilotResponseMutation } from \"../graphql/definitions/mutations\";\nimport { OperationResultSource, OperationResult } from \"urql\";\n\ninterface CopilotRuntimeClientOptions {\n url: string;\n publicApiKey?: string;\n headers?: Record<string, string>;\n credentials?: RequestCredentials;\n}\n\nexport class CopilotRuntimeClient {\n client: Client;\n\n constructor(options: CopilotRuntimeClientOptions) {\n const headers: Record<string, string> = {};\n\n if (options.headers) {\n Object.assign(headers, options.headers);\n }\n\n if (options.publicApiKey) {\n headers[\"x-copilotcloud-public-api-key\"] = options.publicApiKey;\n }\n\n this.client = new Client({\n url: options.url,\n exchanges: [cacheExchange, fetchExchange],\n fetchOptions: {\n headers: {\n ...headers,\n \"X-CopilotKit-Runtime-Client-GQL-Version\": packageJson.version,\n },\n ...(options.credentials ? { credentials: options.credentials } : {}),\n },\n });\n }\n\n generateCopilotResponse({\n data,\n properties,\n signal,\n }: {\n data: GenerateCopilotResponseMutationVariables[\"data\"];\n properties?: GenerateCopilotResponseMutationVariables[\"properties\"];\n signal?: AbortSignal;\n }) {\n const result = this.client.mutation<\n GenerateCopilotResponseMutation,\n GenerateCopilotResponseMutationVariables\n >(\n generateCopilotResponseMutation,\n { data, properties },\n { fetch: (url, opts) => fetch(url, { ...opts, signal }) },\n );\n\n return result;\n }\n\n static asStream<S, T>(source: OperationResultSource<OperationResult<S, { data: T }>>) {\n return new ReadableStream<S>({\n start(controller) {\n source.subscribe(({ data, hasNext }) => {\n controller.enqueue(data);\n if (!hasNext) {\n controller.close();\n }\n });\n },\n });\n }\n}\n","{\n \"name\": \"@copilotkit/runtime-client-gql\",\n \"private\": false,\n \"homepage\": \"https://github.com/CopilotKit/CopilotKit\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/CopilotKit/CopilotKit.git\"\n },\n \"publishConfig\": {\n \"access\": \"public\"\n },\n \"version\": \"1.3.7-fix-chat-interactions-rerenders.0\",\n \"sideEffects\": false,\n \"main\": \"./dist/index.js\",\n \"module\": \"./dist/index.mjs\",\n \"exports\": {\n \".\": {\n \"import\": \"./dist/index.mjs\",\n \"require\": \"./dist/index.js\",\n \"types\": \"./dist/index.d.ts\"\n }\n },\n \"types\": \"./dist/index.d.ts\",\n \"license\": \"MIT\",\n \"scripts\": {\n \"build\": \"tsup --clean\",\n \"dev\": \"tsup --watch --no-splitting\",\n \"test\": \"jest --passWithNoTests\",\n \"check-types\": \"tsc --noEmit\",\n \"clean\": \"rm -rf .turbo && rm -rf node_modules && rm -rf dist && rm -rf .next\",\n \"graphql-codegen\": \"graphql-codegen\",\n \"graphql-codegen:watch\": \"graphql-codegen --watch\",\n \"link:global\": \"pnpm link --global\",\n \"unlink:global\": \"pnpm unlink --global\"\n },\n \"peerDependencies\": {\n \"react\": \"^18.2.0\"\n },\n \"devDependencies\": {\n \"@graphql-codegen/cli\": \"^5.0.2\",\n \"@graphql-codegen/client-preset\": \"^4.2.6\",\n \"@graphql-codegen/introspection\": \"^4.0.3\",\n \"@graphql-codegen/typescript\": \"^4.0.7\",\n \"@graphql-codegen/typescript-operations\": \"^4.2.1\",\n \"@graphql-codegen/typescript-urql\": \"^4.0.0\",\n \"@graphql-codegen/urql-introspection\": \"^3.0.0\",\n \"@graphql-typed-document-node/core\": \"^3.2.0\",\n \"@parcel/watcher\": \"^2.4.1\",\n \"@types/node\": \"^20.12.12\",\n \"esbuild\": \"^0.23.0\",\n \"jest\": \"^29.6.4\",\n \"ts-jest\": \"^29.1.1\",\n \"ts-node\": \"^10.9.2\",\n \"tsup\": \"^6.7.0\",\n \"typescript\": \"^5.4.5\"\n },\n \"dependencies\": {\n \"@copilotkit/runtime\": \"workspace:*\",\n \"@copilotkit/shared\": \"workspace:*\",\n \"@urql/core\": \"^5.0.3\",\n \"class-transformer\": \"^0.5.1\",\n \"class-validator\": \"^0.14.1\",\n \"graphql\": \"^16.8.1\",\n \"untruncate-json\": \"^0.0.1\",\n \"urql\": \"^4.1.0\",\n \"wonka\": \"^6.3.4\"\n },\n \"keywords\": [\n \"copilotkit\",\n \"copilot\",\n \"react\",\n \"nextjs\",\n \"nodejs\",\n \"ai\",\n \"assistant\",\n \"javascript\",\n \"automation\",\n \"textarea\"\n ]\n}\n"],"mappings":";;;;;AAAA,SAAS,QAAQ,eAAe,qBAAqB;;;ACWnD,cAAW;;;ADMN,IAAM,uBAAN,MAA2B;AAAA,EAGhC,YAAY,SAAsC;AAChD,UAAM,UAAkC,CAAC;AAEzC,QAAI,QAAQ,SAAS;AACnB,aAAO,OAAO,SAAS,QAAQ,OAAO;AAAA,IACxC;AAEA,QAAI,QAAQ,cAAc;AACxB,cAAQ,+BAA+B,IAAI,QAAQ;AAAA,IACrD;AAEA,SAAK,SAAS,IAAI,OAAO;AAAA,MACvB,KAAK,QAAQ;AAAA,MACb,WAAW,CAAC,eAAe,aAAa;AAAA,MACxC,cAAc;AAAA,QACZ,SAAS;AAAA,UACP,GAAG;AAAA,UACH,2CAAuD;AAAA,QACzD;AAAA,QACA,GAAI,QAAQ,cAAc,EAAE,aAAa,QAAQ,YAAY,IAAI,CAAC;AAAA,MACpE;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEA,wBAAwB;AAAA,IACtB;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAIG;AACD,UAAM,SAAS,KAAK,OAAO;AAAA,MAIzB;AAAA,MACA,EAAE,MAAM,WAAW;AAAA,MACnB,EAAE,OAAO,CAAC,KAAK,SAAS,MAAM,KAAK,EAAE,GAAG,MAAM,OAAO,CAAC,EAAE;AAAA,IAC1D;AAEA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,SAAe,QAAgE;AACpF,WAAO,IAAI,eAAkB;AAAA,MAC3B,MAAM,YAAY;AAChB,eAAO,UAAU,CAAC,EAAE,MAAM,QAAQ,MAAM;AACtC,qBAAW,QAAQ,IAAI;AACvB,cAAI,CAAC,SAAS;AACZ,uBAAW,MAAM;AAAA,UACnB;AAAA,QACF,CAAC;AAAA,MACH;AAAA,IACF,CAAC;AAAA,EACH;AACF;","names":[]}
|
|
@@ -1 +0,0 @@
|
|
|
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} from \"./types\";\n\nimport untruncateJson from \"untruncate-json\";\n\nexport function filterAgentStateMessages(messages: Message[]): Message[] {\n return messages.filter((message) => !(message instanceof AgentStateMessage));\n}\n\nexport function convertMessagesToGqlInput(messages: Message[]): MessageInput[] {\n return messages.map((message) => {\n if (message instanceof TextMessage) {\n return {\n id: message.id,\n createdAt: message.createdAt,\n textMessage: {\n content: message.content,\n role: message.role as any,\n },\n };\n } else if (message instanceof ActionExecutionMessage) {\n return {\n id: message.id,\n createdAt: message.createdAt,\n actionExecutionMessage: {\n name: message.name,\n arguments: JSON.stringify(message.arguments),\n scope: message.scope as any,\n },\n };\n } else if (message instanceof ResultMessage) {\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 instanceof AgentStateMessage) {\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 {\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) => m.__typename === \"AgentStateMessageOutput\" && 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 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 scope: message.scope,\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: JSON.parse(message.state),\n createdAt: new Date(),\n });\n }\n\n throw new Error(\"Unknown message type\");\n });\n}\n\nfunction getPartialArguments(args: string[]) {\n try {\n return JSON.parse(untruncateJson(args.join(\"\")));\n } catch (e) {\n return {};\n }\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1 +0,0 @@
|
|
|
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} from \"../graphql/@generated/graphql\";\n\nexport class Message {\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\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 & TextMessageInput;\n\nexport class TextMessage extends Message implements TextMessageConstructorOptions {\n role: TextMessageInput[\"role\"];\n content: TextMessageInput[\"content\"];\n\n constructor(props: TextMessageConstructorOptions) {\n super(props);\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\">\n{\n name: ActionExecutionMessageInput[\"name\"];\n arguments: Record<string, any>;\n scope: ActionExecutionMessageInput[\"scope\"];\n\n constructor(props: ActionExecutionMessageConstructorOptions) {\n super(props);\n }\n}\n\ntype ResultMessageConstructorOptions = MessageConstructorOptions & ResultMessageInput;\n\nexport class ResultMessage extends Message implements ResultMessageConstructorOptions {\n actionExecutionId: ResultMessageInput[\"actionExecutionId\"];\n actionName: ResultMessageInput[\"actionName\"];\n result: ResultMessageInput[\"result\"];\n\n constructor(props: ResultMessageConstructorOptions) {\n super(props);\n }\n\n static decodeResult(result: string): any {\n try {\n return JSON.parse(result);\n } catch (e) {\n return result;\n }\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 extends Message implements Omit<AgentStateMessageInput, \"state\"> {\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"],"mappings":";;;;;AAAA,SAAS,gBAAgB;AAYlB,IAAM,UAAN,MAAc;AAAA,EAKnB,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;AACF;AAGO,IAAM,OAAO;AAOb,IAAM,cAAN,cAA0B,QAAiD;AAAA,EAIhF,YAAY,OAAsC;AAChD,UAAM,KAAK;AAAA,EACb;AACF;AAOO,IAAM,yBAAN,cACG,QAEV;AAAA,EAKE,YAAY,OAAiD;AAC3D,UAAM,KAAK;AAAA,EACb;AACF;AAIO,IAAM,gBAAN,cAA4B,QAAmD;AAAA,EAKpF,YAAY,OAAwC;AAClD,UAAM,KAAK;AAAA,EACb;AAAA,EAEA,OAAO,aAAa,QAAqB;AACvC,QAAI;AACF,aAAO,KAAK,MAAM,MAAM;AAAA,IAC1B,SAAS,GAAP;AACA,aAAO;AAAA,IACT;AAAA,EACF;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,cAAgC,QAAyD;AAShG;","names":[]}
|