@@ -19,6 +19,7 @@ import {parsePeriodToHours} from 'sentry/utils/duration/parsePeriodToHours';
19
19
import { AggregationKey } from 'sentry/utils/fields' ;
20
20
import { HOUR } from 'sentry/utils/formatters' ;
21
21
import { useQueryClient , type InfiniteData } from 'sentry/utils/queryClient' ;
22
+ import { useLocalStorageState } from 'sentry/utils/useLocalStorageState' ;
22
23
import useOrganization from 'sentry/utils/useOrganization' ;
23
24
import usePageFilters from 'sentry/utils/usePageFilters' ;
24
25
import SchemaHintsList , {
@@ -131,7 +132,7 @@ export function LogsTabContent({
131
132
return sortBys . map ( formatSort ) ;
132
133
} , [ sortBys ] ) ;
133
134
134
- const [ sidebarOpen , setSidebarOpen ] = useState (
135
+ const [ sidebarOpen , setSidebarOpen ] = useSidebarOpen (
135
136
! ! (
136
137
groupBys . some ( Boolean ) ||
137
138
visualizes . some (
@@ -256,7 +257,7 @@ export function LogsTabContent({
256
257
setMode ( Mode . SAMPLES ) ;
257
258
}
258
259
} ,
259
- [ setMode ]
260
+ [ setSidebarOpen , setMode ]
260
261
) ;
261
262
262
263
const saveAsItems = useSaveAsItems ( {
@@ -360,7 +361,7 @@ export function LogsTabContent({
360
361
size = "xs"
361
362
/>
362
363
}
363
- onClick = { ( ) => setSidebarOpen ( x => ! x ) }
364
+ onClick = { ( ) => setSidebarOpen ( ! sidebarOpen ) }
364
365
/>
365
366
</ Feature >
366
367
< LogsGraphContainer >
@@ -424,3 +425,18 @@ export function LogsTabContent({
424
425
</ SearchQueryBuilderProvider >
425
426
) ;
426
427
}
428
+
429
+ function useSidebarOpen ( defaultExpanded : boolean ) {
430
+ const [ sidebarOpen , _setSidebarOpen ] = useLocalStorageState (
431
+ 'explore-logs-toolbar' ,
432
+ defaultExpanded ? 'expanded' : ''
433
+ ) ;
434
+
435
+ const setSidebarOpen = useCallback (
436
+ ( expanded : boolean ) => {
437
+ _setSidebarOpen ( expanded ? 'expanded' : '' ) ;
438
+ } ,
439
+ [ _setSidebarOpen ]
440
+ ) ;
441
+ return [ sidebarOpen === 'expanded' , setSidebarOpen ] as const ;
442
+ }
0 commit comments