@budibase/frontend-core 3.24.7 → 3.25.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.
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@budibase/frontend-core",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.25.0",
|
|
4
4
|
"description": "Budibase frontend core libraries used in builder and client",
|
|
5
5
|
"author": "Budibase",
|
|
6
6
|
"license": "MPL-2.0",
|
|
@@ -14,9 +14,9 @@
|
|
|
14
14
|
"@budibase/types": "*",
|
|
15
15
|
"ai": "^6.0.3",
|
|
16
16
|
"dayjs": "^1.10.8",
|
|
17
|
-
"lodash": "4.17.
|
|
17
|
+
"lodash": "4.17.23",
|
|
18
18
|
"shortid": "2.2.15",
|
|
19
19
|
"socket.io-client": "^4.7.5"
|
|
20
20
|
},
|
|
21
|
-
"gitHead": "
|
|
21
|
+
"gitHead": "30a7a1c1d610635f42a8c4b30bf17be3687dbe07"
|
|
22
22
|
}
|
|
@@ -163,33 +163,42 @@
|
|
|
163
163
|
)
|
|
164
164
|
|
|
165
165
|
let streamedMessages = [...updatedChat.messages]
|
|
166
|
+
let transientAssistantId = uuidv4()
|
|
166
167
|
|
|
167
168
|
for await (const message of messageStream) {
|
|
168
|
-
|
|
169
|
+
const normalizedMessage =
|
|
170
|
+
!persistConversation && message?.role === "assistant" && !message?.id
|
|
171
|
+
? {
|
|
172
|
+
...message,
|
|
173
|
+
id: transientAssistantId,
|
|
174
|
+
}
|
|
175
|
+
: message
|
|
176
|
+
|
|
177
|
+
if (normalizedMessage?.id) {
|
|
169
178
|
const existingIndex = streamedMessages.findIndex(
|
|
170
|
-
existing => existing.id ===
|
|
179
|
+
existing => existing.id === normalizedMessage.id
|
|
171
180
|
)
|
|
172
181
|
if (existingIndex !== -1) {
|
|
173
182
|
streamedMessages = streamedMessages.map((existing, index) =>
|
|
174
|
-
index === existingIndex ?
|
|
183
|
+
index === existingIndex ? normalizedMessage : existing
|
|
175
184
|
)
|
|
176
185
|
} else {
|
|
177
|
-
streamedMessages = [...streamedMessages,
|
|
186
|
+
streamedMessages = [...streamedMessages, normalizedMessage]
|
|
178
187
|
}
|
|
179
|
-
} else if (
|
|
188
|
+
} else if (normalizedMessage?.role === "assistant") {
|
|
180
189
|
const lastIndex = [...streamedMessages]
|
|
181
190
|
.reverse()
|
|
182
191
|
.findIndex(existing => existing.role === "assistant")
|
|
183
192
|
if (lastIndex !== -1) {
|
|
184
193
|
const targetIndex = streamedMessages.length - 1 - lastIndex
|
|
185
194
|
streamedMessages = streamedMessages.map((existing, index) =>
|
|
186
|
-
index === targetIndex ?
|
|
195
|
+
index === targetIndex ? normalizedMessage : existing
|
|
187
196
|
)
|
|
188
197
|
} else {
|
|
189
|
-
streamedMessages = [...streamedMessages,
|
|
198
|
+
streamedMessages = [...streamedMessages, normalizedMessage]
|
|
190
199
|
}
|
|
191
200
|
} else {
|
|
192
|
-
streamedMessages = [...streamedMessages,
|
|
201
|
+
streamedMessages = [...streamedMessages, normalizedMessage]
|
|
193
202
|
}
|
|
194
203
|
chat = {
|
|
195
204
|
...updatedChat,
|