fix(UI-Overhaul-Phase5): Kalender Visibility-Toggle fix
5.1: Toolbar already has PluginToolbar with navigation, view mode, actions — no changes needed 5.2: Calendar visibility toggle fix: - calendarStore.setCalendars now initializes visibleCalendarIds with all calendar IDs - CalendarTree.tsx visibility check simplified to visibleCalendarIds.has(cal.id) - No more empty-set-means-all-visible confusion tsc clean
This commit is contained in:
@@ -128,9 +128,7 @@ function TypeSection({
|
||||
<CalendarRow
|
||||
calendar={cal}
|
||||
selected={activeCalendarId === cal.id}
|
||||
visible={
|
||||
visibleCalendarIds.size === 0 || visibleCalendarIds.has(cal.id)
|
||||
}
|
||||
visible={visibleCalendarIds.has(cal.id)}
|
||||
onSelect={() => onSelect(cal.id)}
|
||||
onToggleVisibility={() => onToggleVisibility(cal.id)}
|
||||
/>
|
||||
|
||||
@@ -139,7 +139,13 @@ export const useCalendarStore = create<CalendarState>((set) => ({
|
||||
}),
|
||||
|
||||
setActiveCalendarId: (id) => set({ activeCalendarId: id }),
|
||||
setCalendars: (calendars) => set({ calendars }),
|
||||
setCalendars: (calendars) => set((s) => {
|
||||
// Initialize visibleCalendarIds with all calendar IDs if empty
|
||||
const visibleCalendarIds = s.visibleCalendarIds.size === 0
|
||||
? new Set(calendars.map((c) => c.id))
|
||||
: s.visibleCalendarIds;
|
||||
return { calendars, visibleCalendarIds };
|
||||
}),
|
||||
setSelectedEntry: (entry) => set({ selectedEntry: entry }),
|
||||
toggleCalendarVisibility: (id) =>
|
||||
set((s) => {
|
||||
|
||||
Reference in New Issue
Block a user