@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.
Files changed (64) hide show
  1. package/dist/components/Calendar.d.ts +31 -6
  2. package/dist/components/Calendar.d.ts.map +1 -1
  3. package/dist/components/Calendar.js +104 -42
  4. package/dist/components/Calendar.js.map +1 -1
  5. package/dist/components/CalendarHeader.js +11 -11
  6. package/dist/components/CalendarHeader.js.map +1 -1
  7. package/dist/components/CategoryFilter.js +4 -4
  8. package/dist/components/CategoryFilter.js.map +1 -1
  9. package/dist/components/EventBar.d.ts +23 -10
  10. package/dist/components/EventBar.d.ts.map +1 -1
  11. package/dist/components/EventBar.js +73 -44
  12. package/dist/components/EventBar.js.map +1 -1
  13. package/dist/components/EventDialog.js +86 -68
  14. package/dist/components/EventDialog.js.map +1 -1
  15. package/dist/components/EventHistory.d.ts.map +1 -1
  16. package/dist/components/EventHistory.js +19 -21
  17. package/dist/components/EventHistory.js.map +1 -1
  18. package/dist/components/ResourceFilter.js +4 -4
  19. package/dist/components/ResourceFilter.js.map +1 -1
  20. package/dist/components/UndoToast.js +7 -8
  21. package/dist/components/UndoToast.js.map +1 -1
  22. package/dist/views/agenda/AgendaView.d.ts +29 -30
  23. package/dist/views/agenda/AgendaView.d.ts.map +1 -1
  24. package/dist/views/agenda/AgendaView.js +189 -196
  25. package/dist/views/agenda/AgendaView.js.map +1 -1
  26. package/dist/views/day/DayView.d.ts.map +1 -1
  27. package/dist/views/day/DayView.js +30 -27
  28. package/dist/views/day/DayView.js.map +1 -1
  29. package/dist/views/month/MonthView.js +5 -5
  30. package/dist/views/month/MonthView.js.map +1 -1
  31. package/dist/views/month/WeekRow.d.ts.map +1 -1
  32. package/dist/views/month/WeekRow.js +36 -32
  33. package/dist/views/month/WeekRow.js.map +1 -1
  34. package/dist/views/resource/ResourceView.d.ts +1 -0
  35. package/dist/views/resource/ResourceView.d.ts.map +1 -1
  36. package/dist/views/resource/ResourceView.js +35 -27
  37. package/dist/views/resource/ResourceView.js.map +1 -1
  38. package/dist/views/timeline/TimelineView.d.ts +1 -0
  39. package/dist/views/timeline/TimelineView.d.ts.map +1 -1
  40. package/dist/views/timeline/TimelineView.js +31 -22
  41. package/dist/views/timeline/TimelineView.js.map +1 -1
  42. package/dist/views/week/AllDayRow.d.ts +1 -0
  43. package/dist/views/week/AllDayRow.d.ts.map +1 -1
  44. package/dist/views/week/AllDayRow.js +21 -11
  45. package/dist/views/week/AllDayRow.js.map +1 -1
  46. package/dist/views/week/TimeEvent.d.ts +13 -6
  47. package/dist/views/week/TimeEvent.d.ts.map +1 -1
  48. package/dist/views/week/TimeEvent.js +57 -33
  49. package/dist/views/week/TimeEvent.js.map +1 -1
  50. package/dist/views/week/WeekView.d.ts +1 -0
  51. package/dist/views/week/WeekView.d.ts.map +1 -1
  52. package/dist/views/week/WeekView.js +33 -26
  53. package/dist/views/week/WeekView.js.map +1 -1
  54. package/dist/views/year/YearView.js +12 -12
  55. package/dist/views/year/YearView.js.map +1 -1
  56. package/package.json +9 -8
  57. package/dist/binding/utils/date-strings.d.ts +0 -16
  58. package/dist/binding/utils/date-strings.d.ts.map +0 -1
  59. package/dist/binding/utils/date-strings.js +0 -30
  60. package/dist/binding/utils/date-strings.js.map +0 -1
  61. package/dist/binding/utils/gridUtils.d.ts +0 -6
  62. package/dist/binding/utils/gridUtils.d.ts.map +0 -1
  63. package/dist/binding/utils/gridUtils.js +0 -13
  64. package/dist/binding/utils/gridUtils.js.map +0 -1
@@ -3,23 +3,37 @@ import type { CalendarEvent, CalendarDateTime, ViewType, Resource } from '@bimet
3
3
  import { getYear, getMonth } from '@bimetal/calendar-core';
4
4
  import type { CalendarStore } from '@bimetal/calendar-data';
5
5
  import type { CalendarRule } from '@bimetal/calendar-rules';
6
- import { EventRenderService } from '../binding/index.js';
6
+ import { type CalendarController, EventRenderService } from '../binding/index.js';
7
7
  import type { CalendarConfig, CalendarConfigInput, ViewConfig, CustomViewDefinition, CustomViewInputs, EventDialogMode, EventDialogInputs, AnchorRect, EventClassNameFn, EventStyleFn, EventTitleFn, EventRenderTemplateContext } from '../binding/index.js';
8
8
  import type { CalendarControllerSnapshot } from '@bimetal/calendar-headless';
9
9
  import * as i0 from "@angular/core";
10
10
  export declare class CalendarComponent implements OnInit, OnDestroy, OnChanges {
11
11
  eventRenderService?: EventRenderService | undefined;
12
12
  private zone?;
13
- store: CalendarStore;
13
+ /** BOUND (composition contract, F1): an already-owned controller (host-owned —
14
+ * e.g. a master-detail shell that reads the selected event). When set, the
15
+ * component only subscribes + renders — it never creates, destroys, or
16
+ * reconfigures it (the host owns lifecycle, dialog mode, and delegation).
17
+ * `null` is tolerated so a nullable host binding needs no template narrowing. */
18
+ controller?: CalendarController | null;
19
+ /** STANDALONE: the component creates + owns a controller from these. */
20
+ store?: CalendarStore;
14
21
  rules: CalendarRule[];
15
22
  config: CalendarConfigInput | undefined;
16
23
  darkMode: boolean;
24
+ dir?: 'ltr' | 'rtl';
17
25
  showCategoryFilter: boolean;
18
26
  showResourceFilter: boolean;
19
27
  customViews?: readonly CustomViewDefinition[];
20
28
  eventDialog: EventDialogMode;
21
29
  onEventClick?: (eventId: string, anchorRect: AnchorRect, instanceDate?: number) => void;
22
30
  onNewEventRequested?: (defaultDate: CalendarDateTime, anchorRect: AnchorRect, defaultResourceId?: string) => void;
31
+ /** OBSERVE hook: fires when the SELECTED EVENT changes (state, including clears)
32
+ * — a SEPARATE concern from the `none`-mode delegation callbacks. */
33
+ onSelectionChange?: (selectedEvent: {
34
+ eventId: string;
35
+ instanceDate?: number;
36
+ } | null) => void;
23
37
  /** Controller error channel: domain rejections surface as toasts; any other
24
38
  * error (e.g. ConcurrencyError) is passed here instead of rejecting. */
25
39
  onError?: (err: unknown) => void;
@@ -33,17 +47,28 @@ export declare class CalendarComponent implements OnInit, OnDestroy, OnChanges {
33
47
  eventStyle?: EventStyleFn;
34
48
  /** Per-event title override. Return undefined to keep event.title. */
35
49
  eventTitle?: EventTitleFn;
36
- private binding;
50
+ /** STANDALONE only — the bound path leaves the owned controller untouched. */
51
+ private binding?;
52
+ private bound;
53
+ private unsub?;
54
+ /** Unified snapshot signal — fed by the owned (bound) or created (standalone)
55
+ * controller alike; the template reads it through `snapshot`. */
56
+ private snapshotSig;
57
+ private ctrlRef;
37
58
  /** Latest controller snapshot, read by the template via the signal. */
38
59
  get snapshot(): CalendarControllerSnapshot;
39
60
  getYear: typeof getYear;
40
61
  getMonth: typeof getMonth;
41
62
  /** v0.29 Tastatur: root-scoped keydown → controller (Ctrl/Cmd+Z undo, Escape clears).
42
- * Bound via the `.calendar` root's `(keydown)` in the template — NOT a window listener
63
+ * Bound via the `.bm-cal` root's `(keydown)` in the template — NOT a window listener
43
64
  * (no document-level routing). Public so the template can call it. */
44
65
  keyHandler: (e: KeyboardEvent) => void;
45
66
  constructor(eventRenderService?: EventRenderService | undefined, zone?: NgZone | undefined);
46
- get ctrl(): import("@bimetal/calendar-headless").CalendarController;
67
+ get ctrl(): CalendarController;
68
+ /** v0.30 Slice 5b: the agenda view reports its scroll metrics through this so the
69
+ * controller windows the flat row list. Bound as a stable arrow so the OnPush
70
+ * child's `[setViewport]` reference doesn't churn. */
71
+ setViewport: (scrollTop: number, viewportHeight: number) => void;
47
72
  /** Builtin dialog save: the controller assembles + mints + validates + saves. */
48
73
  saveDialogFromInput(): void;
49
74
  get mergedConfig(): CalendarConfig;
@@ -105,6 +130,6 @@ export declare class CalendarComponent implements OnInit, OnDestroy, OnChanges {
105
130
  resourceId: string;
106
131
  }): void;
107
132
  static ɵfac: i0.ɵɵFactoryDeclaration<CalendarComponent, [{ optional: true; }, null]>;
108
- static ɵcmp: i0.ɵɵComponentDeclaration<CalendarComponent, "cal-calendar", never, { "store": { "alias": "store"; "required": false; }; "rules": { "alias": "rules"; "required": false; }; "config": { "alias": "config"; "required": false; }; "darkMode": { "alias": "darkMode"; "required": false; }; "showCategoryFilter": { "alias": "showCategoryFilter"; "required": false; }; "showResourceFilter": { "alias": "showResourceFilter"; "required": false; }; "customViews": { "alias": "customViews"; "required": false; }; "eventDialog": { "alias": "eventDialog"; "required": false; }; "onEventClick": { "alias": "onEventClick"; "required": false; }; "onNewEventRequested": { "alias": "onNewEventRequested"; "required": false; }; "onError": { "alias": "onError"; "required": false; }; "eventBadgesTpl": { "alias": "eventBadgesTpl"; "required": false; }; "eventContentTpl": { "alias": "eventContentTpl"; "required": false; }; "eventClassName": { "alias": "eventClassName"; "required": false; }; "eventStyle": { "alias": "eventStyle"; "required": false; }; "eventTitle": { "alias": "eventTitle"; "required": false; }; }, {}, never, never, true, never>;
133
+ static ɵcmp: i0.ɵɵComponentDeclaration<CalendarComponent, "cal-calendar", never, { "controller": { "alias": "controller"; "required": false; }; "store": { "alias": "store"; "required": false; }; "rules": { "alias": "rules"; "required": false; }; "config": { "alias": "config"; "required": false; }; "darkMode": { "alias": "darkMode"; "required": false; }; "dir": { "alias": "dir"; "required": false; }; "showCategoryFilter": { "alias": "showCategoryFilter"; "required": false; }; "showResourceFilter": { "alias": "showResourceFilter"; "required": false; }; "customViews": { "alias": "customViews"; "required": false; }; "eventDialog": { "alias": "eventDialog"; "required": false; }; "onEventClick": { "alias": "onEventClick"; "required": false; }; "onNewEventRequested": { "alias": "onNewEventRequested"; "required": false; }; "onSelectionChange": { "alias": "onSelectionChange"; "required": false; }; "onError": { "alias": "onError"; "required": false; }; "eventBadgesTpl": { "alias": "eventBadgesTpl"; "required": false; }; "eventContentTpl": { "alias": "eventContentTpl"; "required": false; }; "eventClassName": { "alias": "eventClassName"; "required": false; }; "eventStyle": { "alias": "eventStyle"; "required": false; }; "eventTitle": { "alias": "eventTitle"; "required": false; }; }, {}, never, never, true, never>;
109
134
  }
110
135
  //# sourceMappingURL=Calendar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Calendar.d.ts","sourceRoot":"","sources":["../../src/components/Calendar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Calendar.d.ts","sourceRoot":"","sources":["../../src/components/Calendar.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
- import { Component, Input, NgZone, TemplateRef, Optional } from '@angular/core';
1
+ import { Component, Input, NgZone, TemplateRef, Optional, signal } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import { getYear, getMonth } from '@bimetal/calendar-core';
4
4
  import { parseDragInfo } from '@bimetal/calendar-headless';
5
+ import { isEditableTarget } from '@bimetal/a11y-dom';
5
6
  import { createCalendarControllerBinding, EventRenderService, ZERO_RECT, } from '../binding/index.js';
6
7
  import { CalendarHeaderComponent } from './CalendarHeader.js';
7
8
  import { CategoryFilterComponent } from './CategoryFilter.js';
@@ -97,7 +98,7 @@ function CalendarComponent_cal_agenda_view_10_Template(rf, ctx) { if (rf & 1) {
97
98
  i0.ɵɵelementEnd();
98
99
  } if (rf & 2) {
99
100
  const ctx_r1 = i0.ɵɵnextContext();
100
- i0.ɵɵproperty("currentDate", ctx_r1.snapshot.currentDate)("events", ctx_r1.filteredEvents)("config", ctx_r1.mergedConfig)("selectedEventId", ctx_r1.selectedEventId)("selectedInstanceDate", ctx_r1.selectedInstanceDate);
101
+ i0.ɵɵproperty("agenda", ctx_r1.snapshot.agenda)("config", ctx_r1.mergedConfig)("setViewport", ctx_r1.setViewport);
101
102
  } }
102
103
  function CalendarComponent_ng_container_11_ng_container_1_Template(rf, ctx) { if (rf & 1) {
103
104
  i0.ɵɵelementContainer(0);
@@ -136,16 +137,27 @@ function CalendarComponent_ng_container_13_Template(rf, ctx) { if (rf & 1) {
136
137
  export class CalendarComponent {
137
138
  eventRenderService;
138
139
  zone;
140
+ /** BOUND (composition contract, F1): an already-owned controller (host-owned —
141
+ * e.g. a master-detail shell that reads the selected event). When set, the
142
+ * component only subscribes + renders — it never creates, destroys, or
143
+ * reconfigures it (the host owns lifecycle, dialog mode, and delegation).
144
+ * `null` is tolerated so a nullable host binding needs no template narrowing. */
145
+ controller;
146
+ /** STANDALONE: the component creates + owns a controller from these. */
139
147
  store;
140
148
  rules = [];
141
149
  config;
142
150
  darkMode = false;
151
+ dir;
143
152
  showCategoryFilter = false;
144
153
  showResourceFilter = false;
145
154
  customViews;
146
155
  eventDialog = { kind: 'builtin' };
147
156
  onEventClick;
148
157
  onNewEventRequested;
158
+ /** OBSERVE hook: fires when the SELECTED EVENT changes (state, including clears)
159
+ * — a SEPARATE concern from the `none`-mode delegation callbacks. */
160
+ onSelectionChange;
149
161
  /** Controller error channel: domain rejections surface as toasts; any other
150
162
  * error (e.g. ConcurrencyError) is passed here instead of rejecting. */
151
163
  onError;
@@ -159,20 +171,34 @@ export class CalendarComponent {
159
171
  eventStyle;
160
172
  /** Per-event title override. Return undefined to keep event.title. */
161
173
  eventTitle;
174
+ /** STANDALONE only — the bound path leaves the owned controller untouched. */
162
175
  binding;
176
+ bound = false;
177
+ unsub;
178
+ /** Unified snapshot signal — fed by the owned (bound) or created (standalone)
179
+ * controller alike; the template reads it through `snapshot`. */
180
+ snapshotSig;
181
+ ctrlRef;
163
182
  /** Latest controller snapshot, read by the template via the signal. */
164
- get snapshot() { return this.binding.snapshot(); }
183
+ get snapshot() { return this.snapshotSig(); }
165
184
  getYear = getYear;
166
185
  getMonth = getMonth;
167
186
  /** v0.29 Tastatur: root-scoped keydown → controller (Ctrl/Cmd+Z undo, Escape clears).
168
- * Bound via the `.calendar` root's `(keydown)` in the template — NOT a window listener
187
+ * Bound via the `.bm-cal` root's `(keydown)` in the template — NOT a window listener
169
188
  * (no document-level routing). Public so the template can call it. */
170
- keyHandler = (e) => this.ctrl.handleKeydown(e);
189
+ keyHandler = (e) => this.ctrl.handleKeydown({
190
+ key: e.key, ctrlKey: e.ctrlKey, metaKey: e.metaKey, shiftKey: e.shiftKey,
191
+ isEditable: isEditableTarget(e.target), preventDefault: () => e.preventDefault(),
192
+ });
171
193
  constructor(eventRenderService, zone) {
172
194
  this.eventRenderService = eventRenderService;
173
195
  this.zone = zone;
174
196
  }
175
- get ctrl() { return this.binding.ctrl; }
197
+ get ctrl() { return this.ctrlRef; }
198
+ /** v0.30 Slice 5b: the agenda view reports its scroll metrics through this so the
199
+ * controller windows the flat row list. Bound as a stable arrow so the OnPush
200
+ * child's `[setViewport]` reference doesn't churn. */
201
+ setViewport = (scrollTop, viewportHeight) => this.ctrl.setViewport(scrollTop, viewportHeight);
176
202
  /** Builtin dialog save: the controller assembles + mints + validates + saves. */
177
203
  saveDialogFromInput() { void this.ctrl.saveDialogFromInput(); }
178
204
  // ── Snapshot-derived convenience accessors (template + tests) ──
@@ -182,8 +208,8 @@ export class CalendarComponent {
182
208
  get viewConfigList() { return [...this.snapshot.viewConfigList]; }
183
209
  get filteredEvents() { return [...this.snapshot.events]; }
184
210
  get visibleResources() { return this.snapshot.visibleResources; }
185
- get selectedEventId() { return this.snapshot.selection?.eventId ?? null; }
186
- get selectedInstanceDate() { return this.snapshot.selection?.instanceDate; }
211
+ get selectedEventId() { return this.snapshot.selectedEvent?.eventId ?? null; }
212
+ get selectedInstanceDate() { return this.snapshot.selectedEvent?.instanceDate; }
187
213
  get dialogHistory() {
188
214
  const ev = this.snapshot.dialog?.event;
189
215
  return ev ? this.ctrl.getHistory(ev.id) : [];
@@ -199,40 +225,69 @@ export class CalendarComponent {
199
225
  this.eventRenderService.eventTitle = this.eventTitle;
200
226
  }
201
227
  ngOnInit() {
202
- this.binding = createCalendarControllerBinding({
203
- store: this.store,
204
- config: this.config,
205
- rules: this.rules,
206
- customViews: this.customViews,
207
- eventDialogKind: this.eventDialog.kind,
208
- onEventClickExternal: (id, rect, inst) => this.onEventClick?.(id, rect, inst),
209
- onNewEventRequestedExternal: (date, rect, rid) => this.onNewEventRequested?.(date, rect, rid),
210
- onError: (err) => this.onError?.(err),
211
- }, this.zone);
212
- // Mirror the current view onto the render service after every update so
213
- // per-event render slots see the active view.
214
- this.binding.ctrl.subscribe(() => this.syncEventRenderService());
228
+ // Dual-API (composition contract, F1): a passed `controller` selects the BOUND
229
+ // path (subscribe only — never create/destroy/reconfigure it; the host owns
230
+ // lifecycle + dialog mode). Otherwise STANDALONE creates + owns one.
231
+ this.bound = !!this.controller;
232
+ if (this.controller) {
233
+ // BOUND: adapt the owned controller to a signal; never create/destroy/mutate it.
234
+ this.ctrlRef = this.controller;
235
+ const sig = signal(this.ctrlRef.getSnapshot());
236
+ // Wrap snapshot updates in the zone (when present) so change detection fires —
237
+ // mirrors the standalone binding's `run` fallback for a zoneless setup.
238
+ const zone = this.zone;
239
+ const run = zone ? (fn) => zone.run(fn) : (fn) => fn();
240
+ this.unsub = this.ctrlRef.subscribe(() => run(() => {
241
+ sig.set(this.ctrlRef.getSnapshot());
242
+ this.syncEventRenderService();
243
+ }));
244
+ this.snapshotSig = sig;
245
+ }
246
+ else {
247
+ this.binding = createCalendarControllerBinding({
248
+ store: this.store,
249
+ config: this.config,
250
+ rules: this.rules,
251
+ customViews: this.customViews,
252
+ eventDialogKind: this.eventDialog.kind,
253
+ onEventClickExternal: (id, rect, inst) => this.onEventClick?.(id, rect, inst),
254
+ onNewEventRequestedExternal: (date, rect, rid) => this.onNewEventRequested?.(date, rect, rid),
255
+ // OBSERVE: fires on selection state change (separate from `none` delegation).
256
+ onSelectionChange: (sel) => this.onSelectionChange?.(sel),
257
+ onError: (err) => this.onError?.(err),
258
+ }, this.zone);
259
+ this.ctrlRef = this.binding.ctrl;
260
+ this.snapshotSig = this.binding.snapshot;
261
+ // Mirror the current view onto the render service after every update so
262
+ // per-event render slots see the active view.
263
+ this.binding.ctrl.subscribe(() => this.syncEventRenderService());
264
+ }
215
265
  this.syncEventRenderService();
216
266
  }
217
267
  ngOnChanges(changes) {
218
- if (!this.binding)
268
+ if (!this.ctrlRef)
219
269
  return; // before ngOnInit
220
- if (changes['config'] && !changes['config'].firstChange) {
221
- this.ctrl.setConfig(this.config);
222
- }
223
- if (changes['rules'] && !changes['rules'].firstChange) {
224
- this.ctrl.setRules(this.rules);
225
- }
226
- if (changes['customViews'] && !changes['customViews'].firstChange) {
227
- this.ctrl.setCustomViews(this.customViews);
228
- }
229
- // F8: dialog mode is a dynamic prop — keep the controller in sync after mount.
230
- if (changes['eventDialog'] && !changes['eventDialog'].firstChange) {
231
- this.ctrl.setEventDialogKind(this.eventDialog.kind);
270
+ // BOUND: the host owns config/rules/customViews/dialog mode — reconfigure NOTHING.
271
+ if (!this.bound) {
272
+ if (changes['config'] && !changes['config'].firstChange) {
273
+ this.ctrl.setConfig(this.config);
274
+ }
275
+ if (changes['rules'] && !changes['rules'].firstChange) {
276
+ this.ctrl.setRules(this.rules);
277
+ }
278
+ if (changes['customViews'] && !changes['customViews'].firstChange) {
279
+ this.ctrl.setCustomViews(this.customViews);
280
+ }
281
+ // F8: dialog mode is a dynamic prop — keep the (owned) controller in sync.
282
+ if (changes['eventDialog'] && !changes['eventDialog'].firstChange) {
283
+ this.ctrl.setEventDialogKind(this.eventDialog.kind);
284
+ }
232
285
  }
233
286
  this.syncEventRenderService();
234
287
  }
235
288
  ngOnDestroy() {
289
+ // BOUND: only drop our own subscription; the host owns the controller lifecycle.
290
+ this.unsub?.();
236
291
  this.binding?.destroy();
237
292
  }
238
293
  handleViewChange(v) {
@@ -309,18 +364,19 @@ export class CalendarComponent {
309
364
  void this.ctrl.dropTimeline(info, ev.date, ev.resourceId);
310
365
  }
311
366
  static ɵfac = function CalendarComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CalendarComponent)(i0.ɵɵdirectiveInject(i1.EventRenderService, 8), i0.ɵɵdirectiveInject(i0.NgZone)); };
312
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CalendarComponent, selectors: [["cal-calendar"]], inputs: { store: "store", rules: "rules", config: "config", darkMode: "darkMode", showCategoryFilter: "showCategoryFilter", showResourceFilter: "showResourceFilter", customViews: "customViews", eventDialog: "eventDialog", onEventClick: "onEventClick", onNewEventRequested: "onNewEventRequested", onError: "onError", eventBadgesTpl: "eventBadgesTpl", eventContentTpl: "eventContentTpl", eventClassName: "eventClassName", eventStyle: "eventStyle", eventTitle: "eventTitle" }, features: [i0.ɵɵProvidersFeature([EventRenderService]), i0.ɵɵNgOnChangesFeature], decls: 15, vars: 20, consts: [[3, "keydown"], [3, "prev", "next", "today", "viewChange", "title", "currentView", "viewConfigs", "locale"], [3, "categories", "hiddenCategories", "toggle", 4, "ngIf"], [3, "resources", "hiddenResources", "toggle", 4, "ngIf"], [3, "year", "events", "config", "monthClick", "dayCellClick", 4, "ngIf"], [3, "year", "month", "events", "config", "previewEvent", "expandedMonthDay", "selectedEventId", "selectedInstanceDate", "eventClick", "selectEvent", "clearSelection", "dayCellClick", "dropEvent", "dragOverDate", "hidePreviewEv", "dragEnd", "dragStartEv", "expandMonthCell", "collapseMonthCell", 4, "ngIf"], [3, "currentDate", "events", "config", "previewEvent", "selectedEventId", "selectedInstanceDate", "eventClick", "selectEvent", "clearSelection", "dayCellClick", "dropEvent", "dropTimedEvent", "dragOverDate", "dragOverDateTime", "hidePreviewEv", "dragEnd", "dragStartEv", 4, "ngIf"], [3, "currentDate", "events", "config", "previewEvent", "selectedEventId", "selectedInstanceDate", "eventClick", "selectEvent", "clearSelection", "dayCellClick", "dropTimedEvent", "dragOverDateTime", "hidePreviewEv", "dragEnd", "dragStartEv", 4, "ngIf"], [3, "currentDate", "days", "events", "visibleResources", "config", "previewEvent", "selectedEventId", "selectedInstanceDate", "eventClick", "selectEvent", "clearSelection", "timelineCellClick", "timelineDrop", "dragOverDate", "hidePreviewEv", "dragEnd", "dragStartEv", 4, "ngIf"], [3, "currentDate", "events", "visibleResources", "config", "previewEvent", "selectedEventId", "selectedInstanceDate", "eventClick", "selectEvent", "clearSelection", "resourceCellClick", "resourceDrop", "dragOverDateTime", "hidePreviewEv", "dragEnd", "dragStartEv", 4, "ngIf"], [3, "currentDate", "events", "config", "selectedEventId", "selectedInstanceDate", "eventClick", "selectEvent", 4, "ngIf"], [4, "ngIf"], [3, "dialog", "config", "history", "setDraft", "save", "deleteEvent", "close", 4, "ngIf"], [3, "undoAction", "dismiss", "lastAction", "locale"], [3, "toggle", "categories", "hiddenCategories"], [3, "toggle", "resources", "hiddenResources"], [3, "monthClick", "dayCellClick", "year", "events", "config"], [3, "eventClick", "selectEvent", "clearSelection", "dayCellClick", "dropEvent", "dragOverDate", "hidePreviewEv", "dragEnd", "dragStartEv", "expandMonthCell", "collapseMonthCell", "year", "month", "events", "config", "previewEvent", "expandedMonthDay", "selectedEventId", "selectedInstanceDate"], [3, "eventClick", "selectEvent", "clearSelection", "dayCellClick", "dropEvent", "dropTimedEvent", "dragOverDate", "dragOverDateTime", "hidePreviewEv", "dragEnd", "dragStartEv", "currentDate", "events", "config", "previewEvent", "selectedEventId", "selectedInstanceDate"], [3, "eventClick", "selectEvent", "clearSelection", "dayCellClick", "dropTimedEvent", "dragOverDateTime", "hidePreviewEv", "dragEnd", "dragStartEv", "currentDate", "events", "config", "previewEvent", "selectedEventId", "selectedInstanceDate"], [3, "eventClick", "selectEvent", "clearSelection", "timelineCellClick", "timelineDrop", "dragOverDate", "hidePreviewEv", "dragEnd", "dragStartEv", "currentDate", "days", "events", "visibleResources", "config", "previewEvent", "selectedEventId", "selectedInstanceDate"], [3, "eventClick", "selectEvent", "clearSelection", "resourceCellClick", "resourceDrop", "dragOverDateTime", "hidePreviewEv", "dragEnd", "dragStartEv", "currentDate", "events", "visibleResources", "config", "previewEvent", "selectedEventId", "selectedInstanceDate"], [3, "eventClick", "selectEvent", "currentDate", "events", "config", "selectedEventId", "selectedInstanceDate"], [4, "ngComponentOutlet", "ngComponentOutletInputs"], [3, "setDraft", "save", "deleteEvent", "close", "dialog", "config", "history"]], template: function CalendarComponent_Template(rf, ctx) { if (rf & 1) {
367
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CalendarComponent, selectors: [["cal-calendar"]], inputs: { controller: "controller", store: "store", rules: "rules", config: "config", darkMode: "darkMode", dir: "dir", showCategoryFilter: "showCategoryFilter", showResourceFilter: "showResourceFilter", customViews: "customViews", eventDialog: "eventDialog", onEventClick: "onEventClick", onNewEventRequested: "onNewEventRequested", onSelectionChange: "onSelectionChange", onError: "onError", eventBadgesTpl: "eventBadgesTpl", eventContentTpl: "eventContentTpl", eventClassName: "eventClassName", eventStyle: "eventStyle", eventTitle: "eventTitle" }, features: [i0.ɵɵProvidersFeature([EventRenderService]), i0.ɵɵNgOnChangesFeature], decls: 15, vars: 20, consts: [[1, "bm-cal", 3, "keydown"], [3, "prev", "next", "today", "viewChange", "title", "currentView", "viewConfigs", "locale"], [3, "categories", "hiddenCategories", "toggle", 4, "ngIf"], [3, "resources", "hiddenResources", "toggle", 4, "ngIf"], [3, "year", "events", "config", "monthClick", "dayCellClick", 4, "ngIf"], [3, "year", "month", "events", "config", "previewEvent", "expandedMonthDay", "selectedEventId", "selectedInstanceDate", "eventClick", "selectEvent", "clearSelection", "dayCellClick", "dropEvent", "dragOverDate", "hidePreviewEv", "dragEnd", "dragStartEv", "expandMonthCell", "collapseMonthCell", 4, "ngIf"], [3, "currentDate", "events", "config", "previewEvent", "selectedEventId", "selectedInstanceDate", "eventClick", "selectEvent", "clearSelection", "dayCellClick", "dropEvent", "dropTimedEvent", "dragOverDate", "dragOverDateTime", "hidePreviewEv", "dragEnd", "dragStartEv", 4, "ngIf"], [3, "currentDate", "events", "config", "previewEvent", "selectedEventId", "selectedInstanceDate", "eventClick", "selectEvent", "clearSelection", "dayCellClick", "dropTimedEvent", "dragOverDateTime", "hidePreviewEv", "dragEnd", "dragStartEv", 4, "ngIf"], [3, "currentDate", "days", "events", "visibleResources", "config", "previewEvent", "selectedEventId", "selectedInstanceDate", "eventClick", "selectEvent", "clearSelection", "timelineCellClick", "timelineDrop", "dragOverDate", "hidePreviewEv", "dragEnd", "dragStartEv", 4, "ngIf"], [3, "currentDate", "events", "visibleResources", "config", "previewEvent", "selectedEventId", "selectedInstanceDate", "eventClick", "selectEvent", "clearSelection", "resourceCellClick", "resourceDrop", "dragOverDateTime", "hidePreviewEv", "dragEnd", "dragStartEv", 4, "ngIf"], [3, "agenda", "config", "setViewport", "eventClick", "selectEvent", 4, "ngIf"], [4, "ngIf"], [3, "dialog", "config", "history", "setDraft", "save", "deleteEvent", "close", 4, "ngIf"], [3, "undoAction", "dismiss", "lastAction", "locale"], [3, "toggle", "categories", "hiddenCategories"], [3, "toggle", "resources", "hiddenResources"], [3, "monthClick", "dayCellClick", "year", "events", "config"], [3, "eventClick", "selectEvent", "clearSelection", "dayCellClick", "dropEvent", "dragOverDate", "hidePreviewEv", "dragEnd", "dragStartEv", "expandMonthCell", "collapseMonthCell", "year", "month", "events", "config", "previewEvent", "expandedMonthDay", "selectedEventId", "selectedInstanceDate"], [3, "eventClick", "selectEvent", "clearSelection", "dayCellClick", "dropEvent", "dropTimedEvent", "dragOverDate", "dragOverDateTime", "hidePreviewEv", "dragEnd", "dragStartEv", "currentDate", "events", "config", "previewEvent", "selectedEventId", "selectedInstanceDate"], [3, "eventClick", "selectEvent", "clearSelection", "dayCellClick", "dropTimedEvent", "dragOverDateTime", "hidePreviewEv", "dragEnd", "dragStartEv", "currentDate", "events", "config", "previewEvent", "selectedEventId", "selectedInstanceDate"], [3, "eventClick", "selectEvent", "clearSelection", "timelineCellClick", "timelineDrop", "dragOverDate", "hidePreviewEv", "dragEnd", "dragStartEv", "currentDate", "days", "events", "visibleResources", "config", "previewEvent", "selectedEventId", "selectedInstanceDate"], [3, "eventClick", "selectEvent", "clearSelection", "resourceCellClick", "resourceDrop", "dragOverDateTime", "hidePreviewEv", "dragEnd", "dragStartEv", "currentDate", "events", "visibleResources", "config", "previewEvent", "selectedEventId", "selectedInstanceDate"], [3, "eventClick", "selectEvent", "agenda", "config", "setViewport"], [4, "ngComponentOutlet", "ngComponentOutletInputs"], [3, "setDraft", "save", "deleteEvent", "close", "dialog", "config", "history"]], template: function CalendarComponent_Template(rf, ctx) { if (rf & 1) {
313
368
  i0.ɵɵelementStart(0, "div", 0);
314
369
  i0.ɵɵlistener("keydown", function CalendarComponent_Template_div_keydown_0_listener($event) { return ctx.keyHandler($event); });
315
370
  i0.ɵɵelementStart(1, "cal-header", 1);
316
371
  i0.ɵɵlistener("prev", function CalendarComponent_Template_cal_header_prev_1_listener() { return ctx.ctrl.prev(); })("next", function CalendarComponent_Template_cal_header_next_1_listener() { return ctx.ctrl.next(); })("today", function CalendarComponent_Template_cal_header_today_1_listener() { return ctx.ctrl.today(); })("viewChange", function CalendarComponent_Template_cal_header_viewChange_1_listener($event) { return ctx.handleViewChange($event); });
317
372
  i0.ɵɵelementEnd();
318
- i0.ɵɵtemplate(2, CalendarComponent_cal_category_filter_2_Template, 1, 2, "cal-category-filter", 2)(3, CalendarComponent_cal_resource_filter_3_Template, 1, 2, "cal-resource-filter", 3)(4, CalendarComponent_cal_year_view_4_Template, 1, 3, "cal-year-view", 4)(5, CalendarComponent_cal_month_view_5_Template, 1, 8, "cal-month-view", 5)(6, CalendarComponent_cal_week_view_6_Template, 1, 6, "cal-week-view", 6)(7, CalendarComponent_cal_day_view_7_Template, 1, 6, "cal-day-view", 7)(8, CalendarComponent_cal_timeline_view_8_Template, 1, 8, "cal-timeline-view", 8)(9, CalendarComponent_cal_resource_view_9_Template, 1, 7, "cal-resource-view", 9)(10, CalendarComponent_cal_agenda_view_10_Template, 1, 5, "cal-agenda-view", 10)(11, CalendarComponent_ng_container_11_Template, 2, 2, "ng-container", 11)(12, CalendarComponent_cal_event_dialog_12_Template, 1, 3, "cal-event-dialog", 12)(13, CalendarComponent_ng_container_13_Template, 2, 2, "ng-container", 11);
373
+ i0.ɵɵtemplate(2, CalendarComponent_cal_category_filter_2_Template, 1, 2, "cal-category-filter", 2)(3, CalendarComponent_cal_resource_filter_3_Template, 1, 2, "cal-resource-filter", 3)(4, CalendarComponent_cal_year_view_4_Template, 1, 3, "cal-year-view", 4)(5, CalendarComponent_cal_month_view_5_Template, 1, 8, "cal-month-view", 5)(6, CalendarComponent_cal_week_view_6_Template, 1, 6, "cal-week-view", 6)(7, CalendarComponent_cal_day_view_7_Template, 1, 6, "cal-day-view", 7)(8, CalendarComponent_cal_timeline_view_8_Template, 1, 8, "cal-timeline-view", 8)(9, CalendarComponent_cal_resource_view_9_Template, 1, 7, "cal-resource-view", 9)(10, CalendarComponent_cal_agenda_view_10_Template, 1, 3, "cal-agenda-view", 10)(11, CalendarComponent_ng_container_11_Template, 2, 2, "ng-container", 11)(12, CalendarComponent_cal_event_dialog_12_Template, 1, 3, "cal-event-dialog", 12)(13, CalendarComponent_ng_container_13_Template, 2, 2, "ng-container", 11);
319
374
  i0.ɵɵelementStart(14, "cal-undo-toast", 13);
320
375
  i0.ɵɵlistener("undoAction", function CalendarComponent_Template_cal_undo_toast_undoAction_14_listener($event) { return ctx.ctrl.undo($event); })("dismiss", function CalendarComponent_Template_cal_undo_toast_dismiss_14_listener() { return ctx.ctrl.dismissUndo(); });
321
376
  i0.ɵɵelementEnd()();
322
377
  } if (rf & 2) {
323
- i0.ɵɵclassMap("calendar" + (ctx.darkMode ? " dark" : ""));
378
+ let tmp_1_0;
379
+ i0.ɵɵattribute("data-theme", ctx.darkMode ? "dark" : null)("dir", (tmp_1_0 = ctx.dir) !== null && tmp_1_0 !== undefined ? tmp_1_0 : null);
324
380
  i0.ɵɵadvance();
325
381
  i0.ɵɵproperty("title", ctx.snapshot.title)("currentView", ctx.snapshot.currentView)("viewConfigs", ctx.viewConfigList)("locale", ctx.mergedConfig.locale);
326
382
  i0.ɵɵadvance();
@@ -367,7 +423,7 @@ export class CalendarComponent {
367
423
  YearViewComponent, ResourceViewComponent, TimelineViewComponent,
368
424
  ],
369
425
  template: `
370
- <div [class]="'calendar' + (darkMode ? ' dark' : '')" (keydown)="keyHandler($event)">
426
+ <div class="bm-cal" [attr.data-theme]="darkMode ? 'dark' : null" [attr.dir]="dir ?? null" (keydown)="keyHandler($event)">
371
427
  <cal-header
372
428
  [title]="snapshot.title"
373
429
  [currentView]="snapshot.currentView"
@@ -481,8 +537,8 @@ export class CalendarComponent {
481
537
  </cal-resource-view>
482
538
 
483
539
  <cal-agenda-view *ngIf="snapshot.currentView === 'agenda'"
484
- [currentDate]="snapshot.currentDate" [events]="filteredEvents" [config]="mergedConfig"
485
- [selectedEventId]="selectedEventId" [selectedInstanceDate]="selectedInstanceDate"
540
+ [agenda]="snapshot.agenda!" [config]="mergedConfig"
541
+ [setViewport]="setViewport"
486
542
  (eventClick)="handleEventClick($event)"
487
543
  (selectEvent)="ctrl.selectEvent($event.eventId, $event.instanceDate)">
488
544
  </cal-agenda-view>
@@ -517,7 +573,9 @@ export class CalendarComponent {
517
573
  }]
518
574
  }], () => [{ type: i1.EventRenderService, decorators: [{
519
575
  type: Optional
520
- }] }, { type: i0.NgZone }], { store: [{
576
+ }] }, { type: i0.NgZone }], { controller: [{
577
+ type: Input
578
+ }], store: [{
521
579
  type: Input
522
580
  }], rules: [{
523
581
  type: Input
@@ -525,6 +583,8 @@ export class CalendarComponent {
525
583
  type: Input
526
584
  }], darkMode: [{
527
585
  type: Input
586
+ }], dir: [{
587
+ type: Input
528
588
  }], showCategoryFilter: [{
529
589
  type: Input
530
590
  }], showResourceFilter: [{
@@ -537,6 +597,8 @@ export class CalendarComponent {
537
597
  type: Input
538
598
  }], onNewEventRequested: [{
539
599
  type: Input
600
+ }], onSelectionChange: [{
601
+ type: Input
540
602
  }], onError: [{
541
603
  type: Input
542
604
  }], eventBadgesTpl: [{
@@ -550,5 +612,5 @@ export class CalendarComponent {
550
612
  }], eventTitle: [{
551
613
  type: Input
552
614
  }] }); })();
553
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CalendarComponent, { className: "CalendarComponent", filePath: "components/calendar.ts", lineNumber: 190 }); })();
615
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CalendarComponent, { className: "CalendarComponent", filePath: "components/calendar.ts", lineNumber: 192 }); })();
554
616
  //# sourceMappingURL=Calendar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Calendar.js","sourceRoot":"","sources":["../../src/components/Calendar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Calendar.js","sourceRoot":"","sources":["../../src/components/Calendar.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ function CalendarHeaderComponent_button_5_Template(rf, ctx) { if (rf & 1) {
11
11
  } if (rf & 2) {
12
12
  const vc_r2 = ctx.$implicit;
13
13
  const ctx_r2 = i0.ɵɵnextContext();
14
- i0.ɵɵclassMap("view-btn" + (ctx_r2.currentView === vc_r2.type ? " view-btn--active" : ""));
14
+ i0.ɵɵclassMap("bm-cal__view-btn" + (ctx_r2.currentView === vc_r2.type ? " bm-cal__view-btn--active" : ""));
15
15
  i0.ɵɵadvance();
16
16
  i0.ɵɵtextInterpolate1(" ", vc_r2.label, " ");
17
17
  } }
@@ -25,7 +25,7 @@ export class CalendarHeaderComponent {
25
25
  today = new EventEmitter();
26
26
  viewChange = new EventEmitter();
27
27
  static ɵfac = function CalendarHeaderComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CalendarHeaderComponent)(); };
28
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CalendarHeaderComponent, selectors: [["cal-header"]], hostAttrs: [2, "display", "contents"], inputs: { title: "title", currentView: "currentView", viewConfigs: "viewConfigs", locale: "locale" }, outputs: { prev: "prev", next: "next", today: "today", viewChange: "viewChange" }, decls: 13, vars: 5, consts: [[1, "calendar-header"], [1, "month-title"], [1, "header-controls"], [1, "view-switcher"], [3, "class", "click", 4, "ngFor", "ngForOf"], [1, "nav-controls"], [1, "nav-btn", 3, "click"], [1, "today-btn", 3, "click"], [3, "click"]], template: function CalendarHeaderComponent_Template(rf, ctx) { if (rf & 1) {
28
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CalendarHeaderComponent, selectors: [["cal-header"]], hostAttrs: [2, "display", "contents"], inputs: { title: "title", currentView: "currentView", viewConfigs: "viewConfigs", locale: "locale" }, outputs: { prev: "prev", next: "next", today: "today", viewChange: "viewChange" }, decls: 13, vars: 5, consts: [[1, "bm-cal__header"], [1, "bm-cal__month-title"], [1, "bm-cal__header-controls"], [1, "bm-cal__view-switcher"], [3, "class", "click", 4, "ngFor", "ngForOf"], [1, "bm-cal__nav-controls"], [1, "bm-cal__nav", 3, "click"], [1, "bm-cal__today-btn", 3, "click"], [3, "click"]], template: function CalendarHeaderComponent_Template(rf, ctx) { if (rf & 1) {
29
29
  i0.ɵɵelementStart(0, "div", 0)(1, "h1", 1);
30
30
  i0.ɵɵtext(2);
31
31
  i0.ɵɵelementEnd();
@@ -65,20 +65,20 @@ export class CalendarHeaderComponent {
65
65
  host: { style: 'display: contents' },
66
66
  imports: [CommonModule],
67
67
  template: `
68
- <div class="calendar-header">
69
- <h1 class="month-title">{{ title }}</h1>
70
- <div class="header-controls">
71
- <div class="view-switcher">
68
+ <div class="bm-cal__header">
69
+ <h1 class="bm-cal__month-title">{{ title }}</h1>
70
+ <div class="bm-cal__header-controls">
71
+ <div class="bm-cal__view-switcher">
72
72
  <button *ngFor="let vc of viewConfigs"
73
- [class]="'view-btn' + (currentView === vc.type ? ' view-btn--active' : '')"
73
+ [class]="'bm-cal__view-btn' + (currentView === vc.type ? ' bm-cal__view-btn--active' : '')"
74
74
  (click)="viewChange.emit(vc.type)">
75
75
  {{ vc.label }}
76
76
  </button>
77
77
  </div>
78
- <div class="nav-controls">
79
- <button class="nav-btn" [attr.aria-label]="locale.prev" (click)="prev.emit()">&lsaquo;</button>
80
- <button class="today-btn" (click)="today.emit()">{{ locale.today }}</button>
81
- <button class="nav-btn" [attr.aria-label]="locale.next" (click)="next.emit()">&rsaquo;</button>
78
+ <div class="bm-cal__nav-controls">
79
+ <button class="bm-cal__nav" [attr.aria-label]="locale.prev" (click)="prev.emit()">&lsaquo;</button>
80
+ <button class="bm-cal__today-btn" (click)="today.emit()">{{ locale.today }}</button>
81
+ <button class="bm-cal__nav" [attr.aria-label]="locale.next" (click)="next.emit()">&rsaquo;</button>
82
82
  </div>
83
83
  </div>
84
84
  </div>
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarHeader.js","sourceRoot":"","sources":["../../src/components/CalendarHeader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;;;;;IAcrC,iCAEqC;IAAnC,8MAAS,kCAAwB,KAAC;IAClC,YACF;IAAA,iBAAS;;;;IAHP,0FAA2E;IAE3E,cACF;IADE,4CACF;;AAWV,MAAM,OAAO,uBAAuB;IACzB,KAAK,GAAG,EAAE,CAAC;IACX,WAAW,GAAa,OAAO,CAAC;IAChC,WAAW,GAAiB,EAAE,CAAC;IAC/B,MAAM,CAAkB;IACvB,IAAI,GAAG,IAAI,YAAY,EAAQ,CAAC;IAChC,IAAI,GAAG,IAAI,YAAY,EAAQ,CAAC;IAChC,KAAK,GAAG,IAAI,YAAY,EAAQ,CAAC;IACjC,UAAU,GAAG,IAAI,YAAY,EAAY,CAAC;iHARzC,uBAAuB;6DAAvB,uBAAuB;YAlB9B,AADF,8BAA6B,YACH;YAAA,YAAW;YAAA,iBAAK;YAEtC,AADF,8BAA6B,aACA;YACzB,8EAEqC;YAGvC,iBAAM;YAEJ,AADF,8BAA0B,gBACsD;YAAtB,oGAAS,eAAW,IAAC;YAAC,sBAAQ;YAAA,iBAAS;YAC/F,iCAAiD;YAAvB,oGAAS,gBAAY,IAAC;YAAC,aAAkB;YAAA,iBAAS;YAC5E,kCAA8E;YAAtB,qGAAS,eAAW,IAAC;YAAC,uBAAQ;YAG5F,AADE,AADE,AADwF,iBAAS,EAC3F,EACF,EACF;;YAfoB,eAAW;YAAX,+BAAW;YAGR,eAAc;YAAd,yCAAc;YAOb,eAA+B;;YACN,eAAkB;YAAlB,sCAAkB;YAC3C,cAA+B;;4BAfrD,YAAY;;iFAqBX,uBAAuB;cAzBnC,SAAS;eAAC;gBACT,QAAQ,EAAE,YAAY;gBACtB,UAAU,EAAE,IAAI;gBAChB,IAAI,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE;gBACpC,OAAO,EAAE,CAAC,YAAY,CAAC;gBACvB,QAAQ,EAAE;;;;;;;;;;;;;;;;;;GAkBT;aACF;gBAEU,KAAK;kBAAb,KAAK;YACG,WAAW;kBAAnB,KAAK;YACG,WAAW;kBAAnB,KAAK;YACG,MAAM;kBAAd,KAAK;YACI,IAAI;kBAAb,MAAM;YACG,IAAI;kBAAb,MAAM;YACG,KAAK;kBAAd,MAAM;YACG,UAAU;kBAAnB,MAAM;;kFARI,uBAAuB"}
1
+ {"version":3,"file":"CalendarHeader.js","sourceRoot":"","sources":["../../src/components/CalendarHeader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;;;;;IAcrC,iCAEqC;IAAnC,8MAAS,kCAAwB,KAAC;IAClC,YACF;IAAA,iBAAS;;;;IAHP,0GAA2F;IAE3F,cACF;IADE,4CACF;;AAWV,MAAM,OAAO,uBAAuB;IACzB,KAAK,GAAG,EAAE,CAAC;IACX,WAAW,GAAa,OAAO,CAAC;IAChC,WAAW,GAAiB,EAAE,CAAC;IAC/B,MAAM,CAAkB;IACvB,IAAI,GAAG,IAAI,YAAY,EAAQ,CAAC;IAChC,IAAI,GAAG,IAAI,YAAY,EAAQ,CAAC;IAChC,KAAK,GAAG,IAAI,YAAY,EAAQ,CAAC;IACjC,UAAU,GAAG,IAAI,YAAY,EAAY,CAAC;iHARzC,uBAAuB;6DAAvB,uBAAuB;YAlB9B,AADF,8BAA4B,YACM;YAAA,YAAW;YAAA,iBAAK;YAE9C,AADF,8BAAqC,aACA;YACjC,8EAEqC;YAGvC,iBAAM;YAEJ,AADF,8BAAkC,gBACkD;YAAtB,oGAAS,eAAW,IAAC;YAAC,sBAAQ;YAAA,iBAAS;YACnG,iCAAyD;YAAvB,oGAAS,gBAAY,IAAC;YAAC,aAAkB;YAAA,iBAAS;YACpF,kCAAkF;YAAtB,qGAAS,eAAW,IAAC;YAAC,uBAAQ;YAGhG,AADE,AADE,AAD4F,iBAAS,EAC/F,EACF,EACF;;YAf4B,eAAW;YAAX,+BAAW;YAGhB,eAAc;YAAd,yCAAc;YAOT,eAA+B;;YACF,eAAkB;YAAlB,sCAAkB;YAC/C,cAA+B;;4BAfzD,YAAY;;iFAqBX,uBAAuB;cAzBnC,SAAS;eAAC;gBACT,QAAQ,EAAE,YAAY;gBACtB,UAAU,EAAE,IAAI;gBAChB,IAAI,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE;gBACpC,OAAO,EAAE,CAAC,YAAY,CAAC;gBACvB,QAAQ,EAAE;;;;;;;;;;;;;;;;;;GAkBT;aACF;gBAEU,KAAK;kBAAb,KAAK;YACG,WAAW;kBAAnB,KAAK;YACG,WAAW;kBAAnB,KAAK;YACG,MAAM;kBAAd,KAAK;YACI,IAAI;kBAAb,MAAM;YACG,IAAI;kBAAb,MAAM;YACG,KAAK;kBAAd,MAAM;YACG,UAAU;kBAAnB,MAAM;;kFARI,uBAAuB"}
@@ -11,7 +11,7 @@ function CategoryFilterComponent_div_0_button_1_Template(rf, ctx) { if (rf & 1)
11
11
  } if (rf & 2) {
12
12
  const cat_r2 = ctx.$implicit;
13
13
  const ctx_r2 = i0.ɵɵnextContext(2);
14
- i0.ɵɵclassMap("category-filter__pill" + (ctx_r2.hiddenCategories.has(cat_r2.name) ? " category-filter__pill--hidden" : ""));
14
+ i0.ɵɵclassMap("bm-cal-category-filter__pill" + (ctx_r2.hiddenCategories.has(cat_r2.name) ? " bm-cal-category-filter__pill--hidden" : ""));
15
15
  i0.ɵɵstyleProp("background-color", cat_r2.color);
16
16
  i0.ɵɵadvance();
17
17
  i0.ɵɵtextInterpolate1(" ", cat_r2.name, " ");
@@ -30,7 +30,7 @@ export class CategoryFilterComponent {
30
30
  hiddenCategories = new Set();
31
31
  toggle = new EventEmitter();
32
32
  static ɵfac = function CategoryFilterComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CategoryFilterComponent)(); };
33
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CategoryFilterComponent, selectors: [["cal-category-filter"]], hostAttrs: [2, "display", "contents"], inputs: { categories: "categories", hiddenCategories: "hiddenCategories" }, outputs: { toggle: "toggle" }, decls: 1, vars: 1, consts: [["class", "category-filter", 4, "ngIf"], [1, "category-filter"], ["type", "button", 3, "class", "background-color", "click", 4, "ngFor", "ngForOf"], ["type", "button", 3, "click"]], template: function CategoryFilterComponent_Template(rf, ctx) { if (rf & 1) {
33
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CategoryFilterComponent, selectors: [["cal-category-filter"]], hostAttrs: [2, "display", "contents"], inputs: { categories: "categories", hiddenCategories: "hiddenCategories" }, outputs: { toggle: "toggle" }, decls: 1, vars: 1, consts: [["class", "bm-cal-category-filter", 4, "ngIf"], [1, "bm-cal-category-filter"], ["type", "button", 3, "class", "background-color", "click", 4, "ngFor", "ngForOf"], ["type", "button", 3, "click"]], template: function CategoryFilterComponent_Template(rf, ctx) { if (rf & 1) {
34
34
  i0.ɵɵtemplate(0, CategoryFilterComponent_div_0_Template, 2, 1, "div", 0);
35
35
  } if (rf & 2) {
36
36
  i0.ɵɵproperty("ngIf", ctx.categories.length > 0);
@@ -44,9 +44,9 @@ export class CategoryFilterComponent {
44
44
  host: { style: 'display: contents' },
45
45
  imports: [CommonModule],
46
46
  template: `
47
- <div class="category-filter" *ngIf="categories.length > 0">
47
+ <div class="bm-cal-category-filter" *ngIf="categories.length > 0">
48
48
  <button *ngFor="let cat of categories"
49
- [class]="'category-filter__pill' + (hiddenCategories.has(cat.name) ? ' category-filter__pill--hidden' : '')"
49
+ [class]="'bm-cal-category-filter__pill' + (hiddenCategories.has(cat.name) ? ' bm-cal-category-filter__pill--hidden' : '')"
50
50
  [style.background-color]="cat.color"
51
51
  (click)="toggle.emit(cat.name)"
52
52
  type="button">
@@ -1 +1 @@
1
- {"version":3,"file":"CategoryFilter.js","sourceRoot":"","sources":["../../src/components/CategoryFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;;;;;IAUzC,iCAIgB;IADd,sNAAS,+BAAqB,KAAC;IAE/B,YACF;IAAA,iBAAS;;;;IALP,2HAA4G;IAC5G,gDAAoC;IAGpC,cACF;IADE,4CACF;;;IAPF,8BAA2D;IACzD,oFAIgB;IAGlB,iBAAM;;;IAPoB,cAAa;IAAb,2CAAa;;AAU3C,MAAM,OAAO,uBAAuB;IACzB,UAAU,GAAe,EAAE,CAAC;IAC5B,gBAAgB,GAAwB,IAAI,GAAG,EAAE,CAAC;IACjD,MAAM,GAAG,IAAI,YAAY,EAAU,CAAC;iHAHnC,uBAAuB;6DAAvB,uBAAuB;YAXhC,wEAA2D;;YAA7B,gDAA2B;4BAFjD,YAAY;;iFAaX,uBAAuB;cAjBnC,SAAS;eAAC;gBACT,QAAQ,EAAE,qBAAqB;gBAC/B,UAAU,EAAE,IAAI;gBAChB,IAAI,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE;gBACpC,OAAO,EAAE,CAAC,YAAY,CAAC;gBACvB,QAAQ,EAAE;;;;;;;;;;GAUT;aACF;gBAEU,UAAU;kBAAlB,KAAK;YACG,gBAAgB;kBAAxB,KAAK;YACI,MAAM;kBAAf,MAAM;;kFAHI,uBAAuB"}
1
+ {"version":3,"file":"CategoryFilter.js","sourceRoot":"","sources":["../../src/components/CategoryFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;;;;;IAUzC,iCAIgB;IADd,sNAAS,+BAAqB,KAAC;IAE/B,YACF;IAAA,iBAAS;;;;IALP,yIAA0H;IAC1H,gDAAoC;IAGpC,cACF;IADE,4CACF;;;IAPF,8BAAkE;IAChE,oFAIgB;IAGlB,iBAAM;;;IAPoB,cAAa;IAAb,2CAAa;;AAU3C,MAAM,OAAO,uBAAuB;IACzB,UAAU,GAAe,EAAE,CAAC;IAC5B,gBAAgB,GAAwB,IAAI,GAAG,EAAE,CAAC;IACjD,MAAM,GAAG,IAAI,YAAY,EAAU,CAAC;iHAHnC,uBAAuB;6DAAvB,uBAAuB;YAXhC,wEAAkE;;YAA7B,gDAA2B;4BAFxD,YAAY;;iFAaX,uBAAuB;cAjBnC,SAAS;eAAC;gBACT,QAAQ,EAAE,qBAAqB;gBAC/B,UAAU,EAAE,IAAI;gBAChB,IAAI,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE;gBACpC,OAAO,EAAE,CAAC,YAAY,CAAC;gBACvB,QAAQ,EAAE;;;;;;;;;;GAUT;aACF;gBAEU,UAAU;kBAAlB,KAAK;YACG,gBAAgB;kBAAxB,KAAK;YACI,MAAM;kBAAf,MAAM;;kFAHI,uBAAuB"}