@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.
Files changed (482) hide show
  1. package/README.md +21 -0
  2. package/cjs/components/CurrentTimeIndicator/CurrentTimeIndicator.cjs +107 -0
  3. package/cjs/components/CurrentTimeIndicator/CurrentTimeIndicator.cjs.map +1 -0
  4. package/cjs/components/CurrentTimeIndicator/CurrentTimeIndicator.module.css.cjs +7 -0
  5. package/cjs/components/CurrentTimeIndicator/CurrentTimeIndicator.module.css.cjs.map +1 -0
  6. package/cjs/components/DayView/DayView.cjs +404 -0
  7. package/cjs/components/DayView/DayView.cjs.map +1 -0
  8. package/cjs/components/DayView/DayView.module.css.cjs +7 -0
  9. package/cjs/components/DayView/DayView.module.css.cjs.map +1 -0
  10. package/cjs/components/DayView/get-day-view-events/get-day-positioned-events.cjs +108 -0
  11. package/cjs/components/DayView/get-day-view-events/get-day-positioned-events.cjs.map +1 -0
  12. package/cjs/components/DayView/get-day-view-events/get-day-view-events.cjs +52 -0
  13. package/cjs/components/DayView/get-day-view-events/get-day-view-events.cjs.map +1 -0
  14. package/cjs/components/DragContext/DragContext.cjs +9 -0
  15. package/cjs/components/DragContext/DragContext.cjs.map +1 -0
  16. package/cjs/components/MobileMonthView/MobileMonthView.cjs +295 -0
  17. package/cjs/components/MobileMonthView/MobileMonthView.cjs.map +1 -0
  18. package/cjs/components/MobileMonthView/MobileMonthView.module.css.cjs +7 -0
  19. package/cjs/components/MobileMonthView/MobileMonthView.module.css.cjs.map +1 -0
  20. package/cjs/components/MobileMonthView/get-mobile-month-view-events.cjs +54 -0
  21. package/cjs/components/MobileMonthView/get-mobile-month-view-events.cjs.map +1 -0
  22. package/cjs/components/MonthView/MonthView.cjs +410 -0
  23. package/cjs/components/MonthView/MonthView.cjs.map +1 -0
  24. package/cjs/components/MonthView/MonthView.module.css.cjs +7 -0
  25. package/cjs/components/MonthView/MonthView.module.css.cjs.map +1 -0
  26. package/cjs/components/MonthView/get-month-view-events/add-event-to-day-groups.cjs +26 -0
  27. package/cjs/components/MonthView/get-month-view-events/add-event-to-day-groups.cjs.map +1 -0
  28. package/cjs/components/MonthView/get-month-view-events/calculate-event-position-in-week.cjs +37 -0
  29. package/cjs/components/MonthView/get-month-view-events/calculate-event-position-in-week.cjs.map +1 -0
  30. package/cjs/components/MonthView/get-month-view-events/find-available-row.cjs +31 -0
  31. package/cjs/components/MonthView/get-month-view-events/find-available-row.cjs.map +1 -0
  32. package/cjs/components/MonthView/get-month-view-events/get-month-positioned-events.cjs +83 -0
  33. package/cjs/components/MonthView/get-month-view-events/get-month-positioned-events.cjs.map +1 -0
  34. package/cjs/components/MonthView/get-month-view-events/get-month-view-events.cjs +46 -0
  35. package/cjs/components/MonthView/get-month-view-events/get-month-view-events.cjs.map +1 -0
  36. package/cjs/components/MonthView/get-month-view-events/get-weeks-in-range.cjs +40 -0
  37. package/cjs/components/MonthView/get-month-view-events/get-weeks-in-range.cjs.map +1 -0
  38. package/cjs/components/MonthView/handle-month-view-key-down.cjs +147 -0
  39. package/cjs/components/MonthView/handle-month-view-key-down.cjs.map +1 -0
  40. package/cjs/components/MoreEvents/MoreEvents.cjs +124 -0
  41. package/cjs/components/MoreEvents/MoreEvents.cjs.map +1 -0
  42. package/cjs/components/MoreEvents/MoreEvents.module.css.cjs +7 -0
  43. package/cjs/components/MoreEvents/MoreEvents.module.css.cjs.map +1 -0
  44. package/cjs/components/Schedule/Schedule.cjs +168 -0
  45. package/cjs/components/Schedule/Schedule.cjs.map +1 -0
  46. package/cjs/components/Schedule/Schedule.module.css.cjs +7 -0
  47. package/cjs/components/Schedule/Schedule.module.css.cjs.map +1 -0
  48. package/cjs/components/ScheduleEvent/ScheduleEvent.cjs +126 -0
  49. package/cjs/components/ScheduleEvent/ScheduleEvent.cjs.map +1 -0
  50. package/cjs/components/ScheduleEvent/ScheduleEvent.module.css.cjs +7 -0
  51. package/cjs/components/ScheduleEvent/ScheduleEvent.module.css.cjs.map +1 -0
  52. package/cjs/components/ScheduleHeader/HeaderControl/HeaderControl.cjs +91 -0
  53. package/cjs/components/ScheduleHeader/HeaderControl/HeaderControl.cjs.map +1 -0
  54. package/cjs/components/ScheduleHeader/HeaderControl/HeaderControl.module.css.cjs +7 -0
  55. package/cjs/components/ScheduleHeader/HeaderControl/HeaderControl.module.css.cjs.map +1 -0
  56. package/cjs/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.cjs +195 -0
  57. package/cjs/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.cjs.map +1 -0
  58. package/cjs/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.module.css.cjs +7 -0
  59. package/cjs/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.module.css.cjs.map +1 -0
  60. package/cjs/components/ScheduleHeader/ScheduleHeader.cjs +59 -0
  61. package/cjs/components/ScheduleHeader/ScheduleHeader.cjs.map +1 -0
  62. package/cjs/components/ScheduleHeader/ScheduleHeader.module.css.cjs +7 -0
  63. package/cjs/components/ScheduleHeader/ScheduleHeader.module.css.cjs.map +1 -0
  64. package/cjs/components/ScheduleHeader/ScheduleHeaderBase.cjs +86 -0
  65. package/cjs/components/ScheduleHeader/ScheduleHeaderBase.cjs.map +1 -0
  66. package/cjs/components/ScheduleHeader/ViewSelect/ViewSelect.cjs +131 -0
  67. package/cjs/components/ScheduleHeader/ViewSelect/ViewSelect.cjs.map +1 -0
  68. package/cjs/components/ScheduleHeader/ViewSelect/ViewSelect.module.css.cjs +7 -0
  69. package/cjs/components/ScheduleHeader/ViewSelect/ViewSelect.module.css.cjs.map +1 -0
  70. package/cjs/components/WeekView/WeekView.cjs +557 -0
  71. package/cjs/components/WeekView/WeekView.cjs.map +1 -0
  72. package/cjs/components/WeekView/WeekView.module.css.cjs +7 -0
  73. package/cjs/components/WeekView/WeekView.module.css.cjs.map +1 -0
  74. package/cjs/components/WeekView/WeekViewDay.cjs +100 -0
  75. package/cjs/components/WeekView/WeekViewDay.cjs.map +1 -0
  76. package/cjs/components/WeekView/get-week-label/get-week-label.cjs +36 -0
  77. package/cjs/components/WeekView/get-week-label/get-week-label.cjs.map +1 -0
  78. package/cjs/components/WeekView/get-week-view-events/assign-event-rows.cjs +31 -0
  79. package/cjs/components/WeekView/get-week-view-events/assign-event-rows.cjs.map +1 -0
  80. package/cjs/components/WeekView/get-week-view-events/calculate-all-day-event-offset.cjs +31 -0
  81. package/cjs/components/WeekView/get-week-view-events/calculate-all-day-event-offset.cjs.map +1 -0
  82. package/cjs/components/WeekView/get-week-view-events/calculate-all-day-event-width.cjs +33 -0
  83. package/cjs/components/WeekView/get-week-view-events/calculate-all-day-event-width.cjs.map +1 -0
  84. package/cjs/components/WeekView/get-week-view-events/calculate-event-days.cjs +19 -0
  85. package/cjs/components/WeekView/get-week-view-events/calculate-event-days.cjs.map +1 -0
  86. package/cjs/components/WeekView/get-week-view-events/calculate-regular-event-overlaps.cjs +24 -0
  87. package/cjs/components/WeekView/get-week-view-events/calculate-regular-event-overlaps.cjs.map +1 -0
  88. package/cjs/components/WeekView/get-week-view-events/filter-week-view-events.cjs +36 -0
  89. package/cjs/components/WeekView/get-week-view-events/filter-week-view-events.cjs.map +1 -0
  90. package/cjs/components/WeekView/get-week-view-events/find-available-column.cjs +42 -0
  91. package/cjs/components/WeekView/get-week-view-events/find-available-column.cjs.map +1 -0
  92. package/cjs/components/WeekView/get-week-view-events/get-event-end-date.cjs +19 -0
  93. package/cjs/components/WeekView/get-week-view-events/get-event-end-date.cjs.map +1 -0
  94. package/cjs/components/WeekView/get-week-view-events/get-hanging-status.cjs +32 -0
  95. package/cjs/components/WeekView/get-week-view-events/get-hanging-status.cjs.map +1 -0
  96. package/cjs/components/WeekView/get-week-view-events/get-week-positioned-events.cjs +142 -0
  97. package/cjs/components/WeekView/get-week-view-events/get-week-positioned-events.cjs.map +1 -0
  98. package/cjs/components/WeekView/get-week-view-events/get-week-view-events.cjs +12 -0
  99. package/cjs/components/WeekView/get-week-view-events/get-week-view-events.cjs.map +1 -0
  100. package/cjs/components/WeekView/handle-week-view-key-down.cjs +135 -0
  101. package/cjs/components/WeekView/handle-week-view-key-down.cjs.map +1 -0
  102. package/cjs/components/YearView/YearView.cjs +216 -0
  103. package/cjs/components/YearView/YearView.cjs.map +1 -0
  104. package/cjs/components/YearView/YearView.module.css.cjs +7 -0
  105. package/cjs/components/YearView/YearView.module.css.cjs.map +1 -0
  106. package/cjs/components/YearView/YearViewMonth.cjs +158 -0
  107. package/cjs/components/YearView/YearViewMonth.cjs.map +1 -0
  108. package/cjs/components/YearView/get-year-view-events/get-year-view-events.cjs +52 -0
  109. package/cjs/components/YearView/get-year-view-events/get-year-view-events.cjs.map +1 -0
  110. package/cjs/components/YearView/handle-year-view-key-down.cjs +210 -0
  111. package/cjs/components/YearView/handle-year-view-key-down.cjs.map +1 -0
  112. package/cjs/hooks/use-drag-drop-handlers.cjs +107 -0
  113. package/cjs/hooks/use-drag-drop-handlers.cjs.map +1 -0
  114. package/cjs/hooks/use-drag-state.cjs +47 -0
  115. package/cjs/hooks/use-drag-state.cjs.map +1 -0
  116. package/cjs/hooks/use-slot-drag-select.cjs +91 -0
  117. package/cjs/hooks/use-slot-drag-select.cjs.map +1 -0
  118. package/cjs/index.cjs +101 -0
  119. package/cjs/index.cjs.map +1 -0
  120. package/cjs/labels.cjs +34 -0
  121. package/cjs/labels.cjs.map +1 -0
  122. package/cjs/utils/calculate-drop-time/calculate-drop-time.cjs +38 -0
  123. package/cjs/utils/calculate-drop-time/calculate-drop-time.cjs.map +1 -0
  124. package/cjs/utils/calculate-month-drop-date/calculate-month-drop-date.cjs +26 -0
  125. package/cjs/utils/calculate-month-drop-date/calculate-month-drop-date.cjs.map +1 -0
  126. package/cjs/utils/clamp-interval-minutes/clamp-interval-minutes.cjs +11 -0
  127. package/cjs/utils/clamp-interval-minutes/clamp-interval-minutes.cjs.map +1 -0
  128. package/cjs/utils/format-date/format-date.cjs +18 -0
  129. package/cjs/utils/format-date/format-date.cjs.map +1 -0
  130. package/cjs/utils/get-business-hours-mod/get-business-hours-mod.cjs +24 -0
  131. package/cjs/utils/get-business-hours-mod/get-business-hours-mod.cjs.map +1 -0
  132. package/cjs/utils/get-current-time-position/get-current-time-position.cjs +28 -0
  133. package/cjs/utils/get-current-time-position/get-current-time-position.cjs.map +1 -0
  134. package/cjs/utils/get-day-position/get-day-position.cjs +37 -0
  135. package/cjs/utils/get-day-position/get-day-position.cjs.map +1 -0
  136. package/cjs/utils/get-day-time-intervals/get-day-time-intervals.cjs +47 -0
  137. package/cjs/utils/get-day-time-intervals/get-day-time-intervals.cjs.map +1 -0
  138. package/cjs/utils/get-end-of-week/get-end-of-week.cjs +23 -0
  139. package/cjs/utils/get-end-of-week/get-end-of-week.cjs.map +1 -0
  140. package/cjs/utils/get-month-days/get-month-days.cjs +49 -0
  141. package/cjs/utils/get-month-days/get-month-days.cjs.map +1 -0
  142. package/cjs/utils/get-month-range/get-month-range.cjs +32 -0
  143. package/cjs/utils/get-month-range/get-month-range.cjs.map +1 -0
  144. package/cjs/utils/get-months-by-quarter/get-months-by-quarter.cjs +24 -0
  145. package/cjs/utils/get-months-by-quarter/get-months-by-quarter.cjs.map +1 -0
  146. package/cjs/utils/get-months-list/get-months-list.cjs +21 -0
  147. package/cjs/utils/get-months-list/get-months-list.cjs.map +1 -0
  148. package/cjs/utils/get-start-of-week/get-start-of-week.cjs +19 -0
  149. package/cjs/utils/get-start-of-week/get-start-of-week.cjs.map +1 -0
  150. package/cjs/utils/get-visible-events/get-visible-events.cjs +18 -0
  151. package/cjs/utils/get-visible-events/get-visible-events.cjs.map +1 -0
  152. package/cjs/utils/get-week-days/get-week-days.cjs +32 -0
  153. package/cjs/utils/get-week-days/get-week-days.cjs.map +1 -0
  154. package/cjs/utils/get-week-number/get-week-number.cjs +22 -0
  155. package/cjs/utils/get-week-number/get-week-number.cjs.map +1 -0
  156. package/cjs/utils/get-weekdays-names/get-weekdays-names.cjs +25 -0
  157. package/cjs/utils/get-weekdays-names/get-weekdays-names.cjs.map +1 -0
  158. package/cjs/utils/get-years-list/get-years-list.cjs +13 -0
  159. package/cjs/utils/get-years-list/get-years-list.cjs.map +1 -0
  160. package/cjs/utils/is-after-min-date/is-after-min-date.cjs +15 -0
  161. package/cjs/utils/is-after-min-date/is-after-min-date.cjs.map +1 -0
  162. package/cjs/utils/is-all-day-event/is-all-day-event.cjs +19 -0
  163. package/cjs/utils/is-all-day-event/is-all-day-event.cjs.map +1 -0
  164. package/cjs/utils/is-before-max-date/is-before-max-date.cjs +15 -0
  165. package/cjs/utils/is-before-max-date/is-before-max-date.cjs.map +1 -0
  166. package/cjs/utils/is-event-in-time-range/is-event-in-time-range.cjs +30 -0
  167. package/cjs/utils/is-event-in-time-range/is-event-in-time-range.cjs.map +1 -0
  168. package/cjs/utils/is-events-overlap/is-events-overlap.cjs +19 -0
  169. package/cjs/utils/is-events-overlap/is-events-overlap.cjs.map +1 -0
  170. package/cjs/utils/is-in-time-range/is-in-time-range.cjs +25 -0
  171. package/cjs/utils/is-in-time-range/is-in-time-range.cjs.map +1 -0
  172. package/cjs/utils/is-multiday-event/is-multiday-event.cjs +17 -0
  173. package/cjs/utils/is-multiday-event/is-multiday-event.cjs.map +1 -0
  174. package/cjs/utils/is-same-month/is-same-month.cjs +15 -0
  175. package/cjs/utils/is-same-month/is-same-month.cjs.map +1 -0
  176. package/cjs/utils/is-within-week/is-within-week.cjs +18 -0
  177. package/cjs/utils/is-within-week/is-within-week.cjs.map +1 -0
  178. package/cjs/utils/next-week/next-week.cjs +18 -0
  179. package/cjs/utils/next-week/next-week.cjs.map +1 -0
  180. package/cjs/utils/parse-time-string/parse-time-string.cjs +10 -0
  181. package/cjs/utils/parse-time-string/parse-time-string.cjs.map +1 -0
  182. package/cjs/utils/previous-week/previous-week.cjs +18 -0
  183. package/cjs/utils/previous-week/previous-week.cjs.map +1 -0
  184. package/cjs/utils/sort-events/sort-events.cjs +21 -0
  185. package/cjs/utils/sort-events/sort-events.cjs.map +1 -0
  186. package/cjs/utils/to-date-string/to-date-string.cjs +15 -0
  187. package/cjs/utils/to-date-string/to-date-string.cjs.map +1 -0
  188. package/cjs/utils/to-time-string/to-time-string.cjs +9 -0
  189. package/cjs/utils/to-time-string/to-time-string.cjs.map +1 -0
  190. package/cjs/utils/validate-event/validate-event.cjs +26 -0
  191. package/cjs/utils/validate-event/validate-event.cjs.map +1 -0
  192. package/esm/components/CurrentTimeIndicator/CurrentTimeIndicator.mjs +101 -0
  193. package/esm/components/CurrentTimeIndicator/CurrentTimeIndicator.mjs.map +1 -0
  194. package/esm/components/CurrentTimeIndicator/CurrentTimeIndicator.module.css.mjs +5 -0
  195. package/esm/components/CurrentTimeIndicator/CurrentTimeIndicator.module.css.mjs.map +1 -0
  196. package/esm/components/DayView/DayView.mjs +398 -0
  197. package/esm/components/DayView/DayView.mjs.map +1 -0
  198. package/esm/components/DayView/DayView.module.css.mjs +5 -0
  199. package/esm/components/DayView/DayView.module.css.mjs.map +1 -0
  200. package/esm/components/DayView/get-day-view-events/get-day-positioned-events.mjs +106 -0
  201. package/esm/components/DayView/get-day-view-events/get-day-positioned-events.mjs.map +1 -0
  202. package/esm/components/DayView/get-day-view-events/get-day-view-events.mjs +46 -0
  203. package/esm/components/DayView/get-day-view-events/get-day-view-events.mjs.map +1 -0
  204. package/esm/components/DragContext/DragContext.mjs +7 -0
  205. package/esm/components/DragContext/DragContext.mjs.map +1 -0
  206. package/esm/components/MobileMonthView/MobileMonthView.mjs +288 -0
  207. package/esm/components/MobileMonthView/MobileMonthView.mjs.map +1 -0
  208. package/esm/components/MobileMonthView/MobileMonthView.module.css.mjs +5 -0
  209. package/esm/components/MobileMonthView/MobileMonthView.module.css.mjs.map +1 -0
  210. package/esm/components/MobileMonthView/get-mobile-month-view-events.mjs +48 -0
  211. package/esm/components/MobileMonthView/get-mobile-month-view-events.mjs.map +1 -0
  212. package/esm/components/MonthView/MonthView.mjs +404 -0
  213. package/esm/components/MonthView/MonthView.mjs.map +1 -0
  214. package/esm/components/MonthView/MonthView.module.css.mjs +5 -0
  215. package/esm/components/MonthView/MonthView.module.css.mjs.map +1 -0
  216. package/esm/components/MonthView/get-month-view-events/add-event-to-day-groups.mjs +24 -0
  217. package/esm/components/MonthView/get-month-view-events/add-event-to-day-groups.mjs.map +1 -0
  218. package/esm/components/MonthView/get-month-view-events/calculate-event-position-in-week.mjs +35 -0
  219. package/esm/components/MonthView/get-month-view-events/calculate-event-position-in-week.mjs.map +1 -0
  220. package/esm/components/MonthView/get-month-view-events/find-available-row.mjs +25 -0
  221. package/esm/components/MonthView/get-month-view-events/find-available-row.mjs.map +1 -0
  222. package/esm/components/MonthView/get-month-view-events/get-month-positioned-events.mjs +77 -0
  223. package/esm/components/MonthView/get-month-view-events/get-month-positioned-events.mjs.map +1 -0
  224. package/esm/components/MonthView/get-month-view-events/get-month-view-events.mjs +40 -0
  225. package/esm/components/MonthView/get-month-view-events/get-month-view-events.mjs.map +1 -0
  226. package/esm/components/MonthView/get-month-view-events/get-weeks-in-range.mjs +34 -0
  227. package/esm/components/MonthView/get-month-view-events/get-weeks-in-range.mjs.map +1 -0
  228. package/esm/components/MonthView/handle-month-view-key-down.mjs +145 -0
  229. package/esm/components/MonthView/handle-month-view-key-down.mjs.map +1 -0
  230. package/esm/components/MoreEvents/MoreEvents.mjs +122 -0
  231. package/esm/components/MoreEvents/MoreEvents.mjs.map +1 -0
  232. package/esm/components/MoreEvents/MoreEvents.module.css.mjs +5 -0
  233. package/esm/components/MoreEvents/MoreEvents.module.css.mjs.map +1 -0
  234. package/esm/components/Schedule/Schedule.mjs +166 -0
  235. package/esm/components/Schedule/Schedule.mjs.map +1 -0
  236. package/esm/components/Schedule/Schedule.module.css.mjs +5 -0
  237. package/esm/components/Schedule/Schedule.module.css.mjs.map +1 -0
  238. package/esm/components/ScheduleEvent/ScheduleEvent.mjs +124 -0
  239. package/esm/components/ScheduleEvent/ScheduleEvent.mjs.map +1 -0
  240. package/esm/components/ScheduleEvent/ScheduleEvent.module.css.mjs +5 -0
  241. package/esm/components/ScheduleEvent/ScheduleEvent.module.css.mjs.map +1 -0
  242. package/esm/components/ScheduleHeader/HeaderControl/HeaderControl.mjs +86 -0
  243. package/esm/components/ScheduleHeader/HeaderControl/HeaderControl.mjs.map +1 -0
  244. package/esm/components/ScheduleHeader/HeaderControl/HeaderControl.module.css.mjs +5 -0
  245. package/esm/components/ScheduleHeader/HeaderControl/HeaderControl.module.css.mjs.map +1 -0
  246. package/esm/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.mjs +193 -0
  247. package/esm/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.mjs.map +1 -0
  248. package/esm/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.module.css.mjs +5 -0
  249. package/esm/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.module.css.mjs.map +1 -0
  250. package/esm/components/ScheduleHeader/ScheduleHeader.mjs +57 -0
  251. package/esm/components/ScheduleHeader/ScheduleHeader.mjs.map +1 -0
  252. package/esm/components/ScheduleHeader/ScheduleHeader.module.css.mjs +5 -0
  253. package/esm/components/ScheduleHeader/ScheduleHeader.module.css.mjs.map +1 -0
  254. package/esm/components/ScheduleHeader/ScheduleHeaderBase.mjs +84 -0
  255. package/esm/components/ScheduleHeader/ScheduleHeaderBase.mjs.map +1 -0
  256. package/esm/components/ScheduleHeader/ViewSelect/ViewSelect.mjs +129 -0
  257. package/esm/components/ScheduleHeader/ViewSelect/ViewSelect.mjs.map +1 -0
  258. package/esm/components/ScheduleHeader/ViewSelect/ViewSelect.module.css.mjs +5 -0
  259. package/esm/components/ScheduleHeader/ViewSelect/ViewSelect.module.css.mjs.map +1 -0
  260. package/esm/components/WeekView/WeekView.mjs +551 -0
  261. package/esm/components/WeekView/WeekView.mjs.map +1 -0
  262. package/esm/components/WeekView/WeekView.module.css.mjs +5 -0
  263. package/esm/components/WeekView/WeekView.module.css.mjs.map +1 -0
  264. package/esm/components/WeekView/WeekViewDay.mjs +94 -0
  265. package/esm/components/WeekView/WeekViewDay.mjs.map +1 -0
  266. package/esm/components/WeekView/get-week-label/get-week-label.mjs +30 -0
  267. package/esm/components/WeekView/get-week-label/get-week-label.mjs.map +1 -0
  268. package/esm/components/WeekView/get-week-view-events/assign-event-rows.mjs +29 -0
  269. package/esm/components/WeekView/get-week-view-events/assign-event-rows.mjs.map +1 -0
  270. package/esm/components/WeekView/get-week-view-events/calculate-all-day-event-offset.mjs +25 -0
  271. package/esm/components/WeekView/get-week-view-events/calculate-all-day-event-offset.mjs.map +1 -0
  272. package/esm/components/WeekView/get-week-view-events/calculate-all-day-event-width.mjs +27 -0
  273. package/esm/components/WeekView/get-week-view-events/calculate-all-day-event-width.mjs.map +1 -0
  274. package/esm/components/WeekView/get-week-view-events/calculate-event-days.mjs +13 -0
  275. package/esm/components/WeekView/get-week-view-events/calculate-event-days.mjs.map +1 -0
  276. package/esm/components/WeekView/get-week-view-events/calculate-regular-event-overlaps.mjs +22 -0
  277. package/esm/components/WeekView/get-week-view-events/calculate-regular-event-overlaps.mjs.map +1 -0
  278. package/esm/components/WeekView/get-week-view-events/filter-week-view-events.mjs +34 -0
  279. package/esm/components/WeekView/get-week-view-events/filter-week-view-events.mjs.map +1 -0
  280. package/esm/components/WeekView/get-week-view-events/find-available-column.mjs +40 -0
  281. package/esm/components/WeekView/get-week-view-events/find-available-column.mjs.map +1 -0
  282. package/esm/components/WeekView/get-week-view-events/get-event-end-date.mjs +13 -0
  283. package/esm/components/WeekView/get-week-view-events/get-event-end-date.mjs.map +1 -0
  284. package/esm/components/WeekView/get-week-view-events/get-hanging-status.mjs +26 -0
  285. package/esm/components/WeekView/get-week-view-events/get-hanging-status.mjs.map +1 -0
  286. package/esm/components/WeekView/get-week-view-events/get-week-positioned-events.mjs +136 -0
  287. package/esm/components/WeekView/get-week-view-events/get-week-positioned-events.mjs.map +1 -0
  288. package/esm/components/WeekView/get-week-view-events/get-week-view-events.mjs +10 -0
  289. package/esm/components/WeekView/get-week-view-events/get-week-view-events.mjs.map +1 -0
  290. package/esm/components/WeekView/handle-week-view-key-down.mjs +133 -0
  291. package/esm/components/WeekView/handle-week-view-key-down.mjs.map +1 -0
  292. package/esm/components/YearView/YearView.mjs +210 -0
  293. package/esm/components/YearView/YearView.mjs.map +1 -0
  294. package/esm/components/YearView/YearView.module.css.mjs +5 -0
  295. package/esm/components/YearView/YearView.module.css.mjs.map +1 -0
  296. package/esm/components/YearView/YearViewMonth.mjs +152 -0
  297. package/esm/components/YearView/YearViewMonth.mjs.map +1 -0
  298. package/esm/components/YearView/get-year-view-events/get-year-view-events.mjs +46 -0
  299. package/esm/components/YearView/get-year-view-events/get-year-view-events.mjs.map +1 -0
  300. package/esm/components/YearView/handle-year-view-key-down.mjs +208 -0
  301. package/esm/components/YearView/handle-year-view-key-down.mjs.map +1 -0
  302. package/esm/hooks/use-drag-drop-handlers.mjs +101 -0
  303. package/esm/hooks/use-drag-drop-handlers.mjs.map +1 -0
  304. package/esm/hooks/use-drag-state.mjs +45 -0
  305. package/esm/hooks/use-drag-state.mjs.map +1 -0
  306. package/esm/hooks/use-slot-drag-select.mjs +89 -0
  307. package/esm/hooks/use-slot-drag-select.mjs.map +1 -0
  308. package/esm/index.mjs +48 -0
  309. package/esm/index.mjs.map +1 -0
  310. package/esm/labels.mjs +31 -0
  311. package/esm/labels.mjs.map +1 -0
  312. package/esm/utils/calculate-drop-time/calculate-drop-time.mjs +32 -0
  313. package/esm/utils/calculate-drop-time/calculate-drop-time.mjs.map +1 -0
  314. package/esm/utils/calculate-month-drop-date/calculate-month-drop-date.mjs +20 -0
  315. package/esm/utils/calculate-month-drop-date/calculate-month-drop-date.mjs.map +1 -0
  316. package/esm/utils/clamp-interval-minutes/clamp-interval-minutes.mjs +9 -0
  317. package/esm/utils/clamp-interval-minutes/clamp-interval-minutes.mjs.map +1 -0
  318. package/esm/utils/format-date/format-date.mjs +12 -0
  319. package/esm/utils/format-date/format-date.mjs.map +1 -0
  320. package/esm/utils/get-business-hours-mod/get-business-hours-mod.mjs +22 -0
  321. package/esm/utils/get-business-hours-mod/get-business-hours-mod.mjs.map +1 -0
  322. package/esm/utils/get-current-time-position/get-current-time-position.mjs +22 -0
  323. package/esm/utils/get-current-time-position/get-current-time-position.mjs.map +1 -0
  324. package/esm/utils/get-day-position/get-day-position.mjs +31 -0
  325. package/esm/utils/get-day-position/get-day-position.mjs.map +1 -0
  326. package/esm/utils/get-day-time-intervals/get-day-time-intervals.mjs +45 -0
  327. package/esm/utils/get-day-time-intervals/get-day-time-intervals.mjs.map +1 -0
  328. package/esm/utils/get-end-of-week/get-end-of-week.mjs +17 -0
  329. package/esm/utils/get-end-of-week/get-end-of-week.mjs.map +1 -0
  330. package/esm/utils/get-month-days/get-month-days.mjs +43 -0
  331. package/esm/utils/get-month-days/get-month-days.mjs.map +1 -0
  332. package/esm/utils/get-month-range/get-month-range.mjs +26 -0
  333. package/esm/utils/get-month-range/get-month-range.mjs.map +1 -0
  334. package/esm/utils/get-months-by-quarter/get-months-by-quarter.mjs +18 -0
  335. package/esm/utils/get-months-by-quarter/get-months-by-quarter.mjs.map +1 -0
  336. package/esm/utils/get-months-list/get-months-list.mjs +15 -0
  337. package/esm/utils/get-months-list/get-months-list.mjs.map +1 -0
  338. package/esm/utils/get-start-of-week/get-start-of-week.mjs +13 -0
  339. package/esm/utils/get-start-of-week/get-start-of-week.mjs.map +1 -0
  340. package/esm/utils/get-visible-events/get-visible-events.mjs +16 -0
  341. package/esm/utils/get-visible-events/get-visible-events.mjs.map +1 -0
  342. package/esm/utils/get-week-days/get-week-days.mjs +26 -0
  343. package/esm/utils/get-week-days/get-week-days.mjs.map +1 -0
  344. package/esm/utils/get-week-number/get-week-number.mjs +15 -0
  345. package/esm/utils/get-week-number/get-week-number.mjs.map +1 -0
  346. package/esm/utils/get-weekdays-names/get-weekdays-names.mjs +19 -0
  347. package/esm/utils/get-weekdays-names/get-weekdays-names.mjs.map +1 -0
  348. package/esm/utils/get-years-list/get-years-list.mjs +11 -0
  349. package/esm/utils/get-years-list/get-years-list.mjs.map +1 -0
  350. package/esm/utils/is-after-min-date/is-after-min-date.mjs +9 -0
  351. package/esm/utils/is-after-min-date/is-after-min-date.mjs.map +1 -0
  352. package/esm/utils/is-all-day-event/is-all-day-event.mjs +13 -0
  353. package/esm/utils/is-all-day-event/is-all-day-event.mjs.map +1 -0
  354. package/esm/utils/is-before-max-date/is-before-max-date.mjs +9 -0
  355. package/esm/utils/is-before-max-date/is-before-max-date.mjs.map +1 -0
  356. package/esm/utils/is-event-in-time-range/is-event-in-time-range.mjs +24 -0
  357. package/esm/utils/is-event-in-time-range/is-event-in-time-range.mjs.map +1 -0
  358. package/esm/utils/is-events-overlap/is-events-overlap.mjs +13 -0
  359. package/esm/utils/is-events-overlap/is-events-overlap.mjs.map +1 -0
  360. package/esm/utils/is-in-time-range/is-in-time-range.mjs +19 -0
  361. package/esm/utils/is-in-time-range/is-in-time-range.mjs.map +1 -0
  362. package/esm/utils/is-multiday-event/is-multiday-event.mjs +11 -0
  363. package/esm/utils/is-multiday-event/is-multiday-event.mjs.map +1 -0
  364. package/esm/utils/is-same-month/is-same-month.mjs +9 -0
  365. package/esm/utils/is-same-month/is-same-month.mjs.map +1 -0
  366. package/esm/utils/is-within-week/is-within-week.mjs +12 -0
  367. package/esm/utils/is-within-week/is-within-week.mjs.map +1 -0
  368. package/esm/utils/next-week/next-week.mjs +12 -0
  369. package/esm/utils/next-week/next-week.mjs.map +1 -0
  370. package/esm/utils/parse-time-string/parse-time-string.mjs +8 -0
  371. package/esm/utils/parse-time-string/parse-time-string.mjs.map +1 -0
  372. package/esm/utils/previous-week/previous-week.mjs +12 -0
  373. package/esm/utils/previous-week/previous-week.mjs.map +1 -0
  374. package/esm/utils/sort-events/sort-events.mjs +15 -0
  375. package/esm/utils/sort-events/sort-events.mjs.map +1 -0
  376. package/esm/utils/to-date-string/to-date-string.mjs +9 -0
  377. package/esm/utils/to-date-string/to-date-string.mjs.map +1 -0
  378. package/esm/utils/to-time-string/to-time-string.mjs +7 -0
  379. package/esm/utils/to-time-string/to-time-string.mjs.map +1 -0
  380. package/esm/utils/validate-event/validate-event.mjs +20 -0
  381. package/esm/utils/validate-event/validate-event.mjs.map +1 -0
  382. package/lib/components/CurrentTimeIndicator/CurrentTimeIndicator.d.ts +43 -0
  383. package/lib/components/CurrentTimeIndicator/index.d.ts +2 -0
  384. package/lib/components/DayView/DayView.d.ts +106 -0
  385. package/lib/components/DayView/get-day-view-events/get-day-positioned-events.d.ts +13 -0
  386. package/lib/components/DayView/get-day-view-events/get-day-view-events.d.ts +12 -0
  387. package/lib/components/DayView/index.d.ts +9 -0
  388. package/lib/components/DragContext/DragContext.d.ts +18 -0
  389. package/lib/components/DragContext/index.d.ts +2 -0
  390. package/lib/components/MobileMonthView/MobileMonthView.d.ts +94 -0
  391. package/lib/components/MobileMonthView/get-mobile-month-view-events.d.ts +8 -0
  392. package/lib/components/MobileMonthView/index.d.ts +2 -0
  393. package/lib/components/MonthView/MonthView.d.ts +103 -0
  394. package/lib/components/MonthView/get-month-view-events/add-event-to-day-groups.d.ts +14 -0
  395. package/lib/components/MonthView/get-month-view-events/calculate-event-position-in-week.d.ts +18 -0
  396. package/lib/components/MonthView/get-month-view-events/find-available-row.d.ts +10 -0
  397. package/lib/components/MonthView/get-month-view-events/get-month-positioned-events.d.ts +27 -0
  398. package/lib/components/MonthView/get-month-view-events/get-month-view-events.d.ts +16 -0
  399. package/lib/components/MonthView/get-month-view-events/get-weeks-in-range.d.ts +15 -0
  400. package/lib/components/MonthView/handle-month-view-key-down.d.ts +10 -0
  401. package/lib/components/MonthView/index.d.ts +9 -0
  402. package/lib/components/MoreEvents/MoreEvents.d.ts +40 -0
  403. package/lib/components/MoreEvents/index.d.ts +2 -0
  404. package/lib/components/Schedule/Schedule.d.ts +97 -0
  405. package/lib/components/Schedule/index.d.ts +2 -0
  406. package/lib/components/ScheduleEvent/ScheduleEvent.d.ts +54 -0
  407. package/lib/components/ScheduleEvent/index.d.ts +2 -0
  408. package/lib/components/ScheduleHeader/HeaderControl/HeaderControl.d.ts +43 -0
  409. package/lib/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.d.ts +52 -0
  410. package/lib/components/ScheduleHeader/ScheduleHeader.d.ts +40 -0
  411. package/lib/components/ScheduleHeader/ScheduleHeaderBase.d.ts +53 -0
  412. package/lib/components/ScheduleHeader/ViewSelect/ViewSelect.d.ts +27 -0
  413. package/lib/components/ScheduleHeader/index.d.ts +2 -0
  414. package/lib/components/WeekView/WeekView.d.ts +119 -0
  415. package/lib/components/WeekView/WeekViewDay.d.ts +58 -0
  416. package/lib/components/WeekView/get-week-label/get-week-label.d.ts +13 -0
  417. package/lib/components/WeekView/get-week-view-events/assign-event-rows.d.ts +2 -0
  418. package/lib/components/WeekView/get-week-view-events/calculate-all-day-event-offset.d.ts +11 -0
  419. package/lib/components/WeekView/get-week-view-events/calculate-all-day-event-width.d.ts +12 -0
  420. package/lib/components/WeekView/get-week-view-events/calculate-event-days.d.ts +9 -0
  421. package/lib/components/WeekView/get-week-view-events/calculate-regular-event-overlaps.d.ts +2 -0
  422. package/lib/components/WeekView/get-week-view-events/filter-week-view-events.d.ts +14 -0
  423. package/lib/components/WeekView/get-week-view-events/find-available-column.d.ts +9 -0
  424. package/lib/components/WeekView/get-week-view-events/get-event-end-date.d.ts +3 -0
  425. package/lib/components/WeekView/get-week-view-events/get-hanging-status.d.ts +9 -0
  426. package/lib/components/WeekView/get-week-view-events/get-week-positioned-events.d.ts +23 -0
  427. package/lib/components/WeekView/get-week-view-events/get-week-view-events.d.ts +7 -0
  428. package/lib/components/WeekView/handle-week-view-key-down.d.ts +10 -0
  429. package/lib/components/WeekView/index.d.ts +9 -0
  430. package/lib/components/YearView/YearView.d.ts +51 -0
  431. package/lib/components/YearView/YearViewMonth.d.ts +62 -0
  432. package/lib/components/YearView/get-year-view-events/get-year-view-events.d.ts +8 -0
  433. package/lib/components/YearView/handle-year-view-key-down.d.ts +11 -0
  434. package/lib/components/YearView/index.d.ts +9 -0
  435. package/lib/hooks/index.d.ts +5 -0
  436. package/lib/hooks/use-drag-drop-handlers.d.ts +51 -0
  437. package/lib/hooks/use-drag-state.d.ts +32 -0
  438. package/lib/hooks/use-slot-drag-select.d.ts +10 -0
  439. package/lib/index.d.mts +15 -0
  440. package/lib/index.d.ts +15 -0
  441. package/lib/labels.d.ts +24 -0
  442. package/lib/test-utils.d.ts +7 -0
  443. package/lib/types.d.ts +91 -0
  444. package/lib/utils/calculate-drop-time/calculate-drop-time.d.ts +22 -0
  445. package/lib/utils/calculate-month-drop-date/calculate-month-drop-date.d.ts +14 -0
  446. package/lib/utils/clamp-interval-minutes/clamp-interval-minutes.d.ts +2 -0
  447. package/lib/utils/format-date/format-date.d.ts +8 -0
  448. package/lib/utils/get-business-hours-mod/get-business-hours-mod.d.ts +17 -0
  449. package/lib/utils/get-current-time-position/get-current-time-position.d.ts +6 -0
  450. package/lib/utils/get-day-position/get-day-position.d.ts +15 -0
  451. package/lib/utils/get-day-time-intervals/get-day-time-intervals.d.ts +19 -0
  452. package/lib/utils/get-end-of-week/get-end-of-week.d.ts +3 -0
  453. package/lib/utils/get-month-days/get-month-days.d.ts +8 -0
  454. package/lib/utils/get-month-range/get-month-range.d.ts +13 -0
  455. package/lib/utils/get-months-by-quarter/get-months-by-quarter.d.ts +2 -0
  456. package/lib/utils/get-months-list/get-months-list.d.ts +11 -0
  457. package/lib/utils/get-start-of-week/get-start-of-week.d.ts +7 -0
  458. package/lib/utils/get-visible-events/get-visible-events.d.ts +9 -0
  459. package/lib/utils/get-week-days/get-week-days.d.ts +13 -0
  460. package/lib/utils/get-week-number/get-week-number.d.ts +2 -0
  461. package/lib/utils/get-weekdays-names/get-weekdays-names.d.ts +8 -0
  462. package/lib/utils/get-years-list/get-years-list.d.ts +6 -0
  463. package/lib/utils/index.d.ts +40 -0
  464. package/lib/utils/is-after-min-date/is-after-min-date.d.ts +2 -0
  465. package/lib/utils/is-all-day-event/is-all-day-event.d.ts +7 -0
  466. package/lib/utils/is-before-max-date/is-before-max-date.d.ts +2 -0
  467. package/lib/utils/is-event-in-time-range/is-event-in-time-range.d.ts +8 -0
  468. package/lib/utils/is-events-overlap/is-events-overlap.d.ts +3 -0
  469. package/lib/utils/is-in-time-range/is-in-time-range.d.ts +9 -0
  470. package/lib/utils/is-multiday-event/is-multiday-event.d.ts +2 -0
  471. package/lib/utils/is-same-month/is-same-month.d.ts +2 -0
  472. package/lib/utils/is-within-week/is-within-week.d.ts +8 -0
  473. package/lib/utils/next-week/next-week.d.ts +2 -0
  474. package/lib/utils/parse-time-string/parse-time-string.d.ts +6 -0
  475. package/lib/utils/previous-week/previous-week.d.ts +2 -0
  476. package/lib/utils/sort-events/sort-events.d.ts +3 -0
  477. package/lib/utils/to-date-string/to-date-string.d.ts +2 -0
  478. package/lib/utils/to-time-string/to-time-string.d.ts +2 -0
  479. package/lib/utils/validate-event/validate-event.d.ts +2 -0
  480. package/package.json +50 -0
  481. package/styles.css +1948 -0
  482. 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,9 @@
1
+ 'use client';
2
+ import dayjs from 'dayjs';
3
+
4
+ function isAfterMinDate(date, minDate) {
5
+ return minDate ? dayjs(date).isAfter(dayjs(minDate).subtract(1, "day"), "day") : true;
6
+ }
7
+
8
+ export { isAfterMinDate };
9
+ //# sourceMappingURL=is-after-min-date.mjs.map
@@ -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,9 @@
1
+ 'use client';
2
+ import dayjs from 'dayjs';
3
+
4
+ function isBeforeMaxDate(date, maxDate) {
5
+ return maxDate ? dayjs(date).isBefore(dayjs(maxDate).add(1, "day"), "day") : true;
6
+ }
7
+
8
+ export { isBeforeMaxDate };
9
+ //# sourceMappingURL=is-before-max-date.mjs.map
@@ -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":"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"}
@@ -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,9 @@
1
+ 'use client';
2
+ import dayjs from 'dayjs';
3
+
4
+ function isSameMonth(date, comparison) {
5
+ return dayjs(date).format("YYYY-MM") === dayjs(comparison).format("YYYY-MM");
6
+ }
7
+
8
+ export { isSameMonth };
9
+ //# sourceMappingURL=is-same-month.mjs.map
@@ -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,8 @@
1
+ 'use client';
2
+ function parseTimeString(time) {
3
+ const [hours, minutes, seconds] = time.split(":").map(Number);
4
+ return { hours, minutes, seconds: seconds || 0 };
5
+ }
6
+
7
+ export { parseTimeString };
8
+ //# sourceMappingURL=parse-time-string.mjs.map
@@ -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,9 @@
1
+ 'use client';
2
+ import dayjs from 'dayjs';
3
+
4
+ function toDateString(date) {
5
+ return dayjs(date).format("YYYY-MM-DD 00:00:00");
6
+ }
7
+
8
+ export { toDateString };
9
+ //# sourceMappingURL=to-date-string.mjs.map
@@ -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,7 @@
1
+ 'use client';
2
+ function toTimeString({ hours, minutes, seconds }) {
3
+ return `${String(hours).padStart(2, "0")}:${String(minutes).padStart(2, "0")}:${String(seconds).padStart(2, "0")}`;
4
+ }
5
+
6
+ export { toTimeString };
7
+ //# sourceMappingURL=to-time-string.mjs.map
@@ -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,2 @@
1
+ export { CurrentTimeIndicator } from './CurrentTimeIndicator';
2
+ export type { CurrentTimeIndicatorProps, CurrentTimeIndicatorFactory, CurrentTimeIndicatorStylesNames, CurrentTimeIndicatorCssVariables, } from './CurrentTimeIndicator';
@@ -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
+ }