@mantine/schedule 9.0.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +21 -0
- package/cjs/components/CurrentTimeIndicator/CurrentTimeIndicator.cjs +107 -0
- package/cjs/components/CurrentTimeIndicator/CurrentTimeIndicator.cjs.map +1 -0
- package/cjs/components/CurrentTimeIndicator/CurrentTimeIndicator.module.css.cjs +7 -0
- package/cjs/components/CurrentTimeIndicator/CurrentTimeIndicator.module.css.cjs.map +1 -0
- package/cjs/components/DayView/DayView.cjs +404 -0
- package/cjs/components/DayView/DayView.cjs.map +1 -0
- package/cjs/components/DayView/DayView.module.css.cjs +7 -0
- package/cjs/components/DayView/DayView.module.css.cjs.map +1 -0
- package/cjs/components/DayView/get-day-view-events/get-day-positioned-events.cjs +108 -0
- package/cjs/components/DayView/get-day-view-events/get-day-positioned-events.cjs.map +1 -0
- package/cjs/components/DayView/get-day-view-events/get-day-view-events.cjs +52 -0
- package/cjs/components/DayView/get-day-view-events/get-day-view-events.cjs.map +1 -0
- package/cjs/components/DragContext/DragContext.cjs +9 -0
- package/cjs/components/DragContext/DragContext.cjs.map +1 -0
- package/cjs/components/MobileMonthView/MobileMonthView.cjs +295 -0
- package/cjs/components/MobileMonthView/MobileMonthView.cjs.map +1 -0
- package/cjs/components/MobileMonthView/MobileMonthView.module.css.cjs +7 -0
- package/cjs/components/MobileMonthView/MobileMonthView.module.css.cjs.map +1 -0
- package/cjs/components/MobileMonthView/get-mobile-month-view-events.cjs +54 -0
- package/cjs/components/MobileMonthView/get-mobile-month-view-events.cjs.map +1 -0
- package/cjs/components/MonthView/MonthView.cjs +410 -0
- package/cjs/components/MonthView/MonthView.cjs.map +1 -0
- package/cjs/components/MonthView/MonthView.module.css.cjs +7 -0
- package/cjs/components/MonthView/MonthView.module.css.cjs.map +1 -0
- package/cjs/components/MonthView/get-month-view-events/add-event-to-day-groups.cjs +26 -0
- package/cjs/components/MonthView/get-month-view-events/add-event-to-day-groups.cjs.map +1 -0
- package/cjs/components/MonthView/get-month-view-events/calculate-event-position-in-week.cjs +37 -0
- package/cjs/components/MonthView/get-month-view-events/calculate-event-position-in-week.cjs.map +1 -0
- package/cjs/components/MonthView/get-month-view-events/find-available-row.cjs +31 -0
- package/cjs/components/MonthView/get-month-view-events/find-available-row.cjs.map +1 -0
- package/cjs/components/MonthView/get-month-view-events/get-month-positioned-events.cjs +83 -0
- package/cjs/components/MonthView/get-month-view-events/get-month-positioned-events.cjs.map +1 -0
- package/cjs/components/MonthView/get-month-view-events/get-month-view-events.cjs +46 -0
- package/cjs/components/MonthView/get-month-view-events/get-month-view-events.cjs.map +1 -0
- package/cjs/components/MonthView/get-month-view-events/get-weeks-in-range.cjs +40 -0
- package/cjs/components/MonthView/get-month-view-events/get-weeks-in-range.cjs.map +1 -0
- package/cjs/components/MonthView/handle-month-view-key-down.cjs +147 -0
- package/cjs/components/MonthView/handle-month-view-key-down.cjs.map +1 -0
- package/cjs/components/MoreEvents/MoreEvents.cjs +124 -0
- package/cjs/components/MoreEvents/MoreEvents.cjs.map +1 -0
- package/cjs/components/MoreEvents/MoreEvents.module.css.cjs +7 -0
- package/cjs/components/MoreEvents/MoreEvents.module.css.cjs.map +1 -0
- package/cjs/components/Schedule/Schedule.cjs +168 -0
- package/cjs/components/Schedule/Schedule.cjs.map +1 -0
- package/cjs/components/Schedule/Schedule.module.css.cjs +7 -0
- package/cjs/components/Schedule/Schedule.module.css.cjs.map +1 -0
- package/cjs/components/ScheduleEvent/ScheduleEvent.cjs +126 -0
- package/cjs/components/ScheduleEvent/ScheduleEvent.cjs.map +1 -0
- package/cjs/components/ScheduleEvent/ScheduleEvent.module.css.cjs +7 -0
- package/cjs/components/ScheduleEvent/ScheduleEvent.module.css.cjs.map +1 -0
- package/cjs/components/ScheduleHeader/HeaderControl/HeaderControl.cjs +91 -0
- package/cjs/components/ScheduleHeader/HeaderControl/HeaderControl.cjs.map +1 -0
- package/cjs/components/ScheduleHeader/HeaderControl/HeaderControl.module.css.cjs +7 -0
- package/cjs/components/ScheduleHeader/HeaderControl/HeaderControl.module.css.cjs.map +1 -0
- package/cjs/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.cjs +195 -0
- package/cjs/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.cjs.map +1 -0
- package/cjs/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.module.css.cjs +7 -0
- package/cjs/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.module.css.cjs.map +1 -0
- package/cjs/components/ScheduleHeader/ScheduleHeader.cjs +59 -0
- package/cjs/components/ScheduleHeader/ScheduleHeader.cjs.map +1 -0
- package/cjs/components/ScheduleHeader/ScheduleHeader.module.css.cjs +7 -0
- package/cjs/components/ScheduleHeader/ScheduleHeader.module.css.cjs.map +1 -0
- package/cjs/components/ScheduleHeader/ScheduleHeaderBase.cjs +86 -0
- package/cjs/components/ScheduleHeader/ScheduleHeaderBase.cjs.map +1 -0
- package/cjs/components/ScheduleHeader/ViewSelect/ViewSelect.cjs +131 -0
- package/cjs/components/ScheduleHeader/ViewSelect/ViewSelect.cjs.map +1 -0
- package/cjs/components/ScheduleHeader/ViewSelect/ViewSelect.module.css.cjs +7 -0
- package/cjs/components/ScheduleHeader/ViewSelect/ViewSelect.module.css.cjs.map +1 -0
- package/cjs/components/WeekView/WeekView.cjs +557 -0
- package/cjs/components/WeekView/WeekView.cjs.map +1 -0
- package/cjs/components/WeekView/WeekView.module.css.cjs +7 -0
- package/cjs/components/WeekView/WeekView.module.css.cjs.map +1 -0
- package/cjs/components/WeekView/WeekViewDay.cjs +100 -0
- package/cjs/components/WeekView/WeekViewDay.cjs.map +1 -0
- package/cjs/components/WeekView/get-week-label/get-week-label.cjs +36 -0
- package/cjs/components/WeekView/get-week-label/get-week-label.cjs.map +1 -0
- package/cjs/components/WeekView/get-week-view-events/assign-event-rows.cjs +31 -0
- package/cjs/components/WeekView/get-week-view-events/assign-event-rows.cjs.map +1 -0
- package/cjs/components/WeekView/get-week-view-events/calculate-all-day-event-offset.cjs +31 -0
- package/cjs/components/WeekView/get-week-view-events/calculate-all-day-event-offset.cjs.map +1 -0
- package/cjs/components/WeekView/get-week-view-events/calculate-all-day-event-width.cjs +33 -0
- package/cjs/components/WeekView/get-week-view-events/calculate-all-day-event-width.cjs.map +1 -0
- package/cjs/components/WeekView/get-week-view-events/calculate-event-days.cjs +19 -0
- package/cjs/components/WeekView/get-week-view-events/calculate-event-days.cjs.map +1 -0
- package/cjs/components/WeekView/get-week-view-events/calculate-regular-event-overlaps.cjs +24 -0
- package/cjs/components/WeekView/get-week-view-events/calculate-regular-event-overlaps.cjs.map +1 -0
- package/cjs/components/WeekView/get-week-view-events/filter-week-view-events.cjs +36 -0
- package/cjs/components/WeekView/get-week-view-events/filter-week-view-events.cjs.map +1 -0
- package/cjs/components/WeekView/get-week-view-events/find-available-column.cjs +42 -0
- package/cjs/components/WeekView/get-week-view-events/find-available-column.cjs.map +1 -0
- package/cjs/components/WeekView/get-week-view-events/get-event-end-date.cjs +19 -0
- package/cjs/components/WeekView/get-week-view-events/get-event-end-date.cjs.map +1 -0
- package/cjs/components/WeekView/get-week-view-events/get-hanging-status.cjs +32 -0
- package/cjs/components/WeekView/get-week-view-events/get-hanging-status.cjs.map +1 -0
- package/cjs/components/WeekView/get-week-view-events/get-week-positioned-events.cjs +142 -0
- package/cjs/components/WeekView/get-week-view-events/get-week-positioned-events.cjs.map +1 -0
- package/cjs/components/WeekView/get-week-view-events/get-week-view-events.cjs +12 -0
- package/cjs/components/WeekView/get-week-view-events/get-week-view-events.cjs.map +1 -0
- package/cjs/components/WeekView/handle-week-view-key-down.cjs +135 -0
- package/cjs/components/WeekView/handle-week-view-key-down.cjs.map +1 -0
- package/cjs/components/YearView/YearView.cjs +216 -0
- package/cjs/components/YearView/YearView.cjs.map +1 -0
- package/cjs/components/YearView/YearView.module.css.cjs +7 -0
- package/cjs/components/YearView/YearView.module.css.cjs.map +1 -0
- package/cjs/components/YearView/YearViewMonth.cjs +158 -0
- package/cjs/components/YearView/YearViewMonth.cjs.map +1 -0
- package/cjs/components/YearView/get-year-view-events/get-year-view-events.cjs +52 -0
- package/cjs/components/YearView/get-year-view-events/get-year-view-events.cjs.map +1 -0
- package/cjs/components/YearView/handle-year-view-key-down.cjs +210 -0
- package/cjs/components/YearView/handle-year-view-key-down.cjs.map +1 -0
- package/cjs/hooks/use-drag-drop-handlers.cjs +107 -0
- package/cjs/hooks/use-drag-drop-handlers.cjs.map +1 -0
- package/cjs/hooks/use-drag-state.cjs +47 -0
- package/cjs/hooks/use-drag-state.cjs.map +1 -0
- package/cjs/hooks/use-slot-drag-select.cjs +91 -0
- package/cjs/hooks/use-slot-drag-select.cjs.map +1 -0
- package/cjs/index.cjs +101 -0
- package/cjs/index.cjs.map +1 -0
- package/cjs/labels.cjs +34 -0
- package/cjs/labels.cjs.map +1 -0
- package/cjs/utils/calculate-drop-time/calculate-drop-time.cjs +38 -0
- package/cjs/utils/calculate-drop-time/calculate-drop-time.cjs.map +1 -0
- package/cjs/utils/calculate-month-drop-date/calculate-month-drop-date.cjs +26 -0
- package/cjs/utils/calculate-month-drop-date/calculate-month-drop-date.cjs.map +1 -0
- package/cjs/utils/clamp-interval-minutes/clamp-interval-minutes.cjs +11 -0
- package/cjs/utils/clamp-interval-minutes/clamp-interval-minutes.cjs.map +1 -0
- package/cjs/utils/format-date/format-date.cjs +18 -0
- package/cjs/utils/format-date/format-date.cjs.map +1 -0
- package/cjs/utils/get-business-hours-mod/get-business-hours-mod.cjs +24 -0
- package/cjs/utils/get-business-hours-mod/get-business-hours-mod.cjs.map +1 -0
- package/cjs/utils/get-current-time-position/get-current-time-position.cjs +28 -0
- package/cjs/utils/get-current-time-position/get-current-time-position.cjs.map +1 -0
- package/cjs/utils/get-day-position/get-day-position.cjs +37 -0
- package/cjs/utils/get-day-position/get-day-position.cjs.map +1 -0
- package/cjs/utils/get-day-time-intervals/get-day-time-intervals.cjs +47 -0
- package/cjs/utils/get-day-time-intervals/get-day-time-intervals.cjs.map +1 -0
- package/cjs/utils/get-end-of-week/get-end-of-week.cjs +23 -0
- package/cjs/utils/get-end-of-week/get-end-of-week.cjs.map +1 -0
- package/cjs/utils/get-month-days/get-month-days.cjs +49 -0
- package/cjs/utils/get-month-days/get-month-days.cjs.map +1 -0
- package/cjs/utils/get-month-range/get-month-range.cjs +32 -0
- package/cjs/utils/get-month-range/get-month-range.cjs.map +1 -0
- package/cjs/utils/get-months-by-quarter/get-months-by-quarter.cjs +24 -0
- package/cjs/utils/get-months-by-quarter/get-months-by-quarter.cjs.map +1 -0
- package/cjs/utils/get-months-list/get-months-list.cjs +21 -0
- package/cjs/utils/get-months-list/get-months-list.cjs.map +1 -0
- package/cjs/utils/get-start-of-week/get-start-of-week.cjs +19 -0
- package/cjs/utils/get-start-of-week/get-start-of-week.cjs.map +1 -0
- package/cjs/utils/get-visible-events/get-visible-events.cjs +18 -0
- package/cjs/utils/get-visible-events/get-visible-events.cjs.map +1 -0
- package/cjs/utils/get-week-days/get-week-days.cjs +32 -0
- package/cjs/utils/get-week-days/get-week-days.cjs.map +1 -0
- package/cjs/utils/get-week-number/get-week-number.cjs +22 -0
- package/cjs/utils/get-week-number/get-week-number.cjs.map +1 -0
- package/cjs/utils/get-weekdays-names/get-weekdays-names.cjs +25 -0
- package/cjs/utils/get-weekdays-names/get-weekdays-names.cjs.map +1 -0
- package/cjs/utils/get-years-list/get-years-list.cjs +13 -0
- package/cjs/utils/get-years-list/get-years-list.cjs.map +1 -0
- package/cjs/utils/is-after-min-date/is-after-min-date.cjs +15 -0
- package/cjs/utils/is-after-min-date/is-after-min-date.cjs.map +1 -0
- package/cjs/utils/is-all-day-event/is-all-day-event.cjs +19 -0
- package/cjs/utils/is-all-day-event/is-all-day-event.cjs.map +1 -0
- package/cjs/utils/is-before-max-date/is-before-max-date.cjs +15 -0
- package/cjs/utils/is-before-max-date/is-before-max-date.cjs.map +1 -0
- package/cjs/utils/is-event-in-time-range/is-event-in-time-range.cjs +30 -0
- package/cjs/utils/is-event-in-time-range/is-event-in-time-range.cjs.map +1 -0
- package/cjs/utils/is-events-overlap/is-events-overlap.cjs +19 -0
- package/cjs/utils/is-events-overlap/is-events-overlap.cjs.map +1 -0
- package/cjs/utils/is-in-time-range/is-in-time-range.cjs +25 -0
- package/cjs/utils/is-in-time-range/is-in-time-range.cjs.map +1 -0
- package/cjs/utils/is-multiday-event/is-multiday-event.cjs +17 -0
- package/cjs/utils/is-multiday-event/is-multiday-event.cjs.map +1 -0
- package/cjs/utils/is-same-month/is-same-month.cjs +15 -0
- package/cjs/utils/is-same-month/is-same-month.cjs.map +1 -0
- package/cjs/utils/is-within-week/is-within-week.cjs +18 -0
- package/cjs/utils/is-within-week/is-within-week.cjs.map +1 -0
- package/cjs/utils/next-week/next-week.cjs +18 -0
- package/cjs/utils/next-week/next-week.cjs.map +1 -0
- package/cjs/utils/parse-time-string/parse-time-string.cjs +10 -0
- package/cjs/utils/parse-time-string/parse-time-string.cjs.map +1 -0
- package/cjs/utils/previous-week/previous-week.cjs +18 -0
- package/cjs/utils/previous-week/previous-week.cjs.map +1 -0
- package/cjs/utils/sort-events/sort-events.cjs +21 -0
- package/cjs/utils/sort-events/sort-events.cjs.map +1 -0
- package/cjs/utils/to-date-string/to-date-string.cjs +15 -0
- package/cjs/utils/to-date-string/to-date-string.cjs.map +1 -0
- package/cjs/utils/to-time-string/to-time-string.cjs +9 -0
- package/cjs/utils/to-time-string/to-time-string.cjs.map +1 -0
- package/cjs/utils/validate-event/validate-event.cjs +26 -0
- package/cjs/utils/validate-event/validate-event.cjs.map +1 -0
- package/esm/components/CurrentTimeIndicator/CurrentTimeIndicator.mjs +101 -0
- package/esm/components/CurrentTimeIndicator/CurrentTimeIndicator.mjs.map +1 -0
- package/esm/components/CurrentTimeIndicator/CurrentTimeIndicator.module.css.mjs +5 -0
- package/esm/components/CurrentTimeIndicator/CurrentTimeIndicator.module.css.mjs.map +1 -0
- package/esm/components/DayView/DayView.mjs +398 -0
- package/esm/components/DayView/DayView.mjs.map +1 -0
- package/esm/components/DayView/DayView.module.css.mjs +5 -0
- package/esm/components/DayView/DayView.module.css.mjs.map +1 -0
- package/esm/components/DayView/get-day-view-events/get-day-positioned-events.mjs +106 -0
- package/esm/components/DayView/get-day-view-events/get-day-positioned-events.mjs.map +1 -0
- package/esm/components/DayView/get-day-view-events/get-day-view-events.mjs +46 -0
- package/esm/components/DayView/get-day-view-events/get-day-view-events.mjs.map +1 -0
- package/esm/components/DragContext/DragContext.mjs +7 -0
- package/esm/components/DragContext/DragContext.mjs.map +1 -0
- package/esm/components/MobileMonthView/MobileMonthView.mjs +288 -0
- package/esm/components/MobileMonthView/MobileMonthView.mjs.map +1 -0
- package/esm/components/MobileMonthView/MobileMonthView.module.css.mjs +5 -0
- package/esm/components/MobileMonthView/MobileMonthView.module.css.mjs.map +1 -0
- package/esm/components/MobileMonthView/get-mobile-month-view-events.mjs +48 -0
- package/esm/components/MobileMonthView/get-mobile-month-view-events.mjs.map +1 -0
- package/esm/components/MonthView/MonthView.mjs +404 -0
- package/esm/components/MonthView/MonthView.mjs.map +1 -0
- package/esm/components/MonthView/MonthView.module.css.mjs +5 -0
- package/esm/components/MonthView/MonthView.module.css.mjs.map +1 -0
- package/esm/components/MonthView/get-month-view-events/add-event-to-day-groups.mjs +24 -0
- package/esm/components/MonthView/get-month-view-events/add-event-to-day-groups.mjs.map +1 -0
- package/esm/components/MonthView/get-month-view-events/calculate-event-position-in-week.mjs +35 -0
- package/esm/components/MonthView/get-month-view-events/calculate-event-position-in-week.mjs.map +1 -0
- package/esm/components/MonthView/get-month-view-events/find-available-row.mjs +25 -0
- package/esm/components/MonthView/get-month-view-events/find-available-row.mjs.map +1 -0
- package/esm/components/MonthView/get-month-view-events/get-month-positioned-events.mjs +77 -0
- package/esm/components/MonthView/get-month-view-events/get-month-positioned-events.mjs.map +1 -0
- package/esm/components/MonthView/get-month-view-events/get-month-view-events.mjs +40 -0
- package/esm/components/MonthView/get-month-view-events/get-month-view-events.mjs.map +1 -0
- package/esm/components/MonthView/get-month-view-events/get-weeks-in-range.mjs +34 -0
- package/esm/components/MonthView/get-month-view-events/get-weeks-in-range.mjs.map +1 -0
- package/esm/components/MonthView/handle-month-view-key-down.mjs +145 -0
- package/esm/components/MonthView/handle-month-view-key-down.mjs.map +1 -0
- package/esm/components/MoreEvents/MoreEvents.mjs +122 -0
- package/esm/components/MoreEvents/MoreEvents.mjs.map +1 -0
- package/esm/components/MoreEvents/MoreEvents.module.css.mjs +5 -0
- package/esm/components/MoreEvents/MoreEvents.module.css.mjs.map +1 -0
- package/esm/components/Schedule/Schedule.mjs +166 -0
- package/esm/components/Schedule/Schedule.mjs.map +1 -0
- package/esm/components/Schedule/Schedule.module.css.mjs +5 -0
- package/esm/components/Schedule/Schedule.module.css.mjs.map +1 -0
- package/esm/components/ScheduleEvent/ScheduleEvent.mjs +124 -0
- package/esm/components/ScheduleEvent/ScheduleEvent.mjs.map +1 -0
- package/esm/components/ScheduleEvent/ScheduleEvent.module.css.mjs +5 -0
- package/esm/components/ScheduleEvent/ScheduleEvent.module.css.mjs.map +1 -0
- package/esm/components/ScheduleHeader/HeaderControl/HeaderControl.mjs +86 -0
- package/esm/components/ScheduleHeader/HeaderControl/HeaderControl.mjs.map +1 -0
- package/esm/components/ScheduleHeader/HeaderControl/HeaderControl.module.css.mjs +5 -0
- package/esm/components/ScheduleHeader/HeaderControl/HeaderControl.module.css.mjs.map +1 -0
- package/esm/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.mjs +193 -0
- package/esm/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.mjs.map +1 -0
- package/esm/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.module.css.mjs +5 -0
- package/esm/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.module.css.mjs.map +1 -0
- package/esm/components/ScheduleHeader/ScheduleHeader.mjs +57 -0
- package/esm/components/ScheduleHeader/ScheduleHeader.mjs.map +1 -0
- package/esm/components/ScheduleHeader/ScheduleHeader.module.css.mjs +5 -0
- package/esm/components/ScheduleHeader/ScheduleHeader.module.css.mjs.map +1 -0
- package/esm/components/ScheduleHeader/ScheduleHeaderBase.mjs +84 -0
- package/esm/components/ScheduleHeader/ScheduleHeaderBase.mjs.map +1 -0
- package/esm/components/ScheduleHeader/ViewSelect/ViewSelect.mjs +129 -0
- package/esm/components/ScheduleHeader/ViewSelect/ViewSelect.mjs.map +1 -0
- package/esm/components/ScheduleHeader/ViewSelect/ViewSelect.module.css.mjs +5 -0
- package/esm/components/ScheduleHeader/ViewSelect/ViewSelect.module.css.mjs.map +1 -0
- package/esm/components/WeekView/WeekView.mjs +551 -0
- package/esm/components/WeekView/WeekView.mjs.map +1 -0
- package/esm/components/WeekView/WeekView.module.css.mjs +5 -0
- package/esm/components/WeekView/WeekView.module.css.mjs.map +1 -0
- package/esm/components/WeekView/WeekViewDay.mjs +94 -0
- package/esm/components/WeekView/WeekViewDay.mjs.map +1 -0
- package/esm/components/WeekView/get-week-label/get-week-label.mjs +30 -0
- package/esm/components/WeekView/get-week-label/get-week-label.mjs.map +1 -0
- package/esm/components/WeekView/get-week-view-events/assign-event-rows.mjs +29 -0
- package/esm/components/WeekView/get-week-view-events/assign-event-rows.mjs.map +1 -0
- package/esm/components/WeekView/get-week-view-events/calculate-all-day-event-offset.mjs +25 -0
- package/esm/components/WeekView/get-week-view-events/calculate-all-day-event-offset.mjs.map +1 -0
- package/esm/components/WeekView/get-week-view-events/calculate-all-day-event-width.mjs +27 -0
- package/esm/components/WeekView/get-week-view-events/calculate-all-day-event-width.mjs.map +1 -0
- package/esm/components/WeekView/get-week-view-events/calculate-event-days.mjs +13 -0
- package/esm/components/WeekView/get-week-view-events/calculate-event-days.mjs.map +1 -0
- package/esm/components/WeekView/get-week-view-events/calculate-regular-event-overlaps.mjs +22 -0
- package/esm/components/WeekView/get-week-view-events/calculate-regular-event-overlaps.mjs.map +1 -0
- package/esm/components/WeekView/get-week-view-events/filter-week-view-events.mjs +34 -0
- package/esm/components/WeekView/get-week-view-events/filter-week-view-events.mjs.map +1 -0
- package/esm/components/WeekView/get-week-view-events/find-available-column.mjs +40 -0
- package/esm/components/WeekView/get-week-view-events/find-available-column.mjs.map +1 -0
- package/esm/components/WeekView/get-week-view-events/get-event-end-date.mjs +13 -0
- package/esm/components/WeekView/get-week-view-events/get-event-end-date.mjs.map +1 -0
- package/esm/components/WeekView/get-week-view-events/get-hanging-status.mjs +26 -0
- package/esm/components/WeekView/get-week-view-events/get-hanging-status.mjs.map +1 -0
- package/esm/components/WeekView/get-week-view-events/get-week-positioned-events.mjs +136 -0
- package/esm/components/WeekView/get-week-view-events/get-week-positioned-events.mjs.map +1 -0
- package/esm/components/WeekView/get-week-view-events/get-week-view-events.mjs +10 -0
- package/esm/components/WeekView/get-week-view-events/get-week-view-events.mjs.map +1 -0
- package/esm/components/WeekView/handle-week-view-key-down.mjs +133 -0
- package/esm/components/WeekView/handle-week-view-key-down.mjs.map +1 -0
- package/esm/components/YearView/YearView.mjs +210 -0
- package/esm/components/YearView/YearView.mjs.map +1 -0
- package/esm/components/YearView/YearView.module.css.mjs +5 -0
- package/esm/components/YearView/YearView.module.css.mjs.map +1 -0
- package/esm/components/YearView/YearViewMonth.mjs +152 -0
- package/esm/components/YearView/YearViewMonth.mjs.map +1 -0
- package/esm/components/YearView/get-year-view-events/get-year-view-events.mjs +46 -0
- package/esm/components/YearView/get-year-view-events/get-year-view-events.mjs.map +1 -0
- package/esm/components/YearView/handle-year-view-key-down.mjs +208 -0
- package/esm/components/YearView/handle-year-view-key-down.mjs.map +1 -0
- package/esm/hooks/use-drag-drop-handlers.mjs +101 -0
- package/esm/hooks/use-drag-drop-handlers.mjs.map +1 -0
- package/esm/hooks/use-drag-state.mjs +45 -0
- package/esm/hooks/use-drag-state.mjs.map +1 -0
- package/esm/hooks/use-slot-drag-select.mjs +89 -0
- package/esm/hooks/use-slot-drag-select.mjs.map +1 -0
- package/esm/index.mjs +48 -0
- package/esm/index.mjs.map +1 -0
- package/esm/labels.mjs +31 -0
- package/esm/labels.mjs.map +1 -0
- package/esm/utils/calculate-drop-time/calculate-drop-time.mjs +32 -0
- package/esm/utils/calculate-drop-time/calculate-drop-time.mjs.map +1 -0
- package/esm/utils/calculate-month-drop-date/calculate-month-drop-date.mjs +20 -0
- package/esm/utils/calculate-month-drop-date/calculate-month-drop-date.mjs.map +1 -0
- package/esm/utils/clamp-interval-minutes/clamp-interval-minutes.mjs +9 -0
- package/esm/utils/clamp-interval-minutes/clamp-interval-minutes.mjs.map +1 -0
- package/esm/utils/format-date/format-date.mjs +12 -0
- package/esm/utils/format-date/format-date.mjs.map +1 -0
- package/esm/utils/get-business-hours-mod/get-business-hours-mod.mjs +22 -0
- package/esm/utils/get-business-hours-mod/get-business-hours-mod.mjs.map +1 -0
- package/esm/utils/get-current-time-position/get-current-time-position.mjs +22 -0
- package/esm/utils/get-current-time-position/get-current-time-position.mjs.map +1 -0
- package/esm/utils/get-day-position/get-day-position.mjs +31 -0
- package/esm/utils/get-day-position/get-day-position.mjs.map +1 -0
- package/esm/utils/get-day-time-intervals/get-day-time-intervals.mjs +45 -0
- package/esm/utils/get-day-time-intervals/get-day-time-intervals.mjs.map +1 -0
- package/esm/utils/get-end-of-week/get-end-of-week.mjs +17 -0
- package/esm/utils/get-end-of-week/get-end-of-week.mjs.map +1 -0
- package/esm/utils/get-month-days/get-month-days.mjs +43 -0
- package/esm/utils/get-month-days/get-month-days.mjs.map +1 -0
- package/esm/utils/get-month-range/get-month-range.mjs +26 -0
- package/esm/utils/get-month-range/get-month-range.mjs.map +1 -0
- package/esm/utils/get-months-by-quarter/get-months-by-quarter.mjs +18 -0
- package/esm/utils/get-months-by-quarter/get-months-by-quarter.mjs.map +1 -0
- package/esm/utils/get-months-list/get-months-list.mjs +15 -0
- package/esm/utils/get-months-list/get-months-list.mjs.map +1 -0
- package/esm/utils/get-start-of-week/get-start-of-week.mjs +13 -0
- package/esm/utils/get-start-of-week/get-start-of-week.mjs.map +1 -0
- package/esm/utils/get-visible-events/get-visible-events.mjs +16 -0
- package/esm/utils/get-visible-events/get-visible-events.mjs.map +1 -0
- package/esm/utils/get-week-days/get-week-days.mjs +26 -0
- package/esm/utils/get-week-days/get-week-days.mjs.map +1 -0
- package/esm/utils/get-week-number/get-week-number.mjs +15 -0
- package/esm/utils/get-week-number/get-week-number.mjs.map +1 -0
- package/esm/utils/get-weekdays-names/get-weekdays-names.mjs +19 -0
- package/esm/utils/get-weekdays-names/get-weekdays-names.mjs.map +1 -0
- package/esm/utils/get-years-list/get-years-list.mjs +11 -0
- package/esm/utils/get-years-list/get-years-list.mjs.map +1 -0
- package/esm/utils/is-after-min-date/is-after-min-date.mjs +9 -0
- package/esm/utils/is-after-min-date/is-after-min-date.mjs.map +1 -0
- package/esm/utils/is-all-day-event/is-all-day-event.mjs +13 -0
- package/esm/utils/is-all-day-event/is-all-day-event.mjs.map +1 -0
- package/esm/utils/is-before-max-date/is-before-max-date.mjs +9 -0
- package/esm/utils/is-before-max-date/is-before-max-date.mjs.map +1 -0
- package/esm/utils/is-event-in-time-range/is-event-in-time-range.mjs +24 -0
- package/esm/utils/is-event-in-time-range/is-event-in-time-range.mjs.map +1 -0
- package/esm/utils/is-events-overlap/is-events-overlap.mjs +13 -0
- package/esm/utils/is-events-overlap/is-events-overlap.mjs.map +1 -0
- package/esm/utils/is-in-time-range/is-in-time-range.mjs +19 -0
- package/esm/utils/is-in-time-range/is-in-time-range.mjs.map +1 -0
- package/esm/utils/is-multiday-event/is-multiday-event.mjs +11 -0
- package/esm/utils/is-multiday-event/is-multiday-event.mjs.map +1 -0
- package/esm/utils/is-same-month/is-same-month.mjs +9 -0
- package/esm/utils/is-same-month/is-same-month.mjs.map +1 -0
- package/esm/utils/is-within-week/is-within-week.mjs +12 -0
- package/esm/utils/is-within-week/is-within-week.mjs.map +1 -0
- package/esm/utils/next-week/next-week.mjs +12 -0
- package/esm/utils/next-week/next-week.mjs.map +1 -0
- package/esm/utils/parse-time-string/parse-time-string.mjs +8 -0
- package/esm/utils/parse-time-string/parse-time-string.mjs.map +1 -0
- package/esm/utils/previous-week/previous-week.mjs +12 -0
- package/esm/utils/previous-week/previous-week.mjs.map +1 -0
- package/esm/utils/sort-events/sort-events.mjs +15 -0
- package/esm/utils/sort-events/sort-events.mjs.map +1 -0
- package/esm/utils/to-date-string/to-date-string.mjs +9 -0
- package/esm/utils/to-date-string/to-date-string.mjs.map +1 -0
- package/esm/utils/to-time-string/to-time-string.mjs +7 -0
- package/esm/utils/to-time-string/to-time-string.mjs.map +1 -0
- package/esm/utils/validate-event/validate-event.mjs +20 -0
- package/esm/utils/validate-event/validate-event.mjs.map +1 -0
- package/lib/components/CurrentTimeIndicator/CurrentTimeIndicator.d.ts +43 -0
- package/lib/components/CurrentTimeIndicator/index.d.ts +2 -0
- package/lib/components/DayView/DayView.d.ts +106 -0
- package/lib/components/DayView/get-day-view-events/get-day-positioned-events.d.ts +13 -0
- package/lib/components/DayView/get-day-view-events/get-day-view-events.d.ts +12 -0
- package/lib/components/DayView/index.d.ts +9 -0
- package/lib/components/DragContext/DragContext.d.ts +18 -0
- package/lib/components/DragContext/index.d.ts +2 -0
- package/lib/components/MobileMonthView/MobileMonthView.d.ts +94 -0
- package/lib/components/MobileMonthView/get-mobile-month-view-events.d.ts +8 -0
- package/lib/components/MobileMonthView/index.d.ts +2 -0
- package/lib/components/MonthView/MonthView.d.ts +103 -0
- package/lib/components/MonthView/get-month-view-events/add-event-to-day-groups.d.ts +14 -0
- package/lib/components/MonthView/get-month-view-events/calculate-event-position-in-week.d.ts +18 -0
- package/lib/components/MonthView/get-month-view-events/find-available-row.d.ts +10 -0
- package/lib/components/MonthView/get-month-view-events/get-month-positioned-events.d.ts +27 -0
- package/lib/components/MonthView/get-month-view-events/get-month-view-events.d.ts +16 -0
- package/lib/components/MonthView/get-month-view-events/get-weeks-in-range.d.ts +15 -0
- package/lib/components/MonthView/handle-month-view-key-down.d.ts +10 -0
- package/lib/components/MonthView/index.d.ts +9 -0
- package/lib/components/MoreEvents/MoreEvents.d.ts +40 -0
- package/lib/components/MoreEvents/index.d.ts +2 -0
- package/lib/components/Schedule/Schedule.d.ts +97 -0
- package/lib/components/Schedule/index.d.ts +2 -0
- package/lib/components/ScheduleEvent/ScheduleEvent.d.ts +54 -0
- package/lib/components/ScheduleEvent/index.d.ts +2 -0
- package/lib/components/ScheduleHeader/HeaderControl/HeaderControl.d.ts +43 -0
- package/lib/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.d.ts +52 -0
- package/lib/components/ScheduleHeader/ScheduleHeader.d.ts +40 -0
- package/lib/components/ScheduleHeader/ScheduleHeaderBase.d.ts +53 -0
- package/lib/components/ScheduleHeader/ViewSelect/ViewSelect.d.ts +27 -0
- package/lib/components/ScheduleHeader/index.d.ts +2 -0
- package/lib/components/WeekView/WeekView.d.ts +119 -0
- package/lib/components/WeekView/WeekViewDay.d.ts +58 -0
- package/lib/components/WeekView/get-week-label/get-week-label.d.ts +13 -0
- package/lib/components/WeekView/get-week-view-events/assign-event-rows.d.ts +2 -0
- package/lib/components/WeekView/get-week-view-events/calculate-all-day-event-offset.d.ts +11 -0
- package/lib/components/WeekView/get-week-view-events/calculate-all-day-event-width.d.ts +12 -0
- package/lib/components/WeekView/get-week-view-events/calculate-event-days.d.ts +9 -0
- package/lib/components/WeekView/get-week-view-events/calculate-regular-event-overlaps.d.ts +2 -0
- package/lib/components/WeekView/get-week-view-events/filter-week-view-events.d.ts +14 -0
- package/lib/components/WeekView/get-week-view-events/find-available-column.d.ts +9 -0
- package/lib/components/WeekView/get-week-view-events/get-event-end-date.d.ts +3 -0
- package/lib/components/WeekView/get-week-view-events/get-hanging-status.d.ts +9 -0
- package/lib/components/WeekView/get-week-view-events/get-week-positioned-events.d.ts +23 -0
- package/lib/components/WeekView/get-week-view-events/get-week-view-events.d.ts +7 -0
- package/lib/components/WeekView/handle-week-view-key-down.d.ts +10 -0
- package/lib/components/WeekView/index.d.ts +9 -0
- package/lib/components/YearView/YearView.d.ts +51 -0
- package/lib/components/YearView/YearViewMonth.d.ts +62 -0
- package/lib/components/YearView/get-year-view-events/get-year-view-events.d.ts +8 -0
- package/lib/components/YearView/handle-year-view-key-down.d.ts +11 -0
- package/lib/components/YearView/index.d.ts +9 -0
- package/lib/hooks/index.d.ts +5 -0
- package/lib/hooks/use-drag-drop-handlers.d.ts +51 -0
- package/lib/hooks/use-drag-state.d.ts +32 -0
- package/lib/hooks/use-slot-drag-select.d.ts +10 -0
- package/lib/index.d.mts +15 -0
- package/lib/index.d.ts +15 -0
- package/lib/labels.d.ts +24 -0
- package/lib/test-utils.d.ts +7 -0
- package/lib/types.d.ts +91 -0
- package/lib/utils/calculate-drop-time/calculate-drop-time.d.ts +22 -0
- package/lib/utils/calculate-month-drop-date/calculate-month-drop-date.d.ts +14 -0
- package/lib/utils/clamp-interval-minutes/clamp-interval-minutes.d.ts +2 -0
- package/lib/utils/format-date/format-date.d.ts +8 -0
- package/lib/utils/get-business-hours-mod/get-business-hours-mod.d.ts +17 -0
- package/lib/utils/get-current-time-position/get-current-time-position.d.ts +6 -0
- package/lib/utils/get-day-position/get-day-position.d.ts +15 -0
- package/lib/utils/get-day-time-intervals/get-day-time-intervals.d.ts +19 -0
- package/lib/utils/get-end-of-week/get-end-of-week.d.ts +3 -0
- package/lib/utils/get-month-days/get-month-days.d.ts +8 -0
- package/lib/utils/get-month-range/get-month-range.d.ts +13 -0
- package/lib/utils/get-months-by-quarter/get-months-by-quarter.d.ts +2 -0
- package/lib/utils/get-months-list/get-months-list.d.ts +11 -0
- package/lib/utils/get-start-of-week/get-start-of-week.d.ts +7 -0
- package/lib/utils/get-visible-events/get-visible-events.d.ts +9 -0
- package/lib/utils/get-week-days/get-week-days.d.ts +13 -0
- package/lib/utils/get-week-number/get-week-number.d.ts +2 -0
- package/lib/utils/get-weekdays-names/get-weekdays-names.d.ts +8 -0
- package/lib/utils/get-years-list/get-years-list.d.ts +6 -0
- package/lib/utils/index.d.ts +40 -0
- package/lib/utils/is-after-min-date/is-after-min-date.d.ts +2 -0
- package/lib/utils/is-all-day-event/is-all-day-event.d.ts +7 -0
- package/lib/utils/is-before-max-date/is-before-max-date.d.ts +2 -0
- package/lib/utils/is-event-in-time-range/is-event-in-time-range.d.ts +8 -0
- package/lib/utils/is-events-overlap/is-events-overlap.d.ts +3 -0
- package/lib/utils/is-in-time-range/is-in-time-range.d.ts +9 -0
- package/lib/utils/is-multiday-event/is-multiday-event.d.ts +2 -0
- package/lib/utils/is-same-month/is-same-month.d.ts +2 -0
- package/lib/utils/is-within-week/is-within-week.d.ts +8 -0
- package/lib/utils/next-week/next-week.d.ts +2 -0
- package/lib/utils/parse-time-string/parse-time-string.d.ts +6 -0
- package/lib/utils/previous-week/previous-week.d.ts +2 -0
- package/lib/utils/sort-events/sort-events.d.ts +3 -0
- package/lib/utils/to-date-string/to-date-string.d.ts +2 -0
- package/lib/utils/to-time-string/to-time-string.d.ts +2 -0
- package/lib/utils/validate-event/validate-event.d.ts +2 -0
- package/package.json +50 -0
- package/styles.css +1948 -0
- package/styles.layer.css +1949 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import dayjs from 'dayjs';
|
|
3
|
+
import isoWeek from 'dayjs/plugin/isoWeek.js';
|
|
4
|
+
|
|
5
|
+
dayjs.extend(isoWeek);
|
|
6
|
+
function getWeekNumber(week) {
|
|
7
|
+
if (Array.isArray(week)) {
|
|
8
|
+
const monday = week.find((date) => dayjs(date).day() === 1);
|
|
9
|
+
return dayjs(monday).isoWeek();
|
|
10
|
+
}
|
|
11
|
+
return dayjs(week).isoWeek();
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export { getWeekNumber };
|
|
15
|
+
//# sourceMappingURL=get-week-number.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-week-number.mjs","sources":["../../../src/utils/get-week-number/get-week-number.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport isoWeek from 'dayjs/plugin/isoWeek.js';\nimport { AnyDateValue } from '../../types';\n\ndayjs.extend(isoWeek);\n\nexport function getWeekNumber(week: AnyDateValue | AnyDateValue[]): number {\n if (Array.isArray(week)) {\n const monday = week.find((date) => dayjs(date).day() === 1);\n return dayjs(monday).isoWeek();\n }\n\n return dayjs(week).isoWeek();\n}\n"],"names":[],"mappings":";;;;AAIA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA;AAEb,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAA6C,CAAA;AACzE,CAAA,CAAA,IAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,OAAA,CAAQ,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAG,CAAA;AACvB,CAAA,CAAA,CAAA,CAAA,MAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,IAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAA,CAAA,CAAA,CAAA,KAAS,CAAA,CAAA,CAAA,CAAA,EAAM,IAAI,CAAA,CAAE,GAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAA,CAAA;AAC1D,CAAA,CAAA,CAAA,CAAA,OAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,MAAM,CAAA,CAAE,OAAA,CAAA,CAAQ,CAAA;AAAA,CAAA,CAC/B,CAAA;AAEA,CAAA,CAAA,OAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,IAAI,CAAA,CAAE,OAAA,CAAA,CAAQ,CAAA;AAC7B,CAAA;;"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import dayjs from 'dayjs';
|
|
3
|
+
import { formatDate } from '../format-date/format-date.mjs';
|
|
4
|
+
|
|
5
|
+
function getWeekdaysNames({
|
|
6
|
+
locale,
|
|
7
|
+
format = "dd",
|
|
8
|
+
firstDayOfWeek = 1
|
|
9
|
+
}) {
|
|
10
|
+
const baseDate = dayjs().day(firstDayOfWeek);
|
|
11
|
+
const labels = [];
|
|
12
|
+
for (let i = 0; i < 7; i += 1) {
|
|
13
|
+
labels.push(formatDate({ locale, date: baseDate.add(i, "days"), format }));
|
|
14
|
+
}
|
|
15
|
+
return labels;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export { getWeekdaysNames };
|
|
19
|
+
//# sourceMappingURL=get-weekdays-names.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-weekdays-names.mjs","sources":["../../../src/utils/get-weekdays-names/get-weekdays-names.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport type { DateLabelFormat, DayOfWeek } from '../../types';\nimport { formatDate } from '../format-date/format-date';\n\ninterface GetWeekdaysNamesInput {\n locale: string;\n format?: DateLabelFormat;\n firstDayOfWeek?: DayOfWeek;\n}\n\nexport function getWeekdaysNames({\n locale,\n format = 'dd',\n firstDayOfWeek = 1,\n}: GetWeekdaysNamesInput) {\n const baseDate = dayjs().day(firstDayOfWeek);\n const labels: React.ReactNode[] = [];\n\n for (let i = 0; i < 7; i += 1) {\n labels.push(formatDate({ locale, date: baseDate.add(i, 'days'), format }));\n }\n\n return labels;\n}\n"],"names":[],"mappings":";;;;AAUO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,gBAAA,CAAiB,CAAA;AAAA,CAAA,CAC/B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAS,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CACT,cAAA,CAAA,CAAA,CAAiB,CAAA;AACnB,CAAA,CAAA,CAA0B,CAAA;AACxB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,QAAA,CAAA,CAAA,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,EAAM,CAAE,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,CAAA,CAAA;AAC3C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,IAA4B,CAAA,CAAC,CAAA;AAEnC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAG,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAG,KAAK,CAAA,CAAA,CAAG,CAAA;AAC7B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAK,UAAA,CAAW,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,QAAA,CAAS,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAC,CAAA,CAAA;AAAA,CAAA,CAC3E,CAAA;AAEA,CAAA,CAAA,OAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAA;;"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
function getYearsList({ startYear, endYear }) {
|
|
3
|
+
const years = [];
|
|
4
|
+
for (let year = startYear; year <= endYear; year++) {
|
|
5
|
+
years.push(year);
|
|
6
|
+
}
|
|
7
|
+
return years;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export { getYearsList };
|
|
11
|
+
//# sourceMappingURL=get-years-list.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-years-list.mjs","sources":["../../../src/utils/get-years-list/get-years-list.ts"],"sourcesContent":["interface GetYearsListInput {\n startYear: number;\n endYear: number;\n}\n\nexport function getYearsList({ startYear, endYear }: GetYearsListInput) {\n const years: number[] = [];\n\n for (let year = startYear; year <= endYear; year++) {\n years.push(year);\n }\n\n return years;\n}\n"],"names":[],"mappings":";AAKO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,YAAA,CAAa,CAAA,CAAE,SAAA,CAAA,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAQ,CAAA,CAAsB,CAAA;AACtE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,IAAkB,CAAA,CAAC,CAAA;AAEzB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA;AAClD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,EAAK,IAAI,CAAA,CAAA;AAAA,CAAA,CACjB,CAAA;AAEA,CAAA,CAAA,OAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAA;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-after-min-date.mjs","sources":["../../../src/utils/is-after-min-date/is-after-min-date.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { AnyDateValue } from '../../types';\n\nexport function isAfterMinDate(date: AnyDateValue, minDate: AnyDateValue | undefined) {\n return minDate ? dayjs(date).isAfter(dayjs(minDate).subtract(1, 'day'), 'day') : true;\n}\n"],"names":[],"mappings":";;;AAGO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,CAAA,CAAA,CAAA,GAAoB,OAAA,CAAA,CAAmC,CAAA;AACpF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,IAAI,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,OAAO,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA;AACnF,CAAA;;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import dayjs from 'dayjs';
|
|
3
|
+
|
|
4
|
+
function isAllDayEvent({ event, date }) {
|
|
5
|
+
const dayStart = dayjs(date).startOf("day");
|
|
6
|
+
const dayEnd = dayStart.add(1, "day");
|
|
7
|
+
const startTime = dayjs(event.start);
|
|
8
|
+
const endTime = dayjs(event.end);
|
|
9
|
+
return startTime.isSame(dayStart) && endTime.isSame(dayEnd);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export { isAllDayEvent };
|
|
13
|
+
//# sourceMappingURL=is-all-day-event.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-all-day-event.mjs","sources":["../../../src/utils/is-all-day-event/is-all-day-event.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { AnyDateValue, ScheduleEventData } from '../../types';\n\ninterface IsAllDayEventInput {\n event: ScheduleEventData;\n date: AnyDateValue;\n}\n\nexport function isAllDayEvent({ event, date }: IsAllDayEventInput) {\n const dayStart = dayjs(date).startOf('day');\n const dayEnd = dayStart.add(1, 'day');\n const startTime = dayjs(event.start);\n const endTime = dayjs(event.end);\n\n return startTime.isSame(dayStart) && endTime.isSame(dayEnd);\n}\n"],"names":[],"mappings":";;;AAQO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,aAAA,CAAc,CAAA,CAAE,KAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,EAAK,CAAA,CAAuB,CAAA;AACjE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAI,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAQ,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA;AAC1C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,GAAA,CAAI,CAAA,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA;AACpC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,SAAA,CAAA,CAAA,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,KAAK,CAAA,CAAA;AACnC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,OAAA,CAAA,CAAA,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,GAAG,CAAA,CAAA;AAE/B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,MAAM,CAAA,CAAA;AAC5D,CAAA;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-before-max-date.mjs","sources":["../../../src/utils/is-before-max-date/is-before-max-date.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { AnyDateValue } from '../../types';\n\nexport function isBeforeMaxDate(date: AnyDateValue, maxDate: AnyDateValue | undefined) {\n return maxDate ? dayjs(date).isBefore(dayjs(maxDate).add(1, 'day'), 'day') : true;\n}\n"],"names":[],"mappings":";;;AAGO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAA,CAAA,CAAA,GAAoB,OAAA,CAAA,CAAmC,CAAA;AACrF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,IAAI,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,OAAO,CAAA,CAAE,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA;AAC/E,CAAA;;"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import dayjs from 'dayjs';
|
|
3
|
+
import { isMultidayEvent } from '../is-multiday-event/is-multiday-event.mjs';
|
|
4
|
+
|
|
5
|
+
function isEventInTimeRange({ event, startTime, endTime }) {
|
|
6
|
+
if (isMultidayEvent(event)) {
|
|
7
|
+
return true;
|
|
8
|
+
}
|
|
9
|
+
if (!startTime || !endTime) {
|
|
10
|
+
return true;
|
|
11
|
+
}
|
|
12
|
+
const [startHour, startMinute] = startTime.split(":").map(Number);
|
|
13
|
+
const [endHour, endMinute] = endTime.split(":").map(Number);
|
|
14
|
+
const timeWindowStartMinutes = startHour * 60 + startMinute;
|
|
15
|
+
const timeWindowEndMinutes = endHour * 60 + endMinute;
|
|
16
|
+
const eventStart = dayjs(event.start);
|
|
17
|
+
const eventEnd = dayjs(event.end);
|
|
18
|
+
const eventStartMinutes = eventStart.hour() * 60 + eventStart.minute();
|
|
19
|
+
const eventEndMinutes = eventEnd.hour() * 60 + eventEnd.minute();
|
|
20
|
+
return !(eventEndMinutes <= timeWindowStartMinutes || eventStartMinutes >= timeWindowEndMinutes);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export { isEventInTimeRange };
|
|
24
|
+
//# sourceMappingURL=is-event-in-time-range.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-event-in-time-range.mjs","sources":["../../../src/utils/is-event-in-time-range/is-event-in-time-range.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { ScheduleEventData } from '../../types';\nimport { isMultidayEvent } from '../is-multiday-event/is-multiday-event';\n\ninterface IsEventInTimeRangeInput {\n event: ScheduleEventData;\n startTime?: string;\n endTime?: string;\n}\n\nexport function isEventInTimeRange({ event, startTime, endTime }: IsEventInTimeRangeInput) {\n if (isMultidayEvent(event)) {\n return true;\n }\n\n if (!startTime || !endTime) {\n return true;\n }\n\n const [startHour, startMinute] = startTime.split(':').map(Number);\n const [endHour, endMinute] = endTime.split(':').map(Number);\n const timeWindowStartMinutes = startHour * 60 + startMinute;\n const timeWindowEndMinutes = endHour * 60 + endMinute;\n\n const eventStart = dayjs(event.start);\n const eventEnd = dayjs(event.end);\n const eventStartMinutes = eventStart.hour() * 60 + eventStart.minute();\n const eventEndMinutes = eventEnd.hour() * 60 + eventEnd.minute();\n\n return !(eventEndMinutes <= timeWindowStartMinutes || eventStartMinutes >= timeWindowEndMinutes);\n}\n"],"names":[],"mappings":";;;;AAUO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAmB,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAQ,CAAA,CAA4B,CAAA;AACzF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAG,CAAA;AAC1B,CAAA,CAAA,CAAA,CAAA,OAAO,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CACT,CAAA;AAEA,CAAA,CAAA,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAC,OAAA,CAAA,CAAS,CAAA;AAC1B,CAAA,CAAA,CAAA,CAAA,OAAO,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CACT,CAAA;AAEA,CAAA,CAAA,MAAM,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAG,CAAA,CAAE,CAAA,CAAA,CAAA,CAAI,MAAM,CAAA,CAAA;AAChE,CAAA,CAAA,MAAM,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAG,CAAA,CAAE,CAAA,CAAA,CAAA,CAAI,MAAM,CAAA,CAAA;AAC1D,CAAA,CAAA,MAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAyB,YAAY,CAAA,CAAA,GAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAChD,CAAA,CAAA,MAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAuB,UAAU,CAAA,CAAA,GAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAE5C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,UAAA,CAAA,CAAA,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,KAAK,CAAA,CAAA;AACpC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,QAAA,CAAA,CAAA,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,GAAG,CAAA,CAAA;AAChC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAoB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAW,MAAA,CAAA,CAAO,CAAA;AACrE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAkB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAS,MAAA,CAAA,CAAO,CAAA;AAE/D,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,EAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAmB,sBAAA,CAAA,CAAA,CAAA,CAA0B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAC7E,CAAA;;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import dayjs from 'dayjs';
|
|
3
|
+
|
|
4
|
+
function isEventsOverlap(event1, event2) {
|
|
5
|
+
const start1 = dayjs(event1.start).valueOf();
|
|
6
|
+
const end1 = dayjs(event1.end).valueOf();
|
|
7
|
+
const start2 = dayjs(event2.start).valueOf();
|
|
8
|
+
const end2 = dayjs(event2.end).valueOf();
|
|
9
|
+
return start1 < end2 && start2 < end1;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export { isEventsOverlap };
|
|
13
|
+
//# sourceMappingURL=is-events-overlap.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-events-overlap.mjs","sources":["../../../src/utils/is-events-overlap/is-events-overlap.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { ScheduleEventData } from '../../types';\n\n/** Returns true if two events overlap in time */\nexport function isEventsOverlap(event1: ScheduleEventData, event2: ScheduleEventData) {\n const start1 = dayjs(event1.start).valueOf();\n const end1 = dayjs(event1.end).valueOf();\n const start2 = dayjs(event2.start).valueOf();\n const end2 = dayjs(event2.end).valueOf();\n return start1 < end2 && start2 < end1;\n}\n"],"names":[],"mappings":";;;AAIO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,GAA2B,MAAA,CAAA,CAA2B,CAAA;AACpF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAK,EAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA;AAC3C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAG,EAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA;AACvC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAK,EAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA;AAC3C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAG,EAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA;AACvC,CAAA,CAAA,OAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,QAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAS,CAAA,CAAA,CAAA,CAAA,CAAA;AACnC,CAAA;;"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import dayjs from 'dayjs';
|
|
3
|
+
import { parseTimeString } from '../parse-time-string/parse-time-string.mjs';
|
|
4
|
+
|
|
5
|
+
function isInTimeRange({
|
|
6
|
+
date,
|
|
7
|
+
startTime = "00:00:00",
|
|
8
|
+
endTime = "23:59:59"
|
|
9
|
+
}) {
|
|
10
|
+
const targetDate = dayjs(date);
|
|
11
|
+
const parsedStartTime = parseTimeString(startTime);
|
|
12
|
+
const parsedEndTime = parseTimeString(endTime);
|
|
13
|
+
const startDateTime = targetDate.hour(parsedStartTime.hours).minute(parsedStartTime.minutes).second(parsedStartTime.seconds);
|
|
14
|
+
const endDateTime = targetDate.hour(parsedEndTime.hours).minute(parsedEndTime.minutes).second(parsedEndTime.seconds);
|
|
15
|
+
return targetDate.isAfter(startDateTime) && targetDate.isBefore(endDateTime);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export { isInTimeRange };
|
|
19
|
+
//# sourceMappingURL=is-in-time-range.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-in-time-range.mjs","sources":["../../../src/utils/is-in-time-range/is-in-time-range.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { AnyDateValue } from '../../types';\nimport { parseTimeString } from '../parse-time-string/parse-time-string';\n\ninterface IsInTimeRangeInput {\n date: AnyDateValue;\n startTime?: string;\n endTime?: string;\n}\n\n/** Returns true if the given date's time is within the specified time range */\nexport function isInTimeRange({\n date,\n startTime = '00:00:00',\n endTime = '23:59:59',\n}: IsInTimeRangeInput) {\n const targetDate = dayjs(date);\n const parsedStartTime = parseTimeString(startTime);\n const parsedEndTime = parseTimeString(endTime);\n\n const startDateTime = targetDate\n .hour(parsedStartTime.hours)\n .minute(parsedStartTime.minutes)\n .second(parsedStartTime.seconds);\n\n const endDateTime = targetDate\n .hour(parsedEndTime.hours)\n .minute(parsedEndTime.minutes)\n .second(parsedEndTime.seconds);\n\n return targetDate.isAfter(startDateTime) && targetDate.isBefore(endDateTime);\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import dayjs from 'dayjs';
|
|
3
|
+
|
|
4
|
+
function isMultidayEvent(event) {
|
|
5
|
+
const startDate = dayjs(event.start).startOf("day");
|
|
6
|
+
const endDate = dayjs(event.end).startOf("day");
|
|
7
|
+
return endDate.isAfter(startDate);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export { isMultidayEvent };
|
|
11
|
+
//# sourceMappingURL=is-multiday-event.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-multiday-event.mjs","sources":["../../../src/utils/is-multiday-event/is-multiday-event.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { ScheduleEventData } from '../../types';\n\nexport function isMultidayEvent(event: ScheduleEventData) {\n const startDate = dayjs(event.start).startOf('day');\n const endDate = dayjs(event.end).startOf('day');\n return endDate.isAfter(startDate);\n}\n"],"names":[],"mappings":";;;AAGO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA0B,CAAA;AACxD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAQ,KAAK,CAAA,CAAA;AAClD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAG,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAQ,KAAK,CAAA,CAAA;AAC9C,CAAA,CAAA,OAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAQ,SAAS,CAAA,CAAA;AAClC,CAAA;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-same-month.mjs","sources":["../../../src/utils/is-same-month/is-same-month.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { AnyDateValue } from '../../types';\n\nexport function isSameMonth(date: AnyDateValue, comparison: AnyDateValue) {\n return dayjs(date).format('YYYY-MM') === dayjs(comparison).format('YYYY-MM');\n}\n"],"names":[],"mappings":";;;AAGO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAA,CAAA,CAAA,GAAoB,UAAA,CAAA,CAA0B,CAAA;AACxE,CAAA,CAAA,OAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,IAAI,CAAA,CAAE,MAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,MAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,SAAS,CAAA,CAAA;AAC7E,CAAA;;"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import dayjs from 'dayjs';
|
|
3
|
+
import { getStartOfWeek } from '../get-start-of-week/get-start-of-week.mjs';
|
|
4
|
+
|
|
5
|
+
function isWithinWeek({ event, targetWeek, firstDayOfWeek }) {
|
|
6
|
+
const startOfWeek = dayjs(getStartOfWeek({ date: targetWeek, firstDayOfWeek }));
|
|
7
|
+
const endOfWeek = startOfWeek.add(7, "day");
|
|
8
|
+
return dayjs(event.start).isBefore(endOfWeek) && dayjs(event.end).isAfter(startOfWeek);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export { isWithinWeek };
|
|
12
|
+
//# sourceMappingURL=is-within-week.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-within-week.mjs","sources":["../../../src/utils/is-within-week/is-within-week.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { AnyDateValue, DayOfWeek, ScheduleEventData } from '../../types';\nimport { getStartOfWeek } from '../get-start-of-week/get-start-of-week';\n\ninterface IsWithinWeekInput {\n event: ScheduleEventData;\n targetWeek: AnyDateValue;\n firstDayOfWeek: DayOfWeek;\n}\n\nexport function isWithinWeek({ event, targetWeek, firstDayOfWeek }: IsWithinWeekInput) {\n const startOfWeek = dayjs(getStartOfWeek({ date: targetWeek, firstDayOfWeek }));\n const endOfWeek = startOfWeek.add(7, 'day');\n return dayjs(event.start).isBefore(endOfWeek) && dayjs(event.end).isAfter(startOfWeek);\n}\n"],"names":[],"mappings":";;;;AAUO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAe,CAAA,CAAsB,CAAA;AACrF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,CAAA,CAAA,CAAA,CAAA,EAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,CAAA,CAAE,CAAA,CAAA,CAAA,GAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAC,CAAA,CAAA;AAC9E,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,GAAA,CAAI,CAAA,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA;AAC1C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,KAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAG,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,CAAA,CAAA;AACvF,CAAA;;"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import dayjs from 'dayjs';
|
|
3
|
+
import { getStartOfWeek } from '../get-start-of-week/get-start-of-week.mjs';
|
|
4
|
+
import { toDateString } from '../to-date-string/to-date-string.mjs';
|
|
5
|
+
|
|
6
|
+
function nextWeek(date, firstDayOfWeek) {
|
|
7
|
+
const start = getStartOfWeek({ date, firstDayOfWeek });
|
|
8
|
+
return toDateString(dayjs(start).set("date", dayjs(start).date() + 7));
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export { nextWeek };
|
|
12
|
+
//# sourceMappingURL=next-week.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"next-week.mjs","sources":["../../../src/utils/next-week/next-week.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { AnyDateValue, DateStringValue, DayOfWeek } from '../../types';\nimport { getStartOfWeek } from '../get-start-of-week/get-start-of-week';\nimport { toDateString } from '../to-date-string/to-date-string';\n\nexport function nextWeek(date: AnyDateValue, firstDayOfWeek: DayOfWeek): DateStringValue {\n const start = getStartOfWeek({ date, firstDayOfWeek });\n return toDateString(dayjs(start).set('date', dayjs(start).date() + 7));\n}\n"],"names":[],"mappings":";;;;;AAKO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,GAAoB,cAAA,CAAA,CAA4C,CAAA;AACvF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,EAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAgB,CAAA,CAAA;AACrD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,YAAA,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAE,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,KAAK,CAAA,CAAE,IAAA,CAAA,CAAK,CAAA,CAAA,CAAI,CAAC,CAAC,CAAA,CAAA;AACvE,CAAA;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parse-time-string.mjs","sources":["../../../src/utils/parse-time-string/parse-time-string.ts"],"sourcesContent":["export interface ParsedTime {\n hours: number;\n minutes: number;\n seconds: number;\n}\n\nexport function parseTimeString(time: string): ParsedTime {\n const [hours, minutes, seconds] = time.split(':').map(Number);\n return { hours, minutes, seconds: seconds || 0 };\n}\n"],"names":[],"mappings":";AAMO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAA0B,CAAA;AACxD,CAAA,CAAA,MAAM,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,OAAO,CAAA,CAAA,CAAA,CAAI,KAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAG,CAAA,CAAE,CAAA,CAAA,CAAA,CAAI,MAAM,CAAA,CAAA;AAC5D,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAW,CAAA,CAAA,CAAE,CAAA;AACjD,CAAA;;"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import dayjs from 'dayjs';
|
|
3
|
+
import { getStartOfWeek } from '../get-start-of-week/get-start-of-week.mjs';
|
|
4
|
+
import { toDateString } from '../to-date-string/to-date-string.mjs';
|
|
5
|
+
|
|
6
|
+
function previousWeek(date, firstDayOfWeek) {
|
|
7
|
+
const start = getStartOfWeek({ date, firstDayOfWeek });
|
|
8
|
+
return toDateString(dayjs(start).set("date", dayjs(start).date() - 7));
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export { previousWeek };
|
|
12
|
+
//# sourceMappingURL=previous-week.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"previous-week.mjs","sources":["../../../src/utils/previous-week/previous-week.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { AnyDateValue, DateStringValue, DayOfWeek } from '../../types';\nimport { getStartOfWeek } from '../get-start-of-week/get-start-of-week';\nimport { toDateString } from '../to-date-string/to-date-string';\n\nexport function previousWeek(date: AnyDateValue, firstDayOfWeek: DayOfWeek): DateStringValue {\n const start = getStartOfWeek({ date, firstDayOfWeek });\n return toDateString(dayjs(start).set('date', dayjs(start).date() - 7));\n}\n"],"names":[],"mappings":";;;;;AAKO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAA,CAAA,CAAA,GAAoB,cAAA,CAAA,CAA4C,CAAA;AAC3F,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,EAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAgB,CAAA,CAAA;AACrD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,YAAA,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAE,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,KAAK,CAAA,CAAE,IAAA,CAAA,CAAK,CAAA,CAAA,CAAI,CAAC,CAAC,CAAA,CAAA;AACvE,CAAA;;"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import dayjs from 'dayjs';
|
|
3
|
+
|
|
4
|
+
function sortEvents(events) {
|
|
5
|
+
return events.toSorted((a, b) => {
|
|
6
|
+
const startDiff = dayjs(a.start).diff(dayjs(b.start));
|
|
7
|
+
if (startDiff !== 0) {
|
|
8
|
+
return startDiff;
|
|
9
|
+
}
|
|
10
|
+
return dayjs(b.end).diff(dayjs(b.start)) - dayjs(a.end).diff(dayjs(a.start));
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export { sortEvents };
|
|
15
|
+
//# sourceMappingURL=sort-events.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sort-events.mjs","sources":["../../../src/utils/sort-events/sort-events.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { ScheduleEventData } from '../../types';\n\n/** Sorts events by start time, then by duration (longer first) */\nexport function sortEvents<T extends ScheduleEventData>(events: T[]): T[] {\n return events.toSorted((a, b) => {\n const startDiff = dayjs(a.start).diff(dayjs(b.start));\n\n if (startDiff !== 0) {\n return startDiff;\n }\n\n return dayjs(b.end).diff(dayjs(b.start)) - dayjs(a.end).diff(dayjs(a.start));\n });\n}\n"],"names":[],"mappings":";;;AAIO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAwC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkB,CAAA;AACxE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,MAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAC,CAAA,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA;AAC/B,CAAA,CAAA,CAAA,CAAA,MAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,MAAM,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAK,EAAE,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAA,CAAA;AAEpD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MAAc,CAAA,CAAA,CAAG,CAAA;AACnB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACT,CAAA;AAEA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,EAAM,CAAA,CAAE,CAAA,CAAA,CAAG,EAAE,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,EAAE,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,EAAE,GAAG,CAAA,CAAE,CAAA,CAAA,CAAA,EAAK,KAAA,CAAM,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAA,CAAA;AAAA,CAAA,CAC7E,CAAC,CAAA,CAAA;AACH,CAAA;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"to-date-string.mjs","sources":["../../../src/utils/to-date-string/to-date-string.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { AnyDateValue, DateStringValue } from '../../types';\n\nexport function toDateString(date: AnyDateValue): DateStringValue {\n return dayjs(date).format('YYYY-MM-DD 00:00:00');\n}\n"],"names":[],"mappings":";;;AAGO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqC,CAAA;AAChE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,KAAA,CAAM,CAAA,CAAA,CAAA,CAAI,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqB,CAAA,CAAA;AACjD,CAAA;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"to-time-string.mjs","sources":["../../../src/utils/to-time-string/to-time-string.ts"],"sourcesContent":["import { ParsedTime } from '../parse-time-string/parse-time-string';\n\nexport function toTimeString({ hours, minutes, seconds }: ParsedTime) {\n return `${String(hours).padStart(2, '0')}:${String(minutes).padStart(2, '0')}:${String(seconds).padStart(2, '0')}`;\n}\n"],"names":[],"mappings":";AAEO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAQ,CAAA,CAAe,CAAA;AACpE,CAAA,CAAA,OAAO,CAAA,CAAA,CAAG,OAAO,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAS,CAAA,CAAA,CAAG,GAAG,CAAC,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,EAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAG,CAAA,CAAA,CAAG,CAAC,CAAA,CAAA,EAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,OAAO,CAAA,CAAE,QAAA,CAAS,CAAA,EAAG,CAAA,CAAA,CAAG,CAAC,CAAA,CAAA,CAAA;AAClH,CAAA;;"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import dayjs from 'dayjs';
|
|
3
|
+
|
|
4
|
+
function validateEvent(eventData) {
|
|
5
|
+
if (!dayjs(eventData.start).isValid()) {
|
|
6
|
+
throw new Error(`[@mantine/schedule] Invalid start date for event id: ${eventData.id}`);
|
|
7
|
+
}
|
|
8
|
+
if (!dayjs(eventData.end).isValid()) {
|
|
9
|
+
throw new Error(`[@mantine/schedule] Invalid end date for event id: ${eventData.id}`);
|
|
10
|
+
}
|
|
11
|
+
if (dayjs(eventData.end).isBefore(dayjs(eventData.start))) {
|
|
12
|
+
throw new Error(
|
|
13
|
+
`[@mantine/schedule] Event end date is before start date for event id: ${eventData.id}`
|
|
14
|
+
);
|
|
15
|
+
}
|
|
16
|
+
return eventData;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export { validateEvent };
|
|
20
|
+
//# sourceMappingURL=validate-event.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate-event.mjs","sources":["../../../src/utils/validate-event/validate-event.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { ScheduleEventData } from '../../types';\n\nexport function validateEvent(eventData: ScheduleEventData) {\n if (!dayjs(eventData.start).isValid()) {\n throw new Error(`[@mantine/schedule] Invalid start date for event id: ${eventData.id}`);\n }\n\n if (!dayjs(eventData.end).isValid()) {\n throw new Error(`[@mantine/schedule] Invalid end date for event id: ${eventData.id}`);\n }\n\n if (dayjs(eventData.end).isBefore(dayjs(eventData.start))) {\n throw new Error(\n `[@mantine/schedule] Event end date is before start date for event id: ${eventData.id}`\n );\n }\n\n return eventData;\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { BoxProps, ElementProps, Factory, MantineColor, StylesApiProps } from '@mantine/core';
|
|
2
|
+
import { DateLabelFormat } from '../../types';
|
|
3
|
+
export type CurrentTimeIndicatorStylesNames = 'currentTimeIndicator' | 'currentTimeIndicatorLine' | 'currentTimeIndicatorThumb' | 'currentTimeIndicatorTimeBubble';
|
|
4
|
+
export type CurrentTimeIndicatorCssVariables = {
|
|
5
|
+
currentTimeIndicator: '--indicator-color';
|
|
6
|
+
};
|
|
7
|
+
export interface CurrentTimeIndicatorProps extends BoxProps, StylesApiProps<CurrentTimeIndicatorFactory>, ElementProps<'div'> {
|
|
8
|
+
__staticSelector?: string;
|
|
9
|
+
/** Key of `theme.colors` or any valid CSS color value @default 'red' */
|
|
10
|
+
color?: MantineColor;
|
|
11
|
+
/** Offset from the left side */
|
|
12
|
+
startOffset?: string;
|
|
13
|
+
/** Offset from the right side */
|
|
14
|
+
endOffset?: string;
|
|
15
|
+
/** Extra configurable offset from the top */
|
|
16
|
+
topOffset?: string;
|
|
17
|
+
/** Offset for the time bubble */
|
|
18
|
+
timeBubbleStartOffset?: string;
|
|
19
|
+
/** If set, displays a bubble with the current time @default @true */
|
|
20
|
+
withTimeBubble?: boolean;
|
|
21
|
+
/** If set, displays thumb next to the line @default true */
|
|
22
|
+
withThumb?: boolean;
|
|
23
|
+
/** Format of the time displayed in the time bubble @default 'HH:mm' */
|
|
24
|
+
currentTimeFormat?: DateLabelFormat;
|
|
25
|
+
/** Locale passed down to dayjs during formatting */
|
|
26
|
+
locale?: string;
|
|
27
|
+
/** Start time of the day */
|
|
28
|
+
startTime?: string;
|
|
29
|
+
/** End time of the day */
|
|
30
|
+
endTime?: string;
|
|
31
|
+
}
|
|
32
|
+
export type CurrentTimeIndicatorFactory = Factory<{
|
|
33
|
+
props: CurrentTimeIndicatorProps;
|
|
34
|
+
ref: HTMLDivElement;
|
|
35
|
+
stylesNames: CurrentTimeIndicatorStylesNames;
|
|
36
|
+
vars: CurrentTimeIndicatorCssVariables;
|
|
37
|
+
}>;
|
|
38
|
+
export declare const CurrentTimeIndicator: import("@mantine/core").MantineComponent<{
|
|
39
|
+
props: CurrentTimeIndicatorProps;
|
|
40
|
+
ref: HTMLDivElement;
|
|
41
|
+
stylesNames: CurrentTimeIndicatorStylesNames;
|
|
42
|
+
vars: CurrentTimeIndicatorCssVariables;
|
|
43
|
+
}>;
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { BoxProps, DataAttributes, ElementProps, Factory, MantineRadius, ScrollAreaAutosizeProps, StylesApiProps } from '@mantine/core';
|
|
2
|
+
import { ScheduleLabelsOverride } from '../../labels';
|
|
3
|
+
import { DateLabelFormat, DateStringValue, DateTimeStringValue, ScheduleEventData, ScheduleMode, ScheduleViewLevel } from '../../types';
|
|
4
|
+
import { CurrentTimeIndicatorStylesNames } from '../CurrentTimeIndicator/CurrentTimeIndicator';
|
|
5
|
+
import { MoreEventsProps, MoreEventsStylesNames } from '../MoreEvents/MoreEvents';
|
|
6
|
+
import { RenderEvent, RenderEventBody, ScheduleEventStylesNames } from '../ScheduleEvent/ScheduleEvent';
|
|
7
|
+
import { MonthYearSelectStylesNames } from '../ScheduleHeader/MonthYearSelect/MonthYearSelect';
|
|
8
|
+
import { CombinedScheduleHeaderStylesNames } from '../ScheduleHeader/ScheduleHeader';
|
|
9
|
+
import { ViewSelectProps } from '../ScheduleHeader/ViewSelect/ViewSelect';
|
|
10
|
+
export type DayViewStylesNames = 'dayView' | 'dayViewInner' | 'dayViewScrollArea' | 'dayViewAllDay' | 'dayViewAllDayEvents' | 'dayViewSlot' | 'dayViewSlots' | 'dayViewTimeSlots' | 'dayViewSlotLabel' | 'dayViewSlotLabels' | MoreEventsStylesNames | ScheduleEventStylesNames | Exclude<CombinedScheduleHeaderStylesNames, MonthYearSelectStylesNames> | CurrentTimeIndicatorStylesNames;
|
|
11
|
+
export type DayViewCssVariables = {
|
|
12
|
+
dayView: '--day-view-radius' | '--day-view-slot-height' | '--day-view-all-day-slot-height';
|
|
13
|
+
};
|
|
14
|
+
export interface DayViewProps extends BoxProps, StylesApiProps<DayViewFactory>, ElementProps<'div'> {
|
|
15
|
+
__staticSelector?: string;
|
|
16
|
+
/** Day to display, Date object or date string in `YYYY-MM-DD` format */
|
|
17
|
+
date: Date | DateStringValue;
|
|
18
|
+
/** Called when date is changed */
|
|
19
|
+
onDateChange?: (date: DateStringValue) => void;
|
|
20
|
+
/** Events to display, must be a stable reference */
|
|
21
|
+
events?: ScheduleEventData[];
|
|
22
|
+
/** Time slots start time, in `HH:mm:ss` format @default 00:00:00 */
|
|
23
|
+
startTime?: string;
|
|
24
|
+
/** Time slots end time in `HH:mm:ss` format @default 23:59:59 */
|
|
25
|
+
endTime?: string;
|
|
26
|
+
/** Number of minutes for each time slot @default 15 */
|
|
27
|
+
intervalMinutes?: number;
|
|
28
|
+
/** If set, the all-day slot is displayed below the header @default true */
|
|
29
|
+
withAllDaySlot?: boolean;
|
|
30
|
+
/** Locale passed down to dayjs, overrides value defined on `DatesProvider` */
|
|
31
|
+
locale?: string;
|
|
32
|
+
/** Key of `theme.radius` or any valid CSS value to set `border-radius` @default theme.defaultRadius */
|
|
33
|
+
radius?: MantineRadius;
|
|
34
|
+
/** Dayjs format for slot labels or a callback function that returns formatted value @default HH:mm */
|
|
35
|
+
slotLabelFormat?: DateLabelFormat;
|
|
36
|
+
/** Date format in the header @default MMMM D, YYYY */
|
|
37
|
+
headerFormat?: DateLabelFormat;
|
|
38
|
+
/** If set, displays a line indicating the current time. By default, displayed only for the current day. */
|
|
39
|
+
withCurrentTimeIndicator?: boolean;
|
|
40
|
+
/** If set, the time indicator displays the current time in the bubble @default true */
|
|
41
|
+
withCurrentTimeBubble?: boolean;
|
|
42
|
+
/** If set, the header is displayed @default true */
|
|
43
|
+
withHeader?: boolean;
|
|
44
|
+
/** Called when view level select button is clicked */
|
|
45
|
+
onViewChange?: (view: ScheduleViewLevel) => void;
|
|
46
|
+
/** Props passed to previous month control */
|
|
47
|
+
previousControlProps?: React.ComponentProps<'button'> & DataAttributes;
|
|
48
|
+
/** Props passed to next month control */
|
|
49
|
+
nextControlProps?: React.ComponentProps<'button'> & DataAttributes;
|
|
50
|
+
/** Props passed to today control */
|
|
51
|
+
todayControlProps?: React.ComponentProps<'button'> & DataAttributes;
|
|
52
|
+
/** Props passed to view level select */
|
|
53
|
+
viewSelectProps?: Partial<ViewSelectProps> & DataAttributes;
|
|
54
|
+
/** Height of 1hr slot @default 64px */
|
|
55
|
+
slotHeight?: React.CSSProperties['height'];
|
|
56
|
+
/** Height of all-day slot @default 44px */
|
|
57
|
+
allDaySlotHeight?: React.CSSProperties['height'];
|
|
58
|
+
/** Props passed down to the `ScrollArea.Autosize` component */
|
|
59
|
+
scrollAreaProps?: ScrollAreaAutosizeProps & DataAttributes;
|
|
60
|
+
/** Props passed down to `MoreEvents` component */
|
|
61
|
+
moreEventsProps?: Partial<MoreEventsProps>;
|
|
62
|
+
/** Function to customize event body, `event` object is passed as first argument */
|
|
63
|
+
renderEventBody?: RenderEventBody;
|
|
64
|
+
/** Function to fully customize event rendering, receives all props that would be passed to the root element including children */
|
|
65
|
+
renderEvent?: RenderEvent;
|
|
66
|
+
/** Labels override */
|
|
67
|
+
labels?: ScheduleLabelsOverride;
|
|
68
|
+
/** If set to true, highlights business hours with white background @default false */
|
|
69
|
+
highlightBusinessHours?: boolean;
|
|
70
|
+
/** Business hours range in `HH:mm:ss` format @default ['09:00:00', '17:00:00'] */
|
|
71
|
+
businessHours?: [string, string];
|
|
72
|
+
/** If true, events can be dragged and dropped @default false */
|
|
73
|
+
withEventsDragAndDrop?: boolean;
|
|
74
|
+
/** Called when event is dropped at new time */
|
|
75
|
+
onEventDrop?: (eventId: string | number, newStart: DateTimeStringValue, newEnd: DateTimeStringValue) => void;
|
|
76
|
+
/** Function to determine if event can be dragged */
|
|
77
|
+
canDragEvent?: (event: ScheduleEventData) => boolean;
|
|
78
|
+
/** Called when any event drag starts */
|
|
79
|
+
onEventDragStart?: (event: ScheduleEventData) => void;
|
|
80
|
+
/** Called when any event drag ends */
|
|
81
|
+
onEventDragEnd?: () => void;
|
|
82
|
+
/** Called when time slot is clicked */
|
|
83
|
+
onTimeSlotClick?: (slotStart: DateTimeStringValue, slotEnd: DateTimeStringValue, event: React.MouseEvent<HTMLButtonElement>) => void;
|
|
84
|
+
/** Called when all-day slot is clicked */
|
|
85
|
+
onAllDaySlotClick?: (date: DateStringValue, event: React.MouseEvent<HTMLButtonElement>) => void;
|
|
86
|
+
/** Called when event is clicked */
|
|
87
|
+
onEventClick?: (event: ScheduleEventData, e: React.MouseEvent<HTMLButtonElement>) => void;
|
|
88
|
+
/** If set, enables drag-to-select time slot ranges @default false */
|
|
89
|
+
withDragSlotSelect?: boolean;
|
|
90
|
+
/** Called when a time slot range is selected by dragging */
|
|
91
|
+
onSlotDragEnd?: (rangeStart: DateTimeStringValue, rangeEnd: DateTimeStringValue) => void;
|
|
92
|
+
/** Interaction mode: 'default' allows all interactions, 'static' disables event interactions @default default */
|
|
93
|
+
mode?: ScheduleMode;
|
|
94
|
+
}
|
|
95
|
+
export type DayViewFactory = Factory<{
|
|
96
|
+
props: DayViewProps;
|
|
97
|
+
ref: HTMLDivElement;
|
|
98
|
+
stylesNames: DayViewStylesNames;
|
|
99
|
+
vars: DayViewCssVariables;
|
|
100
|
+
}>;
|
|
101
|
+
export declare const DayView: import("@mantine/core").MantineComponent<{
|
|
102
|
+
props: DayViewProps;
|
|
103
|
+
ref: HTMLDivElement;
|
|
104
|
+
stylesNames: DayViewStylesNames;
|
|
105
|
+
vars: DayViewCssVariables;
|
|
106
|
+
}>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { AnyDateValue, DayPositionedEventData, ScheduleEventData } from '../../../types';
|
|
2
|
+
interface GetDayPositionedEventsInput {
|
|
3
|
+
/** Date at which events are positioned, used to check if events are all-day */
|
|
4
|
+
date: AnyDateValue;
|
|
5
|
+
/** List of all events that belong to the given date, extra events must be filtered out before passing to the function */
|
|
6
|
+
events: ScheduleEventData[];
|
|
7
|
+
/** Start time of the day view, used to calculate event positions */
|
|
8
|
+
startTime?: string;
|
|
9
|
+
/** End time of the day view, used to calculate event positions */
|
|
10
|
+
endTime?: string;
|
|
11
|
+
}
|
|
12
|
+
export declare function getDayPositionedEvents({ events, startTime, endTime, date, }: GetDayPositionedEventsInput): DayPositionedEventData<import("../../..").EventPayload>[];
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { AnyDateValue, DayPositionedEventData, ScheduleEventData } from '../../../types';
|
|
2
|
+
interface GetDayViewEventsInput {
|
|
3
|
+
events: ScheduleEventData[] | undefined;
|
|
4
|
+
date: AnyDateValue;
|
|
5
|
+
startTime?: string;
|
|
6
|
+
endTime?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function getDayViewEvents({ events, date, startTime, endTime }: GetDayViewEventsInput): {
|
|
9
|
+
allDayEvents: DayPositionedEventData<import("../../..").EventPayload>[];
|
|
10
|
+
regularEvents: DayPositionedEventData<import("../../..").EventPayload>[];
|
|
11
|
+
};
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { DayViewCssVariables, DayViewFactory, DayViewProps, DayViewStylesNames } from './DayView';
|
|
2
|
+
export { DayView } from './DayView';
|
|
3
|
+
export type { DayViewProps, DayViewFactory, DayViewStylesNames, DayViewCssVariables };
|
|
4
|
+
export declare namespace DayView {
|
|
5
|
+
type Props = DayViewProps;
|
|
6
|
+
type Factory = DayViewFactory;
|
|
7
|
+
type StylesNames = DayViewStylesNames;
|
|
8
|
+
type CssVariables = DayViewCssVariables;
|
|
9
|
+
}
|