Chore: add a null guard for sidebar hidden items

This commit is contained in:
shamoon committed 2026-11-08 11:32:43 -08:00
1 parent 32bc5522e9
commit e049148f7b
2 files changed
+16 -2

No files matched your search

@@ -260,6 +260,18 @@ describe('SettingsService', () => {
).toBe(false)
})
it('handles null values for sidebar hidden items', () => {
httpTestingController
.expectOne(`${environment.apiBaseUrl}ui_settings/`)
.flush(ui_settings)
settingsService.set(SETTINGS_KEYS.SIDEBAR_HIDDEN_ITEMS, null)
expect(
settingsService.sidebarItemIsHidden(HideableSidebarItemID.Workflows)
).toBe(false)
})
it('updates setting signals when settings are reinitialized', () => {
let req = httpTestingController.expectOne(
`${environment.apiBaseUrl}ui_settings/`
+4 -2
View File
@@ -765,7 +765,9 @@ export class SettingsService {
sidebarItemIsHidden(item: HideableSidebarItemID): boolean {
return (
this.sidebarHiddenItemsEditing() ?? this.hiddenSidebarItems()
this.sidebarHiddenItemsEditing() ??
this.hiddenSidebarItems() ??
[]
).includes(item)
}
@@ -774,7 +776,7 @@ export class SettingsService {
visible: boolean
): void {
const hiddenItems = new Set(
this.sidebarHiddenItemsEditing() ?? this.hiddenSidebarItems()
this.sidebarHiddenItemsEditing() ?? this.hiddenSidebarItems() ?? []
)
if (visible) {
hiddenItems.delete(item)