Skip to content

Commit 76b005a

Browse files
authored
Merge pull request #63 from iceljc/features/refine-log-scroll-bar
refine auto scroll
2 parents 76fb177 + 08fefab commit 76b005a

File tree

1 file changed

+15
-5
lines changed

1 file changed

+15
-5
lines changed

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

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -468,19 +468,29 @@
468468
function directToLog(messageId) {
469469
if (!!!messageId || isLite) return;
470470
471+
const elements = [];
471472
const contentLogElm = document.querySelector(`#content-log-${messageId}`);
472-
const stateLogElm = document.querySelector(`#state-log-${messageId}`);
473473
if (!!contentLogElm) {
474-
contentLogElm.scrollIntoView({
475-
behavior: 'smooth'
474+
elements.push({
475+
elm: contentLogElm,
476+
wrapperName: '.content-log-scrollbar'
476477
});
477478
}
478479
480+
const stateLogElm = document.querySelector(`#state-log-${messageId}`);
479481
if (!!stateLogElm) {
480-
stateLogElm.scrollIntoView({
481-
behavior: 'smooth'
482+
elements.push({
483+
elm: stateLogElm,
484+
wrapperName: '.state-log-scrollbar'
482485
});
483486
}
487+
488+
elements.forEach(item => {
489+
const scrollElement = document.querySelector(item.wrapperName);
490+
const logScroll = OverlayScrollbars(scrollElement, options);
491+
const { viewport } = logScroll.elements();
492+
viewport.scrollTo({ top: item.elm.offsetTop, behavior: 'smooth' });
493+
});
484494
}
485495
</script>
486496

0 commit comments

Comments
 (0)