feat: build the occurrence index

Signed-off-by: Sebastian Krupinski <krupinski01@gmail.com>
This commit is contained in:
2026-06-29 21:52:09 -04:00
parent 51bf195664
commit cd270e9e99
10 changed files with 344 additions and 167 deletions
+19
View File
@@ -0,0 +1,19 @@
import type { EntityObject } from '@ChronoManager/models/entity'
export interface CalendarOccurrence {
key: string
entity: EntityObject
occurrenceId: string | null
startMs: number
endMs: number
dayStartMs: number
durationMs: number
timeless: boolean
multiDay: boolean
}
export interface CalendarOccurrenceIndex {
byDay: Map<number, CalendarOccurrence[]>
byEntity: Map<string, CalendarOccurrence[]>
sorted: CalendarOccurrence[]
}