@primeui/vue-scheduler 0.0.1-alpha.1 → 1.0.0-beta.1

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 (215) hide show
  1. package/README.md +0 -5
  2. package/dist/Scheduler.context.d.ts +6 -2
  3. package/dist/Scheduler.vue.d.ts +4 -0
  4. package/dist/chunks/AgendaList.vue_vue_type_script_setup_true_lang-CzR4fr-_.mjs +195 -0
  5. package/dist/chunks/DateMonthGrid.parts-BzNiqQxr.mjs +992 -0
  6. package/dist/chunks/MonthGrid.parts-ChZtQsBz.mjs +480 -0
  7. package/dist/chunks/MonthGridMoreLink.vue_vue_type_script_setup_true_lang-ofPIiuwn.mjs +33 -0
  8. package/dist/chunks/MonthGridMorePopover.vue_vue_type_script_setup_true_lang-CeUzHOYW.mjs +932 -0
  9. package/dist/chunks/ResourceMonthGrid.parts-SnuI2jm7.mjs +1144 -0
  10. package/dist/chunks/Scheduler.parts-DdjV5TdJ.mjs +4111 -0
  11. package/dist/chunks/SchedulerContentOutlet-zjiyyEaS.mjs +389 -0
  12. package/dist/chunks/SchedulerContentScope-C9sih2yJ.mjs +183 -0
  13. package/dist/chunks/TimeGrid.parts-0Ca-cysA.mjs +619 -0
  14. package/dist/chunks/TimeGridBlockedInterval.vue_vue_type_script_setup_true_lang-mRkBslaW.mjs +52 -0
  15. package/dist/chunks/TimeGridDragPreview.vue_vue_type_script_setup_true_lang-COVjhfYQ.mjs +1035 -0
  16. package/dist/chunks/Timeline.parts-Cbdl8vxt.mjs +1951 -0
  17. package/dist/chunks/YearGrid.vue_vue_type_script_setup_true_lang--eilt_6f.mjs +227 -0
  18. package/dist/chunks/keyboardOwner-DDeKHIWX.mjs +30 -0
  19. package/dist/chunks/timezone-display-CGpPS0DH.mjs +52 -0
  20. package/dist/chunks/useHorizontalGroupedSizing-BcGRdWEZ.mjs +47 -0
  21. package/dist/chunks/useResourceStore-D6suUGIR.mjs +113 -0
  22. package/dist/chunks/useSchedulerAutoScroll-Dh-lxPHq.mjs +45 -0
  23. package/dist/chunks/useTimelineVirtualScroll-DwGUNfPF.mjs +631 -0
  24. package/dist/components.d.ts +1 -0
  25. package/dist/components.mjs +35 -0
  26. package/dist/composables/index.mjs +5 -4
  27. package/dist/composables/useSchedulerAppointmentSlotTracking.d.ts +1 -1
  28. package/dist/composables/useSchedulerAutoScroll.d.ts +3 -3
  29. package/dist/composables/useSchedulerInlineEditState.d.ts +2 -1
  30. package/dist/composables/useSchedulerInteractionState.d.ts +2 -2
  31. package/dist/composables/useSchedulerOverlayState.d.ts +2 -1
  32. package/dist/composables/useSchedulerResourceConflicts.d.ts +2 -1
  33. package/dist/composables/useSchedulerSelectionState.d.ts +2 -1
  34. package/dist/composables/useSchedulerViewState.d.ts +43 -0
  35. package/dist/composables/useTimelineDragDrop.d.ts +1 -1
  36. package/dist/composables/useTimelineVirtualScroll.d.ts +1 -1
  37. package/dist/index.d.ts +3 -1
  38. package/dist/index.mjs +232 -12221
  39. package/dist/shared/AdaptiveResourceBreadcrumb.vue.d.ts +2 -2
  40. package/dist/utils/accessibility.d.ts +1 -0
  41. package/dist/utils/browser.d.ts +2 -1
  42. package/dist/utils/timedInteraction.d.ts +1 -1
  43. package/dist/views/agenda.d.ts +3 -0
  44. package/dist/views/agenda.mjs +10 -0
  45. package/dist/views/date.d.ts +3 -0
  46. package/dist/views/date.mjs +9 -0
  47. package/dist/views/day.d.ts +3 -0
  48. package/dist/views/day.mjs +15 -0
  49. package/dist/views/month.d.ts +3 -0
  50. package/dist/views/month.mjs +14 -0
  51. package/dist/views/resource.d.ts +4 -0
  52. package/dist/views/resource.mjs +18 -0
  53. package/dist/views/timeline.d.ts +21 -0
  54. package/dist/views/timeline.mjs +11 -0
  55. package/dist/views/week.d.ts +3 -0
  56. package/dist/views/week.mjs +15 -0
  57. package/dist/views/year.d.ts +3 -0
  58. package/dist/views/year.mjs +9 -0
  59. package/package.json +23 -13
  60. package/dist/Scheduler.context.d.mts +0 -625
  61. package/dist/Scheduler.event-context.d.mts +0 -54
  62. package/dist/Scheduler.header-context.d.mts +0 -51
  63. package/dist/Scheduler.overlay-context.d.mts +0 -131
  64. package/dist/Scheduler.parts.d.mts +0 -79
  65. package/dist/Scheduler.payloads.d.mts +0 -19
  66. package/dist/Scheduler.props.d.mts +0 -134
  67. package/dist/Scheduler.resource-context.d.mts +0 -162
  68. package/dist/Scheduler.test-utils.d.mts +0 -4
  69. package/dist/Scheduler.utility-context.d.mts +0 -112
  70. package/dist/Scheduler.vue.d.mts +0 -428
  71. package/dist/chunks/useResourceStore-D6lZ4kim.mjs +0 -771
  72. package/dist/composables/index.d.mts +0 -3
  73. package/dist/composables/useAdaptiveRendering.d.mts +0 -12
  74. package/dist/composables/useAdaptiveResourceMode.d.mts +0 -39
  75. package/dist/composables/useDateGridEngine.d.mts +0 -7
  76. package/dist/composables/useDateMonthGridEngine.d.mts +0 -7
  77. package/dist/composables/useHorizontalGroupedSizing.d.mts +0 -24
  78. package/dist/composables/useInlineEdit.d.mts +0 -17
  79. package/dist/composables/useMonthGridEngine.d.mts +0 -3
  80. package/dist/composables/useResourceGridEngine.d.mts +0 -7
  81. package/dist/composables/useResourceMonthGridEngine.d.mts +0 -7
  82. package/dist/composables/useResourceStore.d.mts +0 -324
  83. package/dist/composables/useSchedulerAppointmentSlotTracking.d.mts +0 -15
  84. package/dist/composables/useSchedulerAutoScroll.d.mts +0 -16
  85. package/dist/composables/useSchedulerContext.d.mts +0 -143
  86. package/dist/composables/useSchedulerEventActions.d.mts +0 -57
  87. package/dist/composables/useSchedulerEventState.d.mts +0 -26
  88. package/dist/composables/useSchedulerFormatting.d.mts +0 -34
  89. package/dist/composables/useSchedulerInlineEditState.d.mts +0 -24
  90. package/dist/composables/useSchedulerInteractionState.d.mts +0 -65
  91. package/dist/composables/useSchedulerOverlayState.d.mts +0 -596
  92. package/dist/composables/useSchedulerPrintRuntime.d.mts +0 -45
  93. package/dist/composables/useSchedulerRecurrenceState.d.mts +0 -102
  94. package/dist/composables/useSchedulerResourceConflicts.d.mts +0 -26
  95. package/dist/composables/useSchedulerResourceState.d.mts +0 -406
  96. package/dist/composables/useSchedulerSelectionState.d.mts +0 -66
  97. package/dist/composables/useTimeGridEngine.d.mts +0 -3
  98. package/dist/composables/useTimelineDragDrop.d.mts +0 -497
  99. package/dist/composables/useTimelineEngine.d.mts +0 -3
  100. package/dist/composables/useTimelineVirtualScroll.d.mts +0 -37
  101. package/dist/engines/agenda/AgendaList.vue.d.mts +0 -27
  102. package/dist/engines/date-grid/DateGrid.context.d.mts +0 -19
  103. package/dist/engines/date-grid/DateGrid.parts.d.mts +0 -5
  104. package/dist/engines/date-grid/DateGrid.vue.d.mts +0 -22
  105. package/dist/engines/date-grid/DateGridAllDayRow.vue.d.mts +0 -9
  106. package/dist/engines/date-grid/DateGridBody.vue.d.mts +0 -21
  107. package/dist/engines/date-grid/DateGridColumn.vue.d.mts +0 -28
  108. package/dist/engines/date-grid/DateGridHeader.vue.d.mts +0 -27
  109. package/dist/engines/date-grid/DateGridSuperColumn.vue.d.mts +0 -23
  110. package/dist/engines/date-month-grid/DateMonthGrid.context.d.mts +0 -20
  111. package/dist/engines/date-month-grid/DateMonthGrid.parts.d.mts +0 -5
  112. package/dist/engines/date-month-grid/DateMonthGrid.vue.d.mts +0 -23
  113. package/dist/engines/date-month-grid/DateMonthGridBody.vue.d.mts +0 -21
  114. package/dist/engines/date-month-grid/DateMonthGridDay.vue.d.mts +0 -38
  115. package/dist/engines/date-month-grid/DateMonthGridResourceHeader.vue.d.mts +0 -9
  116. package/dist/engines/date-month-grid/DateMonthGridWeek.vue.d.mts +0 -23
  117. package/dist/engines/date-month-grid/DateMonthGridWeekdays.vue.d.mts +0 -21
  118. package/dist/engines/month-grid/MonthGrid.context.d.mts +0 -2
  119. package/dist/engines/month-grid/MonthGrid.parts.d.mts +0 -11
  120. package/dist/engines/month-grid/MonthGrid.vue.d.mts +0 -24
  121. package/dist/engines/month-grid/MonthGridBody.vue.d.mts +0 -21
  122. package/dist/engines/month-grid/MonthGridDay.vue.d.mts +0 -45
  123. package/dist/engines/month-grid/MonthGridDayHeader.vue.d.mts +0 -26
  124. package/dist/engines/month-grid/MonthGridDragPreview.vue.d.mts +0 -35
  125. package/dist/engines/month-grid/MonthGridEvent.vue.d.mts +0 -41
  126. package/dist/engines/month-grid/MonthGridMoreLink.vue.d.mts +0 -23
  127. package/dist/engines/month-grid/MonthGridMorePopover.vue.d.mts +0 -3
  128. package/dist/engines/month-grid/MonthGridNowIndicator.vue.d.mts +0 -15
  129. package/dist/engines/month-grid/MonthGridWeek.vue.d.mts +0 -26
  130. package/dist/engines/month-grid/MonthGridWeekdays.vue.d.mts +0 -21
  131. package/dist/engines/resource-grid/ResourceGrid.context.d.mts +0 -19
  132. package/dist/engines/resource-grid/ResourceGrid.parts.d.mts +0 -5
  133. package/dist/engines/resource-grid/ResourceGrid.vue.d.mts +0 -22
  134. package/dist/engines/resource-grid/ResourceGridAllDayRow.vue.d.mts +0 -9
  135. package/dist/engines/resource-grid/ResourceGridBody.vue.d.mts +0 -21
  136. package/dist/engines/resource-grid/ResourceGridDayColumn.vue.d.mts +0 -28
  137. package/dist/engines/resource-grid/ResourceGridHeader.vue.d.mts +0 -27
  138. package/dist/engines/resource-grid/ResourceGridSuperColumn.vue.d.mts +0 -24
  139. package/dist/engines/resource-month-grid/ResourceMonthGrid.context.d.mts +0 -19
  140. package/dist/engines/resource-month-grid/ResourceMonthGrid.parts.d.mts +0 -6
  141. package/dist/engines/resource-month-grid/ResourceMonthGrid.vue.d.mts +0 -23
  142. package/dist/engines/resource-month-grid/ResourceMonthGridBody.vue.d.mts +0 -21
  143. package/dist/engines/resource-month-grid/ResourceMonthGridColumn.vue.d.mts +0 -24
  144. package/dist/engines/resource-month-grid/ResourceMonthGridDay.vue.d.mts +0 -37
  145. package/dist/engines/resource-month-grid/ResourceMonthGridHeader.vue.d.mts +0 -23
  146. package/dist/engines/resource-month-grid/ResourceMonthGridWeek.vue.d.mts +0 -26
  147. package/dist/engines/time-grid/TimeGrid.context.d.mts +0 -2
  148. package/dist/engines/time-grid/TimeGrid.parts.d.mts +0 -15
  149. package/dist/engines/time-grid/TimeGrid.vue.d.mts +0 -23
  150. package/dist/engines/time-grid/TimeGridAllDayEvent.vue.d.mts +0 -27
  151. package/dist/engines/time-grid/TimeGridAllDayRow.vue.d.mts +0 -23
  152. package/dist/engines/time-grid/TimeGridAppointmentSlots.vue.d.mts +0 -26
  153. package/dist/engines/time-grid/TimeGridBlockedInterval.vue.d.mts +0 -21
  154. package/dist/engines/time-grid/TimeGridBody.vue.d.mts +0 -21
  155. package/dist/engines/time-grid/TimeGridBusinessHours.vue.d.mts +0 -18
  156. package/dist/engines/time-grid/TimeGridDayColumn.vue.d.mts +0 -27
  157. package/dist/engines/time-grid/TimeGridDragPreview.vue.d.mts +0 -26
  158. package/dist/engines/time-grid/TimeGridEvent.vue.d.mts +0 -52
  159. package/dist/engines/time-grid/TimeGridHeader.vue.d.mts +0 -32
  160. package/dist/engines/time-grid/TimeGridNowIndicator.vue.d.mts +0 -16
  161. package/dist/engines/time-grid/TimeGridSlot.vue.d.mts +0 -33
  162. package/dist/engines/time-grid/TimeGridSlotGrid.vue.d.mts +0 -22
  163. package/dist/engines/time-grid/TimeGridTimeColumn.vue.d.mts +0 -28
  164. package/dist/engines/timeline/Timeline.context.d.mts +0 -2
  165. package/dist/engines/timeline/Timeline.parts.d.mts +0 -14
  166. package/dist/engines/timeline/Timeline.vue.d.mts +0 -23
  167. package/dist/engines/timeline/TimelineBlockedInterval.vue.d.mts +0 -22
  168. package/dist/engines/timeline/TimelineBody.vue.d.mts +0 -26
  169. package/dist/engines/timeline/TimelineBusinessHours.vue.d.mts +0 -16
  170. package/dist/engines/timeline/TimelineCell.vue.d.mts +0 -32
  171. package/dist/engines/timeline/TimelineDragPreview.vue.d.mts +0 -26
  172. package/dist/engines/timeline/TimelineEvent.vue.d.mts +0 -57
  173. package/dist/engines/timeline/TimelineHeader.vue.d.mts +0 -21
  174. package/dist/engines/timeline/TimelineHeaderCell.vue.d.mts +0 -35
  175. package/dist/engines/timeline/TimelineHeaderRow.vue.d.mts +0 -30
  176. package/dist/engines/timeline/TimelineLane.vue.d.mts +0 -29
  177. package/dist/engines/timeline/TimelineNowIndicator.vue.d.mts +0 -16
  178. package/dist/engines/timeline/TimelineResourceArea.vue.d.mts +0 -25
  179. package/dist/engines/timeline/TimelineResourceRow.vue.d.mts +0 -38
  180. package/dist/engines/timeline/TimelineYear.vue.d.mts +0 -9
  181. package/dist/engines/timeline/TimelineYearEvent.vue.d.mts +0 -10
  182. package/dist/engines/year-grid/YearGrid.vue.d.mts +0 -54
  183. package/dist/index.d.mts +0 -24
  184. package/dist/release-date.d.mts +0 -11
  185. package/dist/shared/AdaptiveResourceBreadcrumb.vue.d.mts +0 -42
  186. package/dist/shared/AdaptiveResourceSelector.vue.d.mts +0 -76
  187. package/dist/shared/ResourceArea.vue.d.mts +0 -67
  188. package/dist/shared/SchedulerContextMenu.vue.d.mts +0 -32
  189. package/dist/shared/SchedulerMorePopover.vue.d.mts +0 -30
  190. package/dist/shared/SchedulerPopover.vue.d.mts +0 -28
  191. package/dist/shared/SchedulerQuickInfo.vue.d.mts +0 -36
  192. package/dist/shared/SchedulerRecurrenceDialog.vue.d.mts +0 -27
  193. package/dist/shell/SchedulerAdaptiveResourceControls.vue.d.mts +0 -3
  194. package/dist/shell/SchedulerCategoryLegend.vue.d.mts +0 -26
  195. package/dist/shell/SchedulerContent.vue.d.mts +0 -13
  196. package/dist/shell/SchedulerContentOutlet.d.mts +0 -30
  197. package/dist/shell/SchedulerContentScope.d.mts +0 -39
  198. package/dist/shell/SchedulerFooter.vue.d.mts +0 -17
  199. package/dist/shell/SchedulerHeader.vue.d.mts +0 -49
  200. package/dist/shell/SchedulerLoading.vue.d.mts +0 -13
  201. package/dist/shell/SchedulerNavigation.vue.d.mts +0 -26
  202. package/dist/shell/SchedulerSelectionToolbar.vue.d.mts +0 -27
  203. package/dist/shell/SchedulerTitle.vue.d.mts +0 -17
  204. package/dist/shell/SchedulerViewSelector.vue.d.mts +0 -23
  205. package/dist/shell/contentDeclarations.d.mts +0 -6
  206. package/dist/shell/headerToolbar.d.mts +0 -21
  207. package/dist/shell/outletRenderers.d.mts +0 -45
  208. package/dist/utils/accessibility.d.mts +0 -19
  209. package/dist/utils/browser.d.mts +0 -6
  210. package/dist/utils/devWarnings.d.mts +0 -3
  211. package/dist/utils/event-anchor.d.mts +0 -2
  212. package/dist/utils/keyboardOwner.d.mts +0 -1
  213. package/dist/utils/rtl-scroll.d.mts +0 -22
  214. package/dist/utils/timedInteraction.d.mts +0 -10
  215. package/dist/utils/timezone-display.d.mts +0 -8
package/README.md CHANGED
@@ -304,8 +304,3 @@ const events = ref([
304
304
  - Use engine parts when the product is fixed to one mode, such as a timeline layout, and you need custom framing around that engine.
305
305
  - Use child outlets inside `Scheduler.Content` for routed events, cells, and resources. Keep part-owned slots for shell/overlay chrome such as `Scheduler.Header`, `Scheduler.QuickInfo`, `Scheduler.Popover`, `Scheduler.MorePopover`, and `Scheduler.ContextMenu`. Event, cell, resource, agenda, and mini-month customization belongs on the semantic child outlet parts.
306
306
  - If an application wants one-line usage, create that wrapper in application code by composing these public parts.
307
-
308
- ## Further Reading
309
-
310
- - [Compound API reference](../docs/COMPOUND_API.md)
311
- - [Compound headless guide](../COMPOUND_HEADLESS_GUIDE.md)
@@ -1,6 +1,8 @@
1
1
  import type { InjectionKey, Ref, ComputedRef } from 'vue';
2
- import type { AdaptiveRenderingOptions, AppointmentSlotIndicator, AppointmentSlotOverlay, AppointmentSlotsOptions, AutoHeightOptions, BlockedInterval, BlockedIntervalsOptions, BusinessHours, SchedulerText, CapacityExceededPayload, ConflictOptions, ConflictDetectedPayload, DateDisplayOptions, DateRange, DensityMode, EventAllowCallback, EventCategory, EventConstraint, EventDragState, EventDropPayload, EventResizeStopPayload, EventResizeState, EventResourceChangePayload, EventSelectionLimitReachedPayload, FlattenedResource, HorizontalResourceColumnMode, InlineEditCancelPayload, InlineEditSavePayload, NormalizedQuickInfoOptions, NormalizedInlineEditOptions, QuickInfoDeletePayload, QuickInfoEditPayload, QuickInfoHidePayload, ResourceCapacityInfo, ResourceRowLayout, RecurrenceDeletePayload, RecurrenceEditOptions, RecurrenceEditPayload, PrintInvocationOptions, ResolvedPrintPageChromeState, SchedulerBulkDeletePayload, SchedulerBulkMovePayload, SchedulerBulkUpdatePayload, SchedulerEvent, SchedulerEventSelectionMode, SchedulerEventSelectionOptions, SchedulerCalendarDisplayConfig, SchedulerCalendarMode, SchedulerHeaderToolbar, SchedulerPermissionAction, SchedulerResource, SchedulerSelectionMode, SchedulerViewType, SchedulerNumberingSystem, SelectAllowCallback, SelectConstraintConfig, SlotBookPayload, SlotCancelPayload, StackingOptions, TimeFormatOptions, TimezoneDisplay, BreadcrumbItem, ConflictWorkflowResult } from '@primeui/scheduler-core';
3
- import type { MonthGridDayCellViewModel, MonthResizePreviewData } from '@primeui/scheduler-core';
2
+ import type { AdaptiveRenderingOptions, AppointmentSlotIndicator, AppointmentSlotOverlay, AppointmentSlotsOptions, AutoHeightOptions, BlockedInterval, BlockedIntervalsOptions, BusinessHours, SchedulerText, CapacityExceededPayload, ConflictOptions, ConflictDetectedPayload, DateDisplayOptions, DateRange, DensityMode, EventAllowCallback, EventCategory, EventConstraint, EventDragState, EventDropPayload, EventResizeStopPayload, EventResizeState, EventResourceChangePayload, EventSelectionLimitReachedPayload, FlattenedResource, HorizontalResourceColumnMode, InlineEditCancelPayload, InlineEditSavePayload, QuickInfoDeletePayload, QuickInfoEditPayload, QuickInfoHidePayload, ResourceCapacityInfo, ResourceRowLayout, RecurrenceDeletePayload, RecurrenceEditOptions, RecurrenceEditPayload, PrintInvocationOptions, ResolvedPrintPageChromeState, SchedulerBulkDeletePayload, SchedulerBulkMovePayload, SchedulerBulkUpdatePayload, SchedulerEvent, SchedulerEventSelectionMode, SchedulerEventSelectionOptions, SchedulerCalendarDisplayConfig, SchedulerCalendarMode, SchedulerHeaderToolbar, SchedulerPermissionAction, SchedulerResource, SchedulerSelectionMode, SchedulerViewType, SchedulerNumberingSystem, SelectAllowCallback, SelectConstraintConfig, SlotBookPayload, SlotCancelPayload, StackingOptions, TimeFormatOptions, TimezoneDisplay, BreadcrumbItem } from '@primeui/scheduler-core';
3
+ import type { ConflictWorkflowResult, NormalizedInlineEditOptions, NormalizedQuickInfoOptions } from '@primeui/scheduler-core/interaction';
4
+ import type { MonthGridDayCellViewModel } from '@primeui/scheduler-core';
5
+ import type { MonthResizePreviewData } from '@primeui/scheduler-core/controllers';
4
6
  import type { VueContextMenuContext, VueEventDragPayload, VueEventDragStartPayload, VueEventDragStopPayload, VueEventResizePayload, VueEventResizeStartPayload, VueInlineEditStartPayload, VueMoreClickPayload, VueQuickInfoShowPayload, VueResourceClickPayload, VueSchedulerDateClickPayload, VueSchedulerDateSelectPayload, VueSchedulerEventClickPayload, VueSchedulerEventMousePayload, VueSchedulerPermissionContext, VueSlotClickPayload } from './Scheduler.payloads';
5
7
  export declare const SCHEDULER_KEY: InjectionKey<SchedulerContext>;
6
8
  export declare const TIMEGRID_KEY: InjectionKey<TimeGridContext>;
@@ -540,6 +542,7 @@ export interface TimelineContext {
540
542
  resources: ComputedRef<SchedulerResource[]>;
541
543
  visibleResources: ComputedRef<FlattenedResource[]>;
542
544
  resourceLayouts: ComputedRef<ResourceRowLayout[]>;
545
+ visibleResourceLayouts: ComputedRef<ResourceRowLayout[]>;
543
546
  totalResourceHeight: ComputedRef<number>;
544
547
  expandResource: (id: string | number) => void;
545
548
  collapseResource: (id: string | number) => void;
@@ -594,6 +597,7 @@ export interface TimelineContext {
594
597
  setHeaderHeight: (source: 'timeline' | 'resource', height: number) => void;
595
598
  scrollToNow: (smooth?: boolean) => void;
596
599
  scrollToDate: (date: Date, centerInView?: boolean, smooth?: boolean) => void;
600
+ syncTimelineBodyViewport: (target?: HTMLElement | null) => void;
597
601
  handleScroll: (e: Event) => void;
598
602
  handleResourceAreaScroll: (e: Event) => void;
599
603
  scrollContainerRef: Ref<HTMLElement | undefined>;
@@ -150,6 +150,8 @@ declare const __VLS_base: import("vue").DefineComponent<VueSchedulerProps, {
150
150
  }) => any;
151
151
  datesChange: (payload: DateRange) => any;
152
152
  dateChange: (date: Date) => any;
153
+ "update:view": (view: SchedulerViewType) => any;
154
+ "update:date": (date: Date) => any;
153
155
  selectionChange: (payload: SchedulerSelectionChangePayload) => any;
154
156
  eventSelectionChange: (payload: SchedulerEventSelectionChangePayload) => any;
155
157
  bulkMove: (payload: SchedulerBulkMovePayload) => any;
@@ -229,6 +231,8 @@ declare const __VLS_base: import("vue").DefineComponent<VueSchedulerProps, {
229
231
  }) => any) | undefined;
230
232
  onDatesChange?: ((payload: DateRange) => any) | undefined;
231
233
  onDateChange?: ((date: Date) => any) | undefined;
234
+ "onUpdate:view"?: ((view: SchedulerViewType) => any) | undefined;
235
+ "onUpdate:date"?: ((date: Date) => any) | undefined;
232
236
  onSelectionChange?: ((payload: SchedulerSelectionChangePayload) => any) | undefined;
233
237
  onEventSelectionChange?: ((payload: SchedulerEventSelectionChangePayload) => any) | undefined;
234
238
  onBulkMove?: ((payload: SchedulerBulkMovePayload) => any) | undefined;
@@ -0,0 +1,195 @@
1
+ import { defineComponent as P, inject as B, computed as D, openBlock as i, createElementBlock as u, mergeProps as h, unref as d, renderSlot as Y, Fragment as E, renderList as k, normalizeClass as g, createBlock as K, resolveDynamicComponent as T, createCommentVNode as b, createElementVNode as U, normalizeStyle as $, toDisplayString as q } from "vue";
2
+ import { startOfDayInTimezone as C, endOfDayInTimezone as W, isSameDay as G, getSchedulerEventSurfaceStyle as J, resolveSchedulerEventSurfaceColor as Q } from "@primeui/scheduler-core";
3
+ import { l as X, m as Z } from "./SchedulerContentScope-C9sih2yJ.mjs";
4
+ import { n as j, g as A } from "./timezone-display-CGpPS0DH.mjs";
5
+ const ee = ["data-view"], te = ["data-event-id", "data-view", "data-shell", "data-resource-id", "data-selected", "aria-label", "onClick", "onKeydown"], se = /* @__PURE__ */ P({
6
+ inheritAttrs: !1,
7
+ __name: "AgendaList",
8
+ props: {
9
+ outletRenderers: { default: () => ({}) }
10
+ },
11
+ setup(x) {
12
+ const c = x, t = B(X), p = D(() => {
13
+ const e = t.currentDate.value, a = C(e, t.resolvedDisplayTimezone.value), r = new Date(e);
14
+ r.setDate(r.getDate() + Math.max(1, t.agendaDays.value) - 1);
15
+ const n = W(r, t.resolvedDisplayTimezone.value);
16
+ return j(t.events.value, t.timezone.value, t.resolvedDisplayTimezone.value).filter((o) => {
17
+ const l = o.start instanceof Date ? o.start : new Date(o.start), v = o.end ? o.end instanceof Date ? o.end : new Date(o.end) : new Date(l.getTime() + (o.duration || 36e5));
18
+ return l < n && v > a;
19
+ }).sort((o, l) => {
20
+ const v = o.start instanceof Date ? o.start : new Date(o.start), O = l.start instanceof Date ? l.start : new Date(l.start);
21
+ return v.getTime() - O.getTime();
22
+ });
23
+ }), m = D(() => {
24
+ const e = /* @__PURE__ */ new Map();
25
+ if (t.showEmptyDays.value) {
26
+ const a = Math.max(1, t.agendaDays.value), r = C(t.currentDate.value, t.resolvedDisplayTimezone.value);
27
+ for (let n = 0; n < a; n++) {
28
+ const s = new Date(r);
29
+ s.setDate(s.getDate() + n), e.set(A(s), { date: new Date(s.getFullYear(), s.getMonth(), s.getDate()), events: [] });
30
+ }
31
+ }
32
+ for (const a of p.value) {
33
+ const r = a.start instanceof Date ? a.start : new Date(a.start), n = A(r);
34
+ e.has(n) || e.set(n, { date: new Date(r.getFullYear(), r.getMonth(), r.getDate()), events: [] }), e.get(n).events.push(a);
35
+ }
36
+ return Array.from(e.values()).sort((a, r) => a.date.getTime() - r.date.getTime());
37
+ }), M = D(() => {
38
+ const e = t.noEventsMessage.value;
39
+ return typeof e == "string" && e.trim().length > 0 ? e : t.text.value.noEvents;
40
+ });
41
+ function _(e) {
42
+ const a = e.date.getDate(), r = t.formatDayNumber(e.date), n = t.formatDate(e.date, { weekday: "long" }), s = t.formatDate(e.date, {
43
+ year: "numeric",
44
+ month: "long",
45
+ day: "numeric"
46
+ }), o = e.events.length;
47
+ return {
48
+ date: e.date,
49
+ dayNumber: a,
50
+ dayNumberLabel: r,
51
+ dayOfMonth: a,
52
+ dayOfMonthLabel: r,
53
+ dayName: n,
54
+ formattedDate: s,
55
+ isToday: G(e.date, /* @__PURE__ */ new Date()),
56
+ eventCount: o,
57
+ eventCountText: String(o),
58
+ formatDate: t.formatDate,
59
+ "day-number": a,
60
+ "day-number-label": r,
61
+ "day-of-month": a,
62
+ "day-of-month-label": r,
63
+ "event-count": o,
64
+ "format-date": t.formatDate
65
+ };
66
+ }
67
+ function w(e) {
68
+ return e.allDay ? t.text.value.allDay : t.formatEventTimeRange(e);
69
+ }
70
+ function f(e) {
71
+ return t.selectedEventIds.value.includes(e);
72
+ }
73
+ function z(e) {
74
+ return y() ? {} : J(e, {
75
+ resources: t.resources.value,
76
+ categories: t.categories.value,
77
+ categoryField: t.categoryField.value
78
+ });
79
+ }
80
+ function R(e) {
81
+ return [t.classes.agendaEvent, y() && t.classes.agendaEventShellNone, f(e.id) && t.classes.eventSelected].filter(Boolean);
82
+ }
83
+ function y() {
84
+ return t.agendaEventShell?.value === "none";
85
+ }
86
+ function S(e) {
87
+ return Q(e, {
88
+ resources: t.resources.value,
89
+ categories: t.categories.value,
90
+ categoryField: t.categoryField.value
91
+ });
92
+ }
93
+ function N(e) {
94
+ return {
95
+ event: e,
96
+ isSelected: f(e.id),
97
+ timeText: w(e),
98
+ accentColor: S(e),
99
+ variant: "agenda",
100
+ view: t.currentView.value,
101
+ "is-selected": f(e.id),
102
+ "time-text": w(e),
103
+ "accent-color": S(e)
104
+ };
105
+ }
106
+ function V(e) {
107
+ return Z(e, t);
108
+ }
109
+ function F(e, a) {
110
+ t.emitEventClick({ event: e, jsEvent: a, view: t.currentView.value }), t.selectEvent(e.id, { ctrlKey: a.ctrlKey, shiftKey: a.shiftKey, metaKey: a.metaKey });
111
+ }
112
+ function I(e) {
113
+ return new MouseEvent("click", {
114
+ bubbles: !0,
115
+ cancelable: !0,
116
+ ctrlKey: e.ctrlKey,
117
+ shiftKey: e.shiftKey,
118
+ metaKey: e.metaKey,
119
+ altKey: e.altKey
120
+ });
121
+ }
122
+ function L(e, a) {
123
+ H(a) || a.key !== "Enter" && a.key !== " " && a.key !== "Space" && a.key !== "Spacebar" || (a.preventDefault(), a.stopPropagation(), t.emitEventClick({ event: e, jsEvent: I(a), view: t.currentView.value }), t.selectEvent(e.id, { ctrlKey: a.ctrlKey, shiftKey: a.shiftKey, metaKey: a.metaKey }));
124
+ }
125
+ function H(e) {
126
+ const a = e.currentTarget instanceof HTMLElement ? e.currentTarget : null, r = a?.closest('[data-slot="scheduler-agenda"]'), n = r ? Array.from(r.querySelectorAll('[data-slot="scheduler-agenda-event"][tabindex]')) : [], s = a ? n.indexOf(a) : -1;
127
+ if (s < 0 || n.length === 0)
128
+ return !1;
129
+ let o = s;
130
+ if (e.key === "ArrowDown")
131
+ o = Math.min(n.length - 1, s + 1);
132
+ else if (e.key === "ArrowUp")
133
+ o = Math.max(0, s - 1);
134
+ else if (e.key === "Home")
135
+ o = 0;
136
+ else if (e.key === "End")
137
+ o = n.length - 1;
138
+ else
139
+ return !1;
140
+ e.preventDefault(), e.stopPropagation();
141
+ const l = n[o];
142
+ return l !== a && (l.focus(), l.scrollIntoView?.({ block: "nearest" })), !0;
143
+ }
144
+ return (e, a) => (i(), u("div", h({
145
+ class: d(t).classes.agendaView,
146
+ "data-slot": "scheduler-agenda",
147
+ "data-view": d(t).currentView.value
148
+ }, e.$attrs), [
149
+ Y(e.$slots, "default", {
150
+ days: m.value,
151
+ events: p.value
152
+ }, () => [
153
+ m.value.length > 0 ? (i(!0), u(E, { key: 0 }, k(m.value, (r) => (i(), u("div", {
154
+ key: r.date.getTime(),
155
+ class: g(d(t).classes.agendaDay)
156
+ }, [
157
+ c.outletRenderers.agendaDateHeader ? (i(), K(T(c.outletRenderers.agendaDateHeader), h({
158
+ key: 0,
159
+ ref_for: !0
160
+ }, _(r)), null, 16)) : b("", !0),
161
+ U("div", {
162
+ class: g(d(t).classes.agendaEvents)
163
+ }, [
164
+ (i(!0), u(E, null, k(r.events, (n) => (i(), u("div", {
165
+ key: n.id,
166
+ class: g(R(n)),
167
+ style: $(z(n)),
168
+ "data-slot": "scheduler-agenda-event",
169
+ "data-event-id": String(n.id),
170
+ "data-view": d(t).currentView.value,
171
+ "data-shell": y() ? "none" : "default",
172
+ "data-resource-id": n.resourceId != null ? String(n.resourceId) : void 0,
173
+ "data-selected": f(n.id) ? "" : void 0,
174
+ tabindex: "0",
175
+ "aria-label": V(n),
176
+ onClick: (s) => F(n, s),
177
+ onKeydown: (s) => L(n, s)
178
+ }, [
179
+ c.outletRenderers.agendaEvent || c.outletRenderers.event ? (i(), K(T(c.outletRenderers.agendaEvent || c.outletRenderers.event), h({
180
+ key: 0,
181
+ ref_for: !0
182
+ }, N(n)), null, 16)) : b("", !0)
183
+ ], 46, te))), 128))
184
+ ], 2)
185
+ ], 2))), 128)) : (i(), u("div", {
186
+ key: 1,
187
+ class: g(d(t).classes.agendaNoEvents)
188
+ }, q(M.value), 3))
189
+ ])
190
+ ], 16, ee));
191
+ }
192
+ });
193
+ export {
194
+ se as _
195
+ };