@bimetal/calendar-angular-components 0.35.0 → 0.37.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 (74) hide show
  1. package/dist/binding/controller.d.ts +10 -1
  2. package/dist/binding/controller.d.ts.map +1 -1
  3. package/dist/binding/controller.js +11 -1
  4. package/dist/binding/controller.js.map +1 -1
  5. package/dist/binding/index.d.ts +4 -2
  6. package/dist/binding/index.d.ts.map +1 -1
  7. package/dist/binding/index.js +5 -2
  8. package/dist/binding/index.js.map +1 -1
  9. package/dist/binding/services/pointer-gesture.service.d.ts +52 -0
  10. package/dist/binding/services/pointer-gesture.service.d.ts.map +1 -0
  11. package/dist/binding/services/pointer-gesture.service.js +83 -0
  12. package/dist/binding/services/pointer-gesture.service.js.map +1 -0
  13. package/dist/components/Calendar.d.ts +20 -4
  14. package/dist/components/Calendar.d.ts.map +1 -1
  15. package/dist/components/Calendar.js +133 -31
  16. package/dist/components/Calendar.js.map +1 -1
  17. package/dist/components/CalendarHeader.d.ts +3 -0
  18. package/dist/components/CalendarHeader.d.ts.map +1 -1
  19. package/dist/components/CalendarHeader.js +10 -4
  20. package/dist/components/CalendarHeader.js.map +1 -1
  21. package/dist/components/CategoryFilter.d.ts +3 -0
  22. package/dist/components/CategoryFilter.d.ts.map +1 -1
  23. package/dist/components/CategoryFilter.js +9 -5
  24. package/dist/components/CategoryFilter.js.map +1 -1
  25. package/dist/components/EventBar.d.ts +11 -4
  26. package/dist/components/EventBar.d.ts.map +1 -1
  27. package/dist/components/EventBar.js +87 -32
  28. package/dist/components/EventBar.js.map +1 -1
  29. package/dist/components/EventDialog.d.ts +12 -6
  30. package/dist/components/EventDialog.d.ts.map +1 -1
  31. package/dist/components/EventDialog.js +122 -45
  32. package/dist/components/EventDialog.js.map +1 -1
  33. package/dist/components/EventHistory.d.ts +14 -10
  34. package/dist/components/EventHistory.d.ts.map +1 -1
  35. package/dist/components/EventHistory.js +59 -56
  36. package/dist/components/EventHistory.js.map +1 -1
  37. package/dist/styles/index.css.d.ts +3 -0
  38. package/dist/views/day/DayView.d.ts +26 -4
  39. package/dist/views/day/DayView.d.ts.map +1 -1
  40. package/dist/views/day/DayView.js +56 -17
  41. package/dist/views/day/DayView.js.map +1 -1
  42. package/dist/views/month/MonthView.d.ts +14 -3
  43. package/dist/views/month/MonthView.d.ts.map +1 -1
  44. package/dist/views/month/MonthView.js +55 -7
  45. package/dist/views/month/MonthView.js.map +1 -1
  46. package/dist/views/month/WeekRow.d.ts +19 -3
  47. package/dist/views/month/WeekRow.d.ts.map +1 -1
  48. package/dist/views/month/WeekRow.js +73 -34
  49. package/dist/views/month/WeekRow.js.map +1 -1
  50. package/dist/views/resource/ResourceView.d.ts +28 -1
  51. package/dist/views/resource/ResourceView.d.ts.map +1 -1
  52. package/dist/views/resource/ResourceView.js +78 -21
  53. package/dist/views/resource/ResourceView.js.map +1 -1
  54. package/dist/views/timeline/TimelineView.d.ts +25 -3
  55. package/dist/views/timeline/TimelineView.d.ts.map +1 -1
  56. package/dist/views/timeline/TimelineView.js +77 -16
  57. package/dist/views/timeline/TimelineView.js.map +1 -1
  58. package/dist/views/week/AllDayRow.d.ts +16 -3
  59. package/dist/views/week/AllDayRow.d.ts.map +1 -1
  60. package/dist/views/week/AllDayRow.js +47 -10
  61. package/dist/views/week/AllDayRow.js.map +1 -1
  62. package/dist/views/week/TimeEvent.d.ts +11 -4
  63. package/dist/views/week/TimeEvent.d.ts.map +1 -1
  64. package/dist/views/week/TimeEvent.js +76 -26
  65. package/dist/views/week/TimeEvent.js.map +1 -1
  66. package/dist/views/week/WeekView.d.ts +16 -1
  67. package/dist/views/week/WeekView.d.ts.map +1 -1
  68. package/dist/views/week/WeekView.js +53 -18
  69. package/dist/views/week/WeekView.js.map +1 -1
  70. package/dist/views/year/YearView.d.ts +2 -0
  71. package/dist/views/year/YearView.d.ts.map +1 -1
  72. package/dist/views/year/YearView.js +17 -1
  73. package/dist/views/year/YearView.js.map +1 -1
  74. package/package.json +17 -13
@@ -1,5 +1,7 @@
1
1
  import { Component, Input, Output, EventEmitter, ViewChild, ElementRef } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
+ import { dialogEnterCommits } from '@bimetal/calendar-headless';
4
+ import { isEnterActivatedTarget } from '@bimetal/a11y-dom';
3
5
  import { FocusTrapDirective } from '@bimetal/angular';
4
6
  import { EventHistoryComponent } from './EventHistory.js';
5
7
  import * as i0 from "@angular/core";
@@ -12,7 +14,7 @@ function EventDialogComponent_cal_event_history_3_Template(rf, ctx) { if (rf & 1
12
14
  i0.ɵɵelementEnd();
13
15
  } if (rf & 2) {
14
16
  const ctx_r2 = i0.ɵɵnextContext();
15
- i0.ɵɵproperty("eventId", ctx_r2.event.id)("history", ctx_r2.history)("locale", ctx_r2.config.locale)("timezone", ctx_r2.config.core.timezone);
17
+ i0.ɵɵproperty("eventId", ctx_r2.event.id)("history", ctx_r2.history)("locale", ctx_r2.config.locale);
16
18
  } }
17
19
  function EventDialogComponent_ng_container_4_div_12_div_5_Template(rf, ctx) { if (rf & 1) {
18
20
  const _r6 = i0.ɵɵgetCurrentView();
@@ -88,66 +90,81 @@ function EventDialogComponent_ng_container_4_div_12_Template(rf, ctx) { if (rf &
88
90
  i0.ɵɵadvance();
89
91
  i0.ɵɵproperty("ngIf", ctx_r2.draft.recurring);
90
92
  } }
91
- function EventDialogComponent_ng_container_4_div_13_Template(rf, ctx) { if (rf & 1) {
92
- i0.ɵɵelementStart(0, "div", 44);
93
+ function EventDialogComponent_ng_container_4_div_13_button_3_Template(rf, ctx) { if (rf & 1) {
94
+ const _r7 = i0.ɵɵgetCurrentView();
95
+ i0.ɵɵelementStart(0, "button", 46);
96
+ i0.ɵɵlistener("click", function EventDialogComponent_ng_container_4_div_13_button_3_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r7); const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.editSeries.emit(ctx_r2.event.id)); });
93
97
  i0.ɵɵtext(1);
94
98
  i0.ɵɵelementEnd();
99
+ } if (rf & 2) {
100
+ const ctx_r2 = i0.ɵɵnextContext(3);
101
+ i0.ɵɵadvance();
102
+ i0.ɵɵtextInterpolate1(" ", ctx_r2.config.locale.editSeries, " ");
103
+ } }
104
+ function EventDialogComponent_ng_container_4_div_13_Template(rf, ctx) { if (rf & 1) {
105
+ i0.ɵɵelementStart(0, "div", 44)(1, "span");
106
+ i0.ɵɵtext(2);
107
+ i0.ɵɵelementEnd();
108
+ i0.ɵɵtemplate(3, EventDialogComponent_ng_container_4_div_13_button_3_Template, 2, 1, "button", 45);
109
+ i0.ɵɵelementEnd();
95
110
  } if (rf & 2) {
96
111
  const ctx_r2 = i0.ɵɵnextContext(2);
112
+ i0.ɵɵadvance(2);
113
+ i0.ɵɵtextInterpolate1("\u21BB ", ctx_r2.config.locale.recurringInstanceNote, "");
97
114
  i0.ɵɵadvance();
98
- i0.ɵɵtextInterpolate1(" \u21BB ", ctx_r2.config.locale.recurringInstanceNote, " ");
115
+ i0.ɵɵproperty("ngIf", ctx_r2.event);
99
116
  } }
100
117
  function EventDialogComponent_ng_container_4_input_19_Template(rf, ctx) { if (rf & 1) {
101
- const _r7 = i0.ɵɵgetCurrentView();
102
- i0.ɵɵelementStart(0, "input", 45);
103
- i0.ɵɵlistener("input", function EventDialogComponent_ng_container_4_input_19_Template_input_input_0_listener($event) { i0.ɵɵrestoreView(_r7); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onStartTime($event)); });
118
+ const _r8 = i0.ɵɵgetCurrentView();
119
+ i0.ɵɵelementStart(0, "input", 47);
120
+ i0.ɵɵlistener("input", function EventDialogComponent_ng_container_4_input_19_Template_input_input_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onStartTime($event)); });
104
121
  i0.ɵɵelementEnd();
105
122
  } if (rf & 2) {
106
123
  const ctx_r2 = i0.ɵɵnextContext(2);
107
124
  i0.ɵɵproperty("value", ctx_r2.draft.startTime);
108
125
  } }
109
126
  function EventDialogComponent_ng_container_4_input_25_Template(rf, ctx) { if (rf & 1) {
110
- const _r8 = i0.ɵɵgetCurrentView();
111
- i0.ɵɵelementStart(0, "input", 45);
112
- i0.ɵɵlistener("input", function EventDialogComponent_ng_container_4_input_25_Template_input_input_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onEndTime($event)); });
127
+ const _r9 = i0.ɵɵgetCurrentView();
128
+ i0.ɵɵelementStart(0, "input", 47);
129
+ i0.ɵɵlistener("input", function EventDialogComponent_ng_container_4_input_25_Template_input_input_0_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onEndTime($event)); });
113
130
  i0.ɵɵelementEnd();
114
131
  } if (rf & 2) {
115
132
  const ctx_r2 = i0.ɵɵnextContext(2);
116
133
  i0.ɵɵproperty("value", ctx_r2.draft.endTime);
117
134
  } }
118
135
  function EventDialogComponent_ng_container_4_option_31_Template(rf, ctx) { if (rf & 1) {
119
- i0.ɵɵelementStart(0, "option", 46);
136
+ i0.ɵɵelementStart(0, "option", 48);
120
137
  i0.ɵɵtext(1);
121
138
  i0.ɵɵelementEnd();
122
139
  } if (rf & 2) {
123
- const cat_r9 = ctx.$implicit;
140
+ const cat_r10 = ctx.$implicit;
124
141
  const ctx_r2 = i0.ɵɵnextContext(2);
125
- i0.ɵɵproperty("value", cat_r9.name)("selected", cat_r9.name === ctx_r2.draft.category);
142
+ i0.ɵɵproperty("value", cat_r10.name)("selected", cat_r10.name === ctx_r2.draft.category);
126
143
  i0.ɵɵadvance();
127
- i0.ɵɵtextInterpolate(cat_r9.name);
144
+ i0.ɵɵtextInterpolate(cat_r10.name);
128
145
  } }
129
146
  function EventDialogComponent_ng_container_4_label_33_option_6_Template(rf, ctx) { if (rf & 1) {
130
- i0.ɵɵelementStart(0, "option", 46);
147
+ i0.ɵɵelementStart(0, "option", 48);
131
148
  i0.ɵɵtext(1);
132
149
  i0.ɵɵelementEnd();
133
150
  } if (rf & 2) {
134
- const r_r11 = ctx.$implicit;
151
+ const r_r12 = ctx.$implicit;
135
152
  const ctx_r2 = i0.ɵɵnextContext(3);
136
- i0.ɵɵproperty("value", r_r11.id)("selected", r_r11.id === ctx_r2.draft.resourceId);
153
+ i0.ɵɵproperty("value", r_r12.id)("selected", r_r12.id === ctx_r2.draft.resourceId);
137
154
  i0.ɵɵadvance();
138
- i0.ɵɵtextInterpolate(r_r11.name);
155
+ i0.ɵɵtextInterpolate(r_r12.name);
139
156
  } }
140
157
  function EventDialogComponent_ng_container_4_label_33_Template(rf, ctx) { if (rf & 1) {
141
- const _r10 = i0.ɵɵgetCurrentView();
158
+ const _r11 = i0.ɵɵgetCurrentView();
142
159
  i0.ɵɵelementStart(0, "label", 16)(1, "span");
143
160
  i0.ɵɵtext(2);
144
161
  i0.ɵɵelementEnd();
145
162
  i0.ɵɵelementStart(3, "select", 21);
146
- i0.ɵɵlistener("change", function EventDialogComponent_ng_container_4_label_33_Template_select_change_3_listener($event) { i0.ɵɵrestoreView(_r10); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onResourceId($event)); });
147
- i0.ɵɵelementStart(4, "option", 47);
163
+ i0.ɵɵlistener("change", function EventDialogComponent_ng_container_4_label_33_Template_select_change_3_listener($event) { i0.ɵɵrestoreView(_r11); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onResourceId($event)); });
164
+ i0.ɵɵelementStart(4, "option", 49);
148
165
  i0.ɵɵtext(5, "\u2014");
149
166
  i0.ɵɵelementEnd();
150
- i0.ɵɵtemplate(6, EventDialogComponent_ng_container_4_label_33_option_6_Template, 2, 3, "option", 48);
167
+ i0.ɵɵtemplate(6, EventDialogComponent_ng_container_4_label_33_option_6_Template, 2, 3, "option", 50);
151
168
  i0.ɵɵelementEnd()();
152
169
  } if (rf & 2) {
153
170
  const ctx_r2 = i0.ɵɵnextContext(2);
@@ -159,17 +176,17 @@ function EventDialogComponent_ng_container_4_label_33_Template(rf, ctx) { if (rf
159
176
  i0.ɵɵproperty("ngForOf", ctx_r2.config.resources)("ngForTrackBy", ctx_r2.trackResource);
160
177
  } }
161
178
  function EventDialogComponent_ng_container_4_div_42_div_1_Template(rf, ctx) { if (rf & 1) {
162
- i0.ɵɵelementStart(0, "div", 51);
179
+ i0.ɵɵelementStart(0, "div", 53);
163
180
  i0.ɵɵtext(1);
164
181
  i0.ɵɵelementEnd();
165
182
  } if (rf & 2) {
166
- const err_r12 = ctx.$implicit;
183
+ const err_r13 = ctx.$implicit;
167
184
  i0.ɵɵadvance();
168
- i0.ɵɵtextInterpolate(err_r12);
185
+ i0.ɵɵtextInterpolate(err_r13);
169
186
  } }
170
187
  function EventDialogComponent_ng_container_4_div_42_Template(rf, ctx) { if (rf & 1) {
171
- i0.ɵɵelementStart(0, "div", 49);
172
- i0.ɵɵtemplate(1, EventDialogComponent_ng_container_4_div_42_div_1_Template, 2, 1, "div", 50);
188
+ i0.ɵɵelementStart(0, "div", 51);
189
+ i0.ɵɵtemplate(1, EventDialogComponent_ng_container_4_div_42_div_1_Template, 2, 1, "div", 52);
173
190
  i0.ɵɵelementEnd();
174
191
  } if (rf & 2) {
175
192
  const ctx_r2 = i0.ɵɵnextContext(2);
@@ -177,9 +194,9 @@ function EventDialogComponent_ng_container_4_div_42_Template(rf, ctx) { if (rf &
177
194
  i0.ɵɵproperty("ngForOf", ctx_r2.validationErrors);
178
195
  } }
179
196
  function EventDialogComponent_ng_container_4_button_44_Template(rf, ctx) { if (rf & 1) {
180
- const _r13 = i0.ɵɵgetCurrentView();
181
- i0.ɵɵelementStart(0, "button", 52);
182
- i0.ɵɵlistener("click", function EventDialogComponent_ng_container_4_button_44_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r13); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.deleteEvent.emit(ctx_r2.event.id)); });
197
+ const _r14 = i0.ɵɵgetCurrentView();
198
+ i0.ɵɵelementStart(0, "button", 54);
199
+ i0.ɵɵlistener("click", function EventDialogComponent_ng_container_4_button_44_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r14); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.deleteEvent.emit(ctx_r2.event.id)); });
183
200
  i0.ɵɵtext(1);
184
201
  i0.ɵɵelementEnd();
185
202
  } if (rf & 2) {
@@ -188,9 +205,9 @@ function EventDialogComponent_ng_container_4_button_44_Template(rf, ctx) { if (r
188
205
  i0.ɵɵtextInterpolate1(" ", ctx_r2.config.locale.delete, " ");
189
206
  } }
190
207
  function EventDialogComponent_ng_container_4_button_45_Template(rf, ctx) { if (rf & 1) {
191
- const _r14 = i0.ɵɵgetCurrentView();
192
- i0.ɵɵelementStart(0, "button", 53);
193
- i0.ɵɵlistener("click", function EventDialogComponent_ng_container_4_button_45_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r14); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.openHistory()); });
208
+ const _r15 = i0.ɵɵgetCurrentView();
209
+ i0.ɵɵelementStart(0, "button", 55);
210
+ i0.ɵɵlistener("click", function EventDialogComponent_ng_container_4_button_45_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r15); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.openHistory()); });
194
211
  i0.ɵɵtext(1);
195
212
  i0.ɵɵelementEnd();
196
213
  } if (rf & 2) {
@@ -217,7 +234,7 @@ function EventDialogComponent_ng_container_4_Template(rf, ctx) { if (rf & 1) {
217
234
  i0.ɵɵelementStart(11, "input", 12);
218
235
  i0.ɵɵlistener("change", function EventDialogComponent_ng_container_4_Template_input_change_11_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onAllDay($event)); });
219
236
  i0.ɵɵelementEnd()();
220
- i0.ɵɵtemplate(12, EventDialogComponent_ng_container_4_div_12_Template, 6, 3, "div", 13)(13, EventDialogComponent_ng_container_4_div_13_Template, 2, 1, "div", 14);
237
+ i0.ɵɵtemplate(12, EventDialogComponent_ng_container_4_div_12_Template, 6, 3, "div", 13)(13, EventDialogComponent_ng_container_4_div_13_Template, 4, 2, "div", 14);
221
238
  i0.ɵɵelementStart(14, "div", 15)(15, "label", 16)(16, "span");
222
239
  i0.ɵɵtext(17);
223
240
  i0.ɵɵelementEnd();
@@ -334,12 +351,17 @@ export class EventDialogComponent {
334
351
  /** Controller-owned dialog state (draft, flags, validation). */
335
352
  dialog;
336
353
  config;
354
+ // readonly (bimetal-131 R1) — pass-through of the parent's snapshot-cached
355
+ // array; see EventHistory for the rationale.
337
356
  history = [];
338
357
  /** Patch the controlled draft from raw input (controller applies the policy). */
339
358
  setDraft = new EventEmitter();
340
359
  /** Assemble + validate + save the held draft (controller owns all of it). */
341
360
  save = new EventEmitter();
342
361
  deleteEvent = new EventEmitter();
362
+ /** Re-open the dialog on the SERIES MASTER behind an occurrence (mcp-116). Emits the
363
+ * event id; the anchor rect stays with the parent, which owns the dialog state. */
364
+ editSeries = new EventEmitter();
343
365
  close = new EventEmitter();
344
366
  dialogEl;
345
367
  showHistory = false;
@@ -354,7 +376,8 @@ export class EventDialogComponent {
354
376
  // to the opener else the `.calendar` root via the trap's closest()-anchor (the dialog
355
377
  // is a `.calendar` descendant). Stable arrow so the template can bind it.
356
378
  onEscape = () => this.close.emit();
357
- ngAfterViewInit() {
379
+ ro = null;
380
+ klemme = () => {
358
381
  if (!this.dialogEl)
359
382
  return;
360
383
  const el = this.dialogEl.nativeElement;
@@ -374,6 +397,45 @@ export class EventDialogComponent {
374
397
  top = 16;
375
398
  el.style.left = `${left}px`;
376
399
  el.style.top = `${top}px`;
400
+ };
401
+ // bimetal-248 — die Klemme laeuft nicht nur beim Oeffnen. Der Dialog WAECHST
402
+ // danach (Wiederholungs-Block, Validierungsfehler, Historie), und die einmal
403
+ // berechnete Oberkante blieb stehen — der Fuss mit dem Speichern-Knopf rutschte
404
+ // aus dem Fenster. Der `ResizeObserver` ist die im Repo etablierte Bauform
405
+ // dafuer (AgendaView faehrt ihn in allen fuenf Stacks).
406
+ ngAfterViewInit() {
407
+ if (!this.dialogEl)
408
+ return;
409
+ this.klemme();
410
+ this.ro = new ResizeObserver(this.klemme);
411
+ this.ro.observe(this.dialogEl.nativeElement);
412
+ window.addEventListener('resize', this.klemme);
413
+ }
414
+ ngOnDestroy() {
415
+ this.ro?.disconnect();
416
+ window.removeEventListener('resize', this.klemme);
417
+ }
418
+ // bimetal-255 — der ANKER kann wechseln, waehrend diese Instanz gemountet
419
+ // bleibt (`*ngIf="snapshot.dialog"` haelt sie ueber einen API-`openEdit` hinweg):
420
+ // react und svelte folgen dem Anker, vue seit 255 ebenfalls; hier positionierte
421
+ // nur `ngAfterViewInit`.
422
+ //
423
+ // WAS DAS TATSAECHLICH TUT (255 R1, gemessen): `setDraft` erzeugt bei jedem
424
+ // Tastendruck ein NEUES `dialog`-Objekt mit derselben `anchorRect` — angular
425
+ // klemmt damit bei jedem Dialog-Zustandswechsel, nicht nur beim Ankerwechsel
426
+ // (1 Layout-Read je Zeichen; react 0, vue 0, svelte 1 seit jeher). Position
427
+ // identisch, kein sichtbarer Unterschied — dieselbe zweite Bahn, die svelte
428
+ // traegt. Und `ngOnChanges` laeuft VOR dem DOM-Update, liest also die alte
429
+ // Dialoghoehe; der `ResizeObserver` zieht jede Hoehenaenderung nach (gemessen:
430
+ // 420px-Fenster, tiefster Chip, Wiederholungsblock — Unterkante 404 in allen
431
+ // vier Bindings, keine Zwischenbilder).
432
+ //
433
+ // Die `!firstChange`-Haelfte stand hier und war eine ueberlebende Mutation
434
+ // (Review: ohne sie 38/38 gruen) — vor dem ersten View-Init ist `dialogEl`
435
+ // leer, `klemme` steigt selbst aus.
436
+ ngOnChanges(changes) {
437
+ if (changes['dialog'])
438
+ this.klemme();
377
439
  }
378
440
  trackResource(_, r) { return r.id; }
379
441
  openHistory() { this.showHistory = true; }
@@ -395,11 +457,18 @@ export class EventDialogComponent {
395
457
  onResourceId(e) { this.setDraft.emit({ resourceId: e.target.value }); }
396
458
  onLocation(e) { this.setDraft.emit({ location: this.value(e) }); }
397
459
  onDescription(e) { this.setDraft.emit({ description: e.target.value }); }
460
+ // Enter-to-commit is a POLICY, owned once by headless: it must stand down when the
461
+ // focused control activates itself on Enter (the series link), or preventDefault()
462
+ // would cancel that control's native click and save instead.
398
463
  handleKeyDown(e) {
399
- if (e.key === 'Enter' && !e.shiftKey) {
400
- e.preventDefault();
401
- this.handleSave();
402
- }
464
+ if (!dialogEnterCommits({
465
+ key: e.key,
466
+ shiftKey: e.shiftKey,
467
+ targetActivatesOnEnter: isEnterActivatedTarget(e.target),
468
+ }))
469
+ return;
470
+ e.preventDefault();
471
+ this.handleSave();
403
472
  }
404
473
  handleSave() { this.save.emit(); }
405
474
  static ɵfac = function EventDialogComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || EventDialogComponent)(); };
@@ -408,14 +477,14 @@ export class EventDialogComponent {
408
477
  } if (rf & 2) {
409
478
  let _t;
410
479
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.dialogEl = _t.first);
411
- } }, hostAttrs: [2, "display", "contents"], inputs: { dialog: "dialog", config: "config", history: "history" }, outputs: { setDraft: "setDraft", save: "save", deleteEvent: "deleteEvent", close: "close" }, decls: 5, vars: 4, consts: [["dialogEl", ""], [1, "bm-cal__dialog-backdrop", 3, "click"], ["role", "dialog", "aria-modal", "true", "bmFocusTrap", "", 1, "bm-cal__dialog", 3, "keydown", "bmFocusTrapOnEscape"], [3, "eventId", "history", "locale", "timezone", "back", 4, "ngIf"], [4, "ngIf"], [3, "back", "eventId", "history", "locale", "timezone"], [1, "bm-cal__dialog-header"], [1, "bm-cal__dialog-title"], [1, "bm-cal__dialog-close", 3, "click"], [1, "bm-cal__dialog-body"], ["type", "text", 1, "bm-cal__dialog-input", "bm-cal__dialog-input--title", 3, "input", "placeholder", "value"], [1, "bm-cal__dialog-toggle"], ["type", "checkbox", 3, "change", "checked"], ["class", "bm-cal__dialog-recurrence", 4, "ngIf"], ["style", "font-size: 12px; color: var(--cal-color-text-muted); padding: 4px 0;", 4, "ngIf"], [1, "bm-cal__dialog-row"], [1, "bm-cal__dialog-label"], ["type", "date", 1, "bm-cal__dialog-input", 3, "input", "value"], ["class", "bm-cal__dialog-input bm-cal__dialog-input--time", "type", "time", 3, "value", "input", 4, "ngIf"], ["type", "date", 1, "bm-cal__dialog-input", 3, "input", "value", "min"], [1, "bm-cal__dialog-category-row"], [1, "bm-cal__dialog-input", 3, "change"], [3, "value", "selected", 4, "ngFor", "ngForOf"], [1, "bm-cal__category-dot"], ["class", "bm-cal__dialog-label", 4, "ngIf"], ["type", "text", 1, "bm-cal__dialog-input", 3, "input", "value"], [1, "bm-cal__dialog-input", "bm-cal__dialog-input--description", 3, "input", "value"], ["class", "bm-cal__dialog-errors", 4, "ngIf"], [1, "bm-cal__dialog-footer"], ["class", "bm-cal__dialog-btn bm-cal__dialog-btn--delete", 3, "click", 4, "ngIf"], ["class", "bm-cal__dialog-btn bm-cal__dialog-btn--history", 3, "click", 4, "ngIf"], [1, "bm-cal__dialog-footer-right"], [1, "bm-cal__dialog-btn", "bm-cal__dialog-btn--cancel", 3, "click"], [1, "bm-cal__dialog-btn", "bm-cal__dialog-btn--save", 3, "click", "disabled"], [1, "bm-cal__dialog-recurrence"], ["class", "bm-cal__dialog-row", "style", "gap: 8px; align-items: center;", 4, "ngIf"], [1, "bm-cal__dialog-row", 2, "gap", "8px", "align-items", "center"], [2, "font-size", "13px"], ["type", "number", "min", "1", "max", "99", 1, "bm-cal__dialog-input", 2, "width", "50px", 3, "input", "value"], ["value", "daily", 3, "selected"], ["value", "weekly", 3, "selected"], ["value", "monthly", 3, "selected"], ["value", "yearly", 3, "selected"], [1, "bm-cal__dialog-label", 2, "flex-direction", "row", "align-items", "center", "gap", "6px"], [2, "font-size", "12px", "color", "var(--cal-color-text-muted)", "padding", "4px 0"], ["type", "time", 1, "bm-cal__dialog-input", "bm-cal__dialog-input--time", 3, "input", "value"], [3, "value", "selected"], ["value", "", 3, "selected"], [3, "value", "selected", 4, "ngFor", "ngForOf", "ngForTrackBy"], [1, "bm-cal__dialog-errors"], ["class", "bm-cal__dialog-error", 4, "ngFor", "ngForOf"], [1, "bm-cal__dialog-error"], [1, "bm-cal__dialog-btn", "bm-cal__dialog-btn--delete", 3, "click"], [1, "bm-cal__dialog-btn", "bm-cal__dialog-btn--history", 3, "click"]], template: function EventDialogComponent_Template(rf, ctx) { if (rf & 1) {
480
+ } }, hostAttrs: [2, "display", "contents"], inputs: { dialog: "dialog", config: "config", history: "history" }, outputs: { setDraft: "setDraft", save: "save", deleteEvent: "deleteEvent", editSeries: "editSeries", close: "close" }, features: [i0.ɵɵNgOnChangesFeature], decls: 5, vars: 4, consts: [["dialogEl", ""], [1, "bm-cal__dialog-backdrop", 3, "click"], ["role", "dialog", "aria-modal", "true", "bmFocusTrap", "", 1, "bm-cal__dialog", 3, "keydown", "bmFocusTrapOnEscape"], [3, "eventId", "history", "locale", "back", 4, "ngIf"], [4, "ngIf"], [3, "back", "eventId", "history", "locale"], [1, "bm-cal__dialog-header"], [1, "bm-cal__dialog-title"], [1, "bm-cal__dialog-close", 3, "click"], [1, "bm-cal__dialog-body"], ["type", "text", 1, "bm-cal__dialog-input", "bm-cal__dialog-input--title", 3, "input", "placeholder", "value"], [1, "bm-cal__dialog-toggle"], ["type", "checkbox", 3, "change", "checked"], ["class", "bm-cal__dialog-recurrence", 4, "ngIf"], ["style", "font-size: 12px; color: var(--cal-color-text-muted); padding: 4px 0; display: flex; align-items: center; gap: 8px;", 4, "ngIf"], [1, "bm-cal__dialog-row"], [1, "bm-cal__dialog-label"], ["type", "date", 1, "bm-cal__dialog-input", 3, "input", "value"], ["class", "bm-cal__dialog-input bm-cal__dialog-input--time", "type", "time", 3, "value", "input", 4, "ngIf"], ["type", "date", 1, "bm-cal__dialog-input", 3, "input", "value", "min"], [1, "bm-cal__dialog-category-row"], [1, "bm-cal__dialog-input", 3, "change"], [3, "value", "selected", 4, "ngFor", "ngForOf"], [1, "bm-cal__category-dot"], ["class", "bm-cal__dialog-label", 4, "ngIf"], ["type", "text", 1, "bm-cal__dialog-input", 3, "input", "value"], [1, "bm-cal__dialog-input", "bm-cal__dialog-input--description", 3, "input", "value"], ["class", "bm-cal__dialog-errors", 4, "ngIf"], [1, "bm-cal__dialog-footer"], ["class", "bm-cal__dialog-btn bm-cal__dialog-btn--delete", 3, "click", 4, "ngIf"], ["class", "bm-cal__dialog-btn bm-cal__dialog-btn--history", 3, "click", 4, "ngIf"], [1, "bm-cal__dialog-footer-right"], [1, "bm-cal__dialog-btn", "bm-cal__dialog-btn--cancel", 3, "click"], [1, "bm-cal__dialog-btn", "bm-cal__dialog-btn--save", 3, "click", "disabled"], [1, "bm-cal__dialog-recurrence"], ["class", "bm-cal__dialog-row", "style", "gap: 8px; align-items: center;", 4, "ngIf"], [1, "bm-cal__dialog-row", 2, "gap", "8px", "align-items", "center"], [2, "font-size", "13px"], ["type", "number", "min", "1", "max", "99", 1, "bm-cal__dialog-input", 2, "width", "50px", 3, "input", "value"], ["value", "daily", 3, "selected"], ["value", "weekly", 3, "selected"], ["value", "monthly", 3, "selected"], ["value", "yearly", 3, "selected"], [1, "bm-cal__dialog-label", 2, "flex-direction", "row", "align-items", "center", "gap", "6px"], [2, "font-size", "12px", "color", "var(--cal-color-text-muted)", "padding", "4px 0", "display", "flex", "align-items", "center", "gap", "8px"], ["type", "button", "class", "bm-cal__dialog-link", 3, "click", 4, "ngIf"], ["type", "button", 1, "bm-cal__dialog-link", 3, "click"], ["type", "time", 1, "bm-cal__dialog-input", "bm-cal__dialog-input--time", 3, "input", "value"], [3, "value", "selected"], ["value", "", 3, "selected"], [3, "value", "selected", 4, "ngFor", "ngForOf", "ngForTrackBy"], [1, "bm-cal__dialog-errors"], ["class", "bm-cal__dialog-error", 4, "ngFor", "ngForOf"], [1, "bm-cal__dialog-error"], [1, "bm-cal__dialog-btn", "bm-cal__dialog-btn--delete", 3, "click"], [1, "bm-cal__dialog-btn", "bm-cal__dialog-btn--history", 3, "click"]], template: function EventDialogComponent_Template(rf, ctx) { if (rf & 1) {
412
481
  const _r1 = i0.ɵɵgetCurrentView();
413
482
  i0.ɵɵelementStart(0, "div", 1);
414
483
  i0.ɵɵlistener("click", function EventDialogComponent_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.close.emit()); });
415
484
  i0.ɵɵelementEnd();
416
485
  i0.ɵɵelementStart(1, "div", 2, 0);
417
486
  i0.ɵɵlistener("keydown", function EventDialogComponent_Template_div_keydown_1_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.handleKeyDown($event)); });
418
- i0.ɵɵtemplate(3, EventDialogComponent_cal_event_history_3_Template, 1, 4, "cal-event-history", 3)(4, EventDialogComponent_ng_container_4_Template, 51, 30, "ng-container", 4);
487
+ i0.ɵɵtemplate(3, EventDialogComponent_cal_event_history_3_Template, 1, 3, "cal-event-history", 3)(4, EventDialogComponent_ng_container_4_Template, 51, 30, "ng-container", 4);
419
488
  i0.ɵɵelementEnd();
420
489
  } if (rf & 2) {
421
490
  i0.ɵɵadvance();
@@ -444,7 +513,6 @@ export class EventDialogComponent {
444
513
  [eventId]="event.id"
445
514
  [history]="history"
446
515
  [locale]="config.locale"
447
- [timezone]="config.core.timezone"
448
516
  (back)="hideHistory()">
449
517
  </cal-event-history>
450
518
 
@@ -486,8 +554,15 @@ export class EventDialogComponent {
486
554
  </div>
487
555
  </div>
488
556
 
489
- <div *ngIf="isInstance" style="font-size: 12px; color: var(--cal-color-text-muted); padding: 4px 0;">
490
- {{ config.locale.recurringInstanceNote }}
557
+ <div *ngIf="isInstance" style="font-size: 12px; color: var(--cal-color-text-muted); padding: 4px 0; display: flex; align-items: center; gap: 8px;">
558
+ <span>↻ {{ config.locale.recurringInstanceNote }}</span>
559
+ <!-- mcp-116: the way from an occurrence to its series. Without it the rule
560
+ is write-once — the master is never in the visible list, so no click
561
+ can reach it. Sits next to the note that already tells the user they
562
+ are editing one instance, i.e. where that question actually arises. -->
563
+ <button *ngIf="event" type="button" class="bm-cal__dialog-link" (click)="editSeries.emit(event.id)">
564
+ {{ config.locale.editSeries }}
565
+ </button>
491
566
  </div>
492
567
 
493
568
  <div class="bm-cal__dialog-row">
@@ -571,11 +646,13 @@ export class EventDialogComponent {
571
646
  type: Output
572
647
  }], deleteEvent: [{
573
648
  type: Output
649
+ }], editSeries: [{
650
+ type: Output
574
651
  }], close: [{
575
652
  type: Output
576
653
  }], dialogEl: [{
577
654
  type: ViewChild,
578
655
  args: ['dialogEl']
579
656
  }] }); })();
580
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(EventDialogComponent, { className: "EventDialogComponent", filePath: "components/eventdialog.ts", lineNumber: 144 }); })();
657
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(EventDialogComponent, { className: "EventDialogComponent", filePath: "components/eventdialog.ts", lineNumber: 151 }); })();
581
658
  //# sourceMappingURL=EventDialog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EventDialog.js","sourceRoot":"","sources":["../../src/components/EventDialog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EventDialog.js","sourceRoot":"","sources":["../../src/components/EventDialog.ts"],"names":[],"mappings":"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"}
@@ -1,21 +1,25 @@
1
1
  import { EventEmitter } from '@angular/core';
2
- import type { DomainEvent } from '@bimetal/calendar-data';
2
+ import type { CalendarHistoryEntry } from '@bimetal/calendar-headless';
3
3
  import type { CalendarLocale } from '../binding/index.js';
4
4
  import * as i0 from "@angular/core";
5
- /** Read-only timeline of a single event's domain-event history (created/updated/deleted/reverted). */
5
+ /** Read-only timeline of a single event's domain-event history (created/updated/deleted/reverted).
6
+ * bimetal-147: rendert die ANZEIGEFERTIGEN Zeilen aus `controller.getHistoryEntries`
7
+ * — die Ableitung „Event → Zeile" (inkl. Akteur) liegt im Controller, nicht hier.
8
+ *
9
+ * bimetal-147 R1: der Tooltip hängt an `[attr.title]`, NICHT an `[title]`. Die
10
+ * Property-Bindung schreibt bei einer Zeile ohne Audit-Id `el.title = undefined`,
11
+ * und die DOMString-Konversion macht daraus den sichtbaren Tooltip „undefined".
12
+ * Die Attribut-Bindung ENTFERNT das Attribut bei null/undefined — damit rendert
13
+ * Angular dasselbe DOM wie react/vue/svelte, wo `title={entry.userId}` das
14
+ * Attribut bei `undefined` ebenfalls weglässt. */
6
15
  export declare class EventHistoryComponent {
7
16
  eventId: string;
8
- history: DomainEvent[];
17
+ history: readonly CalendarHistoryEntry[];
9
18
  locale: CalendarLocale;
10
- /** Optional for back-compat (v0.33 additive). EventDialog binds config.core.timezone;
11
- * a direct consumer that omits it keeps the pre-v0.33 ambient-TZ behavior. */
12
- timezone?: string;
13
19
  back: EventEmitter<void>;
14
20
  getColor(type: string): string;
15
- getLabel(type: string): string;
16
- formatTime(timestamp: number): string;
17
- getSummary(event: DomainEvent): string;
21
+ trackEntry(_: number, entry: CalendarHistoryEntry): string;
18
22
  static ɵfac: i0.ɵɵFactoryDeclaration<EventHistoryComponent, never>;
19
- static ɵcmp: i0.ɵɵComponentDeclaration<EventHistoryComponent, "cal-event-history", never, { "eventId": { "alias": "eventId"; "required": false; }; "history": { "alias": "history"; "required": false; }; "locale": { "alias": "locale"; "required": false; }; "timezone": { "alias": "timezone"; "required": false; }; }, { "back": "back"; }, never, never, true, never>;
23
+ static ɵcmp: i0.ɵɵComponentDeclaration<EventHistoryComponent, "cal-event-history", never, { "eventId": { "alias": "eventId"; "required": false; }; "history": { "alias": "history"; "required": false; }; "locale": { "alias": "locale"; "required": false; }; }, { "back": "back"; }, never, never, true, never>;
20
24
  }
21
25
  //# sourceMappingURL=EventHistory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EventHistory.d.ts","sourceRoot":"","sources":["../../src/components/EventHistory.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAE,MAAM,eAAe,CAAC;AAEvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;;AAS1D,sGAAsG;AACtG,qBAoCa,qBAAqB;IACvB,OAAO,SAAM;IACb,OAAO,EAAE,WAAW,EAAE,CAAM;IAC5B,MAAM,EAAG,cAAc,CAAC;IACjC;mFAC+E;IACtE,QAAQ,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,qBAA4B;IAE1C,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAI9B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAI9B,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAIrC,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM;yCArB3B,qBAAqB;2CAArB,qBAAqB;CAqCjC"}
1
+ {"version":3,"file":"EventHistory.d.ts","sourceRoot":"","sources":["../../src/components/EventHistory.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAE,MAAM,eAAe,CAAC;AAEvE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;;AAS1D;;;;;;;;;mDASmD;AACnD,qBAqCa,qBAAqB;IACvB,OAAO,SAAM;IAKb,OAAO,EAAE,SAAS,oBAAoB,EAAE,CAAM;IAC9C,MAAM,EAAG,cAAc,CAAC;IACvB,IAAI,qBAA4B;IAE1C,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAO9B,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,oBAAoB;yCAjBtC,qBAAqB;2CAArB,qBAAqB;CAmBjC"}