Skip to content

Commit 14784f6

Browse files
committed
Merge branch '452-remember-collaped-state' into 'master'
feat: Preserve collapsed state for left side (#452) Closes #452 See merge request postgres-ai/database-lab!639
2 parents 3ce390e + 26a7635 commit 14784f6

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

ui/packages/ce/src/App/Menu/index.tsx

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,20 @@ import arrowRightIconUrl from './icons/arrow-right.svg'
1515
import styles from './styles.module.scss'
1616

1717
const LAPTOP_WIDTH_PX = 1024
18+
const SIDEBAR_COLLAPSED_PARAM = 'sidebarMenuCollapsed'
1819

1920
export const Menu = observer(() => {
2021
const [isCollapsed, setIsCollapsed] = useState(
21-
() => window.innerWidth < LAPTOP_WIDTH_PX,
22+
() =>
23+
window.innerWidth < LAPTOP_WIDTH_PX ||
24+
localStorage.getItem(SIDEBAR_COLLAPSED_PARAM) === '1',
2225
)
2326

27+
const handleClick = () => {
28+
setIsCollapsed(!isCollapsed)
29+
localStorage.setItem(SIDEBAR_COLLAPSED_PARAM, isCollapsed ? '0' : '1')
30+
}
31+
2432
return (
2533
<div className={cn(styles.root, isCollapsed && styles.collapsed)}>
2634
<div className={styles.content}>
@@ -57,7 +65,7 @@ export const Menu = observer(() => {
5765

5866
<Button
5967
className={styles.collapseBtn}
60-
onClick={() => setIsCollapsed(!isCollapsed)}
68+
onClick={handleClick}
6169
isCollapsed={isCollapsed}
6270
icon={
6371
<img

0 commit comments

Comments
 (0)