@copilotkit/react-ui 0.37.0 → 0.38.0-beta.0

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 (85) hide show
  1. package/.turbo/turbo-build.log +72 -77
  2. package/CHANGELOG.md +13 -0
  3. package/dist/{chunk-IEV5SYHX.mjs → chunk-5B6K3N4M.mjs} +7 -7
  4. package/dist/{chunk-GKZ5DRPT.mjs → chunk-B5UDC4YJ.mjs} +2 -2
  5. package/dist/chunk-DYXI54LF.mjs +126 -0
  6. package/dist/chunk-DYXI54LF.mjs.map +1 -0
  7. package/dist/{chunk-F4KCDLRJ.mjs → chunk-GICTFOCR.mjs} +11 -11
  8. package/dist/chunk-GICTFOCR.mjs.map +1 -0
  9. package/dist/{chunk-MSSOYSBR.mjs → chunk-U3TLLYFC.mjs} +2 -2
  10. package/dist/{chunk-4MKP23AD.mjs → chunk-U566UC72.mjs} +9 -2
  11. package/dist/chunk-U566UC72.mjs.map +1 -0
  12. package/dist/{chunk-LZHY5L7A.mjs → chunk-U6J5DGOE.mjs} +2 -2
  13. package/dist/{chunk-ANO23V2M.mjs → chunk-VOBX4JOA.mjs} +5 -2
  14. package/dist/chunk-VOBX4JOA.mjs.map +1 -0
  15. package/dist/components/chat/Button.d.ts +1 -1
  16. package/dist/components/chat/Chat.d.ts +1 -1
  17. package/dist/components/chat/Chat.js +73 -65
  18. package/dist/components/chat/Chat.js.map +1 -1
  19. package/dist/components/chat/Chat.mjs +7 -7
  20. package/dist/components/chat/Header.d.ts +1 -1
  21. package/dist/components/chat/Input.d.ts +1 -1
  22. package/dist/components/chat/Input.js +4 -1
  23. package/dist/components/chat/Input.js.map +1 -1
  24. package/dist/components/chat/Input.mjs +2 -2
  25. package/dist/components/chat/Messages.d.ts +1 -1
  26. package/dist/components/chat/Messages.js +55 -59
  27. package/dist/components/chat/Messages.js.map +1 -1
  28. package/dist/components/chat/Messages.mjs +2 -2
  29. package/dist/components/chat/Modal.d.ts +1 -1
  30. package/dist/components/chat/Modal.js +73 -65
  31. package/dist/components/chat/Modal.js.map +1 -1
  32. package/dist/components/chat/Modal.mjs +8 -8
  33. package/dist/components/chat/Popup.d.ts +1 -1
  34. package/dist/components/chat/Popup.js +73 -65
  35. package/dist/components/chat/Popup.js.map +1 -1
  36. package/dist/components/chat/Popup.mjs +9 -9
  37. package/dist/components/chat/Response.d.ts +1 -1
  38. package/dist/components/chat/Sidebar.d.ts +1 -1
  39. package/dist/components/chat/Sidebar.js +73 -65
  40. package/dist/components/chat/Sidebar.js.map +1 -1
  41. package/dist/components/chat/Sidebar.mjs +9 -9
  42. package/dist/components/chat/Suggestion.d.ts +1 -1
  43. package/dist/components/chat/Suggestion.js +8 -1
  44. package/dist/components/chat/Suggestion.js.map +1 -1
  45. package/dist/components/chat/Suggestion.mjs +1 -1
  46. package/dist/components/chat/Window.d.ts +1 -1
  47. package/dist/components/chat/index.d.ts +1 -1
  48. package/dist/components/chat/index.js +73 -65
  49. package/dist/components/chat/index.js.map +1 -1
  50. package/dist/components/chat/index.mjs +10 -10
  51. package/dist/components/chat/props.d.ts +1 -1
  52. package/dist/components/chat/props.js.map +1 -1
  53. package/dist/components/index.d.ts +1 -1
  54. package/dist/components/index.js +73 -65
  55. package/dist/components/index.js.map +1 -1
  56. package/dist/components/index.mjs +10 -10
  57. package/dist/hooks/use-push-to-talk.d.ts +1 -1
  58. package/dist/hooks/use-push-to-talk.js +4 -1
  59. package/dist/hooks/use-push-to-talk.js.map +1 -1
  60. package/dist/hooks/use-push-to-talk.mjs +1 -1
  61. package/dist/index.d.ts +1 -1
  62. package/dist/index.js +75 -67
  63. package/dist/index.js.map +1 -1
  64. package/dist/index.mjs +10 -10
  65. package/package.json +7 -6
  66. package/src/components/chat/Chat.tsx +4 -5
  67. package/src/components/chat/Messages.tsx +98 -98
  68. package/src/components/chat/Suggestion.tsx +9 -1
  69. package/src/components/chat/props.ts +1 -1
  70. package/src/hooks/use-push-to-talk.tsx +5 -3
  71. package/dist/chunk-23PTCJ2T.mjs +0 -122
  72. package/dist/chunk-23PTCJ2T.mjs.map +0 -1
  73. package/dist/chunk-4MKP23AD.mjs.map +0 -1
  74. package/dist/chunk-ANO23V2M.mjs.map +0 -1
  75. package/dist/chunk-F4KCDLRJ.mjs.map +0 -1
  76. package/dist/types/types.d.ts +0 -16
  77. package/dist/types/types.js +0 -19
  78. package/dist/types/types.js.map +0 -1
  79. package/dist/types/types.mjs +0 -1
  80. package/dist/types/types.mjs.map +0 -1
  81. package/src/types/types.ts +0 -18
  82. /package/dist/{chunk-IEV5SYHX.mjs.map → chunk-5B6K3N4M.mjs.map} +0 -0
  83. /package/dist/{chunk-GKZ5DRPT.mjs.map → chunk-B5UDC4YJ.mjs.map} +0 -0
  84. /package/dist/{chunk-MSSOYSBR.mjs.map → chunk-U3TLLYFC.mjs.map} +0 -0
  85. /package/dist/{chunk-LZHY5L7A.mjs.map → chunk-U6J5DGOE.mjs.map} +0 -0
@@ -1,8 +1,8 @@
1
1
 
2
- > @copilotkit/react-ui@0.37.0 build /home/runner/work/CopilotKit/CopilotKit/CopilotKit/packages/react-ui
2
+ > @copilotkit/react-ui@0.38.0-beta.0 build /home/runner/work/CopilotKit/CopilotKit/CopilotKit/packages/react-ui
3
3
  > tsup --clean
4
4
 
5
- CLI Building entry: src/index.tsx, src/components/index.ts, src/context/index.ts, src/hooks/index.ts, src/hooks/use-copilot-chat-suggestions.tsx, src/hooks/use-copy-to-clipboard.tsx, src/hooks/use-push-to-talk.tsx, src/lib/utils.test.ts, src/lib/utils.ts, src/types/css.ts, src/types/index.ts, src/types/suggestions.ts, src/types/types.ts, src/components/chat/Button.tsx, src/components/chat/Chat.tsx, src/components/chat/ChatContext.tsx, src/components/chat/CodeBlock.tsx, src/components/chat/Header.tsx, src/components/chat/Icons.tsx, src/components/chat/Input.tsx, src/components/chat/Markdown.tsx, src/components/chat/Messages.tsx, src/components/chat/Modal.tsx, src/components/chat/Popup.tsx, src/components/chat/Response.tsx, src/components/chat/Sidebar.tsx, src/components/chat/Suggestion.tsx, src/components/chat/Textarea.tsx, src/components/chat/Window.tsx, src/components/chat/index.tsx, src/components/chat/props.ts
5
+ CLI Building entry: src/index.tsx, src/components/index.ts, src/context/index.ts, src/hooks/index.ts, src/hooks/use-copilot-chat-suggestions.tsx, src/hooks/use-copy-to-clipboard.tsx, src/hooks/use-push-to-talk.tsx, src/lib/utils.test.ts, src/lib/utils.ts, src/types/css.ts, src/types/index.ts, src/types/suggestions.ts, src/components/chat/Button.tsx, src/components/chat/Chat.tsx, src/components/chat/ChatContext.tsx, src/components/chat/CodeBlock.tsx, src/components/chat/Header.tsx, src/components/chat/Icons.tsx, src/components/chat/Input.tsx, src/components/chat/Markdown.tsx, src/components/chat/Messages.tsx, src/components/chat/Modal.tsx, src/components/chat/Popup.tsx, src/components/chat/Response.tsx, src/components/chat/Sidebar.tsx, src/components/chat/Suggestion.tsx, src/components/chat/Textarea.tsx, src/components/chat/Window.tsx, src/components/chat/index.tsx, src/components/chat/props.ts
6
6
  CLI Using tsconfig: tsconfig.json
7
7
  CLI tsup v6.7.0
8
8
  CLI Using tsup config: /home/runner/work/CopilotKit/CopilotKit/CopilotKit/packages/react-ui/tsup.config.ts
@@ -18,22 +18,22 @@
18
18
  ESM dist/chunk-EFZPSZWO.mjs 43.00 B
19
19
  ESM dist/chunk-JD7BAH7U.mjs 43.00 B
20
20
  ESM dist/chunk-MRFF7GSQ.mjs 43.00 B
21
- ESM dist/chunk-MSSOYSBR.mjs 1.02 KB
21
+ ESM dist/chunk-U3TLLYFC.mjs 1.02 KB
22
22
  ESM dist/chunk-WB3YULQ4.mjs 43.00 B
23
- ESM dist/chunk-GKZ5DRPT.mjs 573.00 B
24
- ESM dist/chunk-IEV5SYHX.mjs 2.17 KB
23
+ ESM dist/chunk-B5UDC4YJ.mjs 573.00 B
24
+ ESM dist/chunk-5B6K3N4M.mjs 2.17 KB
25
25
  ESM dist/chunk-B7DNOYVQ.mjs 3.80 KB
26
26
  ESM dist/chunk-SE6DAYSX.mjs 566.00 B
27
27
  ESM dist/chunk-UC3Y7MWX.mjs 825.00 B
28
- ESM dist/chunk-F4KCDLRJ.mjs 4.76 KB
29
- ESM dist/chunk-XSUSSWDS.mjs 613.00 B
30
- ESM dist/chunk-4MKP23AD.mjs 3.43 KB
31
- ESM dist/chunk-LZHY5L7A.mjs 2.77 KB
28
+ ESM dist/chunk-GICTFOCR.mjs 4.83 KB
29
+ ESM dist/chunk-U566UC72.mjs 3.64 KB
30
+ ESM dist/chunk-U6J5DGOE.mjs 2.77 KB
32
31
  ESM dist/chunk-YQFVRDNC.mjs 1.53 KB
33
- ESM dist/chunk-23PTCJ2T.mjs 4.96 KB
32
+ ESM dist/chunk-DYXI54LF.mjs 4.59 KB
34
33
  ESM dist/chunk-YQ3D5IQV.mjs 2.17 KB
35
- ESM dist/chunk-UPTB2MVO.mjs 8.65 KB
34
+ ESM dist/chunk-XSUSSWDS.mjs 613.00 B
36
35
  ESM dist/chunk-BJPGMY3I.mjs 1.63 KB
36
+ ESM dist/chunk-UPTB2MVO.mjs 8.65 KB
37
37
  ESM dist/chunk-FZC7X5PK.mjs 7.83 KB
38
38
  ESM dist/chunk-IU3WTXLQ.mjs 43.00 B
39
39
  ESM dist/chunk-T26KLXLH.mjs 43.00 B
@@ -42,18 +42,16 @@
42
42
  ESM dist/hooks/use-copy-to-clipboard.mjs 177.00 B
43
43
  ESM dist/chunk-54JAUBUJ.mjs 675.00 B
44
44
  ESM dist/hooks/use-push-to-talk.mjs 290.00 B
45
- ESM dist/chunk-ANO23V2M.mjs 4.87 KB
45
+ ESM dist/chunk-VOBX4JOA.mjs 4.96 KB
46
46
  ESM dist/chunk-MRXNTQOX.mjs 1.89 KB
47
47
  ESM dist/index.css 14.41 KB
48
- ESM dist/components/chat/Response.mjs 232.00 B
49
- ESM dist/types/css.mjs 32.00 B
50
48
  ESM dist/components/chat/Sidebar.mjs 721.00 B
49
+ ESM dist/types/css.mjs 32.00 B
51
50
  ESM dist/components/chat/Suggestion.mjs 233.00 B
52
51
  ESM dist/components/chat/Textarea.mjs 177.00 B
53
52
  ESM dist/components/chat/Window.mjs 144.00 B
54
53
  ESM dist/components/chat/index.mjs 946.00 B
55
54
  ESM dist/components/chat/props.mjs 69.00 B
56
- ESM dist/components/chat/CodeBlock.mjs 319.00 B
57
55
  ESM dist/components/chat/Header.mjs 214.00 B
58
56
  ESM dist/components/chat/Icons.mjs 515.00 B
59
57
  ESM dist/components/chat/Input.mjs 281.00 B
@@ -61,13 +59,14 @@
61
59
  ESM dist/components/chat/Messages.mjs 325.00 B
62
60
  ESM dist/components/chat/Modal.mjs 680.00 B
63
61
  ESM dist/components/chat/Popup.mjs 715.00 B
62
+ ESM dist/components/chat/Response.mjs 232.00 B
64
63
  ESM dist/lib/utils.mjs 885.00 B
65
64
  ESM dist/types/index.mjs 66.00 B
66
65
  ESM dist/types/suggestions.mjs 40.00 B
67
- ESM dist/types/types.mjs 34.00 B
68
66
  ESM dist/components/chat/Button.mjs 214.00 B
69
67
  ESM dist/components/chat/Chat.mjs 627.00 B
70
68
  ESM dist/components/chat/ChatContext.mjs 276.00 B
69
+ ESM dist/components/chat/CodeBlock.mjs 319.00 B
71
70
  ESM dist/index.mjs.map 71.00 B
72
71
  ESM dist/components/index.mjs.map 71.00 B
73
72
  ESM dist/context/index.mjs.map 71.00 B
@@ -76,22 +75,22 @@
76
75
  ESM dist/chunk-EFZPSZWO.mjs.map 71.00 B
77
76
  ESM dist/chunk-JD7BAH7U.mjs.map 71.00 B
78
77
  ESM dist/chunk-MRFF7GSQ.mjs.map 71.00 B
79
- ESM dist/chunk-MSSOYSBR.mjs.map 3.03 KB
78
+ ESM dist/chunk-U3TLLYFC.mjs.map 3.03 KB
80
79
  ESM dist/chunk-WB3YULQ4.mjs.map 71.00 B
81
- ESM dist/chunk-GKZ5DRPT.mjs.map 2.10 KB
82
- ESM dist/chunk-IEV5SYHX.mjs.map 4.36 KB
80
+ ESM dist/chunk-B5UDC4YJ.mjs.map 2.10 KB
81
+ ESM dist/chunk-5B6K3N4M.mjs.map 4.36 KB
83
82
  ESM dist/chunk-B7DNOYVQ.mjs.map 6.70 KB
84
83
  ESM dist/chunk-SE6DAYSX.mjs.map 773.00 B
85
84
  ESM dist/chunk-UC3Y7MWX.mjs.map 1.12 KB
86
- ESM dist/chunk-F4KCDLRJ.mjs.map 10.93 KB
87
- ESM dist/chunk-XSUSSWDS.mjs.map 854.00 B
88
- ESM dist/chunk-4MKP23AD.mjs.map 5.64 KB
89
- ESM dist/chunk-LZHY5L7A.mjs.map 4.27 KB
85
+ ESM dist/chunk-GICTFOCR.mjs.map 10.98 KB
86
+ ESM dist/chunk-U566UC72.mjs.map 6.01 KB
87
+ ESM dist/chunk-U6J5DGOE.mjs.map 4.27 KB
90
88
  ESM dist/chunk-YQFVRDNC.mjs.map 2.80 KB
91
- ESM dist/chunk-23PTCJ2T.mjs.map 8.84 KB
89
+ ESM dist/chunk-DYXI54LF.mjs.map 8.24 KB
92
90
  ESM dist/chunk-YQ3D5IQV.mjs.map 3.22 KB
93
- ESM dist/chunk-UPTB2MVO.mjs.map 15.59 KB
91
+ ESM dist/chunk-XSUSSWDS.mjs.map 854.00 B
94
92
  ESM dist/chunk-BJPGMY3I.mjs.map 4.85 KB
93
+ ESM dist/chunk-UPTB2MVO.mjs.map 15.59 KB
95
94
  ESM dist/chunk-FZC7X5PK.mjs.map 10.15 KB
96
95
  ESM dist/chunk-IU3WTXLQ.mjs.map 71.00 B
97
96
  ESM dist/chunk-T26KLXLH.mjs.map 71.00 B
@@ -100,18 +99,16 @@
100
99
  ESM dist/hooks/use-copy-to-clipboard.mjs.map 71.00 B
101
100
  ESM dist/chunk-54JAUBUJ.mjs.map 1.16 KB
102
101
  ESM dist/hooks/use-push-to-talk.mjs.map 71.00 B
103
- ESM dist/chunk-ANO23V2M.mjs.map 8.44 KB
102
+ ESM dist/chunk-VOBX4JOA.mjs.map 8.53 KB
104
103
  ESM dist/chunk-MRXNTQOX.mjs.map 71.00 B
105
104
  ESM dist/index.css.map 18.25 KB
106
- ESM dist/components/chat/Response.mjs.map 71.00 B
107
- ESM dist/types/css.mjs.map 71.00 B
108
105
  ESM dist/components/chat/Sidebar.mjs.map 71.00 B
106
+ ESM dist/types/css.mjs.map 71.00 B
109
107
  ESM dist/components/chat/Suggestion.mjs.map 71.00 B
110
108
  ESM dist/components/chat/Textarea.mjs.map 71.00 B
111
109
  ESM dist/components/chat/Window.mjs.map 71.00 B
112
110
  ESM dist/components/chat/index.mjs.map 71.00 B
113
111
  ESM dist/components/chat/props.mjs.map 71.00 B
114
- ESM dist/components/chat/CodeBlock.mjs.map 71.00 B
115
112
  ESM dist/components/chat/Header.mjs.map 71.00 B
116
113
  ESM dist/components/chat/Icons.mjs.map 71.00 B
117
114
  ESM dist/components/chat/Input.mjs.map 71.00 B
@@ -119,109 +116,107 @@
119
116
  ESM dist/components/chat/Messages.mjs.map 71.00 B
120
117
  ESM dist/components/chat/Modal.mjs.map 71.00 B
121
118
  ESM dist/components/chat/Popup.mjs.map 71.00 B
119
+ ESM dist/components/chat/Response.mjs.map 71.00 B
122
120
  ESM dist/lib/utils.mjs.map 1.49 KB
123
121
  ESM dist/types/index.mjs.map 71.00 B
124
122
  ESM dist/types/suggestions.mjs.map 71.00 B
125
- ESM dist/types/types.mjs.map 71.00 B
126
123
  ESM dist/components/chat/Button.mjs.map 71.00 B
127
124
  ESM dist/components/chat/Chat.mjs.map 71.00 B
128
125
  ESM dist/components/chat/ChatContext.mjs.map 71.00 B
129
- ESM ⚡️ Build success in 228ms
130
- CJS dist/index.js 56.36 KB
126
+ ESM dist/components/chat/CodeBlock.mjs.map 71.00 B
127
+ ESM ⚡️ Build success in 336ms
128
+ CJS dist/index.js 56.54 KB
131
129
  CJS dist/index.css 14.41 KB
132
- CJS dist/components/index.js 55.59 KB
130
+ CJS dist/components/index.js 55.78 KB
133
131
  CJS dist/context/index.js 803.00 B
134
132
  CJS dist/hooks/index.js 1.79 KB
135
133
  CJS dist/hooks/use-copilot-chat-suggestions.js 1.86 KB
136
134
  CJS dist/hooks/use-copy-to-clipboard.js 2.30 KB
137
- CJS dist/hooks/use-push-to-talk.js 6.66 KB
135
+ CJS dist/hooks/use-push-to-talk.js 6.79 KB
138
136
  CJS dist/lib/utils.test.js 182.00 B
139
137
  CJS dist/lib/utils.js 2.40 KB
140
138
  CJS dist/types/css.js 789.00 B
141
139
  CJS dist/types/index.js 797.00 B
142
140
  CJS dist/types/suggestions.js 821.00 B
143
- CJS dist/types/types.js 797.00 B
144
141
  CJS dist/components/chat/Button.js 2.91 KB
145
- CJS dist/components/chat/Chat.js 47.14 KB
142
+ CJS dist/components/chat/Chat.js 47.32 KB
146
143
  CJS dist/components/chat/ChatContext.js 9.29 KB
147
144
  CJS dist/components/chat/CodeBlock.js 14.30 KB
148
145
  CJS dist/components/chat/Header.js 2.63 KB
149
146
  CJS dist/components/chat/Icons.js 11.01 KB
150
- CJS dist/components/chat/Input.js 11.01 KB
147
+ CJS dist/components/chat/Input.js 11.14 KB
151
148
  CJS dist/components/chat/Markdown.js 16.47 KB
152
- CJS dist/components/chat/Messages.js 22.23 KB
153
- CJS dist/components/chat/Modal.js 54.07 KB
154
- CJS dist/components/chat/Popup.js 54.51 KB
149
+ CJS dist/components/chat/Messages.js 21.93 KB
150
+ CJS dist/components/chat/Modal.js 54.26 KB
151
+ CJS dist/components/chat/Popup.js 54.69 KB
155
152
  CJS dist/components/chat/Response.js 2.67 KB
156
- CJS dist/components/chat/Sidebar.js 55.04 KB
157
- CJS dist/components/chat/Suggestion.js 5.95 KB
153
+ CJS dist/components/chat/Sidebar.js 55.22 KB
154
+ CJS dist/components/chat/Suggestion.js 6.16 KB
158
155
  CJS dist/components/chat/Textarea.js 2.51 KB
159
156
  CJS dist/components/chat/Window.js 5.46 KB
160
- CJS dist/components/chat/index.js 55.58 KB
157
+ CJS dist/components/chat/index.js 55.77 KB
161
158
  CJS dist/components/chat/props.js 807.00 B
162
- CJS dist/index.js.map 97.86 KB
163
159
  CJS dist/index.css.map 18.25 KB
164
- CJS dist/components/index.js.map 94.03 KB
165
- CJS dist/hooks/index.js.map 3.89 KB
160
+ CJS dist/index.js.map 97.74 KB
161
+ CJS dist/components/index.js.map 93.91 KB
166
162
  CJS dist/context/index.js.map 139.00 B
163
+ CJS dist/hooks/index.js.map 3.89 KB
167
164
  CJS dist/hooks/use-copilot-chat-suggestions.js.map 3.80 KB
168
165
  CJS dist/hooks/use-copy-to-clipboard.js.map 1.21 KB
169
- CJS dist/hooks/use-push-to-talk.js.map 8.50 KB
166
+ CJS dist/hooks/use-push-to-talk.js.map 8.58 KB
170
167
  CJS dist/lib/utils.test.js.map 352.00 B
171
168
  CJS dist/lib/utils.js.map 1.55 KB
172
169
  CJS dist/types/css.js.map 788.00 B
173
170
  CJS dist/types/index.js.map 182.00 B
174
171
  CJS dist/types/suggestions.js.map 259.00 B
175
- CJS dist/types/types.js.map 478.00 B
176
172
  CJS dist/components/chat/Button.js.map 5.47 KB
177
- CJS dist/components/chat/Chat.js.map 76.13 KB
173
+ CJS dist/components/chat/Chat.js.map 76.01 KB
178
174
  CJS dist/components/chat/ChatContext.js.map 13.87 KB
179
- CJS dist/components/chat/Header.js.map 5.11 KB
180
175
  CJS dist/components/chat/CodeBlock.js.map 24.33 KB
176
+ CJS dist/components/chat/Header.js.map 5.11 KB
181
177
  CJS dist/components/chat/Icons.js.map 10.27 KB
182
- CJS dist/components/chat/Input.js.map 19.36 KB
178
+ CJS dist/components/chat/Input.js.map 19.45 KB
183
179
  CJS dist/components/chat/Markdown.js.map 27.58 KB
184
- CJS dist/components/chat/Messages.js.map 40.73 KB
185
- CJS dist/components/chat/Modal.js.map 88.94 KB
180
+ CJS dist/components/chat/Messages.js.map 40.08 KB
181
+ CJS dist/components/chat/Modal.js.map 88.82 KB
186
182
  CJS dist/components/chat/Response.js.map 5.19 KB
187
- CJS dist/components/chat/Popup.js.map 91.00 KB
188
- CJS dist/components/chat/Suggestion.js.map 12.87 KB
183
+ CJS dist/components/chat/Popup.js.map 90.88 KB
184
+ CJS dist/components/chat/Sidebar.js.map 91.83 KB
185
+ CJS dist/components/chat/Suggestion.js.map 13.23 KB
189
186
  CJS dist/components/chat/Textarea.js.map 2.83 KB
190
187
  CJS dist/components/chat/Window.js.map 6.76 KB
191
- CJS dist/components/chat/Sidebar.js.map 91.95 KB
192
- CJS dist/components/chat/props.js.map 1.06 KB
193
- CJS dist/components/chat/index.js.map 94.27 KB
194
- CJS ⚡️ Build success in 302ms
188
+ CJS dist/components/chat/index.js.map 94.15 KB
189
+ CJS dist/components/chat/props.js.map 1.07 KB
190
+ CJS ⚡️ Build success in 358ms
195
191
  DTS Build start
196
- DTS ⚡️ Build success in 8010ms
197
- DTS dist/index.d.ts 687.00 B
198
- DTS dist/components/chat/props.d.ts 1007.00 B
199
- DTS dist/components/chat/Popup.d.ts 1.77 KB
200
- DTS dist/components/chat/Sidebar.d.ts 332.00 B
201
- DTS dist/components/chat/Chat.d.ts 4.56 KB
192
+ DTS ⚡️ Build success in 8225ms
193
+ DTS dist/index.d.ts 699.00 B
194
+ DTS dist/components/chat/props.d.ts 1019.00 B
195
+ DTS dist/components/chat/Popup.d.ts 1.78 KB
196
+ DTS dist/components/chat/Sidebar.d.ts 344.00 B
197
+ DTS dist/components/chat/Chat.d.ts 4.57 KB
202
198
  DTS dist/components/chat/ChatContext.d.ts 2.83 KB
203
199
  DTS dist/hooks/use-copilot-chat-suggestions.d.ts 2.67 KB
204
200
  DTS dist/types/css.d.ts 623.00 B
205
- DTS dist/components/chat/Modal.d.ts 1.79 KB
201
+ DTS dist/components/chat/Modal.d.ts 1.80 KB
206
202
  DTS dist/types/suggestions.d.ts 158.00 B
207
- DTS dist/components/index.d.ts 479.00 B
203
+ DTS dist/components/index.d.ts 491.00 B
208
204
  DTS dist/context/index.d.ts 12.00 B
209
205
  DTS dist/hooks/index.d.ts 79.00 B
210
206
  DTS dist/hooks/use-copy-to-clipboard.d.ts 266.00 B
211
- DTS dist/hooks/use-push-to-talk.d.ts 771.00 B
207
+ DTS dist/hooks/use-push-to-talk.d.ts 783.00 B
212
208
  DTS dist/lib/utils.test.d.ts 12.00 B
213
209
  DTS dist/lib/utils.d.ts 263.00 B
214
210
  DTS dist/types/index.d.ts 68.00 B
215
- DTS dist/types/types.d.ts 351.00 B
216
- DTS dist/components/chat/Button.d.ts 163.00 B
211
+ DTS dist/components/chat/Button.d.ts 175.00 B
217
212
  DTS dist/components/chat/CodeBlock.d.ts 392.00 B
218
- DTS dist/components/chat/Header.d.ts 157.00 B
213
+ DTS dist/components/chat/Header.d.ts 169.00 B
219
214
  DTS dist/components/chat/Icons.d.ts 938.00 B
220
- DTS dist/components/chat/Input.d.ts 175.00 B
215
+ DTS dist/components/chat/Input.d.ts 187.00 B
221
216
  DTS dist/components/chat/Markdown.d.ts 138.00 B
222
- DTS dist/components/chat/Messages.d.ts 188.00 B
223
- DTS dist/components/chat/Response.d.ts 201.00 B
224
- DTS dist/components/chat/Suggestion.d.ts 661.00 B
217
+ DTS dist/components/chat/Messages.d.ts 200.00 B
218
+ DTS dist/components/chat/Response.d.ts 213.00 B
219
+ DTS dist/components/chat/Suggestion.d.ts 673.00 B
225
220
  DTS dist/components/chat/Textarea.d.ts 535.00 B
226
- DTS dist/components/chat/Window.d.ts 223.00 B
227
- DTS dist/components/chat/index.d.ts 452.00 B
221
+ DTS dist/components/chat/Window.d.ts 235.00 B
222
+ DTS dist/components/chat/index.d.ts 464.00 B
package/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # ui
2
2
 
3
+ ## 0.38.0-beta.0
4
+
5
+ ### Minor Changes
6
+
7
+ - Beta
8
+
9
+ ### Patch Changes
10
+
11
+ - Updated dependencies
12
+ - @copilotkit/react-core@0.38.0-beta.0
13
+ - @copilotkit/runtime-client-gql@0.38.0-beta.0
14
+ - @copilotkit/shared@0.38.0-beta.0
15
+
3
16
  ## 0.37.0
4
17
 
5
18
  ### Minor Changes
@@ -9,16 +9,16 @@ import {
9
9
  } from "./chunk-UC3Y7MWX.mjs";
10
10
  import {
11
11
  CopilotChat
12
- } from "./chunk-F4KCDLRJ.mjs";
13
- import {
14
- ResponseButton
15
- } from "./chunk-XSUSSWDS.mjs";
12
+ } from "./chunk-GICTFOCR.mjs";
16
13
  import {
17
14
  Input
18
- } from "./chunk-LZHY5L7A.mjs";
15
+ } from "./chunk-U6J5DGOE.mjs";
19
16
  import {
20
17
  Messages
21
- } from "./chunk-23PTCJ2T.mjs";
18
+ } from "./chunk-DYXI54LF.mjs";
19
+ import {
20
+ ResponseButton
21
+ } from "./chunk-XSUSSWDS.mjs";
22
22
  import {
23
23
  ChatContextProvider
24
24
  } from "./chunk-BJPGMY3I.mjs";
@@ -90,4 +90,4 @@ var CopilotModal = ({
90
90
  export {
91
91
  CopilotModal
92
92
  };
93
- //# sourceMappingURL=chunk-IEV5SYHX.mjs.map
93
+ //# sourceMappingURL=chunk-5B6K3N4M.mjs.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  CopilotModal
3
- } from "./chunk-IEV5SYHX.mjs";
3
+ } from "./chunk-5B6K3N4M.mjs";
4
4
  import {
5
5
  __spreadProps,
6
6
  __spreadValues
@@ -18,4 +18,4 @@ function CopilotPopup(props) {
18
18
  export {
19
19
  CopilotPopup
20
20
  };
21
- //# sourceMappingURL=chunk-GKZ5DRPT.mjs.map
21
+ //# sourceMappingURL=chunk-B5UDC4YJ.mjs.map
@@ -0,0 +1,126 @@
1
+ import {
2
+ Markdown
3
+ } from "./chunk-YQ3D5IQV.mjs";
4
+ import {
5
+ useChatContext
6
+ } from "./chunk-BJPGMY3I.mjs";
7
+
8
+ // src/components/chat/Messages.tsx
9
+ import React, { useEffect, useMemo } from "react";
10
+ import { useCopilotContext } from "@copilotkit/react-core";
11
+ import {
12
+ MessageStatusCode,
13
+ ActionExecutionMessage,
14
+ ResultMessage,
15
+ TextMessage,
16
+ Role
17
+ } from "@copilotkit/runtime-client-gql";
18
+ import { jsx, jsxs } from "react/jsx-runtime";
19
+ var Messages = ({ messages, inProgress, children }) => {
20
+ const { chatComponentsCache } = useCopilotContext();
21
+ const context = useChatContext();
22
+ const initialMessages = useMemo(
23
+ () => makeInitialMessages(context.labels.initial),
24
+ [context.labels.initial]
25
+ );
26
+ messages = [...initialMessages, ...messages];
27
+ const functionResults = {};
28
+ for (let i = 0; i < messages.length; i++) {
29
+ if (messages[i] instanceof ActionExecutionMessage) {
30
+ const id = messages[i].id;
31
+ const resultMessage = messages.find(
32
+ (message) => message instanceof ResultMessage && message.actionExecutionId === id
33
+ );
34
+ if (resultMessage) {
35
+ functionResults[id] = ResultMessage.decodeResult(resultMessage.result || "");
36
+ }
37
+ }
38
+ }
39
+ const messagesEndRef = React.useRef(null);
40
+ const scrollToBottom = () => {
41
+ if (messagesEndRef.current) {
42
+ messagesEndRef.current.scrollIntoView({
43
+ behavior: "auto"
44
+ });
45
+ }
46
+ };
47
+ useEffect(() => {
48
+ scrollToBottom();
49
+ }, [messages]);
50
+ return /* @__PURE__ */ jsxs("div", { className: "copilotKitMessages", children: [
51
+ messages.map((message, index) => {
52
+ const isCurrentMessage = index === messages.length - 1;
53
+ if (message instanceof TextMessage && message.role === "user") {
54
+ return /* @__PURE__ */ jsx("div", { className: "copilotKitMessage copilotKitUserMessage", children: message.content }, index);
55
+ } else if (message instanceof TextMessage && message.role == "assistant") {
56
+ return /* @__PURE__ */ jsx("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: isCurrentMessage && inProgress && !message.content ? context.icons.spinnerIcon : /* @__PURE__ */ jsx(Markdown, { content: message.content }) }, index);
57
+ } else if (message instanceof ActionExecutionMessage) {
58
+ if (chatComponentsCache.current !== null && chatComponentsCache.current[message.name]) {
59
+ const render = chatComponentsCache.current[message.name];
60
+ if (typeof render === "string") {
61
+ if (isCurrentMessage && inProgress) {
62
+ return /* @__PURE__ */ jsxs("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: [
63
+ context.icons.spinnerIcon,
64
+ " ",
65
+ /* @__PURE__ */ jsx("span", { className: "inProgressLabel", children: render })
66
+ ] }, index);
67
+ } else {
68
+ return null;
69
+ }
70
+ } else {
71
+ const args = message.arguments;
72
+ let status = "inProgress";
73
+ if (functionResults[message.id] !== void 0) {
74
+ status = "complete";
75
+ } else if (message.status.code !== MessageStatusCode.Pending) {
76
+ status = "executing";
77
+ }
78
+ const toRender = render({
79
+ status,
80
+ args,
81
+ result: functionResults[message.id]
82
+ });
83
+ if (!toRender && status === "complete") {
84
+ return null;
85
+ }
86
+ if (typeof toRender === "string") {
87
+ return /* @__PURE__ */ jsxs("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: [
88
+ isCurrentMessage && inProgress && context.icons.spinnerIcon,
89
+ " ",
90
+ toRender
91
+ ] }, index);
92
+ } else {
93
+ return /* @__PURE__ */ jsx("div", { className: "copilotKitCustomAssistantMessage", children: toRender }, index);
94
+ }
95
+ }
96
+ } else if (!inProgress || !isCurrentMessage) {
97
+ return null;
98
+ } else {
99
+ return /* @__PURE__ */ jsx("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: context.icons.spinnerIcon }, index);
100
+ }
101
+ }
102
+ }),
103
+ /* @__PURE__ */ jsx("footer", { ref: messagesEndRef, children })
104
+ ] });
105
+ };
106
+ function makeInitialMessages(initial) {
107
+ let initialArray = [];
108
+ if (initial) {
109
+ if (Array.isArray(initial)) {
110
+ initialArray.push(...initial);
111
+ } else {
112
+ initialArray.push(initial);
113
+ }
114
+ }
115
+ return initialArray.map(
116
+ (message) => new TextMessage({
117
+ role: Role.Assistant,
118
+ content: message
119
+ })
120
+ );
121
+ }
122
+
123
+ export {
124
+ Messages
125
+ };
126
+ //# sourceMappingURL=chunk-DYXI54LF.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/chat/Messages.tsx"],"sourcesContent":["import React, { useEffect, useMemo } from \"react\";\nimport { MessagesProps } from \"./props\";\nimport { useChatContext } from \"./ChatContext\";\nimport { nanoid } from \"nanoid\";\nimport { Markdown } from \"./Markdown\";\nimport { RenderFunctionStatus, useCopilotContext } from \"@copilotkit/react-core\";\nimport {\n MessageStatusCode,\n ActionExecutionMessage,\n Message,\n ResultMessage,\n TextMessage,\n Role,\n} from \"@copilotkit/runtime-client-gql\";\n\nexport const Messages = ({ messages, inProgress, children }: MessagesProps) => {\n const { chatComponentsCache } = useCopilotContext();\n\n const context = useChatContext();\n const initialMessages = useMemo(\n () => makeInitialMessages(context.labels.initial),\n [context.labels.initial],\n );\n messages = [...initialMessages, ...messages];\n\n const functionResults: Record<string, string> = {};\n\n for (let i = 0; i < messages.length; i++) {\n if (messages[i] instanceof ActionExecutionMessage) {\n const id = messages[i].id;\n const resultMessage: ResultMessage | undefined = messages.find(\n (message) => message instanceof ResultMessage && message.actionExecutionId === id,\n ) as ResultMessage | undefined;\n\n if (resultMessage) {\n functionResults[id] = ResultMessage.decodeResult(resultMessage.result || \"\");\n }\n }\n }\n\n const messagesEndRef = React.useRef<HTMLDivElement>(null);\n\n const scrollToBottom = () => {\n if (messagesEndRef.current) {\n messagesEndRef.current.scrollIntoView({\n behavior: \"auto\",\n });\n }\n };\n\n useEffect(() => {\n scrollToBottom();\n }, [messages]);\n\n return (\n <div className=\"copilotKitMessages\">\n {messages.map((message, index) => {\n const isCurrentMessage = index === messages.length - 1;\n\n if (message instanceof TextMessage && message.role === \"user\") {\n return (\n <div key={index} className=\"copilotKitMessage copilotKitUserMessage\">\n {message.content}\n </div>\n );\n } else if (message instanceof TextMessage && message.role == \"assistant\") {\n return (\n <div key={index} className={`copilotKitMessage copilotKitAssistantMessage`}>\n {isCurrentMessage && inProgress && !message.content ? (\n context.icons.spinnerIcon\n ) : (\n <Markdown content={message.content} />\n )}\n </div>\n );\n } else if (message instanceof ActionExecutionMessage) {\n if (chatComponentsCache.current !== null && chatComponentsCache.current[message.name]) {\n const render = chatComponentsCache.current[message.name];\n // render a static string\n if (typeof render === \"string\") {\n // when render is static, we show it only when in progress\n if (isCurrentMessage && inProgress) {\n return (\n <div key={index} className={`copilotKitMessage copilotKitAssistantMessage`}>\n {context.icons.spinnerIcon} <span className=\"inProgressLabel\">{render}</span>\n </div>\n );\n }\n // Done - silent by default to avoid a series of \"done\" messages\n else {\n return null;\n }\n }\n // render is a function\n else {\n const args = message.arguments;\n\n let status: RenderFunctionStatus = \"inProgress\";\n\n if (functionResults[message.id] !== undefined) {\n status = \"complete\";\n } else if (message.status.code !== MessageStatusCode.Pending) {\n status = \"executing\";\n }\n\n const toRender = render({\n status: status as any,\n args,\n result: functionResults[message.id],\n });\n\n // No result and complete: stay silent\n if (!toRender && status === \"complete\") {\n return null;\n }\n\n if (typeof toRender === \"string\") {\n return (\n <div key={index} className={`copilotKitMessage copilotKitAssistantMessage`}>\n {isCurrentMessage && inProgress && context.icons.spinnerIcon} {toRender}\n </div>\n );\n } else {\n return (\n <div key={index} className=\"copilotKitCustomAssistantMessage\">\n {toRender}\n </div>\n );\n }\n }\n }\n // No render function found- show the default message\n else if (!inProgress || !isCurrentMessage) {\n // Done - silent by default to avoid a series of \"done\" messages\n return null;\n } else {\n // In progress\n return (\n <div key={index} className={`copilotKitMessage copilotKitAssistantMessage`}>\n {context.icons.spinnerIcon}\n </div>\n );\n }\n }\n })}\n <footer ref={messagesEndRef}>{children}</footer>\n </div>\n );\n};\n\nfunction makeInitialMessages(initial?: string | string[]): Message[] {\n let initialArray: string[] = [];\n if (initial) {\n if (Array.isArray(initial)) {\n initialArray.push(...initial);\n } else {\n initialArray.push(initial);\n }\n }\n\n return initialArray.map(\n (message) =>\n new TextMessage({\n role: Role.Assistant,\n content: message,\n }),\n );\n}\n"],"mappings":"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","names":[]}
@@ -1,16 +1,16 @@
1
- import {
2
- ResponseButton
3
- } from "./chunk-XSUSSWDS.mjs";
4
1
  import {
5
2
  Suggestion,
6
3
  reloadSuggestions
7
- } from "./chunk-4MKP23AD.mjs";
4
+ } from "./chunk-U566UC72.mjs";
8
5
  import {
9
6
  Input
10
- } from "./chunk-LZHY5L7A.mjs";
7
+ } from "./chunk-U6J5DGOE.mjs";
11
8
  import {
12
9
  Messages
13
- } from "./chunk-23PTCJ2T.mjs";
10
+ } from "./chunk-DYXI54LF.mjs";
11
+ import {
12
+ ResponseButton
13
+ } from "./chunk-XSUSSWDS.mjs";
14
14
  import {
15
15
  ChatContext,
16
16
  ChatContextProvider
@@ -23,6 +23,7 @@ import {
23
23
  import React, { useEffect, useRef, useState } from "react";
24
24
  import { useCopilotChat, useCopilotContext } from "@copilotkit/react-core";
25
25
  import { nanoid } from "nanoid";
26
+ import { Role, TextMessage } from "@copilotkit/runtime-client-gql";
26
27
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
27
28
  function CopilotChat({
28
29
  instructions,
@@ -131,11 +132,10 @@ var useCopilotChatLogic = (makeSystemMessage, onInProgress, onSubmitMessage) =>
131
132
  abortSuggestions();
132
133
  setCurrentSuggestions([]);
133
134
  onSubmitMessage == null ? void 0 : onSubmitMessage(messageContent);
134
- const message = {
135
- id: nanoid(),
135
+ const message = new TextMessage({
136
136
  content: messageContent,
137
- role: "user"
138
- };
137
+ role: Role.User
138
+ });
139
139
  appendMessage(message);
140
140
  return message;
141
141
  });
@@ -154,4 +154,4 @@ export {
154
154
  WrappedCopilotChat,
155
155
  useCopilotChatLogic
156
156
  };
157
- //# sourceMappingURL=chunk-F4KCDLRJ.mjs.map
157
+ //# sourceMappingURL=chunk-GICTFOCR.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/chat/Chat.tsx"],"sourcesContent":["/**\n * An embeddable chat panel for CopilotKit.\n *\n * <img src=\"/images/CopilotChat/CopilotChat.gif\" width=\"500\" />\n *\n * A chatbot panel component for the CopilotKit framework. The component allows for a high degree\n * of customization through various props and custom CSS.\n *\n * <RequestExample>\n * ```jsx CopilotChat Example\n * import { CopilotChat } from \"@copilotkit/react-ui\";\n *\n * <CopilotChat\n * labels={{\n * title: \"Your Assistant\",\n * initial: \"Hi! 👋 How can I assist you today?\",\n * }}\n * />\n * ```\n * </RequestExample>\n *\n * ## Custom CSS\n *\n * You can customize the colors of the panel by overriding the CSS variables\n * defined in the [default styles](https://github.com/CopilotKit/CopilotKit/blob/main/CopilotKit/packages/react-ui/src/css/colors.css).\n *\n * For example, to set the primary color to purple:\n *\n * ```jsx\n * <div style={{ \"--copilot-kit-primary-color\": \"#7D5BA6\" }}>\n * <CopilotPopup />\n * </div>\n * ```\n *\n * To further customize the panel, you can override the CSS classes defined\n * [here](https://github.com/CopilotKit/CopilotKit/blob/main/CopilotKit/packages/react-ui/src/css/).\n *\n * For example:\n *\n * ```css\n * .copilotKitButton {\n * border-radius: 0;\n * }\n * ```\n */\n\nimport {\n ChatContext,\n ChatContextProvider,\n CopilotChatIcons,\n CopilotChatLabels,\n} from \"./ChatContext\";\nimport { Messages as DefaultMessages } from \"./Messages\";\nimport { Input as DefaultInput } from \"./Input\";\nimport { ResponseButton as DefaultResponseButton } from \"./Response\";\nimport { Suggestion } from \"./Suggestion\";\nimport React, { useEffect, useRef, useState } from \"react\";\nimport { SystemMessageFunction, useCopilotChat, useCopilotContext } from \"@copilotkit/react-core\";\nimport { nanoid } from \"nanoid\";\nimport { reloadSuggestions } from \"./Suggestion\";\nimport { CopilotChatSuggestion } from \"../../types/suggestions\";\nimport { Message, Role, TextMessage } from \"@copilotkit/runtime-client-gql\";\nimport { InputProps, MessagesProps, ResponseButtonProps } from \"./props\";\n\n/**\n * Props for CopilotChat component.\n */\nexport interface CopilotChatProps {\n /**\n * Custom instructions to be added to the system message. Use this property to\n * provide additional context or guidance to the language model, influencing\n * its responses. These instructions can include specific directions,\n * preferences, or criteria that the model should consider when generating\n * its output, thereby tailoring the conversation more precisely to the\n * user's needs or the application's requirements.\n */\n instructions?: string;\n\n /**\n * A callback that gets called when the in progress state changes.\n */\n onInProgress?: (inProgress: boolean) => void;\n\n /**\n * A callback that gets called when a new message it submitted.\n */\n onSubmitMessage?: (message: string) => void;\n\n /**\n * Icons can be used to set custom icons for the chat window.\n */\n icons?: CopilotChatIcons;\n\n /**\n * Labels can be used to set custom labels for the chat window.\n */\n labels?: CopilotChatLabels;\n\n /**\n * A function that takes in context string and instructions and returns\n * the system message to include in the chat request.\n * Use this to completely override the system message, when providing\n * instructions is not enough.\n */\n makeSystemMessage?: SystemMessageFunction;\n\n /**\n * Whether to show the response button.\n * @default true\n */\n showResponseButton?: boolean;\n\n /**\n * A custom Messages component to use instead of the default.\n */\n Messages?: React.ComponentType<MessagesProps>;\n\n /**\n * A custom Input component to use instead of the default.\n */\n Input?: React.ComponentType<InputProps>;\n\n /**\n * A custom ResponseButton component to use instead of the default.\n */\n ResponseButton?: React.ComponentType<ResponseButtonProps>;\n\n /**\n * A class name to apply to the root element.\n */\n className?: string;\n\n /**\n * Children to render.\n */\n children?: React.ReactNode;\n}\n\nexport function CopilotChat({\n instructions,\n onSubmitMessage,\n makeSystemMessage,\n showResponseButton = true,\n onInProgress,\n Messages = DefaultMessages,\n Input = DefaultInput,\n ResponseButton = DefaultResponseButton,\n className,\n icons,\n labels,\n}: CopilotChatProps) {\n const context = useCopilotContext();\n\n useEffect(() => {\n context.setChatInstructions(instructions || \"\");\n }, [instructions]);\n\n const {\n visibleMessages,\n isLoading,\n currentSuggestions,\n sendMessage,\n stopGeneration,\n reloadMessages,\n } = useCopilotChatLogic(makeSystemMessage, onInProgress, onSubmitMessage);\n\n const chatContext = React.useContext(ChatContext);\n const isVisible = chatContext ? chatContext.open : true;\n\n return (\n <WrappedCopilotChat icons={icons} labels={labels} className={className}>\n <Messages messages={visibleMessages} inProgress={isLoading}>\n {currentSuggestions.length > 0 && (\n <div>\n <h6>Suggested:</h6>\n <div className=\"suggestions\">\n {currentSuggestions.map((suggestion, index) => (\n <Suggestion\n key={index}\n title={suggestion.title}\n message={suggestion.message}\n partial={suggestion.partial}\n className={suggestion.className}\n onClick={(message) => sendMessage(message)}\n />\n ))}\n </div>\n </div>\n )}\n {showResponseButton && visibleMessages.length > 0 && (\n <ResponseButton\n onClick={isLoading ? stopGeneration : reloadMessages}\n inProgress={isLoading}\n />\n )}\n </Messages>\n <Input inProgress={isLoading} onSend={sendMessage} isVisible={isVisible} />\n </WrappedCopilotChat>\n );\n}\n\nexport function WrappedCopilotChat({\n children,\n icons,\n labels,\n className,\n}: {\n children: React.ReactNode;\n icons?: CopilotChatIcons;\n labels?: CopilotChatLabels;\n className?: string;\n}) {\n const chatContext = React.useContext(ChatContext);\n if (!chatContext) {\n return (\n <ChatContextProvider icons={icons} labels={labels} open={true} setOpen={() => {}}>\n <div className={`copilotKitChat ${className}`}>{children}</div>\n </ChatContextProvider>\n );\n }\n return <>{children}</>;\n}\n\nconst SUGGESTIONS_DEBOUNCE_TIMEOUT = 1000;\n\nexport const useCopilotChatLogic = (\n makeSystemMessage?: SystemMessageFunction,\n onInProgress?: (isLoading: boolean) => void,\n onSubmitMessage?: (messageContent: string) => void,\n) => {\n const { visibleMessages, appendMessage, reloadMessages, stopGeneration, isLoading } =\n useCopilotChat({\n id: nanoid(),\n makeSystemMessage,\n });\n\n const [currentSuggestions, setCurrentSuggestions] = useState<CopilotChatSuggestion[]>([]);\n const suggestionsAbortControllerRef = useRef<AbortController | null>(null);\n const debounceTimerRef = useRef<any>();\n\n const abortSuggestions = () => {\n suggestionsAbortControllerRef.current?.abort();\n suggestionsAbortControllerRef.current = null;\n };\n\n const context = useCopilotContext();\n\n useEffect(() => {\n onInProgress?.(isLoading);\n\n abortSuggestions();\n\n debounceTimerRef.current = setTimeout(\n () => {\n if (!isLoading && Object.keys(context.chatSuggestionConfiguration).length !== 0) {\n suggestionsAbortControllerRef.current = new AbortController();\n reloadSuggestions(\n context,\n context.chatSuggestionConfiguration,\n setCurrentSuggestions,\n suggestionsAbortControllerRef,\n );\n }\n },\n currentSuggestions.length == 0 ? 0 : SUGGESTIONS_DEBOUNCE_TIMEOUT,\n );\n\n return () => {\n clearTimeout(debounceTimerRef.current);\n };\n }, [isLoading, context.chatSuggestionConfiguration]);\n\n const sendMessage = async (messageContent: string) => {\n abortSuggestions();\n setCurrentSuggestions([]);\n onSubmitMessage?.(messageContent);\n const message: Message = new TextMessage({\n content: messageContent,\n role: Role.User,\n });\n appendMessage(message);\n return message;\n };\n\n return {\n visibleMessages,\n isLoading,\n currentSuggestions,\n sendMessage,\n stopGeneration,\n reloadMessages,\n };\n};\n"],"mappings":"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","names":["Messages","Input","ResponseButton"]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  CopilotModal
3
- } from "./chunk-IEV5SYHX.mjs";
3
+ } from "./chunk-5B6K3N4M.mjs";
4
4
  import {
5
5
  __spreadProps,
6
6
  __spreadValues
@@ -27,4 +27,4 @@ function CopilotSidebar(props) {
27
27
  export {
28
28
  CopilotSidebar
29
29
  };
30
- //# sourceMappingURL=chunk-MSSOYSBR.mjs.map
30
+ //# sourceMappingURL=chunk-U3TLLYFC.mjs.map