@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,16 +1,29 @@
|
|
|
1
1
|
import { EventEmitter } from '@angular/core';
|
|
2
|
-
import type { CalendarDateTime,
|
|
2
|
+
import type { CalendarDateTime, CalendarEvent } from '@bimetal/calendar-core';
|
|
3
3
|
import { type DragInfo } from '@bimetal/calendar-headless';
|
|
4
4
|
import { EventRenderService } from '../binding/index.js';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
+
/**
|
|
7
|
+
* v0.30 Slice 3 (Angular identity-treue): now `OnPush` with DECOMPOSED @Inputs — the stable
|
|
8
|
+
* `event` ref + primitive segment/lane fields (not the fresh `LayoutItem` WRAPPER) — and
|
|
9
|
+
* selection as a per-leaf `isSelected` boolean, NOT the broad `selectedEventId`/
|
|
10
|
+
* `selectedInstanceDate` (which changed on EVERY leaf per selection and defeated OnPush, the
|
|
11
|
+
* exact Angular analog of the React context problem). → a selection or one-event dispatch
|
|
12
|
+
* re-renders only the touched bar.
|
|
13
|
+
*/
|
|
6
14
|
export declare class EventBarComponent {
|
|
7
15
|
private renderService?;
|
|
8
|
-
|
|
16
|
+
event: CalendarEvent;
|
|
17
|
+
isStart: boolean;
|
|
18
|
+
isEnd: boolean;
|
|
19
|
+
dayIndex: number;
|
|
20
|
+
daySpan: number;
|
|
21
|
+
column: number;
|
|
9
22
|
weekDates: CalendarDateTime[];
|
|
10
23
|
ghost: boolean;
|
|
11
24
|
clickThresholdMs: number;
|
|
12
|
-
selectedEventId
|
|
13
|
-
|
|
25
|
+
/** Per-leaf selection (v0.30 Slice 3) — replaces the broad selectedEventId/Date inputs. */
|
|
26
|
+
isSelected: boolean;
|
|
14
27
|
eventClick: EventEmitter<{
|
|
15
28
|
eventId: string;
|
|
16
29
|
rect: DOMRect;
|
|
@@ -25,22 +38,22 @@ export declare class EventBarComponent {
|
|
|
25
38
|
dragEnd: EventEmitter<void>;
|
|
26
39
|
private click;
|
|
27
40
|
constructor(renderService?: EventRenderService | undefined);
|
|
41
|
+
/** v0.30 Slice 3 perf probe: a template binding evaluates ONLY on a real view refresh
|
|
42
|
+
* (unlike ngDoCheck), so this counts REAL leaf re-renders. Returns null → no attribute. */
|
|
43
|
+
probe(): null;
|
|
28
44
|
get badgesTpl(): import("@angular/core").TemplateRef<import("../index.js").EventRenderTemplateContext> | undefined;
|
|
29
45
|
get contentTpl(): import("@angular/core").TemplateRef<import("../index.js").EventRenderTemplateContext> | undefined;
|
|
30
46
|
get tplCtx(): import("../index.js").EventRenderTemplateContext | undefined;
|
|
31
47
|
get renderedTitle(): string;
|
|
32
48
|
get slotsClassName(): string;
|
|
33
49
|
get slotsStyle(): Record<string, string | number> | undefined;
|
|
34
|
-
get segment(): import("@bimetal/calendar-core").Segment;
|
|
35
|
-
get event(): import("@bimetal/calendar-core").CalendarEvent;
|
|
36
50
|
get color(): string;
|
|
37
51
|
get wantsDarkText(): boolean;
|
|
38
52
|
get isRecurring(): boolean;
|
|
39
53
|
get isCompact(): boolean;
|
|
40
|
-
get ghostClass(): "" | "
|
|
54
|
+
get ghostClass(): "" | " bm-cal__event-bar--ghost";
|
|
41
55
|
get instanceDate(): number | undefined;
|
|
42
|
-
get
|
|
43
|
-
get selectedClass(): "" | " event-bar--selected";
|
|
56
|
+
get selectedClass(): "" | " bm-cal__event-bar--selected";
|
|
44
57
|
get gridColumn(): string;
|
|
45
58
|
get gridRow(): string;
|
|
46
59
|
get borderRadius(): string;
|
|
@@ -51,6 +64,6 @@ export declare class EventBarComponent {
|
|
|
51
64
|
handleClick(e: MouseEvent): void;
|
|
52
65
|
handleDoubleClick(e: MouseEvent): void;
|
|
53
66
|
static ɵfac: i0.ɵɵFactoryDeclaration<EventBarComponent, [{ optional: true; }]>;
|
|
54
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<EventBarComponent, "cal-event-bar", never, { "
|
|
67
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<EventBarComponent, "cal-event-bar", never, { "event": { "alias": "event"; "required": true; }; "isStart": { "alias": "isStart"; "required": true; }; "isEnd": { "alias": "isEnd"; "required": true; }; "dayIndex": { "alias": "dayIndex"; "required": true; }; "daySpan": { "alias": "daySpan"; "required": true; }; "column": { "alias": "column"; "required": true; }; "weekDates": { "alias": "weekDates"; "required": false; }; "ghost": { "alias": "ghost"; "required": false; }; "clickThresholdMs": { "alias": "clickThresholdMs"; "required": false; }; "isSelected": { "alias": "isSelected"; "required": false; }; }, { "eventClick": "eventClick"; "selectEvent": "selectEvent"; "dragStart": "dragStart"; "dragEnd": "dragEnd"; }, never, never, true, never>;
|
|
55
68
|
}
|
|
56
69
|
//# sourceMappingURL=EventBar.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventBar.d.ts","sourceRoot":"","sources":["../../src/components/EventBar.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,
|
|
1
|
+
{"version":3,"file":"EventBar.d.ts","sourceRoot":"","sources":["../../src/components/EventBar.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAqC,MAAM,eAAe,CAAC;AAE1G,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE9E,OAAO,EAA0H,KAAK,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEnL,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;;AAEzD;;;;;;;GAOG;AACH,qBA6Ea,iBAAiB;IAqBJ,OAAO,CAAC,aAAa,CAAC;IAnBnB,KAAK,EAAG,aAAa,CAAC;IACtB,OAAO,EAAG,OAAO,CAAC;IAClB,KAAK,EAAG,OAAO,CAAC;IAChB,QAAQ,EAAG,MAAM,CAAC;IAClB,OAAO,EAAG,MAAM,CAAC;IACjB,MAAM,EAAG,MAAM,CAAC;IAClC,SAAS,EAAE,gBAAgB,EAAE,CAAM;IACnC,KAAK,UAAS;IACd,gBAAgB,SAAO;IAChC,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,sGAAiD;IAC9D,IAAI,UAAU,sGAAkD;IAChE,IAAI,MAAM,iEAAmE;IAC7E,IAAI,aAAa,WAA+E;IAChG,IAAI,cAAc,WAGjB;IACD,IAAI,UAAU,gDAA2D;IAEzE,IAAI,KAAK,WAAiF;IAC1F,IAAI,aAAa,YAAgD;IACjE,IAAI,WAAW,YAAkF;IACjG,IAAI,SAAS,YAAqF;IAClG,IAAI,UAAU,qCAA4D;IAC1E,IAAI,YAAY,uBAAsE;IACtF,IAAI,aAAa,wCAAoE;IACrF,IAAI,UAAU,WAA4D;IAC1E,IAAI,OAAO,WAAsC;IACjD,IAAI,YAAY,WAIf;IACD,IAAI,SAAS,WAEZ;IAED,eAAe;IAIf,eAAe,CAAC,CAAC,EAAE,SAAS;IAgB5B,qBAAqB,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,GAAG,KAAK;IASzD,WAAW,CAAC,CAAC,EAAE,UAAU;IAMzB,iBAAiB,CAAC,CAAC,EAAE,UAAU;yCA1FpB,iBAAiB;2CAAjB,iBAAiB;CAgG7B"}
|
|
@@ -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 { daysBetween, getRecurrenceInstanceMetadata, isExpandedRecurrenceInstance } from '@bimetal/calendar-core';
|
|
4
4
|
import { buildDragInfo, createClickIntent, writeCalendarDragData, installTransparentDragImage, toTimeStr, eventBarWantsDarkText } from '@bimetal/calendar-headless';
|
|
5
|
+
import { probeRender } from '@bimetal/angular';
|
|
5
6
|
import { EventRenderService } from '../binding/index.js';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
8
|
import * as i1 from "../binding/index.js";
|
|
@@ -55,10 +56,10 @@ function EventBarComponent_div_0_Template(rf, ctx) { if (rf & 1) {
|
|
|
55
56
|
} if (rf & 2) {
|
|
56
57
|
const defaultCompact_r3 = i0.ɵɵreference(3);
|
|
57
58
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
58
|
-
i0.ɵɵclassMap("
|
|
59
|
+
i0.ɵɵclassMap("bm-cal__event-bar bm-cal__event-bar--single" + ctx_r1.ghostClass + ctx_r1.selectedClass + ctx_r1.slotsClassName);
|
|
59
60
|
i0.ɵɵstyleProp("grid-column", ctx_r1.gridColumn)("grid-row", ctx_r1.gridRow);
|
|
60
61
|
i0.ɵɵproperty("ngStyle", ctx_r1.slotsStyle)("title", ctx_r1.renderedTitle);
|
|
61
|
-
i0.ɵɵattribute("draggable", !ctx_r1.ghost);
|
|
62
|
+
i0.ɵɵattribute("data-r", ctx_r1.probe())("draggable", !ctx_r1.ghost);
|
|
62
63
|
i0.ɵɵadvance();
|
|
63
64
|
i0.ɵɵproperty("ngIf", ctx_r1.contentTpl)("ngIfElse", defaultCompact_r3);
|
|
64
65
|
i0.ɵɵadvance(3);
|
|
@@ -88,7 +89,7 @@ function EventBarComponent_ng_template_1_ng_template_3_Template(rf, ctx) { if (r
|
|
|
88
89
|
i0.ɵɵelementEnd();
|
|
89
90
|
} if (rf & 2) {
|
|
90
91
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
91
|
-
i0.ɵɵclassProp("
|
|
92
|
+
i0.ɵɵclassProp("bm-cal__event-title--on-light", ctx_r1.wantsDarkText);
|
|
92
93
|
i0.ɵɵadvance();
|
|
93
94
|
i0.ɵɵtextInterpolate2("", ctx_r1.isRecurring ? "\u21BB " : "", "", ctx_r1.renderedTitle, "");
|
|
94
95
|
} }
|
|
@@ -119,27 +120,41 @@ function EventBarComponent_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
|
119
120
|
} if (rf & 2) {
|
|
120
121
|
const defaultMulti_r7 = i0.ɵɵreference(4);
|
|
121
122
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
122
|
-
i0.ɵɵclassMap("
|
|
123
|
+
i0.ɵɵclassMap("bm-cal__event-bar bm-cal__event-bar--multi" + ctx_r1.ghostClass + ctx_r1.selectedClass + ctx_r1.slotsClassName);
|
|
123
124
|
i0.ɵɵstyleProp("grid-column", ctx_r1.gridColumn)("grid-row", ctx_r1.gridRow)("background-color", ctx_r1.color)("border-radius", ctx_r1.borderRadius);
|
|
124
125
|
i0.ɵɵproperty("ngStyle", ctx_r1.slotsStyle)("title", ctx_r1.renderedTitle);
|
|
125
126
|
i0.ɵɵattribute("draggable", !ctx_r1.ghost);
|
|
126
127
|
i0.ɵɵadvance();
|
|
127
|
-
i0.ɵɵproperty("ngIf", ctx_r1.
|
|
128
|
+
i0.ɵɵproperty("ngIf", ctx_r1.isStart && !ctx_r1.ghost);
|
|
128
129
|
i0.ɵɵadvance();
|
|
129
130
|
i0.ɵɵproperty("ngIf", ctx_r1.contentTpl)("ngIfElse", defaultMulti_r7);
|
|
130
131
|
i0.ɵɵadvance(3);
|
|
131
132
|
i0.ɵɵproperty("ngIf", ctx_r1.badgesTpl);
|
|
132
133
|
i0.ɵɵadvance();
|
|
133
|
-
i0.ɵɵproperty("ngIf", ctx_r1.
|
|
134
|
+
i0.ɵɵproperty("ngIf", ctx_r1.isEnd && !ctx_r1.ghost);
|
|
134
135
|
} }
|
|
136
|
+
/**
|
|
137
|
+
* v0.30 Slice 3 (Angular identity-treue): now `OnPush` with DECOMPOSED @Inputs — the stable
|
|
138
|
+
* `event` ref + primitive segment/lane fields (not the fresh `LayoutItem` WRAPPER) — and
|
|
139
|
+
* selection as a per-leaf `isSelected` boolean, NOT the broad `selectedEventId`/
|
|
140
|
+
* `selectedInstanceDate` (which changed on EVERY leaf per selection and defeated OnPush, the
|
|
141
|
+
* exact Angular analog of the React context problem). → a selection or one-event dispatch
|
|
142
|
+
* re-renders only the touched bar.
|
|
143
|
+
*/
|
|
135
144
|
export class EventBarComponent {
|
|
136
145
|
renderService;
|
|
137
|
-
|
|
146
|
+
// v0.30 Slice 3: decomposed from the `LayoutItem` wrapper to a stable `event` ref + primitives.
|
|
147
|
+
event;
|
|
148
|
+
isStart;
|
|
149
|
+
isEnd;
|
|
150
|
+
dayIndex;
|
|
151
|
+
daySpan;
|
|
152
|
+
column;
|
|
138
153
|
weekDates = [];
|
|
139
154
|
ghost = false;
|
|
140
155
|
clickThresholdMs = 300;
|
|
141
|
-
selectedEventId
|
|
142
|
-
|
|
156
|
+
/** Per-leaf selection (v0.30 Slice 3) — replaces the broad selectedEventId/Date inputs. */
|
|
157
|
+
isSelected = false;
|
|
143
158
|
eventClick = new EventEmitter();
|
|
144
159
|
selectEvent = new EventEmitter();
|
|
145
160
|
dragStart = new EventEmitter();
|
|
@@ -149,6 +164,9 @@ export class EventBarComponent {
|
|
|
149
164
|
constructor(renderService) {
|
|
150
165
|
this.renderService = renderService;
|
|
151
166
|
}
|
|
167
|
+
/** v0.30 Slice 3 perf probe: a template binding evaluates ONLY on a real view refresh
|
|
168
|
+
* (unlike ngDoCheck), so this counts REAL leaf re-renders. Returns null → no attribute. */
|
|
169
|
+
probe() { probeRender(this.event.id); return null; }
|
|
152
170
|
get badgesTpl() { return this.renderService?.eventBadgesTpl; }
|
|
153
171
|
get contentTpl() { return this.renderService?.eventContentTpl; }
|
|
154
172
|
get tplCtx() { return this.renderService?.buildTemplateContext(this.event); }
|
|
@@ -158,23 +176,18 @@ export class EventBarComponent {
|
|
|
158
176
|
return cls ? ' ' + cls : '';
|
|
159
177
|
}
|
|
160
178
|
get slotsStyle() { return this.renderService?.resolveStyle(this.event); }
|
|
161
|
-
get segment() { return this.item.segment; }
|
|
162
|
-
get event() { return this.segment.event; }
|
|
163
179
|
get color() { return this.event.metadata.color ?? '#007AFF'; }
|
|
164
180
|
get wantsDarkText() { return eventBarWantsDarkText(this.color); }
|
|
165
181
|
get isRecurring() { return isExpandedRecurrenceInstance(this.event) || !!this.event.recurrence; }
|
|
166
|
-
get isCompact() { return this.
|
|
167
|
-
get ghostClass() { return this.ghost ? '
|
|
182
|
+
get isCompact() { return this.daySpan === 1 && this.isStart && this.isEnd && !this.event.allDay; }
|
|
183
|
+
get ghostClass() { return this.ghost ? ' bm-cal__event-bar--ghost' : ''; }
|
|
168
184
|
get instanceDate() { return getRecurrenceInstanceMetadata(this.event)?.instanceDate; }
|
|
169
|
-
get
|
|
170
|
-
|
|
171
|
-
}
|
|
172
|
-
get selectedClass() { return this.isSelected ? ' event-bar--selected' : ''; }
|
|
173
|
-
get gridColumn() { return `${this.item.dayIndex + 1} / span ${this.item.daySpan}`; }
|
|
174
|
-
get gridRow() { return String(this.item.column + 1); }
|
|
185
|
+
get selectedClass() { return this.isSelected ? ' bm-cal__event-bar--selected' : ''; }
|
|
186
|
+
get gridColumn() { return `${this.dayIndex + 1} / span ${this.daySpan}`; }
|
|
187
|
+
get gridRow() { return String(this.column + 1); }
|
|
175
188
|
get borderRadius() {
|
|
176
|
-
const s = this.
|
|
177
|
-
const e = this.
|
|
189
|
+
const s = this.isStart ? 4 : 0;
|
|
190
|
+
const e = this.isEnd ? 4 : 0;
|
|
178
191
|
return `${s}px ${e}px ${e}px ${s}px`;
|
|
179
192
|
}
|
|
180
193
|
get startTime() {
|
|
@@ -187,9 +200,9 @@ export class EventBarComponent {
|
|
|
187
200
|
this.click.markDragged();
|
|
188
201
|
const bar = e.currentTarget;
|
|
189
202
|
const barRect = bar.getBoundingClientRect();
|
|
190
|
-
const colWidth = barRect.width / this.
|
|
191
|
-
const grabColInBar = Math.min(Math.max(0, Math.floor((e.clientX - barRect.left) / colWidth)), this.
|
|
192
|
-
const grabbedDate = this.weekDates[this.
|
|
203
|
+
const colWidth = barRect.width / this.daySpan;
|
|
204
|
+
const grabColInBar = Math.min(Math.max(0, Math.floor((e.clientX - barRect.left) / colWidth)), this.daySpan - 1);
|
|
205
|
+
const grabbedDate = this.weekDates[this.dayIndex + grabColInBar];
|
|
193
206
|
const offset = daysBetween(this.event.timeRange.start, grabbedDate);
|
|
194
207
|
const info = buildDragInfo(this.event, 'move', { dayOffset: offset });
|
|
195
208
|
writeCalendarDragData(e.dataTransfer, info);
|
|
@@ -217,12 +230,12 @@ export class EventBarComponent {
|
|
|
217
230
|
this.eventClick.emit({ eventId: this.event.id, rect, instanceDate: this.instanceDate });
|
|
218
231
|
}
|
|
219
232
|
static ɵfac = function EventBarComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || EventBarComponent)(i0.ɵɵdirectiveInject(i1.EventRenderService, 8)); };
|
|
220
|
-
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: EventBarComponent, selectors: [["cal-event-bar"]], hostAttrs: [2, "display", "contents"], inputs: {
|
|
221
|
-
i0.ɵɵtemplate(0, EventBarComponent_div_0_Template, 5,
|
|
233
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: EventBarComponent, selectors: [["cal-event-bar"]], hostAttrs: [2, "display", "contents"], inputs: { event: "event", isStart: "isStart", isEnd: "isEnd", dayIndex: "dayIndex", daySpan: "daySpan", column: "column", weekDates: "weekDates", ghost: "ghost", clickThresholdMs: "clickThresholdMs", isSelected: "isSelected" }, outputs: { eventClick: "eventClick", selectEvent: "selectEvent", dragStart: "dragStart", dragEnd: "dragEnd" }, decls: 3, vars: 2, consts: [["multiTpl", ""], ["defaultCompact", ""], ["defaultMulti", ""], [3, "class", "grid-column", "grid-row", "ngStyle", "title", "mousedown", "dragstart", "dragend", "click", "dblclick", 4, "ngIf", "ngIfElse"], [3, "mousedown", "dragstart", "dragend", "click", "dblclick", "ngStyle", "title"], [4, "ngIf", "ngIfElse"], [4, "ngIf"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], [1, "bm-cal__event-dot"], [1, "bm-cal__event-time"], [1, "bm-cal__event-title", "bm-cal__event-title--dark"], ["class", "bm-cal__resize-handle bm-cal__resize-handle--start", "draggable", "true", 3, "dragstart", "dragend", "mousedown", 4, "ngIf"], ["class", "bm-cal__resize-handle bm-cal__resize-handle--end", "draggable", "true", 3, "dragstart", "dragend", "mousedown", 4, "ngIf"], ["draggable", "true", 1, "bm-cal__resize-handle", "bm-cal__resize-handle--start", 3, "dragstart", "dragend", "mousedown"], [1, "bm-cal__event-title"], ["draggable", "true", 1, "bm-cal__resize-handle", "bm-cal__resize-handle--end", 3, "dragstart", "dragend", "mousedown"]], template: function EventBarComponent_Template(rf, ctx) { if (rf & 1) {
|
|
234
|
+
i0.ɵɵtemplate(0, EventBarComponent_div_0_Template, 5, 13, "div", 3)(1, EventBarComponent_ng_template_1_Template, 7, 18, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
|
|
222
235
|
} if (rf & 2) {
|
|
223
236
|
const multiTpl_r8 = i0.ɵɵreference(2);
|
|
224
237
|
i0.ɵɵproperty("ngIf", ctx.isCompact)("ngIfElse", multiTpl_r8);
|
|
225
|
-
} }, dependencies: [CommonModule, i2.NgIf, i2.NgTemplateOutlet, i2.NgStyle], encapsulation: 2 });
|
|
238
|
+
} }, dependencies: [CommonModule, i2.NgIf, i2.NgTemplateOutlet, i2.NgStyle], encapsulation: 2, changeDetection: 0 });
|
|
226
239
|
}
|
|
227
240
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EventBarComponent, [{
|
|
228
241
|
type: Component,
|
|
@@ -231,12 +244,14 @@ export class EventBarComponent {
|
|
|
231
244
|
standalone: true,
|
|
232
245
|
host: { style: 'display: contents' },
|
|
233
246
|
imports: [CommonModule],
|
|
247
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
234
248
|
template: `
|
|
235
249
|
<!-- Compact single-day timed event -->
|
|
236
250
|
<div *ngIf="isCompact; else multiTpl"
|
|
237
|
-
[class]="'
|
|
251
|
+
[class]="'bm-cal__event-bar bm-cal__event-bar--single' + ghostClass + selectedClass + slotsClassName"
|
|
238
252
|
[style.grid-column]="gridColumn"
|
|
239
253
|
[style.grid-row]="gridRow"
|
|
254
|
+
[attr.data-r]="probe()"
|
|
240
255
|
[ngStyle]="slotsStyle"
|
|
241
256
|
[attr.draggable]="!ghost"
|
|
242
257
|
(mousedown)="handleMouseDown()"
|
|
@@ -249,9 +264,9 @@ export class EventBarComponent {
|
|
|
249
264
|
<ng-container *ngTemplateOutlet="contentTpl; context: tplCtx"></ng-container>
|
|
250
265
|
</ng-container>
|
|
251
266
|
<ng-template #defaultCompact>
|
|
252
|
-
<span class="
|
|
253
|
-
<span class="
|
|
254
|
-
<span class="
|
|
267
|
+
<span class="bm-cal__event-dot" [style.background-color]="color"></span>
|
|
268
|
+
<span class="bm-cal__event-time">{{ startTime }}</span>
|
|
269
|
+
<span class="bm-cal__event-title bm-cal__event-title--dark">{{ isRecurring ? '↻ ' : '' }}{{ renderedTitle }}</span>
|
|
255
270
|
</ng-template>
|
|
256
271
|
<ng-container *ngIf="badgesTpl">
|
|
257
272
|
<ng-container *ngTemplateOutlet="badgesTpl; context: tplCtx"></ng-container>
|
|
@@ -261,7 +276,7 @@ export class EventBarComponent {
|
|
|
261
276
|
<!-- Multi-day / all-day bar -->
|
|
262
277
|
<ng-template #multiTpl>
|
|
263
278
|
<div
|
|
264
|
-
[class]="'
|
|
279
|
+
[class]="'bm-cal__event-bar bm-cal__event-bar--multi' + ghostClass + selectedClass + slotsClassName"
|
|
265
280
|
[style.grid-column]="gridColumn"
|
|
266
281
|
[style.grid-row]="gridRow"
|
|
267
282
|
[style.background-color]="color"
|
|
@@ -274,8 +289,8 @@ export class EventBarComponent {
|
|
|
274
289
|
(click)="handleClick($event)"
|
|
275
290
|
(dblclick)="handleDoubleClick($event)"
|
|
276
291
|
[title]="renderedTitle">
|
|
277
|
-
<div *ngIf="
|
|
278
|
-
class="
|
|
292
|
+
<div *ngIf="isStart && !ghost"
|
|
293
|
+
class="bm-cal__resize-handle bm-cal__resize-handle--start"
|
|
279
294
|
draggable="true"
|
|
280
295
|
(dragstart)="handleResizeDragStart($event, 'start')"
|
|
281
296
|
(dragend)="dragEnd.emit()"
|
|
@@ -285,13 +300,13 @@ export class EventBarComponent {
|
|
|
285
300
|
<ng-container *ngTemplateOutlet="contentTpl; context: tplCtx"></ng-container>
|
|
286
301
|
</ng-container>
|
|
287
302
|
<ng-template #defaultMulti>
|
|
288
|
-
<span class="
|
|
303
|
+
<span class="bm-cal__event-title" [class.bm-cal__event-title--on-light]="wantsDarkText">{{ isRecurring ? '↻ ' : '' }}{{ renderedTitle }}</span>
|
|
289
304
|
</ng-template>
|
|
290
305
|
<ng-container *ngIf="badgesTpl">
|
|
291
306
|
<ng-container *ngTemplateOutlet="badgesTpl; context: tplCtx"></ng-container>
|
|
292
307
|
</ng-container>
|
|
293
|
-
<div *ngIf="
|
|
294
|
-
class="
|
|
308
|
+
<div *ngIf="isEnd && !ghost"
|
|
309
|
+
class="bm-cal__resize-handle bm-cal__resize-handle--end"
|
|
295
310
|
draggable="true"
|
|
296
311
|
(dragstart)="handleResizeDragStart($event, 'end')"
|
|
297
312
|
(dragend)="dragEnd.emit()"
|
|
@@ -303,17 +318,31 @@ export class EventBarComponent {
|
|
|
303
318
|
}]
|
|
304
319
|
}], () => [{ type: i1.EventRenderService, decorators: [{
|
|
305
320
|
type: Optional
|
|
306
|
-
}] }], {
|
|
307
|
-
type: Input
|
|
321
|
+
}] }], { event: [{
|
|
322
|
+
type: Input,
|
|
323
|
+
args: [{ required: true }]
|
|
324
|
+
}], isStart: [{
|
|
325
|
+
type: Input,
|
|
326
|
+
args: [{ required: true }]
|
|
327
|
+
}], isEnd: [{
|
|
328
|
+
type: Input,
|
|
329
|
+
args: [{ required: true }]
|
|
330
|
+
}], dayIndex: [{
|
|
331
|
+
type: Input,
|
|
332
|
+
args: [{ required: true }]
|
|
333
|
+
}], daySpan: [{
|
|
334
|
+
type: Input,
|
|
335
|
+
args: [{ required: true }]
|
|
336
|
+
}], column: [{
|
|
337
|
+
type: Input,
|
|
338
|
+
args: [{ required: true }]
|
|
308
339
|
}], weekDates: [{
|
|
309
340
|
type: Input
|
|
310
341
|
}], ghost: [{
|
|
311
342
|
type: Input
|
|
312
343
|
}], clickThresholdMs: [{
|
|
313
344
|
type: Input
|
|
314
|
-
}],
|
|
315
|
-
type: Input
|
|
316
|
-
}], selectedInstanceDate: [{
|
|
345
|
+
}], isSelected: [{
|
|
317
346
|
type: Input
|
|
318
347
|
}], eventClick: [{
|
|
319
348
|
type: Output
|
|
@@ -324,5 +353,5 @@ export class EventBarComponent {
|
|
|
324
353
|
}], dragEnd: [{
|
|
325
354
|
type: Output
|
|
326
355
|
}] }); })();
|
|
327
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(EventBarComponent, { className: "EventBarComponent", filePath: "components/eventbar.ts", lineNumber:
|
|
356
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(EventBarComponent, { className: "EventBarComponent", filePath: "components/eventbar.ts", lineNumber: 94 }); })();
|
|
328
357
|
//# sourceMappingURL=EventBar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventBar.js","sourceRoot":"","sources":["../../src/components/EventBar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"EventBar.js","sourceRoot":"","sources":["../../src/components/EventBar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAC1G,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,6BAA6B,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AAClH,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,2BAA2B,EAAE,SAAS,EAAE,qBAAqB,EAAiB,MAAM,4BAA4B,CAAC;AACnL,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;;;;;IAgCjD,wBAA6E;;;IAD/E,6BAAsD;IACpD,yGAA8D;;;;IAA/C,cAA8B;IAAA,AAA9B,oDAA8B,0CAAe;;;IAG5D,0BAAwE;IACxE,+BAAiC;IAAA,YAAe;IAAA,iBAAO;IACvD,gCAA4D;IAAA,YAAgD;IAAA,iBAAO;;;IAFnF,gDAAgC;IAC/B,eAAe;IAAf,sCAAe;IACY,eAAgD;IAAhD,4FAAgD;;;IAG5G,wBAA4E;;;IAD9E,6BAAgC;IAC9B,yGAA6D;;;;IAA9C,cAA6B;IAAA,AAA7B,mDAA6B,0CAAe;;;;IAtB/D,8BAY0B;IADxB,AADA,AADA,AADA,AADA,kLAAa,wBAAiB,KAAC,2KAClB,8BAAuB,KAAC,iKAC1B,qBAAc,KAAC,mKACjB,0BAAmB,KAAC,yKACjB,gCAAyB,KAAC;IAUtC,AALA,AAHA,0FAAsD,4GAGzB,6EAKG;IAGlC,iBAAM;;;;IAvBJ,+HAAqG;IAErG,AADA,gDAAgC,4BACN;IAS1B,AAPA,2CAAsB,+BAOC;;IACR,cAAkB;IAAA,AAAlB,wCAAkB,+BAAmB;IAQrC,eAAe;IAAf,uCAAe;;;;IAqB5B,+BAKyC;IAAvC,AADA,AADA,uMAAa,qCAA8B,OAAO,CAAC,KAAC,gLACzC,qBAAc,KAAC,sJACb,wBAAwB,KAAC;IACxC,iBAAM;;;IAEJ,wBAA6E;;;IAD/E,6BAAoD;IAClD,iHAA8D;;;;IAA/C,cAA8B;IAAA,AAA9B,oDAA8B,0CAAe;;;IAG5D,gCAAwF;IAAA,YAAgD;IAAA,iBAAO;;;IAA7G,qEAAqD;IAAC,cAAgD;IAAhD,4FAAgD;;;IAGxI,wBAA4E;;;IAD9E,6BAAgC;IAC9B,iHAA6D;;;;IAA9C,cAA6B;IAAA,AAA7B,mDAA6B,0CAAe;;;;IAE7D,+BAKyC;IAAvC,AADA,AADA,uMAAa,qCAA8B,KAAK,CAAC,KAAC,gLACvC,qBAAc,KAAC,sJACb,wBAAwB,KAAC;IACxC,iBAAM;;;;IApCR,8BAa0B;IADxB,AADA,AADA,AADA,AADA,0LAAa,wBAAiB,KAAC,mLAClB,8BAAuB,KAAC,yKAC1B,qBAAc,KAAC,2KACjB,0BAAmB,KAAC,iLACjB,gCAAyB,KAAC;IAkBtC,AAHA,AAHA,AAHA,AAPA,iFAKyC,qFAEW,oHAGzB,qFAGK,oEAQS;IAE3C,iBAAM;;;;IApCJ,8HAAoG;IAIpG,AADA,AADA,AADA,gDAAgC,4BACN,kCACM,sCACI;IAQpC,AAPA,2CAAsB,+BAOC;;IACjB,cAAuB;IAAvB,sDAAuB;IAOd,cAAkB;IAAA,AAAlB,wCAAkB,6BAAiB;IAMnC,eAAe;IAAf,uCAAe;IAGxB,cAAqB;IAArB,oDAAqB;;AA1EnC;;;;;;;GAOG;AA8EH,MAAM,OAAO,iBAAiB;IAqBI;IApBhC,gGAAgG;IACrE,KAAK,CAAiB;IACtB,OAAO,CAAW;IAClB,KAAK,CAAW;IAChB,QAAQ,CAAU;IAClB,OAAO,CAAU;IACjB,MAAM,CAAU;IAClC,SAAS,GAAuB,EAAE,CAAC;IACnC,KAAK,GAAG,KAAK,CAAC;IACd,gBAAgB,GAAG,GAAG,CAAC;IAChC,2FAA2F;IAClF,UAAU,GAAG,KAAK,CAAC;IAClB,UAAU,GAAG,IAAI,YAAY,EAA6D,CAAC;IAC3F,WAAW,GAAG,IAAI,YAAY,EAA8C,CAAC;IAC7E,SAAS,GAAG,IAAI,YAAY,EAAY,CAAC;IACnD,yEAAyE;IAC/D,OAAO,GAAG,IAAI,YAAY,EAAQ,CAAC;IAErC,KAAK,GAAG,iBAAiB,EAAE,CAAC;IAEpC,YAAgC,aAAkC;QAAlC,kBAAa,GAAb,aAAa,CAAqB;IAAG,CAAC;IAEtE;gGAC4F;IAC5F,KAAK,KAAW,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;IAE1D,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,CAAC;IAC9D,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC;IAChE,IAAI,MAAM,KAAK,OAAO,IAAI,CAAC,aAAa,EAAE,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC7E,IAAI,aAAa,KAAK,OAAO,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAChG,IAAI,cAAc;QAChB,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,EAAE,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QACnE,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9B,CAAC;IACD,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEzE,IAAI,KAAK,KAAK,OAAQ,IAAI,CAAC,KAAK,CAAC,QAAmC,CAAC,KAAK,IAAI,SAAS,CAAC,CAAC,CAAC;IAC1F,IAAI,aAAa,KAAK,OAAO,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACjE,IAAI,WAAW,KAAK,OAAO,4BAA4B,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;IACjG,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,OAAO,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAClG,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1E,IAAI,YAAY,KAAK,OAAO,6BAA6B,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC;IACtF,IAAI,aAAa,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACrF,IAAI,UAAU,KAAK,OAAO,GAAG,IAAI,CAAC,QAAQ,GAAG,CAAC,WAAW,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC1E,IAAI,OAAO,KAAK,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,IAAI,YAAY;QACd,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7B,OAAO,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;IACvC,CAAC;IACD,IAAI,SAAS;QACX,OAAO,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED,eAAe;QACb,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;IAC7B,CAAC;IAED,eAAe,CAAC,CAAY;QAC1B,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,CAAC,CAAC,aAA4B,CAAC;QAC3C,MAAM,OAAO,GAAG,GAAG,CAAC,qBAAqB,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC;QAC9C,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,EAC9D,IAAI,CAAC,OAAO,GAAG,CAAC,CACjB,CAAC;QACF,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,GAAG,YAAY,CAAC,CAAC;QACjE,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QACpE,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;QACtE,qBAAqB,CAAC,CAAC,CAAC,YAAa,EAAE,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,qBAAqB,CAAC,CAAY,EAAE,IAAqB;QACvD,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QACzB,2BAA2B,CAAC,CAAC,CAAC,YAAa,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3D,qBAAqB,CAAC,CAAC,CAAC,YAAa,EAAE,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,WAAW,CAAC,CAAa;QACvB,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC;YAAE,OAAO;QACtD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;IACrF,CAAC;IAED,iBAAiB,CAAC,CAAa;QAC7B,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC;YAAE,OAAO;QACtD,MAAM,IAAI,GAAI,CAAC,CAAC,aAA6B,CAAC,qBAAqB,EAAE,CAAC;QACtE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;IAC1F,CAAC;2GA/FU,iBAAiB;6DAAjB,iBAAiB;YA1C1B,AA3BA,mEAY0B,uGAeH;;;YA3BA,AAAjB,oCAAiB,yBAAa;4BAJ5B,YAAY;;iFAyEX,iBAAiB;cA7E7B,SAAS;eAAC;gBACT,QAAQ,EAAE,eAAe;gBACzB,UAAU,EAAE,IAAI;gBAChB,IAAI,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE;gBACpC,OAAO,EAAE,CAAC,YAAY,CAAC;gBACvB,eAAe,EAAE,uBAAuB,CAAC,MAAM;gBAC/C,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqET;aACF;;sBAsBc,QAAQ;qBAnBM,KAAK;kBAA/B,KAAK;mBAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;YACE,OAAO;kBAAjC,KAAK;mBAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;YACE,KAAK;kBAA/B,KAAK;mBAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;YACE,QAAQ;kBAAlC,KAAK;mBAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;YACE,OAAO;kBAAjC,KAAK;mBAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;YACE,MAAM;kBAAhC,KAAK;mBAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;YAChB,SAAS;kBAAjB,KAAK;YACG,KAAK;kBAAb,KAAK;YACG,gBAAgB;kBAAxB,KAAK;YAEG,UAAU;kBAAlB,KAAK;YACI,UAAU;kBAAnB,MAAM;YACG,WAAW;kBAApB,MAAM;YACG,SAAS;kBAAlB,MAAM;YAEG,OAAO;kBAAhB,MAAM;;kFAjBI,iBAAiB"}
|