@copilotkit/react-ui 1.8.13-next.2 → 1.8.13

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 (80) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/{chunk-3R6CEFJE.mjs → chunk-FWKHST6I.mjs} +67 -33
  3. package/dist/chunk-FWKHST6I.mjs.map +1 -0
  4. package/dist/{chunk-ZRW27A32.mjs → chunk-IAHSHPRJ.mjs} +12 -13
  5. package/dist/chunk-IAHSHPRJ.mjs.map +1 -0
  6. package/dist/{chunk-XZNY26GH.mjs → chunk-IMBPSLL4.mjs} +3 -3
  7. package/dist/chunk-IMBPSLL4.mjs.map +1 -0
  8. package/dist/{chunk-756IINQI.mjs → chunk-JU3HNL5N.mjs} +2 -2
  9. package/dist/{chunk-IQ7DDXDA.mjs → chunk-QEZ3YYLO.mjs} +2 -2
  10. package/dist/chunk-QGSPTXOV.mjs +24 -0
  11. package/dist/chunk-QGSPTXOV.mjs.map +1 -0
  12. package/dist/chunk-SC6JRFAJ.mjs +1 -0
  13. package/dist/components/chat/Button.d.ts +1 -0
  14. package/dist/components/chat/Chat.d.ts +6 -2
  15. package/dist/components/chat/Chat.js +39 -24
  16. package/dist/components/chat/Chat.js.map +1 -1
  17. package/dist/components/chat/Chat.mjs +3 -2
  18. package/dist/components/chat/Header.d.ts +1 -0
  19. package/dist/components/chat/Input.d.ts +1 -0
  20. package/dist/components/chat/Messages.d.ts +1 -0
  21. package/dist/components/chat/Modal.d.ts +2 -2
  22. package/dist/components/chat/Modal.js +106 -62
  23. package/dist/components/chat/Modal.js.map +1 -1
  24. package/dist/components/chat/Modal.mjs +4 -3
  25. package/dist/components/chat/Popup.d.ts +1 -1
  26. package/dist/components/chat/Popup.js +108 -64
  27. package/dist/components/chat/Popup.js.map +1 -1
  28. package/dist/components/chat/Popup.mjs +5 -4
  29. package/dist/components/chat/Sidebar.d.ts +1 -1
  30. package/dist/components/chat/Sidebar.js +108 -64
  31. package/dist/components/chat/Sidebar.js.map +1 -1
  32. package/dist/components/chat/Sidebar.mjs +5 -4
  33. package/dist/components/chat/Suggestion.d.ts +8 -4
  34. package/dist/components/chat/Suggestion.js +2 -2
  35. package/dist/components/chat/Suggestion.js.map +1 -1
  36. package/dist/components/chat/Suggestion.mjs +1 -1
  37. package/dist/components/chat/Suggestions.d.ts +9 -0
  38. package/dist/components/chat/Suggestions.js +73 -0
  39. package/dist/components/chat/Suggestions.js.map +1 -0
  40. package/dist/components/chat/Suggestions.mjs +10 -0
  41. package/dist/components/chat/Suggestions.mjs.map +1 -0
  42. package/dist/components/chat/Window.d.ts +1 -0
  43. package/dist/components/chat/index.d.ts +4 -2
  44. package/dist/components/chat/index.js +114 -66
  45. package/dist/components/chat/index.js.map +1 -1
  46. package/dist/components/chat/index.mjs +14 -7
  47. package/dist/components/chat/messages/AssistantMessage.d.ts +1 -0
  48. package/dist/components/chat/messages/RenderActionExecutionMessage.d.ts +1 -0
  49. package/dist/components/chat/messages/RenderAgentStateMessage.d.ts +1 -0
  50. package/dist/components/chat/messages/RenderImageMessage.d.ts +1 -0
  51. package/dist/components/chat/messages/RenderResultMessage.d.ts +1 -0
  52. package/dist/components/chat/messages/RenderTextMessage.d.ts +1 -0
  53. package/dist/components/chat/messages/UserMessage.d.ts +1 -0
  54. package/dist/components/chat/props.d.ts +6 -1
  55. package/dist/components/chat/props.js.map +1 -1
  56. package/dist/components/index.d.ts +4 -2
  57. package/dist/components/index.js +114 -66
  58. package/dist/components/index.js.map +1 -1
  59. package/dist/components/index.mjs +14 -7
  60. package/dist/index.d.ts +4 -2
  61. package/dist/index.js +114 -66
  62. package/dist/index.js.map +1 -1
  63. package/dist/index.mjs +14 -7
  64. package/dist/types/index.d.ts +1 -0
  65. package/dist/types/index.js.map +1 -1
  66. package/package.json +4 -4
  67. package/src/components/chat/Chat.tsx +12 -14
  68. package/src/components/chat/Modal.tsx +2 -0
  69. package/src/components/chat/Suggestion.tsx +10 -3
  70. package/src/components/chat/Suggestions.tsx +20 -0
  71. package/src/components/chat/index.tsx +2 -0
  72. package/src/components/chat/props.ts +6 -0
  73. package/src/types/index.ts +1 -0
  74. package/dist/chunk-3R6CEFJE.mjs.map +0 -1
  75. package/dist/chunk-PXEVB7IK.mjs +0 -1
  76. package/dist/chunk-XZNY26GH.mjs.map +0 -1
  77. package/dist/chunk-ZRW27A32.mjs.map +0 -1
  78. /package/dist/{chunk-756IINQI.mjs.map → chunk-JU3HNL5N.mjs.map} +0 -0
  79. /package/dist/{chunk-IQ7DDXDA.mjs.map → chunk-QEZ3YYLO.mjs.map} +0 -0
  80. /package/dist/{chunk-PXEVB7IK.mjs.map → chunk-SC6JRFAJ.mjs.map} +0 -0
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  CopilotPopup
3
- } from "../../chunk-IQ7DDXDA.mjs";
4
- import "../../chunk-3R6CEFJE.mjs";
3
+ } from "../../chunk-QEZ3YYLO.mjs";
4
+ import "../../chunk-FWKHST6I.mjs";
5
5
  import "../../chunk-TIDV74OE.mjs";
6
6
  import "../../chunk-UH2UFL5W.mjs";
7
7
  import "../../chunk-V7W6IM2V.mjs";
@@ -12,7 +12,7 @@ import "../../chunk-KXE2JCUH.mjs";
12
12
  import "../../chunk-NRA3CFEE.mjs";
13
13
  import "../../chunk-BH6PCAAL.mjs";
14
14
  import "../../chunk-UFN2VWSR.mjs";
15
- import "../../chunk-ZRW27A32.mjs";
15
+ import "../../chunk-IAHSHPRJ.mjs";
16
16
  import "../../chunk-MPZAMNCN.mjs";
17
17
  import "../../chunk-ALWZ35SI.mjs";
18
18
  import "../../chunk-UKWBNVMQ.mjs";
@@ -20,7 +20,8 @@ import "../../chunk-6VUDBDUN.mjs";
20
20
  import "../../chunk-5INP2EWU.mjs";
21
21
  import "../../chunk-XMNTLIK5.mjs";
22
22
  import "../../chunk-HWMFMBJC.mjs";
23
- import "../../chunk-XZNY26GH.mjs";
23
+ import "../../chunk-QGSPTXOV.mjs";
24
+ import "../../chunk-IMBPSLL4.mjs";
24
25
  import "../../chunk-PLHTVHUW.mjs";
25
26
  import "../../chunk-EMIYIMQ6.mjs";
26
27
  import "../../chunk-CGEAG65D.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
 
@@ -2487,19 +2487,23 @@ function RenderImageMessage(_a) {
2487
2487
  return null;
2488
2488
  }
2489
2489
 
2490
+ // src/components/chat/Chat.tsx
2491
+ var import_react13 = __toESM(require("react"));
2492
+ var import_react_core10 = require("@copilotkit/react-core");
2493
+
2490
2494
  // src/components/chat/Suggestion.tsx
2491
2495
  var import_react_core9 = require("@copilotkit/react-core");
2492
2496
  var import_shared2 = require("@copilotkit/shared");
2493
2497
  var import_runtime_client_gql3 = require("@copilotkit/runtime-client-gql");
2494
2498
  var import_jsx_runtime23 = require("react/jsx-runtime");
2495
- function Suggestion({ title, message, onClick, partial, className }) {
2499
+ function Suggestion({ title, onClick, partial, className }) {
2496
2500
  return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
2497
2501
  "button",
2498
2502
  {
2499
2503
  disabled: partial,
2500
2504
  onClick: (e) => {
2501
2505
  e.preventDefault();
2502
- onClick(message);
2506
+ onClick();
2503
2507
  },
2504
2508
  className: className || (partial ? "suggestion loading" : "suggestion"),
2505
2509
  "data-test-id": "suggestion",
@@ -2578,8 +2582,6 @@ var reloadSuggestions = (context, chatSuggestionConfiguration, setCurrentSuggest
2578
2582
  });
2579
2583
 
2580
2584
  // src/components/chat/Chat.tsx
2581
- var import_react13 = __toESM(require("react"));
2582
- var import_react_core10 = require("@copilotkit/react-core");
2583
2585
  var import_runtime_client_gql4 = require("@copilotkit/runtime-client-gql");
2584
2586
  var import_shared3 = require("@copilotkit/shared");
2585
2587
  var import_react_core11 = require("@copilotkit/react-core");
@@ -2662,8 +2664,24 @@ var ImageUploadQueue = ({
2662
2664
  );
2663
2665
  };
2664
2666
 
2665
- // src/components/chat/Chat.tsx
2667
+ // src/components/chat/Suggestions.tsx
2666
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");
2667
2685
  function CopilotChat({
2668
2686
  instructions,
2669
2687
  onSubmitMessage,
@@ -2682,6 +2700,7 @@ function CopilotChat({
2682
2700
  RenderAgentStateMessage: RenderAgentStateMessage2 = RenderAgentStateMessage,
2683
2701
  RenderResultMessage: RenderResultMessage2 = RenderResultMessage,
2684
2702
  RenderImageMessage: RenderImageMessage2 = RenderImageMessage,
2703
+ RenderSuggestionsList = Suggestions,
2685
2704
  Input: Input2 = Input,
2686
2705
  className,
2687
2706
  icons,
@@ -2821,8 +2840,8 @@ function CopilotChat({
2821
2840
  const removeSelectedImage = (index) => {
2822
2841
  setSelectedImages((prev) => prev.filter((_, i) => i !== index));
2823
2842
  };
2824
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(WrappedCopilotChat, { icons, labels, className, children: [
2825
- /* @__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)(
2826
2845
  Messages2,
2827
2846
  {
2828
2847
  AssistantMessage: AssistantMessage2,
@@ -2839,22 +2858,18 @@ function CopilotChat({
2839
2858
  onThumbsUp,
2840
2859
  onThumbsDown,
2841
2860
  markdownTagRenderers,
2842
- children: currentSuggestions.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "suggestions", children: currentSuggestions.map((suggestion, index) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2843
- Suggestion,
2861
+ children: currentSuggestions.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2862
+ RenderSuggestionsList,
2844
2863
  {
2845
- title: suggestion.title,
2846
- message: suggestion.message,
2847
- partial: suggestion.partial,
2848
- className: suggestion.className,
2849
- onClick: (message) => handleSendMessage(message)
2850
- },
2851
- index
2852
- )) })
2864
+ onSuggestionClick: handleSendMessage,
2865
+ suggestions: currentSuggestions
2866
+ }
2867
+ )
2853
2868
  }
2854
2869
  ),
2855
- imageUploadsEnabled && /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(import_jsx_runtime25.Fragment, { children: [
2856
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(ImageUploadQueue, { images: selectedImages, onRemoveImage: removeSelectedImage }),
2857
- /* @__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)(
2858
2873
  "input",
2859
2874
  {
2860
2875
  type: "file",
@@ -2866,7 +2881,7 @@ function CopilotChat({
2866
2881
  }
2867
2882
  )
2868
2883
  ] }),
2869
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2884
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2870
2885
  Input2,
2871
2886
  {
2872
2887
  inProgress: isLoading,
@@ -2889,10 +2904,10 @@ function WrappedCopilotChat({
2889
2904
  }) {
2890
2905
  const chatContext = import_react13.default.useContext(ChatContext);
2891
2906
  if (!chatContext) {
2892
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(ChatContextProvider, { icons, labels, open: true, setOpen: () => {
2893
- }, 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 }) });
2894
2909
  }
2895
- 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 });
2896
2911
  }
2897
2912
  var SUGGESTIONS_DEBOUNCE_TIMEOUT = 1e3;
2898
2913
  var useCopilotChatLogic = (makeSystemMessage, onInProgress, onSubmitMessage, onStopGeneration, onReloadMessages) => {
@@ -3077,56 +3092,85 @@ var useCopilotChatLogic = (makeSystemMessage, onInProgress, onSubmitMessage, onS
3077
3092
  };
3078
3093
 
3079
3094
  // src/components/chat/Modal.tsx
3080
- var import_jsx_runtime26 = require("react/jsx-runtime");
3081
- var CopilotModal = ({
3082
- instructions,
3083
- defaultOpen = false,
3084
- clickOutsideToClose = true,
3085
- hitEscapeToClose = true,
3086
- onSetOpen,
3087
- onSubmitMessage,
3088
- onStopGeneration,
3089
- onReloadMessages,
3090
- shortcut = "/",
3091
- icons,
3092
- labels,
3093
- makeSystemMessage,
3094
- onInProgress,
3095
- Window: Window2 = Window,
3096
- Button: Button2 = Button,
3097
- Header: Header2 = Header,
3098
- Messages: Messages2 = Messages,
3099
- Input: Input2 = Input,
3100
- AssistantMessage: AssistantMessage2 = AssistantMessage,
3101
- UserMessage: UserMessage2 = UserMessage,
3102
- onThumbsUp,
3103
- onThumbsDown,
3104
- onCopy,
3105
- onRegenerate,
3106
- markdownTagRenderers,
3107
- className,
3108
- children
3109
- }) => {
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
+ ]);
3110
3154
  const [openState, setOpenState] = import_react14.default.useState(defaultOpen);
3111
3155
  const setOpen = (open) => {
3112
3156
  onSetOpen == null ? void 0 : onSetOpen(open);
3113
3157
  setOpenState(open);
3114
3158
  };
3115
- 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: [
3116
3160
  children,
3117
- /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { className, children: [
3118
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Button2, {}),
3119
- /* @__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)(
3120
3164
  Window2,
3121
3165
  {
3122
3166
  clickOutsideToClose,
3123
3167
  shortcut,
3124
3168
  hitEscapeToClose,
3125
3169
  children: [
3126
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Header2, {}),
3127
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
3170
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Header2, {}),
3171
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
3128
3172
  CopilotChat,
3129
- {
3173
+ __spreadProps(__spreadValues({}, props), {
3130
3174
  instructions,
3131
3175
  onSubmitMessage,
3132
3176
  onStopGeneration,
@@ -3142,7 +3186,7 @@ var CopilotModal = ({
3142
3186
  onCopy,
3143
3187
  onRegenerate,
3144
3188
  markdownTagRenderers
3145
- }
3189
+ })
3146
3190
  )
3147
3191
  ]
3148
3192
  }
@@ -3152,7 +3196,7 @@ var CopilotModal = ({
3152
3196
  };
3153
3197
 
3154
3198
  // src/components/chat/Sidebar.tsx
3155
- var import_jsx_runtime27 = require("react/jsx-runtime");
3199
+ var import_jsx_runtime28 = require("react/jsx-runtime");
3156
3200
  function CopilotSidebar(props) {
3157
3201
  props = __spreadProps(__spreadValues({}, props), {
3158
3202
  className: props.className ? props.className + " copilotKitSidebar" : "copilotKitSidebar"
@@ -3165,7 +3209,7 @@ function CopilotSidebar(props) {
3165
3209
  (_a = props.onSetOpen) == null ? void 0 : _a.call(props, open);
3166
3210
  setExpandedClassName(open ? "sidebarExpanded" : "");
3167
3211
  };
3168
- 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 })) });
3169
3213
  }
3170
3214
  // Annotate the CommonJS export names for ESM import in node:
3171
3215
  0 && (module.exports = {