@copilotkit/react-ui 0.18.0-mme-assistant-api.0 → 0.18.0-mme-function-call-labels.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +30 -30
- package/CHANGELOG.md +29 -3
- package/dist/{chunk-Q7SIB42Y.mjs → chunk-5OZET2NZ.mjs} +2 -2
- package/dist/{chunk-FA66IWQ6.mjs → chunk-AK7UZHCU.mjs} +2 -2
- package/dist/chunk-CVC7E7LQ.mjs +119 -0
- package/dist/chunk-CVC7E7LQ.mjs.map +1 -0
- package/dist/{chunk-KDHWN43O.mjs → chunk-YZ4GW76L.mjs} +2 -2
- package/dist/components/chat/Chat.js +59 -7
- package/dist/components/chat/Chat.js.map +1 -1
- package/dist/components/chat/Chat.mjs +2 -2
- package/dist/components/chat/Messages.js +57 -5
- package/dist/components/chat/Messages.js.map +1 -1
- package/dist/components/chat/Messages.mjs +1 -1
- package/dist/components/chat/Popup.js +59 -7
- package/dist/components/chat/Popup.js.map +1 -1
- package/dist/components/chat/Popup.mjs +3 -3
- package/dist/components/chat/Sidebar.js +59 -7
- package/dist/components/chat/Sidebar.js.map +1 -1
- package/dist/components/chat/Sidebar.mjs +3 -3
- package/dist/components/chat/index.js +59 -7
- package/dist/components/chat/index.js.map +1 -1
- package/dist/components/chat/index.mjs +4 -4
- package/dist/components/index.js +59 -7
- package/dist/components/index.js.map +1 -1
- package/dist/components/index.mjs +4 -4
- package/dist/index.css +10 -0
- package/dist/index.css.map +1 -1
- package/dist/index.js +59 -7
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +4 -4
- package/package.json +8 -8
- package/src/components/chat/Messages.tsx +149 -19
- package/src/css/messages.css +9 -0
- package/dist/chunk-3M4HWSE7.mjs +0 -67
- package/dist/chunk-3M4HWSE7.mjs.map +0 -1
- /package/dist/{chunk-Q7SIB42Y.mjs.map → chunk-5OZET2NZ.mjs.map} +0 -0
- /package/dist/{chunk-FA66IWQ6.mjs.map → chunk-AK7UZHCU.mjs.map} +0 -0
- /package/dist/{chunk-KDHWN43O.mjs.map → chunk-YZ4GW76L.mjs.map} +0 -0
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
> @copilotkit/react-ui@0.18.0-mme-
|
|
2
|
+
> @copilotkit/react-ui@0.18.0-mme-function-call-labels.2 build /home/runner/work/CopilotKit/CopilotKit/CopilotKit/packages/react-ui
|
|
3
3
|
> tsup --clean
|
|
4
4
|
|
|
5
5
|
[34mCLI[39m Building entry: src/index.tsx, src/components/index.ts, src/context/index.ts, src/hooks/index.ts, src/hooks/use-copy-to-clipboard.tsx, src/lib/utils.test.ts, src/lib/utils.ts, src/types/index.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/Popup.tsx, src/components/chat/Response.tsx, src/components/chat/Sidebar.tsx, src/components/chat/Textarea.tsx, src/components/chat/Window.tsx, src/components/chat/index.tsx, src/components/chat/props.ts
|
|
@@ -23,10 +23,10 @@ Browserslist: caniuse-lite is outdated. Please run:
|
|
|
23
23
|
[32mESM[39m [1mdist/chunk-JD7BAH7U.mjs [22m[32m43.00 B[39m
|
|
24
24
|
[32mESM[39m [1mdist/chunk-P4GBO6MW.mjs [22m[32m43.00 B[39m
|
|
25
25
|
[32mESM[39m [1mdist/chunk-WB3YULQ4.mjs [22m[32m43.00 B[39m
|
|
26
|
-
[32mESM[39m [1mdist/chunk-
|
|
27
|
-
[32mESM[39m [1mdist/chunk-
|
|
28
|
-
[32mESM[39m [1mdist/chunk-
|
|
29
|
-
[32mESM[39m [1mdist/chunk-
|
|
26
|
+
[32mESM[39m [1mdist/chunk-YZ4GW76L.mjs [22m[32m528.00 B[39m
|
|
27
|
+
[32mESM[39m [1mdist/chunk-AK7UZHCU.mjs [22m[32m1.01 KB[39m
|
|
28
|
+
[32mESM[39m [1mdist/chunk-5OZET2NZ.mjs [22m[32m2.49 KB[39m
|
|
29
|
+
[32mESM[39m [1mdist/chunk-CVC7E7LQ.mjs [22m[32m5.08 KB[39m
|
|
30
30
|
[32mESM[39m [1mdist/chunk-GWGHQNRI.mjs [22m[32m1.84 KB[39m
|
|
31
31
|
[32mESM[39m [1mdist/chunk-Z34F3WLK.mjs [22m[32m613.00 B[39m
|
|
32
32
|
[32mESM[39m [1mdist/chunk-B7DNOYVQ.mjs [22m[32m3.80 KB[39m
|
|
@@ -44,7 +44,7 @@ Browserslist: caniuse-lite is outdated. Please run:
|
|
|
44
44
|
[32mESM[39m [1mdist/lib/utils.mjs [22m[32m885.00 B[39m
|
|
45
45
|
[32mESM[39m [1mdist/chunk-MRXNTQOX.mjs [22m[32m1.89 KB[39m
|
|
46
46
|
[32mESM[39m [1mdist/chunk-7NSRDJ5C.mjs [22m[32m43.00 B[39m
|
|
47
|
-
[32mESM[39m [1mdist/index.css [22m[32m19.
|
|
47
|
+
[32mESM[39m [1mdist/index.css [22m[32m19.82 KB[39m
|
|
48
48
|
[32mESM[39m [1mdist/components/chat/props.mjs [22m[32m69.00 B[39m
|
|
49
49
|
[32mESM[39m [1mdist/components/chat/Markdown.mjs [22m[32m255.00 B[39m
|
|
50
50
|
[32mESM[39m [1mdist/components/chat/Messages.mjs [22m[32m325.00 B[39m
|
|
@@ -71,10 +71,10 @@ Browserslist: caniuse-lite is outdated. Please run:
|
|
|
71
71
|
[32mESM[39m [1mdist/chunk-JD7BAH7U.mjs.map [22m[32m71.00 B[39m
|
|
72
72
|
[32mESM[39m [1mdist/chunk-P4GBO6MW.mjs.map [22m[32m71.00 B[39m
|
|
73
73
|
[32mESM[39m [1mdist/chunk-WB3YULQ4.mjs.map [22m[32m71.00 B[39m
|
|
74
|
-
[32mESM[39m [1mdist/chunk-
|
|
75
|
-
[32mESM[39m [1mdist/chunk-
|
|
76
|
-
[32mESM[39m [1mdist/chunk-
|
|
77
|
-
[32mESM[39m [1mdist/chunk-
|
|
74
|
+
[32mESM[39m [1mdist/chunk-YZ4GW76L.mjs.map [22m[32m549.00 B[39m
|
|
75
|
+
[32mESM[39m [1mdist/chunk-AK7UZHCU.mjs.map [22m[32m1.36 KB[39m
|
|
76
|
+
[32mESM[39m [1mdist/chunk-5OZET2NZ.mjs.map [22m[32m6.73 KB[39m
|
|
77
|
+
[32mESM[39m [1mdist/chunk-CVC7E7LQ.mjs.map [22m[32m12.08 KB[39m
|
|
78
78
|
[32mESM[39m [1mdist/chunk-GWGHQNRI.mjs.map [22m[32m2.76 KB[39m
|
|
79
79
|
[32mESM[39m [1mdist/chunk-Z34F3WLK.mjs.map [22m[32m854.00 B[39m
|
|
80
80
|
[32mESM[39m [1mdist/chunk-B7DNOYVQ.mjs.map [22m[32m6.70 KB[39m
|
|
@@ -92,7 +92,7 @@ Browserslist: caniuse-lite is outdated. Please run:
|
|
|
92
92
|
[32mESM[39m [1mdist/lib/utils.mjs.map [22m[32m1.49 KB[39m
|
|
93
93
|
[32mESM[39m [1mdist/chunk-MRXNTQOX.mjs.map [22m[32m71.00 B[39m
|
|
94
94
|
[32mESM[39m [1mdist/chunk-7NSRDJ5C.mjs.map [22m[32m71.00 B[39m
|
|
95
|
-
[32mESM[39m [1mdist/index.css.map [22m[32m30.
|
|
95
|
+
[32mESM[39m [1mdist/index.css.map [22m[32m30.93 KB[39m
|
|
96
96
|
[32mESM[39m [1mdist/components/chat/props.mjs.map [22m[32m71.00 B[39m
|
|
97
97
|
[32mESM[39m [1mdist/components/chat/Markdown.mjs.map [22m[32m71.00 B[39m
|
|
98
98
|
[32mESM[39m [1mdist/components/chat/Messages.mjs.map [22m[32m71.00 B[39m
|
|
@@ -110,10 +110,10 @@ Browserslist: caniuse-lite is outdated. Please run:
|
|
|
110
110
|
[32mESM[39m [1mdist/components/chat/Header.mjs.map [22m[32m71.00 B[39m
|
|
111
111
|
[32mESM[39m [1mdist/components/chat/Icons.mjs.map [22m[32m71.00 B[39m
|
|
112
112
|
[32mESM[39m [1mdist/components/chat/Input.mjs.map [22m[32m71.00 B[39m
|
|
113
|
-
[32mESM[39m ⚡️ Build success in
|
|
114
|
-
[32mCJS[39m [1mdist/index.js [22m[
|
|
115
|
-
[32mCJS[39m [1mdist/index.css [22m[32m19.
|
|
116
|
-
[32mCJS[39m [1mdist/components/index.js [22m[
|
|
113
|
+
[32mESM[39m ⚡️ Build success in 1407ms
|
|
114
|
+
[32mCJS[39m [1mdist/index.js [22m[32m35.97 KB[39m
|
|
115
|
+
[32mCJS[39m [1mdist/index.css [22m[32m19.82 KB[39m
|
|
116
|
+
[32mCJS[39m [1mdist/components/index.js [22m[32m36.00 KB[39m
|
|
117
117
|
[32mCJS[39m [1mdist/context/index.js [22m[32m803.00 B[39m
|
|
118
118
|
[32mCJS[39m [1mdist/hooks/index.js [22m[32m797.00 B[39m
|
|
119
119
|
[32mCJS[39m [1mdist/hooks/use-copy-to-clipboard.js [22m[32m2.32 KB[39m
|
|
@@ -122,24 +122,24 @@ Browserslist: caniuse-lite is outdated. Please run:
|
|
|
122
122
|
[32mCJS[39m [1mdist/types/index.js [22m[32m797.00 B[39m
|
|
123
123
|
[32mCJS[39m [1mdist/types/types.js [22m[32m797.00 B[39m
|
|
124
124
|
[32mCJS[39m [1mdist/components/chat/Button.js [22m[32m2.91 KB[39m
|
|
125
|
-
[32mCJS[39m [1mdist/components/chat/Chat.js [22m[
|
|
125
|
+
[32mCJS[39m [1mdist/components/chat/Chat.js [22m[32m34.64 KB[39m
|
|
126
126
|
[32mCJS[39m [1mdist/components/chat/ChatContext.js [22m[32m9.01 KB[39m
|
|
127
127
|
[32mCJS[39m [1mdist/components/chat/CodeBlock.js [22m[32m9.21 KB[39m
|
|
128
128
|
[32mCJS[39m [1mdist/components/chat/Header.js [22m[32m2.63 KB[39m
|
|
129
129
|
[32mCJS[39m [1mdist/components/chat/Icons.js [22m[32m9.51 KB[39m
|
|
130
130
|
[32mCJS[39m [1mdist/components/chat/Input.js [22m[32m5.26 KB[39m
|
|
131
131
|
[32mCJS[39m [1mdist/components/chat/Markdown.js [22m[32m11.00 KB[39m
|
|
132
|
-
[32mCJS[39m [1mdist/components/chat/Messages.js [22m[
|
|
133
|
-
[32mCJS[39m [1mdist/components/chat/Popup.js [22m[
|
|
132
|
+
[32mCJS[39m [1mdist/components/chat/Messages.js [22m[32m16.93 KB[39m
|
|
133
|
+
[32mCJS[39m [1mdist/components/chat/Popup.js [22m[32m35.04 KB[39m
|
|
134
134
|
[32mCJS[39m [1mdist/components/chat/Response.js [22m[32m2.67 KB[39m
|
|
135
|
-
[32mCJS[39m [1mdist/components/chat/Sidebar.js [22m[
|
|
135
|
+
[32mCJS[39m [1mdist/components/chat/Sidebar.js [22m[32m35.59 KB[39m
|
|
136
136
|
[32mCJS[39m [1mdist/components/chat/Textarea.js [22m[32m2.51 KB[39m
|
|
137
137
|
[32mCJS[39m [1mdist/components/chat/Window.js [22m[32m5.46 KB[39m
|
|
138
|
-
[32mCJS[39m [1mdist/components/chat/index.js [22m[
|
|
138
|
+
[32mCJS[39m [1mdist/components/chat/index.js [22m[32m35.99 KB[39m
|
|
139
139
|
[32mCJS[39m [1mdist/components/chat/props.js [22m[32m807.00 B[39m
|
|
140
|
-
[32mCJS[39m [1mdist/index.js.map [22m[
|
|
141
|
-
[32mCJS[39m [1mdist/index.css.map [22m[32m30.
|
|
142
|
-
[32mCJS[39m [1mdist/components/index.js.map [22m[
|
|
140
|
+
[32mCJS[39m [1mdist/index.js.map [22m[32m58.48 KB[39m
|
|
141
|
+
[32mCJS[39m [1mdist/index.css.map [22m[32m30.93 KB[39m
|
|
142
|
+
[32mCJS[39m [1mdist/components/index.js.map [22m[32m58.41 KB[39m
|
|
143
143
|
[32mCJS[39m [1mdist/context/index.js.map [22m[32m139.00 B[39m
|
|
144
144
|
[32mCJS[39m [1mdist/hooks/index.js.map [22m[32m137.00 B[39m
|
|
145
145
|
[32mCJS[39m [1mdist/hooks/use-copy-to-clipboard.js.map [22m[32m1.23 KB[39m
|
|
@@ -148,23 +148,23 @@ Browserslist: caniuse-lite is outdated. Please run:
|
|
|
148
148
|
[32mCJS[39m [1mdist/types/index.js.map [22m[32m137.00 B[39m
|
|
149
149
|
[32mCJS[39m [1mdist/types/types.js.map [22m[32m478.00 B[39m
|
|
150
150
|
[32mCJS[39m [1mdist/components/chat/Button.js.map [22m[32m5.70 KB[39m
|
|
151
|
-
[32mCJS[39m [1mdist/components/chat/Chat.js.map [22m[
|
|
151
|
+
[32mCJS[39m [1mdist/components/chat/Chat.js.map [22m[32m56.56 KB[39m
|
|
152
152
|
[32mCJS[39m [1mdist/components/chat/ChatContext.js.map [22m[32m12.69 KB[39m
|
|
153
153
|
[32mCJS[39m [1mdist/components/chat/CodeBlock.js.map [22m[32m13.35 KB[39m
|
|
154
154
|
[32mCJS[39m [1mdist/components/chat/Header.js.map [22m[32m5.19 KB[39m
|
|
155
155
|
[32mCJS[39m [1mdist/components/chat/Icons.js.map [22m[32m8.55 KB[39m
|
|
156
156
|
[32mCJS[39m [1mdist/components/chat/Input.js.map [22m[32m9.75 KB[39m
|
|
157
157
|
[32mCJS[39m [1mdist/components/chat/Markdown.js.map [22m[32m16.13 KB[39m
|
|
158
|
-
[32mCJS[39m [1mdist/components/chat/Messages.js.map [22m[
|
|
159
|
-
[32mCJS[39m [1mdist/components/chat/Popup.js.map [22m[
|
|
158
|
+
[32mCJS[39m [1mdist/components/chat/Messages.js.map [22m[32m32.60 KB[39m
|
|
159
|
+
[32mCJS[39m [1mdist/components/chat/Popup.js.map [22m[32m57.07 KB[39m
|
|
160
160
|
[32mCJS[39m [1mdist/components/chat/Response.js.map [22m[32m5.27 KB[39m
|
|
161
|
-
[32mCJS[39m [1mdist/components/chat/Sidebar.js.map [22m[
|
|
161
|
+
[32mCJS[39m [1mdist/components/chat/Sidebar.js.map [22m[32m57.89 KB[39m
|
|
162
162
|
[32mCJS[39m [1mdist/components/chat/Textarea.js.map [22m[32m2.83 KB[39m
|
|
163
163
|
[32mCJS[39m [1mdist/components/chat/Window.js.map [22m[32m6.76 KB[39m
|
|
164
|
-
[32mCJS[39m [1mdist/components/chat/index.js.map [22m[
|
|
164
|
+
[32mCJS[39m [1mdist/components/chat/index.js.map [22m[32m58.55 KB[39m
|
|
165
165
|
[32mCJS[39m [1mdist/components/chat/props.js.map [22m[32m884.00 B[39m
|
|
166
|
-
[32mCJS[39m ⚡️ Build success in
|
|
167
|
-
[32mDTS[39m ⚡️ Build success in
|
|
166
|
+
[32mCJS[39m ⚡️ Build success in 1447ms
|
|
167
|
+
[32mDTS[39m ⚡️ Build success in 5907ms
|
|
168
168
|
[32mDTS[39m [1mdist/index.d.ts [22m[32m411.00 B[39m
|
|
169
169
|
[32mDTS[39m [1mdist/components/chat/props.d.ts [22m[32m794.00 B[39m
|
|
170
170
|
[32mDTS[39m [1mdist/components/chat/Popup.d.ts [22m[32m269.00 B[39m
|
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,20 @@
|
|
|
1
1
|
# ui
|
|
2
2
|
|
|
3
|
-
## 0.18.0-mme-
|
|
3
|
+
## 0.18.0-mme-function-call-labels.2
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- be00d61: Alpha
|
|
8
|
+
- QA
|
|
9
|
+
|
|
10
|
+
### Patch Changes
|
|
11
|
+
|
|
12
|
+
- Updated dependencies [be00d61]
|
|
13
|
+
- Updated dependencies
|
|
14
|
+
- @copilotkit/react-core@0.21.0-mme-function-call-labels.2
|
|
15
|
+
- @copilotkit/shared@0.5.0-mme-function-call-labels.2
|
|
16
|
+
|
|
17
|
+
## 0.18.0-mme-experimental-actions.1
|
|
4
18
|
|
|
5
19
|
### Minor Changes
|
|
6
20
|
|
|
@@ -9,8 +23,20 @@
|
|
|
9
23
|
### Patch Changes
|
|
10
24
|
|
|
11
25
|
- Updated dependencies
|
|
12
|
-
- @copilotkit/react-core@0.21.0-mme-
|
|
13
|
-
- @copilotkit/shared@0.5.0-mme-
|
|
26
|
+
- @copilotkit/react-core@0.21.0-mme-experimental-actions.1
|
|
27
|
+
- @copilotkit/shared@0.5.0-mme-experimental-actions.1
|
|
28
|
+
|
|
29
|
+
## 0.18.0-mme-experimental-actions.0
|
|
30
|
+
|
|
31
|
+
### Minor Changes
|
|
32
|
+
|
|
33
|
+
- QA new action type
|
|
34
|
+
|
|
35
|
+
### Patch Changes
|
|
36
|
+
|
|
37
|
+
- Updated dependencies
|
|
38
|
+
- @copilotkit/react-core@0.21.0-mme-experimental-actions.0
|
|
39
|
+
- @copilotkit/shared@0.5.0-mme-experimental-actions.0
|
|
14
40
|
|
|
15
41
|
## 0.17.1
|
|
16
42
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Messages
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-CVC7E7LQ.mjs";
|
|
4
4
|
import {
|
|
5
5
|
ResponseButton
|
|
6
6
|
} from "./chunk-Z34F3WLK.mjs";
|
|
@@ -89,4 +89,4 @@ var CopilotChat = ({
|
|
|
89
89
|
export {
|
|
90
90
|
CopilotChat
|
|
91
91
|
};
|
|
92
|
-
//# sourceMappingURL=chunk-
|
|
92
|
+
//# sourceMappingURL=chunk-5OZET2NZ.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
CopilotChat
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-5OZET2NZ.mjs";
|
|
4
4
|
import {
|
|
5
5
|
__spreadProps,
|
|
6
6
|
__spreadValues
|
|
@@ -30,4 +30,4 @@ var CopilotSidebar = (props) => {
|
|
|
30
30
|
export {
|
|
31
31
|
CopilotSidebar
|
|
32
32
|
};
|
|
33
|
-
//# sourceMappingURL=chunk-
|
|
33
|
+
//# sourceMappingURL=chunk-AK7UZHCU.mjs.map
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Markdown
|
|
3
|
+
} from "./chunk-GWGHQNRI.mjs";
|
|
4
|
+
import {
|
|
5
|
+
useChatContext
|
|
6
|
+
} from "./chunk-OF66AL5Z.mjs";
|
|
7
|
+
|
|
8
|
+
// src/components/chat/Messages.tsx
|
|
9
|
+
import React, { useEffect, useMemo } from "react";
|
|
10
|
+
import { nanoid } from "nanoid";
|
|
11
|
+
import { decodeResult } from "@copilotkit/shared";
|
|
12
|
+
import { useCopilotContext } from "@copilotkit/react-core";
|
|
13
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
14
|
+
var Messages = ({ messages, inProgress }) => {
|
|
15
|
+
const { entryPoints, chatComponentsCache } = useCopilotContext();
|
|
16
|
+
const context = useChatContext();
|
|
17
|
+
const initialMessages = useMemo(
|
|
18
|
+
() => makeInitialMessages(context.labels.initial),
|
|
19
|
+
[context.labels.initial]
|
|
20
|
+
);
|
|
21
|
+
messages = [...initialMessages, ...messages];
|
|
22
|
+
const functionResults = {};
|
|
23
|
+
for (let i = 0; i < messages.length; i++) {
|
|
24
|
+
if (messages[i].role === "assistant" && messages[i].function_call) {
|
|
25
|
+
const id = messages[i].id;
|
|
26
|
+
if (i + 1 < messages.length && messages[i + 1].role === "function") {
|
|
27
|
+
functionResults[id] = decodeResult(messages[i + 1].content || "");
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
const messagesEndRef = React.useRef(null);
|
|
32
|
+
const scrollToBottom = () => {
|
|
33
|
+
if (messagesEndRef.current) {
|
|
34
|
+
messagesEndRef.current.scrollIntoView({
|
|
35
|
+
behavior: "auto"
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
useEffect(() => {
|
|
40
|
+
scrollToBottom();
|
|
41
|
+
}, [messages]);
|
|
42
|
+
return /* @__PURE__ */ jsxs("div", { className: "copilotKitMessages", children: [
|
|
43
|
+
messages.map((message, index) => {
|
|
44
|
+
var _a, _b, _c, _d;
|
|
45
|
+
const isCurrentMessage = index === messages.length - 1;
|
|
46
|
+
if (message.role === "user") {
|
|
47
|
+
return /* @__PURE__ */ jsx("div", { className: "copilotKitMessage copilotKitUserMessage", children: message.content }, index);
|
|
48
|
+
} else if (message.role == "assistant") {
|
|
49
|
+
if (isCurrentMessage && inProgress && !message.content && !message.partialFunctionCall) {
|
|
50
|
+
return /* @__PURE__ */ jsx("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: context.icons.spinnerIcon }, index);
|
|
51
|
+
} else if (message.function_call || message.partialFunctionCall) {
|
|
52
|
+
const functionCallName = ((_a = message.function_call) == null ? void 0 : _a.name) || ((_b = message.partialFunctionCall) == null ? void 0 : _b.name);
|
|
53
|
+
if (chatComponentsCache.current !== null && chatComponentsCache.current[functionCallName]) {
|
|
54
|
+
const render = chatComponentsCache.current[functionCallName];
|
|
55
|
+
if (typeof render === "string") {
|
|
56
|
+
if (isCurrentMessage && inProgress) {
|
|
57
|
+
return /* @__PURE__ */ jsxs("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: [
|
|
58
|
+
context.icons.spinnerIcon,
|
|
59
|
+
" ",
|
|
60
|
+
/* @__PURE__ */ jsx("span", { className: "inProgressLabel", children: render })
|
|
61
|
+
] }, index);
|
|
62
|
+
} else {
|
|
63
|
+
return /* @__PURE__ */ jsx("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: context.labels.done }, index);
|
|
64
|
+
}
|
|
65
|
+
} else {
|
|
66
|
+
const args = ((_c = message.function_call) == null ? void 0 : _c.arguments) || ((_d = message.partialFunctionCall) == null ? void 0 : _d.arguments);
|
|
67
|
+
let status = "inProgress";
|
|
68
|
+
if (functionResults[message.id] !== void 0) {
|
|
69
|
+
status = "complete";
|
|
70
|
+
} else if (message.function_call) {
|
|
71
|
+
status = "executing";
|
|
72
|
+
}
|
|
73
|
+
const result = render({
|
|
74
|
+
status,
|
|
75
|
+
args,
|
|
76
|
+
result: functionResults[message.id]
|
|
77
|
+
});
|
|
78
|
+
if (typeof result === "string") {
|
|
79
|
+
return /* @__PURE__ */ jsxs("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: [
|
|
80
|
+
isCurrentMessage && inProgress && context.icons.spinnerIcon,
|
|
81
|
+
" ",
|
|
82
|
+
result
|
|
83
|
+
] }, index);
|
|
84
|
+
} else {
|
|
85
|
+
return /* @__PURE__ */ jsx("div", { className: "copilotKitCustomAssistantMessage", children: result }, index);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
} else if ((!inProgress || !isCurrentMessage) && message.function_call) {
|
|
89
|
+
return /* @__PURE__ */ jsx("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: context.labels.done }, index);
|
|
90
|
+
} else {
|
|
91
|
+
return /* @__PURE__ */ jsx("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: context.icons.spinnerIcon }, index);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
return /* @__PURE__ */ jsx("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: /* @__PURE__ */ jsx(Markdown, { content: message.content }) }, index);
|
|
95
|
+
}
|
|
96
|
+
}),
|
|
97
|
+
/* @__PURE__ */ jsx("div", { ref: messagesEndRef })
|
|
98
|
+
] });
|
|
99
|
+
};
|
|
100
|
+
function makeInitialMessages(initial) {
|
|
101
|
+
let initialArray = [];
|
|
102
|
+
if (initial) {
|
|
103
|
+
if (Array.isArray(initial)) {
|
|
104
|
+
initialArray.push(...initial);
|
|
105
|
+
} else {
|
|
106
|
+
initialArray.push(initial);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
return initialArray.map((message) => ({
|
|
110
|
+
id: nanoid(),
|
|
111
|
+
role: "assistant",
|
|
112
|
+
content: message
|
|
113
|
+
}));
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
export {
|
|
117
|
+
Messages
|
|
118
|
+
};
|
|
119
|
+
//# sourceMappingURL=chunk-CVC7E7LQ.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 { Message, decodeResult } from \"@copilotkit/shared\";\nimport { Markdown } from \"./Markdown\";\nimport { useCopilotContext } from \"@copilotkit/react-core\";\n\nexport const Messages = ({ messages, inProgress }: MessagesProps) => {\n const { entryPoints, chatComponentsCache } = useCopilotContext();\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].role === \"assistant\" && messages[i].function_call) {\n const id = messages[i].id;\n if (i + 1 < messages.length && messages[i + 1].role === \"function\") {\n functionResults[id] = decodeResult(messages[i + 1].content || \"\");\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.role === \"user\") {\n return (\n <div key={index} className=\"copilotKitMessage copilotKitUserMessage\">\n {message.content}\n </div>\n );\n } else if (message.role == \"assistant\") {\n if (isCurrentMessage && inProgress && !message.content && !message.partialFunctionCall) {\n // The message is in progress and there is no content- show the spinner\n return (\n <div key={index} className={`copilotKitMessage copilotKitAssistantMessage`}>\n {context.icons.spinnerIcon}\n </div>\n );\n } else if (message.function_call || message.partialFunctionCall) {\n // Find the action that corresponds to the function call if any\n const functionCallName: string = (message.function_call?.name ||\n message.partialFunctionCall?.name)!;\n if (\n chatComponentsCache.current !== null &&\n chatComponentsCache.current[functionCallName]\n ) {\n const render = chatComponentsCache.current[functionCallName];\n\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 // show done message\n else {\n return (\n <div key={index} className={`copilotKitMessage copilotKitAssistantMessage`}>\n {context.labels.done}\n </div>\n );\n }\n }\n // render is a function\n else {\n const args =\n message.function_call?.arguments || message.partialFunctionCall?.arguments;\n let status = \"inProgress\";\n if (functionResults[message.id] !== undefined) {\n status = \"complete\";\n } else if (message.function_call) {\n status = \"executing\";\n }\n\n const result = render({\n status,\n args,\n result: functionResults[message.id],\n });\n\n if (typeof result === \"string\") {\n return (\n <div key={index} className={`copilotKitMessage copilotKitAssistantMessage`}>\n {isCurrentMessage && inProgress && context.icons.spinnerIcon} {result}\n </div>\n );\n } else {\n return (\n <div key={index} className=\"copilotKitCustomAssistantMessage\">\n {result}\n </div>\n );\n }\n }\n }\n // No render function found- show the default message\n else if ((!inProgress || !isCurrentMessage) && message.function_call) {\n // Done\n return (\n <div key={index} className={`copilotKitMessage copilotKitAssistantMessage`}>\n {context.labels.done}\n </div>\n );\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 return (\n <div key={index} className={`copilotKitMessage copilotKitAssistantMessage`}>\n <Markdown content={message.content} />\n </div>\n );\n\n // if (isCurrentMessage && inProgress && !message.content) {\n // // let inProgressLabel = \"\";\n\n // if (message.partialFunctionCall) {\n // for (const action of Object.values(entryPoints)) {\n // if (\n // (action as any).name === message.partialFunctionCall.name &&\n // (action as any).render\n // ) {\n // // // the label is a function, call it with the arguments\n // // if (typeof action.inProgressLabel === \"function\") {\n // // inProgressLabel = action.inProgressLabel(\n // // message.partialFunctionCall.arguments as any,\n // // // if function_call is undefined, the arguments are incomplete\n // // message.function_call !== undefined,\n // // );\n // // }\n // // // the label is a string\n // // else {\n // // // (don't do an additional type check so we get a compile error if we add a new type)\n // // inProgressLabel = action.inProgressLabel;\n // // }\n // }\n // }\n // }\n // return (\n // <div key={index} className={`copilotKitMessage copilotKitAssistantMessage`}>\n // {context.icons.spinnerIcon}\n // {/* {inProgressLabel && <span className=\"inProgressLabel\">{inProgressLabel}</span>} */}\n // </div>\n // );\n // } else if (\n // (!inProgress || index != messages.length - 1) &&\n // !message.content &&\n // message.function_call\n // ) {\n // return (\n // <div key={index} className={`copilotKitMessage copilotKitAssistantMessage`}>\n // {context.labels.done}\n // </div>\n // );\n // }\n // TODO: Add back partial message\n // This shows up when the assistant is executing a function\n //\n // else if (message.status === \"partial\") {\n // return (\n // <div key={index} className={`copilotKitMessage copilotKitAssistantMessage`}>\n // {context.labels.thinking} {context.icons.spinnerIcon}\n // </div>\n // );\n // }\n // else {\n // return (\n // <div key={index} className={`copilotKitMessage copilotKitAssistantMessage`}>\n // <Markdown content={message.content} />\n // </div>\n // );\n // }\n }\n // TODO: Add back function and error messages\n //\n // else if (message.role === \"function\" && message.status === \"success\") {\n // return (\n // <div key={index} className={`copilotKitMessage copilotKitAssistantMessage`}>\n // {context.labels.done}\n // </div>\n // );\n // } else if (message.status === \"error\") {\n // return (\n // <div key={index} className={`copilotKitMessage copilotKitAssistantMessage`}>\n // {context.labels.error}\n // </div>\n // );\n // }\n })}\n <div ref={messagesEndRef} />\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((message) => ({\n id: nanoid(),\n role: \"assistant\",\n content: message,\n }));\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
CopilotChat
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-5OZET2NZ.mjs";
|
|
4
4
|
import {
|
|
5
5
|
__spreadProps,
|
|
6
6
|
__spreadValues
|
|
@@ -18,4 +18,4 @@ var CopilotPopup = (props) => {
|
|
|
18
18
|
export {
|
|
19
19
|
CopilotPopup
|
|
20
20
|
};
|
|
21
|
-
//# sourceMappingURL=chunk-
|
|
21
|
+
//# sourceMappingURL=chunk-YZ4GW76L.mjs.map
|
|
@@ -325,7 +325,7 @@ var ChatContextProvider = ({
|
|
|
325
325
|
};
|
|
326
326
|
|
|
327
327
|
// src/components/chat/Chat.tsx
|
|
328
|
-
var
|
|
328
|
+
var import_react_core2 = require("@copilotkit/react-core");
|
|
329
329
|
|
|
330
330
|
// src/components/chat/Window.tsx
|
|
331
331
|
var import_react2 = __toESM(require("react"));
|
|
@@ -463,6 +463,7 @@ var Header = ({ setOpen }) => {
|
|
|
463
463
|
// src/components/chat/Messages.tsx
|
|
464
464
|
var import_react5 = __toESM(require("react"));
|
|
465
465
|
var import_nanoid = require("nanoid");
|
|
466
|
+
var import_shared = require("@copilotkit/shared");
|
|
466
467
|
|
|
467
468
|
// src/components/chat/Markdown.tsx
|
|
468
469
|
var import_react4 = require("react");
|
|
@@ -639,14 +640,25 @@ var components = {
|
|
|
639
640
|
};
|
|
640
641
|
|
|
641
642
|
// src/components/chat/Messages.tsx
|
|
643
|
+
var import_react_core = require("@copilotkit/react-core");
|
|
642
644
|
var import_jsx_runtime8 = require("react/jsx-runtime");
|
|
643
645
|
var Messages = ({ messages, inProgress }) => {
|
|
646
|
+
const { entryPoints, chatComponentsCache } = (0, import_react_core.useCopilotContext)();
|
|
644
647
|
const context = useChatContext();
|
|
645
648
|
const initialMessages = (0, import_react5.useMemo)(
|
|
646
649
|
() => makeInitialMessages(context.labels.initial),
|
|
647
650
|
[context.labels.initial]
|
|
648
651
|
);
|
|
649
652
|
messages = [...initialMessages, ...messages];
|
|
653
|
+
const functionResults = {};
|
|
654
|
+
for (let i = 0; i < messages.length; i++) {
|
|
655
|
+
if (messages[i].role === "assistant" && messages[i].function_call) {
|
|
656
|
+
const id = messages[i].id;
|
|
657
|
+
if (i + 1 < messages.length && messages[i + 1].role === "function") {
|
|
658
|
+
functionResults[id] = (0, import_shared.decodeResult)(messages[i + 1].content || "");
|
|
659
|
+
}
|
|
660
|
+
}
|
|
661
|
+
}
|
|
650
662
|
const messagesEndRef = import_react5.default.useRef(null);
|
|
651
663
|
const scrollToBottom = () => {
|
|
652
664
|
if (messagesEndRef.current) {
|
|
@@ -660,17 +672,57 @@ var Messages = ({ messages, inProgress }) => {
|
|
|
660
672
|
}, [messages]);
|
|
661
673
|
return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "copilotKitMessages", children: [
|
|
662
674
|
messages.map((message, index) => {
|
|
675
|
+
var _a, _b, _c, _d;
|
|
663
676
|
const isCurrentMessage = index === messages.length - 1;
|
|
664
677
|
if (message.role === "user") {
|
|
665
678
|
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "copilotKitMessage copilotKitUserMessage", children: message.content }, index);
|
|
666
679
|
} else if (message.role == "assistant") {
|
|
667
|
-
if (isCurrentMessage && inProgress && !message.content) {
|
|
680
|
+
if (isCurrentMessage && inProgress && !message.content && !message.partialFunctionCall) {
|
|
668
681
|
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: context.icons.spinnerIcon }, index);
|
|
669
|
-
} else if (
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
682
|
+
} else if (message.function_call || message.partialFunctionCall) {
|
|
683
|
+
const functionCallName = ((_a = message.function_call) == null ? void 0 : _a.name) || ((_b = message.partialFunctionCall) == null ? void 0 : _b.name);
|
|
684
|
+
if (chatComponentsCache.current !== null && chatComponentsCache.current[functionCallName]) {
|
|
685
|
+
const render = chatComponentsCache.current[functionCallName];
|
|
686
|
+
if (typeof render === "string") {
|
|
687
|
+
if (isCurrentMessage && inProgress) {
|
|
688
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: [
|
|
689
|
+
context.icons.spinnerIcon,
|
|
690
|
+
" ",
|
|
691
|
+
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { className: "inProgressLabel", children: render })
|
|
692
|
+
] }, index);
|
|
693
|
+
} else {
|
|
694
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: context.labels.done }, index);
|
|
695
|
+
}
|
|
696
|
+
} else {
|
|
697
|
+
const args = ((_c = message.function_call) == null ? void 0 : _c.arguments) || ((_d = message.partialFunctionCall) == null ? void 0 : _d.arguments);
|
|
698
|
+
let status = "inProgress";
|
|
699
|
+
if (functionResults[message.id] !== void 0) {
|
|
700
|
+
status = "complete";
|
|
701
|
+
} else if (message.function_call) {
|
|
702
|
+
status = "executing";
|
|
703
|
+
}
|
|
704
|
+
const result = render({
|
|
705
|
+
status,
|
|
706
|
+
args,
|
|
707
|
+
result: functionResults[message.id]
|
|
708
|
+
});
|
|
709
|
+
if (typeof result === "string") {
|
|
710
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: [
|
|
711
|
+
isCurrentMessage && inProgress && context.icons.spinnerIcon,
|
|
712
|
+
" ",
|
|
713
|
+
result
|
|
714
|
+
] }, index);
|
|
715
|
+
} else {
|
|
716
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "copilotKitCustomAssistantMessage", children: result }, index);
|
|
717
|
+
}
|
|
718
|
+
}
|
|
719
|
+
} else if ((!inProgress || !isCurrentMessage) && message.function_call) {
|
|
720
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: context.labels.done }, index);
|
|
721
|
+
} else {
|
|
722
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: context.icons.spinnerIcon }, index);
|
|
723
|
+
}
|
|
673
724
|
}
|
|
725
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: `copilotKitMessage copilotKitAssistantMessage`, children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Markdown, { content: message.content }) }, index);
|
|
674
726
|
}
|
|
675
727
|
}),
|
|
676
728
|
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { ref: messagesEndRef })
|
|
@@ -824,7 +876,7 @@ var CopilotChat = ({
|
|
|
824
876
|
ResponseButton: ResponseButton2 = ResponseButton,
|
|
825
877
|
className
|
|
826
878
|
}) => {
|
|
827
|
-
const { visibleMessages, append, reload, stop, isLoading, input, setInput } = (0,
|
|
879
|
+
const { visibleMessages, append, reload, stop, isLoading, input, setInput } = (0, import_react_core2.useCopilotChat)({
|
|
828
880
|
id: (0, import_nanoid2.nanoid)(),
|
|
829
881
|
makeSystemMessage,
|
|
830
882
|
additionalInstructions: instructions
|