@copilotkit/react-ui 1.8.4 → 1.8.5-next.1
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 +19 -0
- package/dist/{chunk-6F2ZAK7T.mjs → chunk-4TWPMWD4.mjs} +2 -2
- package/dist/{chunk-7RIBDD4K.mjs → chunk-62QMTKMJ.mjs} +22 -7
- package/dist/chunk-62QMTKMJ.mjs.map +1 -0
- package/dist/{chunk-LGMQR7XG.mjs → chunk-6QV7AIIG.mjs} +2 -2
- package/dist/{chunk-7EDMOLGH.mjs → chunk-MYUOPOIL.mjs} +15 -14
- package/dist/chunk-MYUOPOIL.mjs.map +1 -0
- package/dist/{chunk-XB6QCUPB.mjs → chunk-NMNC4ROZ.mjs} +20 -8
- package/dist/chunk-NMNC4ROZ.mjs.map +1 -0
- package/dist/{chunk-UWWMAJ7R.mjs → chunk-Q2YY2NX3.mjs} +20 -8
- package/dist/chunk-Q2YY2NX3.mjs.map +1 -0
- package/dist/{chunk-QTD2KREC.mjs → chunk-U6ISBBRF.mjs} +2 -2
- package/dist/{chunk-WEYDZBT7.mjs → chunk-WNC6OCIB.mjs} +16 -4
- package/dist/chunk-WNC6OCIB.mjs.map +1 -0
- package/dist/components/chat/Chat.d.ts +8 -3
- package/dist/components/chat/Chat.js +327 -306
- package/dist/components/chat/Chat.js.map +1 -1
- package/dist/components/chat/Chat.mjs +5 -5
- package/dist/components/chat/Modal.js +327 -306
- package/dist/components/chat/Modal.js.map +1 -1
- package/dist/components/chat/Modal.mjs +6 -6
- package/dist/components/chat/Popup.js +327 -306
- package/dist/components/chat/Popup.js.map +1 -1
- package/dist/components/chat/Popup.mjs +7 -7
- package/dist/components/chat/Sidebar.js +327 -306
- package/dist/components/chat/Sidebar.js.map +1 -1
- package/dist/components/chat/Sidebar.mjs +7 -7
- package/dist/components/chat/index.js +327 -306
- package/dist/components/chat/index.js.map +1 -1
- package/dist/components/chat/index.mjs +8 -8
- package/dist/components/chat/messages/RenderActionExecutionMessage.d.ts +1 -1
- package/dist/components/chat/messages/RenderActionExecutionMessage.js +696 -15
- package/dist/components/chat/messages/RenderActionExecutionMessage.js.map +1 -1
- package/dist/components/chat/messages/RenderActionExecutionMessage.mjs +7 -1
- package/dist/components/chat/messages/RenderAgentStateMessage.d.ts +1 -1
- package/dist/components/chat/messages/RenderAgentStateMessage.js +693 -12
- package/dist/components/chat/messages/RenderAgentStateMessage.js.map +1 -1
- package/dist/components/chat/messages/RenderAgentStateMessage.mjs +7 -1
- package/dist/components/chat/messages/RenderResultMessage.d.ts +1 -1
- package/dist/components/chat/messages/RenderResultMessage.js +685 -4
- package/dist/components/chat/messages/RenderResultMessage.js.map +1 -1
- package/dist/components/chat/messages/RenderResultMessage.mjs +7 -1
- package/dist/components/chat/messages/RenderTextMessage.d.ts +1 -1
- package/dist/components/chat/messages/RenderTextMessage.js +695 -8
- package/dist/components/chat/messages/RenderTextMessage.js.map +1 -1
- package/dist/components/chat/messages/RenderTextMessage.mjs +8 -1
- package/dist/components/chat/props.d.ts +4 -4
- package/dist/components/chat/props.js.map +1 -1
- package/dist/components/index.js +327 -306
- package/dist/components/index.js.map +1 -1
- package/dist/components/index.mjs +8 -8
- package/dist/index.js +327 -306
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +8 -8
- package/package.json +4 -4
- package/src/components/chat/Chat.tsx +13 -7
- package/src/components/chat/messages/RenderActionExecutionMessage.tsx +6 -2
- package/src/components/chat/messages/RenderAgentStateMessage.tsx +6 -2
- package/src/components/chat/messages/RenderResultMessage.tsx +6 -2
- package/src/components/chat/messages/RenderTextMessage.tsx +8 -4
- package/src/components/chat/props.ts +4 -4
- package/dist/chunk-7EDMOLGH.mjs.map +0 -1
- package/dist/chunk-7RIBDD4K.mjs.map +0 -1
- package/dist/chunk-UWWMAJ7R.mjs.map +0 -1
- package/dist/chunk-WEYDZBT7.mjs.map +0 -1
- package/dist/chunk-XB6QCUPB.mjs.map +0 -1
- /package/dist/{chunk-6F2ZAK7T.mjs.map → chunk-4TWPMWD4.mjs.map} +0 -0
- /package/dist/{chunk-LGMQR7XG.mjs.map → chunk-6QV7AIIG.mjs.map} +0 -0
- /package/dist/{chunk-QTD2KREC.mjs.map → chunk-U6ISBBRF.mjs.map} +0 -0
package/dist/index.js
CHANGED
|
@@ -1464,276 +1464,11 @@ var Input = ({ inProgress, onSend, isVisible = false, onStop }) => {
|
|
|
1464
1464
|
] }) });
|
|
1465
1465
|
};
|
|
1466
1466
|
|
|
1467
|
-
// src/components/chat/messages/
|
|
1467
|
+
// src/components/chat/messages/UserMessage.tsx
|
|
1468
1468
|
var import_jsx_runtime13 = require("react/jsx-runtime");
|
|
1469
|
-
|
|
1470
|
-
|
|
1471
|
-
|
|
1472
|
-
inProgress,
|
|
1473
|
-
index,
|
|
1474
|
-
isCurrentMessage,
|
|
1475
|
-
UserMessage: UserMessage2,
|
|
1476
|
-
AssistantMessage: AssistantMessage2,
|
|
1477
|
-
onRegenerate,
|
|
1478
|
-
onCopy,
|
|
1479
|
-
onThumbsUp,
|
|
1480
|
-
onThumbsDown
|
|
1481
|
-
} = props;
|
|
1482
|
-
if (message.isTextMessage()) {
|
|
1483
|
-
if (message.role === "user") {
|
|
1484
|
-
return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
1485
|
-
UserMessage2,
|
|
1486
|
-
{
|
|
1487
|
-
"data-message-role": "user",
|
|
1488
|
-
message: message.content,
|
|
1489
|
-
rawData: message
|
|
1490
|
-
},
|
|
1491
|
-
index
|
|
1492
|
-
);
|
|
1493
|
-
} else if (message.role == "assistant") {
|
|
1494
|
-
return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
1495
|
-
AssistantMessage2,
|
|
1496
|
-
{
|
|
1497
|
-
"data-message-role": "assistant",
|
|
1498
|
-
message: message.content,
|
|
1499
|
-
rawData: message,
|
|
1500
|
-
isLoading: inProgress && isCurrentMessage && !message.content,
|
|
1501
|
-
isGenerating: inProgress && isCurrentMessage && !!message.content,
|
|
1502
|
-
isCurrentMessage,
|
|
1503
|
-
onRegenerate,
|
|
1504
|
-
onCopy,
|
|
1505
|
-
onThumbsUp,
|
|
1506
|
-
onThumbsDown
|
|
1507
|
-
},
|
|
1508
|
-
index
|
|
1509
|
-
);
|
|
1510
|
-
}
|
|
1511
|
-
}
|
|
1512
|
-
}
|
|
1513
|
-
|
|
1514
|
-
// src/components/chat/messages/RenderActionExecutionMessage.tsx
|
|
1515
|
-
var import_runtime_client_gql2 = require("@copilotkit/runtime-client-gql");
|
|
1516
|
-
var import_react_core6 = require("@copilotkit/react-core");
|
|
1517
|
-
var import_jsx_runtime14 = require("react/jsx-runtime");
|
|
1518
|
-
function RenderActionExecutionMessage(props) {
|
|
1519
|
-
const { chatComponentsCache } = (0, import_react_core6.useCopilotContext)();
|
|
1520
|
-
const { message, inProgress, index, isCurrentMessage, actionResult, AssistantMessage: AssistantMessage2 } = props;
|
|
1521
|
-
if (message.isActionExecutionMessage()) {
|
|
1522
|
-
if (chatComponentsCache.current !== null && (chatComponentsCache.current.actions[message.name] || chatComponentsCache.current.actions["*"])) {
|
|
1523
|
-
const render = chatComponentsCache.current.actions[message.name] || chatComponentsCache.current.actions["*"];
|
|
1524
|
-
if (typeof render === "string") {
|
|
1525
|
-
if (isCurrentMessage && inProgress) {
|
|
1526
|
-
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
1527
|
-
AssistantMessage2,
|
|
1528
|
-
{
|
|
1529
|
-
rawData: message,
|
|
1530
|
-
"data-message-role": "assistant",
|
|
1531
|
-
isLoading: false,
|
|
1532
|
-
isGenerating: true,
|
|
1533
|
-
message: render
|
|
1534
|
-
},
|
|
1535
|
-
index
|
|
1536
|
-
);
|
|
1537
|
-
} else {
|
|
1538
|
-
return null;
|
|
1539
|
-
}
|
|
1540
|
-
} else {
|
|
1541
|
-
const args = message.arguments;
|
|
1542
|
-
let status = "inProgress";
|
|
1543
|
-
if (actionResult !== void 0) {
|
|
1544
|
-
status = "complete";
|
|
1545
|
-
} else if (message.status.code !== import_runtime_client_gql2.MessageStatusCode.Pending) {
|
|
1546
|
-
status = "executing";
|
|
1547
|
-
}
|
|
1548
|
-
try {
|
|
1549
|
-
const toRender = render({
|
|
1550
|
-
status,
|
|
1551
|
-
args,
|
|
1552
|
-
result: actionResult,
|
|
1553
|
-
name: message.name
|
|
1554
|
-
});
|
|
1555
|
-
if (!toRender && status === "complete") {
|
|
1556
|
-
return null;
|
|
1557
|
-
}
|
|
1558
|
-
if (typeof toRender === "string") {
|
|
1559
|
-
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
1560
|
-
AssistantMessage2,
|
|
1561
|
-
{
|
|
1562
|
-
rawData: message,
|
|
1563
|
-
"data-message-role": "assistant",
|
|
1564
|
-
isLoading: false,
|
|
1565
|
-
isGenerating: false,
|
|
1566
|
-
message: toRender
|
|
1567
|
-
},
|
|
1568
|
-
index
|
|
1569
|
-
);
|
|
1570
|
-
} else {
|
|
1571
|
-
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
1572
|
-
AssistantMessage2,
|
|
1573
|
-
{
|
|
1574
|
-
rawData: message,
|
|
1575
|
-
"data-message-role": "action-render",
|
|
1576
|
-
isLoading: false,
|
|
1577
|
-
isGenerating: false,
|
|
1578
|
-
subComponent: toRender
|
|
1579
|
-
},
|
|
1580
|
-
index
|
|
1581
|
-
);
|
|
1582
|
-
}
|
|
1583
|
-
} catch (e) {
|
|
1584
|
-
console.error(`Error executing render function for action ${message.name}: ${e}`);
|
|
1585
|
-
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
1586
|
-
AssistantMessage2,
|
|
1587
|
-
{
|
|
1588
|
-
rawData: message,
|
|
1589
|
-
"data-message-role": "assistant",
|
|
1590
|
-
isLoading: false,
|
|
1591
|
-
isGenerating: false,
|
|
1592
|
-
subComponent: /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "copilotKitMessage copilotKitAssistantMessage", children: [
|
|
1593
|
-
/* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("b", { children: [
|
|
1594
|
-
"\u274C Error executing render function for action ",
|
|
1595
|
-
message.name,
|
|
1596
|
-
":"
|
|
1597
|
-
] }),
|
|
1598
|
-
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("pre", { children: e instanceof Error ? e.message : String(e) })
|
|
1599
|
-
] })
|
|
1600
|
-
},
|
|
1601
|
-
index
|
|
1602
|
-
);
|
|
1603
|
-
}
|
|
1604
|
-
}
|
|
1605
|
-
} else if (!inProgress || !isCurrentMessage) {
|
|
1606
|
-
return null;
|
|
1607
|
-
} else {
|
|
1608
|
-
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
1609
|
-
AssistantMessage2,
|
|
1610
|
-
{
|
|
1611
|
-
rawData: message,
|
|
1612
|
-
"data-message-role": "assistant",
|
|
1613
|
-
isLoading: true,
|
|
1614
|
-
isGenerating: true
|
|
1615
|
-
},
|
|
1616
|
-
index
|
|
1617
|
-
);
|
|
1618
|
-
}
|
|
1619
|
-
}
|
|
1620
|
-
}
|
|
1621
|
-
|
|
1622
|
-
// src/components/chat/messages/RenderResultMessage.tsx
|
|
1623
|
-
var import_jsx_runtime15 = require("react/jsx-runtime");
|
|
1624
|
-
function RenderResultMessage(props) {
|
|
1625
|
-
const { message, inProgress, index, isCurrentMessage, AssistantMessage: AssistantMessage2 } = props;
|
|
1626
|
-
if (message.isResultMessage() && inProgress && isCurrentMessage) {
|
|
1627
|
-
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1628
|
-
AssistantMessage2,
|
|
1629
|
-
{
|
|
1630
|
-
"data-message-role": "assistant",
|
|
1631
|
-
rawData: message,
|
|
1632
|
-
isLoading: true,
|
|
1633
|
-
isGenerating: true
|
|
1634
|
-
},
|
|
1635
|
-
index
|
|
1636
|
-
);
|
|
1637
|
-
} else {
|
|
1638
|
-
return null;
|
|
1639
|
-
}
|
|
1640
|
-
}
|
|
1641
|
-
|
|
1642
|
-
// src/components/chat/messages/RenderAgentStateMessage.tsx
|
|
1643
|
-
var import_react_core7 = require("@copilotkit/react-core");
|
|
1644
|
-
var import_jsx_runtime16 = require("react/jsx-runtime");
|
|
1645
|
-
function RenderAgentStateMessage(props) {
|
|
1646
|
-
const { chatComponentsCache } = (0, import_react_core7.useCopilotContext)();
|
|
1647
|
-
const { message, inProgress, index, isCurrentMessage, AssistantMessage: AssistantMessage2 } = props;
|
|
1648
|
-
if (message.isAgentStateMessage()) {
|
|
1649
|
-
let render;
|
|
1650
|
-
if (chatComponentsCache.current !== null) {
|
|
1651
|
-
render = chatComponentsCache.current.coAgentStateRenders[`${message.agentName}-${message.nodeName}`] || chatComponentsCache.current.coAgentStateRenders[`${message.agentName}-global`];
|
|
1652
|
-
}
|
|
1653
|
-
if (render) {
|
|
1654
|
-
if (typeof render === "string") {
|
|
1655
|
-
if (isCurrentMessage && inProgress) {
|
|
1656
|
-
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1657
|
-
AssistantMessage2,
|
|
1658
|
-
{
|
|
1659
|
-
rawData: message,
|
|
1660
|
-
message: render,
|
|
1661
|
-
"data-message-role": "assistant",
|
|
1662
|
-
isLoading: true,
|
|
1663
|
-
isGenerating: true
|
|
1664
|
-
},
|
|
1665
|
-
index
|
|
1666
|
-
);
|
|
1667
|
-
} else {
|
|
1668
|
-
return null;
|
|
1669
|
-
}
|
|
1670
|
-
} else {
|
|
1671
|
-
const state = message.state;
|
|
1672
|
-
let status = message.active ? "inProgress" : "complete";
|
|
1673
|
-
const toRender = render({
|
|
1674
|
-
status,
|
|
1675
|
-
state,
|
|
1676
|
-
nodeName: message.nodeName
|
|
1677
|
-
});
|
|
1678
|
-
if (!toRender && status === "complete") {
|
|
1679
|
-
return null;
|
|
1680
|
-
}
|
|
1681
|
-
if (!toRender && isCurrentMessage && inProgress) {
|
|
1682
|
-
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1683
|
-
AssistantMessage2,
|
|
1684
|
-
{
|
|
1685
|
-
"data-message-role": "assistant",
|
|
1686
|
-
rawData: message,
|
|
1687
|
-
isLoading: true,
|
|
1688
|
-
isGenerating: true
|
|
1689
|
-
},
|
|
1690
|
-
index
|
|
1691
|
-
);
|
|
1692
|
-
} else if (!toRender) {
|
|
1693
|
-
return null;
|
|
1694
|
-
}
|
|
1695
|
-
if (typeof toRender === "string") {
|
|
1696
|
-
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1697
|
-
AssistantMessage2,
|
|
1698
|
-
{
|
|
1699
|
-
rawData: message,
|
|
1700
|
-
message: toRender,
|
|
1701
|
-
isLoading: true,
|
|
1702
|
-
isGenerating: true,
|
|
1703
|
-
"data-message-role": "assistant"
|
|
1704
|
-
},
|
|
1705
|
-
index
|
|
1706
|
-
);
|
|
1707
|
-
} else {
|
|
1708
|
-
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1709
|
-
AssistantMessage2,
|
|
1710
|
-
{
|
|
1711
|
-
rawData: message,
|
|
1712
|
-
"data-message-role": "agent-state-render",
|
|
1713
|
-
isLoading: false,
|
|
1714
|
-
isGenerating: false,
|
|
1715
|
-
subComponent: toRender
|
|
1716
|
-
},
|
|
1717
|
-
index
|
|
1718
|
-
);
|
|
1719
|
-
}
|
|
1720
|
-
}
|
|
1721
|
-
} else if (!inProgress || !isCurrentMessage) {
|
|
1722
|
-
return null;
|
|
1723
|
-
} else {
|
|
1724
|
-
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1725
|
-
AssistantMessage2,
|
|
1726
|
-
{
|
|
1727
|
-
rawData: message,
|
|
1728
|
-
isLoading: true,
|
|
1729
|
-
isGenerating: true,
|
|
1730
|
-
"data-message-role": "assistant"
|
|
1731
|
-
},
|
|
1732
|
-
index
|
|
1733
|
-
);
|
|
1734
|
-
}
|
|
1735
|
-
}
|
|
1736
|
-
}
|
|
1469
|
+
var UserMessage = (props) => {
|
|
1470
|
+
return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: "copilotKitMessage copilotKitUserMessage", children: props.message });
|
|
1471
|
+
};
|
|
1737
1472
|
|
|
1738
1473
|
// src/components/chat/Markdown.tsx
|
|
1739
1474
|
var import_react11 = require("react");
|
|
@@ -1766,7 +1501,7 @@ function useCopyToClipboard({ timeout = 2e3 }) {
|
|
|
1766
1501
|
}
|
|
1767
1502
|
|
|
1768
1503
|
// src/components/chat/CodeBlock.tsx
|
|
1769
|
-
var
|
|
1504
|
+
var import_jsx_runtime14 = require("react/jsx-runtime");
|
|
1770
1505
|
var programmingLanguages = {
|
|
1771
1506
|
javascript: ".js",
|
|
1772
1507
|
python: ".py",
|
|
@@ -1829,15 +1564,15 @@ var CodeBlock = (0, import_react10.memo)(({ language, value }) => {
|
|
|
1829
1564
|
return;
|
|
1830
1565
|
copyToClipboard(value);
|
|
1831
1566
|
};
|
|
1832
|
-
return /* @__PURE__ */ (0,
|
|
1833
|
-
/* @__PURE__ */ (0,
|
|
1834
|
-
/* @__PURE__ */ (0,
|
|
1835
|
-
/* @__PURE__ */ (0,
|
|
1836
|
-
/* @__PURE__ */ (0,
|
|
1837
|
-
/* @__PURE__ */ (0,
|
|
1567
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "copilotKitCodeBlock", children: [
|
|
1568
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "copilotKitCodeBlockToolbar", children: [
|
|
1569
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "copilotKitCodeBlockToolbarLanguage", children: language }),
|
|
1570
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "copilotKitCodeBlockToolbarButtons", children: [
|
|
1571
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("button", { className: "copilotKitCodeBlockToolbarButton", onClick: downloadAsFile, children: DownloadIcon }),
|
|
1572
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("button", { className: "copilotKitCodeBlockToolbarButton", onClick: onCopy, children: isCopied ? CheckIcon : CopyIcon })
|
|
1838
1573
|
] })
|
|
1839
1574
|
] }),
|
|
1840
|
-
/* @__PURE__ */ (0,
|
|
1575
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
1841
1576
|
import_react_syntax_highlighter.Prism,
|
|
1842
1577
|
{
|
|
1843
1578
|
language,
|
|
@@ -2140,18 +1875,18 @@ var highlightStyle = {
|
|
|
2140
1875
|
// src/components/chat/Markdown.tsx
|
|
2141
1876
|
var import_remark_gfm = __toESM(require("remark-gfm"));
|
|
2142
1877
|
var import_remark_math = __toESM(require("remark-math"));
|
|
2143
|
-
var
|
|
1878
|
+
var import_jsx_runtime15 = require("react/jsx-runtime");
|
|
2144
1879
|
var MemoizedReactMarkdown = (0, import_react11.memo)(
|
|
2145
1880
|
import_react_markdown.default,
|
|
2146
1881
|
(prevProps, nextProps) => prevProps.children === nextProps.children && prevProps.className === nextProps.className
|
|
2147
1882
|
);
|
|
2148
1883
|
var Markdown = ({ content }) => {
|
|
2149
|
-
return /* @__PURE__ */ (0,
|
|
1884
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "copilotKitMarkdown", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(MemoizedReactMarkdown, { components, remarkPlugins: [import_remark_gfm.default, import_remark_math.default], children: content }) });
|
|
2150
1885
|
};
|
|
2151
1886
|
var components = {
|
|
2152
1887
|
a(_a) {
|
|
2153
1888
|
var _b = _a, { children } = _b, props = __objRest(_b, ["children"]);
|
|
2154
|
-
return /* @__PURE__ */ (0,
|
|
1889
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
2155
1890
|
"a",
|
|
2156
1891
|
__spreadProps(__spreadValues({
|
|
2157
1892
|
style: { color: "blue", textDecoration: "underline" }
|
|
@@ -2166,7 +1901,7 @@ var components = {
|
|
|
2166
1901
|
var _d = _c, { children, className, inline } = _d, props = __objRest(_d, ["children", "className", "inline"]);
|
|
2167
1902
|
if (children.length) {
|
|
2168
1903
|
if (children[0] == "\u258D") {
|
|
2169
|
-
return /* @__PURE__ */ (0,
|
|
1904
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
2170
1905
|
"span",
|
|
2171
1906
|
{
|
|
2172
1907
|
style: {
|
|
@@ -2181,9 +1916,9 @@ var components = {
|
|
|
2181
1916
|
}
|
|
2182
1917
|
const match = /language-(\w+)/.exec(className || "");
|
|
2183
1918
|
if (inline) {
|
|
2184
|
-
return /* @__PURE__ */ (0,
|
|
1919
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("code", __spreadProps(__spreadValues({ className }, props), { children }));
|
|
2185
1920
|
}
|
|
2186
|
-
return /* @__PURE__ */ (0,
|
|
1921
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
2187
1922
|
CodeBlock,
|
|
2188
1923
|
__spreadValues({
|
|
2189
1924
|
language: match && match[1] || "",
|
|
@@ -2196,7 +1931,7 @@ var components = {
|
|
|
2196
1931
|
|
|
2197
1932
|
// src/components/chat/messages/AssistantMessage.tsx
|
|
2198
1933
|
var import_react12 = require("react");
|
|
2199
|
-
var
|
|
1934
|
+
var import_jsx_runtime16 = require("react/jsx-runtime");
|
|
2200
1935
|
var AssistantMessage = (props) => {
|
|
2201
1936
|
const { icons, labels } = useChatContext();
|
|
2202
1937
|
const {
|
|
@@ -2237,17 +1972,17 @@ var AssistantMessage = (props) => {
|
|
|
2237
1972
|
onThumbsDown(message);
|
|
2238
1973
|
}
|
|
2239
1974
|
};
|
|
2240
|
-
const LoadingIcon = () => /* @__PURE__ */ (0,
|
|
2241
|
-
return /* @__PURE__ */ (0,
|
|
2242
|
-
(message || isLoading) && /* @__PURE__ */ (0,
|
|
2243
|
-
message && /* @__PURE__ */ (0,
|
|
2244
|
-
isLoading && /* @__PURE__ */ (0,
|
|
2245
|
-
message && !isLoading && /* @__PURE__ */ (0,
|
|
1975
|
+
const LoadingIcon = () => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { children: icons.activityIcon });
|
|
1976
|
+
return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(import_jsx_runtime16.Fragment, { children: [
|
|
1977
|
+
(message || isLoading) && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "copilotKitMessage copilotKitAssistantMessage", children: [
|
|
1978
|
+
message && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Markdown, { content: message || "" }),
|
|
1979
|
+
isLoading && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(LoadingIcon, {}),
|
|
1980
|
+
message && !isLoading && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
|
|
2246
1981
|
"div",
|
|
2247
1982
|
{
|
|
2248
1983
|
className: `copilotKitMessageControls ${isCurrentMessage ? "currentMessage" : ""}`,
|
|
2249
1984
|
children: [
|
|
2250
|
-
/* @__PURE__ */ (0,
|
|
1985
|
+
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
2251
1986
|
"button",
|
|
2252
1987
|
{
|
|
2253
1988
|
className: "copilotKitMessageControlButton",
|
|
@@ -2257,17 +1992,17 @@ var AssistantMessage = (props) => {
|
|
|
2257
1992
|
children: icons.regenerateIcon
|
|
2258
1993
|
}
|
|
2259
1994
|
),
|
|
2260
|
-
/* @__PURE__ */ (0,
|
|
1995
|
+
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
2261
1996
|
"button",
|
|
2262
1997
|
{
|
|
2263
1998
|
className: "copilotKitMessageControlButton",
|
|
2264
1999
|
onClick: handleCopy,
|
|
2265
2000
|
"aria-label": labels.copyToClipboard,
|
|
2266
2001
|
title: labels.copyToClipboard,
|
|
2267
|
-
children: copied ? /* @__PURE__ */ (0,
|
|
2002
|
+
children: copied ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { style: { fontSize: "10px", fontWeight: "bold" }, children: "\u2713" }) : icons.copyIcon
|
|
2268
2003
|
}
|
|
2269
2004
|
),
|
|
2270
|
-
onThumbsUp && /* @__PURE__ */ (0,
|
|
2005
|
+
onThumbsUp && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
2271
2006
|
"button",
|
|
2272
2007
|
{
|
|
2273
2008
|
className: "copilotKitMessageControlButton",
|
|
@@ -2277,7 +2012,7 @@ var AssistantMessage = (props) => {
|
|
|
2277
2012
|
children: icons.thumbsUpIcon
|
|
2278
2013
|
}
|
|
2279
2014
|
),
|
|
2280
|
-
onThumbsDown && /* @__PURE__ */ (0,
|
|
2015
|
+
onThumbsDown && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
2281
2016
|
"button",
|
|
2282
2017
|
{
|
|
2283
2018
|
className: "copilotKitMessageControlButton",
|
|
@@ -2291,15 +2026,300 @@ var AssistantMessage = (props) => {
|
|
|
2291
2026
|
}
|
|
2292
2027
|
)
|
|
2293
2028
|
] }),
|
|
2294
|
-
/* @__PURE__ */ (0,
|
|
2029
|
+
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { style: { marginBottom: "0.5rem" }, children: subComponent })
|
|
2295
2030
|
] });
|
|
2296
2031
|
};
|
|
2297
2032
|
|
|
2298
|
-
// src/components/chat/messages/
|
|
2033
|
+
// src/components/chat/messages/RenderTextMessage.tsx
|
|
2034
|
+
var import_jsx_runtime17 = require("react/jsx-runtime");
|
|
2035
|
+
function RenderTextMessage(_a) {
|
|
2036
|
+
var _b = _a, {
|
|
2037
|
+
UserMessage: UserMessage2 = UserMessage,
|
|
2038
|
+
AssistantMessage: AssistantMessage2 = AssistantMessage
|
|
2039
|
+
} = _b, props = __objRest(_b, [
|
|
2040
|
+
"UserMessage",
|
|
2041
|
+
"AssistantMessage"
|
|
2042
|
+
]);
|
|
2043
|
+
const {
|
|
2044
|
+
message,
|
|
2045
|
+
inProgress,
|
|
2046
|
+
index,
|
|
2047
|
+
isCurrentMessage,
|
|
2048
|
+
onRegenerate,
|
|
2049
|
+
onCopy,
|
|
2050
|
+
onThumbsUp,
|
|
2051
|
+
onThumbsDown
|
|
2052
|
+
} = props;
|
|
2053
|
+
if (message.isTextMessage()) {
|
|
2054
|
+
if (message.role === "user") {
|
|
2055
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
|
2056
|
+
UserMessage2,
|
|
2057
|
+
{
|
|
2058
|
+
"data-message-role": "user",
|
|
2059
|
+
message: message.content,
|
|
2060
|
+
rawData: message
|
|
2061
|
+
},
|
|
2062
|
+
index
|
|
2063
|
+
);
|
|
2064
|
+
} else if (message.role == "assistant") {
|
|
2065
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
|
2066
|
+
AssistantMessage2,
|
|
2067
|
+
{
|
|
2068
|
+
"data-message-role": "assistant",
|
|
2069
|
+
message: message.content,
|
|
2070
|
+
rawData: message,
|
|
2071
|
+
isLoading: inProgress && isCurrentMessage && !message.content,
|
|
2072
|
+
isGenerating: inProgress && isCurrentMessage && !!message.content,
|
|
2073
|
+
isCurrentMessage,
|
|
2074
|
+
onRegenerate: () => onRegenerate == null ? void 0 : onRegenerate(message.id),
|
|
2075
|
+
onCopy,
|
|
2076
|
+
onThumbsUp,
|
|
2077
|
+
onThumbsDown
|
|
2078
|
+
},
|
|
2079
|
+
index
|
|
2080
|
+
);
|
|
2081
|
+
}
|
|
2082
|
+
}
|
|
2083
|
+
}
|
|
2084
|
+
|
|
2085
|
+
// src/components/chat/messages/RenderActionExecutionMessage.tsx
|
|
2086
|
+
var import_runtime_client_gql2 = require("@copilotkit/runtime-client-gql");
|
|
2087
|
+
var import_react_core6 = require("@copilotkit/react-core");
|
|
2088
|
+
var import_jsx_runtime18 = require("react/jsx-runtime");
|
|
2089
|
+
function RenderActionExecutionMessage(_a) {
|
|
2090
|
+
var _b = _a, {
|
|
2091
|
+
AssistantMessage: AssistantMessage2 = AssistantMessage
|
|
2092
|
+
} = _b, props = __objRest(_b, [
|
|
2093
|
+
"AssistantMessage"
|
|
2094
|
+
]);
|
|
2095
|
+
const { chatComponentsCache } = (0, import_react_core6.useCopilotContext)();
|
|
2096
|
+
const { message, inProgress, index, isCurrentMessage, actionResult } = props;
|
|
2097
|
+
if (message.isActionExecutionMessage()) {
|
|
2098
|
+
if (chatComponentsCache.current !== null && (chatComponentsCache.current.actions[message.name] || chatComponentsCache.current.actions["*"])) {
|
|
2099
|
+
const render = chatComponentsCache.current.actions[message.name] || chatComponentsCache.current.actions["*"];
|
|
2100
|
+
if (typeof render === "string") {
|
|
2101
|
+
if (isCurrentMessage && inProgress) {
|
|
2102
|
+
return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
2103
|
+
AssistantMessage2,
|
|
2104
|
+
{
|
|
2105
|
+
rawData: message,
|
|
2106
|
+
"data-message-role": "assistant",
|
|
2107
|
+
isLoading: false,
|
|
2108
|
+
isGenerating: true,
|
|
2109
|
+
message: render
|
|
2110
|
+
},
|
|
2111
|
+
index
|
|
2112
|
+
);
|
|
2113
|
+
} else {
|
|
2114
|
+
return null;
|
|
2115
|
+
}
|
|
2116
|
+
} else {
|
|
2117
|
+
const args = message.arguments;
|
|
2118
|
+
let status = "inProgress";
|
|
2119
|
+
if (actionResult !== void 0) {
|
|
2120
|
+
status = "complete";
|
|
2121
|
+
} else if (message.status.code !== import_runtime_client_gql2.MessageStatusCode.Pending) {
|
|
2122
|
+
status = "executing";
|
|
2123
|
+
}
|
|
2124
|
+
try {
|
|
2125
|
+
const toRender = render({
|
|
2126
|
+
status,
|
|
2127
|
+
args,
|
|
2128
|
+
result: actionResult,
|
|
2129
|
+
name: message.name
|
|
2130
|
+
});
|
|
2131
|
+
if (!toRender && status === "complete") {
|
|
2132
|
+
return null;
|
|
2133
|
+
}
|
|
2134
|
+
if (typeof toRender === "string") {
|
|
2135
|
+
return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
2136
|
+
AssistantMessage2,
|
|
2137
|
+
{
|
|
2138
|
+
rawData: message,
|
|
2139
|
+
"data-message-role": "assistant",
|
|
2140
|
+
isLoading: false,
|
|
2141
|
+
isGenerating: false,
|
|
2142
|
+
message: toRender
|
|
2143
|
+
},
|
|
2144
|
+
index
|
|
2145
|
+
);
|
|
2146
|
+
} else {
|
|
2147
|
+
return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
2148
|
+
AssistantMessage2,
|
|
2149
|
+
{
|
|
2150
|
+
rawData: message,
|
|
2151
|
+
"data-message-role": "action-render",
|
|
2152
|
+
isLoading: false,
|
|
2153
|
+
isGenerating: false,
|
|
2154
|
+
subComponent: toRender
|
|
2155
|
+
},
|
|
2156
|
+
index
|
|
2157
|
+
);
|
|
2158
|
+
}
|
|
2159
|
+
} catch (e) {
|
|
2160
|
+
console.error(`Error executing render function for action ${message.name}: ${e}`);
|
|
2161
|
+
return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
2162
|
+
AssistantMessage2,
|
|
2163
|
+
{
|
|
2164
|
+
rawData: message,
|
|
2165
|
+
"data-message-role": "assistant",
|
|
2166
|
+
isLoading: false,
|
|
2167
|
+
isGenerating: false,
|
|
2168
|
+
subComponent: /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "copilotKitMessage copilotKitAssistantMessage", children: [
|
|
2169
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("b", { children: [
|
|
2170
|
+
"\u274C Error executing render function for action ",
|
|
2171
|
+
message.name,
|
|
2172
|
+
":"
|
|
2173
|
+
] }),
|
|
2174
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsx)("pre", { children: e instanceof Error ? e.message : String(e) })
|
|
2175
|
+
] })
|
|
2176
|
+
},
|
|
2177
|
+
index
|
|
2178
|
+
);
|
|
2179
|
+
}
|
|
2180
|
+
}
|
|
2181
|
+
} else if (!inProgress || !isCurrentMessage) {
|
|
2182
|
+
return null;
|
|
2183
|
+
} else {
|
|
2184
|
+
return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
2185
|
+
AssistantMessage2,
|
|
2186
|
+
{
|
|
2187
|
+
rawData: message,
|
|
2188
|
+
"data-message-role": "assistant",
|
|
2189
|
+
isLoading: true,
|
|
2190
|
+
isGenerating: true
|
|
2191
|
+
},
|
|
2192
|
+
index
|
|
2193
|
+
);
|
|
2194
|
+
}
|
|
2195
|
+
}
|
|
2196
|
+
}
|
|
2197
|
+
|
|
2198
|
+
// src/components/chat/messages/RenderResultMessage.tsx
|
|
2199
|
+
var import_jsx_runtime19 = require("react/jsx-runtime");
|
|
2200
|
+
function RenderResultMessage(_a) {
|
|
2201
|
+
var _b = _a, {
|
|
2202
|
+
AssistantMessage: AssistantMessage2 = AssistantMessage
|
|
2203
|
+
} = _b, props = __objRest(_b, [
|
|
2204
|
+
"AssistantMessage"
|
|
2205
|
+
]);
|
|
2206
|
+
const { message, inProgress, index, isCurrentMessage } = props;
|
|
2207
|
+
if (message.isResultMessage() && inProgress && isCurrentMessage) {
|
|
2208
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
2209
|
+
AssistantMessage2,
|
|
2210
|
+
{
|
|
2211
|
+
"data-message-role": "assistant",
|
|
2212
|
+
rawData: message,
|
|
2213
|
+
isLoading: true,
|
|
2214
|
+
isGenerating: true
|
|
2215
|
+
},
|
|
2216
|
+
index
|
|
2217
|
+
);
|
|
2218
|
+
} else {
|
|
2219
|
+
return null;
|
|
2220
|
+
}
|
|
2221
|
+
}
|
|
2222
|
+
|
|
2223
|
+
// src/components/chat/messages/RenderAgentStateMessage.tsx
|
|
2224
|
+
var import_react_core7 = require("@copilotkit/react-core");
|
|
2299
2225
|
var import_jsx_runtime20 = require("react/jsx-runtime");
|
|
2300
|
-
|
|
2301
|
-
|
|
2302
|
-
|
|
2226
|
+
function RenderAgentStateMessage(_a) {
|
|
2227
|
+
var _b = _a, {
|
|
2228
|
+
AssistantMessage: AssistantMessage2 = AssistantMessage
|
|
2229
|
+
} = _b, props = __objRest(_b, [
|
|
2230
|
+
"AssistantMessage"
|
|
2231
|
+
]);
|
|
2232
|
+
const { chatComponentsCache } = (0, import_react_core7.useCopilotContext)();
|
|
2233
|
+
const { message, inProgress, index, isCurrentMessage } = props;
|
|
2234
|
+
if (message.isAgentStateMessage()) {
|
|
2235
|
+
let render;
|
|
2236
|
+
if (chatComponentsCache.current !== null) {
|
|
2237
|
+
render = chatComponentsCache.current.coAgentStateRenders[`${message.agentName}-${message.nodeName}`] || chatComponentsCache.current.coAgentStateRenders[`${message.agentName}-global`];
|
|
2238
|
+
}
|
|
2239
|
+
if (render) {
|
|
2240
|
+
if (typeof render === "string") {
|
|
2241
|
+
if (isCurrentMessage && inProgress) {
|
|
2242
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
2243
|
+
AssistantMessage2,
|
|
2244
|
+
{
|
|
2245
|
+
rawData: message,
|
|
2246
|
+
message: render,
|
|
2247
|
+
"data-message-role": "assistant",
|
|
2248
|
+
isLoading: true,
|
|
2249
|
+
isGenerating: true
|
|
2250
|
+
},
|
|
2251
|
+
index
|
|
2252
|
+
);
|
|
2253
|
+
} else {
|
|
2254
|
+
return null;
|
|
2255
|
+
}
|
|
2256
|
+
} else {
|
|
2257
|
+
const state = message.state;
|
|
2258
|
+
let status = message.active ? "inProgress" : "complete";
|
|
2259
|
+
const toRender = render({
|
|
2260
|
+
status,
|
|
2261
|
+
state,
|
|
2262
|
+
nodeName: message.nodeName
|
|
2263
|
+
});
|
|
2264
|
+
if (!toRender && status === "complete") {
|
|
2265
|
+
return null;
|
|
2266
|
+
}
|
|
2267
|
+
if (!toRender && isCurrentMessage && inProgress) {
|
|
2268
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
2269
|
+
AssistantMessage2,
|
|
2270
|
+
{
|
|
2271
|
+
"data-message-role": "assistant",
|
|
2272
|
+
rawData: message,
|
|
2273
|
+
isLoading: true,
|
|
2274
|
+
isGenerating: true
|
|
2275
|
+
},
|
|
2276
|
+
index
|
|
2277
|
+
);
|
|
2278
|
+
} else if (!toRender) {
|
|
2279
|
+
return null;
|
|
2280
|
+
}
|
|
2281
|
+
if (typeof toRender === "string") {
|
|
2282
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
2283
|
+
AssistantMessage2,
|
|
2284
|
+
{
|
|
2285
|
+
rawData: message,
|
|
2286
|
+
message: toRender,
|
|
2287
|
+
isLoading: true,
|
|
2288
|
+
isGenerating: true,
|
|
2289
|
+
"data-message-role": "assistant"
|
|
2290
|
+
},
|
|
2291
|
+
index
|
|
2292
|
+
);
|
|
2293
|
+
} else {
|
|
2294
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
2295
|
+
AssistantMessage2,
|
|
2296
|
+
{
|
|
2297
|
+
rawData: message,
|
|
2298
|
+
"data-message-role": "agent-state-render",
|
|
2299
|
+
isLoading: false,
|
|
2300
|
+
isGenerating: false,
|
|
2301
|
+
subComponent: toRender
|
|
2302
|
+
},
|
|
2303
|
+
index
|
|
2304
|
+
);
|
|
2305
|
+
}
|
|
2306
|
+
}
|
|
2307
|
+
} else if (!inProgress || !isCurrentMessage) {
|
|
2308
|
+
return null;
|
|
2309
|
+
} else {
|
|
2310
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
2311
|
+
AssistantMessage2,
|
|
2312
|
+
{
|
|
2313
|
+
rawData: message,
|
|
2314
|
+
isLoading: true,
|
|
2315
|
+
isGenerating: true,
|
|
2316
|
+
"data-message-role": "assistant"
|
|
2317
|
+
},
|
|
2318
|
+
index
|
|
2319
|
+
);
|
|
2320
|
+
}
|
|
2321
|
+
}
|
|
2322
|
+
}
|
|
2303
2323
|
|
|
2304
2324
|
// src/components/chat/Suggestion.tsx
|
|
2305
2325
|
var import_react_core8 = require("@copilotkit/react-core");
|
|
@@ -2451,11 +2471,11 @@ function CopilotChat({
|
|
|
2451
2471
|
);
|
|
2452
2472
|
const chatContext = import_react13.default.useContext(ChatContext);
|
|
2453
2473
|
const isVisible = chatContext ? chatContext.open : true;
|
|
2454
|
-
const handleRegenerate = () => {
|
|
2474
|
+
const handleRegenerate = (messageId) => {
|
|
2455
2475
|
if (onRegenerate) {
|
|
2456
|
-
onRegenerate();
|
|
2476
|
+
onRegenerate(messageId);
|
|
2457
2477
|
}
|
|
2458
|
-
reloadMessages();
|
|
2478
|
+
reloadMessages(messageId);
|
|
2459
2479
|
};
|
|
2460
2480
|
const handleCopy = (message) => {
|
|
2461
2481
|
if (onCopy) {
|
|
@@ -2647,7 +2667,7 @@ var useCopilotChatLogic = (makeSystemMessage, onInProgress, onSubmitMessage, onS
|
|
|
2647
2667
|
defaultStopGeneration();
|
|
2648
2668
|
}
|
|
2649
2669
|
}
|
|
2650
|
-
function reloadMessages() {
|
|
2670
|
+
function reloadMessages(messageId) {
|
|
2651
2671
|
if (onReloadMessages) {
|
|
2652
2672
|
onReloadMessages({
|
|
2653
2673
|
messages,
|
|
@@ -2657,10 +2677,11 @@ var useCopilotChatLogic = (makeSystemMessage, onInProgress, onSubmitMessage, onS
|
|
|
2657
2677
|
restartCurrentAgent,
|
|
2658
2678
|
stopCurrentAgent,
|
|
2659
2679
|
runCurrentAgent,
|
|
2660
|
-
setCurrentAgentState
|
|
2680
|
+
setCurrentAgentState,
|
|
2681
|
+
messageId
|
|
2661
2682
|
});
|
|
2662
2683
|
} else {
|
|
2663
|
-
defaultReloadMessages();
|
|
2684
|
+
defaultReloadMessages(messageId);
|
|
2664
2685
|
}
|
|
2665
2686
|
}
|
|
2666
2687
|
return {
|