@copilotkit/react-ui 1.8.13-next.1 → 1.8.13-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.
Files changed (136) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/{chunk-RVLCPPEL.mjs → chunk-5INP2EWU.mjs} +6 -4
  3. package/dist/chunk-5INP2EWU.mjs.map +1 -0
  4. package/dist/{chunk-XFCMZH2H.mjs → chunk-6VUDBDUN.mjs} +2 -2
  5. package/dist/{chunk-24TDU7MY.mjs → chunk-ALWZ35SI.mjs} +2 -2
  6. package/dist/{chunk-IIRQWGWV.mjs → chunk-B3D7U7TJ.mjs} +5 -3
  7. package/dist/chunk-B3D7U7TJ.mjs.map +1 -0
  8. package/dist/{chunk-KQ44Z255.mjs → chunk-EMIYIMQ6.mjs} +4 -4
  9. package/dist/{chunk-ZDKVXAL3.mjs → chunk-FWKHST6I.mjs} +75 -39
  10. package/dist/chunk-FWKHST6I.mjs.map +1 -0
  11. package/dist/{chunk-NWE7CLTB.mjs → chunk-IAHSHPRJ.mjs} +22 -21
  12. package/dist/chunk-IAHSHPRJ.mjs.map +1 -0
  13. package/dist/{chunk-XZNY26GH.mjs → chunk-IMBPSLL4.mjs} +3 -3
  14. package/dist/chunk-IMBPSLL4.mjs.map +1 -0
  15. package/dist/{chunk-MDMNZ6JL.mjs → chunk-JU3HNL5N.mjs} +2 -2
  16. package/dist/{chunk-DSQGQJI4.mjs → chunk-MPZAMNCN.mjs} +2 -2
  17. package/dist/{chunk-K7SXHJRT.mjs → chunk-QEZ3YYLO.mjs} +2 -2
  18. package/dist/chunk-QGSPTXOV.mjs +24 -0
  19. package/dist/chunk-QGSPTXOV.mjs.map +1 -0
  20. package/dist/chunk-SC6JRFAJ.mjs +1 -0
  21. package/dist/{chunk-LUPGADWY.mjs → chunk-UKWBNVMQ.mjs} +2 -2
  22. package/dist/{chunk-OZXUB3V7.mjs → chunk-XMNTLIK5.mjs} +5 -4
  23. package/dist/chunk-XMNTLIK5.mjs.map +1 -0
  24. package/dist/chunk-YTXEWDNC.mjs +117 -0
  25. package/dist/chunk-YTXEWDNC.mjs.map +1 -0
  26. package/dist/components/chat/Button.d.ts +2 -0
  27. package/dist/components/chat/Chat.d.ts +11 -2
  28. package/dist/components/chat/Chat.js +117 -50
  29. package/dist/components/chat/Chat.js.map +1 -1
  30. package/dist/components/chat/Chat.mjs +13 -12
  31. package/dist/components/chat/Header.d.ts +2 -0
  32. package/dist/components/chat/Input.d.ts +2 -0
  33. package/dist/components/chat/Input.mjs +2 -2
  34. package/dist/components/chat/Markdown.d.ts +3 -1
  35. package/dist/components/chat/Markdown.js +65 -20
  36. package/dist/components/chat/Markdown.js.map +1 -1
  37. package/dist/components/chat/Markdown.mjs +1 -1
  38. package/dist/components/chat/Messages.d.ts +2 -1
  39. package/dist/components/chat/Messages.js +4 -2
  40. package/dist/components/chat/Messages.js.map +1 -1
  41. package/dist/components/chat/Messages.mjs +1 -1
  42. package/dist/components/chat/Modal.d.ts +2 -2
  43. package/dist/components/chat/Modal.js +186 -88
  44. package/dist/components/chat/Modal.js.map +1 -1
  45. package/dist/components/chat/Modal.mjs +19 -18
  46. package/dist/components/chat/Popup.d.ts +1 -1
  47. package/dist/components/chat/Popup.js +188 -90
  48. package/dist/components/chat/Popup.js.map +1 -1
  49. package/dist/components/chat/Popup.mjs +20 -19
  50. package/dist/components/chat/Sidebar.d.ts +1 -1
  51. package/dist/components/chat/Sidebar.js +188 -90
  52. package/dist/components/chat/Sidebar.js.map +1 -1
  53. package/dist/components/chat/Sidebar.mjs +20 -19
  54. package/dist/components/chat/Suggestion.d.ts +8 -3
  55. package/dist/components/chat/Suggestion.js +2 -2
  56. package/dist/components/chat/Suggestion.js.map +1 -1
  57. package/dist/components/chat/Suggestion.mjs +1 -1
  58. package/dist/components/chat/Suggestions.d.ts +9 -0
  59. package/dist/components/chat/Suggestions.js +73 -0
  60. package/dist/components/chat/Suggestions.js.map +1 -0
  61. package/dist/components/chat/Suggestions.mjs +10 -0
  62. package/dist/components/chat/Suggestions.mjs.map +1 -0
  63. package/dist/components/chat/Window.d.ts +2 -0
  64. package/dist/components/chat/index.d.ts +6 -3
  65. package/dist/components/chat/index.js +194 -92
  66. package/dist/components/chat/index.js.map +1 -1
  67. package/dist/components/chat/index.mjs +31 -24
  68. package/dist/components/chat/messages/AssistantMessage.d.ts +2 -0
  69. package/dist/components/chat/messages/AssistantMessage.js +68 -22
  70. package/dist/components/chat/messages/AssistantMessage.js.map +1 -1
  71. package/dist/components/chat/messages/AssistantMessage.mjs +2 -2
  72. package/dist/components/chat/messages/RenderActionExecutionMessage.d.ts +2 -0
  73. package/dist/components/chat/messages/RenderActionExecutionMessage.js +68 -22
  74. package/dist/components/chat/messages/RenderActionExecutionMessage.js.map +1 -1
  75. package/dist/components/chat/messages/RenderActionExecutionMessage.mjs +3 -3
  76. package/dist/components/chat/messages/RenderAgentStateMessage.d.ts +2 -0
  77. package/dist/components/chat/messages/RenderAgentStateMessage.js +68 -22
  78. package/dist/components/chat/messages/RenderAgentStateMessage.js.map +1 -1
  79. package/dist/components/chat/messages/RenderAgentStateMessage.mjs +3 -3
  80. package/dist/components/chat/messages/RenderImageMessage.d.ts +2 -0
  81. package/dist/components/chat/messages/RenderImageMessage.js +68 -22
  82. package/dist/components/chat/messages/RenderImageMessage.js.map +1 -1
  83. package/dist/components/chat/messages/RenderImageMessage.mjs +3 -3
  84. package/dist/components/chat/messages/RenderResultMessage.d.ts +2 -0
  85. package/dist/components/chat/messages/RenderResultMessage.js +68 -22
  86. package/dist/components/chat/messages/RenderResultMessage.js.map +1 -1
  87. package/dist/components/chat/messages/RenderResultMessage.mjs +3 -3
  88. package/dist/components/chat/messages/RenderTextMessage.d.ts +2 -0
  89. package/dist/components/chat/messages/RenderTextMessage.js +72 -24
  90. package/dist/components/chat/messages/RenderTextMessage.js.map +1 -1
  91. package/dist/components/chat/messages/RenderTextMessage.mjs +3 -3
  92. package/dist/components/chat/messages/UserMessage.d.ts +2 -0
  93. package/dist/components/chat/props.d.ts +27 -1
  94. package/dist/components/chat/props.js.map +1 -1
  95. package/dist/components/index.d.ts +6 -3
  96. package/dist/components/index.js +194 -92
  97. package/dist/components/index.js.map +1 -1
  98. package/dist/components/index.mjs +35 -28
  99. package/dist/index.css +32 -28
  100. package/dist/index.css.map +1 -1
  101. package/dist/index.d.ts +6 -3
  102. package/dist/index.js +194 -92
  103. package/dist/index.js.map +1 -1
  104. package/dist/index.mjs +35 -28
  105. package/dist/types/index.d.ts +1 -0
  106. package/dist/types/index.js.map +1 -1
  107. package/package.json +11 -10
  108. package/src/components/chat/Chat.tsx +21 -13
  109. package/src/components/chat/Markdown.tsx +86 -29
  110. package/src/components/chat/Messages.tsx +2 -0
  111. package/src/components/chat/Modal.tsx +4 -0
  112. package/src/components/chat/Suggestion.tsx +10 -3
  113. package/src/components/chat/Suggestions.tsx +20 -0
  114. package/src/components/chat/index.tsx +2 -0
  115. package/src/components/chat/messages/AssistantMessage.tsx +2 -1
  116. package/src/components/chat/messages/RenderTextMessage.tsx +2 -0
  117. package/src/components/chat/props.ts +29 -0
  118. package/src/css/markdown.css +33 -28
  119. package/src/types/index.ts +1 -0
  120. package/dist/chunk-ABHUX6T6.mjs +0 -72
  121. package/dist/chunk-ABHUX6T6.mjs.map +0 -1
  122. package/dist/chunk-IIRQWGWV.mjs.map +0 -1
  123. package/dist/chunk-NWE7CLTB.mjs.map +0 -1
  124. package/dist/chunk-OZXUB3V7.mjs.map +0 -1
  125. package/dist/chunk-PXEVB7IK.mjs +0 -1
  126. package/dist/chunk-RVLCPPEL.mjs.map +0 -1
  127. package/dist/chunk-XZNY26GH.mjs.map +0 -1
  128. package/dist/chunk-ZDKVXAL3.mjs.map +0 -1
  129. /package/dist/{chunk-XFCMZH2H.mjs.map → chunk-6VUDBDUN.mjs.map} +0 -0
  130. /package/dist/{chunk-24TDU7MY.mjs.map → chunk-ALWZ35SI.mjs.map} +0 -0
  131. /package/dist/{chunk-KQ44Z255.mjs.map → chunk-EMIYIMQ6.mjs.map} +0 -0
  132. /package/dist/{chunk-MDMNZ6JL.mjs.map → chunk-JU3HNL5N.mjs.map} +0 -0
  133. /package/dist/{chunk-DSQGQJI4.mjs.map → chunk-MPZAMNCN.mjs.map} +0 -0
  134. /package/dist/{chunk-K7SXHJRT.mjs.map → chunk-QEZ3YYLO.mjs.map} +0 -0
  135. /package/dist/{chunk-PXEVB7IK.mjs.map → chunk-SC6JRFAJ.mjs.map} +0 -0
  136. /package/dist/{chunk-LUPGADWY.mjs.map → chunk-UKWBNVMQ.mjs.map} +0 -0
@@ -1,25 +1,8 @@
1
1
  import {
2
2
  CopilotPopup
3
- } from "../../chunk-K7SXHJRT.mjs";
4
- import "../../chunk-ZDKVXAL3.mjs";
3
+ } from "../../chunk-QEZ3YYLO.mjs";
4
+ import "../../chunk-FWKHST6I.mjs";
5
5
  import "../../chunk-TIDV74OE.mjs";
6
- import "../../chunk-UFN2VWSR.mjs";
7
- import "../../chunk-NWE7CLTB.mjs";
8
- import "../../chunk-DSQGQJI4.mjs";
9
- import "../../chunk-24TDU7MY.mjs";
10
- import "../../chunk-LUPGADWY.mjs";
11
- import "../../chunk-XFCMZH2H.mjs";
12
- import "../../chunk-RVLCPPEL.mjs";
13
- import "../../chunk-OZXUB3V7.mjs";
14
- import "../../chunk-HWMFMBJC.mjs";
15
- import "../../chunk-XZNY26GH.mjs";
16
- import "../../chunk-PLHTVHUW.mjs";
17
- import "../../chunk-KQ44Z255.mjs";
18
- import "../../chunk-YQFVRDNC.mjs";
19
- import "../../chunk-ABHUX6T6.mjs";
20
- import "../../chunk-IIRQWGWV.mjs";
21
- import "../../chunk-CGEAG65D.mjs";
22
- import "../../chunk-KENCH7RN.mjs";
23
6
  import "../../chunk-UH2UFL5W.mjs";
24
7
  import "../../chunk-V7W6IM2V.mjs";
25
8
  import "../../chunk-VGPQYMKJ.mjs";
@@ -28,6 +11,24 @@ import "../../chunk-6TCUJ3B7.mjs";
28
11
  import "../../chunk-KXE2JCUH.mjs";
29
12
  import "../../chunk-NRA3CFEE.mjs";
30
13
  import "../../chunk-BH6PCAAL.mjs";
14
+ import "../../chunk-UFN2VWSR.mjs";
15
+ import "../../chunk-IAHSHPRJ.mjs";
16
+ import "../../chunk-MPZAMNCN.mjs";
17
+ import "../../chunk-ALWZ35SI.mjs";
18
+ import "../../chunk-UKWBNVMQ.mjs";
19
+ import "../../chunk-6VUDBDUN.mjs";
20
+ import "../../chunk-5INP2EWU.mjs";
21
+ import "../../chunk-XMNTLIK5.mjs";
22
+ import "../../chunk-HWMFMBJC.mjs";
23
+ import "../../chunk-QGSPTXOV.mjs";
24
+ import "../../chunk-IMBPSLL4.mjs";
25
+ import "../../chunk-PLHTVHUW.mjs";
26
+ import "../../chunk-EMIYIMQ6.mjs";
27
+ import "../../chunk-CGEAG65D.mjs";
28
+ import "../../chunk-YQFVRDNC.mjs";
29
+ import "../../chunk-YTXEWDNC.mjs";
30
+ import "../../chunk-KENCH7RN.mjs";
31
+ import "../../chunk-B3D7U7TJ.mjs";
31
32
  import "../../chunk-IEMQ2SQW.mjs";
32
33
  import "../../chunk-XWG3L6QC.mjs";
33
34
  import "../../chunk-54JAUBUJ.mjs";
@@ -3,10 +3,10 @@ import { CopilotModalProps } from './Modal.js';
3
3
  import 'react';
4
4
  import './props.js';
5
5
  import '@copilotkit/runtime-client-gql';
6
+ import '../../types/suggestions.js';
6
7
  import './Chat.js';
7
8
  import './ChatContext.js';
8
9
  import '@copilotkit/react-core';
9
- import '../../types/suggestions.js';
10
10
 
11
11
  declare function CopilotSidebar(props: CopilotModalProps): react_jsx_runtime.JSX.Element;
12
12
 
@@ -1059,7 +1059,8 @@ var Messages = ({
1059
1059
  onRegenerate,
1060
1060
  onCopy,
1061
1061
  onThumbsUp,
1062
- onThumbsDown
1062
+ onThumbsDown,
1063
+ markdownTagRenderers
1063
1064
  }) => {
1064
1065
  const context = useChatContext();
1065
1066
  const initialMessages = (0, import_react6.useMemo)(
@@ -1098,7 +1099,8 @@ var Messages = ({
1098
1099
  onRegenerate,
1099
1100
  onCopy,
1100
1101
  onThumbsUp,
1101
- onThumbsDown
1102
+ onThumbsDown,
1103
+ markdownTagRenderers
1102
1104
  },
1103
1105
  index
1104
1106
  );
@@ -1927,31 +1929,17 @@ var highlightStyle = {
1927
1929
  // src/components/chat/Markdown.tsx
1928
1930
  var import_remark_gfm = __toESM(require("remark-gfm"));
1929
1931
  var import_remark_math = __toESM(require("remark-math"));
1932
+ var import_rehype_raw = __toESM(require("rehype-raw"));
1930
1933
  var import_jsx_runtime16 = require("react/jsx-runtime");
1931
- var MemoizedReactMarkdown = (0, import_react11.memo)(
1932
- import_react_markdown.default,
1933
- (prevProps, nextProps) => prevProps.children === nextProps.children && prevProps.className === nextProps.className
1934
- );
1935
- var Markdown = ({ content }) => {
1936
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "copilotKitMarkdown", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(MemoizedReactMarkdown, { components, remarkPlugins: [import_remark_gfm.default, import_remark_math.default], children: content }) });
1937
- };
1938
- var components = {
1934
+ var defaultComponents = {
1939
1935
  a(_a) {
1940
1936
  var _b = _a, { children } = _b, props = __objRest(_b, ["children"]);
1941
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1942
- "a",
1943
- __spreadProps(__spreadValues({
1944
- style: { color: "blue", textDecoration: "underline" }
1945
- }, props), {
1946
- target: "_blank",
1947
- rel: "noopener noreferrer",
1948
- children
1949
- })
1950
- );
1937
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("a", __spreadProps(__spreadValues({ className: "copilotKitMarkdownElement" }, props), { target: "_blank", rel: "noopener noreferrer", children }));
1951
1938
  },
1939
+ // @ts-expect-error -- inline
1952
1940
  code(_c) {
1953
1941
  var _d = _c, { children, className, inline } = _d, props = __objRest(_d, ["children", "className", "inline"]);
1954
- if (children.length) {
1942
+ if (Array.isArray(children) && children.length) {
1955
1943
  if (children[0] == "\u258D") {
1956
1944
  return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1957
1945
  "span",
@@ -1964,7 +1952,7 @@ var components = {
1964
1952
  }
1965
1953
  );
1966
1954
  }
1967
- children[0] = children[0].replace("`\u258D`", "\u258D");
1955
+ children[0] = (children == null ? void 0 : children[0]).replace("`\u258D`", "\u258D");
1968
1956
  }
1969
1957
  const match = /language-(\w+)/.exec(className || "");
1970
1958
  if (inline) {
@@ -1978,8 +1966,67 @@ var components = {
1978
1966
  }, props),
1979
1967
  Math.random()
1980
1968
  );
1969
+ },
1970
+ h1: (_e) => {
1971
+ var _f = _e, { children } = _f, props = __objRest(_f, ["children"]);
1972
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("h1", __spreadProps(__spreadValues({ className: "copilotKitMarkdownElement" }, props), { children }));
1973
+ },
1974
+ h2: (_g) => {
1975
+ var _h = _g, { children } = _h, props = __objRest(_h, ["children"]);
1976
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("h2", __spreadProps(__spreadValues({ className: "copilotKitMarkdownElement" }, props), { children }));
1977
+ },
1978
+ h3: (_i) => {
1979
+ var _j = _i, { children } = _j, props = __objRest(_j, ["children"]);
1980
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("h3", __spreadProps(__spreadValues({ className: "copilotKitMarkdownElement" }, props), { children }));
1981
+ },
1982
+ h4: (_k) => {
1983
+ var _l = _k, { children } = _l, props = __objRest(_l, ["children"]);
1984
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("h4", __spreadProps(__spreadValues({ className: "copilotKitMarkdownElement" }, props), { children }));
1985
+ },
1986
+ h5: (_m) => {
1987
+ var _n = _m, { children } = _n, props = __objRest(_n, ["children"]);
1988
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("h5", __spreadProps(__spreadValues({ className: "copilotKitMarkdownElement" }, props), { children }));
1989
+ },
1990
+ h6: (_o) => {
1991
+ var _p = _o, { children } = _p, props = __objRest(_p, ["children"]);
1992
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("h6", __spreadProps(__spreadValues({ className: "copilotKitMarkdownElement" }, props), { children }));
1993
+ },
1994
+ p: (_q) => {
1995
+ var _r = _q, { children } = _r, props = __objRest(_r, ["children"]);
1996
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("p", __spreadProps(__spreadValues({ className: "copilotKitMarkdownElement" }, props), { children }));
1997
+ },
1998
+ pre: (_s) => {
1999
+ var _t = _s, { children } = _t, props = __objRest(_t, ["children"]);
2000
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("pre", __spreadProps(__spreadValues({ className: "copilotKitMarkdownElement" }, props), { children }));
2001
+ },
2002
+ blockquote: (_u) => {
2003
+ var _v = _u, { children } = _v, props = __objRest(_v, ["children"]);
2004
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("blockquote", __spreadProps(__spreadValues({ className: "copilotKitMarkdownElement" }, props), { children }));
2005
+ },
2006
+ ul: (_w) => {
2007
+ var _x = _w, { children } = _x, props = __objRest(_x, ["children"]);
2008
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("ul", __spreadProps(__spreadValues({ className: "copilotKitMarkdownElement" }, props), { children }));
2009
+ },
2010
+ li: (_y) => {
2011
+ var _z = _y, { children } = _z, props = __objRest(_z, ["children"]);
2012
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("li", __spreadProps(__spreadValues({ className: "copilotKitMarkdownElement" }, props), { children }));
1981
2013
  }
1982
2014
  };
2015
+ var MemoizedReactMarkdown = (0, import_react11.memo)(
2016
+ import_react_markdown.default,
2017
+ (prevProps, nextProps) => prevProps.children === nextProps.children && prevProps.components === nextProps.components
2018
+ );
2019
+ var Markdown = ({ content, components }) => {
2020
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "copilotKitMarkdown", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
2021
+ MemoizedReactMarkdown,
2022
+ {
2023
+ components: __spreadValues(__spreadValues({}, defaultComponents), components),
2024
+ remarkPlugins: [import_remark_gfm.default, import_remark_math.default],
2025
+ rehypePlugins: [import_rehype_raw.default],
2026
+ children: content
2027
+ }
2028
+ ) });
2029
+ };
1983
2030
 
1984
2031
  // src/components/chat/messages/AssistantMessage.tsx
1985
2032
  var import_react12 = require("react");
@@ -1994,7 +2041,8 @@ var AssistantMessage = (props) => {
1994
2041
  onCopy,
1995
2042
  onThumbsUp,
1996
2043
  onThumbsDown,
1997
- isCurrentMessage
2044
+ isCurrentMessage,
2045
+ markdownTagRenderers
1998
2046
  } = props;
1999
2047
  const [copied, setCopied] = (0, import_react12.useState)(false);
2000
2048
  const handleCopy = () => {
@@ -2027,7 +2075,7 @@ var AssistantMessage = (props) => {
2027
2075
  const LoadingIcon = () => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { children: icons.activityIcon });
2028
2076
  return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_jsx_runtime17.Fragment, { children: [
2029
2077
  (message || isLoading) && /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "copilotKitMessage copilotKitAssistantMessage", children: [
2030
- message && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Markdown, { content: message || "" }),
2078
+ message && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Markdown, { content: message || "", components: markdownTagRenderers }),
2031
2079
  isLoading && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(LoadingIcon, {}),
2032
2080
  message && !isLoading && /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
2033
2081
  "div",
@@ -2100,7 +2148,8 @@ function RenderTextMessage(_a) {
2100
2148
  onRegenerate,
2101
2149
  onCopy,
2102
2150
  onThumbsUp,
2103
- onThumbsDown
2151
+ onThumbsDown,
2152
+ markdownTagRenderers
2104
2153
  } = props;
2105
2154
  if (message.isTextMessage()) {
2106
2155
  if (message.role === "user") {
@@ -2126,7 +2175,8 @@ function RenderTextMessage(_a) {
2126
2175
  onRegenerate: () => onRegenerate == null ? void 0 : onRegenerate(message.id),
2127
2176
  onCopy,
2128
2177
  onThumbsUp,
2129
- onThumbsDown
2178
+ onThumbsDown,
2179
+ markdownTagRenderers
2130
2180
  },
2131
2181
  index
2132
2182
  );
@@ -2437,19 +2487,23 @@ function RenderImageMessage(_a) {
2437
2487
  return null;
2438
2488
  }
2439
2489
 
2490
+ // src/components/chat/Chat.tsx
2491
+ var import_react13 = __toESM(require("react"));
2492
+ var import_react_core10 = require("@copilotkit/react-core");
2493
+
2440
2494
  // src/components/chat/Suggestion.tsx
2441
2495
  var import_react_core9 = require("@copilotkit/react-core");
2442
2496
  var import_shared2 = require("@copilotkit/shared");
2443
2497
  var import_runtime_client_gql3 = require("@copilotkit/runtime-client-gql");
2444
2498
  var import_jsx_runtime23 = require("react/jsx-runtime");
2445
- function Suggestion({ title, message, onClick, partial, className }) {
2499
+ function Suggestion({ title, onClick, partial, className }) {
2446
2500
  return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
2447
2501
  "button",
2448
2502
  {
2449
2503
  disabled: partial,
2450
2504
  onClick: (e) => {
2451
2505
  e.preventDefault();
2452
- onClick(message);
2506
+ onClick();
2453
2507
  },
2454
2508
  className: className || (partial ? "suggestion loading" : "suggestion"),
2455
2509
  "data-test-id": "suggestion",
@@ -2528,8 +2582,6 @@ var reloadSuggestions = (context, chatSuggestionConfiguration, setCurrentSuggest
2528
2582
  });
2529
2583
 
2530
2584
  // src/components/chat/Chat.tsx
2531
- var import_react13 = __toESM(require("react"));
2532
- var import_react_core10 = require("@copilotkit/react-core");
2533
2585
  var import_runtime_client_gql4 = require("@copilotkit/runtime-client-gql");
2534
2586
  var import_shared3 = require("@copilotkit/shared");
2535
2587
  var import_react_core11 = require("@copilotkit/react-core");
@@ -2612,8 +2664,24 @@ var ImageUploadQueue = ({
2612
2664
  );
2613
2665
  };
2614
2666
 
2615
- // src/components/chat/Chat.tsx
2667
+ // src/components/chat/Suggestions.tsx
2616
2668
  var import_jsx_runtime25 = require("react/jsx-runtime");
2669
+ function Suggestions({ suggestions, onSuggestionClick }) {
2670
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "suggestions", children: suggestions.map((suggestion, index) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2671
+ Suggestion,
2672
+ {
2673
+ title: suggestion.title,
2674
+ message: suggestion.message,
2675
+ partial: suggestion.partial,
2676
+ className: suggestion.className,
2677
+ onClick: () => onSuggestionClick(suggestion.message)
2678
+ },
2679
+ index
2680
+ )) });
2681
+ }
2682
+
2683
+ // src/components/chat/Chat.tsx
2684
+ var import_jsx_runtime26 = require("react/jsx-runtime");
2617
2685
  function CopilotChat({
2618
2686
  instructions,
2619
2687
  onSubmitMessage,
@@ -2625,12 +2693,14 @@ function CopilotChat({
2625
2693
  onCopy,
2626
2694
  onThumbsUp,
2627
2695
  onThumbsDown,
2696
+ markdownTagRenderers,
2628
2697
  Messages: Messages2 = Messages,
2629
2698
  RenderTextMessage: RenderTextMessage2 = RenderTextMessage,
2630
2699
  RenderActionExecutionMessage: RenderActionExecutionMessage2 = RenderActionExecutionMessage,
2631
2700
  RenderAgentStateMessage: RenderAgentStateMessage2 = RenderAgentStateMessage,
2632
2701
  RenderResultMessage: RenderResultMessage2 = RenderResultMessage,
2633
2702
  RenderImageMessage: RenderImageMessage2 = RenderImageMessage,
2703
+ RenderSuggestionsList = Suggestions,
2634
2704
  Input: Input2 = Input,
2635
2705
  className,
2636
2706
  icons,
@@ -2770,8 +2840,8 @@ function CopilotChat({
2770
2840
  const removeSelectedImage = (index) => {
2771
2841
  setSelectedImages((prev) => prev.filter((_, i) => i !== index));
2772
2842
  };
2773
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(WrappedCopilotChat, { icons, labels, className, children: [
2774
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2843
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(WrappedCopilotChat, { icons, labels, className, children: [
2844
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2775
2845
  Messages2,
2776
2846
  {
2777
2847
  AssistantMessage: AssistantMessage2,
@@ -2787,22 +2857,19 @@ function CopilotChat({
2787
2857
  onCopy: handleCopy,
2788
2858
  onThumbsUp,
2789
2859
  onThumbsDown,
2790
- children: currentSuggestions.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "suggestions", children: currentSuggestions.map((suggestion, index) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2791
- Suggestion,
2860
+ markdownTagRenderers,
2861
+ children: currentSuggestions.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2862
+ RenderSuggestionsList,
2792
2863
  {
2793
- title: suggestion.title,
2794
- message: suggestion.message,
2795
- partial: suggestion.partial,
2796
- className: suggestion.className,
2797
- onClick: (message) => handleSendMessage(message)
2798
- },
2799
- index
2800
- )) })
2864
+ onSuggestionClick: handleSendMessage,
2865
+ suggestions: currentSuggestions
2866
+ }
2867
+ )
2801
2868
  }
2802
2869
  ),
2803
- imageUploadsEnabled && /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(import_jsx_runtime25.Fragment, { children: [
2804
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(ImageUploadQueue, { images: selectedImages, onRemoveImage: removeSelectedImage }),
2805
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2870
+ imageUploadsEnabled && /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(import_jsx_runtime26.Fragment, { children: [
2871
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(ImageUploadQueue, { images: selectedImages, onRemoveImage: removeSelectedImage }),
2872
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2806
2873
  "input",
2807
2874
  {
2808
2875
  type: "file",
@@ -2814,7 +2881,7 @@ function CopilotChat({
2814
2881
  }
2815
2882
  )
2816
2883
  ] }),
2817
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2884
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2818
2885
  Input2,
2819
2886
  {
2820
2887
  inProgress: isLoading,
@@ -2837,10 +2904,10 @@ function WrappedCopilotChat({
2837
2904
  }) {
2838
2905
  const chatContext = import_react13.default.useContext(ChatContext);
2839
2906
  if (!chatContext) {
2840
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(ChatContextProvider, { icons, labels, open: true, setOpen: () => {
2841
- }, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: `copilotKitChat ${className != null ? className : ""}`, children }) });
2907
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(ChatContextProvider, { icons, labels, open: true, setOpen: () => {
2908
+ }, children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: `copilotKitChat ${className != null ? className : ""}`, children }) });
2842
2909
  }
2843
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_jsx_runtime25.Fragment, { children });
2910
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_jsx_runtime26.Fragment, { children });
2844
2911
  }
2845
2912
  var SUGGESTIONS_DEBOUNCE_TIMEOUT = 1e3;
2846
2913
  var useCopilotChatLogic = (makeSystemMessage, onInProgress, onSubmitMessage, onStopGeneration, onReloadMessages) => {
@@ -3025,55 +3092,85 @@ var useCopilotChatLogic = (makeSystemMessage, onInProgress, onSubmitMessage, onS
3025
3092
  };
3026
3093
 
3027
3094
  // src/components/chat/Modal.tsx
3028
- var import_jsx_runtime26 = require("react/jsx-runtime");
3029
- var CopilotModal = ({
3030
- instructions,
3031
- defaultOpen = false,
3032
- clickOutsideToClose = true,
3033
- hitEscapeToClose = true,
3034
- onSetOpen,
3035
- onSubmitMessage,
3036
- onStopGeneration,
3037
- onReloadMessages,
3038
- shortcut = "/",
3039
- icons,
3040
- labels,
3041
- makeSystemMessage,
3042
- onInProgress,
3043
- Window: Window2 = Window,
3044
- Button: Button2 = Button,
3045
- Header: Header2 = Header,
3046
- Messages: Messages2 = Messages,
3047
- Input: Input2 = Input,
3048
- AssistantMessage: AssistantMessage2 = AssistantMessage,
3049
- UserMessage: UserMessage2 = UserMessage,
3050
- onThumbsUp,
3051
- onThumbsDown,
3052
- onCopy,
3053
- onRegenerate,
3054
- className,
3055
- children
3056
- }) => {
3095
+ var import_jsx_runtime27 = require("react/jsx-runtime");
3096
+ var CopilotModal = (_a) => {
3097
+ var _b = _a, {
3098
+ instructions,
3099
+ defaultOpen = false,
3100
+ clickOutsideToClose = true,
3101
+ hitEscapeToClose = true,
3102
+ onSetOpen,
3103
+ onSubmitMessage,
3104
+ onStopGeneration,
3105
+ onReloadMessages,
3106
+ shortcut = "/",
3107
+ icons,
3108
+ labels,
3109
+ makeSystemMessage,
3110
+ onInProgress,
3111
+ Window: Window2 = Window,
3112
+ Button: Button2 = Button,
3113
+ Header: Header2 = Header,
3114
+ Messages: Messages2 = Messages,
3115
+ Input: Input2 = Input,
3116
+ AssistantMessage: AssistantMessage2 = AssistantMessage,
3117
+ UserMessage: UserMessage2 = UserMessage,
3118
+ onThumbsUp,
3119
+ onThumbsDown,
3120
+ onCopy,
3121
+ onRegenerate,
3122
+ markdownTagRenderers,
3123
+ className,
3124
+ children
3125
+ } = _b, props = __objRest(_b, [
3126
+ "instructions",
3127
+ "defaultOpen",
3128
+ "clickOutsideToClose",
3129
+ "hitEscapeToClose",
3130
+ "onSetOpen",
3131
+ "onSubmitMessage",
3132
+ "onStopGeneration",
3133
+ "onReloadMessages",
3134
+ "shortcut",
3135
+ "icons",
3136
+ "labels",
3137
+ "makeSystemMessage",
3138
+ "onInProgress",
3139
+ "Window",
3140
+ "Button",
3141
+ "Header",
3142
+ "Messages",
3143
+ "Input",
3144
+ "AssistantMessage",
3145
+ "UserMessage",
3146
+ "onThumbsUp",
3147
+ "onThumbsDown",
3148
+ "onCopy",
3149
+ "onRegenerate",
3150
+ "markdownTagRenderers",
3151
+ "className",
3152
+ "children"
3153
+ ]);
3057
3154
  const [openState, setOpenState] = import_react14.default.useState(defaultOpen);
3058
3155
  const setOpen = (open) => {
3059
3156
  onSetOpen == null ? void 0 : onSetOpen(open);
3060
3157
  setOpenState(open);
3061
3158
  };
3062
- return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(ChatContextProvider, { icons, labels, open: openState, setOpen, children: [
3159
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(ChatContextProvider, { icons, labels, open: openState, setOpen, children: [
3063
3160
  children,
3064
- /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { className, children: [
3065
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Button2, {}),
3066
- /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
3161
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className, children: [
3162
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Button2, {}),
3163
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(
3067
3164
  Window2,
3068
3165
  {
3069
3166
  clickOutsideToClose,
3070
3167
  shortcut,
3071
3168
  hitEscapeToClose,
3072
3169
  children: [
3073
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Header2, {}),
3074
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
3170
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Header2, {}),
3171
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
3075
3172
  CopilotChat,
3076
- {
3173
+ __spreadProps(__spreadValues({}, props), {
3077
3174
  instructions,
3078
3175
  onSubmitMessage,
3079
3176
  onStopGeneration,
@@ -3087,8 +3184,9 @@ var CopilotModal = ({
3087
3184
  onThumbsUp,
3088
3185
  onThumbsDown,
3089
3186
  onCopy,
3090
- onRegenerate
3091
- }
3187
+ onRegenerate,
3188
+ markdownTagRenderers
3189
+ })
3092
3190
  )
3093
3191
  ]
3094
3192
  }
@@ -3098,7 +3196,7 @@ var CopilotModal = ({
3098
3196
  };
3099
3197
 
3100
3198
  // src/components/chat/Sidebar.tsx
3101
- var import_jsx_runtime27 = require("react/jsx-runtime");
3199
+ var import_jsx_runtime28 = require("react/jsx-runtime");
3102
3200
  function CopilotSidebar(props) {
3103
3201
  props = __spreadProps(__spreadValues({}, props), {
3104
3202
  className: props.className ? props.className + " copilotKitSidebar" : "copilotKitSidebar"
@@ -3111,7 +3209,7 @@ function CopilotSidebar(props) {
3111
3209
  (_a = props.onSetOpen) == null ? void 0 : _a.call(props, open);
3112
3210
  setExpandedClassName(open ? "sidebarExpanded" : "");
3113
3211
  };
3114
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: `copilotKitSidebarContentWrapper ${expandedClassName}`, children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(CopilotModal, __spreadProps(__spreadValues(__spreadValues({}, props), { onSetOpen }), { children: props.children })) });
3212
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: `copilotKitSidebarContentWrapper ${expandedClassName}`, children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(CopilotModal, __spreadProps(__spreadValues(__spreadValues({}, props), { onSetOpen }), { children: props.children })) });
3115
3213
  }
3116
3214
  // Annotate the CommonJS export names for ESM import in node:
3117
3215
  0 && (module.exports = {