@bimetal/calendar-angular-components 0.34.0 → 0.36.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 (92) hide show
  1. package/LICENSE +57 -129
  2. package/README.md +1 -1
  3. package/dist/binding/controller.d.ts +10 -1
  4. package/dist/binding/controller.d.ts.map +1 -1
  5. package/dist/binding/controller.js +11 -1
  6. package/dist/binding/controller.js.map +1 -1
  7. package/dist/binding/index.d.ts +5 -5
  8. package/dist/binding/index.d.ts.map +1 -1
  9. package/dist/binding/index.js +5 -5
  10. package/dist/binding/index.js.map +1 -1
  11. package/dist/binding/services/event-render.service.d.ts +9 -0
  12. package/dist/binding/services/event-render.service.d.ts.map +1 -1
  13. package/dist/binding/services/event-render.service.js +11 -0
  14. package/dist/binding/services/event-render.service.js.map +1 -1
  15. package/dist/binding/services/pointer-gesture.service.d.ts +26 -0
  16. package/dist/binding/services/pointer-gesture.service.d.ts.map +1 -0
  17. package/dist/binding/services/pointer-gesture.service.js +37 -0
  18. package/dist/binding/services/pointer-gesture.service.js.map +1 -0
  19. package/dist/components/Calendar.d.ts +47 -8
  20. package/dist/components/Calendar.d.ts.map +1 -1
  21. package/dist/components/Calendar.js +183 -63
  22. package/dist/components/Calendar.js.map +1 -1
  23. package/dist/components/CalendarHeader.d.ts +12 -1
  24. package/dist/components/CalendarHeader.d.ts.map +1 -1
  25. package/dist/components/CalendarHeader.js +66 -14
  26. package/dist/components/CalendarHeader.js.map +1 -1
  27. package/dist/components/CategoryFilter.d.ts +4 -0
  28. package/dist/components/CategoryFilter.d.ts.map +1 -1
  29. package/dist/components/CategoryFilter.js +10 -5
  30. package/dist/components/CategoryFilter.js.map +1 -1
  31. package/dist/components/EventBar.d.ts +15 -4
  32. package/dist/components/EventBar.d.ts.map +1 -1
  33. package/dist/components/EventBar.js +108 -37
  34. package/dist/components/EventBar.js.map +1 -1
  35. package/dist/components/EventDialog.d.ts +11 -4
  36. package/dist/components/EventDialog.d.ts.map +1 -1
  37. package/dist/components/EventDialog.js +86 -44
  38. package/dist/components/EventDialog.js.map +1 -1
  39. package/dist/components/EventHistory.d.ts +14 -9
  40. package/dist/components/EventHistory.d.ts.map +1 -1
  41. package/dist/components/EventHistory.js +59 -55
  42. package/dist/components/EventHistory.js.map +1 -1
  43. package/dist/components/UndoToast.d.ts +9 -5
  44. package/dist/components/UndoToast.d.ts.map +1 -1
  45. package/dist/components/UndoToast.js +16 -27
  46. package/dist/components/UndoToast.js.map +1 -1
  47. package/dist/index.d.ts +0 -2
  48. package/dist/index.d.ts.map +1 -1
  49. package/dist/index.js +0 -2
  50. package/dist/index.js.map +1 -1
  51. package/dist/styles/index.css.d.ts +3 -0
  52. package/dist/views/agenda/AgendaView.d.ts +1 -0
  53. package/dist/views/agenda/AgendaView.d.ts.map +1 -1
  54. package/dist/views/agenda/AgendaView.js +9 -2
  55. package/dist/views/agenda/AgendaView.js.map +1 -1
  56. package/dist/views/day/DayView.d.ts +30 -4
  57. package/dist/views/day/DayView.d.ts.map +1 -1
  58. package/dist/views/day/DayView.js +61 -17
  59. package/dist/views/day/DayView.js.map +1 -1
  60. package/dist/views/month/MonthView.d.ts +21 -4
  61. package/dist/views/month/MonthView.d.ts.map +1 -1
  62. package/dist/views/month/MonthView.js +66 -12
  63. package/dist/views/month/MonthView.js.map +1 -1
  64. package/dist/views/month/WeekRow.d.ts +28 -4
  65. package/dist/views/month/WeekRow.d.ts.map +1 -1
  66. package/dist/views/month/WeekRow.js +100 -29
  67. package/dist/views/month/WeekRow.js.map +1 -1
  68. package/dist/views/resource/ResourceView.d.ts +32 -1
  69. package/dist/views/resource/ResourceView.d.ts.map +1 -1
  70. package/dist/views/resource/ResourceView.js +84 -22
  71. package/dist/views/resource/ResourceView.js.map +1 -1
  72. package/dist/views/timeline/TimelineView.d.ts +29 -3
  73. package/dist/views/timeline/TimelineView.d.ts.map +1 -1
  74. package/dist/views/timeline/TimelineView.js +83 -17
  75. package/dist/views/timeline/TimelineView.js.map +1 -1
  76. package/dist/views/week/AllDayRow.d.ts +21 -3
  77. package/dist/views/week/AllDayRow.d.ts.map +1 -1
  78. package/dist/views/week/AllDayRow.js +60 -13
  79. package/dist/views/week/AllDayRow.js.map +1 -1
  80. package/dist/views/week/TimeEvent.d.ts +20 -4
  81. package/dist/views/week/TimeEvent.d.ts.map +1 -1
  82. package/dist/views/week/TimeEvent.js +101 -31
  83. package/dist/views/week/TimeEvent.js.map +1 -1
  84. package/dist/views/week/WeekView.d.ts +25 -2
  85. package/dist/views/week/WeekView.d.ts.map +1 -1
  86. package/dist/views/week/WeekView.js +69 -21
  87. package/dist/views/week/WeekView.js.map +1 -1
  88. package/dist/views/year/YearView.d.ts +11 -4
  89. package/dist/views/year/YearView.d.ts.map +1 -1
  90. package/dist/views/year/YearView.js +26 -5
  91. package/dist/views/year/YearView.js.map +1 -1
  92. package/package.json +16 -13
@@ -1,8 +1,9 @@
1
1
  import { Component, Input, Output, EventEmitter, ElementRef, ViewChild, Optional } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
- import { isSameDay, getDayOfMonth, getMonth, calendarWeekNumber, maxLanes, lanesPerDay, startOfDay, formatDayLabel, getRecurrenceInstanceMetadata, } from '@bimetal/calendar-core';
4
- import { getColFromX, EventRenderService } from '../../binding/index.js';
5
- import { createClickIntent, toTimeStr, maxVisibleTimedInMonth } from '@bimetal/calendar-headless';
3
+ import { isSameDay, getDayOfMonth, getMonth, startOfDay, formatDayLabel } from '@bimetal/temporal';
4
+ import { calendarWeekNumber, maxLanes, lanesPerDay, getRecurrenceInstanceMetadata } from '@bimetal/calendar-core';
5
+ import { getColFromX, EventRenderService, CalendarPointerGestureService, formatTime } from '../../binding/index.js';
6
+ import { createClickIntent, maxVisibleTimedInMonth, buildDragInfo, writeCalendarDragData } from '@bimetal/calendar-headless';
6
7
  import { EventBarComponent } from '../../components/EventBar.js';
7
8
  import * as i0 from "@angular/core";
8
9
  import * as i1 from "../../binding/index.js";
@@ -54,15 +55,16 @@ function WeekRowComponent_div_4_ng_container_4_div_1_div_1_ng_container_4_Templa
54
55
  function WeekRowComponent_div_4_ng_container_4_div_1_div_1_Template(rf, ctx) { if (rf & 1) {
55
56
  const _r5 = i0.ɵɵgetCurrentView();
56
57
  i0.ɵɵelementStart(0, "div", 17);
57
- i0.ɵɵlistener("mousedown", function WeekRowComponent_div_4_ng_container_4_div_1_div_1_Template_div_mousedown_0_listener() { i0.ɵɵrestoreView(_r5); const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.handleTimedMouseDown()); })("click", function WeekRowComponent_div_4_ng_container_4_div_1_div_1_Template_div_click_0_listener($event) { const ev_r6 = i0.ɵɵrestoreView(_r5).$implicit; const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.handleTimedClick($event, ev_r6)); })("dblclick", function WeekRowComponent_div_4_ng_container_4_div_1_div_1_Template_div_dblclick_0_listener($event) { const ev_r6 = i0.ɵɵrestoreView(_r5).$implicit; const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.handleTimedDoubleClick($event, ev_r6)); });
58
+ i0.ɵɵlistener("pointerdown", function WeekRowComponent_div_4_ng_container_4_div_1_div_1_Template_div_pointerdown_0_listener($event) { const ev_r6 = i0.ɵɵrestoreView(_r5).$implicit; const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.handleTimedPointerDown($event, ev_r6)); })("dragstart", function WeekRowComponent_div_4_ng_container_4_div_1_div_1_Template_div_dragstart_0_listener($event) { const ev_r6 = i0.ɵɵrestoreView(_r5).$implicit; const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.pointerMode || ctx_r2.handleTimedDragStart($event, ev_r6)); })("dragend", function WeekRowComponent_div_4_ng_container_4_div_1_div_1_Template_div_dragend_0_listener() { i0.ɵɵrestoreView(_r5); const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.pointerMode || ctx_r2.dragEnd.emit()); })("mousedown", function WeekRowComponent_div_4_ng_container_4_div_1_div_1_Template_div_mousedown_0_listener() { i0.ɵɵrestoreView(_r5); const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.pointerMode || ctx_r2.handleTimedMouseDown()); })("click", function WeekRowComponent_div_4_ng_container_4_div_1_div_1_Template_div_click_0_listener($event) { const ev_r6 = i0.ɵɵrestoreView(_r5).$implicit; const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.handleTimedClick($event, ev_r6)); })("dblclick", function WeekRowComponent_div_4_ng_container_4_div_1_div_1_Template_div_dblclick_0_listener($event) { const ev_r6 = i0.ɵɵrestoreView(_r5).$implicit; const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.handleTimedDoubleClick($event, ev_r6)); });
58
59
  i0.ɵɵtemplate(1, WeekRowComponent_div_4_ng_container_4_div_1_div_1_ng_container_1_Template, 2, 2, "ng-container", 18)(2, WeekRowComponent_div_4_ng_container_4_div_1_div_1_ng_template_2_Template, 5, 4, "ng-template", null, 1, i0.ɵɵtemplateRefExtractor)(4, WeekRowComponent_div_4_ng_container_4_div_1_div_1_ng_container_4_Template, 2, 2, "ng-container", 11);
59
60
  i0.ɵɵelementEnd();
60
61
  } if (rf & 2) {
61
62
  const ev_r6 = ctx.$implicit;
62
63
  const defaultTimed_r7 = i0.ɵɵreference(3);
63
64
  const ctx_r2 = i0.ɵɵnextContext(4);
64
- i0.ɵɵclassMap("bm-cal-timed-entry" + (ctx_r2.isTimedSelected(ev_r6) ? " bm-cal-timed-entry--selected" : "") + ctx_r2.slotsClassName(ev_r6));
65
+ i0.ɵɵclassMap("bm-cal-timed-entry" + (ctx_r2.isTimedSelected(ev_r6) ? " bm-cal-timed-entry--selected" : "") + ctx_r2.timedStateClass(ev_r6) + (ctx_r2.pointerMode && ctx_r2.timedCanDrag(ev_r6) ? " bm-cal-timed-entry--pointer" : "") + ctx_r2.slotsClassName(ev_r6));
65
66
  i0.ɵɵproperty("ngStyle", ctx_r2.slotsStyle(ev_r6))("title", ctx_r2.renderedTitle(ev_r6));
67
+ i0.ɵɵattribute("draggable", ctx_r2.pointerMode ? null : ctx_r2.timedCanDrag(ev_r6));
66
68
  i0.ɵɵadvance();
67
69
  i0.ɵɵproperty("ngIf", ctx_r2.contentTpl)("ngIfElse", defaultTimed_r7);
68
70
  i0.ɵɵadvance(3);
@@ -83,7 +85,7 @@ function WeekRowComponent_div_4_ng_container_4_div_1_div_2_Template(rf, ctx) { i
83
85
  } }
84
86
  function WeekRowComponent_div_4_ng_container_4_div_1_Template(rf, ctx) { if (rf & 1) {
85
87
  i0.ɵɵelementStart(0, "div", 14);
86
- i0.ɵɵtemplate(1, WeekRowComponent_div_4_ng_container_4_div_1_div_1_Template, 5, 7, "div", 15)(2, WeekRowComponent_div_4_ng_container_4_div_1_div_2_Template, 2, 2, "div", 16);
88
+ i0.ɵɵtemplate(1, WeekRowComponent_div_4_ng_container_4_div_1_div_1_Template, 5, 8, "div", 15)(2, WeekRowComponent_div_4_ng_container_4_div_1_div_2_Template, 2, 2, "div", 16);
87
89
  i0.ɵɵelementEnd();
88
90
  } if (rf & 2) {
89
91
  const timed_r9 = i0.ɵɵnextContext().ngIf;
@@ -92,7 +94,7 @@ function WeekRowComponent_div_4_ng_container_4_div_1_Template(rf, ctx) { if (rf
92
94
  const colIdx_r10 = ctx_r10.index;
93
95
  const ctx_r2 = i0.ɵɵnextContext();
94
96
  i0.ɵɵadvance();
95
- i0.ɵɵproperty("ngForOf", ctx_r2.getVisibleTimed(timed_r9, colIdx_r10, date_r4));
97
+ i0.ɵɵproperty("ngForOf", ctx_r2.getVisibleTimed(timed_r9, colIdx_r10, date_r4))("ngForTrackBy", ctx_r2.trackEvent);
96
98
  i0.ɵɵadvance();
97
99
  i0.ɵɵproperty("ngIf", ctx_r2.hasOverflow(timed_r9, colIdx_r10) && !ctx_r2.isExpanded(date_r4));
98
100
  } }
@@ -142,15 +144,16 @@ function WeekRowComponent_div_4_ng_container_4_div_2_div_4_ng_container_4_Templa
142
144
  function WeekRowComponent_div_4_ng_container_4_div_2_div_4_Template(rf, ctx) { if (rf & 1) {
143
145
  const _r13 = i0.ɵɵgetCurrentView();
144
146
  i0.ɵɵelementStart(0, "div", 17);
145
- i0.ɵɵlistener("mousedown", function WeekRowComponent_div_4_ng_container_4_div_2_div_4_Template_div_mousedown_0_listener() { i0.ɵɵrestoreView(_r13); const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.handleTimedMouseDown()); })("click", function WeekRowComponent_div_4_ng_container_4_div_2_div_4_Template_div_click_0_listener($event) { const ev_r14 = i0.ɵɵrestoreView(_r13).$implicit; const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.handleTimedClick($event, ev_r14)); })("dblclick", function WeekRowComponent_div_4_ng_container_4_div_2_div_4_Template_div_dblclick_0_listener($event) { const ev_r14 = i0.ɵɵrestoreView(_r13).$implicit; const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.handleTimedDoubleClick($event, ev_r14)); });
147
+ i0.ɵɵlistener("pointerdown", function WeekRowComponent_div_4_ng_container_4_div_2_div_4_Template_div_pointerdown_0_listener($event) { const ev_r14 = i0.ɵɵrestoreView(_r13).$implicit; const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.handleTimedPointerDown($event, ev_r14)); })("dragstart", function WeekRowComponent_div_4_ng_container_4_div_2_div_4_Template_div_dragstart_0_listener($event) { const ev_r14 = i0.ɵɵrestoreView(_r13).$implicit; const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.pointerMode || ctx_r2.handleTimedDragStart($event, ev_r14)); })("dragend", function WeekRowComponent_div_4_ng_container_4_div_2_div_4_Template_div_dragend_0_listener() { i0.ɵɵrestoreView(_r13); const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.pointerMode || ctx_r2.dragEnd.emit()); })("mousedown", function WeekRowComponent_div_4_ng_container_4_div_2_div_4_Template_div_mousedown_0_listener() { i0.ɵɵrestoreView(_r13); const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.pointerMode || ctx_r2.handleTimedMouseDown()); })("click", function WeekRowComponent_div_4_ng_container_4_div_2_div_4_Template_div_click_0_listener($event) { const ev_r14 = i0.ɵɵrestoreView(_r13).$implicit; const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.handleTimedClick($event, ev_r14)); })("dblclick", function WeekRowComponent_div_4_ng_container_4_div_2_div_4_Template_div_dblclick_0_listener($event) { const ev_r14 = i0.ɵɵrestoreView(_r13).$implicit; const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.handleTimedDoubleClick($event, ev_r14)); });
146
148
  i0.ɵɵtemplate(1, WeekRowComponent_div_4_ng_container_4_div_2_div_4_ng_container_1_Template, 2, 2, "ng-container", 18)(2, WeekRowComponent_div_4_ng_container_4_div_2_div_4_ng_template_2_Template, 5, 4, "ng-template", null, 2, i0.ɵɵtemplateRefExtractor)(4, WeekRowComponent_div_4_ng_container_4_div_2_div_4_ng_container_4_Template, 2, 2, "ng-container", 11);
147
149
  i0.ɵɵelementEnd();
148
150
  } if (rf & 2) {
149
151
  const ev_r14 = ctx.$implicit;
150
152
  const defaultTimedExp_r15 = i0.ɵɵreference(3);
151
153
  const ctx_r2 = i0.ɵɵnextContext(4);
152
- i0.ɵɵclassMap("bm-cal-timed-entry" + (ctx_r2.isTimedSelected(ev_r14) ? " bm-cal-timed-entry--selected" : "") + ctx_r2.slotsClassName(ev_r14));
154
+ i0.ɵɵclassMap("bm-cal-timed-entry" + (ctx_r2.isTimedSelected(ev_r14) ? " bm-cal-timed-entry--selected" : "") + ctx_r2.timedStateClass(ev_r14) + (ctx_r2.pointerMode && ctx_r2.timedCanDrag(ev_r14) ? " bm-cal-timed-entry--pointer" : "") + ctx_r2.slotsClassName(ev_r14));
153
155
  i0.ɵɵproperty("ngStyle", ctx_r2.slotsStyle(ev_r14))("title", ctx_r2.renderedTitle(ev_r14));
156
+ i0.ɵɵattribute("draggable", ctx_r2.pointerMode ? null : ctx_r2.timedCanDrag(ev_r14));
154
157
  i0.ɵɵadvance();
155
158
  i0.ɵɵproperty("ngIf", ctx_r2.contentTpl)("ngIfElse", defaultTimedExp_r15);
156
159
  i0.ɵɵadvance(3);
@@ -163,7 +166,7 @@ function WeekRowComponent_div_4_ng_container_4_div_2_Template(rf, ctx) { if (rf
163
166
  i0.ɵɵelementStart(1, "div", 10)(2, "span");
164
167
  i0.ɵɵtext(3);
165
168
  i0.ɵɵelementEnd()();
166
- i0.ɵɵtemplate(4, WeekRowComponent_div_4_ng_container_4_div_2_div_4_Template, 5, 7, "div", 15);
169
+ i0.ɵɵtemplate(4, WeekRowComponent_div_4_ng_container_4_div_2_div_4_Template, 5, 8, "div", 15);
167
170
  i0.ɵɵelementEnd();
168
171
  } if (rf & 2) {
169
172
  const timed_r9 = i0.ɵɵnextContext().ngIf;
@@ -174,11 +177,11 @@ function WeekRowComponent_div_4_ng_container_4_div_2_Template(rf, ctx) { if (rf
174
177
  i0.ɵɵadvance();
175
178
  i0.ɵɵtextInterpolate(ctx_r2.getDayOfMonth(date_r4));
176
179
  i0.ɵɵadvance();
177
- i0.ɵɵproperty("ngForOf", timed_r9);
180
+ i0.ɵɵproperty("ngForOf", timed_r9)("ngForTrackBy", ctx_r2.trackEvent);
178
181
  } }
179
182
  function WeekRowComponent_div_4_ng_container_4_Template(rf, ctx) { if (rf & 1) {
180
183
  i0.ɵɵelementContainerStart(0);
181
- i0.ɵɵtemplate(1, WeekRowComponent_div_4_ng_container_4_div_1_Template, 3, 2, "div", 12)(2, WeekRowComponent_div_4_ng_container_4_div_2_Template, 5, 4, "div", 13);
184
+ i0.ɵɵtemplate(1, WeekRowComponent_div_4_ng_container_4_div_1_Template, 3, 3, "div", 12)(2, WeekRowComponent_div_4_ng_container_4_div_2_Template, 5, 5, "div", 13);
182
185
  i0.ɵɵelementContainerEnd();
183
186
  } if (rf & 2) {
184
187
  const timed_r9 = ctx.ngIf;
@@ -221,10 +224,15 @@ function WeekRowComponent_cal_event_bar_7_Template(rf, ctx) { if (rf & 1) {
221
224
  } if (rf & 2) {
222
225
  const layoutItem_r17 = ctx.$implicit;
223
226
  const ctx_r2 = i0.ɵɵnextContext();
224
- i0.ɵɵproperty("event", layoutItem_r17.segment.event)("isStart", layoutItem_r17.segment.isStart)("isEnd", layoutItem_r17.segment.isEnd)("dayIndex", layoutItem_r17.dayIndex)("daySpan", layoutItem_r17.daySpan)("column", layoutItem_r17.column)("weekDates", ctx_r2.weekDates)("ghost", ctx_r2.isDragged(layoutItem_r17))("clickThresholdMs", ctx_r2.config.clickThresholdMs)("isSelected", ctx_r2.isTimedSelected(layoutItem_r17.segment.event));
227
+ i0.ɵɵproperty("config", ctx_r2.config)("event", layoutItem_r17.segment.event)("isStart", layoutItem_r17.segment.isStart)("isEnd", layoutItem_r17.segment.isEnd)("dayIndex", layoutItem_r17.dayIndex)("daySpan", layoutItem_r17.daySpan)("column", layoutItem_r17.column)("weekDates", ctx_r2.weekDates)("ghost", ctx_r2.isDragged(layoutItem_r17))("clickThresholdMs", ctx_r2.config.clickThresholdMs)("isSelected", ctx_r2.isTimedSelected(layoutItem_r17.segment.event));
225
228
  } }
229
+ /**
230
+ * A single week's row in the month grid: renders day cells, timed-event chips
231
+ * (with hover-expand overflow), and the all-day event bars overlay for that week.
232
+ */
226
233
  export class WeekRowComponent {
227
234
  renderService;
235
+ gesture;
228
236
  weekDates = [];
229
237
  items = [];
230
238
  timedByDay = new Map();
@@ -258,9 +266,13 @@ export class WeekRowComponent {
258
266
  click = createClickIntent();
259
267
  timedClick = createClickIntent();
260
268
  getDayOfMonth = getDayOfMonth;
261
- constructor(renderService) {
269
+ constructor(renderService,
270
+ // mcp-57 dual-mode (see TimeEvent.ts).
271
+ gesture) {
262
272
  this.renderService = renderService;
273
+ this.gesture = gesture;
263
274
  }
275
+ get pointerMode() { return !!this.gesture; }
264
276
  get badgesTpl() { return this.renderService?.eventBadgesTpl; }
265
277
  get contentTpl() { return this.renderService?.eventContentTpl; }
266
278
  tplCtx(ev) { return this.renderService?.buildTemplateContext(ev); }
@@ -282,6 +294,21 @@ export class WeekRowComponent {
282
294
  onCollapse() { this.collapseMonthCell.emit(); }
283
295
  isToday(date) { return isSameDay(date, this.today); }
284
296
  inMonth(date) { return getMonth(date) === this.currentMonth; }
297
+ /**
298
+ * Stable identity for the event-bar layout items (drag-survival, not just perf).
299
+ *
300
+ * The wrappers are minted fresh per snapshot, so without trackBy the ngFor
301
+ * differ sees all-new objects and re-creates every `cal-event-bar` on any items
302
+ * change. Chromium cancels a native HTML5 drag whose source node is destroyed
303
+ * in the dragstart task — exactly what happened here on Angular only, because
304
+ * the other stacks key by event identity. Keyed by event + the segment's day,
305
+ * because a multi-week event renders one bar per week row.
306
+ */
307
+ trackItem(_i, li) {
308
+ return li.segment.event.id + '@' + li.dayIndex;
309
+ }
310
+ /** Same rule for the timed chips — the event object is the identity. */
311
+ trackEvent(_i, ev) { return ev.id; }
285
312
  // Stable identity for the day cells: without trackBy, any change-detection pass
286
313
  // that yields fresh CalendarDateTime objects (e.g. a click → markChanged → grid
287
314
  // recompute) re-creates the cell nodes mid-gesture, dropping the in-flight
@@ -303,7 +330,7 @@ export class WeekRowComponent {
303
330
  return ev.metadata.color ?? '#007AFF';
304
331
  }
305
332
  formatTime(ev) {
306
- return toTimeStr(ev.timeRange.start);
333
+ return formatTime(ev.timeRange.start, this.config.locale.code, this.config.core.timezone);
307
334
  }
308
335
  isDragged(item) {
309
336
  return this.previewEvent?.id === item.segment.event.id;
@@ -313,7 +340,7 @@ export class WeekRowComponent {
313
340
  e.dataTransfer.dropEffect = 'move';
314
341
  if (!this.rowEl)
315
342
  return;
316
- const col = getColFromX(e.clientX, this.rowEl.nativeElement.getBoundingClientRect());
343
+ const col = getColFromX(e.clientX, this.rowEl.nativeElement.getBoundingClientRect(), 7, getComputedStyle(this.rowEl.nativeElement).direction === 'rtl');
317
344
  this.dragOver.emit(this.weekDates[col]);
318
345
  }
319
346
  handleDragLeave(e) {
@@ -327,7 +354,7 @@ export class WeekRowComponent {
327
354
  e.preventDefault();
328
355
  if (!this.rowEl)
329
356
  return;
330
- const col = getColFromX(e.clientX, this.rowEl.nativeElement.getBoundingClientRect());
357
+ const col = getColFromX(e.clientX, this.rowEl.nativeElement.getBoundingClientRect(), 7, getComputedStyle(this.rowEl.nativeElement).direction === 'rtl');
331
358
  this.dropEvent.emit({ event: e, date: this.weekDates[col] });
332
359
  }
333
360
  handleDayCellClick(e, date) {
@@ -347,6 +374,39 @@ export class WeekRowComponent {
347
374
  handleTimedMouseDown() {
348
375
  this.timedClick.markMouseDown();
349
376
  }
377
+ // ticket-29: day-grain move of a month timed entry (mirrors cal-event-bar; markDragged so the
378
+ // drop doesn't also select). dayOffset 0 — always single-day in its cell.
379
+ handleTimedPointerDown(e, ev) {
380
+ if (!this.pointerMode)
381
+ return;
382
+ e.stopPropagation();
383
+ this.timedClick.markMouseDown();
384
+ if (!this.timedCanDrag(ev))
385
+ return;
386
+ try {
387
+ e.currentTarget.setPointerCapture?.(e.pointerId);
388
+ }
389
+ catch { /* synthetic */ }
390
+ const info = buildDragInfo(ev, 'move', { dayOffset: 0 });
391
+ this.gesture.onPointerDown(info, e.pointerId, e.clientX, e.clientY, () => this.timedClick.markDragged());
392
+ }
393
+ handleTimedDragStart(e, ev) {
394
+ this.timedClick.markDragged();
395
+ const info = buildDragInfo(ev, 'move', { dayOffset: 0 });
396
+ writeCalendarDragData(e.dataTransfer, info);
397
+ this.dragStartEv.emit(info);
398
+ }
399
+ // ticket-29 + ticket-19: affordance from the SAME resolver the controller enforces on.
400
+ timedPolicy(ev) {
401
+ return this.renderService?.resolveInteraction(ev)
402
+ ?? { draggable: true, resizable: true, editable: true, deletable: true };
403
+ }
404
+ timedCanDrag(ev) { return this.timedPolicy(ev).draggable; }
405
+ timedStateClass(ev) {
406
+ const p = this.timedPolicy(ev);
407
+ return (!p.draggable ? ' bm-cal-timed-entry--static' : '')
408
+ + ((!p.draggable && !p.resizable && !p.editable && !p.deletable) ? ' bm-cal-timed-entry--locked' : '');
409
+ }
350
410
  handleTimedClick(e, ev) {
351
411
  e.stopPropagation();
352
412
  if (!this.timedClick.accept(this.config.clickThresholdMs))
@@ -366,13 +426,13 @@ export class WeekRowComponent {
366
426
  const id = getRecurrenceInstanceMetadata(ev)?.instanceDate;
367
427
  return this.selectedEventId === ev.id && this.selectedInstanceDate === id;
368
428
  }
369
- static ɵfac = function WeekRowComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || WeekRowComponent)(i0.ɵɵdirectiveInject(i1.EventRenderService, 8)); };
429
+ static ɵfac = function WeekRowComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || WeekRowComponent)(i0.ɵɵdirectiveInject(i1.EventRenderService, 8), i0.ɵɵdirectiveInject(i1.CalendarPointerGestureService, 8)); };
370
430
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: WeekRowComponent, selectors: [["cal-week-row"]], viewQuery: function WeekRowComponent_Query(rf, ctx) { if (rf & 1) {
371
431
  i0.ɵɵviewQuery(_c0, 5);
372
432
  } if (rf & 2) {
373
433
  let _t;
374
434
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.rowEl = _t.first);
375
- } }, hostAttrs: [2, "display", "contents"], inputs: { weekDates: "weekDates", items: "items", timedByDay: "timedByDay", currentYear: "currentYear", currentMonth: "currentMonth", config: "config", today: "today", previewEvent: "previewEvent", expandedMonthDay: "expandedMonthDay", selectedEventId: "selectedEventId", selectedInstanceDate: "selectedInstanceDate" }, outputs: { eventClick: "eventClick", selectEvent: "selectEvent", clearSelection: "clearSelection", dayCellClick: "dayCellClick", dropEvent: "dropEvent", dragOver: "dragOver", hidePreviewEv: "hidePreviewEv", dragEnd: "dragEnd", dragStartEv: "dragStartEv", expandMonthCell: "expandMonthCell", collapseMonthCell: "collapseMonthCell" }, decls: 8, vars: 6, consts: [["rowEl", ""], ["defaultTimed", ""], ["defaultTimedExp", ""], [1, "bm-cal__week-row", 3, "dragover", "dragleave", "drop"], [1, "bm-cal__week-number"], [3, "class", "grid-column", "grid-row", "--lane-count", "mousedown", "click", "dblclick", 4, "ngFor", "ngForOf", "ngForTrackBy"], [1, "bm-cal__events-overlay"], [1, "bm-cal__events-grid"], [3, "event", "isStart", "isEnd", "dayIndex", "daySpan", "column", "weekDates", "ghost", "clickThresholdMs", "isSelected", "eventClick", "selectEvent", "dragStart", "dragEnd", 4, "ngFor", "ngForOf"], [3, "mousedown", "click", "dblclick"], [1, "bm-cal__day-number-container"], [4, "ngIf"], ["class", "bm-cal__day-timed", 4, "ngIf"], ["class", "bm-cal__day-expand-overlay", 3, "mouseleave", 4, "ngIf"], [1, "bm-cal__day-timed"], [3, "class", "ngStyle", "title", "mousedown", "click", "dblclick", 4, "ngFor", "ngForOf"], ["class", "bm-cal__timed-overflow", 3, "mouseenter", 4, "ngIf"], [3, "mousedown", "click", "dblclick", "ngStyle", "title"], [4, "ngIf", "ngIfElse"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], [1, "bm-cal-timed-entry__dot"], [1, "bm-cal-timed-entry__time"], [1, "bm-cal-timed-entry__title"], [1, "bm-cal__timed-overflow", 3, "mouseenter"], [1, "bm-cal__day-expand-overlay", 3, "mouseleave"], [3, "eventClick", "selectEvent", "dragStart", "dragEnd", "event", "isStart", "isEnd", "dayIndex", "daySpan", "column", "weekDates", "ghost", "clickThresholdMs", "isSelected"]], template: function WeekRowComponent_Template(rf, ctx) { if (rf & 1) {
435
+ } }, hostAttrs: [2, "display", "contents"], inputs: { weekDates: "weekDates", items: "items", timedByDay: "timedByDay", currentYear: "currentYear", currentMonth: "currentMonth", config: "config", today: "today", previewEvent: "previewEvent", expandedMonthDay: "expandedMonthDay", selectedEventId: "selectedEventId", selectedInstanceDate: "selectedInstanceDate" }, outputs: { eventClick: "eventClick", selectEvent: "selectEvent", clearSelection: "clearSelection", dayCellClick: "dayCellClick", dropEvent: "dropEvent", dragOver: "dragOver", hidePreviewEv: "hidePreviewEv", dragEnd: "dragEnd", dragStartEv: "dragStartEv", expandMonthCell: "expandMonthCell", collapseMonthCell: "collapseMonthCell" }, decls: 8, vars: 7, consts: [["rowEl", ""], ["defaultTimed", ""], ["defaultTimedExp", ""], [1, "bm-cal__week-row", 3, "dragover", "dragleave", "drop"], [1, "bm-cal__week-number"], [3, "class", "grid-column", "grid-row", "--lane-count", "mousedown", "click", "dblclick", 4, "ngFor", "ngForOf", "ngForTrackBy"], [1, "bm-cal__events-overlay"], [1, "bm-cal__events-grid"], [3, "config", "event", "isStart", "isEnd", "dayIndex", "daySpan", "column", "weekDates", "ghost", "clickThresholdMs", "isSelected", "eventClick", "selectEvent", "dragStart", "dragEnd", 4, "ngFor", "ngForOf", "ngForTrackBy"], [3, "mousedown", "click", "dblclick"], [1, "bm-cal__day-number-container"], [4, "ngIf"], ["class", "bm-cal__day-timed", 4, "ngIf"], ["class", "bm-cal__day-expand-overlay", 3, "mouseleave", 4, "ngIf"], [1, "bm-cal__day-timed"], [3, "class", "ngStyle", "title", "pointerdown", "dragstart", "dragend", "mousedown", "click", "dblclick", 4, "ngFor", "ngForOf", "ngForTrackBy"], ["class", "bm-cal__timed-overflow", 3, "mouseenter", 4, "ngIf"], [3, "pointerdown", "dragstart", "dragend", "mousedown", "click", "dblclick", "ngStyle", "title"], [4, "ngIf", "ngIfElse"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], [1, "bm-cal-timed-entry__dot"], [1, "bm-cal-timed-entry__time"], [1, "bm-cal-timed-entry__title"], [1, "bm-cal__timed-overflow", 3, "mouseenter"], [1, "bm-cal__day-expand-overlay", 3, "mouseleave"], [3, "eventClick", "selectEvent", "dragStart", "dragEnd", "config", "event", "isStart", "isEnd", "dayIndex", "daySpan", "column", "weekDates", "ghost", "clickThresholdMs", "isSelected"]], template: function WeekRowComponent_Template(rf, ctx) { if (rf & 1) {
376
436
  const _r1 = i0.ɵɵgetCurrentView();
377
437
  i0.ɵɵelementStart(0, "div", 3, 0);
378
438
  i0.ɵɵlistener("dragover", function WeekRowComponent_Template_div_dragover_0_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.handleDragOver($event)); })("dragleave", function WeekRowComponent_Template_div_dragleave_0_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.handleDragLeave($event)); })("drop", function WeekRowComponent_Template_div_drop_0_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.handleDrop($event)); });
@@ -381,7 +441,7 @@ export class WeekRowComponent {
381
441
  i0.ɵɵelementEnd();
382
442
  i0.ɵɵtemplate(4, WeekRowComponent_div_4_Template, 5, 12, "div", 5);
383
443
  i0.ɵɵelementStart(5, "div", 6)(6, "div", 7);
384
- i0.ɵɵtemplate(7, WeekRowComponent_cal_event_bar_7_Template, 1, 10, "cal-event-bar", 8);
444
+ i0.ɵɵtemplate(7, WeekRowComponent_cal_event_bar_7_Template, 1, 11, "cal-event-bar", 8);
385
445
  i0.ɵɵelementEnd()()();
386
446
  } if (rf & 2) {
387
447
  i0.ɵɵstyleProp("--lane-count", ctx.lanes);
@@ -390,7 +450,7 @@ export class WeekRowComponent {
390
450
  i0.ɵɵadvance();
391
451
  i0.ɵɵproperty("ngForOf", ctx.weekDates)("ngForTrackBy", ctx.trackDay);
392
452
  i0.ɵɵadvance(3);
393
- i0.ɵɵproperty("ngForOf", ctx.items);
453
+ i0.ɵɵproperty("ngForOf", ctx.items)("ngForTrackBy", ctx.trackItem);
394
454
  } }, dependencies: [CommonModule, i2.NgForOf, i2.NgIf, i2.NgTemplateOutlet, i2.NgStyle, EventBarComponent], encapsulation: 2 });
395
455
  }
396
456
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WeekRowComponent, [{
@@ -423,10 +483,14 @@ export class WeekRowComponent {
423
483
  </div>
424
484
  <ng-container *ngIf="getTimedEvents(date) as timed">
425
485
  <div *ngIf="timed.length > 0" class="bm-cal__day-timed">
426
- <div *ngFor="let ev of getVisibleTimed(timed, colIdx, date)"
427
- [class]="'bm-cal-timed-entry' + (isTimedSelected(ev) ? ' bm-cal-timed-entry--selected' : '') + slotsClassName(ev)"
486
+ <div *ngFor="let ev of getVisibleTimed(timed, colIdx, date); trackBy: trackEvent"
487
+ [class]="'bm-cal-timed-entry' + (isTimedSelected(ev) ? ' bm-cal-timed-entry--selected' : '') + timedStateClass(ev) + (pointerMode && timedCanDrag(ev) ? ' bm-cal-timed-entry--pointer' : '') + slotsClassName(ev)"
428
488
  [ngStyle]="slotsStyle(ev)"
429
- (mousedown)="handleTimedMouseDown()"
489
+ [attr.draggable]="pointerMode ? null : timedCanDrag(ev)"
490
+ (pointerdown)="handleTimedPointerDown($event, ev)"
491
+ (dragstart)="pointerMode || handleTimedDragStart($event, ev)"
492
+ (dragend)="pointerMode || dragEnd.emit()"
493
+ (mousedown)="pointerMode || handleTimedMouseDown()"
430
494
  (click)="handleTimedClick($event, ev)"
431
495
  (dblclick)="handleTimedDoubleClick($event, ev)"
432
496
  [title]="renderedTitle(ev)">
@@ -452,10 +516,14 @@ export class WeekRowComponent {
452
516
  <div class="bm-cal__day-number-container">
453
517
  <span [class]="'bm-cal__day-number' + (isToday(date) ? ' bm-cal__today' : '')">{{ getDayOfMonth(date) }}</span>
454
518
  </div>
455
- <div *ngFor="let ev of timed"
456
- [class]="'bm-cal-timed-entry' + (isTimedSelected(ev) ? ' bm-cal-timed-entry--selected' : '') + slotsClassName(ev)"
519
+ <div *ngFor="let ev of timed; trackBy: trackEvent"
520
+ [class]="'bm-cal-timed-entry' + (isTimedSelected(ev) ? ' bm-cal-timed-entry--selected' : '') + timedStateClass(ev) + (pointerMode && timedCanDrag(ev) ? ' bm-cal-timed-entry--pointer' : '') + slotsClassName(ev)"
457
521
  [ngStyle]="slotsStyle(ev)"
458
- (mousedown)="handleTimedMouseDown()"
522
+ [attr.draggable]="pointerMode ? null : timedCanDrag(ev)"
523
+ (pointerdown)="handleTimedPointerDown($event, ev)"
524
+ (dragstart)="pointerMode || handleTimedDragStart($event, ev)"
525
+ (dragend)="pointerMode || dragEnd.emit()"
526
+ (mousedown)="pointerMode || handleTimedMouseDown()"
459
527
  (click)="handleTimedClick($event, ev)"
460
528
  (dblclick)="handleTimedDoubleClick($event, ev)"
461
529
  [title]="renderedTitle(ev)">
@@ -477,7 +545,8 @@ export class WeekRowComponent {
477
545
 
478
546
  <div class="bm-cal__events-overlay">
479
547
  <div class="bm-cal__events-grid">
480
- <cal-event-bar *ngFor="let layoutItem of items; let idx = index"
548
+ <cal-event-bar *ngFor="let layoutItem of items; let idx = index; trackBy: trackItem"
549
+ [config]="config"
481
550
  [event]="layoutItem.segment.event"
482
551
  [isStart]="layoutItem.segment.isStart"
483
552
  [isEnd]="layoutItem.segment.isEnd"
@@ -500,6 +569,8 @@ export class WeekRowComponent {
500
569
  }]
501
570
  }], () => [{ type: i1.EventRenderService, decorators: [{
502
571
  type: Optional
572
+ }] }, { type: i1.CalendarPointerGestureService, decorators: [{
573
+ type: Optional
503
574
  }] }], { weekDates: [{
504
575
  type: Input
505
576
  }], items: [{
@@ -548,5 +619,5 @@ export class WeekRowComponent {
548
619
  type: ViewChild,
549
620
  args: ['rowEl']
550
621
  }] }); })();
551
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(WeekRowComponent, { className: "WeekRowComponent", filePath: "views/month/weekrow.ts", lineNumber: 117 }); })();
622
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(WeekRowComponent, { className: "WeekRowComponent", filePath: "views/month/weekrow.ts", lineNumber: 127 }); })();
552
623
  //# sourceMappingURL=WeekRow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WeekRow.js","sourceRoot":"","sources":["../../../src/views/month/WeekRow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WeekRow.js","sourceRoot":"","sources":["../../../src/views/month/WeekRow.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,17 @@
1
+ import type { DragInfo } from '@bimetal/calendar-headless';
1
2
  import { EventEmitter, AfterViewInit, ElementRef } from '@angular/core';
2
3
  import type { CalendarEvent, CalendarDateTime, Resource } from '@bimetal/calendar-core';
3
4
  import type { CalendarConfig } from '../../binding/index.js';
5
+ import { CalendarPointerGestureService } from '../../binding/index.js';
4
6
  import { type TimeEventLayout } from '../week/TimeEvent.js';
5
7
  import * as i0 from "@angular/core";
8
+ /**
9
+ * Single-day, multi-resource time grid: one column per visible resource, each
10
+ * with its own overlap-lane layout of timed events.
11
+ */
6
12
  export declare class ResourceViewComponent implements AfterViewInit {
13
+ private gesture;
14
+ constructor(gesture: CalendarPointerGestureService);
7
15
  currentDate: CalendarDateTime;
8
16
  events: CalendarEvent[];
9
17
  visibleResources: readonly Resource[];
@@ -41,6 +49,12 @@ export declare class ResourceViewComponent implements AfterViewInit {
41
49
  hidePreviewEv: EventEmitter<void>;
42
50
  /** Native `dragend` der Source — Drag-Session vollständig beendet. */
43
51
  dragEnd: EventEmitter<void>;
52
+ resourceDropInfo: EventEmitter<{
53
+ info: DragInfo;
54
+ date: CalendarDateTime;
55
+ time: string;
56
+ resourceId: string;
57
+ }>;
44
58
  dragStartEv: EventEmitter<any>;
45
59
  timeGridEl: ElementRef<HTMLDivElement>;
46
60
  gridInnerEl: ElementRef<HTMLDivElement>;
@@ -65,10 +79,27 @@ export declare class ResourceViewComponent implements AfterViewInit {
65
79
  * dayCol = Resource-Index, lane/laneCount aus layoutTimed pro Resource
66
80
  * — Überlapper in r1 dürfen die Spalte r2 nicht halbieren.
67
81
  */
82
+ /**
83
+ * CACHED PER INPUT IDENTITY, not per call (mcp-130 — the resource-view twin of
84
+ * mcp-129). As a plain getter this ran the full segment/lane layout and minted
85
+ * fresh {event, layout} wrappers on EVERY change-detection pass; Zone runs CD
86
+ * after every DOM event, so the dragstart itself handed the un-trackBy'd *ngFor
87
+ * all-new identities, every cal-time-event was re-created, and Chromium
88
+ * cancelled the native drag whose source died in its own dragstart task. The
89
+ * dragstart-survival fence in e2e/calendar.spec.ts went red on exactly this
90
+ * view before the cache + trackBy below.
91
+ */
92
+ private timedCache;
68
93
  get timedEntries(): {
69
94
  event: CalendarEvent;
70
95
  layout: TimeEventLayout;
71
96
  }[];
97
+ /** Same identity rule the week view pins (`trackTimed`): event + column. */
98
+ trackTimed(_i: number, entry: {
99
+ event: CalendarEvent;
100
+ layout: TimeEventLayout;
101
+ }): string;
102
+ private buildTimedEntries;
72
103
  resourceFromX(clientX: number, gridInner: HTMLElement): string | null;
73
104
  isOffHour(h: number): boolean;
74
105
  formatHour(h: number): string;
@@ -81,6 +112,6 @@ export declare class ResourceViewComponent implements AfterViewInit {
81
112
  trackResource(_: number, r: Resource): string;
82
113
  trackEvent(_: number, ev: CalendarEvent): string;
83
114
  static ɵfac: i0.ɵɵFactoryDeclaration<ResourceViewComponent, never>;
84
- static ɵcmp: i0.ɵɵComponentDeclaration<ResourceViewComponent, "cal-resource-view", never, { "currentDate": { "alias": "currentDate"; "required": false; }; "events": { "alias": "events"; "required": false; }; "visibleResources": { "alias": "visibleResources"; "required": false; }; "config": { "alias": "config"; "required": false; }; "previewEvent": { "alias": "previewEvent"; "required": false; }; "selectedEventId": { "alias": "selectedEventId"; "required": false; }; "selectedInstanceDate": { "alias": "selectedInstanceDate"; "required": false; }; }, { "eventClick": "eventClick"; "selectEvent": "selectEvent"; "clearSelection": "clearSelection"; "resourceCellClick": "resourceCellClick"; "resourceDrop": "resourceDrop"; "dragOverDateTime": "dragOverDateTime"; "hidePreviewEv": "hidePreviewEv"; "dragEnd": "dragEnd"; "dragStartEv": "dragStartEv"; }, never, never, true, never>;
115
+ static ɵcmp: i0.ɵɵComponentDeclaration<ResourceViewComponent, "cal-resource-view", never, { "currentDate": { "alias": "currentDate"; "required": false; }; "events": { "alias": "events"; "required": false; }; "visibleResources": { "alias": "visibleResources"; "required": false; }; "config": { "alias": "config"; "required": false; }; "previewEvent": { "alias": "previewEvent"; "required": false; }; "selectedEventId": { "alias": "selectedEventId"; "required": false; }; "selectedInstanceDate": { "alias": "selectedInstanceDate"; "required": false; }; }, { "eventClick": "eventClick"; "selectEvent": "selectEvent"; "clearSelection": "clearSelection"; "resourceCellClick": "resourceCellClick"; "resourceDrop": "resourceDrop"; "dragOverDateTime": "dragOverDateTime"; "hidePreviewEv": "hidePreviewEv"; "dragEnd": "dragEnd"; "resourceDropInfo": "resourceDropInfo"; "dragStartEv": "dragStartEv"; }, never, never, true, never>;
85
116
  }
86
117
  //# sourceMappingURL=ResourceView.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceView.d.ts","sourceRoot":"","sources":["../../../src/views/resource/ResourceView.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAE,aAAa,EAAa,UAAU,EAAE,MAAM,eAAe,CAAC;AAE7G,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAOxF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG7D,OAAO,EAAsB,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;;AAIhF,qBAyEa,qBAAsB,YAAW,aAAa;IAChD,WAAW,EAAG,gBAAgB,CAAC;IAC/B,MAAM,EAAE,aAAa,EAAE,CAAM;IAC7B,gBAAgB,EAAE,SAAS,QAAQ,EAAE,CAAM;IAC3C,MAAM,EAAG,cAAc,CAAC;IAExB,YAAY,EAAE,aAAa,GAAG,IAAI,CAAQ;IAC1C,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IACtC,oBAAoB,EAAE,MAAM,GAAG,SAAS,CAAa;IACpD,UAAU;iBAA+B,MAAM;cAAQ,OAAO;uBAAiB,MAAM;OAAM;IAC3F,WAAW;iBAA+B,MAAM;uBAAiB,MAAM;OAAM;IAC7E,cAAc,qBAA4B;IAC1C,iBAAiB;cAA4B,gBAAgB;cAAQ,MAAM;oBAAc,MAAM;cAAQ,OAAO;OAAM;IACpH,YAAY;eAA6B,SAAS;cAAQ,gBAAgB;cAAQ,MAAM;oBAAc,MAAM;OAAM;IAClH,gBAAgB;cAA4B,gBAAgB;cAAQ,MAAM;OAAM;IAC1F,yEAAyE;IAC/D,aAAa,qBAA4B;IACnD,sEAAsE;IAC5D,OAAO,qBAA4B;IACnC,WAAW,oBAA2B;IAEvB,UAAU,EAAG,UAAU,CAAC,cAAc,CAAC,CAAC;IACvC,WAAW,EAAG,UAAU,CAAC,cAAc,CAAC,CAAC;IAEnE,KAAK,WAAS;IACd,UAAU,SAAuB;IACjC,cAAc,SAAgC;IAC9C,KAAK,mDAAuB;IAE5B,eAAe;IAMf,IAAI,KAAK,qBAAqE;IAC9E,IAAI,OAAO,YAAsD;IACjE,IAAI,OAAO,WAAuG;IAClH,IAAI,QAAQ,WAAiE;IAE7E,IAAI,QAAQ,WAEX;IAED,OAAO,CAAC,GAAG,EAAE,MAAM;IAInB;;;OAGG;IACH,IAAI,aAAa,IAAI,aAAa,EAAE,CAInC;IAED;;;;OAIG;IACH,IAAI,YAAY,IAAI;QAAE,KAAK,EAAE,aAAa,CAAC;QAAC,MAAM,EAAE,eAAe,CAAA;KAAE,EAAE,CA2BtE;IAED,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI;IAUrE,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO;IAK7B,UAAU,CAAC,CAAC,EAAE,MAAM;IAEpB,UAAU,CAAC,CAAC,EAAE,UAAU;IAQxB,cAAc,CAAC,EAAE,EAAE,aAAa,GAAG,OAAO;IAK1C,gBAAgB,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM;IASlD,cAAc,CAAC,CAAC,EAAE,SAAS;IAQ3B,UAAU,CAAC,CAAC,EAAE,SAAS;IASvB,eAAe,CAAC,CAAC,EAAE,SAAS;IAS5B,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ;IACpC,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,aAAa;yCA9J5B,qBAAqB;2CAArB,qBAAqB;CA+JjC"}
1
+ {"version":3,"file":"ResourceView.d.ts","sourceRoot":"","sources":["../../../src/views/resource/ResourceView.ts"],"names":[],"mappings":"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"}