File tree Expand file tree Collapse file tree 1 file changed +7
-8
lines changed
Expand file tree Collapse file tree 1 file changed +7
-8
lines changed Original file line number Diff line number Diff line change @@ -8,8 +8,6 @@ const SideMenuPreferences = z.object({
88 manageSectionCollapsed : z . boolean ( ) . default ( false ) ,
99} ) ;
1010
11- export const SideMenuPreferencesDefaults = SideMenuPreferences . parse ( { } ) ;
12-
1311export type SideMenuPreferences = z . infer < typeof SideMenuPreferences > ;
1412
1513const DashboardPreferences = z . object ( {
@@ -123,12 +121,13 @@ export async function updateSideMenuPreferences({
123121 return ;
124122 }
125123
126- const currentSideMenu = user . dashboardPreferences . sideMenu ?? SideMenuPreferencesDefaults ;
127-
128- const updatedSideMenu : SideMenuPreferences = {
129- isCollapsed : isCollapsed ?? currentSideMenu . isCollapsed ,
130- manageSectionCollapsed : manageSectionCollapsed ?? currentSideMenu . manageSectionCollapsed ,
131- } ;
124+ // Parse with schema to apply defaults, then overlay any new values
125+ const currentSideMenu = SideMenuPreferences . parse ( user . dashboardPreferences . sideMenu ?? { } ) ;
126+ const updatedSideMenu = SideMenuPreferences . parse ( {
127+ ...currentSideMenu ,
128+ ...( isCollapsed !== undefined && { isCollapsed } ) ,
129+ ...( manageSectionCollapsed !== undefined && { manageSectionCollapsed } ) ,
130+ } ) ;
132131
133132 // Only update if something changed
134133 if (
You can’t perform that action at this time.
0 commit comments