@copilotkit/react-ui 0.0.0-fix-debug-infosys-20251107151227 → 0.0.0-fix-restore-handle-method-node-http-20251222114321
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 +331 -5
- package/dist/{chunk-ZJCHKHE4.mjs → chunk-3W6J75HS.mjs} +13 -10
- package/dist/chunk-3W6J75HS.mjs.map +1 -0
- package/dist/{chunk-RKULVDQO.mjs → chunk-7OURDQZJ.mjs} +9 -2
- package/dist/chunk-7OURDQZJ.mjs.map +1 -0
- package/dist/{chunk-TZNQJ3NA.mjs → chunk-7PR2KJDO.mjs} +6 -6
- package/dist/{chunk-FK3XMHLY.mjs → chunk-ELUJRANC.mjs} +2 -2
- package/dist/{chunk-OWX6YJZH.mjs → chunk-HIW7RXCD.mjs} +9 -5
- package/dist/chunk-HIW7RXCD.mjs.map +1 -0
- package/dist/{chunk-KX44MLR6.mjs → chunk-IHFR6PYG.mjs} +1 -1
- package/dist/chunk-IHFR6PYG.mjs.map +1 -0
- package/dist/{chunk-52RQLNFB.mjs → chunk-LQEFRHRT.mjs} +2 -2
- package/dist/{chunk-2XARU6EY.mjs → chunk-NCIAFFQ2.mjs} +7 -3
- package/dist/chunk-NCIAFFQ2.mjs.map +1 -0
- package/dist/{chunk-W26XFBEG.mjs → chunk-NGJ32FAP.mjs} +3 -3
- package/dist/chunk-NGJ32FAP.mjs.map +1 -0
- package/dist/chunk-QB3GUN2N.mjs +31 -0
- package/dist/chunk-QB3GUN2N.mjs.map +1 -0
- package/dist/{chunk-MJEYL3FK.mjs → chunk-QPQRLXN3.mjs} +25 -255
- package/dist/chunk-QPQRLXN3.mjs.map +1 -0
- package/dist/chunk-RYUCX3ZK.mjs +32 -0
- package/dist/chunk-RYUCX3ZK.mjs.map +1 -0
- package/dist/chunk-Y4FKRAKJ.mjs +12 -0
- package/dist/chunk-Y4FKRAKJ.mjs.map +1 -0
- package/dist/components/chat/Chat.d.ts +3 -140
- package/dist/components/chat/Chat.js +80 -270
- package/dist/components/chat/Chat.js.map +1 -1
- package/dist/components/chat/Chat.mjs +12 -14
- package/dist/components/chat/Input.d.ts +1 -1
- package/dist/components/chat/Input.js +11 -8
- package/dist/components/chat/Input.js.map +1 -1
- package/dist/components/chat/Input.mjs +1 -1
- package/dist/components/chat/Messages.d.ts +3 -3
- package/dist/components/chat/Messages.js +35 -4
- package/dist/components/chat/Messages.js.map +1 -1
- package/dist/components/chat/Messages.mjs +6 -6
- package/dist/components/chat/Modal.d.ts +1 -6
- package/dist/components/chat/Modal.js +86 -274
- package/dist/components/chat/Modal.js.map +1 -1
- package/dist/components/chat/Modal.mjs +11 -11
- package/dist/components/chat/Popup.d.ts +1 -6
- package/dist/components/chat/Popup.js +86 -274
- package/dist/components/chat/Popup.js.map +1 -1
- package/dist/components/chat/Popup.mjs +12 -12
- package/dist/components/chat/Sidebar.d.ts +1 -6
- package/dist/components/chat/Sidebar.js +86 -274
- package/dist/components/chat/Sidebar.js.map +1 -1
- package/dist/components/chat/Sidebar.mjs +12 -12
- package/dist/components/chat/Suggestion.js.map +1 -1
- package/dist/components/chat/Suggestion.mjs +1 -1
- package/dist/components/chat/Suggestions.d.ts +1 -1
- package/dist/components/chat/Suggestions.js +19 -12
- package/dist/components/chat/Suggestions.js.map +1 -1
- package/dist/components/chat/Suggestions.mjs +2 -2
- package/dist/components/chat/index.d.ts +0 -5
- package/dist/components/chat/index.js +86 -274
- package/dist/components/chat/index.js.map +1 -1
- package/dist/components/chat/index.mjs +15 -15
- package/dist/components/chat/messages/AssistantMessage.js.map +1 -1
- package/dist/components/chat/messages/AssistantMessage.mjs +2 -2
- package/dist/components/chat/messages/ErrorMessage.mjs +1 -1
- package/dist/components/chat/messages/LegacyRenderMessage.js +30 -3
- package/dist/components/chat/messages/LegacyRenderMessage.js.map +1 -1
- package/dist/components/chat/messages/LegacyRenderMessage.mjs +5 -5
- package/dist/components/chat/messages/RenderMessage.d.ts +1 -1
- package/dist/components/chat/messages/RenderMessage.js +23 -3
- package/dist/components/chat/messages/RenderMessage.js.map +1 -1
- package/dist/components/chat/messages/RenderMessage.mjs +4 -4
- package/dist/components/chat/messages/UserMessage.js +19 -3
- package/dist/components/chat/messages/UserMessage.js.map +1 -1
- package/dist/components/chat/messages/UserMessage.mjs +1 -1
- package/dist/components/chat/props.d.ts +4 -0
- package/dist/components/chat/props.js.map +1 -1
- package/dist/components/index.d.ts +0 -5
- package/dist/components/index.js +86 -274
- package/dist/components/index.js.map +1 -1
- package/dist/components/index.mjs +15 -15
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/index.js +2 -24
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/index.mjs +1 -1
- package/dist/hooks/use-copilot-chat-suggestions.d.ts +4 -26
- package/dist/hooks/use-copilot-chat-suggestions.js +2 -24
- package/dist/hooks/use-copilot-chat-suggestions.js.map +1 -1
- package/dist/hooks/use-copilot-chat-suggestions.mjs +1 -1
- package/dist/index.css +1 -1
- package/dist/index.css.map +1 -1
- package/dist/index.d.ts +0 -5
- package/dist/index.js +89 -299
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +16 -16
- package/dist/types/suggestions.d.ts +1 -0
- package/dist/types/suggestions.js.map +1 -1
- package/dist/v2/index.css +4 -0
- package/dist/v2/index.css.map +1 -0
- package/dist/v2/index.d.ts +2 -0
- package/dist/v2/index.js +2 -0
- package/dist/v2/index.js.map +1 -0
- package/dist/v2/index.mjs +2 -0
- package/dist/v2/index.mjs.map +1 -0
- package/package.json +8 -7
- package/src/components/chat/Chat.tsx +21 -374
- package/src/components/chat/Input.tsx +13 -12
- package/src/components/chat/Messages.tsx +8 -4
- package/src/components/chat/Suggestion.tsx +2 -2
- package/src/components/chat/Suggestions.tsx +6 -2
- package/src/components/chat/messages/AssistantMessage.tsx +1 -0
- package/src/components/chat/messages/LegacyRenderMessage.tsx +7 -0
- package/src/components/chat/messages/RenderMessage.tsx +4 -0
- package/src/components/chat/messages/UserMessage.tsx +32 -6
- package/src/components/chat/props.ts +4 -0
- package/src/css/messages.css +1 -1
- package/src/hooks/use-copilot-chat-suggestions.tsx +6 -57
- package/src/types/suggestions.ts +1 -0
- package/src/v2/index.ts +1 -0
- package/src/v2/styles.css +1 -0
- package/tsup.config.ts +1 -1
- package/dist/chunk-226ZMOE3.mjs +0 -24
- package/dist/chunk-226ZMOE3.mjs.map +0 -1
- package/dist/chunk-2XARU6EY.mjs.map +0 -1
- package/dist/chunk-EYRKZDP5.mjs +0 -32
- package/dist/chunk-EYRKZDP5.mjs.map +0 -1
- package/dist/chunk-KX44MLR6.mjs.map +0 -1
- package/dist/chunk-MJEYL3FK.mjs.map +0 -1
- package/dist/chunk-OWX6YJZH.mjs.map +0 -1
- package/dist/chunk-RKULVDQO.mjs.map +0 -1
- package/dist/chunk-VVL6JFCJ.mjs +0 -16
- package/dist/chunk-VVL6JFCJ.mjs.map +0 -1
- package/dist/chunk-W26XFBEG.mjs.map +0 -1
- package/dist/chunk-ZJCHKHE4.mjs.map +0 -1
- /package/dist/{chunk-TZNQJ3NA.mjs.map → chunk-7PR2KJDO.mjs.map} +0 -0
- /package/dist/{chunk-FK3XMHLY.mjs.map → chunk-ELUJRANC.mjs.map} +0 -0
- /package/dist/{chunk-52RQLNFB.mjs.map → chunk-LQEFRHRT.mjs.map} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
CopilotModal
|
|
3
|
-
} from "../../chunk-
|
|
3
|
+
} from "../../chunk-7PR2KJDO.mjs";
|
|
4
4
|
import "../../chunk-C3GSYRC3.mjs";
|
|
5
5
|
import "../../chunk-GDSZGYCE.mjs";
|
|
6
6
|
import "../../chunk-V7W6IM2V.mjs";
|
|
@@ -11,22 +11,22 @@ import "../../chunk-KXE2JCUH.mjs";
|
|
|
11
11
|
import "../../chunk-NRA3CFEE.mjs";
|
|
12
12
|
import "../../chunk-BH6PCAAL.mjs";
|
|
13
13
|
import "../../chunk-UFN2VWSR.mjs";
|
|
14
|
-
import "../../chunk-
|
|
15
|
-
import "../../chunk-
|
|
16
|
-
import "../../chunk-
|
|
14
|
+
import "../../chunk-QPQRLXN3.mjs";
|
|
15
|
+
import "../../chunk-QB3GUN2N.mjs";
|
|
16
|
+
import "../../chunk-NGJ32FAP.mjs";
|
|
17
17
|
import "../../chunk-PLHTVHUW.mjs";
|
|
18
|
-
import "../../chunk-
|
|
18
|
+
import "../../chunk-3W6J75HS.mjs";
|
|
19
19
|
import "../../chunk-ELGRNEAO.mjs";
|
|
20
20
|
import "../../chunk-QIOJXTIQ.mjs";
|
|
21
|
-
import "../../chunk-
|
|
22
|
-
import "../../chunk-
|
|
23
|
-
import "../../chunk-
|
|
24
|
-
import "../../chunk-
|
|
21
|
+
import "../../chunk-HIW7RXCD.mjs";
|
|
22
|
+
import "../../chunk-7OURDQZJ.mjs";
|
|
23
|
+
import "../../chunk-NCIAFFQ2.mjs";
|
|
24
|
+
import "../../chunk-IHFR6PYG.mjs";
|
|
25
25
|
import "../../chunk-DBKRAOH7.mjs";
|
|
26
|
-
import "../../chunk-
|
|
26
|
+
import "../../chunk-RYUCX3ZK.mjs";
|
|
27
27
|
import "../../chunk-JZ3RFQQ6.mjs";
|
|
28
|
-
import "../../chunk-IEMQ2SQW.mjs";
|
|
29
28
|
import "../../chunk-IK2BPURM.mjs";
|
|
29
|
+
import "../../chunk-IEMQ2SQW.mjs";
|
|
30
30
|
import "../../chunk-XWG3L6QC.mjs";
|
|
31
31
|
import "../../chunk-54JAUBUJ.mjs";
|
|
32
32
|
import "../../chunk-JGMFJZMG.mjs";
|
|
@@ -5,13 +5,8 @@ import './props.js';
|
|
|
5
5
|
import '@copilotkit/shared';
|
|
6
6
|
import '../../types/suggestions.js';
|
|
7
7
|
import './Chat.js';
|
|
8
|
-
import '@copilotkit/react-core/dist/types/coagent-state';
|
|
9
|
-
import '@copilotkit/react-core/dist/hooks/use-tree';
|
|
10
|
-
import '@copilotkit/react-core/dist/copilot-context-cf9de848';
|
|
11
|
-
import '@copilotkit/react-core/dist/types/coagent-action';
|
|
12
|
-
import '@copilotkit/react-core';
|
|
13
|
-
import '@copilotkit/runtime-client-gql';
|
|
14
8
|
import './ChatContext.js';
|
|
9
|
+
import '@copilotkit/react-core';
|
|
15
10
|
|
|
16
11
|
declare function CopilotPopup(props: CopilotModalProps): react_jsx_runtime.JSX.Element;
|
|
17
12
|
|
|
@@ -1030,14 +1030,30 @@ var import_react_core5 = require("@copilotkit/react-core");
|
|
|
1030
1030
|
|
|
1031
1031
|
// src/components/chat/messages/UserMessage.tsx
|
|
1032
1032
|
var import_jsx_runtime10 = require("react/jsx-runtime");
|
|
1033
|
+
var getTextContent = (content) => {
|
|
1034
|
+
if (typeof content === "undefined") {
|
|
1035
|
+
return void 0;
|
|
1036
|
+
}
|
|
1037
|
+
if (typeof content === "string") {
|
|
1038
|
+
return content;
|
|
1039
|
+
}
|
|
1040
|
+
return content.map((part) => {
|
|
1041
|
+
if (part.type === "text") {
|
|
1042
|
+
return part.text;
|
|
1043
|
+
}
|
|
1044
|
+
return void 0;
|
|
1045
|
+
}).filter((value) => typeof value === "string" && value.length > 0).join(" ").trim() || void 0;
|
|
1046
|
+
};
|
|
1033
1047
|
var UserMessage = (props) => {
|
|
1034
1048
|
const { message, ImageRenderer: ImageRenderer2 } = props;
|
|
1035
|
-
const isImageMessage = message && "image" in message && message.image;
|
|
1049
|
+
const isImageMessage = message && "image" in message && Boolean(message.image);
|
|
1036
1050
|
if (isImageMessage) {
|
|
1037
1051
|
const imageMessage = message;
|
|
1038
|
-
|
|
1052
|
+
const content2 = getTextContent(imageMessage == null ? void 0 : imageMessage.content);
|
|
1053
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { className: "copilotKitMessage copilotKitUserMessage", children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(ImageRenderer2, { image: imageMessage.image, content: content2 }) });
|
|
1039
1054
|
}
|
|
1040
|
-
|
|
1055
|
+
const content = getTextContent(message == null ? void 0 : message.content);
|
|
1056
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { className: "copilotKitMessage copilotKitUserMessage", children: content });
|
|
1041
1057
|
};
|
|
1042
1058
|
|
|
1043
1059
|
// src/components/chat/Markdown.tsx
|
|
@@ -1716,6 +1732,7 @@ function RenderMessage(_a) {
|
|
|
1716
1732
|
var _a2;
|
|
1717
1733
|
const {
|
|
1718
1734
|
message,
|
|
1735
|
+
messages,
|
|
1719
1736
|
inProgress,
|
|
1720
1737
|
index,
|
|
1721
1738
|
isCurrentMessage,
|
|
@@ -1746,6 +1763,7 @@ function RenderMessage(_a) {
|
|
|
1746
1763
|
subComponent: (_a2 = message.generativeUI) == null ? void 0 : _a2.call(message),
|
|
1747
1764
|
rawData: message,
|
|
1748
1765
|
message,
|
|
1766
|
+
messages,
|
|
1749
1767
|
isLoading: inProgress && isCurrentMessage && !message.content,
|
|
1750
1768
|
isGenerating: inProgress && isCurrentMessage && !!message.content,
|
|
1751
1769
|
isCurrentMessage,
|
|
@@ -1759,6 +1777,8 @@ function RenderMessage(_a) {
|
|
|
1759
1777
|
},
|
|
1760
1778
|
index
|
|
1761
1779
|
);
|
|
1780
|
+
default:
|
|
1781
|
+
return null;
|
|
1762
1782
|
}
|
|
1763
1783
|
}
|
|
1764
1784
|
|
|
@@ -1767,6 +1787,7 @@ var import_runtime_client_gql = require("@copilotkit/runtime-client-gql");
|
|
|
1767
1787
|
var import_jsx_runtime16 = require("react/jsx-runtime");
|
|
1768
1788
|
var LegacyRenderMessage = ({
|
|
1769
1789
|
message,
|
|
1790
|
+
messages,
|
|
1770
1791
|
inProgress,
|
|
1771
1792
|
index,
|
|
1772
1793
|
isCurrentMessage,
|
|
@@ -1795,6 +1816,7 @@ var LegacyRenderMessage = ({
|
|
|
1795
1816
|
RenderTextMessage,
|
|
1796
1817
|
{
|
|
1797
1818
|
message,
|
|
1819
|
+
messages,
|
|
1798
1820
|
inProgress,
|
|
1799
1821
|
index,
|
|
1800
1822
|
isCurrentMessage,
|
|
@@ -1812,6 +1834,7 @@ var LegacyRenderMessage = ({
|
|
|
1812
1834
|
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1813
1835
|
RenderActionExecutionMessage,
|
|
1814
1836
|
{
|
|
1837
|
+
messages,
|
|
1815
1838
|
message,
|
|
1816
1839
|
inProgress,
|
|
1817
1840
|
index,
|
|
@@ -1826,6 +1849,7 @@ var LegacyRenderMessage = ({
|
|
|
1826
1849
|
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1827
1850
|
RenderAgentStateMessage,
|
|
1828
1851
|
{
|
|
1852
|
+
messages,
|
|
1829
1853
|
message,
|
|
1830
1854
|
inProgress,
|
|
1831
1855
|
index,
|
|
@@ -1839,6 +1863,7 @@ var LegacyRenderMessage = ({
|
|
|
1839
1863
|
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1840
1864
|
RenderResultMessage,
|
|
1841
1865
|
{
|
|
1866
|
+
messages,
|
|
1842
1867
|
message,
|
|
1843
1868
|
inProgress,
|
|
1844
1869
|
index,
|
|
@@ -1852,6 +1877,7 @@ var LegacyRenderMessage = ({
|
|
|
1852
1877
|
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1853
1878
|
RenderImageMessage,
|
|
1854
1879
|
{
|
|
1880
|
+
messages,
|
|
1855
1881
|
message,
|
|
1856
1882
|
inProgress,
|
|
1857
1883
|
index,
|
|
@@ -1864,6 +1890,7 @@ var LegacyRenderMessage = ({
|
|
|
1864
1890
|
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1865
1891
|
RenderMessage,
|
|
1866
1892
|
{
|
|
1893
|
+
messages,
|
|
1867
1894
|
message,
|
|
1868
1895
|
inProgress,
|
|
1869
1896
|
index,
|
|
@@ -1904,7 +1931,8 @@ var Messages = ({
|
|
|
1904
1931
|
RenderResultMessage,
|
|
1905
1932
|
RenderImageMessage
|
|
1906
1933
|
}) => {
|
|
1907
|
-
|
|
1934
|
+
var _a;
|
|
1935
|
+
const { labels, icons } = useChatContext();
|
|
1908
1936
|
const { messages: visibleMessages, interrupt } = (0, import_react_core5.useCopilotChatInternal)();
|
|
1909
1937
|
const initialMessages = (0, import_react10.useMemo)(() => makeInitialMessages(labels.initial), [labels.initial]);
|
|
1910
1938
|
const messages = [...initialMessages, ...visibleMessages];
|
|
@@ -1934,6 +1962,7 @@ var Messages = ({
|
|
|
1934
1962
|
]
|
|
1935
1963
|
);
|
|
1936
1964
|
const MessageRenderer = hasLegacyProps ? (props) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(LegacyRenderMessage, __spreadProps(__spreadValues({}, props), { legacyProps })) : RenderMessage2;
|
|
1965
|
+
const LoadingIcon = () => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { children: icons.activityIcon });
|
|
1937
1966
|
return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "copilotKitMessages", ref: messagesContainerRef, children: [
|
|
1938
1967
|
/* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "copilotKitMessagesContainer", children: [
|
|
1939
1968
|
messages.map((message, index) => {
|
|
@@ -1942,6 +1971,7 @@ var Messages = ({
|
|
|
1942
1971
|
MessageRenderer,
|
|
1943
1972
|
{
|
|
1944
1973
|
message,
|
|
1974
|
+
messages,
|
|
1945
1975
|
inProgress,
|
|
1946
1976
|
index,
|
|
1947
1977
|
isCurrentMessage,
|
|
@@ -1958,6 +1988,7 @@ var Messages = ({
|
|
|
1958
1988
|
index
|
|
1959
1989
|
);
|
|
1960
1990
|
}),
|
|
1991
|
+
((_a = messages[messages.length - 1]) == null ? void 0 : _a.role) === "user" && inProgress && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(LoadingIcon, {}),
|
|
1961
1992
|
interrupt,
|
|
1962
1993
|
chatError && ErrorMessage && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(ErrorMessage, { error: chatError, isCurrentMessage: true })
|
|
1963
1994
|
] }),
|
|
@@ -2251,12 +2282,12 @@ var MAX_NEWLINES = 6;
|
|
|
2251
2282
|
var Input = ({
|
|
2252
2283
|
inProgress,
|
|
2253
2284
|
onSend,
|
|
2254
|
-
|
|
2285
|
+
chatReady = false,
|
|
2255
2286
|
onStop,
|
|
2256
2287
|
onUpload,
|
|
2257
2288
|
hideStopButton = false
|
|
2258
2289
|
}) => {
|
|
2259
|
-
var _a
|
|
2290
|
+
var _a;
|
|
2260
2291
|
const context = useChatContext();
|
|
2261
2292
|
const copilotContext = (0, import_react_core7.useCopilotContext)();
|
|
2262
2293
|
const showPoweredBy = !((_a = copilotContext.copilotApiConfig) == null ? void 0 : _a.publicApiKey);
|
|
@@ -2286,14 +2317,16 @@ var Input = ({
|
|
|
2286
2317
|
inProgress
|
|
2287
2318
|
});
|
|
2288
2319
|
const isInProgress = inProgress || pushToTalkState === "transcribing";
|
|
2289
|
-
const buttonIcon
|
|
2320
|
+
const { buttonIcon, buttonAlt } = (0, import_react14.useMemo)(() => {
|
|
2321
|
+
if (!chatReady)
|
|
2322
|
+
return { buttonIcon: context.icons.spinnerIcon, buttonAlt: "Loading" };
|
|
2323
|
+
return isInProgress && !hideStopButton && chatReady ? { buttonIcon: context.icons.stopIcon, buttonAlt: "Stop" } : { buttonIcon: context.icons.sendIcon, buttonAlt: "Send" };
|
|
2324
|
+
}, [isInProgress, chatReady, hideStopButton, context.icons.stopIcon, context.icons.sendIcon]);
|
|
2290
2325
|
const showPushToTalk = pushToTalkConfigured && (pushToTalkState === "idle" || pushToTalkState === "recording") && !inProgress;
|
|
2326
|
+
const { interrupt } = (0, import_react_core7.useCopilotChatInternal)();
|
|
2291
2327
|
const canSend = (0, import_react14.useMemo)(() => {
|
|
2292
|
-
|
|
2293
|
-
|
|
2294
|
-
const interruptInProgress = (interruptEvent == null ? void 0 : interruptEvent.name) === "LangGraphInterruptEvent" && !(interruptEvent == null ? void 0 : interruptEvent.response);
|
|
2295
|
-
return !isInProgress && text.trim().length > 0 && pushToTalkState === "idle" && !interruptInProgress;
|
|
2296
|
-
}, [(_b = copilotContext.langGraphInterruptAction) == null ? void 0 : _b.event, isInProgress, text, pushToTalkState]);
|
|
2328
|
+
return !isInProgress && text.trim().length > 0 && pushToTalkState === "idle" && !interrupt;
|
|
2329
|
+
}, [interrupt, isInProgress, text, pushToTalkState]);
|
|
2297
2330
|
const canStop = (0, import_react14.useMemo)(() => {
|
|
2298
2331
|
return isInProgress && !hideStopButton;
|
|
2299
2332
|
}, [isInProgress, hideStopButton]);
|
|
@@ -2340,6 +2373,7 @@ var Input = ({
|
|
|
2340
2373
|
"data-copilotkit-in-progress": inProgress,
|
|
2341
2374
|
"data-test-id": inProgress ? "copilot-chat-request-in-progress" : "copilot-chat-ready",
|
|
2342
2375
|
className: "copilotKitInputControlButton",
|
|
2376
|
+
"aria-label": buttonAlt,
|
|
2343
2377
|
children: buttonIcon
|
|
2344
2378
|
}
|
|
2345
2379
|
)
|
|
@@ -2353,8 +2387,6 @@ var Input = ({
|
|
|
2353
2387
|
var import_react15 = __toESM(require("react"));
|
|
2354
2388
|
var import_react_core9 = require("@copilotkit/react-core");
|
|
2355
2389
|
var import_shared3 = require("@copilotkit/shared");
|
|
2356
|
-
var import_shared4 = require("@copilotkit/shared");
|
|
2357
|
-
var import_react_core10 = require("@copilotkit/react-core");
|
|
2358
2390
|
|
|
2359
2391
|
// src/components/chat/ImageUploadQueue.tsx
|
|
2360
2392
|
var import_jsx_runtime21 = require("react/jsx-runtime");
|
|
@@ -2458,18 +2490,25 @@ function Suggestion({ title, onClick, partial, className }) {
|
|
|
2458
2490
|
|
|
2459
2491
|
// src/components/chat/Suggestions.tsx
|
|
2460
2492
|
var import_jsx_runtime23 = require("react/jsx-runtime");
|
|
2461
|
-
function Suggestions({
|
|
2462
|
-
|
|
2463
|
-
|
|
2464
|
-
|
|
2465
|
-
|
|
2466
|
-
|
|
2467
|
-
|
|
2468
|
-
|
|
2469
|
-
|
|
2470
|
-
|
|
2471
|
-
|
|
2472
|
-
|
|
2493
|
+
function Suggestions({
|
|
2494
|
+
suggestions,
|
|
2495
|
+
onSuggestionClick,
|
|
2496
|
+
isLoading
|
|
2497
|
+
}) {
|
|
2498
|
+
return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "suggestions", children: suggestions.map((suggestion, index) => {
|
|
2499
|
+
var _a, _b;
|
|
2500
|
+
return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
|
2501
|
+
Suggestion,
|
|
2502
|
+
{
|
|
2503
|
+
title: suggestion.title,
|
|
2504
|
+
message: suggestion.message,
|
|
2505
|
+
partial: (_b = (_a = suggestion.isLoading) != null ? _a : suggestion.partial) != null ? _b : isLoading,
|
|
2506
|
+
className: suggestion.className,
|
|
2507
|
+
onClick: () => onSuggestionClick(suggestion.message)
|
|
2508
|
+
},
|
|
2509
|
+
index
|
|
2510
|
+
);
|
|
2511
|
+
}) });
|
|
2473
2512
|
}
|
|
2474
2513
|
|
|
2475
2514
|
// src/components/chat/Chat.tsx
|
|
@@ -2669,16 +2708,16 @@ function CopilotChat({
|
|
|
2669
2708
|
sendMessage,
|
|
2670
2709
|
stopGeneration,
|
|
2671
2710
|
reloadMessages,
|
|
2672
|
-
suggestions: currentSuggestions
|
|
2673
|
-
|
|
2711
|
+
suggestions: currentSuggestions,
|
|
2712
|
+
isLoadingSuggestions,
|
|
2713
|
+
agent
|
|
2714
|
+
} = (0, import_react_core9.useCopilotChatInternal)({
|
|
2674
2715
|
suggestions,
|
|
2675
|
-
makeSystemMessage,
|
|
2676
|
-
disableSystemMessage,
|
|
2677
2716
|
onInProgress,
|
|
2678
2717
|
onSubmitMessage,
|
|
2679
2718
|
onStopGeneration,
|
|
2680
2719
|
onReloadMessages
|
|
2681
|
-
);
|
|
2720
|
+
});
|
|
2682
2721
|
const prevIsLoading = (0, import_react15.useRef)(isLoading);
|
|
2683
2722
|
(0, import_react15.useEffect)(() => {
|
|
2684
2723
|
if (prevIsLoading.current !== isLoading) {
|
|
@@ -2697,7 +2736,11 @@ function CopilotChat({
|
|
|
2697
2736
|
fileInputRef.current.value = "";
|
|
2698
2737
|
}
|
|
2699
2738
|
triggerObservabilityHook("onMessageSent", text);
|
|
2700
|
-
return sendMessage(
|
|
2739
|
+
return sendMessage({
|
|
2740
|
+
id: (0, import_shared3.randomUUID)(),
|
|
2741
|
+
content: text,
|
|
2742
|
+
role: "user"
|
|
2743
|
+
});
|
|
2701
2744
|
};
|
|
2702
2745
|
const chatContext = import_react15.default.useContext(ChatContext);
|
|
2703
2746
|
const isVisible = chatContext ? chatContext.open : true;
|
|
@@ -2800,7 +2843,8 @@ function CopilotChat({
|
|
|
2800
2843
|
RenderSuggestionsList,
|
|
2801
2844
|
{
|
|
2802
2845
|
onSuggestionClick: handleSendMessage,
|
|
2803
|
-
suggestions: currentSuggestions
|
|
2846
|
+
suggestions: currentSuggestions,
|
|
2847
|
+
isLoading: isLoadingSuggestions
|
|
2804
2848
|
}
|
|
2805
2849
|
)
|
|
2806
2850
|
}
|
|
@@ -2823,6 +2867,7 @@ function CopilotChat({
|
|
|
2823
2867
|
Input2,
|
|
2824
2868
|
{
|
|
2825
2869
|
inProgress: isLoading,
|
|
2870
|
+
chatReady: Boolean(agent),
|
|
2826
2871
|
onSend: handleSendMessage,
|
|
2827
2872
|
isVisible,
|
|
2828
2873
|
onStop: stopGeneration,
|
|
@@ -2848,243 +2893,10 @@ function WrappedCopilotChat({
|
|
|
2848
2893
|
}
|
|
2849
2894
|
return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_jsx_runtime24.Fragment, { children });
|
|
2850
2895
|
}
|
|
2851
|
-
var useCopilotChatLogic = (chatSuggestions, makeSystemMessage, disableSystemMessage, onInProgress, onSubmitMessage, onStopGeneration, onReloadMessages) => {
|
|
2852
|
-
var _a;
|
|
2853
|
-
const {
|
|
2854
|
-
messages,
|
|
2855
|
-
sendMessage,
|
|
2856
|
-
setMessages,
|
|
2857
|
-
reloadMessages: defaultReloadMessages,
|
|
2858
|
-
stopGeneration: defaultStopGeneration,
|
|
2859
|
-
runChatCompletion,
|
|
2860
|
-
isLoading,
|
|
2861
|
-
suggestions,
|
|
2862
|
-
setSuggestions,
|
|
2863
|
-
generateSuggestions,
|
|
2864
|
-
resetSuggestions: resetSuggestionsFromHook,
|
|
2865
|
-
isLoadingSuggestions
|
|
2866
|
-
} = (0, import_react_core9.useCopilotChatInternal)({
|
|
2867
|
-
makeSystemMessage,
|
|
2868
|
-
disableSystemMessage
|
|
2869
|
-
});
|
|
2870
|
-
const generalContext = (0, import_react_core9.useCopilotContext)();
|
|
2871
|
-
const messagesContext = (0, import_react_core9.useCopilotMessagesContext)();
|
|
2872
|
-
const { actions } = generalContext;
|
|
2873
|
-
const [suggestionsFailed, setSuggestionsFailed] = (0, import_react15.useState)(false);
|
|
2874
|
-
const hasGeneratedInitialSuggestions = (0, import_react15.useRef)(false);
|
|
2875
|
-
(0, import_react15.useEffect)(() => {
|
|
2876
|
-
if (Array.isArray(chatSuggestions)) {
|
|
2877
|
-
setSuggestions(chatSuggestions);
|
|
2878
|
-
hasGeneratedInitialSuggestions.current = true;
|
|
2879
|
-
}
|
|
2880
|
-
}, [JSON.stringify(chatSuggestions), setSuggestions]);
|
|
2881
|
-
const generateSuggestionsWithErrorHandling = (0, import_react15.useCallback)(
|
|
2882
|
-
(context) => __async(void 0, null, function* () {
|
|
2883
|
-
try {
|
|
2884
|
-
yield generateSuggestions();
|
|
2885
|
-
} catch (error) {
|
|
2886
|
-
console.error("Failed to generate suggestions:", error);
|
|
2887
|
-
setSuggestionsFailed(true);
|
|
2888
|
-
}
|
|
2889
|
-
}),
|
|
2890
|
-
[generateSuggestions]
|
|
2891
|
-
);
|
|
2892
|
-
(0, import_react15.useEffect)(() => {
|
|
2893
|
-
if (chatSuggestions !== "auto" || isLoadingSuggestions || suggestionsFailed) {
|
|
2894
|
-
return;
|
|
2895
|
-
}
|
|
2896
|
-
if (isLoading) {
|
|
2897
|
-
return;
|
|
2898
|
-
}
|
|
2899
|
-
if (Object.keys(generalContext.chatSuggestionConfiguration).length === 0) {
|
|
2900
|
-
return;
|
|
2901
|
-
}
|
|
2902
|
-
if (messages.length === 0 && !hasGeneratedInitialSuggestions.current) {
|
|
2903
|
-
hasGeneratedInitialSuggestions.current = true;
|
|
2904
|
-
generateSuggestionsWithErrorHandling("initial");
|
|
2905
|
-
return;
|
|
2906
|
-
}
|
|
2907
|
-
if (messages.length > 0 && suggestions.length === 0) {
|
|
2908
|
-
generateSuggestionsWithErrorHandling("post-message");
|
|
2909
|
-
return;
|
|
2910
|
-
}
|
|
2911
|
-
}, [
|
|
2912
|
-
chatSuggestions,
|
|
2913
|
-
isLoadingSuggestions,
|
|
2914
|
-
suggestionsFailed,
|
|
2915
|
-
messages.length,
|
|
2916
|
-
isLoading,
|
|
2917
|
-
suggestions.length,
|
|
2918
|
-
Object.keys(generalContext.chatSuggestionConfiguration).join(","),
|
|
2919
|
-
// Use stable string instead of object reference
|
|
2920
|
-
generateSuggestionsWithErrorHandling
|
|
2921
|
-
]);
|
|
2922
|
-
(0, import_react15.useEffect)(() => {
|
|
2923
|
-
if (chatSuggestions !== "auto") {
|
|
2924
|
-
hasGeneratedInitialSuggestions.current = false;
|
|
2925
|
-
setSuggestionsFailed(false);
|
|
2926
|
-
}
|
|
2927
|
-
}, [chatSuggestions]);
|
|
2928
|
-
const stableContext = (0, import_react15.useMemo)(
|
|
2929
|
-
() => __spreadValues(__spreadValues({}, generalContext), messagesContext),
|
|
2930
|
-
[
|
|
2931
|
-
// Only include stable dependencies
|
|
2932
|
-
generalContext.actions,
|
|
2933
|
-
messagesContext.messages.length,
|
|
2934
|
-
generalContext.isLoading
|
|
2935
|
-
]
|
|
2936
|
-
);
|
|
2937
|
-
const resetSuggestions = (0, import_react15.useCallback)(() => {
|
|
2938
|
-
resetSuggestionsFromHook();
|
|
2939
|
-
setSuggestionsFailed(false);
|
|
2940
|
-
hasGeneratedInitialSuggestions.current = false;
|
|
2941
|
-
}, [resetSuggestionsFromHook]);
|
|
2942
|
-
(0, import_react15.useEffect)(() => {
|
|
2943
|
-
onInProgress == null ? void 0 : onInProgress(isLoading);
|
|
2944
|
-
}, [onInProgress, isLoading]);
|
|
2945
|
-
const safelySendMessage = (messageContent, imagesToUse) => __async(void 0, null, function* () {
|
|
2946
|
-
const images = imagesToUse || [];
|
|
2947
|
-
if (chatSuggestions === "auto" || chatSuggestions === "manual") {
|
|
2948
|
-
setSuggestions([]);
|
|
2949
|
-
}
|
|
2950
|
-
let firstMessage = null;
|
|
2951
|
-
if (messageContent.trim().length > 0) {
|
|
2952
|
-
const textMessage = {
|
|
2953
|
-
id: (0, import_shared4.randomId)(),
|
|
2954
|
-
role: "user",
|
|
2955
|
-
content: messageContent
|
|
2956
|
-
};
|
|
2957
|
-
if (onSubmitMessage) {
|
|
2958
|
-
try {
|
|
2959
|
-
yield onSubmitMessage(messageContent);
|
|
2960
|
-
} catch (error) {
|
|
2961
|
-
console.error("Error in onSubmitMessage:", error);
|
|
2962
|
-
}
|
|
2963
|
-
}
|
|
2964
|
-
yield sendMessage(textMessage, {
|
|
2965
|
-
followUp: images.length === 0,
|
|
2966
|
-
clearSuggestions: chatSuggestions === "auto" || chatSuggestions === "manual"
|
|
2967
|
-
});
|
|
2968
|
-
if (!firstMessage) {
|
|
2969
|
-
firstMessage = textMessage;
|
|
2970
|
-
}
|
|
2971
|
-
}
|
|
2972
|
-
if (images.length > 0) {
|
|
2973
|
-
for (let i = 0; i < images.length; i++) {
|
|
2974
|
-
const imageMessage = {
|
|
2975
|
-
id: (0, import_shared4.randomId)(),
|
|
2976
|
-
role: "user",
|
|
2977
|
-
image: {
|
|
2978
|
-
format: images[i].contentType.replace("image/", ""),
|
|
2979
|
-
bytes: images[i].bytes
|
|
2980
|
-
}
|
|
2981
|
-
};
|
|
2982
|
-
yield sendMessage(imageMessage, { followUp: i === images.length - 1 });
|
|
2983
|
-
if (!firstMessage) {
|
|
2984
|
-
firstMessage = imageMessage;
|
|
2985
|
-
}
|
|
2986
|
-
}
|
|
2987
|
-
}
|
|
2988
|
-
if (!firstMessage) {
|
|
2989
|
-
return { role: "user", content: "", id: (0, import_shared4.randomId)() };
|
|
2990
|
-
}
|
|
2991
|
-
return firstMessage;
|
|
2992
|
-
});
|
|
2993
|
-
const currentAgentName = (_a = generalContext.agentSession) == null ? void 0 : _a.agentName;
|
|
2994
|
-
const restartCurrentAgent = (hint) => __async(void 0, null, function* () {
|
|
2995
|
-
if (generalContext.agentSession) {
|
|
2996
|
-
generalContext.setAgentSession(__spreadProps(__spreadValues({}, generalContext.agentSession), {
|
|
2997
|
-
nodeName: void 0,
|
|
2998
|
-
threadId: void 0
|
|
2999
|
-
}));
|
|
3000
|
-
generalContext.setCoagentStates((prevAgentStates) => {
|
|
3001
|
-
return __spreadProps(__spreadValues({}, prevAgentStates), {
|
|
3002
|
-
[generalContext.agentSession.agentName]: __spreadProps(__spreadValues({}, prevAgentStates[generalContext.agentSession.agentName]), {
|
|
3003
|
-
threadId: void 0,
|
|
3004
|
-
nodeName: void 0,
|
|
3005
|
-
runId: void 0
|
|
3006
|
-
})
|
|
3007
|
-
});
|
|
3008
|
-
});
|
|
3009
|
-
}
|
|
3010
|
-
});
|
|
3011
|
-
const runCurrentAgent = (hint) => __async(void 0, null, function* () {
|
|
3012
|
-
if (generalContext.agentSession) {
|
|
3013
|
-
yield (0, import_react_core10.runAgent)(
|
|
3014
|
-
generalContext.agentSession.agentName,
|
|
3015
|
-
stableContext,
|
|
3016
|
-
messagesContext.messages,
|
|
3017
|
-
sendMessage,
|
|
3018
|
-
runChatCompletion
|
|
3019
|
-
);
|
|
3020
|
-
}
|
|
3021
|
-
});
|
|
3022
|
-
const stopCurrentAgent = () => {
|
|
3023
|
-
if (generalContext.agentSession) {
|
|
3024
|
-
(0, import_react_core10.stopAgent)(generalContext.agentSession.agentName, stableContext);
|
|
3025
|
-
}
|
|
3026
|
-
};
|
|
3027
|
-
const setCurrentAgentState = (state) => {
|
|
3028
|
-
if (generalContext.agentSession) {
|
|
3029
|
-
generalContext.setCoagentStates((prevAgentStates) => {
|
|
3030
|
-
return __spreadProps(__spreadValues({}, prevAgentStates), {
|
|
3031
|
-
[generalContext.agentSession.agentName]: {
|
|
3032
|
-
state
|
|
3033
|
-
}
|
|
3034
|
-
});
|
|
3035
|
-
});
|
|
3036
|
-
}
|
|
3037
|
-
};
|
|
3038
|
-
function stopGeneration() {
|
|
3039
|
-
setSuggestions([]);
|
|
3040
|
-
if (onStopGeneration) {
|
|
3041
|
-
onStopGeneration({
|
|
3042
|
-
messages,
|
|
3043
|
-
setMessages,
|
|
3044
|
-
stopGeneration: defaultStopGeneration,
|
|
3045
|
-
currentAgentName,
|
|
3046
|
-
restartCurrentAgent,
|
|
3047
|
-
stopCurrentAgent,
|
|
3048
|
-
runCurrentAgent,
|
|
3049
|
-
setCurrentAgentState
|
|
3050
|
-
});
|
|
3051
|
-
} else {
|
|
3052
|
-
defaultStopGeneration();
|
|
3053
|
-
}
|
|
3054
|
-
}
|
|
3055
|
-
function reloadMessages(messageId) {
|
|
3056
|
-
if (onReloadMessages) {
|
|
3057
|
-
onReloadMessages({
|
|
3058
|
-
messages,
|
|
3059
|
-
setMessages,
|
|
3060
|
-
stopGeneration: defaultStopGeneration,
|
|
3061
|
-
currentAgentName,
|
|
3062
|
-
restartCurrentAgent,
|
|
3063
|
-
stopCurrentAgent,
|
|
3064
|
-
runCurrentAgent,
|
|
3065
|
-
setCurrentAgentState,
|
|
3066
|
-
messageId
|
|
3067
|
-
});
|
|
3068
|
-
} else {
|
|
3069
|
-
defaultReloadMessages(messageId);
|
|
3070
|
-
}
|
|
3071
|
-
}
|
|
3072
|
-
return {
|
|
3073
|
-
messages,
|
|
3074
|
-
isLoading,
|
|
3075
|
-
suggestions,
|
|
3076
|
-
sendMessage: safelySendMessage,
|
|
3077
|
-
stopGeneration,
|
|
3078
|
-
reloadMessages,
|
|
3079
|
-
resetSuggestions,
|
|
3080
|
-
context: stableContext,
|
|
3081
|
-
actions
|
|
3082
|
-
};
|
|
3083
|
-
};
|
|
3084
2896
|
|
|
3085
2897
|
// src/components/chat/Modal.tsx
|
|
3086
|
-
var
|
|
3087
|
-
var
|
|
2898
|
+
var import_react_core10 = require("@copilotkit/react-core");
|
|
2899
|
+
var import_shared4 = require("@copilotkit/shared");
|
|
3088
2900
|
var import_jsx_runtime25 = require("react/jsx-runtime");
|
|
3089
2901
|
var CopilotModalInner = (_a) => {
|
|
3090
2902
|
var _b = _a, {
|
|
@@ -3110,7 +2922,7 @@ var CopilotModalInner = (_a) => {
|
|
|
3110
2922
|
"Button",
|
|
3111
2923
|
"Header"
|
|
3112
2924
|
]);
|
|
3113
|
-
const { copilotApiConfig, setBannerError } = (0,
|
|
2925
|
+
const { copilotApiConfig, setBannerError } = (0, import_react_core10.useCopilotContext)();
|
|
3114
2926
|
const { publicApiKey } = copilotApiConfig;
|
|
3115
2927
|
const triggerObservabilityHook = (0, import_react16.useCallback)(
|
|
3116
2928
|
(hookName, ...args) => {
|
|
@@ -3119,14 +2931,14 @@ var CopilotModalInner = (_a) => {
|
|
|
3119
2931
|
}
|
|
3120
2932
|
if ((observabilityHooks == null ? void 0 : observabilityHooks[hookName]) && !publicApiKey) {
|
|
3121
2933
|
setBannerError(
|
|
3122
|
-
new
|
|
2934
|
+
new import_shared4.CopilotKitError({
|
|
3123
2935
|
message: "observabilityHooks requires a publicApiKey to function.",
|
|
3124
|
-
code:
|
|
3125
|
-
severity:
|
|
3126
|
-
visibility:
|
|
2936
|
+
code: import_shared4.CopilotKitErrorCode.MISSING_PUBLIC_API_KEY_ERROR,
|
|
2937
|
+
severity: import_shared4.Severity.CRITICAL,
|
|
2938
|
+
visibility: import_shared4.ErrorVisibility.BANNER
|
|
3127
2939
|
})
|
|
3128
2940
|
);
|
|
3129
|
-
|
|
2941
|
+
import_shared4.styledConsole.publicApiKeyRequired("observabilityHooks");
|
|
3130
2942
|
}
|
|
3131
2943
|
},
|
|
3132
2944
|
[publicApiKey, observabilityHooks, setBannerError]
|