@@ -8,10 +8,17 @@ import {
88 hasEventDates ,
99} from "@web/common/utils/event/event.util" ;
1010import { assignEventsToRow } from "@web/common/utils/grid/assign.row" ;
11+ import { type Entities_Event } from "@web/ducks/events/event.types" ;
1112import { type RootState } from "@web/store" ;
1213
1314type Schema_GridEvent_NoPosition = Omit < Schema_GridEvent , "position" > ;
1415
16+ const EMPTY_EVENT_ENTITIES : Entities_Event = { } ;
17+ const EMPTY_EVENT_IDS : string [ ] = [ ] ;
18+
19+ export const selectEventEntities = ( state : RootState ) =>
20+ state . events . entities . value ?? EMPTY_EVENT_ENTITIES ;
21+
1522export const selectAllDayEvents = createSelector (
1623 ( state : RootState ) => state . events . entities . value || { } ,
1724 ( state : RootState ) => state . events . getWeekEvents . value || [ ] ,
@@ -35,9 +42,6 @@ export const selectEventById = (
3542 id : string ,
3643) : Schema_Event | null => selectEventEntities ( state ) [ id ] ?? null ;
3744
38- export const selectEventEntities = ( state : RootState ) =>
39- state . events . entities . value || { } ;
40-
4145export const selectGridEvents = createSelector (
4246 ( state : RootState ) => state . events . entities . value || { } ,
4347 ( state : RootState ) => state . events . getWeekEvents . value || [ ] ,
@@ -67,18 +71,11 @@ export const selectRowCount = createSelector(
6771 } ,
6872) ;
6973
70- const selectDayEventIds = ( state : RootState ) => {
71- const value = state . events . getDayEvents . value ;
72-
73- if ( ! value || ! ( "data" in value ) ) {
74- return [ ] ;
75- }
76-
77- return value . data ?? [ ] ;
78- } ;
74+ const selectDayEventIds = ( state : RootState ) =>
75+ state . events . getDayEvents . value ?. data ?? EMPTY_EVENT_IDS ;
7976
8077export const selectDayEvents = createSelector (
81- ( state : RootState ) => state . events . entities . value || { } ,
78+ selectEventEntities ,
8279 selectDayEventIds ,
8380 ( entities , ids ) =>
8481 ids
0 commit comments