Skip to content

Commit 94cb54e

Browse files
author
Jicheng Lu
committed
refine log auto scroll
1 parent 4d03b9b commit 94cb54e

File tree

3 files changed

+22
-8
lines changed

3 files changed

+22
-8
lines changed

src/routes/chat/[agentId]/[conversationId]/chat-box.svelte

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,7 @@
121121
let loadEditor = false;
122122
let loadTextEditor = false;
123123
let loadFileEditor = false;
124+
let autoScrollLog = false;
124125
125126
$: {
126127
const editor = lastBotMsg?.rich_content?.editor || '';
@@ -134,10 +135,11 @@
134135
});
135136
136137
onMount(async () => {
138+
autoScrollLog = true;
137139
dialogs = await GetDialogs(params.conversationId);
138140
initUserSentMessages(dialogs);
139141
initChatView();
140-
142+
141143
signalr.onMessageReceivedFromClient = onMessageReceivedFromClient;
142144
signalr.onMessageReceivedFromCsr = onMessageReceivedFromCsr;
143145
signalr.onMessageReceivedFromAssistant = onMessageReceivedFromAssistant;
@@ -153,6 +155,7 @@
153155
document.querySelector('.chat-scrollbar')
154156
].filter(Boolean);
155157
refresh();
158+
autoScrollLog = false;
156159
});
157160
158161
function resizeChatWindow() {
@@ -401,6 +404,7 @@
401404
*/
402405
function sendChatMessage(msgText, data = null) {
403406
isSendingMsg = true;
407+
autoScrollLog = true;
404408
clearEventLogs();
405409
renewUserSentMessages(msgText);
406410
const postback = buildPostbackMessage(dialogs, data?.payload || msgText, data?.truncateMsgId);
@@ -420,9 +424,11 @@
420424
return new Promise((resolve, reject) => {
421425
sendMessageToHub(params.agentId, params.conversationId, msgText, messageData, files).then(res => {
422426
isSendingMsg = false;
427+
autoScrollLog = false;
423428
resolve(res);
424429
}).catch(err => {
425430
isSendingMsg = false;
431+
autoScrollLog = false;
426432
reject(err);
427433
});
428434
});
@@ -855,6 +861,7 @@
855861
<StateLog
856862
bind:convStateLogs={convStateLogs}
857863
bind:msgStateLogs={msgStateLogs}
864+
autoScroll={autoScrollLog}
858865
closeWindow={toggleStateLog}
859866
cleanScreen={cleanStateLogScreen}
860867
/>
@@ -1085,6 +1092,7 @@
10851092
<ContentLog
10861093
bind:contentLogs={contentLogs}
10871094
bind:agentQueueLogs={agentQueueLogs}
1095+
autoScroll={autoScrollLog}
10881096
closeWindow={toggleContentLog}
10891097
cleanScreen={cleanContentLogScreen}
10901098
/>

src/routes/chat/[agentId]/[conversationId]/contentLogs/content-log.svelte

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<script>
22
import 'overlayscrollbars/overlayscrollbars.css';
33
import { OverlayScrollbars } from 'overlayscrollbars';
4-
import { afterUpdate, beforeUpdate, onDestroy, onMount } from 'svelte';
4+
import { afterUpdate, onDestroy, onMount } from 'svelte';
55
import { page } from '$app/stores';
66
import { GetContentLogs } from '$lib/services/logging-service';
77
import NavBar from '$lib/common/nav-bar/NavBar.svelte';
@@ -18,6 +18,9 @@
1818
/** @type {import('$types').AgentQueueLogModel[]} */
1919
export let agentQueueLogs = [];
2020
21+
/** @type {boolean} */
22+
export let autoScroll = false;
23+
2124
/** @type {() => void} */
2225
export let closeWindow;
2326
@@ -55,10 +58,6 @@
5558
refresh();
5659
});
5760
58-
beforeUpdate(() => {
59-
// console.log('before update: ', tabs);
60-
});
61-
6261
afterUpdate(() => {
6362
refresh();
6463
});
@@ -68,7 +67,9 @@
6867
});
6968
7069
function refresh() {
71-
scrollToBottom();
70+
if (autoScroll) {
71+
scrollToBottom();
72+
}
7273
}
7374
7475
function scrollToBottom() {

src/routes/chat/[agentId]/[conversationId]/stateLogs/state-log.svelte

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@
1818
/** @type {any[]} */
1919
export let msgStateLogs = [];
2020
21+
/** @type {boolean} */
22+
export let autoScroll = false;
23+
2124
/** @type {() => void} */
2225
export let closeWindow;
2326
@@ -63,7 +66,9 @@
6366
});
6467
6568
function refresh() {
66-
scrollToBottom();
69+
if (autoScroll) {
70+
scrollToBottom();
71+
}
6772
}
6873
6974
function scrollToBottom() {

0 commit comments

Comments
 (0)