55 import ContentLogElement from ' ./content-log-element.svelte' ;
66 import { page } from ' $app/stores' ;
77 import { GetContentLogs } from ' $lib/services/logging-service' ;
8+ import NavBar from ' $lib/common/nav-bar/NavBar.svelte' ;
9+ import NavItem from ' $lib/common/nav-bar/NavItem.svelte' ;
810 import AgentQueueChangeElement from ' ./agent-queue-change-element.svelte' ;
911
1012 /** @type {import('$types').ConversationContentLogModel[]} */
2123
2224 /** @type {any[]} */
2325 let scrollbars = [];
26+ let selectedTab = 1 ;
27+
28+ const contentLogTab = 1 ;
29+ const agentQueueLogTab = 2 ;
2430
2531 const options = {
2632 scrollbars: {
4551 scrollbarElements .forEach (elem => {
4652 scrollbars = [ ... scrollbars, OverlayScrollbars (elem, options) ];
4753 });
48-
4954 refresh ();
5055 });
5156
5762 cleanLogs ();
5863 });
5964
60- async function refresh () {
65+ function refresh () {
66+ scrollToBottom ();
67+ }
68+
69+ function scrollToBottom () {
6170 // @ts-ignore
6271 scrollbars .forEach (scrollbar => {
6372 setTimeout (() => {
7887 </script >
7988
8089<div class =" chat-log" >
81- <div class =" card mb-0 log-background" style =" height: 100%;" >
82- <div class =" log-close-btn padding-side" >
90+ <div class =" card mb-0 log-background log-flex " style =" height: 100%;" >
91+ <div class =" log-close-btn padding-side log-header " >
8392 <div >
8493 <button
8594 type =" button"
8998 <i class =" bx bx-trash" ></i >
9099 </button >
91100 </div >
92-
93- <div class =" queue-change-log-scrollbar queue-change-log-list log-list" >
94- <ul >
95- {#each agentQueueChangeLogs as log }
96- <AgentQueueChangeElement data ={log } />
97- {/each }
98- </ul >
99- </div >
100-
101101 <div >
102102 <button
103103 type =" button"
108108 </button >
109109 </div >
110110 </div >
111- <div class =" content-log-scrollbar content-log-list log-list padding-side" >
111+
112+ <div class ="content-log-scrollbar log-list padding-side log-content" class:hide ={selectedTab != contentLogTab }>
112113 <ul >
113114 {#each contentLogs as log }
114115 <ContentLogElement data ={log } />
115116 {/each }
116117 </ul >
117118 </div >
119+
120+ <div class ="queue-change-log-scrollbar log-list log-content" class:hide ={selectedTab != agentQueueLogTab }>
121+ <ul >
122+ {#each agentQueueChangeLogs as log }
123+ <AgentQueueChangeElement data ={log } />
124+ {/each }
125+ </ul >
126+ </div >
127+
128+ <div class =" log-header" >
129+ <NavBar id ={' content-log-container' }>
130+ <NavItem
131+ navBtnId ={' content-log-tab' }
132+ dataBsTarget ={' #content-log-tab-pane' }
133+ ariaControls ={' content-log-tab-pane' }
134+ active ={selectedTab == contentLogTab }
135+ navBtnText ={' Content Log' }
136+ onClick ={() => selectedTab = contentLogTab }
137+ />
138+ <NavItem
139+ navBtnId ={' agent-queue-log-tab' }
140+ dataBsTarget ={' #agent-queue-log-tab-pane' }
141+ ariaControls ={' agent-queue-log-tab-pane' }
142+ active ={selectedTab == agentQueueLogTab }
143+ navBtnText ={' Agent Queue' }
144+ onClick ={() => selectedTab = agentQueueLogTab }
145+ />
146+ </NavBar >
147+ </div >
118148 </div >
119149</div >
0 commit comments