@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,193 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
3
|
+
import { createVarsResolver, getRadius, factory, useProps, useStyles, UnstyledButton, createScopedKeydownHandler, Popover } from '@mantine/core';
|
|
4
|
+
import { useDatesContext } from '@mantine/dates';
|
|
5
|
+
import { useDisclosure } from '@mantine/hooks';
|
|
6
|
+
import { getLabel } from '../../../labels.mjs';
|
|
7
|
+
import 'dayjs';
|
|
8
|
+
import { formatDate } from '../../../utils/format-date/format-date.mjs';
|
|
9
|
+
import '../../../utils/get-week-number/get-week-number.mjs';
|
|
10
|
+
import { getMonthsList } from '../../../utils/get-months-list/get-months-list.mjs';
|
|
11
|
+
import { getYearsList } from '../../../utils/get-years-list/get-years-list.mjs';
|
|
12
|
+
import { HeaderControl } from '../HeaderControl/HeaderControl.mjs';
|
|
13
|
+
import classes from './MonthYearSelect.module.css.mjs';
|
|
14
|
+
|
|
15
|
+
const defaultProps = {
|
|
16
|
+
__staticSelector: "MonthYearSelect",
|
|
17
|
+
withMonths: true
|
|
18
|
+
};
|
|
19
|
+
const varsResolver = createVarsResolver((_theme, { radius }) => ({
|
|
20
|
+
monthYearSelectDropdown: {
|
|
21
|
+
"--control-radius": radius === void 0 ? void 0 : getRadius(radius)
|
|
22
|
+
}
|
|
23
|
+
}));
|
|
24
|
+
const MonthYearSelect = factory((_props) => {
|
|
25
|
+
const props = useProps("MonthYearSelect", defaultProps, _props);
|
|
26
|
+
const {
|
|
27
|
+
__staticSelector,
|
|
28
|
+
classNames,
|
|
29
|
+
className,
|
|
30
|
+
style,
|
|
31
|
+
styles,
|
|
32
|
+
unstyled,
|
|
33
|
+
vars,
|
|
34
|
+
attributes,
|
|
35
|
+
popoverProps,
|
|
36
|
+
startYear,
|
|
37
|
+
endYear,
|
|
38
|
+
onYearChange,
|
|
39
|
+
onMonthChange,
|
|
40
|
+
locale,
|
|
41
|
+
monthsListFormat,
|
|
42
|
+
monthValue,
|
|
43
|
+
yearValue,
|
|
44
|
+
labelFormat,
|
|
45
|
+
radius,
|
|
46
|
+
getMonthControlProps,
|
|
47
|
+
getYearControlProps,
|
|
48
|
+
withMonths,
|
|
49
|
+
id,
|
|
50
|
+
labels,
|
|
51
|
+
...others
|
|
52
|
+
} = props;
|
|
53
|
+
const getStyles = useStyles({
|
|
54
|
+
name: __staticSelector,
|
|
55
|
+
classes,
|
|
56
|
+
props,
|
|
57
|
+
className,
|
|
58
|
+
style,
|
|
59
|
+
classNames,
|
|
60
|
+
styles,
|
|
61
|
+
unstyled,
|
|
62
|
+
attributes,
|
|
63
|
+
vars,
|
|
64
|
+
varsResolver,
|
|
65
|
+
rootSelector: "monthYearSelectTarget"
|
|
66
|
+
});
|
|
67
|
+
const [opened, handlers] = useDisclosure(false);
|
|
68
|
+
const today = /* @__PURE__ */ new Date();
|
|
69
|
+
const ctx = useDatesContext();
|
|
70
|
+
const _startYear = startYear ?? today.getFullYear() - 5;
|
|
71
|
+
const _endYear = endYear ?? today.getFullYear() + 5;
|
|
72
|
+
const hasActiveYear = yearValue !== void 0 && yearValue >= _startYear && yearValue <= _endYear;
|
|
73
|
+
const years = getYearsList({ startYear: _startYear, endYear: _endYear }).map((year, index) => {
|
|
74
|
+
const controlProps = getYearControlProps?.(year);
|
|
75
|
+
return /* @__PURE__ */ jsx(
|
|
76
|
+
UnstyledButton,
|
|
77
|
+
{
|
|
78
|
+
onClick: () => {
|
|
79
|
+
onYearChange?.(year);
|
|
80
|
+
if (!withMonths) {
|
|
81
|
+
handlers.close();
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
mod: { type: "year", active: year === yearValue },
|
|
85
|
+
"aria-label": `${getLabel("selectYear", labels)} ${year}`,
|
|
86
|
+
tabIndex: hasActiveYear ? year === yearValue ? 0 : -1 : index === 0 ? 0 : -1,
|
|
87
|
+
...controlProps,
|
|
88
|
+
onKeyDown: createScopedKeydownHandler({
|
|
89
|
+
siblingSelector: '[data-type="year"]:not(:disabled)',
|
|
90
|
+
parentSelector: "[data-list]",
|
|
91
|
+
activateOnFocus: false,
|
|
92
|
+
loop: true,
|
|
93
|
+
orientation: "vertical",
|
|
94
|
+
onKeyDown: controlProps?.onKeyDown
|
|
95
|
+
}),
|
|
96
|
+
...getStyles("monthYearSelectControl", {
|
|
97
|
+
className: controlProps?.className,
|
|
98
|
+
style: controlProps?.style
|
|
99
|
+
}),
|
|
100
|
+
children: year
|
|
101
|
+
},
|
|
102
|
+
year
|
|
103
|
+
);
|
|
104
|
+
});
|
|
105
|
+
const months = withMonths ? getMonthsList({
|
|
106
|
+
locale: ctx.getLocale(locale),
|
|
107
|
+
format: monthsListFormat || "MMMM"
|
|
108
|
+
}).map((month) => {
|
|
109
|
+
const controlProps = getMonthControlProps?.(month.month);
|
|
110
|
+
return /* @__PURE__ */ jsx(
|
|
111
|
+
UnstyledButton,
|
|
112
|
+
{
|
|
113
|
+
onClick: () => onMonthChange?.(month.month),
|
|
114
|
+
mod: { type: "month", active: month.month === monthValue },
|
|
115
|
+
tabIndex: month.month === monthValue ? 0 : -1,
|
|
116
|
+
onKeyDown: createScopedKeydownHandler({
|
|
117
|
+
siblingSelector: '[data-type="month"]:not(:disabled)',
|
|
118
|
+
parentSelector: "[data-list]",
|
|
119
|
+
activateOnFocus: false,
|
|
120
|
+
loop: true,
|
|
121
|
+
orientation: "vertical",
|
|
122
|
+
onKeyDown: controlProps?.onKeyDown
|
|
123
|
+
}),
|
|
124
|
+
...controlProps,
|
|
125
|
+
...getStyles("monthYearSelectControl", {
|
|
126
|
+
className: controlProps?.className,
|
|
127
|
+
style: controlProps?.style
|
|
128
|
+
}),
|
|
129
|
+
"aria-label": `${getLabel("selectMonth", labels)} ${month.name}`,
|
|
130
|
+
children: month.name
|
|
131
|
+
},
|
|
132
|
+
month.name
|
|
133
|
+
);
|
|
134
|
+
}) : null;
|
|
135
|
+
return /* @__PURE__ */ jsxs(
|
|
136
|
+
Popover,
|
|
137
|
+
{
|
|
138
|
+
position: "bottom-start",
|
|
139
|
+
__staticSelector,
|
|
140
|
+
trapFocus: true,
|
|
141
|
+
transitionProps: { transition: "pop", duration: 120 },
|
|
142
|
+
radius: radius || "var(--schedule-radius, var(--mantine-radius-default))",
|
|
143
|
+
shadow: "md",
|
|
144
|
+
offset: 3,
|
|
145
|
+
width: withMonths ? void 0 : "target",
|
|
146
|
+
opened,
|
|
147
|
+
onChange: handlers.set,
|
|
148
|
+
id,
|
|
149
|
+
...popoverProps,
|
|
150
|
+
children: [
|
|
151
|
+
/* @__PURE__ */ jsx(Popover.Target, { children: /* @__PURE__ */ jsx(
|
|
152
|
+
HeaderControl,
|
|
153
|
+
{
|
|
154
|
+
...getStyles("monthYearSelectTarget"),
|
|
155
|
+
__staticSelector,
|
|
156
|
+
radius,
|
|
157
|
+
"data-with-months": withMonths || void 0,
|
|
158
|
+
onClick: handlers.toggle,
|
|
159
|
+
...others,
|
|
160
|
+
children: formatDate({
|
|
161
|
+
locale: ctx.getLocale(locale),
|
|
162
|
+
date: new Date(yearValue ?? today.getFullYear(), monthValue ?? today.getMonth()),
|
|
163
|
+
format: labelFormat || (withMonths ? "MMMM YYYY" : "YYYY")
|
|
164
|
+
})
|
|
165
|
+
}
|
|
166
|
+
) }),
|
|
167
|
+
/* @__PURE__ */ jsxs(
|
|
168
|
+
Popover.Dropdown,
|
|
169
|
+
{
|
|
170
|
+
"data-with-months": withMonths || void 0,
|
|
171
|
+
...getStyles("monthYearSelectDropdown"),
|
|
172
|
+
children: [
|
|
173
|
+
withMonths && /* @__PURE__ */ jsxs("div", { "data-list": true, ...getStyles("monthYearSelectList"), children: [
|
|
174
|
+
/* @__PURE__ */ jsx("div", { ...getStyles("monthYearSelectLabel"), children: getLabel("month", labels) }),
|
|
175
|
+
months
|
|
176
|
+
] }),
|
|
177
|
+
/* @__PURE__ */ jsxs("div", { "data-list": true, ...getStyles("monthYearSelectList"), children: [
|
|
178
|
+
withMonths && /* @__PURE__ */ jsx("div", { ...getStyles("monthYearSelectLabel"), children: getLabel("year", labels) }),
|
|
179
|
+
years
|
|
180
|
+
] })
|
|
181
|
+
]
|
|
182
|
+
}
|
|
183
|
+
)
|
|
184
|
+
]
|
|
185
|
+
}
|
|
186
|
+
);
|
|
187
|
+
});
|
|
188
|
+
MonthYearSelect.displayName = "@mantine/schedule/MonthYearSelect";
|
|
189
|
+
MonthYearSelect.classes = classes;
|
|
190
|
+
MonthYearSelect.varsResolver = varsResolver;
|
|
191
|
+
|
|
192
|
+
export { MonthYearSelect };
|
|
193
|
+
//# sourceMappingURL=MonthYearSelect.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MonthYearSelect.mjs","sources":["../../../../src/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.tsx"],"sourcesContent":["import {\n BoxProps,\n createScopedKeydownHandler,\n createVarsResolver,\n DataAttributes,\n ElementProps,\n factory,\n Factory,\n getRadius,\n MantineRadius,\n Popover,\n PopoverProps,\n StylesApiProps,\n UnstyledButton,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport { useDatesContext } from '@mantine/dates';\nimport { useDisclosure } from '@mantine/hooks';\nimport { getLabel, ScheduleLabelsOverride } from '../../../labels';\nimport { DateLabelFormat } from '../../../types';\nimport { formatDate, getMonthsList, getYearsList } from '../../../utils';\nimport { HeaderControl } from '../HeaderControl/HeaderControl';\nimport classes from './MonthYearSelect.module.css';\n\nexport type MonthYearSelectStylesNames =\n | 'monthYearSelectTarget'\n | 'monthYearSelectDropdown'\n | 'monthYearSelectControl'\n | 'monthYearSelectList'\n | 'monthYearSelectLabel';\n\nexport type MonthYearSelectCssVariables = {\n monthYearSelectDropdown: '--control-radius';\n};\n\nexport interface MonthYearSelectProps\n extends BoxProps, StylesApiProps<MonthYearSelectFactory>, ElementProps<'button'> {\n __staticSelector?: string;\n\n /** Locale passed down to dayjs, overrides value defined on `DatesProvider` */\n locale?: string;\n\n /** Props passed down to the underlying Popover component */\n popoverProps?: PopoverProps;\n\n /** Start year for year selection, calculated from the current date by default */\n startYear?: number;\n\n /** End year for year selection, calculated from the current date by default */\n endYear?: number;\n\n /** Current year value (e.g. `2025`) */\n yearValue?: number;\n\n /** Current month value (0-11) */\n monthValue?: number;\n\n /** Called with year value (e.g. `2025`) when year is selected in the dropdown */\n onYearChange?: (year: number) => void;\n\n /** Called with month value (0-11) when month is selected in the dropdown */\n onMonthChange?: (month: number) => void;\n\n /** Format for displaying months in the dropdown, dayjs format or custom formatter function @default 'MMM' */\n monthsListFormat?: DateLabelFormat;\n\n /** Format for displaying month label in the control, dayjs format @default 'MMMM YYYY' */\n labelFormat?: DateLabelFormat;\n\n /** Key of `theme.radius` or any valid CSS value to set `border-radius` @default theme.defaultRadius */\n radius?: MantineRadius;\n\n /** Props passed down to year controls */\n getYearControlProps?: (year: number) => React.ComponentProps<'button'> & DataAttributes;\n\n /** Props passed down to month controls */\n getMonthControlProps?: (month: number) => React.ComponentProps<'button'> & DataAttributes;\n\n /** If set to false, months are not displayed in the dropdown @default true */\n withMonths?: boolean;\n\n /** Labels override */\n labels?: ScheduleLabelsOverride;\n}\n\nexport type MonthYearSelectFactory = Factory<{\n props: MonthYearSelectProps;\n ref: HTMLButtonElement;\n stylesNames: MonthYearSelectStylesNames;\n vars: MonthYearSelectCssVariables;\n}>;\n\nconst defaultProps = {\n __staticSelector: 'MonthYearSelect',\n withMonths: true,\n} satisfies Partial<MonthYearSelectProps>;\n\nconst varsResolver = createVarsResolver<MonthYearSelectFactory>((_theme, { radius }) => ({\n monthYearSelectDropdown: {\n '--control-radius': radius === undefined ? undefined : getRadius(radius),\n },\n}));\n\nexport const MonthYearSelect = factory<MonthYearSelectFactory>((_props) => {\n const props = useProps('MonthYearSelect', defaultProps, _props);\n const {\n __staticSelector,\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n attributes,\n popoverProps,\n startYear,\n endYear,\n onYearChange,\n onMonthChange,\n locale,\n monthsListFormat,\n monthValue,\n yearValue,\n labelFormat,\n radius,\n getMonthControlProps,\n getYearControlProps,\n withMonths,\n id,\n labels,\n ...others\n } = props;\n\n const getStyles = useStyles<MonthYearSelectFactory>({\n name: __staticSelector,\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n rootSelector: 'monthYearSelectTarget',\n });\n\n const [opened, handlers] = useDisclosure(false);\n\n const today = new Date();\n const ctx = useDatesContext();\n const _startYear = startYear ?? today.getFullYear() - 5;\n const _endYear = endYear ?? today.getFullYear() + 5;\n const hasActiveYear = yearValue !== undefined && yearValue >= _startYear && yearValue <= _endYear;\n\n const years = getYearsList({ startYear: _startYear, endYear: _endYear }).map((year, index) => {\n const controlProps = getYearControlProps?.(year);\n return (\n <UnstyledButton\n key={year}\n onClick={() => {\n onYearChange?.(year);\n if (!withMonths) {\n handlers.close();\n }\n }}\n mod={{ type: 'year', active: year === yearValue }}\n aria-label={`${getLabel('selectYear', labels)} ${year}`}\n tabIndex={hasActiveYear ? (year === yearValue ? 0 : -1) : index === 0 ? 0 : -1}\n {...controlProps}\n onKeyDown={createScopedKeydownHandler({\n siblingSelector: '[data-type=\"year\"]:not(:disabled)',\n parentSelector: '[data-list]',\n activateOnFocus: false,\n loop: true,\n orientation: 'vertical',\n onKeyDown: controlProps?.onKeyDown,\n })}\n {...getStyles('monthYearSelectControl', {\n className: controlProps?.className,\n style: controlProps?.style,\n })}\n >\n {year}\n </UnstyledButton>\n );\n });\n\n const months = withMonths\n ? getMonthsList({\n locale: ctx.getLocale(locale),\n format: monthsListFormat || 'MMMM',\n }).map((month) => {\n const controlProps = getMonthControlProps?.(month.month);\n return (\n <UnstyledButton\n key={month.name}\n onClick={() => onMonthChange?.(month.month)}\n mod={{ type: 'month', active: month.month === monthValue }}\n tabIndex={month.month === monthValue ? 0 : -1}\n onKeyDown={createScopedKeydownHandler({\n siblingSelector: '[data-type=\"month\"]:not(:disabled)',\n parentSelector: '[data-list]',\n activateOnFocus: false,\n loop: true,\n orientation: 'vertical',\n onKeyDown: controlProps?.onKeyDown,\n })}\n {...controlProps}\n {...getStyles('monthYearSelectControl', {\n className: controlProps?.className,\n style: controlProps?.style,\n })}\n aria-label={`${getLabel('selectMonth', labels)} ${month.name}`}\n >\n {month.name}\n </UnstyledButton>\n );\n })\n : null;\n\n return (\n <Popover\n position=\"bottom-start\"\n __staticSelector={__staticSelector}\n trapFocus\n transitionProps={{ transition: 'pop', duration: 120 }}\n radius={radius || 'var(--schedule-radius, var(--mantine-radius-default))'}\n shadow=\"md\"\n offset={3}\n width={withMonths ? undefined : 'target'}\n opened={opened}\n onChange={handlers.set}\n id={id}\n {...popoverProps}\n >\n <Popover.Target>\n <HeaderControl\n {...getStyles('monthYearSelectTarget')}\n __staticSelector={__staticSelector}\n radius={radius}\n data-with-months={withMonths || undefined}\n onClick={handlers.toggle}\n {...others}\n >\n {formatDate({\n locale: ctx.getLocale(locale),\n date: new Date(yearValue ?? today.getFullYear(), monthValue ?? today.getMonth()),\n format: labelFormat || (withMonths ? 'MMMM YYYY' : 'YYYY'),\n })}\n </HeaderControl>\n </Popover.Target>\n\n <Popover.Dropdown\n data-with-months={withMonths || undefined}\n {...getStyles('monthYearSelectDropdown')}\n >\n {withMonths && (\n <div data-list {...getStyles('monthYearSelectList')}>\n <div {...getStyles('monthYearSelectLabel')}>{getLabel('month', labels)}</div>\n {months}\n </div>\n )}\n <div data-list {...getStyles('monthYearSelectList')}>\n {withMonths && (\n <div {...getStyles('monthYearSelectLabel')}>{getLabel('year', labels)}</div>\n )}\n {years}\n </div>\n </Popover.Dropdown>\n </Popover>\n );\n});\n\nMonthYearSelect.displayName = '@mantine/schedule/MonthYearSelect';\nMonthYearSelect.classes = classes;\nMonthYearSelect.varsResolver = varsResolver;\n"],"names":[],"mappings":"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,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CACL,GAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAEJ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
var classes = {"monthYearSelectTarget":"m_9d235876","monthYearSelectList":"m_673e0cc3","monthYearSelectDropdown":"m_e24605b6","monthYearSelectLabel":"m_807fa76f","monthYearSelectControl":"m_9baf5b18"};
|
|
3
|
+
|
|
4
|
+
export { classes as default };
|
|
5
|
+
//# sourceMappingURL=MonthYearSelect.module.css.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MonthYearSelect.module.css.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { createVarsResolver, factory, useProps, useStyles, Box } from '@mantine/core';
|
|
4
|
+
import { HeaderControl, ScheduleHeaderNext, ScheduleHeaderPrevious, ScheduleHeaderToday } from './HeaderControl/HeaderControl.mjs';
|
|
5
|
+
import { MonthYearSelect } from './MonthYearSelect/MonthYearSelect.mjs';
|
|
6
|
+
import classes from './ScheduleHeader.module.css.mjs';
|
|
7
|
+
import { ViewSelect } from './ViewSelect/ViewSelect.mjs';
|
|
8
|
+
|
|
9
|
+
const defaultProps = {
|
|
10
|
+
__staticSelector: "ScheduleHeader"
|
|
11
|
+
};
|
|
12
|
+
const varsResolver = createVarsResolver(() => ({
|
|
13
|
+
scheduleHeader: {
|
|
14
|
+
"--test": "test"
|
|
15
|
+
}
|
|
16
|
+
}));
|
|
17
|
+
const ScheduleHeader = factory((_props) => {
|
|
18
|
+
const props = useProps("ScheduleHeader", defaultProps, _props);
|
|
19
|
+
const {
|
|
20
|
+
classNames,
|
|
21
|
+
className,
|
|
22
|
+
style,
|
|
23
|
+
styles,
|
|
24
|
+
unstyled,
|
|
25
|
+
vars,
|
|
26
|
+
attributes,
|
|
27
|
+
__staticSelector,
|
|
28
|
+
...others
|
|
29
|
+
} = props;
|
|
30
|
+
const getStyles = useStyles({
|
|
31
|
+
name: __staticSelector,
|
|
32
|
+
classes,
|
|
33
|
+
props,
|
|
34
|
+
className,
|
|
35
|
+
style,
|
|
36
|
+
classNames,
|
|
37
|
+
styles,
|
|
38
|
+
unstyled,
|
|
39
|
+
vars,
|
|
40
|
+
varsResolver,
|
|
41
|
+
attributes,
|
|
42
|
+
rootSelector: "header"
|
|
43
|
+
});
|
|
44
|
+
return /* @__PURE__ */ jsx(Box, { ...getStyles("header"), ...others });
|
|
45
|
+
});
|
|
46
|
+
ScheduleHeader.displayName = "@mantine/schedule/ScheduleHeader";
|
|
47
|
+
ScheduleHeader.classes = classes;
|
|
48
|
+
ScheduleHeader.varsResolver = varsResolver;
|
|
49
|
+
ScheduleHeader.Control = HeaderControl;
|
|
50
|
+
ScheduleHeader.Next = ScheduleHeaderNext;
|
|
51
|
+
ScheduleHeader.Previous = ScheduleHeaderPrevious;
|
|
52
|
+
ScheduleHeader.Today = ScheduleHeaderToday;
|
|
53
|
+
ScheduleHeader.ViewSelect = ViewSelect;
|
|
54
|
+
ScheduleHeader.MonthYearSelect = MonthYearSelect;
|
|
55
|
+
|
|
56
|
+
export { ScheduleHeader };
|
|
57
|
+
//# sourceMappingURL=ScheduleHeader.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScheduleHeader.mjs","sources":["../../../src/components/ScheduleHeader/ScheduleHeader.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n StylesApiProps,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport {\n HeaderControl,\n HeaderControlStylesNames,\n ScheduleHeaderNext,\n ScheduleHeaderPrevious,\n ScheduleHeaderToday,\n} from './HeaderControl/HeaderControl';\nimport { MonthYearSelect, MonthYearSelectStylesNames } from './MonthYearSelect/MonthYearSelect';\nimport classes from './ScheduleHeader.module.css';\nimport { ViewSelect, ViewSelectStylesNames } from './ViewSelect/ViewSelect';\n\nexport type CombinedScheduleHeaderStylesNames =\n | ScheduleHeaderStylesNames\n | ViewSelectStylesNames\n | HeaderControlStylesNames\n | MonthYearSelectStylesNames;\n\nexport type ScheduleHeaderStylesNames = 'header';\nexport type ScheduleHeaderCssVariables = {\n scheduleHeader: '--test';\n};\n\nexport interface ScheduleHeaderProps\n extends BoxProps, StylesApiProps<ScheduleHeaderFactory>, ElementProps<'div'> {\n __staticSelector?: string;\n}\n\nexport type ScheduleHeaderFactory = Factory<{\n props: ScheduleHeaderProps;\n ref: HTMLDivElement;\n stylesNames: ScheduleHeaderStylesNames;\n vars: ScheduleHeaderCssVariables;\n staticComponents: {\n Control: typeof HeaderControl;\n Previous: typeof ScheduleHeaderPrevious;\n Next: typeof ScheduleHeaderNext;\n Today: typeof ScheduleHeaderToday;\n ViewSelect: typeof ViewSelect;\n MonthYearSelect: typeof MonthYearSelect;\n };\n}>;\n\nconst defaultProps = {\n __staticSelector: 'ScheduleHeader',\n} satisfies Partial<ScheduleHeaderProps>;\n\nconst varsResolver = createVarsResolver<ScheduleHeaderFactory>(() => ({\n scheduleHeader: {\n '--test': 'test',\n },\n}));\n\nexport const ScheduleHeader = factory<ScheduleHeaderFactory>((_props) => {\n const props = useProps('ScheduleHeader', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n attributes,\n __staticSelector,\n ...others\n } = props;\n\n const getStyles = useStyles<ScheduleHeaderFactory>({\n name: __staticSelector,\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n attributes,\n rootSelector: 'header',\n });\n\n return <Box {...getStyles('header')} {...others} />;\n});\n\nScheduleHeader.displayName = '@mantine/schedule/ScheduleHeader';\nScheduleHeader.classes = classes;\nScheduleHeader.varsResolver = varsResolver;\nScheduleHeader.Control = HeaderControl;\nScheduleHeader.Next = ScheduleHeaderNext;\nScheduleHeader.Previous = ScheduleHeaderPrevious;\nScheduleHeader.Today = ScheduleHeaderToday;\nScheduleHeader.ViewSelect = ViewSelect;\nScheduleHeader.MonthYearSelect = MonthYearSelect;\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScheduleHeader.module.css.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
3
|
+
import { NativeSelect } from '@mantine/core';
|
|
4
|
+
import { getLabel } from '../../labels.mjs';
|
|
5
|
+
import { ScheduleHeader } from './ScheduleHeader.mjs';
|
|
6
|
+
import classes from './ScheduleHeader.module.css.mjs';
|
|
7
|
+
|
|
8
|
+
const VIEW_LEVELS = ["day", "week", "month", "year"];
|
|
9
|
+
function ScheduleHeaderBase({
|
|
10
|
+
view,
|
|
11
|
+
navigationHandlers,
|
|
12
|
+
control,
|
|
13
|
+
labels,
|
|
14
|
+
onDateChange,
|
|
15
|
+
onViewChange,
|
|
16
|
+
previousControlProps,
|
|
17
|
+
nextControlProps,
|
|
18
|
+
todayControlProps,
|
|
19
|
+
viewSelectProps,
|
|
20
|
+
stylesApiProps
|
|
21
|
+
}) {
|
|
22
|
+
const centralControl = control.monthYearSelect ? /* @__PURE__ */ jsx(ScheduleHeader.MonthYearSelect, { ...stylesApiProps, ...control.monthYearSelect }) : /* @__PURE__ */ jsx(ScheduleHeader.Control, { ...stylesApiProps, interactive: false, miw: control.miw, children: control.title });
|
|
23
|
+
const views = viewSelectProps?.views || VIEW_LEVELS;
|
|
24
|
+
const compactViewSelectData = views.map((v) => ({
|
|
25
|
+
value: v,
|
|
26
|
+
label: getLabel(v, labels)
|
|
27
|
+
}));
|
|
28
|
+
return /* @__PURE__ */ jsxs(ScheduleHeader, { ...stylesApiProps, children: [
|
|
29
|
+
/* @__PURE__ */ jsxs("div", { className: classes.navigationGroup, children: [
|
|
30
|
+
/* @__PURE__ */ jsx(
|
|
31
|
+
ScheduleHeader.Previous,
|
|
32
|
+
{
|
|
33
|
+
...stylesApiProps,
|
|
34
|
+
onClick: () => onDateChange?.(navigationHandlers.previous()),
|
|
35
|
+
labels,
|
|
36
|
+
...previousControlProps
|
|
37
|
+
}
|
|
38
|
+
),
|
|
39
|
+
centralControl,
|
|
40
|
+
/* @__PURE__ */ jsx(
|
|
41
|
+
ScheduleHeader.Next,
|
|
42
|
+
{
|
|
43
|
+
...stylesApiProps,
|
|
44
|
+
onClick: () => onDateChange?.(navigationHandlers.next()),
|
|
45
|
+
labels,
|
|
46
|
+
...nextControlProps
|
|
47
|
+
}
|
|
48
|
+
)
|
|
49
|
+
] }),
|
|
50
|
+
/* @__PURE__ */ jsx("div", { className: classes.todayControl, children: /* @__PURE__ */ jsx(
|
|
51
|
+
ScheduleHeader.Today,
|
|
52
|
+
{
|
|
53
|
+
...stylesApiProps,
|
|
54
|
+
onClick: () => onDateChange?.(navigationHandlers.today()),
|
|
55
|
+
labels,
|
|
56
|
+
...todayControlProps
|
|
57
|
+
}
|
|
58
|
+
) }),
|
|
59
|
+
/* @__PURE__ */ jsx(
|
|
60
|
+
NativeSelect,
|
|
61
|
+
{
|
|
62
|
+
className: classes.compactViewSelect,
|
|
63
|
+
data: compactViewSelectData,
|
|
64
|
+
value: view,
|
|
65
|
+
onChange: (event) => onViewChange?.(event.currentTarget.value),
|
|
66
|
+
"aria-label": getLabel("viewSelectLabel", labels),
|
|
67
|
+
size: "sm"
|
|
68
|
+
}
|
|
69
|
+
),
|
|
70
|
+
/* @__PURE__ */ jsx("div", { className: classes.viewSelect, style: { marginInlineStart: "auto" }, children: /* @__PURE__ */ jsx(
|
|
71
|
+
ScheduleHeader.ViewSelect,
|
|
72
|
+
{
|
|
73
|
+
value: view,
|
|
74
|
+
onChange: onViewChange,
|
|
75
|
+
labels,
|
|
76
|
+
...stylesApiProps,
|
|
77
|
+
...viewSelectProps
|
|
78
|
+
}
|
|
79
|
+
) })
|
|
80
|
+
] });
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
export { ScheduleHeaderBase };
|
|
84
|
+
//# sourceMappingURL=ScheduleHeaderBase.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScheduleHeaderBase.mjs","sources":["../../../src/components/ScheduleHeader/ScheduleHeaderBase.tsx"],"sourcesContent":["import { NativeSelect, StylesApiProps } from '@mantine/core';\nimport { getLabel, ScheduleLabelsOverride } from '../../labels';\nimport { DateStringValue, ScheduleViewLevel } from '../../types';\nimport { MonthYearSelectProps } from './MonthYearSelect/MonthYearSelect';\nimport { ScheduleHeader } from './ScheduleHeader';\nimport classes from './ScheduleHeader.module.css';\nimport { ViewSelectProps } from './ViewSelect/ViewSelect';\n\ninterface NavigationHandlers {\n /** Handler for previous button click, returns new date */\n previous: () => DateStringValue;\n\n /** Handler for next button click, returns new date */\n next: () => DateStringValue;\n\n /** Handler for today button click, returns new date */\n today: () => DateStringValue;\n}\n\ninterface HeaderControlOptions {\n /** Title to render in a simple control (used by DayView, WeekView) */\n title?: React.ReactNode;\n /** MonthYearSelect props (used by MonthView, YearView) */\n monthYearSelect?: {\n yearValue: number;\n monthValue: number;\n onYearChange?: (year: number) => void;\n onMonthChange?: (month: number) => void;\n withMonths?: boolean;\n } & Partial<MonthYearSelectProps>;\n /** Minimum width for control */\n miw?: React.CSSProperties['minWidth'];\n}\n\nexport interface ScheduleHeaderBaseProps {\n /** Current view level */\n view: ScheduleViewLevel;\n\n /** Navigation handlers for previous, next, and today */\n navigationHandlers: NavigationHandlers;\n\n /** Central control configuration (either title or monthYearSelect) */\n control: HeaderControlOptions;\n\n /** Label overrides */\n labels?: ScheduleLabelsOverride;\n\n /** Called when date is changed */\n onDateChange?: (date: DateStringValue) => void;\n\n /** Called when view is changed */\n onViewChange?: (view: ScheduleViewLevel) => void;\n\n /** Props passed to previous control button */\n previousControlProps?: React.ComponentProps<'button'>;\n\n /** Props passed to next control button */\n nextControlProps?: React.ComponentProps<'button'>;\n\n /** Props passed to today control button */\n todayControlProps?: React.ComponentProps<'button'>;\n\n /** Props passed to view select */\n viewSelectProps?: Partial<ViewSelectProps>;\n\n /** Styles API props to pass through */\n stylesApiProps?: StylesApiProps<any>;\n}\n\nconst VIEW_LEVELS: ScheduleViewLevel[] = ['day', 'week', 'month', 'year'];\n\nexport function ScheduleHeaderBase({\n view,\n navigationHandlers,\n control,\n labels,\n onDateChange,\n onViewChange,\n previousControlProps,\n nextControlProps,\n todayControlProps,\n viewSelectProps,\n stylesApiProps,\n}: ScheduleHeaderBaseProps) {\n const centralControl = control.monthYearSelect ? (\n <ScheduleHeader.MonthYearSelect {...stylesApiProps} {...control.monthYearSelect} />\n ) : (\n <ScheduleHeader.Control {...stylesApiProps} interactive={false} miw={control.miw}>\n {control.title}\n </ScheduleHeader.Control>\n );\n\n const views = viewSelectProps?.views || VIEW_LEVELS;\n const compactViewSelectData = views.map((v) => ({\n value: v,\n label: getLabel(v, labels) as string,\n }));\n\n return (\n <ScheduleHeader {...stylesApiProps}>\n <div className={classes.navigationGroup}>\n <ScheduleHeader.Previous\n {...stylesApiProps}\n onClick={() => onDateChange?.(navigationHandlers.previous())}\n labels={labels}\n {...previousControlProps}\n />\n\n {centralControl}\n\n <ScheduleHeader.Next\n {...stylesApiProps}\n onClick={() => onDateChange?.(navigationHandlers.next())}\n labels={labels}\n {...nextControlProps}\n />\n </div>\n\n <div className={classes.todayControl}>\n <ScheduleHeader.Today\n {...stylesApiProps}\n onClick={() => onDateChange?.(navigationHandlers.today())}\n labels={labels}\n {...todayControlProps}\n />\n </div>\n\n <NativeSelect\n className={classes.compactViewSelect}\n data={compactViewSelectData}\n value={view}\n onChange={(event) => onViewChange?.(event.currentTarget.value as ScheduleViewLevel)}\n aria-label={getLabel('viewSelectLabel', labels) as string}\n size=\"sm\"\n />\n\n <div className={classes.viewSelect} style={{ marginInlineStart: 'auto' }}>\n <ScheduleHeader.ViewSelect\n value={view}\n onChange={onViewChange}\n labels={labels}\n {...stylesApiProps}\n {...viewSelectProps}\n />\n </div>\n </ScheduleHeader>\n );\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { useRef, useEffect } from 'react';
|
|
4
|
+
import { factory, useProps, useStyles, useResolvedStylesApi, useDirection, Box } from '@mantine/core';
|
|
5
|
+
import { getLabel } from '../../../labels.mjs';
|
|
6
|
+
import { HeaderControl } from '../HeaderControl/HeaderControl.mjs';
|
|
7
|
+
import classes from './ViewSelect.module.css.mjs';
|
|
8
|
+
|
|
9
|
+
const defaultProps = {
|
|
10
|
+
__staticSelector: "ViewSelect",
|
|
11
|
+
views: ["day", "week", "month", "year"]
|
|
12
|
+
};
|
|
13
|
+
const ViewSelect = factory((_props) => {
|
|
14
|
+
const props = useProps("ViewSelect", defaultProps, _props);
|
|
15
|
+
const {
|
|
16
|
+
classNames,
|
|
17
|
+
className,
|
|
18
|
+
style,
|
|
19
|
+
styles,
|
|
20
|
+
unstyled,
|
|
21
|
+
vars,
|
|
22
|
+
attributes,
|
|
23
|
+
value,
|
|
24
|
+
onChange,
|
|
25
|
+
views,
|
|
26
|
+
__staticSelector,
|
|
27
|
+
radius,
|
|
28
|
+
labels,
|
|
29
|
+
...others
|
|
30
|
+
} = props;
|
|
31
|
+
const getStyles = useStyles({
|
|
32
|
+
name: __staticSelector,
|
|
33
|
+
classes,
|
|
34
|
+
props,
|
|
35
|
+
className,
|
|
36
|
+
style,
|
|
37
|
+
classNames,
|
|
38
|
+
styles,
|
|
39
|
+
unstyled,
|
|
40
|
+
attributes,
|
|
41
|
+
vars,
|
|
42
|
+
rootSelector: "viewSelect"
|
|
43
|
+
});
|
|
44
|
+
const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi({
|
|
45
|
+
classNames,
|
|
46
|
+
styles,
|
|
47
|
+
props
|
|
48
|
+
});
|
|
49
|
+
const { dir } = useDirection();
|
|
50
|
+
const controlsRef = useRef([]);
|
|
51
|
+
const activatedWithKeyboardRef = useRef(false);
|
|
52
|
+
useEffect(() => {
|
|
53
|
+
if (activatedWithKeyboardRef.current && document.activeElement === document.body) {
|
|
54
|
+
const selectedIndex = views.findIndex((view) => view === value);
|
|
55
|
+
if (selectedIndex !== -1) {
|
|
56
|
+
controlsRef.current[selectedIndex]?.focus();
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
activatedWithKeyboardRef.current = false;
|
|
60
|
+
}, []);
|
|
61
|
+
const handleKeyDown = (event, index) => {
|
|
62
|
+
const isRtl = dir === "rtl";
|
|
63
|
+
const nextKey = isRtl ? "ArrowLeft" : "ArrowRight";
|
|
64
|
+
const prevKey = isRtl ? "ArrowRight" : "ArrowLeft";
|
|
65
|
+
if (event.key === nextKey) {
|
|
66
|
+
event.preventDefault();
|
|
67
|
+
const nextIndex = index < views.length - 1 ? index + 1 : 0;
|
|
68
|
+
controlsRef.current[nextIndex]?.focus();
|
|
69
|
+
} else if (event.key === prevKey) {
|
|
70
|
+
event.preventDefault();
|
|
71
|
+
const prevIndex = index > 0 ? index - 1 : views.length - 1;
|
|
72
|
+
controlsRef.current[prevIndex]?.focus();
|
|
73
|
+
} else if (event.key === "Home") {
|
|
74
|
+
event.preventDefault();
|
|
75
|
+
controlsRef.current[0]?.focus();
|
|
76
|
+
} else if (event.key === "End") {
|
|
77
|
+
event.preventDefault();
|
|
78
|
+
controlsRef.current[views.length - 1]?.focus();
|
|
79
|
+
} else if (event.key === "Enter" || event.key === " ") {
|
|
80
|
+
activatedWithKeyboardRef.current = true;
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
const switchToLabelKeys = {
|
|
84
|
+
day: "switchToDayView",
|
|
85
|
+
week: "switchToWeekView",
|
|
86
|
+
month: "switchToMonthView",
|
|
87
|
+
year: "switchToYearView"
|
|
88
|
+
};
|
|
89
|
+
const items = views.map((view, index) => {
|
|
90
|
+
const isSelected = value === view;
|
|
91
|
+
return /* @__PURE__ */ jsx(
|
|
92
|
+
HeaderControl,
|
|
93
|
+
{
|
|
94
|
+
ref: (node) => {
|
|
95
|
+
controlsRef.current[index] = node;
|
|
96
|
+
},
|
|
97
|
+
"data-type": view,
|
|
98
|
+
active: isSelected,
|
|
99
|
+
onClick: () => onChange?.(view),
|
|
100
|
+
onKeyDown: (event) => handleKeyDown(event, index),
|
|
101
|
+
classNames: resolvedClassNames,
|
|
102
|
+
styles: resolvedStyles,
|
|
103
|
+
__staticSelector,
|
|
104
|
+
radius,
|
|
105
|
+
role: "tab",
|
|
106
|
+
"aria-label": getLabel(switchToLabelKeys[view], labels),
|
|
107
|
+
"aria-selected": isSelected,
|
|
108
|
+
tabIndex: isSelected ? 0 : -1,
|
|
109
|
+
children: getLabel(view, labels)
|
|
110
|
+
},
|
|
111
|
+
view
|
|
112
|
+
);
|
|
113
|
+
});
|
|
114
|
+
return /* @__PURE__ */ jsx(
|
|
115
|
+
Box,
|
|
116
|
+
{
|
|
117
|
+
...getStyles("viewSelect"),
|
|
118
|
+
role: "tablist",
|
|
119
|
+
"aria-label": getLabel("viewSelectLabel", labels),
|
|
120
|
+
...others,
|
|
121
|
+
children: items
|
|
122
|
+
}
|
|
123
|
+
);
|
|
124
|
+
});
|
|
125
|
+
ViewSelect.displayName = "@mantine/schedule/ViewSelect";
|
|
126
|
+
ViewSelect.classes = classes;
|
|
127
|
+
|
|
128
|
+
export { ViewSelect };
|
|
129
|
+
//# sourceMappingURL=ViewSelect.mjs.map
|