@mantine/schedule 9.3.1 → 9.4.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 (296) hide show
  1. package/cjs/components/AgendaView/AgendaView.cjs +133 -0
  2. package/cjs/components/AgendaView/AgendaView.cjs.map +1 -0
  3. package/cjs/components/AgendaView/AgendaView.module.cjs +19 -0
  4. package/cjs/components/AgendaView/AgendaView.module.cjs.map +1 -0
  5. package/cjs/components/AgendaView/get-agenda-view-events.cjs +48 -0
  6. package/cjs/components/AgendaView/get-agenda-view-events.cjs.map +1 -0
  7. package/cjs/components/CurrentTimeIndicator/CurrentTimeIndicator.cjs.map +1 -1
  8. package/cjs/components/DayView/DayView.cjs +128 -106
  9. package/cjs/components/DayView/DayView.cjs.map +1 -1
  10. package/cjs/components/DayView/DayView.module.cjs.map +1 -1
  11. package/cjs/components/DayView/get-day-view-events/get-day-positioned-events.cjs.map +1 -1
  12. package/cjs/components/DayView/get-day-view-events/get-day-view-events.cjs.map +1 -1
  13. package/cjs/components/DragContext/DragContext.cjs.map +1 -1
  14. package/cjs/components/MobileMonthView/MobileMonthView.cjs.map +1 -1
  15. package/cjs/components/MobileMonthView/get-mobile-month-view-events.cjs.map +1 -1
  16. package/cjs/components/MonthView/MonthView.cjs +114 -64
  17. package/cjs/components/MonthView/MonthView.cjs.map +1 -1
  18. package/cjs/components/MonthView/MonthView.module.cjs.map +1 -1
  19. package/cjs/components/MonthView/get-month-view-events/add-event-to-day-groups.cjs.map +1 -1
  20. package/cjs/components/MonthView/get-month-view-events/find-available-row.cjs.map +1 -1
  21. package/cjs/components/MonthView/get-month-view-events/get-month-positioned-events.cjs.map +1 -1
  22. package/cjs/components/MonthView/get-month-view-events/get-month-view-events.cjs.map +1 -1
  23. package/cjs/components/MonthView/get-month-view-events/get-weeks-in-range.cjs.map +1 -1
  24. package/cjs/components/MonthView/get-renderable-month-event-segments.cjs +17 -15
  25. package/cjs/components/MonthView/get-renderable-month-event-segments.cjs.map +1 -1
  26. package/cjs/components/MonthView/get-visible-columns.cjs +54 -0
  27. package/cjs/components/MonthView/get-visible-columns.cjs.map +1 -0
  28. package/cjs/components/MonthView/handle-month-view-key-down.cjs.map +1 -1
  29. package/cjs/components/MoreEvents/MoreEvents.cjs.map +1 -1
  30. package/cjs/components/ResourcesDayView/ResourcesDayView.cjs +578 -0
  31. package/cjs/components/ResourcesDayView/ResourcesDayView.cjs.map +1 -0
  32. package/cjs/components/ResourcesDayView/ResourcesDayView.module.cjs +29 -0
  33. package/cjs/components/ResourcesDayView/ResourcesDayView.module.cjs.map +1 -0
  34. package/cjs/components/ResourcesDayView/ResourcesDayViewColumn.cjs +89 -0
  35. package/cjs/components/ResourcesDayView/ResourcesDayViewColumn.cjs.map +1 -0
  36. package/cjs/components/ResourcesDayView/get-overlap-clusters/get-overlap-clusters.cjs +26 -0
  37. package/cjs/components/ResourcesDayView/get-overlap-clusters/get-overlap-clusters.cjs.map +1 -0
  38. package/cjs/components/ResourcesDayView/get-resources-day-view-events/get-resources-day-view-events.cjs +115 -0
  39. package/cjs/components/ResourcesDayView/get-resources-day-view-events/get-resources-day-view-events.cjs.map +1 -0
  40. package/cjs/components/ResourcesMonthView/ResourcesMonthView.cjs +602 -0
  41. package/cjs/components/ResourcesMonthView/ResourcesMonthView.cjs.map +1 -0
  42. package/cjs/components/ResourcesMonthView/ResourcesMonthView.module.cjs +23 -0
  43. package/cjs/components/ResourcesMonthView/ResourcesMonthView.module.cjs.map +1 -0
  44. package/cjs/components/ResourcesSchedule/ResourcesSchedule.cjs +102 -0
  45. package/cjs/components/ResourcesSchedule/ResourcesSchedule.cjs.map +1 -0
  46. package/cjs/components/ResourcesSchedule/ResourcesSchedule.module.cjs +7 -0
  47. package/cjs/components/ResourcesSchedule/ResourcesSchedule.module.cjs.map +1 -0
  48. package/cjs/components/ResourcesWeekView/ResourcesWeekView.cjs +610 -0
  49. package/cjs/components/ResourcesWeekView/ResourcesWeekView.cjs.map +1 -0
  50. package/cjs/components/ResourcesWeekView/ResourcesWeekView.module.cjs +33 -0
  51. package/cjs/components/ResourcesWeekView/ResourcesWeekView.module.cjs.map +1 -0
  52. package/cjs/components/ResourcesWeekView/ResourcesWeekViewRow.cjs +90 -0
  53. package/cjs/components/ResourcesWeekView/ResourcesWeekViewRow.cjs.map +1 -0
  54. package/cjs/components/ResourcesWeekView/get-resources-week-view-events/get-resources-week-view-events.cjs +97 -0
  55. package/cjs/components/ResourcesWeekView/get-resources-week-view-events/get-resources-week-view-events.cjs.map +1 -0
  56. package/cjs/components/Schedule/Schedule.cjs +3 -2
  57. package/cjs/components/Schedule/Schedule.cjs.map +1 -1
  58. package/cjs/components/ScheduleEvent/ScheduleEvent.cjs +1 -1
  59. package/cjs/components/ScheduleEvent/ScheduleEvent.cjs.map +1 -1
  60. package/cjs/components/ScheduleHeader/HeaderControl/HeaderControl.cjs.map +1 -1
  61. package/cjs/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.cjs.map +1 -1
  62. package/cjs/components/ScheduleHeader/ScheduleHeader.cjs.map +1 -1
  63. package/cjs/components/ScheduleHeader/ScheduleHeader.module.cjs +2 -0
  64. package/cjs/components/ScheduleHeader/ScheduleHeader.module.cjs.map +1 -1
  65. package/cjs/components/ScheduleHeader/ScheduleHeaderBase.cjs +29 -11
  66. package/cjs/components/ScheduleHeader/ScheduleHeaderBase.cjs.map +1 -1
  67. package/cjs/components/ScheduleHeader/ScheduleHeaderContext.cjs.map +1 -1
  68. package/cjs/components/ScheduleHeader/ViewSelect/ViewSelect.cjs.map +1 -1
  69. package/cjs/components/WeekView/WeekView.cjs +128 -102
  70. package/cjs/components/WeekView/WeekView.cjs.map +1 -1
  71. package/cjs/components/WeekView/WeekView.module.cjs.map +1 -1
  72. package/cjs/components/WeekView/WeekViewDay.cjs +3 -1
  73. package/cjs/components/WeekView/WeekViewDay.cjs.map +1 -1
  74. package/cjs/components/WeekView/get-week-label/get-week-label.cjs.map +1 -1
  75. package/cjs/components/WeekView/get-week-view-events/calculate-all-day-event-offset.cjs.map +1 -1
  76. package/cjs/components/WeekView/get-week-view-events/calculate-all-day-event-width.cjs.map +1 -1
  77. package/cjs/components/WeekView/get-week-view-events/calculate-event-days.cjs.map +1 -1
  78. package/cjs/components/WeekView/get-week-view-events/find-available-column.cjs.map +1 -1
  79. package/cjs/components/WeekView/get-week-view-events/get-event-end-date.cjs.map +1 -1
  80. package/cjs/components/WeekView/get-week-view-events/get-hanging-status.cjs.map +1 -1
  81. package/cjs/components/WeekView/get-week-view-events/get-week-positioned-events.cjs.map +1 -1
  82. package/cjs/components/WeekView/handle-week-view-key-down.cjs.map +1 -1
  83. package/cjs/components/YearView/YearView.cjs.map +1 -1
  84. package/cjs/components/YearView/YearViewMonth.cjs.map +1 -1
  85. package/cjs/components/YearView/get-year-view-events/get-year-view-events.cjs.map +1 -1
  86. package/cjs/components/YearView/handle-year-view-key-down.cjs.map +1 -1
  87. package/cjs/hooks/use-auto-scroll-on-drag.cjs.map +1 -1
  88. package/cjs/hooks/use-drag-drop-handlers.cjs.map +1 -1
  89. package/cjs/hooks/use-drag-state.cjs.map +1 -1
  90. package/cjs/hooks/use-event-resize.cjs.map +1 -1
  91. package/cjs/hooks/use-horizontal-event-resize.cjs +153 -0
  92. package/cjs/hooks/use-horizontal-event-resize.cjs.map +1 -0
  93. package/cjs/hooks/use-slot-drag-select.cjs.map +1 -1
  94. package/cjs/index.cjs +18 -0
  95. package/cjs/labels.cjs +5 -1
  96. package/cjs/labels.cjs.map +1 -1
  97. package/cjs/utils/calculate-drop-time/calculate-drop-time.cjs.map +1 -1
  98. package/cjs/utils/calculate-month-drop-date/calculate-month-drop-date.cjs.map +1 -1
  99. package/cjs/utils/expand-recurring-events/expand-recurring-events.cjs.map +1 -1
  100. package/cjs/utils/format-date/format-date.cjs.map +1 -1
  101. package/cjs/utils/get-current-time-position/get-current-time-position.cjs.map +1 -1
  102. package/cjs/utils/get-day-position/get-day-position.cjs.map +1 -1
  103. package/cjs/utils/get-end-of-week/get-end-of-week.cjs.map +1 -1
  104. package/cjs/utils/get-group-to-resource-id-map/get-group-to-resource-id-map.cjs +12 -0
  105. package/cjs/utils/get-group-to-resource-id-map/get-group-to-resource-id-map.cjs.map +1 -0
  106. package/cjs/utils/get-index-from-drag-point/get-index-from-drag-point.cjs +27 -0
  107. package/cjs/utils/get-index-from-drag-point/get-index-from-drag-point.cjs.map +1 -0
  108. package/cjs/utils/get-month-days/get-month-days.cjs.map +1 -1
  109. package/cjs/utils/get-month-range/get-month-range.cjs.map +1 -1
  110. package/cjs/utils/get-months-by-quarter/get-months-by-quarter.cjs.map +1 -1
  111. package/cjs/utils/get-months-list/get-months-list.cjs.map +1 -1
  112. package/cjs/utils/get-ordered-resources/get-ordered-resources.cjs +54 -0
  113. package/cjs/utils/get-ordered-resources/get-ordered-resources.cjs.map +1 -0
  114. package/cjs/utils/get-start-of-week/get-start-of-week.cjs.map +1 -1
  115. package/cjs/utils/get-week-days/get-week-days.cjs.map +1 -1
  116. package/cjs/utils/get-week-number/get-week-number.cjs.map +1 -1
  117. package/cjs/utils/get-weekdays-names/get-weekdays-names.cjs.map +1 -1
  118. package/cjs/utils/handle-resources-grid-key-down/handle-resources-grid-key-down.cjs +88 -0
  119. package/cjs/utils/handle-resources-grid-key-down/handle-resources-grid-key-down.cjs.map +1 -0
  120. package/cjs/utils/is-after-min-date/is-after-min-date.cjs.map +1 -1
  121. package/cjs/utils/is-all-day-event/is-all-day-event.cjs.map +1 -1
  122. package/cjs/utils/is-before-max-date/is-before-max-date.cjs.map +1 -1
  123. package/cjs/utils/is-event-in-time-range/is-event-in-time-range.cjs.map +1 -1
  124. package/cjs/utils/is-events-overlap/is-events-overlap.cjs.map +1 -1
  125. package/cjs/utils/is-in-time-range/is-in-time-range.cjs.map +1 -1
  126. package/cjs/utils/is-multiday-event/is-multiday-event.cjs.map +1 -1
  127. package/cjs/utils/is-same-month/is-same-month.cjs.map +1 -1
  128. package/cjs/utils/is-within-week/is-within-week.cjs.map +1 -1
  129. package/cjs/utils/next-week/next-week.cjs.map +1 -1
  130. package/cjs/utils/parse-time-string/parse-time-string.cjs.map +1 -1
  131. package/cjs/utils/previous-week/previous-week.cjs.map +1 -1
  132. package/cjs/utils/sort-events/sort-events.cjs.map +1 -1
  133. package/cjs/utils/to-date-string/to-date-string.cjs.map +1 -1
  134. package/cjs/utils/to-time-string/to-time-string.cjs.map +1 -1
  135. package/cjs/utils/validate-event/validate-event.cjs.map +1 -1
  136. package/esm/components/AgendaView/AgendaView.mjs +130 -0
  137. package/esm/components/AgendaView/AgendaView.mjs.map +1 -0
  138. package/esm/components/AgendaView/AgendaView.module.mjs +19 -0
  139. package/esm/components/AgendaView/AgendaView.module.mjs.map +1 -0
  140. package/esm/components/AgendaView/get-agenda-view-events.mjs +46 -0
  141. package/esm/components/AgendaView/get-agenda-view-events.mjs.map +1 -0
  142. package/esm/components/CurrentTimeIndicator/CurrentTimeIndicator.mjs.map +1 -1
  143. package/esm/components/DayView/DayView.mjs +129 -107
  144. package/esm/components/DayView/DayView.mjs.map +1 -1
  145. package/esm/components/DayView/DayView.module.mjs.map +1 -1
  146. package/esm/components/DayView/get-day-view-events/get-day-positioned-events.mjs.map +1 -1
  147. package/esm/components/DayView/get-day-view-events/get-day-view-events.mjs.map +1 -1
  148. package/esm/components/MobileMonthView/MobileMonthView.mjs.map +1 -1
  149. package/esm/components/MobileMonthView/get-mobile-month-view-events.mjs.map +1 -1
  150. package/esm/components/MonthView/MonthView.mjs +115 -65
  151. package/esm/components/MonthView/MonthView.mjs.map +1 -1
  152. package/esm/components/MonthView/MonthView.module.mjs.map +1 -1
  153. package/esm/components/MonthView/get-month-view-events/add-event-to-day-groups.mjs.map +1 -1
  154. package/esm/components/MonthView/get-month-view-events/find-available-row.mjs.map +1 -1
  155. package/esm/components/MonthView/get-month-view-events/get-month-positioned-events.mjs.map +1 -1
  156. package/esm/components/MonthView/get-month-view-events/get-month-view-events.mjs.map +1 -1
  157. package/esm/components/MonthView/get-renderable-month-event-segments.mjs +17 -15
  158. package/esm/components/MonthView/get-renderable-month-event-segments.mjs.map +1 -1
  159. package/esm/components/MonthView/get-visible-columns.mjs +53 -0
  160. package/esm/components/MonthView/get-visible-columns.mjs.map +1 -0
  161. package/esm/components/MonthView/handle-month-view-key-down.mjs.map +1 -1
  162. package/esm/components/MoreEvents/MoreEvents.mjs.map +1 -1
  163. package/esm/components/ResourcesDayView/ResourcesDayView.mjs +576 -0
  164. package/esm/components/ResourcesDayView/ResourcesDayView.mjs.map +1 -0
  165. package/esm/components/ResourcesDayView/ResourcesDayView.module.mjs +29 -0
  166. package/esm/components/ResourcesDayView/ResourcesDayView.module.mjs.map +1 -0
  167. package/esm/components/ResourcesDayView/ResourcesDayViewColumn.mjs +89 -0
  168. package/esm/components/ResourcesDayView/ResourcesDayViewColumn.mjs.map +1 -0
  169. package/esm/components/ResourcesDayView/get-overlap-clusters/get-overlap-clusters.mjs +26 -0
  170. package/esm/components/ResourcesDayView/get-overlap-clusters/get-overlap-clusters.mjs.map +1 -0
  171. package/esm/components/ResourcesDayView/get-resources-day-view-events/get-resources-day-view-events.mjs +113 -0
  172. package/esm/components/ResourcesDayView/get-resources-day-view-events/get-resources-day-view-events.mjs.map +1 -0
  173. package/esm/components/ResourcesMonthView/ResourcesMonthView.mjs +600 -0
  174. package/esm/components/ResourcesMonthView/ResourcesMonthView.mjs.map +1 -0
  175. package/esm/components/ResourcesMonthView/ResourcesMonthView.module.mjs +23 -0
  176. package/esm/components/ResourcesMonthView/ResourcesMonthView.module.mjs.map +1 -0
  177. package/esm/components/ResourcesSchedule/ResourcesSchedule.mjs +102 -0
  178. package/esm/components/ResourcesSchedule/ResourcesSchedule.mjs.map +1 -0
  179. package/esm/components/ResourcesSchedule/ResourcesSchedule.module.mjs +7 -0
  180. package/esm/components/ResourcesSchedule/ResourcesSchedule.module.mjs.map +1 -0
  181. package/esm/components/ResourcesWeekView/ResourcesWeekView.mjs +608 -0
  182. package/esm/components/ResourcesWeekView/ResourcesWeekView.mjs.map +1 -0
  183. package/esm/components/ResourcesWeekView/ResourcesWeekView.module.mjs +33 -0
  184. package/esm/components/ResourcesWeekView/ResourcesWeekView.module.mjs.map +1 -0
  185. package/esm/components/ResourcesWeekView/ResourcesWeekViewRow.mjs +90 -0
  186. package/esm/components/ResourcesWeekView/ResourcesWeekViewRow.mjs.map +1 -0
  187. package/esm/components/ResourcesWeekView/get-resources-week-view-events/get-resources-week-view-events.mjs +95 -0
  188. package/esm/components/ResourcesWeekView/get-resources-week-view-events/get-resources-week-view-events.mjs.map +1 -0
  189. package/esm/components/Schedule/Schedule.mjs +3 -2
  190. package/esm/components/Schedule/Schedule.mjs.map +1 -1
  191. package/esm/components/ScheduleEvent/ScheduleEvent.mjs +1 -1
  192. package/esm/components/ScheduleEvent/ScheduleEvent.mjs.map +1 -1
  193. package/esm/components/ScheduleHeader/HeaderControl/HeaderControl.mjs.map +1 -1
  194. package/esm/components/ScheduleHeader/MonthYearSelect/MonthYearSelect.mjs.map +1 -1
  195. package/esm/components/ScheduleHeader/ScheduleHeader.module.mjs +2 -0
  196. package/esm/components/ScheduleHeader/ScheduleHeader.module.mjs.map +1 -1
  197. package/esm/components/ScheduleHeader/ScheduleHeaderBase.mjs +29 -11
  198. package/esm/components/ScheduleHeader/ScheduleHeaderBase.mjs.map +1 -1
  199. package/esm/components/ScheduleHeader/ViewSelect/ViewSelect.mjs.map +1 -1
  200. package/esm/components/WeekView/WeekView.mjs +128 -102
  201. package/esm/components/WeekView/WeekView.mjs.map +1 -1
  202. package/esm/components/WeekView/WeekView.module.mjs.map +1 -1
  203. package/esm/components/WeekView/WeekViewDay.mjs +3 -1
  204. package/esm/components/WeekView/WeekViewDay.mjs.map +1 -1
  205. package/esm/components/WeekView/get-week-label/get-week-label.mjs.map +1 -1
  206. package/esm/components/WeekView/get-week-view-events/calculate-all-day-event-offset.mjs.map +1 -1
  207. package/esm/components/WeekView/get-week-view-events/calculate-all-day-event-width.mjs.map +1 -1
  208. package/esm/components/WeekView/get-week-view-events/calculate-event-days.mjs.map +1 -1
  209. package/esm/components/WeekView/get-week-view-events/find-available-column.mjs.map +1 -1
  210. package/esm/components/WeekView/get-week-view-events/get-event-end-date.mjs.map +1 -1
  211. package/esm/components/WeekView/get-week-view-events/get-week-positioned-events.mjs.map +1 -1
  212. package/esm/components/WeekView/handle-week-view-key-down.mjs.map +1 -1
  213. package/esm/components/YearView/YearView.mjs.map +1 -1
  214. package/esm/components/YearView/YearViewMonth.mjs.map +1 -1
  215. package/esm/components/YearView/get-year-view-events/get-year-view-events.mjs.map +1 -1
  216. package/esm/components/YearView/handle-year-view-key-down.mjs.map +1 -1
  217. package/esm/hooks/use-drag-drop-handlers.mjs.map +1 -1
  218. package/esm/hooks/use-event-resize.mjs.map +1 -1
  219. package/esm/hooks/use-horizontal-event-resize.mjs +151 -0
  220. package/esm/hooks/use-horizontal-event-resize.mjs.map +1 -0
  221. package/esm/index.mjs +10 -1
  222. package/esm/labels.mjs +5 -1
  223. package/esm/labels.mjs.map +1 -1
  224. package/esm/utils/calculate-drop-time/calculate-drop-time.mjs.map +1 -1
  225. package/esm/utils/calculate-month-drop-date/calculate-month-drop-date.mjs.map +1 -1
  226. package/esm/utils/expand-recurring-events/expand-recurring-events.mjs.map +1 -1
  227. package/esm/utils/format-date/format-date.mjs.map +1 -1
  228. package/esm/utils/get-current-time-position/get-current-time-position.mjs.map +1 -1
  229. package/esm/utils/get-day-position/get-day-position.mjs.map +1 -1
  230. package/esm/utils/get-group-to-resource-id-map/get-group-to-resource-id-map.mjs +12 -0
  231. package/esm/utils/get-group-to-resource-id-map/get-group-to-resource-id-map.mjs.map +1 -0
  232. package/esm/utils/get-index-from-drag-point/get-index-from-drag-point.mjs +27 -0
  233. package/esm/utils/get-index-from-drag-point/get-index-from-drag-point.mjs.map +1 -0
  234. package/esm/utils/get-month-days/get-month-days.mjs.map +1 -1
  235. package/esm/utils/get-month-range/get-month-range.mjs.map +1 -1
  236. package/esm/utils/get-months-by-quarter/get-months-by-quarter.mjs.map +1 -1
  237. package/esm/utils/get-months-list/get-months-list.mjs.map +1 -1
  238. package/esm/utils/get-ordered-resources/get-ordered-resources.mjs +54 -0
  239. package/esm/utils/get-ordered-resources/get-ordered-resources.mjs.map +1 -0
  240. package/esm/utils/get-week-number/get-week-number.mjs.map +1 -1
  241. package/esm/utils/get-weekdays-names/get-weekdays-names.mjs.map +1 -1
  242. package/esm/utils/handle-resources-grid-key-down/handle-resources-grid-key-down.mjs +88 -0
  243. package/esm/utils/handle-resources-grid-key-down/handle-resources-grid-key-down.mjs.map +1 -0
  244. package/esm/utils/is-after-min-date/is-after-min-date.mjs.map +1 -1
  245. package/esm/utils/is-all-day-event/is-all-day-event.mjs.map +1 -1
  246. package/esm/utils/is-before-max-date/is-before-max-date.mjs.map +1 -1
  247. package/esm/utils/is-event-in-time-range/is-event-in-time-range.mjs.map +1 -1
  248. package/esm/utils/is-events-overlap/is-events-overlap.mjs.map +1 -1
  249. package/esm/utils/is-in-time-range/is-in-time-range.mjs.map +1 -1
  250. package/esm/utils/is-multiday-event/is-multiday-event.mjs.map +1 -1
  251. package/esm/utils/is-same-month/is-same-month.mjs.map +1 -1
  252. package/esm/utils/is-within-week/is-within-week.mjs.map +1 -1
  253. package/esm/utils/next-week/next-week.mjs.map +1 -1
  254. package/esm/utils/parse-time-string/parse-time-string.mjs.map +1 -1
  255. package/esm/utils/previous-week/previous-week.mjs.map +1 -1
  256. package/esm/utils/sort-events/sort-events.mjs.map +1 -1
  257. package/esm/utils/to-date-string/to-date-string.mjs.map +1 -1
  258. package/esm/utils/to-time-string/to-time-string.mjs.map +1 -1
  259. package/esm/utils/validate-event/validate-event.mjs.map +1 -1
  260. package/lib/components/AgendaView/AgendaView.d.ts +54 -0
  261. package/lib/components/AgendaView/get-agenda-view-events.d.ts +9 -0
  262. package/lib/components/AgendaView/index.d.ts +2 -0
  263. package/lib/components/DayView/DayView.d.ts +6 -1
  264. package/lib/components/MonthView/MonthView.d.ts +6 -1
  265. package/lib/components/MonthView/get-renderable-month-event-segments.d.ts +5 -1
  266. package/lib/components/MonthView/get-visible-columns.d.ts +19 -0
  267. package/lib/components/ResourcesDayView/ResourcesDayView.d.ts +148 -0
  268. package/lib/components/ResourcesDayView/ResourcesDayViewColumn.d.ts +39 -0
  269. package/lib/components/ResourcesDayView/get-overlap-clusters/get-overlap-clusters.d.ts +2 -0
  270. package/lib/components/ResourcesDayView/get-resources-day-view-events/get-resources-day-view-events.d.ts +16 -0
  271. package/lib/components/ResourcesDayView/index.d.ts +9 -0
  272. package/lib/components/ResourcesMonthView/ResourcesMonthView.d.ts +129 -0
  273. package/lib/components/ResourcesMonthView/index.d.ts +9 -0
  274. package/lib/components/ResourcesSchedule/ResourcesSchedule.d.ts +123 -0
  275. package/lib/components/ResourcesSchedule/index.d.ts +3 -0
  276. package/lib/components/ResourcesWeekView/ResourcesWeekView.d.ts +106 -0
  277. package/lib/components/ResourcesWeekView/ResourcesWeekViewRow.d.ts +39 -0
  278. package/lib/components/ResourcesWeekView/get-resources-week-view-events/get-resources-week-view-events.d.ts +29 -0
  279. package/lib/components/ResourcesWeekView/index.d.ts +3 -0
  280. package/lib/components/Schedule/Schedule.d.ts +3 -1
  281. package/lib/components/ScheduleHeader/ScheduleHeaderBase.d.ts +5 -1
  282. package/lib/components/WeekView/WeekView.d.ts +6 -1
  283. package/lib/components/WeekView/WeekViewDay.d.ts +3 -1
  284. package/lib/hooks/use-horizontal-event-resize.d.ts +37 -0
  285. package/lib/index.d.mts +5 -0
  286. package/lib/index.d.ts +5 -0
  287. package/lib/labels.d.ts +4 -0
  288. package/lib/types.d.ts +20 -0
  289. package/lib/utils/get-group-to-resource-id-map/get-group-to-resource-id-map.d.ts +3 -0
  290. package/lib/utils/get-index-from-drag-point/get-index-from-drag-point.d.ts +6 -0
  291. package/lib/utils/get-ordered-resources/get-ordered-resources.d.ts +17 -0
  292. package/lib/utils/handle-resources-grid-key-down/handle-resources-grid-key-down.d.ts +10 -0
  293. package/lib/utils/index.d.ts +6 -0
  294. package/package.json +4 -4
  295. package/styles.css +1363 -10
  296. package/styles.layer.css +1364 -11
@@ -0,0 +1,133 @@
1
+ "use client";
2
+ const require_runtime = require("../../_virtual/_rolldown/runtime.cjs");
3
+ const require_labels = require("../../labels.cjs");
4
+ const require_format_date = require("../../utils/format-date/format-date.cjs");
5
+ const require_is_all_day_event = require("../../utils/is-all-day-event/is-all-day-event.cjs");
6
+ const require_sort_events = require("../../utils/sort-events/sort-events.cjs");
7
+ const require_is_multiday_event = require("../../utils/is-multiday-event/is-multiday-event.cjs");
8
+ const require_expand_recurring_events = require("../../utils/expand-recurring-events/expand-recurring-events.cjs");
9
+ const require_get_agenda_view_events = require("./get-agenda-view-events.cjs");
10
+ const require_AgendaView_module = require("./AgendaView.module.cjs");
11
+ let dayjs = require("dayjs");
12
+ dayjs = require_runtime.__toESM(dayjs);
13
+ let _mantine_core = require("@mantine/core");
14
+ let react = require("react");
15
+ react = require_runtime.__toESM(react);
16
+ let _mantine_dates = require("@mantine/dates");
17
+ let react_jsx_runtime = require("react/jsx-runtime");
18
+ //#region packages/@mantine/schedule/src/components/AgendaView/AgendaView.tsx
19
+ const defaultProps = {
20
+ __staticSelector: "AgendaView",
21
+ mode: "default",
22
+ dateHeaderFormat: "dddd, MMMM D",
23
+ headerFormat: "MMMM D, YYYY"
24
+ };
25
+ const varsResolver = (0, _mantine_core.createVarsResolver)((_theme, { radius }) => ({ agendaView: { "--agenda-view-radius": (0, _mantine_core.getRadius)(radius) } }));
26
+ const AgendaView = (0, _mantine_core.factory)((_props) => {
27
+ const props = (0, _mantine_core.useProps)("AgendaView", defaultProps, _props);
28
+ const { classNames, className, style, styles, unstyled, vars, attributes, __staticSelector, rangeStart, rangeEnd, events, locale, radius, labels, mode, renderEvent, dateHeaderFormat, headerFormat, onEventClick, recurrenceExpansionLimit, ...others } = props;
29
+ const ctx = (0, _mantine_dates.useDatesContext)();
30
+ const theme = (0, _mantine_core.useMantineTheme)();
31
+ const getStyles = (0, _mantine_core.useStyles)({
32
+ name: __staticSelector,
33
+ classes: require_AgendaView_module.default,
34
+ props,
35
+ className,
36
+ style,
37
+ classNames,
38
+ styles,
39
+ unstyled,
40
+ attributes,
41
+ vars,
42
+ varsResolver,
43
+ rootSelector: "agendaView"
44
+ });
45
+ const groupedEvents = require_get_agenda_view_events.getAgendaViewEvents({
46
+ rangeStart,
47
+ rangeEnd,
48
+ events: require_expand_recurring_events.expandRecurringEvents({
49
+ events,
50
+ rangeStart: (0, dayjs.default)(rangeStart).startOf("day").toDate(),
51
+ rangeEnd: (0, dayjs.default)(rangeEnd).endOf("day").toDate(),
52
+ expansionLimit: recurrenceExpansionLimit
53
+ })
54
+ });
55
+ const sortedDates = Object.keys(groupedEvents).sort();
56
+ const headerLabel = `${require_format_date.formatDate({
57
+ locale: ctx.getLocale(locale),
58
+ date: rangeStart,
59
+ format: headerFormat
60
+ })} – ${require_format_date.formatDate({
61
+ locale: ctx.getLocale(locale),
62
+ date: rangeEnd,
63
+ format: headerFormat
64
+ })}`;
65
+ const dateGroups = sortedDates.map((dateStr) => {
66
+ const eventNodes = require_sort_events.sortEvents(groupedEvents[dateStr]).map((event) => {
67
+ const startTime = (0, dayjs.default)(event.start).format("HH:mm");
68
+ const endTime = (0, dayjs.default)(event.end).format("HH:mm");
69
+ const isAllDay = require_is_multiday_event.isMultidayEvent(event) || require_is_all_day_event.isAllDayEvent({
70
+ event,
71
+ date: dateStr
72
+ });
73
+ const eventChildren = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_mantine_core.Box, {
74
+ ...getStyles("agendaViewEventBody"),
75
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", { ...getStyles("agendaViewEventColor", { style: { backgroundColor: (0, _mantine_core.getThemeColor)(event.color, theme) } }) }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.Text, {
76
+ ...getStyles("agendaViewEventTitle"),
77
+ children: event.title
78
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.Text, {
79
+ ...getStyles("agendaViewEventTime"),
80
+ children: isAllDay ? require_labels.getLabel("allDay", labels) : `${startTime} – ${endTime}`
81
+ })] })]
82
+ });
83
+ const rootProps = {
84
+ ...getStyles("agendaViewEvent"),
85
+ onClick: mode === "static" ? void 0 : (e) => {
86
+ onEventClick?.(event, e);
87
+ },
88
+ tabIndex: mode === "static" ? -1 : 0,
89
+ children: eventChildren
90
+ };
91
+ if (typeof renderEvent === "function") return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react.default.Fragment, { children: renderEvent(event, rootProps) }, event.id);
92
+ return /* @__PURE__ */ (0, react.createElement)(_mantine_core.UnstyledButton, {
93
+ ...rootProps,
94
+ key: event.id
95
+ });
96
+ });
97
+ return /* @__PURE__ */ (0, react.createElement)("div", {
98
+ ...getStyles("agendaViewDateGroup"),
99
+ key: dateStr
100
+ }, /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.Text, {
101
+ ...getStyles("agendaViewDateHeader"),
102
+ children: require_format_date.formatDate({
103
+ locale: ctx.getLocale(locale),
104
+ date: dateStr,
105
+ format: dateHeaderFormat
106
+ })
107
+ }), eventNodes);
108
+ });
109
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_mantine_core.Box, {
110
+ ...getStyles("agendaView"),
111
+ ...others,
112
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
113
+ ...getStyles("agendaViewHeader"),
114
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.Text, {
115
+ ...getStyles("agendaViewHeaderLabel"),
116
+ children: headerLabel
117
+ })
118
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.Box, {
119
+ ...getStyles("agendaViewBody"),
120
+ children: dateGroups.length > 0 ? dateGroups : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.Text, {
121
+ ...getStyles("agendaViewNoEvents"),
122
+ children: require_labels.getLabel("noEvents", labels)
123
+ })
124
+ })]
125
+ });
126
+ });
127
+ AgendaView.displayName = "@mantine/schedule/AgendaView";
128
+ AgendaView.classes = require_AgendaView_module.default;
129
+ AgendaView.varsResolver = varsResolver;
130
+ //#endregion
131
+ exports.AgendaView = AgendaView;
132
+
133
+ //# sourceMappingURL=AgendaView.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgendaView.cjs","names":["getAgendaViewEvents","expandRecurringEvents","formatDate","sortEvents","isMultidayEvent","isAllDayEvent","Box","Text","getLabel","React","UnstyledButton","classes"],"sources":["../../../src/components/AgendaView/AgendaView.tsx"],"sourcesContent":["import dayjs from 'dayjs';\nimport React from 'react';\nimport {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n getRadius,\n getThemeColor,\n MantineRadius,\n StylesApiProps,\n Text,\n UnstyledButton,\n useMantineTheme,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport { useDatesContext } from '@mantine/dates';\nimport { getLabel, ScheduleLabelsOverride } from '../../labels';\nimport { AnyDateValue, DateLabelFormat, ScheduleEventData, ScheduleMode } from '../../types';\nimport {\n expandRecurringEvents,\n formatDate,\n isAllDayEvent,\n isMultidayEvent,\n sortEvents,\n} from '../../utils';\nimport { RenderEvent } from '../ScheduleEvent/ScheduleEvent';\nimport { getAgendaViewEvents } from './get-agenda-view-events';\nimport classes from './AgendaView.module.css';\n\nexport type AgendaViewStylesNames =\n | 'agendaView'\n | 'agendaViewHeader'\n | 'agendaViewHeaderLabel'\n | 'agendaViewBody'\n | 'agendaViewDateGroup'\n | 'agendaViewDateHeader'\n | 'agendaViewEvent'\n | 'agendaViewEventBody'\n | 'agendaViewEventColor'\n | 'agendaViewEventTitle'\n | 'agendaViewEventTime'\n | 'agendaViewNoEvents';\n\nexport type AgendaViewCssVariables = {\n agendaView: '--agenda-view-radius';\n};\n\nexport interface AgendaViewProps\n extends BoxProps, StylesApiProps<AgendaViewFactory>, ElementProps<'div'> {\n __staticSelector?: string;\n\n /** Start of the date range to display events for */\n rangeStart: AnyDateValue;\n\n /** End of the date range to display events for */\n rangeEnd: AnyDateValue;\n\n /** Events to display */\n events?: ScheduleEventData[];\n\n /** Locale passed down to dayjs, overrides value defined on `DatesProvider` */\n locale?: string;\n\n /** Key of `theme.radius` or any valid CSS value to set `border-radius` @default theme.defaultRadius */\n radius?: MantineRadius;\n\n /** Labels override for i18n */\n labels?: ScheduleLabelsOverride;\n\n /** Interaction mode: 'default' allows all interactions, 'static' disables event interactions @default 'default' */\n mode?: ScheduleMode;\n\n /** Function to fully customize event rendering, receives all props that would be passed to the root element including children */\n renderEvent?: RenderEvent;\n\n /** Format for the date group headers @default 'dddd, MMMM D' */\n dateHeaderFormat?: DateLabelFormat;\n\n /** Format for the header label showing the date range @default 'MMMM D, YYYY' */\n headerFormat?: DateLabelFormat;\n\n /** Called when event is clicked */\n onEventClick?: (event: ScheduleEventData, e: React.MouseEvent<HTMLButtonElement>) => void;\n\n /** Max number of generated recurring instances per recurring series @default 2000 */\n recurrenceExpansionLimit?: number;\n}\n\nexport type AgendaViewFactory = Factory<{\n props: AgendaViewProps;\n ref: HTMLDivElement;\n stylesNames: AgendaViewStylesNames;\n vars: AgendaViewCssVariables;\n}>;\n\nconst defaultProps = {\n __staticSelector: 'AgendaView',\n mode: 'default',\n dateHeaderFormat: 'dddd, MMMM D',\n headerFormat: 'MMMM D, YYYY',\n} satisfies Partial<AgendaViewProps>;\n\nconst varsResolver = createVarsResolver<AgendaViewFactory>((_theme, { radius }) => ({\n agendaView: {\n '--agenda-view-radius': getRadius(radius),\n },\n}));\n\nexport const AgendaView = factory<AgendaViewFactory>((_props) => {\n const props = useProps('AgendaView', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n attributes,\n __staticSelector,\n rangeStart,\n rangeEnd,\n events,\n locale,\n radius,\n labels,\n mode,\n renderEvent,\n dateHeaderFormat,\n headerFormat,\n onEventClick,\n recurrenceExpansionLimit,\n ...others\n } = props;\n\n const ctx = useDatesContext();\n const theme = useMantineTheme();\n\n const getStyles = useStyles<AgendaViewFactory>({\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: 'agendaView',\n });\n\n const expandedEvents = expandRecurringEvents({\n events,\n rangeStart: dayjs(rangeStart).startOf('day').toDate(),\n rangeEnd: dayjs(rangeEnd).endOf('day').toDate(),\n expansionLimit: recurrenceExpansionLimit,\n });\n\n const groupedEvents = getAgendaViewEvents({\n rangeStart,\n rangeEnd,\n events: expandedEvents,\n });\n\n const sortedDates = Object.keys(groupedEvents).sort();\n\n const headerLabel = `${formatDate({\n locale: ctx.getLocale(locale),\n date: rangeStart,\n format: headerFormat,\n })} – ${formatDate({\n locale: ctx.getLocale(locale),\n date: rangeEnd,\n format: headerFormat,\n })}`;\n\n const dateGroups = sortedDates.map((dateStr) => {\n const dateEvents = sortEvents(groupedEvents[dateStr]);\n\n const eventNodes = dateEvents.map((event) => {\n const startTime = dayjs(event.start).format('HH:mm');\n const endTime = dayjs(event.end).format('HH:mm');\n const isAllDay = isMultidayEvent(event) || isAllDayEvent({ event, date: dateStr });\n\n const eventChildren = (\n <Box {...getStyles('agendaViewEventBody')}>\n <div\n {...getStyles('agendaViewEventColor', {\n style: { backgroundColor: getThemeColor(event.color, theme) },\n })}\n />\n <div>\n <Text {...getStyles('agendaViewEventTitle')}>{event.title}</Text>\n <Text {...getStyles('agendaViewEventTime')}>\n {isAllDay ? getLabel('allDay', labels) : `${startTime} – ${endTime}`}\n </Text>\n </div>\n </Box>\n );\n\n const rootProps: React.ComponentPropsWithoutRef<'button'> & { children: React.ReactNode } = {\n ...getStyles('agendaViewEvent'),\n onClick:\n mode === 'static'\n ? undefined\n : (e: React.MouseEvent<HTMLButtonElement>) => {\n onEventClick?.(event, e);\n },\n tabIndex: mode === 'static' ? -1 : 0,\n children: eventChildren,\n };\n\n if (typeof renderEvent === 'function') {\n return <React.Fragment key={event.id}>{renderEvent(event, rootProps)}</React.Fragment>;\n }\n\n return <UnstyledButton {...rootProps} key={event.id} />;\n });\n\n return (\n <div {...getStyles('agendaViewDateGroup')} key={dateStr}>\n <Text {...getStyles('agendaViewDateHeader')}>\n {formatDate({\n locale: ctx.getLocale(locale),\n date: dateStr,\n format: dateHeaderFormat,\n })}\n </Text>\n {eventNodes}\n </div>\n );\n });\n\n return (\n <Box {...getStyles('agendaView')} {...others}>\n <div {...getStyles('agendaViewHeader')}>\n <Text {...getStyles('agendaViewHeaderLabel')}>{headerLabel}</Text>\n </div>\n\n <Box {...getStyles('agendaViewBody')}>\n {dateGroups.length > 0 ? (\n dateGroups\n ) : (\n <Text {...getStyles('agendaViewNoEvents')}>{getLabel('noEvents', labels)}</Text>\n )}\n </Box>\n </Box>\n );\n});\n\nAgendaView.displayName = '@mantine/schedule/AgendaView';\nAgendaView.classes = classes;\nAgendaView.varsResolver = varsResolver;\n\nexport namespace AgendaView {\n export type Props = AgendaViewProps;\n export type Factory = AgendaViewFactory;\n export type StylesNames = AgendaViewStylesNames;\n export type CssVariables = AgendaViewCssVariables;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAmGA,MAAM,eAAe;CACnB,kBAAkB;CAClB,MAAM;CACN,kBAAkB;CAClB,cAAc;AAChB;AAEA,MAAM,gBAAA,GAAA,cAAA,mBAAA,EAAsD,QAAQ,EAAE,cAAc,EAClF,YAAY,EACV,yBAAA,GAAA,cAAA,UAAA,CAAkC,MAAM,EAC1C,EACF,EAAE;AAEF,MAAa,cAAA,GAAA,cAAA,QAAA,EAAyC,WAAW;CAC/D,MAAM,SAAA,GAAA,cAAA,SAAA,CAAiB,cAAc,cAAc,MAAM;CACzD,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,MACA,YACA,kBACA,YACA,UACA,QACA,QACA,QACA,QACA,MACA,aACA,kBACA,cACA,cACA,0BACA,GAAG,WACD;CAEJ,MAAM,OAAA,GAAA,eAAA,gBAAA,CAAsB;CAC5B,MAAM,SAAA,GAAA,cAAA,gBAAA,CAAwB;CAE9B,MAAM,aAAA,GAAA,cAAA,UAAA,CAAyC;EAC7C,MAAM;EACN,SAAA,0BAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,cAAc;CAChB,CAAC;CASD,MAAM,gBAAgBA,+BAAAA,oBAAoB;EACxC;EACA;EACA,QAVqBC,gCAAAA,sBAAsB;GAC3C;GACA,aAAA,GAAA,MAAA,QAAA,CAAkB,UAAU,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,OAAO;GACpD,WAAA,GAAA,MAAA,QAAA,CAAgB,QAAQ,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,OAAO;GAC9C,gBAAgB;EAClB,CAKuB;CACvB,CAAC;CAED,MAAM,cAAc,OAAO,KAAK,aAAa,CAAC,CAAC,KAAK;CAEpD,MAAM,cAAc,GAAGC,oBAAAA,WAAW;EAChC,QAAQ,IAAI,UAAU,MAAM;EAC5B,MAAM;EACN,QAAQ;CACV,CAAC,EAAE,KAAKA,oBAAAA,WAAW;EACjB,QAAQ,IAAI,UAAU,MAAM;EAC5B,MAAM;EACN,QAAQ;CACV,CAAC;CAED,MAAM,aAAa,YAAY,KAAK,YAAY;EAG9C,MAAM,aAFaC,oBAAAA,WAAW,cAAc,QAEhB,CAAC,CAAC,KAAK,UAAU;GAC3C,MAAM,aAAA,GAAA,MAAA,QAAA,CAAkB,MAAM,KAAK,CAAC,CAAC,OAAO,OAAO;GACnD,MAAM,WAAA,GAAA,MAAA,QAAA,CAAgB,MAAM,GAAG,CAAC,CAAC,OAAO,OAAO;GAC/C,MAAM,WAAWC,0BAAAA,gBAAgB,KAAK,KAAKC,yBAAAA,cAAc;IAAE;IAAO,MAAM;GAAQ,CAAC;GAEjF,MAAM,gBACJ,iBAAA,GAAA,kBAAA,KAAA,CAACC,cAAAA,KAAD;IAAK,GAAI,UAAU,qBAAqB;cAAxC,CACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD,EACE,GAAI,UAAU,wBAAwB,EACpC,OAAO,EAAE,kBAAA,GAAA,cAAA,cAAA,CAA+B,MAAM,OAAO,KAAK,EAAE,EAC9D,CAAC,EACF,CAAA,GACD,iBAAA,GAAA,kBAAA,KAAA,CAAC,OAAD,EAAA,UAAA,CACE,iBAAA,GAAA,kBAAA,IAAA,CAACC,cAAAA,MAAD;KAAM,GAAI,UAAU,sBAAsB;eAAI,MAAM;IAAY,CAAA,GAChE,iBAAA,GAAA,kBAAA,IAAA,CAACA,cAAAA,MAAD;KAAM,GAAI,UAAU,qBAAqB;eACtC,WAAWC,eAAAA,SAAS,UAAU,MAAM,IAAI,GAAG,UAAU,KAAK;IACvD,CAAA,CACH,EAAA,CAAA,CACF;;GAGP,MAAM,YAAsF;IAC1F,GAAG,UAAU,iBAAiB;IAC9B,SACE,SAAS,WACL,KAAA,KACC,MAA2C;KAC1C,eAAe,OAAO,CAAC;IACzB;IACN,UAAU,SAAS,WAAW,KAAK;IACnC,UAAU;GACZ;GAEA,IAAI,OAAO,gBAAgB,YACzB,OAAO,iBAAA,GAAA,kBAAA,IAAA,CAACC,MAAAA,QAAM,UAAP,EAAA,UAAgC,YAAY,OAAO,SAAS,EAAkB,GAAzD,MAAM,EAAmD;GAGvF,OAAO,iBAAA,GAAA,MAAA,cAAA,CAACC,cAAAA,gBAAD;IAAgB,GAAI;IAAW,KAAK,MAAM;GAAK,CAAA;EACxD,CAAC;EAED,OACE,iBAAA,GAAA,MAAA,cAAA,CAAC,OAAD;GAAK,GAAI,UAAU,qBAAqB;GAAG,KAAK;EAS3C,GARH,iBAAA,GAAA,kBAAA,IAAA,CAACH,cAAAA,MAAD;GAAM,GAAI,UAAU,sBAAsB;aACvCL,oBAAAA,WAAW;IACV,QAAQ,IAAI,UAAU,MAAM;IAC5B,MAAM;IACN,QAAQ;GACV,CAAC;EACG,CAAA,GACL,UACE;CAET,CAAC;CAED,OACE,iBAAA,GAAA,kBAAA,KAAA,CAACI,cAAAA,KAAD;EAAK,GAAI,UAAU,YAAY;EAAG,GAAI;YAAtC,CACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;GAAK,GAAI,UAAU,kBAAkB;aACnC,iBAAA,GAAA,kBAAA,IAAA,CAACC,cAAAA,MAAD;IAAM,GAAI,UAAU,uBAAuB;cAAI;GAAkB,CAAA;EAC9D,CAAA,GAEL,iBAAA,GAAA,kBAAA,IAAA,CAACD,cAAAA,KAAD;GAAK,GAAI,UAAU,gBAAgB;aAChC,WAAW,SAAS,IACnB,aAEA,iBAAA,GAAA,kBAAA,IAAA,CAACC,cAAAA,MAAD;IAAM,GAAI,UAAU,oBAAoB;cAAIC,eAAAA,SAAS,YAAY,MAAM;GAAQ,CAAA;EAE9E,CAAA,CACF;;AAET,CAAC;AAED,WAAW,cAAc;AACzB,WAAW,UAAUG,0BAAAA;AACrB,WAAW,eAAe"}
@@ -0,0 +1,19 @@
1
+ "use client";
2
+ //#region packages/@mantine/schedule/src/components/AgendaView/AgendaView.module.css
3
+ var AgendaView_module_default = {
4
+ "agendaView": "m_c5e63f2d",
5
+ "agendaViewHeader": "m_b70d381a",
6
+ "agendaViewHeaderLabel": "m_693056fa",
7
+ "agendaViewBody": "m_dd488e6f",
8
+ "agendaViewDateGroup": "m_e7e356c4",
9
+ "agendaViewDateHeader": "m_157e8ae8",
10
+ "agendaViewEvent": "m_cbf6b76d",
11
+ "agendaViewEventBody": "m_f9e2e6af",
12
+ "agendaViewEventColor": "m_428823f6",
13
+ "agendaViewEventTime": "m_f9eaffda",
14
+ "agendaViewNoEvents": "m_7a1aec87"
15
+ };
16
+ //#endregion
17
+ exports.default = AgendaView_module_default;
18
+
19
+ //# sourceMappingURL=AgendaView.module.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgendaView.module.cjs","names":[],"sources":["../../../src/components/AgendaView/AgendaView.module.css"],"sourcesContent":[".agendaView {\n --agenda-view-radius: var(--schedule-radius, var(--mantine-radius-default));\n\n display: flex;\n flex-direction: column;\n\n @mixin where-light {\n --agenda-view-border-color: var(--mantine-color-gray-3);\n }\n\n @mixin where-dark {\n --agenda-view-border-color: var(--mantine-color-dark-4);\n }\n}\n\n.agendaViewHeader {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: var(--mantine-spacing-sm);\n border-bottom: 1px solid var(--agenda-view-border-color);\n}\n\n.agendaViewHeaderLabel {\n user-select: none;\n font-weight: var(--mantine-font-weight-semibold);\n font-size: var(--mantine-font-size-sm);\n text-transform: capitalize;\n}\n\n.agendaViewBody {\n flex: 1;\n display: flex;\n flex-direction: column;\n min-height: 0;\n}\n\n.agendaViewDateGroup {\n &:where(:not(:last-child)) {\n border-bottom: 1px solid var(--agenda-view-border-color);\n }\n}\n\n.agendaViewDateHeader {\n padding: var(--mantine-spacing-xs) var(--mantine-spacing-sm);\n font-weight: var(--mantine-font-weight-semibold);\n font-size: var(--mantine-font-size-sm);\n text-transform: capitalize;\n\n @mixin where-light {\n background-color: var(--mantine-color-gray-0);\n }\n\n @mixin where-dark {\n background-color: var(--mantine-color-dark-6);\n }\n}\n\n.agendaViewEvent {\n display: block;\n width: 100%;\n text-align: start;\n cursor: pointer;\n\n &:where(:not(:last-child)) {\n border-bottom: 1px solid var(--agenda-view-border-color);\n }\n\n @mixin hover {\n @mixin where-light {\n background-color: var(--mantine-color-gray-0);\n }\n\n @mixin where-dark {\n background-color: var(--mantine-color-dark-6);\n }\n }\n}\n\n.agendaViewEventBody {\n display: flex;\n gap: var(--mantine-spacing-sm);\n padding: var(--mantine-spacing-xs) var(--mantine-spacing-sm);\n}\n\n.agendaViewEventColor {\n width: 4px;\n border-radius: 2px;\n flex-shrink: 0;\n}\n\n.agendaViewEventTime {\n margin-top: 2px;\n font-size: var(--mantine-font-size-xs);\n color: var(--mantine-color-dimmed);\n}\n\n.agendaViewNoEvents {\n padding: var(--mantine-spacing-xl) var(--mantine-spacing-sm);\n color: var(--mantine-color-dimmed);\n text-align: center;\n}\n"],"mappings":""}
@@ -0,0 +1,48 @@
1
+ "use client";
2
+ const require_runtime = require("../../_virtual/_rolldown/runtime.cjs");
3
+ const require_validate_event = require("../../utils/validate-event/validate-event.cjs");
4
+ const require_is_multiday_event = require("../../utils/is-multiday-event/is-multiday-event.cjs");
5
+ let dayjs = require("dayjs");
6
+ dayjs = require_runtime.__toESM(dayjs);
7
+ //#region packages/@mantine/schedule/src/components/AgendaView/get-agenda-view-events.ts
8
+ function getEffectiveEndDate(event) {
9
+ const endDate = (0, dayjs.default)(event.end).startOf("day");
10
+ if ((0, dayjs.default)(event.end).hour() === 0 && (0, dayjs.default)(event.end).minute() === 0) return endDate.subtract(1, "day");
11
+ return endDate;
12
+ }
13
+ function groupEventByDate(event, groupedEvents, rangeStart, rangeEnd) {
14
+ if (require_is_multiday_event.isMultidayEvent(event)) {
15
+ const startDate = (0, dayjs.default)(event.start).startOf("day");
16
+ const endDate = getEffectiveEndDate(event);
17
+ for (let date = startDate; date.isBefore(endDate) || date.isSame(endDate); date = date.add(1, "day")) {
18
+ if (date.isBefore(rangeStart) || date.isAfter(rangeEnd)) continue;
19
+ const dateKey = date.format("YYYY-MM-DD");
20
+ if (!groupedEvents[dateKey]) groupedEvents[dateKey] = [];
21
+ groupedEvents[dateKey].push(event);
22
+ }
23
+ return;
24
+ }
25
+ const eventDate = (0, dayjs.default)(event.start).format("YYYY-MM-DD");
26
+ if (!groupedEvents[eventDate]) groupedEvents[eventDate] = [];
27
+ groupedEvents[eventDate].push(event);
28
+ }
29
+ function getAgendaViewEvents({ rangeStart, rangeEnd, events }) {
30
+ const groupedEvents = {};
31
+ if (events === void 0) return groupedEvents;
32
+ const start = (0, dayjs.default)(rangeStart).startOf("day");
33
+ const end = (0, dayjs.default)(rangeEnd).startOf("day");
34
+ const ids = /* @__PURE__ */ new Set();
35
+ for (const event of events) {
36
+ if (event.display === "background") continue;
37
+ const eventStart = (0, dayjs.default)(event.start).startOf("day");
38
+ if ((0, dayjs.default)(event.end).startOf("day").isBefore(start) || eventStart.isAfter(end)) continue;
39
+ if (!ids.has(event.id)) ids.add(event.id);
40
+ else throw new Error(`[@mantine/schedule] AgendaView: Duplicated event ids found: ${event.id}`);
41
+ groupEventByDate(require_validate_event.validateEvent(event), groupedEvents, start, end);
42
+ }
43
+ return groupedEvents;
44
+ }
45
+ //#endregion
46
+ exports.getAgendaViewEvents = getAgendaViewEvents;
47
+
48
+ //# sourceMappingURL=get-agenda-view-events.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-agenda-view-events.cjs","names":["isMultidayEvent","validateEvent"],"sources":["../../../src/components/AgendaView/get-agenda-view-events.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { AnyDateValue, DateStringValue, ScheduleEventData } from '../../types';\nimport { isMultidayEvent, validateEvent } from '../../utils';\n\nfunction getEffectiveEndDate(event: ScheduleEventData) {\n const endDate = dayjs(event.end).startOf('day');\n if (dayjs(event.end).hour() === 0 && dayjs(event.end).minute() === 0) {\n return endDate.subtract(1, 'day');\n }\n return endDate;\n}\n\nexport type AgendaGroupedEvents = Record<DateStringValue, ScheduleEventData[]>;\n\nfunction groupEventByDate(\n event: ScheduleEventData,\n groupedEvents: AgendaGroupedEvents,\n rangeStart: dayjs.Dayjs,\n rangeEnd: dayjs.Dayjs\n) {\n if (isMultidayEvent(event)) {\n const startDate = dayjs(event.start).startOf('day');\n const endDate = getEffectiveEndDate(event);\n\n for (\n let date = startDate;\n date.isBefore(endDate) || date.isSame(endDate);\n date = date.add(1, 'day')\n ) {\n if (date.isBefore(rangeStart) || date.isAfter(rangeEnd)) {\n continue;\n }\n const dateKey = date.format('YYYY-MM-DD');\n if (!groupedEvents[dateKey]) {\n groupedEvents[dateKey] = [];\n }\n groupedEvents[dateKey].push(event);\n }\n\n return;\n }\n\n const eventDate = dayjs(event.start).format('YYYY-MM-DD');\n if (!groupedEvents[eventDate]) {\n groupedEvents[eventDate] = [];\n }\n groupedEvents[eventDate].push(event);\n}\n\ninterface GetAgendaViewEventsInput {\n rangeStart: AnyDateValue;\n rangeEnd: AnyDateValue;\n events: ScheduleEventData[] | undefined;\n}\n\nexport function getAgendaViewEvents({ rangeStart, rangeEnd, events }: GetAgendaViewEventsInput) {\n const groupedEvents: AgendaGroupedEvents = {};\n\n if (events === undefined) {\n return groupedEvents;\n }\n\n const start = dayjs(rangeStart).startOf('day');\n const end = dayjs(rangeEnd).startOf('day');\n const ids = new Set<string | number>();\n\n for (const event of events) {\n if (event.display === 'background') {\n continue;\n }\n\n const eventStart = dayjs(event.start).startOf('day');\n const eventEnd = dayjs(event.end).startOf('day');\n\n if (eventEnd.isBefore(start) || eventStart.isAfter(end)) {\n continue;\n }\n\n if (!ids.has(event.id)) {\n ids.add(event.id);\n } else {\n throw new Error(`[@mantine/schedule] AgendaView: Duplicated event ids found: ${event.id}`);\n }\n\n groupEventByDate(validateEvent(event), groupedEvents, start, end);\n }\n\n return groupedEvents;\n}\n"],"mappings":";;;;;;;AAIA,SAAS,oBAAoB,OAA0B;CACrD,MAAM,WAAA,GAAA,MAAA,QAAA,CAAgB,MAAM,GAAG,CAAC,CAAC,QAAQ,KAAK;CAC9C,KAAA,GAAA,MAAA,QAAA,CAAU,MAAM,GAAG,CAAC,CAAC,KAAK,MAAM,MAAA,GAAA,MAAA,QAAA,CAAW,MAAM,GAAG,CAAC,CAAC,OAAO,MAAM,GACjE,OAAO,QAAQ,SAAS,GAAG,KAAK;CAElC,OAAO;AACT;AAIA,SAAS,iBACP,OACA,eACA,YACA,UACA;CACA,IAAIA,0BAAAA,gBAAgB,KAAK,GAAG;EAC1B,MAAM,aAAA,GAAA,MAAA,QAAA,CAAkB,MAAM,KAAK,CAAC,CAAC,QAAQ,KAAK;EAClD,MAAM,UAAU,oBAAoB,KAAK;EAEzC,KACE,IAAI,OAAO,WACX,KAAK,SAAS,OAAO,KAAK,KAAK,OAAO,OAAO,GAC7C,OAAO,KAAK,IAAI,GAAG,KAAK,GACxB;GACA,IAAI,KAAK,SAAS,UAAU,KAAK,KAAK,QAAQ,QAAQ,GACpD;GAEF,MAAM,UAAU,KAAK,OAAO,YAAY;GACxC,IAAI,CAAC,cAAc,UACjB,cAAc,WAAW,CAAC;GAE5B,cAAc,QAAQ,CAAC,KAAK,KAAK;EACnC;EAEA;CACF;CAEA,MAAM,aAAA,GAAA,MAAA,QAAA,CAAkB,MAAM,KAAK,CAAC,CAAC,OAAO,YAAY;CACxD,IAAI,CAAC,cAAc,YACjB,cAAc,aAAa,CAAC;CAE9B,cAAc,UAAU,CAAC,KAAK,KAAK;AACrC;AAQA,SAAgB,oBAAoB,EAAE,YAAY,UAAU,UAAoC;CAC9F,MAAM,gBAAqC,CAAC;CAE5C,IAAI,WAAW,KAAA,GACb,OAAO;CAGT,MAAM,SAAA,GAAA,MAAA,QAAA,CAAc,UAAU,CAAC,CAAC,QAAQ,KAAK;CAC7C,MAAM,OAAA,GAAA,MAAA,QAAA,CAAY,QAAQ,CAAC,CAAC,QAAQ,KAAK;CACzC,MAAM,sBAAM,IAAI,IAAqB;CAErC,KAAK,MAAM,SAAS,QAAQ;EAC1B,IAAI,MAAM,YAAY,cACpB;EAGF,MAAM,cAAA,GAAA,MAAA,QAAA,CAAmB,MAAM,KAAK,CAAC,CAAC,QAAQ,KAAK;EAGnD,KAAA,GAAA,MAAA,QAAA,CAFuB,MAAM,GAAG,CAAC,CAAC,QAAQ,KAE/B,CAAC,CAAC,SAAS,KAAK,KAAK,WAAW,QAAQ,GAAG,GACpD;EAGF,IAAI,CAAC,IAAI,IAAI,MAAM,EAAE,GACnB,IAAI,IAAI,MAAM,EAAE;OAEhB,MAAM,IAAI,MAAM,+DAA+D,MAAM,IAAI;EAG3F,iBAAiBC,uBAAAA,cAAc,KAAK,GAAG,eAAe,OAAO,GAAG;CAClE;CAEA,OAAO;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"CurrentTimeIndicator.cjs","names":["getCurrentTimePosition","formatDate","isInTimeRange","Box","classes"],"sources":["../../../src/components/CurrentTimeIndicator/CurrentTimeIndicator.tsx"],"sourcesContent":["import dayjs from 'dayjs';\nimport { useState } from 'react';\nimport {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n getThemeColor,\n MantineColor,\n StylesApiProps,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport { useDatesContext } from '@mantine/dates';\nimport { useInterval } from '@mantine/hooks';\nimport { AnyDateValue, DateLabelFormat } from '../../types';\nimport { formatDate, getCurrentTimePosition, isInTimeRange } from '../../utils';\nimport classes from './CurrentTimeIndicator.module.css';\n\nexport type CurrentTimeIndicatorStylesNames =\n | 'currentTimeIndicator'\n | 'currentTimeIndicatorLine'\n | 'currentTimeIndicatorThumb'\n | 'currentTimeIndicatorTimeBubble';\n\nexport type CurrentTimeIndicatorCssVariables = {\n currentTimeIndicator: '--indicator-color';\n};\n\nexport interface CurrentTimeIndicatorProps\n extends BoxProps, StylesApiProps<CurrentTimeIndicatorFactory>, ElementProps<'div'> {\n __staticSelector?: string;\n\n /** Key of `theme.colors` or any valid CSS color value @default 'red' */\n color?: MantineColor;\n\n /** Offset from the left side */\n startOffset?: string;\n\n /** Offset from the right side */\n endOffset?: string;\n\n /** Extra configurable offset from the top */\n topOffset?: string;\n\n /** Offset for the time bubble */\n timeBubbleStartOffset?: string;\n\n /** If set, displays a bubble with the current time @default @true */\n withTimeBubble?: boolean;\n\n /** If set, displays thumb next to the line @default true */\n withThumb?: boolean;\n\n /** Format of the time displayed in the time bubble @default 'HH:mm' */\n currentTimeFormat?: DateLabelFormat;\n\n /** Locale passed down to dayjs during formatting */\n locale?: string;\n\n /** Start time of the day */\n startTime?: string;\n\n /** End time of the day */\n endTime?: string;\n\n /** Number of minutes per time slot. Used to align the indicator to whole slots when `endTime` does not divide evenly. */\n intervalMinutes?: number;\n\n /** A function to get the current time, called on every tick. Can be used to display the indicator in a different timezone. @default () => dayjs() */\n getCurrentTime?: () => AnyDateValue;\n}\n\nexport type CurrentTimeIndicatorFactory = Factory<{\n props: CurrentTimeIndicatorProps;\n ref: HTMLDivElement;\n stylesNames: CurrentTimeIndicatorStylesNames;\n vars: CurrentTimeIndicatorCssVariables;\n}>;\n\nconst defaultProps = {\n __staticSelector: 'CurrentTimeIndicator',\n withTimeBubble: true,\n withThumb: true,\n currentTimeFormat: 'HH:mm',\n topOffset: '0rem',\n} satisfies Partial<CurrentTimeIndicatorProps>;\n\nconst varsResolver = createVarsResolver<CurrentTimeIndicatorFactory>((theme, { color }) => ({\n currentTimeIndicator: {\n '--indicator-color': color ? getThemeColor(color, theme) : undefined,\n },\n}));\n\nexport const CurrentTimeIndicator = factory<CurrentTimeIndicatorFactory>((_props) => {\n const props = useProps('CurrentTimeIndicator', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n attributes,\n startOffset,\n endOffset,\n color,\n withTimeBubble,\n withThumb,\n currentTimeFormat,\n locale,\n timeBubbleStartOffset,\n __staticSelector,\n topOffset,\n startTime,\n endTime,\n intervalMinutes,\n getCurrentTime,\n ...others\n } = props;\n\n const getStyles = useStyles<CurrentTimeIndicatorFactory>({\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: 'currentTimeIndicator',\n });\n\n const ctx = useDatesContext();\n const [, setTick] = useState(0);\n useInterval(() => setTick((tick) => tick + 1), 1000 * 60, {\n autoInvoke: true,\n });\n\n const now = getCurrentTime ? dayjs(getCurrentTime()) : dayjs();\n const offsetPercent = getCurrentTimePosition({ startTime, endTime, intervalMinutes, now });\n const formattedTime = withTimeBubble\n ? formatDate({ locale: ctx.getLocale(locale), date: now, format: currentTimeFormat })\n : '';\n\n if (!isInTimeRange({ date: now, startTime, endTime })) {\n return null;\n }\n\n return (\n <Box\n {...getStyles('currentTimeIndicator')}\n __vars={{\n '--top-offset': `calc(${offsetPercent}% + ${topOffset})`,\n '--start-offset': startOffset,\n '--end-offset': endOffset,\n '--time-bubble-start-offset': timeBubbleStartOffset,\n\n // Adjust time bubble width for formats including AM/PM\n '--time-bubble-width': formattedTime?.toString().toLowerCase().includes('m')\n ? '64px'\n : '46px',\n }}\n {...others}\n >\n {withTimeBubble && (\n <div {...getStyles('currentTimeIndicatorTimeBubble')}>{formattedTime}</div>\n )}\n\n {withThumb && <div {...getStyles('currentTimeIndicatorThumb')} />}\n\n <div {...getStyles('currentTimeIndicatorLine')} />\n </Box>\n );\n});\n\nCurrentTimeIndicator.displayName = '@mantine/schedule/CurrentTimeIndicator';\nCurrentTimeIndicator.classes = classes;\nCurrentTimeIndicator.varsResolver = varsResolver;\n"],"mappings":";;;;;;;;;;;;;;AAkFA,MAAM,eAAe;CACnB,kBAAkB;CAClB,gBAAgB;CAChB,WAAW;CACX,mBAAmB;CACnB,WAAW;AACb;AAEA,MAAM,gBAAA,GAAA,cAAA,qBAAgE,OAAO,EAAE,aAAa,EAC1F,sBAAsB,EACpB,qBAAqB,SAAA,GAAA,cAAA,eAAsB,OAAO,KAAK,IAAI,KAAA,EAC7D,EACF,EAAE;AAEF,MAAa,wBAAA,GAAA,cAAA,UAA6D,WAAW;CACnF,MAAM,SAAA,GAAA,cAAA,UAAiB,wBAAwB,cAAc,MAAM;CACnE,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,MACA,YACA,aACA,WACA,OACA,gBACA,WACA,mBACA,QACA,uBACA,kBACA,WACA,WACA,SACA,iBACA,gBACA,GAAG,WACD;CAEJ,MAAM,aAAA,GAAA,cAAA,WAAmD;EACvD,MAAM;EACN,SAAA,oCAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,cAAc;CAChB,CAAC;CAED,MAAM,OAAA,GAAA,eAAA,iBAAsB;CAC5B,MAAM,GAAG,YAAA,GAAA,MAAA,UAAoB,CAAC;CAC9B,CAAA,GAAA,eAAA,mBAAkB,SAAS,SAAS,OAAO,CAAC,GAAG,MAAO,IAAI,EACxD,YAAY,KACd,CAAC;CAED,MAAM,MAAM,kBAAA,GAAA,MAAA,SAAuB,eAAe,CAAC,KAAA,GAAA,MAAA,SAAU;CAC7D,MAAM,gBAAgBA,kCAAAA,uBAAuB;EAAE;EAAW;EAAS;EAAiB;CAAI,CAAC;CACzF,MAAM,gBAAgB,iBAClBC,oBAAAA,WAAW;EAAE,QAAQ,IAAI,UAAU,MAAM;EAAG,MAAM;EAAK,QAAQ;CAAkB,CAAC,IAClF;CAEJ,IAAI,CAACC,yBAAAA,cAAc;EAAE,MAAM;EAAK;EAAW;CAAQ,CAAC,GAClD,OAAO;CAGT,OACE,iBAAA,GAAA,kBAAA,MAACC,cAAAA,KAAD;EACE,GAAI,UAAU,sBAAsB;EACpC,QAAQ;GACN,gBAAgB,QAAQ,cAAc,MAAM,UAAU;GACtD,kBAAkB;GAClB,gBAAgB;GAChB,8BAA8B;GAG9B,uBAAuB,eAAe,SAAS,EAAE,YAAY,EAAE,SAAS,GAAG,IACvE,SACA;EACN;EACA,GAAI;YAbN;GAeG,kBACC,iBAAA,GAAA,kBAAA,KAAC,OAAD;IAAK,GAAI,UAAU,gCAAgC;cAAI;GAAmB,CAAA;GAG3E,aAAa,iBAAA,GAAA,kBAAA,KAAC,OAAD,EAAK,GAAI,UAAU,2BAA2B,EAAI,CAAA;GAEhE,iBAAA,GAAA,kBAAA,KAAC,OAAD,EAAK,GAAI,UAAU,0BAA0B,EAAI,CAAA;EAC9C;;AAET,CAAC;AAED,qBAAqB,cAAc;AACnC,qBAAqB,UAAUC,oCAAAA;AAC/B,qBAAqB,eAAe"}
1
+ {"version":3,"file":"CurrentTimeIndicator.cjs","names":["getCurrentTimePosition","formatDate","isInTimeRange","Box","classes"],"sources":["../../../src/components/CurrentTimeIndicator/CurrentTimeIndicator.tsx"],"sourcesContent":["import dayjs from 'dayjs';\nimport { useState } from 'react';\nimport {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n getThemeColor,\n MantineColor,\n StylesApiProps,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport { useDatesContext } from '@mantine/dates';\nimport { useInterval } from '@mantine/hooks';\nimport { AnyDateValue, DateLabelFormat } from '../../types';\nimport { formatDate, getCurrentTimePosition, isInTimeRange } from '../../utils';\nimport classes from './CurrentTimeIndicator.module.css';\n\nexport type CurrentTimeIndicatorStylesNames =\n | 'currentTimeIndicator'\n | 'currentTimeIndicatorLine'\n | 'currentTimeIndicatorThumb'\n | 'currentTimeIndicatorTimeBubble';\n\nexport type CurrentTimeIndicatorCssVariables = {\n currentTimeIndicator: '--indicator-color';\n};\n\nexport interface CurrentTimeIndicatorProps\n extends BoxProps, StylesApiProps<CurrentTimeIndicatorFactory>, ElementProps<'div'> {\n __staticSelector?: string;\n\n /** Key of `theme.colors` or any valid CSS color value @default 'red' */\n color?: MantineColor;\n\n /** Offset from the left side */\n startOffset?: string;\n\n /** Offset from the right side */\n endOffset?: string;\n\n /** Extra configurable offset from the top */\n topOffset?: string;\n\n /** Offset for the time bubble */\n timeBubbleStartOffset?: string;\n\n /** If set, displays a bubble with the current time @default @true */\n withTimeBubble?: boolean;\n\n /** If set, displays thumb next to the line @default true */\n withThumb?: boolean;\n\n /** Format of the time displayed in the time bubble @default 'HH:mm' */\n currentTimeFormat?: DateLabelFormat;\n\n /** Locale passed down to dayjs during formatting */\n locale?: string;\n\n /** Start time of the day */\n startTime?: string;\n\n /** End time of the day */\n endTime?: string;\n\n /** Number of minutes per time slot. Used to align the indicator to whole slots when `endTime` does not divide evenly. */\n intervalMinutes?: number;\n\n /** A function to get the current time, called on every tick. Can be used to display the indicator in a different timezone. @default () => dayjs() */\n getCurrentTime?: () => AnyDateValue;\n}\n\nexport type CurrentTimeIndicatorFactory = Factory<{\n props: CurrentTimeIndicatorProps;\n ref: HTMLDivElement;\n stylesNames: CurrentTimeIndicatorStylesNames;\n vars: CurrentTimeIndicatorCssVariables;\n}>;\n\nconst defaultProps = {\n __staticSelector: 'CurrentTimeIndicator',\n withTimeBubble: true,\n withThumb: true,\n currentTimeFormat: 'HH:mm',\n topOffset: '0rem',\n} satisfies Partial<CurrentTimeIndicatorProps>;\n\nconst varsResolver = createVarsResolver<CurrentTimeIndicatorFactory>((theme, { color }) => ({\n currentTimeIndicator: {\n '--indicator-color': color ? getThemeColor(color, theme) : undefined,\n },\n}));\n\nexport const CurrentTimeIndicator = factory<CurrentTimeIndicatorFactory>((_props) => {\n const props = useProps('CurrentTimeIndicator', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n attributes,\n startOffset,\n endOffset,\n color,\n withTimeBubble,\n withThumb,\n currentTimeFormat,\n locale,\n timeBubbleStartOffset,\n __staticSelector,\n topOffset,\n startTime,\n endTime,\n intervalMinutes,\n getCurrentTime,\n ...others\n } = props;\n\n const getStyles = useStyles<CurrentTimeIndicatorFactory>({\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: 'currentTimeIndicator',\n });\n\n const ctx = useDatesContext();\n const [, setTick] = useState(0);\n useInterval(() => setTick((tick) => tick + 1), 1000 * 60, {\n autoInvoke: true,\n });\n\n const now = getCurrentTime ? dayjs(getCurrentTime()) : dayjs();\n const offsetPercent = getCurrentTimePosition({ startTime, endTime, intervalMinutes, now });\n const formattedTime = withTimeBubble\n ? formatDate({ locale: ctx.getLocale(locale), date: now, format: currentTimeFormat })\n : '';\n\n if (!isInTimeRange({ date: now, startTime, endTime })) {\n return null;\n }\n\n return (\n <Box\n {...getStyles('currentTimeIndicator')}\n __vars={{\n '--top-offset': `calc(${offsetPercent}% + ${topOffset})`,\n '--start-offset': startOffset,\n '--end-offset': endOffset,\n '--time-bubble-start-offset': timeBubbleStartOffset,\n\n // Adjust time bubble width for formats including AM/PM\n '--time-bubble-width': formattedTime?.toString().toLowerCase().includes('m')\n ? '64px'\n : '46px',\n }}\n {...others}\n >\n {withTimeBubble && (\n <div {...getStyles('currentTimeIndicatorTimeBubble')}>{formattedTime}</div>\n )}\n\n {withThumb && <div {...getStyles('currentTimeIndicatorThumb')} />}\n\n <div {...getStyles('currentTimeIndicatorLine')} />\n </Box>\n );\n});\n\nCurrentTimeIndicator.displayName = '@mantine/schedule/CurrentTimeIndicator';\nCurrentTimeIndicator.classes = classes;\nCurrentTimeIndicator.varsResolver = varsResolver;\n"],"mappings":";;;;;;;;;;;;;;AAkFA,MAAM,eAAe;CACnB,kBAAkB;CAClB,gBAAgB;CAChB,WAAW;CACX,mBAAmB;CACnB,WAAW;AACb;AAEA,MAAM,gBAAA,GAAA,cAAA,mBAAA,EAAgE,OAAO,EAAE,aAAa,EAC1F,sBAAsB,EACpB,qBAAqB,SAAA,GAAA,cAAA,cAAA,CAAsB,OAAO,KAAK,IAAI,KAAA,EAC7D,EACF,EAAE;AAEF,MAAa,wBAAA,GAAA,cAAA,QAAA,EAA6D,WAAW;CACnF,MAAM,SAAA,GAAA,cAAA,SAAA,CAAiB,wBAAwB,cAAc,MAAM;CACnE,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,MACA,YACA,aACA,WACA,OACA,gBACA,WACA,mBACA,QACA,uBACA,kBACA,WACA,WACA,SACA,iBACA,gBACA,GAAG,WACD;CAEJ,MAAM,aAAA,GAAA,cAAA,UAAA,CAAmD;EACvD,MAAM;EACN,SAAA,oCAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,cAAc;CAChB,CAAC;CAED,MAAM,OAAA,GAAA,eAAA,gBAAA,CAAsB;CAC5B,MAAM,GAAG,YAAA,GAAA,MAAA,SAAA,CAAoB,CAAC;CAC9B,CAAA,GAAA,eAAA,YAAA,OAAkB,SAAS,SAAS,OAAO,CAAC,GAAG,MAAO,IAAI,EACxD,YAAY,KACd,CAAC;CAED,MAAM,MAAM,kBAAA,GAAA,MAAA,QAAA,CAAuB,eAAe,CAAC,KAAA,GAAA,MAAA,QAAA,CAAU;CAC7D,MAAM,gBAAgBA,kCAAAA,uBAAuB;EAAE;EAAW;EAAS;EAAiB;CAAI,CAAC;CACzF,MAAM,gBAAgB,iBAClBC,oBAAAA,WAAW;EAAE,QAAQ,IAAI,UAAU,MAAM;EAAG,MAAM;EAAK,QAAQ;CAAkB,CAAC,IAClF;CAEJ,IAAI,CAACC,yBAAAA,cAAc;EAAE,MAAM;EAAK;EAAW;CAAQ,CAAC,GAClD,OAAO;CAGT,OACE,iBAAA,GAAA,kBAAA,KAAA,CAACC,cAAAA,KAAD;EACE,GAAI,UAAU,sBAAsB;EACpC,QAAQ;GACN,gBAAgB,QAAQ,cAAc,MAAM,UAAU;GACtD,kBAAkB;GAClB,gBAAgB;GAChB,8BAA8B;GAG9B,uBAAuB,eAAe,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,GAAG,IACvE,SACA;EACN;EACA,GAAI;YAbN;GAeG,kBACC,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;IAAK,GAAI,UAAU,gCAAgC;cAAI;GAAmB,CAAA;GAG3E,aAAa,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD,EAAK,GAAI,UAAU,2BAA2B,EAAI,CAAA;GAEhE,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD,EAAK,GAAI,UAAU,0BAA0B,EAAI,CAAA;EAC9C;;AAET,CAAC;AAED,qBAAqB,cAAc;AACnC,qBAAqB,UAAUC,oCAAAA;AAC/B,qBAAqB,eAAe"}
@@ -14,6 +14,7 @@ const require_use_auto_scroll_on_drag = require("../../hooks/use-auto-scroll-on-
14
14
  const require_use_drag_drop_handlers = require("../../hooks/use-drag-drop-handlers.cjs");
15
15
  const require_use_event_resize = require("../../hooks/use-event-resize.cjs");
16
16
  const require_use_slot_drag_select = require("../../hooks/use-slot-drag-select.cjs");
17
+ const require_AgendaView = require("../AgendaView/AgendaView.cjs");
17
18
  const require_CurrentTimeIndicator = require("../CurrentTimeIndicator/CurrentTimeIndicator.cjs");
18
19
  const require_DragContext = require("../DragContext/DragContext.cjs");
19
20
  const require_ScheduleEvent = require("../ScheduleEvent/ScheduleEvent.cjs");
@@ -34,6 +35,7 @@ const defaultProps = {
34
35
  startTime: "00:00:00",
35
36
  endTime: "23:59:59",
36
37
  intervalMinutes: 15,
38
+ withSubHourGridLines: true,
37
39
  withAllDaySlot: true,
38
40
  slotLabelFormat: "HH:mm",
39
41
  headerFormat: "MMMM D, YYYY",
@@ -53,7 +55,8 @@ const varsResolver = (0, _mantine_core.createVarsResolver)((_theme, { radius, sl
53
55
  } }));
54
56
  const DayView = (0, _mantine_core.factory)((_props) => {
55
57
  const props = (0, _mantine_core.useProps)("DayView", defaultProps, _props);
56
- const { classNames, className, style, styles, unstyled, attributes, vars, __staticSelector, startTime, endTime, intervalMinutes, withAllDaySlot, date, locale, slotLabelFormat, headerFormat, getCurrentTime, withCurrentTimeIndicator, withCurrentTimeBubble, withHeader, radius, onDateChange, onViewChange, previousControlProps, nextControlProps, todayControlProps, viewSelectProps, slotHeight, allDaySlotHeight, scrollAreaProps, events, moreEventsProps, renderEventBody, renderEvent, labels, highlightBusinessHours, businessHours, withEventsDragAndDrop, onEventDrop, canDragEvent, onEventDragStart, onEventDragEnd, onTimeSlotClick, onAllDaySlotClick, onEventClick, withDragSlotSelect, onSlotDragEnd, mode, startScrollTime, onExternalEventDrop, withEventResize, onEventResize, canResizeEvent, recurrenceExpansionLimit, getTimeSlotProps, ...others } = props;
58
+ const { classNames, className, style, styles, unstyled, attributes, vars, __staticSelector, startTime, endTime, intervalMinutes, withSubHourGridLines, withAllDaySlot, date, locale, slotLabelFormat, headerFormat, getCurrentTime, withCurrentTimeIndicator, withCurrentTimeBubble, withHeader, radius, onDateChange, onViewChange, previousControlProps, nextControlProps, todayControlProps, viewSelectProps, slotHeight, allDaySlotHeight, scrollAreaProps, events, moreEventsProps, renderEventBody, renderEvent, labels, highlightBusinessHours, businessHours, withEventsDragAndDrop, onEventDrop, canDragEvent, onEventDragStart, onEventDragEnd, onTimeSlotClick, onAllDaySlotClick, onEventClick, withDragSlotSelect, onSlotDragEnd, mode, startScrollTime, onExternalEventDrop, withEventResize, onEventResize, canResizeEvent, recurrenceExpansionLimit, getTimeSlotProps, withAgenda, ...others } = props;
59
+ const [agendaOpen, setAgendaOpen] = (0, react.useState)(false);
57
60
  const getStyles = (0, _mantine_core.useStyles)({
58
61
  name: __staticSelector,
59
62
  classes: require_DayView_module.default,
@@ -277,6 +280,7 @@ const DayView = (0, _mantine_core.factory)((_props) => {
277
280
  slotsRef.current[index] = node;
278
281
  },
279
282
  mod: {
283
+ first: index === 0,
280
284
  "hour-start": slot.isHourStart,
281
285
  ...require_get_business_hours_mod.getBusinessHoursMod({
282
286
  time: slot.startTime,
@@ -373,117 +377,135 @@ const DayView = (0, _mantine_core.factory)((_props) => {
373
377
  ...getStyles("dayView"),
374
378
  mod: {
375
379
  static: mode === "static",
376
- "slot-dragging": slotDragSelect.isDragging
380
+ "slot-dragging": slotDragSelect.isDragging,
381
+ "hide-sub-hour-grid-lines": !withSubHourGridLines,
382
+ "event-interaction": eventResize.isResizing || dragDrop.dragContextValue.isDragging
377
383
  },
378
384
  ...others,
379
- children: [withHeader && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_ScheduleHeaderBase.ScheduleHeaderBase, {
380
- view: "day",
381
- navigationHandlers: {
382
- previous: () => require_to_date_string.toDateString((0, dayjs.default)(date).subtract(1, "day")),
383
- next: () => require_to_date_string.toDateString((0, dayjs.default)(date).add(1, "day")),
384
- today: () => require_to_date_string.toDateString(resolveNow())
385
- },
386
- control: {
387
- title: require_format_date.formatDate({
388
- locale: ctx.getLocale(locale),
389
- date,
390
- format: headerFormat
391
- }),
392
- miw: 140
393
- },
394
- labels,
395
- onDateChange,
396
- onViewChange,
397
- previousControlProps,
398
- nextControlProps,
399
- todayControlProps,
400
- viewSelectProps,
401
- stylesApiProps
402
- }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.ScrollArea.Autosize, {
403
- scrollbarSize: 4,
404
- ...scrollAreaProps,
405
- ...getStyles("dayViewScrollArea", {
406
- className: scrollAreaProps?.className,
407
- style: scrollAreaProps?.style
385
+ children: [
386
+ withHeader && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_ScheduleHeaderBase.ScheduleHeaderBase, {
387
+ view: "day",
388
+ navigationHandlers: {
389
+ previous: () => require_to_date_string.toDateString((0, dayjs.default)(date).subtract(1, "day")),
390
+ next: () => require_to_date_string.toDateString((0, dayjs.default)(date).add(1, "day")),
391
+ today: () => require_to_date_string.toDateString(resolveNow())
392
+ },
393
+ control: {
394
+ title: require_format_date.formatDate({
395
+ locale: ctx.getLocale(locale),
396
+ date,
397
+ format: headerFormat
398
+ }),
399
+ miw: 140
400
+ },
401
+ labels,
402
+ onDateChange,
403
+ onViewChange,
404
+ previousControlProps,
405
+ nextControlProps,
406
+ todayControlProps,
407
+ viewSelectProps,
408
+ stylesApiProps,
409
+ onAgendaClick: withAgenda ? () => setAgendaOpen((v) => !v) : void 0,
410
+ agendaActive: agendaOpen
408
411
  }),
409
- viewportRef: mergedViewportRef,
410
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_mantine_core.Box, {
411
- ...getStyles("dayViewInner"),
412
- children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
413
- ...getStyles("dayViewSlotLabels"),
414
- children: [withAllDaySlot && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.Box, {
415
- ...getStyles("dayViewSlotLabel"),
416
- mod: { "all-day": true },
417
- children: require_labels.getLabel("allDay", labels)
418
- }), slotsLabels]
419
- }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
420
- ...getStyles("dayViewSlots"),
421
- children: [withAllDaySlot && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
422
- ...getStyles("dayViewAllDay"),
423
- children: [
424
- backgroundAllDayEventNodes,
425
- /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
426
- ...getStyles("dayViewAllDayEvents"),
427
- children: [allDayEventsNodes, allDayEventsCount.hiddenEventsCount > 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_MoreEvents.MoreEvents, {
428
- events: eventsData.allDayEvents,
429
- moreEventsCount: allDayEventsCount.hiddenEventsCount,
430
- renderEventBody,
431
- renderEvent,
432
- mode,
433
- labels,
434
- onEventClick,
435
- ...stylesApiProps,
436
- ...moreEventsProps
437
- })]
438
- }),
439
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.UnstyledButton, {
440
- ...getStyles("dayViewSlot"),
441
- mod: {
442
- "all-day": true,
443
- static: mode === "static"
444
- },
445
- "aria-label": `${require_labels.getLabel("timeSlot", labels)} ${require_labels.getLabel("allDay", labels)}`,
446
- onClick: mode === "static" || !onAllDaySlotClick ? void 0 : (e) => {
447
- onAllDaySlotClick((0, dayjs.default)(date).format("YYYY-MM-DD"), e);
448
- }
449
- })
450
- ]
412
+ agendaOpen && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_AgendaView.AgendaView, {
413
+ rangeStart: (0, dayjs.default)(date).startOf("day").format("YYYY-MM-DD"),
414
+ rangeEnd: (0, dayjs.default)(date).endOf("day").format("YYYY-MM-DD"),
415
+ events,
416
+ locale,
417
+ labels,
418
+ mode,
419
+ onEventClick,
420
+ recurrenceExpansionLimit,
421
+ ...stylesApiProps
422
+ }),
423
+ !agendaOpen && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.ScrollArea.Autosize, {
424
+ scrollbarSize: 4,
425
+ ...scrollAreaProps,
426
+ ...getStyles("dayViewScrollArea", {
427
+ className: scrollAreaProps?.className,
428
+ style: scrollAreaProps?.style
429
+ }),
430
+ viewportRef: mergedViewportRef,
431
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_mantine_core.Box, {
432
+ ...getStyles("dayViewInner"),
433
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
434
+ ...getStyles("dayViewSlotLabels"),
435
+ children: [withAllDaySlot && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.Box, {
436
+ ...getStyles("dayViewSlotLabel"),
437
+ mod: { "all-day": true },
438
+ children: require_labels.getLabel("allDay", labels)
439
+ }), slotsLabels]
451
440
  }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
452
- ref: timeSlotsContainerRef,
453
- ...getStyles("dayViewTimeSlots"),
454
- onDragOver: withDragHandlers ? (event) => {
455
- const slotIndex = getSlotIndexFromDragPoint(event);
456
- if (slotIndex !== null) dragDrop.handleDragOver(event, slotIndex);
457
- } : void 0,
458
- onDragLeave: withDragHandlers ? dragDrop.handleDragLeave : void 0,
459
- onDrop: withDragHandlers ? (event) => {
460
- const slotIndex = getSlotIndexFromDragPoint(event);
461
- if (slotIndex !== null) dragDrop.handleDrop(event, slotIndex);
462
- } : void 0,
463
- children: [
464
- backgroundTimedEventNodes,
465
- eventsNodes,
466
- showCurrentTimeIndicator && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_CurrentTimeIndicator.CurrentTimeIndicator, {
467
- startOffset: "calc(var(--day-view-slot-labels-width) * -1)",
468
- endOffset: "0rem",
469
- topOffset: "0rem",
470
- timeBubbleStartOffset: "calc(var(--day-view-slot-labels-width) * -1 + 30px)",
471
- currentTimeFormat: slotLabelFormat,
472
- withTimeBubble: withCurrentTimeBubble,
473
- withThumb: !withCurrentTimeBubble,
474
- locale,
475
- startTime,
476
- endTime,
477
- intervalMinutes,
478
- getCurrentTime,
479
- ...stylesApiProps
480
- }),
481
- items
482
- ]
441
+ ...getStyles("dayViewSlots"),
442
+ children: [withAllDaySlot && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
443
+ ...getStyles("dayViewAllDay"),
444
+ children: [
445
+ backgroundAllDayEventNodes,
446
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
447
+ ...getStyles("dayViewAllDayEvents"),
448
+ children: [allDayEventsNodes, allDayEventsCount.hiddenEventsCount > 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_MoreEvents.MoreEvents, {
449
+ events: eventsData.allDayEvents,
450
+ moreEventsCount: allDayEventsCount.hiddenEventsCount,
451
+ renderEventBody,
452
+ renderEvent,
453
+ mode,
454
+ labels,
455
+ onEventClick,
456
+ ...stylesApiProps,
457
+ ...moreEventsProps
458
+ })]
459
+ }),
460
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.UnstyledButton, {
461
+ ...getStyles("dayViewSlot"),
462
+ mod: {
463
+ "all-day": true,
464
+ static: mode === "static"
465
+ },
466
+ "aria-label": `${require_labels.getLabel("timeSlot", labels)} ${require_labels.getLabel("allDay", labels)}`,
467
+ onClick: mode === "static" || !onAllDaySlotClick ? void 0 : (e) => {
468
+ onAllDaySlotClick((0, dayjs.default)(date).format("YYYY-MM-DD"), e);
469
+ }
470
+ })
471
+ ]
472
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
473
+ ref: timeSlotsContainerRef,
474
+ ...getStyles("dayViewTimeSlots"),
475
+ onDragOver: withDragHandlers ? (event) => {
476
+ const slotIndex = getSlotIndexFromDragPoint(event);
477
+ if (slotIndex !== null) dragDrop.handleDragOver(event, slotIndex);
478
+ } : void 0,
479
+ onDragLeave: withDragHandlers ? dragDrop.handleDragLeave : void 0,
480
+ onDrop: withDragHandlers ? (event) => {
481
+ const slotIndex = getSlotIndexFromDragPoint(event);
482
+ if (slotIndex !== null) dragDrop.handleDrop(event, slotIndex);
483
+ } : void 0,
484
+ children: [
485
+ backgroundTimedEventNodes,
486
+ eventsNodes,
487
+ showCurrentTimeIndicator && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_CurrentTimeIndicator.CurrentTimeIndicator, {
488
+ startOffset: "calc(var(--day-view-slot-labels-width) * -1)",
489
+ endOffset: "0rem",
490
+ topOffset: "0rem",
491
+ timeBubbleStartOffset: "calc(var(--day-view-slot-labels-width) * -1 + 30px)",
492
+ currentTimeFormat: slotLabelFormat,
493
+ withTimeBubble: withCurrentTimeBubble,
494
+ withThumb: !withCurrentTimeBubble,
495
+ locale,
496
+ startTime,
497
+ endTime,
498
+ intervalMinutes,
499
+ getCurrentTime,
500
+ ...stylesApiProps
501
+ }),
502
+ items
503
+ ]
504
+ })]
483
505
  })]
484
- })]
506
+ })
485
507
  })
486
- })]
508
+ ]
487
509
  });
488
510
  if (withEventsDragAndDrop) return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_DragContext.DragContext.Provider, {
489
511
  value: dragDrop.dragContextValue,