Visible ranges
Understand Calendar's timezone-aware, half-open query boundary.
Every controller derives a VisibleRange from its date, active view, timezone, and week configuration:
const { start, end } = calendar.visibleRangestart is included. end is the local midnight immediately after the visible interval and is excluded.
WHERE starts_at >= :start
AND starts_at < :endMonth ranges include the complete leading and trailing weeks rendered by the month projection. Week ranges contain seven local dates. Day ranges span one local calendar date—even when DST makes that date 23 or 25 elapsed hours.
Calendar produces Temporal.ZonedDateTime boundaries so callers can preserve the timezone or convert explicitly with .toInstant() for storage queries.