@bimetal/calendar-angular-components 0.29.0 → 0.32.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/Calendar.d.ts +31 -6
- package/dist/components/Calendar.d.ts.map +1 -1
- package/dist/components/Calendar.js +104 -42
- package/dist/components/Calendar.js.map +1 -1
- package/dist/components/CalendarHeader.js +11 -11
- package/dist/components/CalendarHeader.js.map +1 -1
- package/dist/components/CategoryFilter.js +4 -4
- package/dist/components/CategoryFilter.js.map +1 -1
- package/dist/components/EventBar.d.ts +23 -10
- package/dist/components/EventBar.d.ts.map +1 -1
- package/dist/components/EventBar.js +73 -44
- package/dist/components/EventBar.js.map +1 -1
- package/dist/components/EventDialog.js +86 -68
- package/dist/components/EventDialog.js.map +1 -1
- package/dist/components/EventHistory.d.ts.map +1 -1
- package/dist/components/EventHistory.js +19 -21
- package/dist/components/EventHistory.js.map +1 -1
- package/dist/components/ResourceFilter.js +4 -4
- package/dist/components/ResourceFilter.js.map +1 -1
- package/dist/components/UndoToast.js +7 -8
- package/dist/components/UndoToast.js.map +1 -1
- package/dist/views/agenda/AgendaView.d.ts +29 -30
- package/dist/views/agenda/AgendaView.d.ts.map +1 -1
- package/dist/views/agenda/AgendaView.js +189 -196
- package/dist/views/agenda/AgendaView.js.map +1 -1
- package/dist/views/day/DayView.d.ts.map +1 -1
- package/dist/views/day/DayView.js +30 -27
- package/dist/views/day/DayView.js.map +1 -1
- package/dist/views/month/MonthView.js +5 -5
- package/dist/views/month/MonthView.js.map +1 -1
- package/dist/views/month/WeekRow.d.ts.map +1 -1
- package/dist/views/month/WeekRow.js +36 -32
- package/dist/views/month/WeekRow.js.map +1 -1
- package/dist/views/resource/ResourceView.d.ts +1 -0
- package/dist/views/resource/ResourceView.d.ts.map +1 -1
- package/dist/views/resource/ResourceView.js +35 -27
- package/dist/views/resource/ResourceView.js.map +1 -1
- package/dist/views/timeline/TimelineView.d.ts +1 -0
- package/dist/views/timeline/TimelineView.d.ts.map +1 -1
- package/dist/views/timeline/TimelineView.js +31 -22
- package/dist/views/timeline/TimelineView.js.map +1 -1
- package/dist/views/week/AllDayRow.d.ts +1 -0
- package/dist/views/week/AllDayRow.d.ts.map +1 -1
- package/dist/views/week/AllDayRow.js +21 -11
- package/dist/views/week/AllDayRow.js.map +1 -1
- package/dist/views/week/TimeEvent.d.ts +13 -6
- package/dist/views/week/TimeEvent.d.ts.map +1 -1
- package/dist/views/week/TimeEvent.js +57 -33
- package/dist/views/week/TimeEvent.js.map +1 -1
- package/dist/views/week/WeekView.d.ts +1 -0
- package/dist/views/week/WeekView.d.ts.map +1 -1
- package/dist/views/week/WeekView.js +33 -26
- package/dist/views/week/WeekView.js.map +1 -1
- package/dist/views/year/YearView.js +12 -12
- package/dist/views/year/YearView.js.map +1 -1
- package/package.json +9 -8
- package/dist/binding/utils/date-strings.d.ts +0 -16
- package/dist/binding/utils/date-strings.d.ts.map +0 -1
- package/dist/binding/utils/date-strings.js +0 -30
- package/dist/binding/utils/date-strings.js.map +0 -1
- package/dist/binding/utils/gridUtils.d.ts +0 -6
- package/dist/binding/utils/gridUtils.d.ts.map +0 -1
- package/dist/binding/utils/gridUtils.js +0 -13
- package/dist/binding/utils/gridUtils.js.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Component, Input, Output, EventEmitter, ViewChild, ElementRef } from '@angular/core';
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { maxLanes } from '@bimetal/calendar-core';
|
|
3
|
+
import { maxLanes, getRecurrenceInstanceMetadata } from '@bimetal/calendar-core';
|
|
4
4
|
import { colFromTimeGridX, DEFAULT_TIME_LABEL_WIDTH_WEEK } from '@bimetal/calendar-headless';
|
|
5
5
|
import { EventBarComponent } from '../../components/EventBar.js';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
@@ -14,7 +14,7 @@ function AllDayRowComponent_div_0_cal_event_bar_5_Template(rf, ctx) { if (rf & 1
|
|
|
14
14
|
} if (rf & 2) {
|
|
15
15
|
const item_r4 = ctx.$implicit;
|
|
16
16
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
17
|
-
i0.ɵɵproperty("
|
|
17
|
+
i0.ɵɵproperty("event", item_r4.segment.event)("isStart", item_r4.segment.isStart)("isEnd", item_r4.segment.isEnd)("dayIndex", item_r4.dayIndex)("daySpan", item_r4.daySpan)("column", item_r4.column)("weekDates", ctx_r1.weekDates)("ghost", (ctx_r1.previewEvent == null ? null : ctx_r1.previewEvent.id) === item_r4.segment.event.id)("isSelected", ctx_r1.isSelected(item_r4.segment.event));
|
|
18
18
|
} }
|
|
19
19
|
function AllDayRowComponent_div_0_Template(rf, ctx) { if (rf & 1) {
|
|
20
20
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
@@ -24,7 +24,7 @@ function AllDayRowComponent_div_0_Template(rf, ctx) { if (rf & 1) {
|
|
|
24
24
|
i0.ɵɵtext(3);
|
|
25
25
|
i0.ɵɵelementEnd();
|
|
26
26
|
i0.ɵɵelementStart(4, "div", 4);
|
|
27
|
-
i0.ɵɵtemplate(5, AllDayRowComponent_div_0_cal_event_bar_5_Template, 1,
|
|
27
|
+
i0.ɵɵtemplate(5, AllDayRowComponent_div_0_cal_event_bar_5_Template, 1, 9, "cal-event-bar", 5);
|
|
28
28
|
i0.ɵɵelementEnd()();
|
|
29
29
|
} if (rf & 2) {
|
|
30
30
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -54,6 +54,11 @@ export class AllDayRowComponent {
|
|
|
54
54
|
dragStartEv = new EventEmitter();
|
|
55
55
|
rowEl;
|
|
56
56
|
get lanes() { return maxLanes(this.items); }
|
|
57
|
+
// v0.30 Slice 3: per-leaf selection computed here, passed to EventBar as `isSelected`.
|
|
58
|
+
isSelected(ev) {
|
|
59
|
+
return this.selectedEventId === ev.id
|
|
60
|
+
&& this.selectedInstanceDate === (getRecurrenceInstanceMetadata(ev)?.instanceDate);
|
|
61
|
+
}
|
|
57
62
|
handleDragOver(e) {
|
|
58
63
|
e.preventDefault();
|
|
59
64
|
e.dataTransfer.dropEffect = 'move';
|
|
@@ -82,7 +87,7 @@ export class AllDayRowComponent {
|
|
|
82
87
|
} if (rf & 2) {
|
|
83
88
|
let _t;
|
|
84
89
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.rowEl = _t.first);
|
|
85
|
-
} }, hostAttrs: [2, "display", "contents"], inputs: { weekDates: "weekDates", items: "items", allDayLabel: "allDayLabel", previewEvent: "previewEvent", selectedEventId: "selectedEventId", selectedInstanceDate: "selectedInstanceDate" }, outputs: { eventClick: "eventClick", selectEvent: "selectEvent", dropEvent: "dropEvent", dragOver: "dragOver", hidePreviewEv: "hidePreviewEv", dragEnd: "dragEnd", dragStartEv: "dragStartEv" }, decls: 1, vars: 1, consts: [["rowEl", ""], ["class", "
|
|
90
|
+
} }, hostAttrs: [2, "display", "contents"], inputs: { weekDates: "weekDates", items: "items", allDayLabel: "allDayLabel", previewEvent: "previewEvent", selectedEventId: "selectedEventId", selectedInstanceDate: "selectedInstanceDate" }, outputs: { eventClick: "eventClick", selectEvent: "selectEvent", dropEvent: "dropEvent", dragOver: "dragOver", hidePreviewEv: "hidePreviewEv", dragEnd: "dragEnd", dragStartEv: "dragStartEv" }, decls: 1, vars: 1, consts: [["rowEl", ""], ["class", "bm-cal-week__allday", 3, "dragover", "drop", "dragleave", 4, "ngIf"], [1, "bm-cal-week__allday", 3, "dragover", "drop", "dragleave"], [1, "bm-cal-week__allday-label"], [1, "bm-cal-week__allday-grid"], [3, "event", "isStart", "isEnd", "dayIndex", "daySpan", "column", "weekDates", "ghost", "isSelected", "eventClick", "selectEvent", "dragStart", "dragEnd", 4, "ngFor", "ngForOf"], [3, "eventClick", "selectEvent", "dragStart", "dragEnd", "event", "isStart", "isEnd", "dayIndex", "daySpan", "column", "weekDates", "ghost", "isSelected"]], template: function AllDayRowComponent_Template(rf, ctx) { if (rf & 1) {
|
|
86
91
|
i0.ɵɵtemplate(0, AllDayRowComponent_div_0_Template, 6, 4, "div", 1);
|
|
87
92
|
} if (rf & 2) {
|
|
88
93
|
i0.ɵɵproperty("ngIf", ctx.items.length > 0);
|
|
@@ -96,16 +101,21 @@ export class AllDayRowComponent {
|
|
|
96
101
|
host: { style: 'display: contents' },
|
|
97
102
|
imports: [CommonModule, EventBarComponent],
|
|
98
103
|
template: `
|
|
99
|
-
<div *ngIf="items.length > 0" #rowEl class="
|
|
104
|
+
<div *ngIf="items.length > 0" #rowEl class="bm-cal-week__allday"
|
|
100
105
|
(dragover)="handleDragOver($event)" (drop)="handleDrop($event)"
|
|
101
106
|
(dragleave)="handleDragLeave($event)">
|
|
102
|
-
<div class="
|
|
103
|
-
<div class="
|
|
107
|
+
<div class="bm-cal-week__allday-label">{{ allDayLabel }}</div>
|
|
108
|
+
<div class="bm-cal-week__allday-grid" [style.--lane-count]="lanes">
|
|
104
109
|
<cal-event-bar *ngFor="let item of items; let idx = index"
|
|
105
|
-
[
|
|
110
|
+
[event]="item.segment.event"
|
|
111
|
+
[isStart]="item.segment.isStart"
|
|
112
|
+
[isEnd]="item.segment.isEnd"
|
|
113
|
+
[dayIndex]="item.dayIndex"
|
|
114
|
+
[daySpan]="item.daySpan"
|
|
115
|
+
[column]="item.column"
|
|
116
|
+
[weekDates]="weekDates"
|
|
106
117
|
[ghost]="previewEvent?.id === item.segment.event.id"
|
|
107
|
-
[
|
|
108
|
-
[selectedInstanceDate]="selectedInstanceDate"
|
|
118
|
+
[isSelected]="isSelected(item.segment.event)"
|
|
109
119
|
(eventClick)="eventClick.emit($event)"
|
|
110
120
|
(selectEvent)="selectEvent.emit($event)"
|
|
111
121
|
(dragStart)="dragStartEv.emit($event)"
|
|
@@ -145,5 +155,5 @@ export class AllDayRowComponent {
|
|
|
145
155
|
type: ViewChild,
|
|
146
156
|
args: ['rowEl']
|
|
147
157
|
}] }); })();
|
|
148
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AllDayRowComponent, { className: "AllDayRowComponent", filePath: "views/week/alldayrow.ts", lineNumber:
|
|
158
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AllDayRowComponent, { className: "AllDayRowComponent", filePath: "views/week/alldayrow.ts", lineNumber: 38 }); })();
|
|
149
159
|
//# sourceMappingURL=AllDayRow.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AllDayRow.js","sourceRoot":"","sources":["../../../src/views/week/AllDayRow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"AllDayRow.js","sourceRoot":"","sources":["../../../src/views/week/AllDayRow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,QAAQ,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAC7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;;;;;;IAazD,wCAa6B;IAA3B,AADA,AADA,AADA,sNAAc,8BAAuB,KAAC,2MACvB,+BAAwB,KAAC,uMAC3B,+BAAwB,KAAC,6LAC3B,qBAAc,KAAC;IAC5B,iBAAgB;;;;IALd,AADA,AADA,AADA,AADA,AADA,AADA,AADA,AADA,6CAA4B,oCACI,gCACJ,8BACF,4BACF,0BACF,+BACC,qGAC6B,wDACP;;;;IAdnD,iCAEwC;IAAtC,AADoC,AAApC,uLAAY,6BAAsB,KAAC,kKAAS,yBAAkB,KAAC,4KAClD,8BAAuB,KAAC;IACrC,8BAAuC;IAAA,YAAiB;IAAA,iBAAM;IAC9D,8BAAmE;IACjE,6FAa6B;IAGjC,AADE,iBAAM,EACF;;;IAlBmC,eAAiB;IAAjB,wCAAiB;IAClB,cAA4B;IAA5B,4CAA4B;IAChC,cAAU;IAAV,sCAAU;;AAmBlD,MAAM,OAAO,kBAAkB;IACpB,SAAS,GAAuB,EAAE,CAAC;IACnC,KAAK,GAAiB,EAAE,CAAC;IACzB,WAAW,GAAG,SAAS,CAAC;IACjC,+EAA+E;IACtE,YAAY,GAAyB,IAAI,CAAC;IAC1C,eAAe,GAAkB,IAAI,CAAC;IACtC,oBAAoB,GAAuB,SAAS,CAAC;IACpD,UAAU,GAAG,IAAI,YAAY,EAA6D,CAAC;IAC3F,WAAW,GAAG,IAAI,YAAY,EAA8C,CAAC;IAC7E,SAAS,GAAG,IAAI,YAAY,EAAgD,CAAC;IAC7E,QAAQ,GAAG,IAAI,YAAY,EAAoB,CAAC;IAC1D,yEAAyE;IAC/D,aAAa,GAAG,IAAI,YAAY,EAAQ,CAAC;IACnD,sEAAsE;IAC5D,OAAO,GAAG,IAAI,YAAY,EAAQ,CAAC;IACnC,WAAW,GAAG,IAAI,YAAY,EAAO,CAAC;IAE5B,KAAK,CAA8B;IAEvD,IAAI,KAAK,KAAK,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAE5C,uFAAuF;IACvF,UAAU,CAAC,EAAiB;QAC1B,OAAO,IAAI,CAAC,eAAe,KAAK,EAAE,CAAC,EAAE;eAChC,IAAI,CAAC,oBAAoB,KAAK,CAAC,6BAA6B,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC;IACvF,CAAC;IAED,cAAc,CAAC,CAAY;QACzB,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,CAAC,CAAC,YAAa,CAAC,UAAU,GAAG,MAAM,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QACxB,MAAM,GAAG,GAAG,gBAAgB,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,qBAAqB,EAAE,EAAE,6BAA6B,CAAC,CAAC;QACzH,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED,UAAU,CAAC,CAAY;QACrB,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QACxB,MAAM,GAAG,GAAG,gBAAgB,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,qBAAqB,EAAE,EAAE,6BAA6B,CAAC,CAAC;QACzH,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,eAAe,CAAC,CAAY;QAC1B,MAAM,GAAG,GAAG,CAAC,CAAC,aAA4B,CAAC;QAC3C,MAAM,IAAI,GAAG,GAAG,CAAC,qBAAqB,EAAE,CAAC;QACzC,IAAI,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YACvG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAC5B,CAAC;IACH,CAAC;4GAjDU,kBAAkB;6DAAlB,kBAAkB;;;;;;YAxB3B,mEAEwC;;YAFlC,2CAAsB;4BAFpB,YAAY,uBAAE,iBAAiB;;iFA0B9B,kBAAkB;cA9B9B,SAAS;eAAC;gBACT,QAAQ,EAAE,gBAAgB;gBAC1B,UAAU,EAAE,IAAI;gBAChB,IAAI,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE;gBACpC,OAAO,EAAE,CAAC,YAAY,EAAE,iBAAiB,CAAC;gBAC1C,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;GAuBT;aACF;gBAEU,SAAS;kBAAjB,KAAK;YACG,KAAK;kBAAb,KAAK;YACG,WAAW;kBAAnB,KAAK;YAEG,YAAY;kBAApB,KAAK;YACG,eAAe;kBAAvB,KAAK;YACG,oBAAoB;kBAA5B,KAAK;YACI,UAAU;kBAAnB,MAAM;YACG,WAAW;kBAApB,MAAM;YACG,SAAS;kBAAlB,MAAM;YACG,QAAQ;kBAAjB,MAAM;YAEG,aAAa;kBAAtB,MAAM;YAEG,OAAO;kBAAhB,MAAM;YACG,WAAW;kBAApB,MAAM;YAEa,KAAK;kBAAxB,SAAS;mBAAC,OAAO;;kFAlBP,kBAAkB"}
|
|
@@ -20,7 +20,12 @@ export interface TimeEventLayout {
|
|
|
20
20
|
export declare class TimeEventComponent {
|
|
21
21
|
private renderService?;
|
|
22
22
|
event: CalendarEvent;
|
|
23
|
-
|
|
23
|
+
dayCol: number;
|
|
24
|
+
dayCount: number;
|
|
25
|
+
lane: number;
|
|
26
|
+
laneCount: number;
|
|
27
|
+
startOffset: number;
|
|
28
|
+
endOffset: number;
|
|
24
29
|
dayDate: CalendarDateTime;
|
|
25
30
|
hourHeight: number;
|
|
26
31
|
timeLabelWidth: number;
|
|
@@ -28,8 +33,8 @@ export declare class TimeEventComponent {
|
|
|
28
33
|
clickThresholdMs: number;
|
|
29
34
|
snapMinutes: number;
|
|
30
35
|
locale: any;
|
|
31
|
-
selectedEventId
|
|
32
|
-
|
|
36
|
+
/** Per-leaf selection (v0.30 Slice 3) — replaces the broad selectedEventId/Date inputs. */
|
|
37
|
+
isSelected: boolean;
|
|
33
38
|
eventClick: EventEmitter<{
|
|
34
39
|
eventId: string;
|
|
35
40
|
rect: DOMRect;
|
|
@@ -44,6 +49,9 @@ export declare class TimeEventComponent {
|
|
|
44
49
|
dragEnd: EventEmitter<void>;
|
|
45
50
|
private click;
|
|
46
51
|
constructor(renderService?: EventRenderService | undefined);
|
|
52
|
+
/** v0.30 Slice 3 perf probe: a template binding evaluates ONLY on a real view refresh
|
|
53
|
+
* (unlike ngDoCheck), so this counts REAL leaf re-renders. Returns null → no attribute. */
|
|
54
|
+
probe(): null;
|
|
47
55
|
get badgesTpl(): import("@angular/core").TemplateRef<import("../../index.js").EventRenderTemplateContext> | undefined;
|
|
48
56
|
get contentTpl(): import("@angular/core").TemplateRef<import("../../index.js").EventRenderTemplateContext> | undefined;
|
|
49
57
|
get tplCtx(): import("../../index.js").EventRenderTemplateContext | undefined;
|
|
@@ -63,8 +71,7 @@ export declare class TimeEventComponent {
|
|
|
63
71
|
get width(): string;
|
|
64
72
|
get borderRadius(): string;
|
|
65
73
|
get instanceDate(): number | undefined;
|
|
66
|
-
get
|
|
67
|
-
get selectedClass(): "" | " time-event--selected";
|
|
74
|
+
get selectedClass(): "" | " bm-cal-time-event--selected";
|
|
68
75
|
get timeLabel(): string;
|
|
69
76
|
handleMouseDown(): void;
|
|
70
77
|
handleDragStart(e: DragEvent): void;
|
|
@@ -72,6 +79,6 @@ export declare class TimeEventComponent {
|
|
|
72
79
|
handleClick(e: MouseEvent): void;
|
|
73
80
|
handleDoubleClick(e: MouseEvent): void;
|
|
74
81
|
static ɵfac: i0.ɵɵFactoryDeclaration<TimeEventComponent, [{ optional: true; }]>;
|
|
75
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TimeEventComponent, "cal-time-event", never, { "event": { "alias": "event"; "required": false; }; "
|
|
82
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TimeEventComponent, "cal-time-event", never, { "event": { "alias": "event"; "required": false; }; "dayCol": { "alias": "dayCol"; "required": true; }; "dayCount": { "alias": "dayCount"; "required": true; }; "lane": { "alias": "lane"; "required": true; }; "laneCount": { "alias": "laneCount"; "required": true; }; "startOffset": { "alias": "startOffset"; "required": true; }; "endOffset": { "alias": "endOffset"; "required": true; }; "dayDate": { "alias": "dayDate"; "required": false; }; "hourHeight": { "alias": "hourHeight"; "required": false; }; "timeLabelWidth": { "alias": "timeLabelWidth"; "required": false; }; "ghost": { "alias": "ghost"; "required": false; }; "clickThresholdMs": { "alias": "clickThresholdMs"; "required": false; }; "snapMinutes": { "alias": "snapMinutes"; "required": false; }; "locale": { "alias": "locale"; "required": false; }; "isSelected": { "alias": "isSelected"; "required": false; }; }, { "eventClick": "eventClick"; "selectEvent": "selectEvent"; "dragStart": "dragStart"; "dragEnd": "dragEnd"; }, never, never, true, never>;
|
|
76
83
|
}
|
|
77
84
|
//# sourceMappingURL=TimeEvent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TimeEvent.d.ts","sourceRoot":"","sources":["../../../src/views/week/TimeEvent.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,
|
|
1
|
+
{"version":3,"file":"TimeEvent.d.ts","sourceRoot":"","sources":["../../../src/views/week/TimeEvent.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAqC,MAAM,eAAe,CAAC;AAE1G,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE9E,OAAO,EAAwF,KAAK,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEjJ,OAAO,EAAa,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;;AAEvE;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,qBAiDa,kBAAkB;IA2BL,OAAO,CAAC,aAAa,CAAC;IA1BrC,KAAK,EAAG,aAAa,CAAC;IAGJ,MAAM,EAAG,MAAM,CAAC;IAChB,QAAQ,EAAG,MAAM,CAAC;IAClB,IAAI,EAAG,MAAM,CAAC;IACd,SAAS,EAAG,MAAM,CAAC;IACnB,WAAW,EAAG,MAAM,CAAC;IACrB,SAAS,EAAG,MAAM,CAAC;IACrC,OAAO,EAAG,gBAAgB,CAAC;IAC3B,UAAU,SAAM;IAChB,cAAc,SAAM;IACpB,KAAK,UAAS;IACd,gBAAgB,SAAO;IACvB,WAAW,SAAM;IACjB,MAAM,EAAE,GAAG,CAAC;IACrB,2FAA2F;IAClF,UAAU,UAAS;IAClB,UAAU;iBAA+B,MAAM;cAAQ,OAAO;uBAAiB,MAAM;OAAM;IAC3F,WAAW;iBAA+B,MAAM;uBAAiB,MAAM;OAAM;IAC7E,SAAS,yBAAgC;IACnD,yEAAyE;IAC/D,OAAO,qBAA4B;IAE7C,OAAO,CAAC,KAAK,CAAuB;gBAEJ,aAAa,CAAC,EAAE,kBAAkB,YAAA;IAElE;gGAC4F;IAC5F,KAAK,IAAI,IAAI;IAEb,IAAI,SAAS,yGAAiD;IAC9D,IAAI,UAAU,yGAAkD;IAChE,IAAI,MAAM,oEAAmE;IAC7E,IAAI,aAAa,WAA+E;IAChG,IAAI,cAAc,WAGjB;IACD,IAAI,UAAU,gDAA2D;IAKzE,IAAI,SAAS,WAAmC;IAChD,IAAI,GAAG,WAAgD;IACvD,IAAI,MAAM,WAGT;IACD,IAAI,QAAQ,WAEX;IACD,IAAI,UAAU,YAAkE;IAChF,IAAI,SAAS,YAAgE;IAC7E,IAAI,KAAK,WAAiF;IAC1F,IAAI,YAAY,WAGf;IACD,IAAI,aAAa,WAEhB;IACD,IAAI,IAAI,WAAgH;IACxH,IAAI,KAAK,WAAsF;IAC/F,IAAI,YAAY,WAIf;IACD,IAAI,YAAY,uBAAsE;IACtF,IAAI,aAAa,wCAAoE;IACrF,IAAI,SAAS,IAAI,MAAM,CAOtB;IAED,eAAe;IAEf,eAAe,CAAC,CAAC,EAAE,SAAS;IAU5B,qBAAqB,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,GAAG,KAAK;IASzD,WAAW,CAAC,CAAC,EAAE,UAAU;IAMzB,iBAAiB,CAAC,CAAC,EAAE,UAAU;yCA9GpB,kBAAkB;2CAAlB,kBAAkB;CAoH9B"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { Component, Input, Output, EventEmitter, Optional } from '@angular/core';
|
|
1
|
+
import { Component, Input, Output, EventEmitter, Optional, ChangeDetectionStrategy } from '@angular/core';
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
3
|
import { isSameDay, getRecurrenceInstanceMetadata } from '@bimetal/calendar-core';
|
|
4
4
|
import { buildDragInfo, createClickIntent, writeCalendarDragData, installTransparentDragImage } from '@bimetal/calendar-headless';
|
|
5
|
+
import { probeRender } from '@bimetal/angular';
|
|
5
6
|
import { toTimeStr, EventRenderService } from '../../binding/index.js';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
8
|
import * as i1 from "../../binding/index.js";
|
|
@@ -66,7 +67,14 @@ function TimeEventComponent_div_6_Template(rf, ctx) { if (rf & 1) {
|
|
|
66
67
|
export class TimeEventComponent {
|
|
67
68
|
renderService;
|
|
68
69
|
event;
|
|
69
|
-
layout
|
|
70
|
+
// v0.30 Slice 3: the six layout axes as FLAT primitive @Inputs (not the `layout` wrapper) so
|
|
71
|
+
// OnPush compares by value.
|
|
72
|
+
dayCol;
|
|
73
|
+
dayCount;
|
|
74
|
+
lane;
|
|
75
|
+
laneCount;
|
|
76
|
+
startOffset;
|
|
77
|
+
endOffset;
|
|
70
78
|
dayDate;
|
|
71
79
|
hourHeight = 60;
|
|
72
80
|
timeLabelWidth = 50;
|
|
@@ -74,8 +82,8 @@ export class TimeEventComponent {
|
|
|
74
82
|
clickThresholdMs = 300;
|
|
75
83
|
snapMinutes = 15;
|
|
76
84
|
locale;
|
|
77
|
-
selectedEventId
|
|
78
|
-
|
|
85
|
+
/** Per-leaf selection (v0.30 Slice 3) — replaces the broad selectedEventId/Date inputs. */
|
|
86
|
+
isSelected = false;
|
|
79
87
|
eventClick = new EventEmitter();
|
|
80
88
|
selectEvent = new EventEmitter();
|
|
81
89
|
dragStart = new EventEmitter();
|
|
@@ -85,6 +93,9 @@ export class TimeEventComponent {
|
|
|
85
93
|
constructor(renderService) {
|
|
86
94
|
this.renderService = renderService;
|
|
87
95
|
}
|
|
96
|
+
/** v0.30 Slice 3 perf probe: a template binding evaluates ONLY on a real view refresh
|
|
97
|
+
* (unlike ngDoCheck), so this counts REAL leaf re-renders. Returns null → no attribute. */
|
|
98
|
+
probe() { probeRender(this.event.id); return null; }
|
|
88
99
|
get badgesTpl() { return this.renderService?.eventBadgesTpl; }
|
|
89
100
|
get contentTpl() { return this.renderService?.eventContentTpl; }
|
|
90
101
|
get tplCtx() { return this.renderService?.buildTemplateContext(this.event); }
|
|
@@ -98,23 +109,23 @@ export class TimeEventComponent {
|
|
|
98
109
|
// Bruchteile 0..1 des Tages). Vorgerechnete leftFraction/widthFraction —
|
|
99
110
|
// siehe React-Variante für die calc-Vereinfachung.
|
|
100
111
|
get dayHeight() { return 24 * this.hourHeight; }
|
|
101
|
-
get top() { return this.
|
|
112
|
+
get top() { return this.startOffset * this.dayHeight; }
|
|
102
113
|
get height() {
|
|
103
|
-
const raw = (this.
|
|
114
|
+
const raw = (this.endOffset - this.startOffset) * this.dayHeight;
|
|
104
115
|
return Math.max(raw, 0.25 * this.hourHeight);
|
|
105
116
|
}
|
|
106
117
|
get duration() {
|
|
107
|
-
return Math.max((this.
|
|
118
|
+
return Math.max((this.endOffset - this.startOffset) * 24, 0.25);
|
|
108
119
|
}
|
|
109
120
|
get isFirstDay() { return isSameDay(this.event.timeRange.start, this.dayDate); }
|
|
110
121
|
get isLastDay() { return isSameDay(this.event.timeRange.end, this.dayDate); }
|
|
111
122
|
get color() { return this.event.metadata.color ?? '#007AFF'; }
|
|
112
123
|
get leftFraction() {
|
|
113
|
-
return this.
|
|
114
|
-
+ this.
|
|
124
|
+
return this.dayCol / this.dayCount
|
|
125
|
+
+ this.lane / (this.dayCount * this.laneCount);
|
|
115
126
|
}
|
|
116
127
|
get widthFraction() {
|
|
117
|
-
return 1 / (this.
|
|
128
|
+
return 1 / (this.dayCount * this.laneCount);
|
|
118
129
|
}
|
|
119
130
|
get left() { return `calc(${this.timeLabelWidth}px + (100% - ${this.timeLabelWidth}px) * ${this.leftFraction} + 2px)`; }
|
|
120
131
|
get width() { return `calc((100% - ${this.timeLabelWidth}px) * ${this.widthFraction} - 4px)`; }
|
|
@@ -124,10 +135,7 @@ export class TimeEventComponent {
|
|
|
124
135
|
return `${f}px ${f}px ${l}px ${l}px`;
|
|
125
136
|
}
|
|
126
137
|
get instanceDate() { return getRecurrenceInstanceMetadata(this.event)?.instanceDate; }
|
|
127
|
-
get
|
|
128
|
-
return this.selectedEventId === this.event.id && this.selectedInstanceDate === this.instanceDate;
|
|
129
|
-
}
|
|
130
|
-
get selectedClass() { return this.isSelected ? ' time-event--selected' : ''; }
|
|
138
|
+
get selectedClass() { return this.isSelected ? ' bm-cal-time-event--selected' : ''; }
|
|
131
139
|
get timeLabel() {
|
|
132
140
|
const st = toTimeStr(this.event.timeRange.start);
|
|
133
141
|
const et = toTimeStr(this.event.timeRange.end);
|
|
@@ -171,7 +179,7 @@ export class TimeEventComponent {
|
|
|
171
179
|
this.eventClick.emit({ eventId: this.event.id, rect, instanceDate: this.instanceDate });
|
|
172
180
|
}
|
|
173
181
|
static ɵfac = function TimeEventComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || TimeEventComponent)(i0.ɵɵdirectiveInject(i1.EventRenderService, 8)); };
|
|
174
|
-
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: TimeEventComponent, selectors: [["cal-time-event"]], hostAttrs: [2, "display", "contents"], inputs: { event: "event",
|
|
182
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: TimeEventComponent, selectors: [["cal-time-event"]], hostAttrs: [2, "display", "contents"], inputs: { event: "event", dayCol: "dayCol", dayCount: "dayCount", lane: "lane", laneCount: "laneCount", startOffset: "startOffset", endOffset: "endOffset", dayDate: "dayDate", hourHeight: "hourHeight", timeLabelWidth: "timeLabelWidth", ghost: "ghost", clickThresholdMs: "clickThresholdMs", snapMinutes: "snapMinutes", locale: "locale", isSelected: "isSelected" }, outputs: { eventClick: "eventClick", selectEvent: "selectEvent", dragStart: "dragStart", dragEnd: "dragEnd" }, decls: 7, vars: 27, consts: [["defaultContent", ""], [3, "mousedown", "dragstart", "dragend", "click", "dblclick", "ngStyle", "title"], ["class", "bm-cal-time-event__resize bm-cal-time-event__resize--top", "draggable", "true", 3, "dragstart", "dragend", "mousedown", 4, "ngIf"], [4, "ngIf", "ngIfElse"], [4, "ngIf"], ["class", "bm-cal-time-event__resize bm-cal-time-event__resize--bottom", "draggable", "true", 3, "dragstart", "dragend", "mousedown", 4, "ngIf"], ["draggable", "true", 1, "bm-cal-time-event__resize", "bm-cal-time-event__resize--top", 3, "dragstart", "dragend", "mousedown"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], [1, "bm-cal-time-event__title"], ["class", "bm-cal-time-event__time", 4, "ngIf"], [1, "bm-cal-time-event__time"], ["draggable", "true", 1, "bm-cal-time-event__resize", "bm-cal-time-event__resize--bottom", 3, "dragstart", "dragend", "mousedown"]], template: function TimeEventComponent_Template(rf, ctx) { if (rf & 1) {
|
|
175
183
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
176
184
|
i0.ɵɵelementStart(0, "div", 1);
|
|
177
185
|
i0.ɵɵlistener("mousedown", function TimeEventComponent_Template_div_mousedown_0_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.handleMouseDown()); })("dragstart", function TimeEventComponent_Template_div_dragstart_0_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.handleDragStart($event)); })("dragend", function TimeEventComponent_Template_div_dragend_0_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.dragEnd.emit()); })("click", function TimeEventComponent_Template_div_click_0_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.handleClick($event)); })("dblclick", function TimeEventComponent_Template_div_dblclick_0_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.handleDoubleClick($event)); });
|
|
@@ -179,10 +187,10 @@ export class TimeEventComponent {
|
|
|
179
187
|
i0.ɵɵelementEnd();
|
|
180
188
|
} if (rf & 2) {
|
|
181
189
|
const defaultContent_r5 = i0.ɵɵreference(4);
|
|
182
|
-
i0.ɵɵclassMap("time-event" + (ctx.ghost ? " time-event--ghost" : "") + ctx.selectedClass + ctx.slotsClassName);
|
|
190
|
+
i0.ɵɵclassMap("bm-cal-time-event" + (ctx.ghost ? " bm-cal-time-event--ghost" : "") + ctx.selectedClass + ctx.slotsClassName);
|
|
183
191
|
i0.ɵɵstyleProp("top", ctx.top, "px")("height", ctx.height, "px")("left", ctx.left)("width", ctx.width)("background-color", ctx.color)("border-radius", ctx.borderRadius);
|
|
184
192
|
i0.ɵɵproperty("ngStyle", ctx.slotsStyle)("title", ctx.renderedTitle);
|
|
185
|
-
i0.ɵɵattribute("draggable", !ctx.ghost)("data-day-col", ctx.
|
|
193
|
+
i0.ɵɵattribute("draggable", !ctx.ghost)("data-r", ctx.probe())("data-day-col", ctx.dayCol)("data-day-count", ctx.dayCount)("data-lane", ctx.lane)("data-lane-count", ctx.laneCount);
|
|
186
194
|
i0.ɵɵadvance();
|
|
187
195
|
i0.ɵɵproperty("ngIf", ctx.isFirstDay && !ctx.ghost);
|
|
188
196
|
i0.ɵɵadvance();
|
|
@@ -191,7 +199,7 @@ export class TimeEventComponent {
|
|
|
191
199
|
i0.ɵɵproperty("ngIf", ctx.badgesTpl);
|
|
192
200
|
i0.ɵɵadvance();
|
|
193
201
|
i0.ɵɵproperty("ngIf", ctx.isLastDay && !ctx.ghost);
|
|
194
|
-
} }, dependencies: [CommonModule, i2.NgIf, i2.NgTemplateOutlet, i2.NgStyle], encapsulation: 2 });
|
|
202
|
+
} }, dependencies: [CommonModule, i2.NgIf, i2.NgTemplateOutlet, i2.NgStyle], encapsulation: 2, changeDetection: 0 });
|
|
195
203
|
}
|
|
196
204
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TimeEventComponent, [{
|
|
197
205
|
type: Component,
|
|
@@ -200,23 +208,25 @@ export class TimeEventComponent {
|
|
|
200
208
|
standalone: true,
|
|
201
209
|
host: { style: 'display: contents' },
|
|
202
210
|
imports: [CommonModule],
|
|
211
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
203
212
|
template: `
|
|
204
|
-
<div [class]="'time-event' + (ghost ? ' time-event--ghost' : '') + selectedClass + slotsClassName"
|
|
213
|
+
<div [class]="'bm-cal-time-event' + (ghost ? ' bm-cal-time-event--ghost' : '') + selectedClass + slotsClassName"
|
|
205
214
|
[style.top.px]="top" [style.height.px]="height"
|
|
206
215
|
[style.left]="left" [style.width]="width"
|
|
207
216
|
[style.background-color]="color" [style.border-radius]="borderRadius"
|
|
208
217
|
[ngStyle]="slotsStyle"
|
|
209
218
|
[attr.draggable]="!ghost"
|
|
210
|
-
[attr.data-
|
|
211
|
-
[attr.data-day-
|
|
212
|
-
[attr.data-
|
|
213
|
-
[attr.data-lane
|
|
219
|
+
[attr.data-r]="probe()"
|
|
220
|
+
[attr.data-day-col]="dayCol"
|
|
221
|
+
[attr.data-day-count]="dayCount"
|
|
222
|
+
[attr.data-lane]="lane"
|
|
223
|
+
[attr.data-lane-count]="laneCount"
|
|
214
224
|
(mousedown)="handleMouseDown()" (dragstart)="handleDragStart($event)"
|
|
215
225
|
(dragend)="dragEnd.emit()"
|
|
216
226
|
(click)="handleClick($event)" (dblclick)="handleDoubleClick($event)" [title]="renderedTitle">
|
|
217
227
|
|
|
218
228
|
<div *ngIf="isFirstDay && !ghost"
|
|
219
|
-
class="time-event__resize time-event__resize--top"
|
|
229
|
+
class="bm-cal-time-event__resize bm-cal-time-event__resize--top"
|
|
220
230
|
draggable="true"
|
|
221
231
|
(dragstart)="handleResizeDragStart($event, 'start')"
|
|
222
232
|
(dragend)="dragEnd.emit()"
|
|
@@ -226,15 +236,15 @@ export class TimeEventComponent {
|
|
|
226
236
|
<ng-container *ngTemplateOutlet="contentTpl; context: tplCtx"></ng-container>
|
|
227
237
|
</ng-container>
|
|
228
238
|
<ng-template #defaultContent>
|
|
229
|
-
<div class="time-event__title">{{ renderedTitle }}</div>
|
|
230
|
-
<div *ngIf="duration >= 0.75 && timeLabel" class="time-event__time">{{ timeLabel }}</div>
|
|
239
|
+
<div class="bm-cal-time-event__title">{{ renderedTitle }}</div>
|
|
240
|
+
<div *ngIf="duration >= 0.75 && timeLabel" class="bm-cal-time-event__time">{{ timeLabel }}</div>
|
|
231
241
|
</ng-template>
|
|
232
242
|
<ng-container *ngIf="badgesTpl">
|
|
233
243
|
<ng-container *ngTemplateOutlet="badgesTpl; context: tplCtx"></ng-container>
|
|
234
244
|
</ng-container>
|
|
235
245
|
|
|
236
246
|
<div *ngIf="isLastDay && !ghost"
|
|
237
|
-
class="time-event__resize time-event__resize--bottom"
|
|
247
|
+
class="bm-cal-time-event__resize bm-cal-time-event__resize--bottom"
|
|
238
248
|
draggable="true"
|
|
239
249
|
(dragstart)="handleResizeDragStart($event, 'end')"
|
|
240
250
|
(dragend)="dragEnd.emit()"
|
|
@@ -246,8 +256,24 @@ export class TimeEventComponent {
|
|
|
246
256
|
type: Optional
|
|
247
257
|
}] }], { event: [{
|
|
248
258
|
type: Input
|
|
249
|
-
}],
|
|
250
|
-
type: Input
|
|
259
|
+
}], dayCol: [{
|
|
260
|
+
type: Input,
|
|
261
|
+
args: [{ required: true }]
|
|
262
|
+
}], dayCount: [{
|
|
263
|
+
type: Input,
|
|
264
|
+
args: [{ required: true }]
|
|
265
|
+
}], lane: [{
|
|
266
|
+
type: Input,
|
|
267
|
+
args: [{ required: true }]
|
|
268
|
+
}], laneCount: [{
|
|
269
|
+
type: Input,
|
|
270
|
+
args: [{ required: true }]
|
|
271
|
+
}], startOffset: [{
|
|
272
|
+
type: Input,
|
|
273
|
+
args: [{ required: true }]
|
|
274
|
+
}], endOffset: [{
|
|
275
|
+
type: Input,
|
|
276
|
+
args: [{ required: true }]
|
|
251
277
|
}], dayDate: [{
|
|
252
278
|
type: Input
|
|
253
279
|
}], hourHeight: [{
|
|
@@ -262,9 +288,7 @@ export class TimeEventComponent {
|
|
|
262
288
|
type: Input
|
|
263
289
|
}], locale: [{
|
|
264
290
|
type: Input
|
|
265
|
-
}],
|
|
266
|
-
type: Input
|
|
267
|
-
}], selectedInstanceDate: [{
|
|
291
|
+
}], isSelected: [{
|
|
268
292
|
type: Input
|
|
269
293
|
}], eventClick: [{
|
|
270
294
|
type: Output
|
|
@@ -275,5 +299,5 @@ export class TimeEventComponent {
|
|
|
275
299
|
}], dragEnd: [{
|
|
276
300
|
type: Output
|
|
277
301
|
}] }); })();
|
|
278
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(TimeEventComponent, { className: "TimeEventComponent", filePath: "views/week/timeevent.ts", lineNumber:
|
|
302
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(TimeEventComponent, { className: "TimeEventComponent", filePath: "views/week/timeevent.ts", lineNumber: 73 }); })();
|
|
279
303
|
//# sourceMappingURL=TimeEvent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TimeEvent.js","sourceRoot":"","sources":["../../../src/views/week/TimeEvent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"TimeEvent.js","sourceRoot":"","sources":["../../../src/views/week/TimeEvent.ts"],"names":[],"mappings":"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"}
|
|
@@ -72,6 +72,7 @@ export declare class WeekViewComponent implements OnChanges, AfterViewInit {
|
|
|
72
72
|
handleGridDrop(e: DragEvent): void;
|
|
73
73
|
handleGridDragLeave(e: DragEvent): void;
|
|
74
74
|
handleGridClick(e: MouseEvent): void;
|
|
75
|
+
isTimeSelected(ev: CalendarEvent): boolean;
|
|
75
76
|
handleGridDoubleClick(e: MouseEvent): void;
|
|
76
77
|
static ɵfac: i0.ɵɵFactoryDeclaration<WeekViewComponent, never>;
|
|
77
78
|
static ɵcmp: i0.ɵɵComponentDeclaration<WeekViewComponent, "cal-week-view", never, { "currentDate": { "alias": "currentDate"; "required": false; }; "events": { "alias": "events"; "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"; "dayCellClick": "dayCellClick"; "dropEvent": "dropEvent"; "dropTimedEvent": "dropTimedEvent"; "dragOverDate": "dragOverDate"; "dragOverDateTime": "dragOverDateTime"; "hidePreviewEv": "hidePreviewEv"; "dragEnd": "dragEnd"; "dragStartEv": "dragStartEv"; }, never, never, true, never>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WeekView.d.ts","sourceRoot":"","sources":["../../../src/views/week/WeekView.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAE,SAAS,EAAE,aAAa,EAAa,UAAU,EAAE,MAAM,eAAe,CAAC;AAExH,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC1F,OAAO,EAGiB,aAAa,EACpC,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAI7D,OAAO,EAAsB,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;;AAI1E,
|
|
1
|
+
{"version":3,"file":"WeekView.d.ts","sourceRoot":"","sources":["../../../src/views/week/WeekView.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAE,SAAS,EAAE,aAAa,EAAa,UAAU,EAAE,MAAM,eAAe,CAAC;AAExH,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC1F,OAAO,EAGiB,aAAa,EACpC,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAI7D,OAAO,EAAsB,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;;AAI1E,qBA+Ea,iBAAkB,YAAW,SAAS,EAAE,aAAa;IACvD,WAAW,EAAG,gBAAgB,CAAC;IAC/B,MAAM,EAAE,aAAa,EAAE,CAAM;IAC7B,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,YAAY;cAA4B,gBAAgB;cAAQ,OAAO;OAAM;IAC7E,SAAS;eAA6B,SAAS;cAAQ,gBAAgB;OAAM;IAC7E,cAAc;eAA6B,SAAS;cAAQ,gBAAgB;cAAQ,MAAM;OAAM;IAChG,YAAY,iCAAwC;IACpD,gBAAgB;cAA4B,gBAAgB;cAAQ,MAAM;OAAM;IAC1F,yEAAyE;IAC/D,aAAa,qBAA4B;IACnD,sEAAsE;IAC5D,OAAO,qBAA4B;IACnC,WAAW,oBAA2B;IAEvB,UAAU,CAAC,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;IACvC,WAAW,CAAC,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;IAEnE,SAAS,EAAE,gBAAgB,EAAE,CAAM;IACnC,UAAU,SAAK;IACf,WAAW,EAAE,UAAU,EAAE,CAAM;IAC/B,YAAY,EAAE;QAAE,KAAK,EAAE,aAAa,CAAC;QAAC,MAAM,EAAE,eAAe,CAAA;KAAE,EAAE,CAAM;IACvE,KAAK,WAAS;IACd,UAAU,SAAuB;IACjC,cAAc,SAAiC;IAC/C,MAAM,SAAM;IACZ,QAAQ,SAAK;IACb,KAAK,mDAAuB;IAC5B,aAAa,uBAAiB;IAE9B,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,eAAe,CAAM;IAE7B,IAAI,WAAW,WAAsE;IACrF,UAAU,CAAC,GAAG,EAAE,MAAM;IAEtB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO;IAC7B,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO;IAK7B,WAAW;IA4CX,eAAe;IAMf,kBAAkB,CAAC,CAAC,EAAE,SAAS;IAS/B,cAAc,CAAC,CAAC,EAAE,SAAS;IAQ3B,mBAAmB,CAAC,CAAC,EAAE,SAAS;IAQhC,eAAe,CAAC,CAAC,EAAE,UAAU;IAQ7B,cAAc,CAAC,EAAE,EAAE,aAAa,GAAG,OAAO;IAK1C,qBAAqB,CAAC,CAAC,EAAE,UAAU;yCAzIxB,iBAAiB;2CAAjB,iBAAiB;CAqJ7B"}
|