( workspaceId: string, updater: (state: RightSidebarLayoutState) => RightSidebarLayoutState )
| 22 | } |
| 23 | |
| 24 | export function updateRightSidebarLayout( |
| 25 | workspaceId: string, |
| 26 | updater: (state: RightSidebarLayoutState) => RightSidebarLayoutState |
| 27 | ): void { |
| 28 | const fallback = getRightSidebarTabFallback(); |
| 29 | const defaultLayout = getDefaultRightSidebarLayoutState(fallback); |
| 30 | |
| 31 | updatePersistedState<RightSidebarLayoutState>( |
| 32 | getRightSidebarLayoutKey(workspaceId), |
| 33 | (prev) => updater(parseRightSidebarLayoutState(prev, fallback)), |
| 34 | defaultLayout |
| 35 | ); |
| 36 | } |
| 37 | |
| 38 | export function getRightSidebarTabFallback(): TabType { |
| 39 | const raw = readPersistedState<string>(RIGHT_SIDEBAR_TAB_KEY, "costs"); |
no test coverage detected