@copilotkit/react-core 1.10.5-next.10 → 1.10.5-next.3
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 +0 -52
- package/dist/{chunk-TUTNHDM3.mjs → chunk-23SOG4FI.mjs} +2 -2
- package/dist/{chunk-HDOG2RTM.mjs → chunk-36FJAVOF.mjs} +2 -2
- package/dist/{chunk-GIGUZ2OK.mjs → chunk-4JBVPOHK.mjs} +3 -3
- package/dist/{chunk-3N4MVKFZ.mjs → chunk-667MDI44.mjs} +13 -15
- package/dist/chunk-667MDI44.mjs.map +1 -0
- package/dist/{chunk-IHV5PTID.mjs → chunk-7VVST2XL.mjs} +2 -2
- package/dist/{chunk-HI6SPUOX.mjs → chunk-AR7HJPGU.mjs} +2 -2
- package/dist/{chunk-3WUDRJTT.mjs → chunk-CLQLVMW4.mjs} +2 -2
- package/dist/{chunk-BBUQMG45.mjs → chunk-CXDK6XA5.mjs} +2 -2
- package/dist/{chunk-JBACWIFW.mjs → chunk-FAHEDJFT.mjs} +2 -2
- package/dist/{chunk-ITDKIB5E.mjs → chunk-FIYI7ZK4.mjs} +25 -32
- package/dist/chunk-FIYI7ZK4.mjs.map +1 -0
- package/dist/{chunk-CUWOXXM5.mjs → chunk-G2GQX4FI.mjs} +3 -3
- package/dist/{chunk-7LTRT3IV.mjs → chunk-G5C5THRU.mjs} +4 -4
- package/dist/{chunk-HYJUBYMU.mjs → chunk-KOQSZFJQ.mjs} +5 -5
- package/dist/{chunk-M37URBJS.mjs → chunk-MY2BUA6F.mjs} +2 -2
- package/dist/{chunk-MGWRDFBE.mjs → chunk-MZ37BAAE.mjs} +2 -2
- package/dist/{chunk-ZVOLWJCY.mjs → chunk-QF3Q5LUN.mjs} +5 -5
- package/dist/chunk-QF3Q5LUN.mjs.map +1 -0
- package/dist/{chunk-L5MS4UDD.mjs → chunk-QSXY7DMT.mjs} +5 -11
- package/dist/chunk-QSXY7DMT.mjs.map +1 -0
- package/dist/{chunk-JCHRWCYH.mjs → chunk-SIMMEOMI.mjs} +3 -3
- package/dist/{chunk-EUX2P2E7.mjs → chunk-YHT6CWIY.mjs} +3 -5
- package/dist/{chunk-EUX2P2E7.mjs.map → chunk-YHT6CWIY.mjs.map} +1 -1
- package/dist/components/copilot-provider/copilot-messages.js +2 -4
- package/dist/components/copilot-provider/copilot-messages.js.map +1 -1
- package/dist/components/copilot-provider/copilot-messages.mjs +2 -2
- package/dist/components/copilot-provider/copilotkit-props.d.ts +1 -1
- package/dist/components/copilot-provider/copilotkit.d.ts +1 -1
- package/dist/components/copilot-provider/copilotkit.js +21 -30
- package/dist/components/copilot-provider/copilotkit.js.map +1 -1
- package/dist/components/copilot-provider/copilotkit.mjs +5 -5
- package/dist/components/copilot-provider/index.d.ts +1 -1
- package/dist/components/copilot-provider/index.js +21 -30
- package/dist/components/copilot-provider/index.js.map +1 -1
- package/dist/components/copilot-provider/index.mjs +5 -5
- package/dist/components/dev-console/console-trigger.js +2 -4
- package/dist/components/dev-console/console-trigger.js.map +1 -1
- package/dist/components/dev-console/console-trigger.mjs +3 -3
- package/dist/components/dev-console/developer-console-modal.js +2 -4
- package/dist/components/dev-console/developer-console-modal.js.map +1 -1
- package/dist/components/dev-console/developer-console-modal.mjs +2 -2
- package/dist/components/index.d.ts +1 -1
- package/dist/components/index.js +21 -30
- package/dist/components/index.js.map +1 -1
- package/dist/components/index.mjs +5 -5
- package/dist/context/copilot-context.d.ts +1 -1
- package/dist/context/copilot-context.js +2 -4
- package/dist/context/copilot-context.js.map +1 -1
- package/dist/context/copilot-context.mjs +1 -1
- package/dist/context/copilot-messages-context.d.ts +2 -2
- package/dist/context/index.d.ts +2 -2
- package/dist/context/index.js +2 -4
- package/dist/context/index.js.map +1 -1
- package/dist/context/index.mjs +1 -1
- package/dist/{copilot-context-cf9de848.d.ts → copilot-context-59740e82.d.ts} +2 -2
- package/dist/hooks/index.d.ts +2 -2
- package/dist/hooks/index.js +18 -28
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/index.mjs +18 -18
- package/dist/hooks/use-chat.d.ts +1 -1
- package/dist/hooks/use-chat.js +13 -17
- package/dist/hooks/use-chat.js.map +1 -1
- package/dist/hooks/use-chat.mjs +2 -2
- package/dist/hooks/use-coagent-state-render.js +2 -4
- package/dist/hooks/use-coagent-state-render.js.map +1 -1
- package/dist/hooks/use-coagent-state-render.mjs +2 -2
- package/dist/hooks/use-coagent.d.ts +1 -1
- package/dist/hooks/use-coagent.js +16 -20
- package/dist/hooks/use-coagent.js.map +1 -1
- package/dist/hooks/use-coagent.mjs +9 -9
- package/dist/hooks/use-copilot-action.js +2 -4
- package/dist/hooks/use-copilot-action.js.map +1 -1
- package/dist/hooks/use-copilot-action.mjs +2 -2
- package/dist/hooks/use-copilot-additional-instructions.js +2 -4
- package/dist/hooks/use-copilot-additional-instructions.js.map +1 -1
- package/dist/hooks/use-copilot-additional-instructions.mjs +2 -2
- package/dist/hooks/use-copilot-authenticated-action.js +2 -4
- package/dist/hooks/use-copilot-authenticated-action.js.map +1 -1
- package/dist/hooks/use-copilot-authenticated-action.mjs +3 -3
- package/dist/hooks/use-copilot-chat-headless_c.d.ts +2 -2
- package/dist/hooks/use-copilot-chat-headless_c.js +16 -20
- package/dist/hooks/use-copilot-chat-headless_c.js.map +1 -1
- package/dist/hooks/use-copilot-chat-headless_c.mjs +9 -9
- package/dist/hooks/use-copilot-chat.d.ts +2 -2
- package/dist/hooks/use-copilot-chat.js +16 -20
- package/dist/hooks/use-copilot-chat.js.map +1 -1
- package/dist/hooks/use-copilot-chat.mjs +9 -9
- package/dist/hooks/use-copilot-chat_internal.d.ts +2 -2
- package/dist/hooks/use-copilot-chat_internal.js +16 -20
- package/dist/hooks/use-copilot-chat_internal.js.map +1 -1
- package/dist/hooks/use-copilot-chat_internal.mjs +8 -8
- package/dist/hooks/use-copilot-readable.js +2 -4
- package/dist/hooks/use-copilot-readable.js.map +1 -1
- package/dist/hooks/use-copilot-readable.mjs +2 -2
- package/dist/hooks/use-langgraph-interrupt-render.js +5 -7
- package/dist/hooks/use-langgraph-interrupt-render.js.map +1 -1
- package/dist/hooks/use-langgraph-interrupt-render.mjs +2 -2
- package/dist/hooks/use-langgraph-interrupt.d.ts +1 -1
- package/dist/hooks/use-langgraph-interrupt.js +18 -28
- package/dist/hooks/use-langgraph-interrupt.js.map +1 -1
- package/dist/hooks/use-langgraph-interrupt.mjs +9 -9
- package/dist/hooks/use-make-copilot-document-readable.js +2 -4
- package/dist/hooks/use-make-copilot-document-readable.js.map +1 -1
- package/dist/hooks/use-make-copilot-document-readable.mjs +2 -2
- package/dist/{index-1f5b66ac.d.ts → index-d1743abe.d.ts} +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +37 -54
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +19 -19
- package/dist/lib/copilot-task.d.ts +1 -1
- package/dist/lib/copilot-task.js.map +1 -1
- package/dist/lib/copilot-task.mjs +6 -6
- package/dist/lib/index.d.ts +1 -1
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/index.mjs +6 -6
- package/dist/types/interrupt-action.d.ts +1 -1
- package/dist/types/interrupt-action.js.map +1 -1
- package/dist/utils/extract.d.ts +2 -2
- package/dist/utils/extract.js.map +1 -1
- package/dist/utils/extract.mjs +5 -5
- package/dist/utils/index.d.ts +2 -2
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/index.mjs +5 -5
- package/dist/utils/suggestions.d.ts +2 -2
- package/dist/utils/suggestions.js.map +1 -1
- package/dist/utils/suggestions.mjs +5 -5
- package/package.json +3 -3
- package/src/components/copilot-provider/copilotkit.tsx +17 -27
- package/src/context/copilot-context.tsx +3 -3
- package/src/hooks/use-chat.ts +7 -9
- package/src/hooks/use-langgraph-interrupt-render.ts +3 -4
- package/src/hooks/use-langgraph-interrupt.ts +3 -8
- package/src/types/interrupt-action.ts +1 -4
- package/dist/chunk-3N4MVKFZ.mjs.map +0 -1
- package/dist/chunk-ITDKIB5E.mjs.map +0 -1
- package/dist/chunk-L5MS4UDD.mjs.map +0 -1
- package/dist/chunk-ZVOLWJCY.mjs.map +0 -1
- /package/dist/{chunk-TUTNHDM3.mjs.map → chunk-23SOG4FI.mjs.map} +0 -0
- /package/dist/{chunk-HDOG2RTM.mjs.map → chunk-36FJAVOF.mjs.map} +0 -0
- /package/dist/{chunk-GIGUZ2OK.mjs.map → chunk-4JBVPOHK.mjs.map} +0 -0
- /package/dist/{chunk-IHV5PTID.mjs.map → chunk-7VVST2XL.mjs.map} +0 -0
- /package/dist/{chunk-HI6SPUOX.mjs.map → chunk-AR7HJPGU.mjs.map} +0 -0
- /package/dist/{chunk-3WUDRJTT.mjs.map → chunk-CLQLVMW4.mjs.map} +0 -0
- /package/dist/{chunk-BBUQMG45.mjs.map → chunk-CXDK6XA5.mjs.map} +0 -0
- /package/dist/{chunk-JBACWIFW.mjs.map → chunk-FAHEDJFT.mjs.map} +0 -0
- /package/dist/{chunk-CUWOXXM5.mjs.map → chunk-G2GQX4FI.mjs.map} +0 -0
- /package/dist/{chunk-7LTRT3IV.mjs.map → chunk-G5C5THRU.mjs.map} +0 -0
- /package/dist/{chunk-HYJUBYMU.mjs.map → chunk-KOQSZFJQ.mjs.map} +0 -0
- /package/dist/{chunk-M37URBJS.mjs.map → chunk-MY2BUA6F.mjs.map} +0 -0
- /package/dist/{chunk-MGWRDFBE.mjs.map → chunk-MZ37BAAE.mjs.map} +0 -0
- /package/dist/{chunk-JCHRWCYH.mjs.map → chunk-SIMMEOMI.mjs.map} +0 -0
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
import {
|
|
2
2
|
useLangGraphInterrupt
|
|
3
|
-
} from "../chunk-
|
|
4
|
-
import "../chunk-
|
|
5
|
-
import "../chunk-
|
|
3
|
+
} from "../chunk-QSXY7DMT.mjs";
|
|
4
|
+
import "../chunk-KOQSZFJQ.mjs";
|
|
5
|
+
import "../chunk-QF3Q5LUN.mjs";
|
|
6
6
|
import "../chunk-YPSGKPDA.mjs";
|
|
7
|
-
import "../chunk-
|
|
7
|
+
import "../chunk-FIYI7ZK4.mjs";
|
|
8
8
|
import "../chunk-L3I57GMV.mjs";
|
|
9
|
-
import "../chunk-
|
|
10
|
-
import "../chunk-
|
|
11
|
-
import "../chunk-TUTNHDM3.mjs";
|
|
9
|
+
import "../chunk-G2GQX4FI.mjs";
|
|
10
|
+
import "../chunk-23SOG4FI.mjs";
|
|
12
11
|
import "../chunk-PIF5KJYI.mjs";
|
|
12
|
+
import "../chunk-MY2BUA6F.mjs";
|
|
13
13
|
import "../chunk-2IDV5OHF.mjs";
|
|
14
14
|
import "../chunk-PMAFHQ7P.mjs";
|
|
15
15
|
import "../chunk-5FHSUKQL.mjs";
|
|
16
16
|
import "../chunk-RKTVJRK7.mjs";
|
|
17
17
|
import "../chunk-ZLQVRPDS.mjs";
|
|
18
18
|
import "../chunk-6ZLPNY7X.mjs";
|
|
19
|
-
import "../chunk-
|
|
19
|
+
import "../chunk-667MDI44.mjs";
|
|
20
20
|
import "../chunk-4CEQJ2X6.mjs";
|
|
21
21
|
import "../chunk-N4WEHORG.mjs";
|
|
22
22
|
import "../chunk-O7ARI5CV.mjs";
|
|
23
23
|
import "../chunk-Q3MCVRO3.mjs";
|
|
24
24
|
import "../chunk-ICIK2BSB.mjs";
|
|
25
|
-
import "../chunk-
|
|
25
|
+
import "../chunk-YHT6CWIY.mjs";
|
|
26
26
|
import "../chunk-EFL5OBKN.mjs";
|
|
27
27
|
import "../chunk-SKC7AJIV.mjs";
|
|
28
28
|
export {
|
|
@@ -127,10 +127,8 @@ var emptyCopilotContext = {
|
|
|
127
127
|
setExtensions: () => {
|
|
128
128
|
},
|
|
129
129
|
langGraphInterruptAction: null,
|
|
130
|
-
setLangGraphInterruptAction: () =>
|
|
131
|
-
|
|
132
|
-
removeLangGraphInterruptAction: () => {
|
|
133
|
-
},
|
|
130
|
+
setLangGraphInterruptAction: () => null,
|
|
131
|
+
removeLangGraphInterruptAction: () => null,
|
|
134
132
|
onError: () => {
|
|
135
133
|
},
|
|
136
134
|
bannerError: null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/hooks/use-make-copilot-document-readable.ts","../../src/context/copilot-context.tsx"],"sourcesContent":["import { useEffect, useRef } from \"react\";\nimport { useCopilotContext } from \"../context/copilot-context\";\nimport { DocumentPointer } from \"../types\";\n\n/**\n * Makes a document readable by Copilot.\n * @param document The document to make readable.\n * @param categories The categories to associate with the document.\n * @param dependencies The dependencies to use for the effect.\n * @returns The id of the document.\n */\nexport function useMakeCopilotDocumentReadable(\n document: DocumentPointer,\n categories?: string[],\n dependencies: any[] = [],\n): string | undefined {\n const { addDocumentContext, removeDocumentContext } = useCopilotContext();\n const idRef = useRef<string>();\n\n useEffect(() => {\n const id = addDocumentContext(document, categories);\n idRef.current = id;\n\n return () => {\n removeDocumentContext(id);\n };\n }, [addDocumentContext, removeDocumentContext, ...dependencies]);\n\n return idRef.current;\n}\n","import {\n CopilotCloudConfig,\n FunctionCallHandler,\n CopilotErrorHandler,\n CopilotKitError,\n} from \"@copilotkit/shared\";\nimport {\n ActionRenderProps,\n CatchAllActionRenderProps,\n FrontendAction,\n} from \"../types/frontend-action\";\nimport React from \"react\";\nimport { TreeNodeId, Tree } from \"../hooks/use-tree\";\nimport { DocumentPointer } from \"../types\";\nimport { CopilotChatSuggestionConfiguration } from \"../types/chat-suggestion-configuration\";\nimport { CoAgentStateRender, CoAgentStateRenderProps } from \"../types/coagent-action\";\nimport { CoagentState } from \"../types/coagent-state\";\nimport {\n CopilotRuntimeClient,\n ExtensionsInput,\n ForwardedParametersInput,\n} from \"@copilotkit/runtime-client-gql\";\nimport { Agent } from \"@copilotkit/runtime-client-gql\";\nimport {\n LangGraphInterruptAction,\n LangGraphInterruptActionSetter,\n} from \"../types/interrupt-action\";\nimport { SuggestionItem } from \"../utils/suggestions\";\n\n/**\n * Interface for the configuration of the Copilot API.\n */\nexport interface CopilotApiConfig {\n /**\n * The public API key for Copilot Cloud.\n */\n publicApiKey?: string;\n\n /**\n * The configuration for Copilot Cloud.\n */\n cloud?: CopilotCloudConfig;\n\n /**\n * The endpoint for the chat API.\n */\n chatApiEndpoint: string;\n\n /**\n * The endpoint for the Copilot transcribe audio service.\n */\n transcribeAudioUrl?: string;\n\n /**\n * The endpoint for the Copilot text to speech service.\n */\n textToSpeechUrl?: string;\n\n /**\n * additional headers to be sent with the request\n * @default {}\n * @example\n * ```\n * {\n * 'Authorization': 'Bearer your_token_here'\n * }\n * ```\n */\n headers: Record<string, string>;\n\n /**\n * Custom properties to be sent with the request\n * @default {}\n * @example\n * ```\n * {\n * 'user_id': 'user_id'\n * }\n * ```\n */\n properties?: Record<string, any>;\n\n /**\n * Indicates whether the user agent should send or receive cookies from the other domain\n * in the case of cross-origin requests.\n */\n credentials?: RequestCredentials;\n\n /**\n * Optional configuration for connecting to Model Context Protocol (MCP) servers.\n * This is typically derived from the CopilotKitProps and used internally.\n * @experimental\n */\n mcpServers?: Array<{ endpoint: string; apiKey?: string }>;\n}\n\nexport type InChatRenderFunction<TProps = ActionRenderProps<any> | CatchAllActionRenderProps<any>> =\n (props: TProps) => string | JSX.Element;\nexport type CoagentInChatRenderFunction = (\n props: CoAgentStateRenderProps<any>,\n) => string | JSX.Element | undefined | null;\n\nexport interface ChatComponentsCache {\n actions: Record<string, InChatRenderFunction | string>;\n coAgentStateRenders: Record<string, CoagentInChatRenderFunction | string>;\n}\n\nexport interface AgentSession {\n agentName: string;\n threadId?: string;\n nodeName?: string;\n}\n\nexport interface AuthState {\n status: \"authenticated\" | \"unauthenticated\";\n authHeaders: Record<string, string>;\n userId?: string;\n metadata?: Record<string, any>;\n}\n\nexport type ActionName = string;\nexport type ContextTree = Tree;\n\nexport interface CopilotContextParams {\n // function-calling\n actions: Record<string, FrontendAction<any>>;\n setAction: (id: string, action: FrontendAction<any>) => void;\n removeAction: (id: string) => void;\n\n // coagent actions\n coAgentStateRenders: Record<string, CoAgentStateRender<any>>;\n setCoAgentStateRender: (id: string, stateRender: CoAgentStateRender<any>) => void;\n removeCoAgentStateRender: (id: string) => void;\n\n chatComponentsCache: React.RefObject<ChatComponentsCache>;\n\n getFunctionCallHandler: (\n customEntryPoints?: Record<string, FrontendAction<any>>,\n ) => FunctionCallHandler;\n\n // text context\n addContext: (context: string, parentId?: string, categories?: string[]) => TreeNodeId;\n removeContext: (id: TreeNodeId) => void;\n getAllContext: () => Tree;\n getContextString: (documents: DocumentPointer[], categories: string[]) => string;\n\n // document context\n addDocumentContext: (documentPointer: DocumentPointer, categories?: string[]) => TreeNodeId;\n removeDocumentContext: (documentId: string) => void;\n getDocumentsContext: (categories: string[]) => DocumentPointer[];\n\n isLoading: boolean;\n setIsLoading: React.Dispatch<React.SetStateAction<boolean>>;\n\n chatSuggestionConfiguration: { [key: string]: CopilotChatSuggestionConfiguration };\n addChatSuggestionConfiguration: (\n id: string,\n suggestion: CopilotChatSuggestionConfiguration,\n ) => void;\n removeChatSuggestionConfiguration: (id: string) => void;\n\n chatInstructions: string;\n setChatInstructions: React.Dispatch<React.SetStateAction<string>>;\n\n additionalInstructions?: string[];\n setAdditionalInstructions: React.Dispatch<React.SetStateAction<string[]>>;\n\n // api endpoints\n copilotApiConfig: CopilotApiConfig;\n\n showDevConsole: boolean;\n\n // agents\n coagentStates: Record<string, CoagentState>;\n setCoagentStates: React.Dispatch<React.SetStateAction<Record<string, CoagentState>>>;\n coagentStatesRef: React.RefObject<Record<string, CoagentState>>;\n setCoagentStatesWithRef: (\n value:\n | Record<string, CoagentState>\n | ((prev: Record<string, CoagentState>) => Record<string, CoagentState>),\n ) => void;\n\n agentSession: AgentSession | null;\n setAgentSession: React.Dispatch<React.SetStateAction<AgentSession | null>>;\n\n agentLock: string | null;\n\n threadId: string;\n setThreadId: React.Dispatch<React.SetStateAction<string>>;\n\n runId: string | null;\n setRunId: React.Dispatch<React.SetStateAction<string | null>>;\n\n // The chat abort controller can be used to stop generation globally,\n // i.e. when using `stop()` from `useChat`\n chatAbortControllerRef: React.MutableRefObject<AbortController | null>;\n\n // runtime\n runtimeClient: CopilotRuntimeClient;\n\n /**\n * The forwarded parameters to use for the task.\n */\n forwardedParameters?: Partial<Pick<ForwardedParametersInput, \"temperature\">>;\n availableAgents: Agent[];\n\n /**\n * The auth states for the CopilotKit.\n */\n authStates_c?: Record<ActionName, AuthState>;\n setAuthStates_c?: React.Dispatch<React.SetStateAction<Record<ActionName, AuthState>>>;\n\n /**\n * The auth config for the CopilotKit.\n */\n authConfig_c?: {\n SignInComponent: React.ComponentType<{\n onSignInComplete: (authState: AuthState) => void;\n }>;\n };\n\n extensions: ExtensionsInput;\n setExtensions: React.Dispatch<React.SetStateAction<ExtensionsInput>>;\n langGraphInterruptAction: LangGraphInterruptAction | null;\n setLangGraphInterruptAction: LangGraphInterruptActionSetter;\n removeLangGraphInterruptAction: (threadId: string) => void;\n\n /**\n * Optional trace handler for comprehensive debugging and observability.\n */\n onError: CopilotErrorHandler;\n\n // banner error state\n bannerError: CopilotKitError | null;\n setBannerError: React.Dispatch<React.SetStateAction<CopilotKitError | null>>;\n // Internal error handlers\n // These are used to handle errors that occur during the execution of the chat.\n // They are not intended for use by the developer. A component can register itself an error listener to be activated somewhere else as needed\n internalErrorHandlers: Record<string, CopilotErrorHandler>;\n setInternalErrorHandler: (handler: Record<string, CopilotErrorHandler>) => void;\n removeInternalErrorHandler: (id: string) => void;\n}\n\nconst emptyCopilotContext: CopilotContextParams = {\n actions: {},\n setAction: () => {},\n removeAction: () => {},\n\n coAgentStateRenders: {},\n setCoAgentStateRender: () => {},\n removeCoAgentStateRender: () => {},\n\n chatComponentsCache: { current: { actions: {}, coAgentStateRenders: {} } },\n getContextString: (documents: DocumentPointer[], categories: string[]) =>\n returnAndThrowInDebug(\"\"),\n addContext: () => \"\",\n removeContext: () => {},\n getAllContext: () => [],\n\n getFunctionCallHandler: () => returnAndThrowInDebug(async () => {}),\n\n isLoading: false,\n setIsLoading: () => returnAndThrowInDebug(false),\n\n chatInstructions: \"\",\n setChatInstructions: () => returnAndThrowInDebug(\"\"),\n\n additionalInstructions: [],\n setAdditionalInstructions: () => returnAndThrowInDebug([]),\n\n getDocumentsContext: (categories: string[]) => returnAndThrowInDebug([]),\n addDocumentContext: () => returnAndThrowInDebug(\"\"),\n removeDocumentContext: () => {},\n runtimeClient: {} as any,\n\n copilotApiConfig: new (class implements CopilotApiConfig {\n get chatApiEndpoint(): string {\n throw new Error(\"Remember to wrap your app in a `<CopilotKit> {...} </CopilotKit>` !!!\");\n }\n\n get headers(): Record<string, string> {\n return {};\n }\n get body(): Record<string, any> {\n return {};\n }\n })(),\n\n chatSuggestionConfiguration: {},\n addChatSuggestionConfiguration: () => {},\n removeChatSuggestionConfiguration: () => {},\n showDevConsole: false,\n coagentStates: {},\n setCoagentStates: () => {},\n coagentStatesRef: { current: {} },\n setCoagentStatesWithRef: () => {},\n agentSession: null,\n setAgentSession: () => {},\n forwardedParameters: {},\n agentLock: null,\n threadId: \"\",\n setThreadId: () => {},\n runId: null,\n setRunId: () => {},\n chatAbortControllerRef: { current: null },\n availableAgents: [],\n extensions: {},\n setExtensions: () => {},\n langGraphInterruptAction: null,\n setLangGraphInterruptAction: () => {},\n removeLangGraphInterruptAction: () => {},\n onError: () => {},\n bannerError: null,\n setBannerError: () => {},\n internalErrorHandlers: {},\n setInternalErrorHandler: () => {},\n removeInternalErrorHandler: () => {},\n};\n\nexport const CopilotContext = React.createContext<CopilotContextParams>(emptyCopilotContext);\n\nexport function useCopilotContext(): CopilotContextParams {\n const context = React.useContext(CopilotContext);\n if (context === emptyCopilotContext) {\n throw new Error(\"Remember to wrap your app in a `<CopilotKit> {...} </CopilotKit>` !!!\");\n }\n return context;\n}\n\nfunction returnAndThrowInDebug<T>(_value: T): T {\n throw new Error(\"Remember to wrap your app in a `<CopilotKit> {...} </CopilotKit>` !!!\");\n}\n"],"mappings":"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","names":["import_react","React"]}
|
|
1
|
+
{"version":3,"sources":["../../src/hooks/use-make-copilot-document-readable.ts","../../src/context/copilot-context.tsx"],"sourcesContent":["import { useEffect, useRef } from \"react\";\nimport { useCopilotContext } from \"../context/copilot-context\";\nimport { DocumentPointer } from \"../types\";\n\n/**\n * Makes a document readable by Copilot.\n * @param document The document to make readable.\n * @param categories The categories to associate with the document.\n * @param dependencies The dependencies to use for the effect.\n * @returns The id of the document.\n */\nexport function useMakeCopilotDocumentReadable(\n document: DocumentPointer,\n categories?: string[],\n dependencies: any[] = [],\n): string | undefined {\n const { addDocumentContext, removeDocumentContext } = useCopilotContext();\n const idRef = useRef<string>();\n\n useEffect(() => {\n const id = addDocumentContext(document, categories);\n idRef.current = id;\n\n return () => {\n removeDocumentContext(id);\n };\n }, [addDocumentContext, removeDocumentContext, ...dependencies]);\n\n return idRef.current;\n}\n","import {\n CopilotCloudConfig,\n FunctionCallHandler,\n CopilotErrorHandler,\n CopilotKitError,\n} from \"@copilotkit/shared\";\nimport {\n ActionRenderProps,\n CatchAllActionRenderProps,\n FrontendAction,\n} from \"../types/frontend-action\";\nimport React from \"react\";\nimport { TreeNodeId, Tree } from \"../hooks/use-tree\";\nimport { DocumentPointer } from \"../types\";\nimport { CopilotChatSuggestionConfiguration } from \"../types/chat-suggestion-configuration\";\nimport { CoAgentStateRender, CoAgentStateRenderProps } from \"../types/coagent-action\";\nimport { CoagentState } from \"../types/coagent-state\";\nimport {\n CopilotRuntimeClient,\n ExtensionsInput,\n ForwardedParametersInput,\n} from \"@copilotkit/runtime-client-gql\";\nimport { Agent } from \"@copilotkit/runtime-client-gql\";\nimport {\n LangGraphInterruptAction,\n LangGraphInterruptActionSetter,\n} from \"../types/interrupt-action\";\nimport { SuggestionItem } from \"../utils/suggestions\";\n\n/**\n * Interface for the configuration of the Copilot API.\n */\nexport interface CopilotApiConfig {\n /**\n * The public API key for Copilot Cloud.\n */\n publicApiKey?: string;\n\n /**\n * The configuration for Copilot Cloud.\n */\n cloud?: CopilotCloudConfig;\n\n /**\n * The endpoint for the chat API.\n */\n chatApiEndpoint: string;\n\n /**\n * The endpoint for the Copilot transcribe audio service.\n */\n transcribeAudioUrl?: string;\n\n /**\n * The endpoint for the Copilot text to speech service.\n */\n textToSpeechUrl?: string;\n\n /**\n * additional headers to be sent with the request\n * @default {}\n * @example\n * ```\n * {\n * 'Authorization': 'Bearer your_token_here'\n * }\n * ```\n */\n headers: Record<string, string>;\n\n /**\n * Custom properties to be sent with the request\n * @default {}\n * @example\n * ```\n * {\n * 'user_id': 'user_id'\n * }\n * ```\n */\n properties?: Record<string, any>;\n\n /**\n * Indicates whether the user agent should send or receive cookies from the other domain\n * in the case of cross-origin requests.\n */\n credentials?: RequestCredentials;\n\n /**\n * Optional configuration for connecting to Model Context Protocol (MCP) servers.\n * This is typically derived from the CopilotKitProps and used internally.\n * @experimental\n */\n mcpServers?: Array<{ endpoint: string; apiKey?: string }>;\n}\n\nexport type InChatRenderFunction<TProps = ActionRenderProps<any> | CatchAllActionRenderProps<any>> =\n (props: TProps) => string | JSX.Element;\nexport type CoagentInChatRenderFunction = (\n props: CoAgentStateRenderProps<any>,\n) => string | JSX.Element | undefined | null;\n\nexport interface ChatComponentsCache {\n actions: Record<string, InChatRenderFunction | string>;\n coAgentStateRenders: Record<string, CoagentInChatRenderFunction | string>;\n}\n\nexport interface AgentSession {\n agentName: string;\n threadId?: string;\n nodeName?: string;\n}\n\nexport interface AuthState {\n status: \"authenticated\" | \"unauthenticated\";\n authHeaders: Record<string, string>;\n userId?: string;\n metadata?: Record<string, any>;\n}\n\nexport type ActionName = string;\nexport type ContextTree = Tree;\n\nexport interface CopilotContextParams {\n // function-calling\n actions: Record<string, FrontendAction<any>>;\n setAction: (id: string, action: FrontendAction<any>) => void;\n removeAction: (id: string) => void;\n\n // coagent actions\n coAgentStateRenders: Record<string, CoAgentStateRender<any>>;\n setCoAgentStateRender: (id: string, stateRender: CoAgentStateRender<any>) => void;\n removeCoAgentStateRender: (id: string) => void;\n\n chatComponentsCache: React.RefObject<ChatComponentsCache>;\n\n getFunctionCallHandler: (\n customEntryPoints?: Record<string, FrontendAction<any>>,\n ) => FunctionCallHandler;\n\n // text context\n addContext: (context: string, parentId?: string, categories?: string[]) => TreeNodeId;\n removeContext: (id: TreeNodeId) => void;\n getAllContext: () => Tree;\n getContextString: (documents: DocumentPointer[], categories: string[]) => string;\n\n // document context\n addDocumentContext: (documentPointer: DocumentPointer, categories?: string[]) => TreeNodeId;\n removeDocumentContext: (documentId: string) => void;\n getDocumentsContext: (categories: string[]) => DocumentPointer[];\n\n isLoading: boolean;\n setIsLoading: React.Dispatch<React.SetStateAction<boolean>>;\n\n chatSuggestionConfiguration: { [key: string]: CopilotChatSuggestionConfiguration };\n addChatSuggestionConfiguration: (\n id: string,\n suggestion: CopilotChatSuggestionConfiguration,\n ) => void;\n removeChatSuggestionConfiguration: (id: string) => void;\n\n chatInstructions: string;\n setChatInstructions: React.Dispatch<React.SetStateAction<string>>;\n\n additionalInstructions?: string[];\n setAdditionalInstructions: React.Dispatch<React.SetStateAction<string[]>>;\n\n // api endpoints\n copilotApiConfig: CopilotApiConfig;\n\n showDevConsole: boolean;\n\n // agents\n coagentStates: Record<string, CoagentState>;\n setCoagentStates: React.Dispatch<React.SetStateAction<Record<string, CoagentState>>>;\n coagentStatesRef: React.RefObject<Record<string, CoagentState>>;\n setCoagentStatesWithRef: (\n value:\n | Record<string, CoagentState>\n | ((prev: Record<string, CoagentState>) => Record<string, CoagentState>),\n ) => void;\n\n agentSession: AgentSession | null;\n setAgentSession: React.Dispatch<React.SetStateAction<AgentSession | null>>;\n\n agentLock: string | null;\n\n threadId: string;\n setThreadId: React.Dispatch<React.SetStateAction<string>>;\n\n runId: string | null;\n setRunId: React.Dispatch<React.SetStateAction<string | null>>;\n\n // The chat abort controller can be used to stop generation globally,\n // i.e. when using `stop()` from `useChat`\n chatAbortControllerRef: React.MutableRefObject<AbortController | null>;\n\n // runtime\n runtimeClient: CopilotRuntimeClient;\n\n /**\n * The forwarded parameters to use for the task.\n */\n forwardedParameters?: Partial<Pick<ForwardedParametersInput, \"temperature\">>;\n availableAgents: Agent[];\n\n /**\n * The auth states for the CopilotKit.\n */\n authStates_c?: Record<ActionName, AuthState>;\n setAuthStates_c?: React.Dispatch<React.SetStateAction<Record<ActionName, AuthState>>>;\n\n /**\n * The auth config for the CopilotKit.\n */\n authConfig_c?: {\n SignInComponent: React.ComponentType<{\n onSignInComplete: (authState: AuthState) => void;\n }>;\n };\n\n extensions: ExtensionsInput;\n setExtensions: React.Dispatch<React.SetStateAction<ExtensionsInput>>;\n langGraphInterruptAction: LangGraphInterruptAction | null;\n setLangGraphInterruptAction: LangGraphInterruptActionSetter;\n removeLangGraphInterruptAction: () => void;\n\n /**\n * Optional trace handler for comprehensive debugging and observability.\n */\n onError: CopilotErrorHandler;\n\n // banner error state\n bannerError: CopilotKitError | null;\n setBannerError: React.Dispatch<React.SetStateAction<CopilotKitError | null>>;\n // Internal error handlers\n // These are used to handle errors that occur during the execution of the chat.\n // They are not intended for use by the developer. A component can register itself an error listener to be activated somewhere else as needed\n internalErrorHandlers: Record<string, CopilotErrorHandler>;\n setInternalErrorHandler: (handler: Record<string, CopilotErrorHandler>) => void;\n removeInternalErrorHandler: (id: string) => void;\n}\n\nconst emptyCopilotContext: CopilotContextParams = {\n actions: {},\n setAction: () => {},\n removeAction: () => {},\n\n coAgentStateRenders: {},\n setCoAgentStateRender: () => {},\n removeCoAgentStateRender: () => {},\n\n chatComponentsCache: { current: { actions: {}, coAgentStateRenders: {} } },\n getContextString: (documents: DocumentPointer[], categories: string[]) =>\n returnAndThrowInDebug(\"\"),\n addContext: () => \"\",\n removeContext: () => {},\n getAllContext: () => [],\n\n getFunctionCallHandler: () => returnAndThrowInDebug(async () => {}),\n\n isLoading: false,\n setIsLoading: () => returnAndThrowInDebug(false),\n\n chatInstructions: \"\",\n setChatInstructions: () => returnAndThrowInDebug(\"\"),\n\n additionalInstructions: [],\n setAdditionalInstructions: () => returnAndThrowInDebug([]),\n\n getDocumentsContext: (categories: string[]) => returnAndThrowInDebug([]),\n addDocumentContext: () => returnAndThrowInDebug(\"\"),\n removeDocumentContext: () => {},\n runtimeClient: {} as any,\n\n copilotApiConfig: new (class implements CopilotApiConfig {\n get chatApiEndpoint(): string {\n throw new Error(\"Remember to wrap your app in a `<CopilotKit> {...} </CopilotKit>` !!!\");\n }\n\n get headers(): Record<string, string> {\n return {};\n }\n get body(): Record<string, any> {\n return {};\n }\n })(),\n\n chatSuggestionConfiguration: {},\n addChatSuggestionConfiguration: () => {},\n removeChatSuggestionConfiguration: () => {},\n showDevConsole: false,\n coagentStates: {},\n setCoagentStates: () => {},\n coagentStatesRef: { current: {} },\n setCoagentStatesWithRef: () => {},\n agentSession: null,\n setAgentSession: () => {},\n forwardedParameters: {},\n agentLock: null,\n threadId: \"\",\n setThreadId: () => {},\n runId: null,\n setRunId: () => {},\n chatAbortControllerRef: { current: null },\n availableAgents: [],\n extensions: {},\n setExtensions: () => {},\n langGraphInterruptAction: null,\n setLangGraphInterruptAction: () => null,\n removeLangGraphInterruptAction: () => null,\n onError: () => {},\n bannerError: null,\n setBannerError: () => {},\n internalErrorHandlers: {},\n setInternalErrorHandler: () => {},\n removeInternalErrorHandler: () => {},\n};\n\nexport const CopilotContext = React.createContext<CopilotContextParams>(emptyCopilotContext);\n\nexport function useCopilotContext(): CopilotContextParams {\n const context = React.useContext(CopilotContext);\n if (context === emptyCopilotContext) {\n throw new Error(\"Remember to wrap your app in a `<CopilotKit> {...} </CopilotKit>` !!!\");\n }\n return context;\n}\n\nfunction returnAndThrowInDebug<T>(_value: T): T {\n throw new Error(\"Remember to wrap your app in a `<CopilotKit> {...} </CopilotKit>` !!!\");\n}\n"],"mappings":"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","names":["import_react","React"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as CopilotContextParams } from './copilot-context-
|
|
1
|
+
import { a as CopilotContextParams } from './copilot-context-59740e82.js';
|
|
2
2
|
import { Message } from '@copilotkit/runtime-client-gql';
|
|
3
3
|
import React$1 from 'react';
|
|
4
4
|
import { CopilotChatSuggestionConfiguration } from './types/chat-suggestion-configuration.js';
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { CopilotKit, defaultCopilotContextCategories } from './components/copilot-provider/copilotkit.js';
|
|
2
2
|
export { CopilotKitProps } from './components/copilot-provider/copilotkit-props.js';
|
|
3
|
-
export { b as CoagentInChatRenderFunction, c as CopilotApiConfig, C as CopilotContext, a as CopilotContextParams, u as useCopilotContext } from './copilot-context-
|
|
4
|
-
export { C as CopilotMessagesContext, a as CopilotMessagesContextParams, S as SuggestionItem, r as reloadSuggestions, u as useCopilotMessagesContext } from './index-
|
|
3
|
+
export { b as CoagentInChatRenderFunction, c as CopilotApiConfig, C as CopilotContext, a as CopilotContextParams, u as useCopilotContext } from './copilot-context-59740e82.js';
|
|
4
|
+
export { C as CopilotMessagesContext, a as CopilotMessagesContextParams, S as SuggestionItem, r as reloadSuggestions, u as useCopilotMessagesContext } from './index-d1743abe.js';
|
|
5
5
|
export { UseCopilotChatReturn, useCopilotChat } from './hooks/use-copilot-chat.js';
|
|
6
6
|
export { UseCopilotChatOptions, UseCopilotChatOptions as UseCopilotChatOptions_c, UseCopilotChatReturn as UseCopilotChatReturn_c, useCopilotChat as useCopilotChatInternal } from './hooks/use-copilot-chat_internal.js';
|
|
7
7
|
export { useCopilotChatHeadless_c } from './hooks/use-copilot-chat-headless_c.js';
|
package/dist/index.js
CHANGED
|
@@ -186,10 +186,8 @@ var emptyCopilotContext = {
|
|
|
186
186
|
setExtensions: () => {
|
|
187
187
|
},
|
|
188
188
|
langGraphInterruptAction: null,
|
|
189
|
-
setLangGraphInterruptAction: () =>
|
|
190
|
-
|
|
191
|
-
removeLangGraphInterruptAction: () => {
|
|
192
|
-
},
|
|
189
|
+
setLangGraphInterruptAction: () => null,
|
|
190
|
+
removeLangGraphInterruptAction: () => null,
|
|
193
191
|
onError: () => {
|
|
194
192
|
},
|
|
195
193
|
bannerError: null,
|
|
@@ -2791,7 +2789,6 @@ function CopilotKit(_a) {
|
|
|
2791
2789
|
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(ToastProvider, { enabled, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(CopilotErrorBoundary, { publicApiKey, showUsageBanner: enabled, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(CopilotKitInternal, __spreadProps(__spreadValues({}, props), { children })) }) });
|
|
2792
2790
|
}
|
|
2793
2791
|
function CopilotKitInternal(cpkProps) {
|
|
2794
|
-
var _b;
|
|
2795
2792
|
const _a = cpkProps, { children } = _a, props = __objRest(_a, ["children"]);
|
|
2796
2793
|
validateProps(cpkProps);
|
|
2797
2794
|
const publicApiKey = props.publicLicenseKey || props.publicApiKey;
|
|
@@ -2894,7 +2891,7 @@ ${nonDocumentStrings}`;
|
|
|
2894
2891
|
[removeDocument]
|
|
2895
2892
|
);
|
|
2896
2893
|
const copilotApiConfig = (0, import_react12.useMemo)(() => {
|
|
2897
|
-
var _a2,
|
|
2894
|
+
var _a2, _b;
|
|
2898
2895
|
let cloud = void 0;
|
|
2899
2896
|
if (publicApiKey) {
|
|
2900
2897
|
cloud = {
|
|
@@ -2903,7 +2900,7 @@ ${nonDocumentStrings}`;
|
|
|
2903
2900
|
restrictToTopic: {
|
|
2904
2901
|
enabled: Boolean(props.guardrails_c),
|
|
2905
2902
|
validTopics: ((_a2 = props.guardrails_c) == null ? void 0 : _a2.validTopics) || [],
|
|
2906
|
-
invalidTopics: ((
|
|
2903
|
+
invalidTopics: ((_b = props.guardrails_c) == null ? void 0 : _b.invalidTopics) || []
|
|
2907
2904
|
}
|
|
2908
2905
|
}
|
|
2909
2906
|
}
|
|
@@ -3066,28 +3063,22 @@ ${nonDocumentStrings}`;
|
|
|
3066
3063
|
const [runId, setRunId] = (0, import_react12.useState)(null);
|
|
3067
3064
|
const chatAbortControllerRef = (0, import_react12.useRef)(null);
|
|
3068
3065
|
const showDevConsole = shouldShowDevConsole(props.showDevConsole);
|
|
3069
|
-
const [
|
|
3070
|
-
const setLangGraphInterruptAction = (0, import_react12.useCallback)(
|
|
3071
|
-
(
|
|
3072
|
-
|
|
3073
|
-
|
|
3074
|
-
|
|
3075
|
-
|
|
3076
|
-
|
|
3077
|
-
|
|
3078
|
-
|
|
3079
|
-
|
|
3080
|
-
|
|
3081
|
-
|
|
3082
|
-
|
|
3083
|
-
|
|
3084
|
-
|
|
3085
|
-
});
|
|
3086
|
-
},
|
|
3087
|
-
[]
|
|
3088
|
-
);
|
|
3089
|
-
const removeLangGraphInterruptAction = (0, import_react12.useCallback)((threadId) => {
|
|
3090
|
-
setLangGraphInterruptAction(threadId, null);
|
|
3066
|
+
const [langGraphInterruptAction, _setLangGraphInterruptAction] = (0, import_react12.useState)(null);
|
|
3067
|
+
const setLangGraphInterruptAction = (0, import_react12.useCallback)((action) => {
|
|
3068
|
+
_setLangGraphInterruptAction((prev) => {
|
|
3069
|
+
if (prev == null)
|
|
3070
|
+
return action;
|
|
3071
|
+
if (action == null)
|
|
3072
|
+
return null;
|
|
3073
|
+
let event = prev.event;
|
|
3074
|
+
if (action.event) {
|
|
3075
|
+
event = __spreadValues(__spreadValues({}, prev.event), action.event);
|
|
3076
|
+
}
|
|
3077
|
+
return __spreadProps(__spreadValues(__spreadValues({}, prev), action), { event });
|
|
3078
|
+
});
|
|
3079
|
+
}, []);
|
|
3080
|
+
const removeLangGraphInterruptAction = (0, import_react12.useCallback)(() => {
|
|
3081
|
+
setLangGraphInterruptAction(null);
|
|
3091
3082
|
}, []);
|
|
3092
3083
|
const memoizedChildren = (0, import_react12.useMemo)(() => children, [children]);
|
|
3093
3084
|
const [bannerError, setBannerError] = (0, import_react12.useState)(null);
|
|
@@ -3176,7 +3167,7 @@ ${nonDocumentStrings}`;
|
|
|
3176
3167
|
setAuthStates_c: updateAuthStates,
|
|
3177
3168
|
extensions,
|
|
3178
3169
|
setExtensions: updateExtensions,
|
|
3179
|
-
langGraphInterruptAction
|
|
3170
|
+
langGraphInterruptAction,
|
|
3180
3171
|
setLangGraphInterruptAction,
|
|
3181
3172
|
removeLangGraphInterruptAction,
|
|
3182
3173
|
bannerError,
|
|
@@ -3484,7 +3475,7 @@ function useChat(options) {
|
|
|
3484
3475
|
if (ev.name === import_runtime_client_gql7.MetaEventName.LangGraphInterruptEvent) {
|
|
3485
3476
|
let eventValue = (0, import_runtime_client_gql7.langGraphInterruptEvent)(ev).value;
|
|
3486
3477
|
eventValue = (0, import_shared14.parseJson)(eventValue, eventValue);
|
|
3487
|
-
setLangGraphInterruptAction(
|
|
3478
|
+
setLangGraphInterruptAction({
|
|
3488
3479
|
event: __spreadProps(__spreadValues({}, (0, import_runtime_client_gql7.langGraphInterruptEvent)(ev)), {
|
|
3489
3480
|
value: eventValue
|
|
3490
3481
|
})
|
|
@@ -3547,7 +3538,7 @@ function useChat(options) {
|
|
|
3547
3538
|
preservedStructure: !!originalCode
|
|
3548
3539
|
});
|
|
3549
3540
|
setIsLoading(false);
|
|
3550
|
-
|
|
3541
|
+
break;
|
|
3551
3542
|
} else if (messages2.length > 0) {
|
|
3552
3543
|
newMessages = [...messages2];
|
|
3553
3544
|
for (const message of messages2) {
|
|
@@ -3668,8 +3659,8 @@ function useChat(options) {
|
|
|
3668
3659
|
}
|
|
3669
3660
|
const currentResultMessagePairedFeAction = message.isResultMessage() ? getPairedFeAction(actions, message) : null;
|
|
3670
3661
|
if (action && message.isActionExecutionMessage()) {
|
|
3671
|
-
const
|
|
3672
|
-
const alreadyProcessed =
|
|
3662
|
+
const isRenderAndWaitAction = (action == null ? void 0 : action._isRenderAndWait) || false;
|
|
3663
|
+
const alreadyProcessed = isRenderAndWaitAction && finalMessages.some(
|
|
3673
3664
|
(fm) => fm.isResultMessage() && fm.actionExecutionId === message.id
|
|
3674
3665
|
);
|
|
3675
3666
|
if (alreadyProcessed) {
|
|
@@ -3678,16 +3669,16 @@ function useChat(options) {
|
|
|
3678
3669
|
action,
|
|
3679
3670
|
message
|
|
3680
3671
|
);
|
|
3681
|
-
const
|
|
3682
|
-
if (
|
|
3672
|
+
const pairedFeAction = getPairedFeAction(actions, resultMessage);
|
|
3673
|
+
if (pairedFeAction) {
|
|
3683
3674
|
const newExecutionMessage = new import_runtime_client_gql7.ActionExecutionMessage({
|
|
3684
|
-
name:
|
|
3675
|
+
name: pairedFeAction.name,
|
|
3685
3676
|
arguments: (0, import_shared14.parseJson)(resultMessage.result, resultMessage.result),
|
|
3686
3677
|
status: message.status,
|
|
3687
3678
|
createdAt: message.createdAt,
|
|
3688
3679
|
parentMessageId: message.parentMessageId
|
|
3689
3680
|
});
|
|
3690
|
-
yield executeActionFromMessage(
|
|
3681
|
+
yield executeActionFromMessage(pairedFeAction, newExecutionMessage);
|
|
3691
3682
|
}
|
|
3692
3683
|
}
|
|
3693
3684
|
} else if (message.isResultMessage() && currentResultMessagePairedFeAction) {
|
|
@@ -3782,7 +3773,7 @@ function useChat(options) {
|
|
|
3782
3773
|
switch (event.name) {
|
|
3783
3774
|
case import_runtime_client_gql7.MetaEventName.LangGraphInterruptEvent:
|
|
3784
3775
|
if (event.response) {
|
|
3785
|
-
setLangGraphInterruptAction(
|
|
3776
|
+
setLangGraphInterruptAction(null);
|
|
3786
3777
|
const value = event.value;
|
|
3787
3778
|
return [
|
|
3788
3779
|
...acc,
|
|
@@ -3832,8 +3823,8 @@ function useChat(options) {
|
|
|
3832
3823
|
console.warn(`Regenerate cannot be performed on ${reloadMessageRole} role`);
|
|
3833
3824
|
return;
|
|
3834
3825
|
}
|
|
3835
|
-
let historyCutoff = [
|
|
3836
|
-
if (messages.length > 2
|
|
3826
|
+
let historyCutoff = [];
|
|
3827
|
+
if (messages.length > 2) {
|
|
3837
3828
|
const lastUserMessageBeforeRegenerate = messages.slice(0, reloadMessageIndex).reverse().find(
|
|
3838
3829
|
(msg) => (
|
|
3839
3830
|
// @ts-expect-error -- message has role
|
|
@@ -3844,8 +3835,6 @@ function useChat(options) {
|
|
|
3844
3835
|
(msg) => msg.id === lastUserMessageBeforeRegenerate.id
|
|
3845
3836
|
);
|
|
3846
3837
|
historyCutoff = messages.slice(0, indexOfLastUserMessageBeforeRegenerate + 1);
|
|
3847
|
-
} else if (messages.length > 2 && reloadMessageIndex === 0) {
|
|
3848
|
-
historyCutoff = [messages[0], messages[1]];
|
|
3849
3838
|
}
|
|
3850
3839
|
setMessages(historyCutoff);
|
|
3851
3840
|
return runChatCompletionAndHandleFunctionCall(historyCutoff);
|
|
@@ -3962,16 +3951,16 @@ var InterruptRenderer = ({ event, result, render, resolve }) => {
|
|
|
3962
3951
|
return render({ event, result, resolve });
|
|
3963
3952
|
};
|
|
3964
3953
|
function useLangGraphInterruptRender() {
|
|
3965
|
-
const { langGraphInterruptAction, setLangGraphInterruptAction, agentSession
|
|
3954
|
+
const { langGraphInterruptAction, setLangGraphInterruptAction, agentSession } = useCopilotContext();
|
|
3966
3955
|
const responseRef = import_react14.default.useRef();
|
|
3967
3956
|
const resolveInterrupt = (0, import_react14.useCallback)(
|
|
3968
3957
|
(response) => {
|
|
3969
3958
|
responseRef.current = response;
|
|
3970
3959
|
setTimeout(() => {
|
|
3971
|
-
setLangGraphInterruptAction(
|
|
3960
|
+
setLangGraphInterruptAction({ event: { response } });
|
|
3972
3961
|
}, 0);
|
|
3973
3962
|
},
|
|
3974
|
-
[setLangGraphInterruptAction
|
|
3963
|
+
[setLangGraphInterruptAction]
|
|
3975
3964
|
);
|
|
3976
3965
|
if (!langGraphInterruptAction || !langGraphInterruptAction.event || !langGraphInterruptAction.render)
|
|
3977
3966
|
return null;
|
|
@@ -4882,12 +4871,7 @@ var import_react24 = require("react");
|
|
|
4882
4871
|
var import_shared19 = require("@copilotkit/shared");
|
|
4883
4872
|
function useLangGraphInterrupt(action, dependencies) {
|
|
4884
4873
|
var _a;
|
|
4885
|
-
const {
|
|
4886
|
-
setLangGraphInterruptAction,
|
|
4887
|
-
removeLangGraphInterruptAction,
|
|
4888
|
-
langGraphInterruptAction,
|
|
4889
|
-
threadId
|
|
4890
|
-
} = (0, import_react24.useContext)(CopilotContext);
|
|
4874
|
+
const { setLangGraphInterruptAction, removeLangGraphInterruptAction, langGraphInterruptAction } = (0, import_react24.useContext)(CopilotContext);
|
|
4891
4875
|
const { runChatCompletion } = useCopilotChat();
|
|
4892
4876
|
const { addToast } = useToast();
|
|
4893
4877
|
const actionId = (0, import_shared19.dataToUUID)(JSON.stringify(action), "lgAction");
|
|
@@ -4918,14 +4902,13 @@ function useLangGraphInterrupt(action, dependencies) {
|
|
|
4918
4902
|
if (hasAction && isCurrentAction) {
|
|
4919
4903
|
return;
|
|
4920
4904
|
}
|
|
4921
|
-
setLangGraphInterruptAction(
|
|
4905
|
+
setLangGraphInterruptAction(__spreadProps(__spreadValues({}, action), { id: actionId }));
|
|
4922
4906
|
}, [
|
|
4923
4907
|
action,
|
|
4924
4908
|
hasAction,
|
|
4925
4909
|
isCurrentAction,
|
|
4926
4910
|
setLangGraphInterruptAction,
|
|
4927
4911
|
removeLangGraphInterruptAction,
|
|
4928
|
-
threadId,
|
|
4929
4912
|
...dependencies || []
|
|
4930
4913
|
]);
|
|
4931
4914
|
}
|