@forgeroute/ui 0.4.11 → 0.4.12
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.
|
@@ -2965,7 +2965,7 @@ var CheckboxComponent = class CheckboxComponent {
|
|
|
2965
2965
|
}
|
|
2966
2966
|
`,
|
|
2967
2967
|
isInline: true,
|
|
2968
|
-
styles: [".cb-field{display:inline-flex;flex-direction:column;gap:4px}.cb-group{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;border:0;min-width:0}.cb-legend{padding:0;margin:0 0 8px;font-size:.8125rem;font-weight:600;color:#374151;line-height:1.2}.cb-required{color:#ef4444;margin-left:2px}.cb-options{display:flex;flex-direction:column;gap:10px}.cb-options.cb-horizontal{flex-direction:row;flex-wrap:wrap;gap:8px 20px}.cb-field.cb-has-trailing{display:flex}.cb-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.cb-trailing{display:inline-flex;align-items:center;flex-shrink:0}.cb-option{display:flex;flex-direction:column;gap:4px}.cb-group-desc{margin-left:0}.cb-indent{margin-left:29px}.cb-desc{margin:0 0 0 29px;font-size:.75rem;line-height:1.4;color:#64748b}.cb-desc-error{color:#ef4444}.cb-error .cb-box:not(.cb-checked){border-color:#ef4444}.cb-wrap{position:relative;vertical-align:top;display:inline-flex;align-items:center;gap:9px;cursor:pointer;-webkit-user-select:none;user-select:none}.cb-wrap.cb-disabled{cursor:not-allowed;opacity:.5}.cb-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cb-wrap:has(.cb-hidden:focus-visible) .cb-box{outline:2px solid #3b82f6;outline-offset:2px}@media(pointer:coarse),(max-width:480px){.cb-wrap{position:relative}.cb-hidden{width:44px;height:44px;margin:0;clip:auto;overflow:visible;left:-12px;top:50%;transform:translateY(-50%);opacity:0;cursor:pointer;z-index:1}.cb-wrap.cb-disabled .cb-hidden{cursor:not-allowed}}.cb-box{flex-shrink:0;width:20px;height:20px;border:2px solid #cbd5e1;border-radius:5px;background:#fff;display:flex;align-items:center;justify-content:center;transition:background .12s,border-color .12s}.cb-box.cb-checked,.cb-box.cb-indeterminate{background:#3b82f6;border-color:#3b82f6}.cb-wrap:hover .cb-box:not(.cb-checked):not(.cb-disabled){border-color:#3b82f6}@media(max-width:640px),(pointer:coarse){.cb-box{position:relative}.cb-box:after{content:\"\";position:absolute;inset:-12px}}.cb-label{font-size:.875rem;color:#334155;line-height:1.4}\n"],
|
|
2968
|
+
styles: [".cb-field{display:inline-flex;flex-direction:column;gap:4px;vertical-align:top}.cb-group{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;border:0;min-width:0}.cb-legend{padding:0;margin:0 0 8px;font-size:.8125rem;font-weight:600;color:#374151;line-height:1.2}.cb-required{color:#ef4444;margin-left:2px}.cb-options{display:flex;flex-direction:column;gap:10px}.cb-options.cb-horizontal{flex-direction:row;flex-wrap:wrap;gap:8px 20px}.cb-field.cb-has-trailing{display:flex}.cb-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.cb-trailing{display:inline-flex;align-items:center;flex-shrink:0}.cb-option{display:flex;flex-direction:column;gap:4px}.cb-group-desc{margin-left:0}.cb-indent{margin-left:29px}.cb-desc{margin:0 0 0 29px;font-size:.75rem;line-height:1.4;color:#64748b}.cb-desc-error{color:#ef4444}.cb-error .cb-box:not(.cb-checked){border-color:#ef4444}.cb-wrap{position:relative;vertical-align:top;display:inline-flex;align-items:center;gap:9px;cursor:pointer;-webkit-user-select:none;user-select:none}.cb-wrap.cb-disabled{cursor:not-allowed;opacity:.5}.cb-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cb-wrap:has(.cb-hidden:focus-visible) .cb-box{outline:2px solid #3b82f6;outline-offset:2px}@media(pointer:coarse),(max-width:480px){.cb-wrap{position:relative}.cb-hidden{width:44px;height:44px;margin:0;clip:auto;overflow:visible;left:-12px;top:50%;transform:translateY(-50%);opacity:0;cursor:pointer;z-index:1}.cb-wrap.cb-disabled .cb-hidden{cursor:not-allowed}}.cb-box{flex-shrink:0;width:20px;height:20px;border:2px solid #cbd5e1;border-radius:5px;background:#fff;display:flex;align-items:center;justify-content:center;transition:background .12s,border-color .12s}.cb-box.cb-checked,.cb-box.cb-indeterminate{background:#3b82f6;border-color:#3b82f6}.cb-wrap:hover .cb-box:not(.cb-checked):not(.cb-disabled){border-color:#3b82f6}@media(max-width:640px),(pointer:coarse){.cb-box{position:relative}.cb-box:after{content:\"\";position:absolute;inset:-12px}}.cb-label{font-size:.875rem;color:#334155;line-height:1.4}\n"],
|
|
2969
2969
|
dependencies: [{
|
|
2970
2970
|
kind: "directive",
|
|
2971
2971
|
type: NgTemplateOutlet,
|
|
@@ -3104,7 +3104,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
3104
3104
|
</div>
|
|
3105
3105
|
}
|
|
3106
3106
|
`,
|
|
3107
|
-
styles: [".cb-field{display:inline-flex;flex-direction:column;gap:4px}.cb-group{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;border:0;min-width:0}.cb-legend{padding:0;margin:0 0 8px;font-size:.8125rem;font-weight:600;color:#374151;line-height:1.2}.cb-required{color:#ef4444;margin-left:2px}.cb-options{display:flex;flex-direction:column;gap:10px}.cb-options.cb-horizontal{flex-direction:row;flex-wrap:wrap;gap:8px 20px}.cb-field.cb-has-trailing{display:flex}.cb-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.cb-trailing{display:inline-flex;align-items:center;flex-shrink:0}.cb-option{display:flex;flex-direction:column;gap:4px}.cb-group-desc{margin-left:0}.cb-indent{margin-left:29px}.cb-desc{margin:0 0 0 29px;font-size:.75rem;line-height:1.4;color:#64748b}.cb-desc-error{color:#ef4444}.cb-error .cb-box:not(.cb-checked){border-color:#ef4444}.cb-wrap{position:relative;vertical-align:top;display:inline-flex;align-items:center;gap:9px;cursor:pointer;-webkit-user-select:none;user-select:none}.cb-wrap.cb-disabled{cursor:not-allowed;opacity:.5}.cb-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cb-wrap:has(.cb-hidden:focus-visible) .cb-box{outline:2px solid #3b82f6;outline-offset:2px}@media(pointer:coarse),(max-width:480px){.cb-wrap{position:relative}.cb-hidden{width:44px;height:44px;margin:0;clip:auto;overflow:visible;left:-12px;top:50%;transform:translateY(-50%);opacity:0;cursor:pointer;z-index:1}.cb-wrap.cb-disabled .cb-hidden{cursor:not-allowed}}.cb-box{flex-shrink:0;width:20px;height:20px;border:2px solid #cbd5e1;border-radius:5px;background:#fff;display:flex;align-items:center;justify-content:center;transition:background .12s,border-color .12s}.cb-box.cb-checked,.cb-box.cb-indeterminate{background:#3b82f6;border-color:#3b82f6}.cb-wrap:hover .cb-box:not(.cb-checked):not(.cb-disabled){border-color:#3b82f6}@media(max-width:640px),(pointer:coarse){.cb-box{position:relative}.cb-box:after{content:\"\";position:absolute;inset:-12px}}.cb-label{font-size:.875rem;color:#334155;line-height:1.4}\n"]
|
|
3107
|
+
styles: [".cb-field{display:inline-flex;flex-direction:column;gap:4px;vertical-align:top}.cb-group{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;border:0;min-width:0}.cb-legend{padding:0;margin:0 0 8px;font-size:.8125rem;font-weight:600;color:#374151;line-height:1.2}.cb-required{color:#ef4444;margin-left:2px}.cb-options{display:flex;flex-direction:column;gap:10px}.cb-options.cb-horizontal{flex-direction:row;flex-wrap:wrap;gap:8px 20px}.cb-field.cb-has-trailing{display:flex}.cb-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.cb-trailing{display:inline-flex;align-items:center;flex-shrink:0}.cb-option{display:flex;flex-direction:column;gap:4px}.cb-group-desc{margin-left:0}.cb-indent{margin-left:29px}.cb-desc{margin:0 0 0 29px;font-size:.75rem;line-height:1.4;color:#64748b}.cb-desc-error{color:#ef4444}.cb-error .cb-box:not(.cb-checked){border-color:#ef4444}.cb-wrap{position:relative;vertical-align:top;display:inline-flex;align-items:center;gap:9px;cursor:pointer;-webkit-user-select:none;user-select:none}.cb-wrap.cb-disabled{cursor:not-allowed;opacity:.5}.cb-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cb-wrap:has(.cb-hidden:focus-visible) .cb-box{outline:2px solid #3b82f6;outline-offset:2px}@media(pointer:coarse),(max-width:480px){.cb-wrap{position:relative}.cb-hidden{width:44px;height:44px;margin:0;clip:auto;overflow:visible;left:-12px;top:50%;transform:translateY(-50%);opacity:0;cursor:pointer;z-index:1}.cb-wrap.cb-disabled .cb-hidden{cursor:not-allowed}}.cb-box{flex-shrink:0;width:20px;height:20px;border:2px solid #cbd5e1;border-radius:5px;background:#fff;display:flex;align-items:center;justify-content:center;transition:background .12s,border-color .12s}.cb-box.cb-checked,.cb-box.cb-indeterminate{background:#3b82f6;border-color:#3b82f6}.cb-wrap:hover .cb-box:not(.cb-checked):not(.cb-disabled){border-color:#3b82f6}@media(max-width:640px),(pointer:coarse){.cb-box{position:relative}.cb-box:after{content:\"\";position:absolute;inset:-12px}}.cb-label{font-size:.875rem;color:#334155;line-height:1.4}\n"]
|
|
3108
3108
|
}]
|
|
3109
3109
|
}],
|
|
3110
3110
|
ctorParameters: () => [],
|
|
@@ -34273,6 +34273,11 @@ function toDateStr(d) {
|
|
|
34273
34273
|
function fromDateStr(dateStr) {
|
|
34274
34274
|
return /* @__PURE__ */ new Date(dateStr + "T00:00");
|
|
34275
34275
|
}
|
|
34276
|
+
function isValidDateStr(dateStr) {
|
|
34277
|
+
if (!/^\d{4}-\d{2}-\d{2}$/.test(dateStr)) return false;
|
|
34278
|
+
const d = fromDateStr(dateStr);
|
|
34279
|
+
return !isNaN(d.getTime()) && toDateStr(d) === dateStr;
|
|
34280
|
+
}
|
|
34276
34281
|
function buildMonthCells(anchor, todayStr) {
|
|
34277
34282
|
const y = anchor.getFullYear();
|
|
34278
34283
|
const m = anchor.getMonth();
|
|
@@ -34450,6 +34455,7 @@ var CalendarComponent = class CalendarComponent {
|
|
|
34450
34455
|
this.showFilterCounts = input(false, ...ngDevMode ? [{ debugName: "showFilterCounts" }] : /* istanbul ignore next */ []);
|
|
34451
34456
|
this.canCreate = input(false, ...ngDevMode ? [{ debugName: "canCreate" }] : /* istanbul ignore next */ []);
|
|
34452
34457
|
this.disablePast = input(false, ...ngDevMode ? [{ debugName: "disablePast" }] : /* istanbul ignore next */ []);
|
|
34458
|
+
this.today = input(null, ...ngDevMode ? [{ debugName: "today" }] : /* istanbul ignore next */ []);
|
|
34453
34459
|
this.maxVisible = input(3, ...ngDevMode ? [{ debugName: "maxVisible" }] : /* istanbul ignore next */ []);
|
|
34454
34460
|
this.chipLayout = input("inline", ...ngDevMode ? [{ debugName: "chipLayout" }] : /* istanbul ignore next */ []);
|
|
34455
34461
|
this.sortByTime = input(true, ...ngDevMode ? [{ debugName: "sortByTime" }] : /* istanbul ignore next */ []);
|
|
@@ -34475,9 +34481,14 @@ var CalendarComponent = class CalendarComponent {
|
|
|
34475
34481
|
];
|
|
34476
34482
|
this.skeletonCells = Array.from({ length: 42 }, (_, i) => i);
|
|
34477
34483
|
this.formatHour = formatHour;
|
|
34478
|
-
this.
|
|
34484
|
+
this.clockToday = signal(toDateStr(/* @__PURE__ */ new Date()), ...ngDevMode ? [{ debugName: "clockToday" }] : /* istanbul ignore next */ []);
|
|
34485
|
+
this.todayStr = computed(() => {
|
|
34486
|
+
const t = this.today();
|
|
34487
|
+
return t && isValidDateStr(t) ? t : this.clockToday();
|
|
34488
|
+
}, ...ngDevMode ? [{ debugName: "todayStr" }] : /* istanbul ignore next */ []);
|
|
34479
34489
|
this.focusedDate = signal(null, ...ngDevMode ? [{ debugName: "focusedDate" }] : /* istanbul ignore next */ []);
|
|
34480
34490
|
this.lastRangeKey = "";
|
|
34491
|
+
this.injector = inject(Injector);
|
|
34481
34492
|
this.hours = computed(() => Array.from({ length: Math.max(1, this.endHour() - this.startHour() + 1) }, (_, i) => i + this.startHour()), ...ngDevMode ? [{ debugName: "hours" }] : /* istanbul ignore next */ []);
|
|
34482
34493
|
this.monthCells = computed(() => buildMonthCells(this.anchorDate(), this.todayStr()), ...ngDevMode ? [{ debugName: "monthCells" }] : /* istanbul ignore next */ []);
|
|
34483
34494
|
this.weekDays = computed(() => buildWeekDays(this.anchorDate(), this.todayStr()), ...ngDevMode ? [{ debugName: "weekDays" }] : /* istanbul ignore next */ []);
|
|
@@ -34581,7 +34592,7 @@ var CalendarComponent = class CalendarComponent {
|
|
|
34581
34592
|
const zone = inject(NgZone);
|
|
34582
34593
|
const doc = inject(DOCUMENT);
|
|
34583
34594
|
let timer;
|
|
34584
|
-
const refreshToday = () => zone.run(() => this.
|
|
34595
|
+
const refreshToday = () => zone.run(() => this.clockToday.set(toDateStr(/* @__PURE__ */ new Date())));
|
|
34585
34596
|
const schedule = () => {
|
|
34586
34597
|
const now = /* @__PURE__ */ new Date();
|
|
34587
34598
|
const next = new Date(now.getFullYear(), now.getMonth(), now.getDate() + 1, 0, 0, 1);
|
|
@@ -34626,8 +34637,8 @@ var CalendarComponent = class CalendarComponent {
|
|
|
34626
34637
|
}
|
|
34627
34638
|
goToday() {
|
|
34628
34639
|
this.focusedDate.set(null);
|
|
34629
|
-
this.
|
|
34630
|
-
this.anchorDate.set(
|
|
34640
|
+
this.clockToday.set(toDateStr(/* @__PURE__ */ new Date()));
|
|
34641
|
+
this.anchorDate.set(fromDateStr(this.todayStr()));
|
|
34631
34642
|
}
|
|
34632
34643
|
dowLabel(dateStr) {
|
|
34633
34644
|
return WEEK_DAY_LABELS[fromDateStr(dateStr).getDay()];
|
|
@@ -34671,6 +34682,11 @@ var CalendarComponent = class CalendarComponent {
|
|
|
34671
34682
|
return;
|
|
34672
34683
|
}
|
|
34673
34684
|
const d = fromDateStr(dateStr);
|
|
34685
|
+
if (event.key === "PageUp" || event.key === "PageDown") {
|
|
34686
|
+
event.preventDefault();
|
|
34687
|
+
this.jumpMonths(d, (event.key === "PageUp" ? -1 : 1) * (event.shiftKey ? 12 : 1));
|
|
34688
|
+
return;
|
|
34689
|
+
}
|
|
34674
34690
|
const step = {
|
|
34675
34691
|
ArrowLeft: -1,
|
|
34676
34692
|
ArrowRight: 1,
|
|
@@ -34686,6 +34702,15 @@ var CalendarComponent = class CalendarComponent {
|
|
|
34686
34702
|
this.focusedDate.set(target);
|
|
34687
34703
|
this.host.nativeElement.querySelector(`.month-cell[data-date="${target}"]`)?.focus();
|
|
34688
34704
|
}
|
|
34705
|
+
jumpMonths(from, months) {
|
|
34706
|
+
const y = from.getFullYear();
|
|
34707
|
+
const m = from.getMonth() + months;
|
|
34708
|
+
const target = new Date(y, m, Math.min(from.getDate(), new Date(y, m + 1, 0).getDate()));
|
|
34709
|
+
const targetStr = toDateStr(target);
|
|
34710
|
+
this.focusedDate.set(targetStr);
|
|
34711
|
+
this.anchorDate.set(target);
|
|
34712
|
+
afterNextRender(() => this.host.nativeElement.querySelector(`.month-cell[data-date="${targetStr}"]`)?.focus(), { injector: this.injector });
|
|
34713
|
+
}
|
|
34689
34714
|
onAddAllDay(dateStr, event) {
|
|
34690
34715
|
event.stopPropagation();
|
|
34691
34716
|
this.onDateClick(dateStr);
|
|
@@ -34819,6 +34844,13 @@ var CalendarComponent = class CalendarComponent {
|
|
|
34819
34844
|
isRequired: false,
|
|
34820
34845
|
transformFunction: null
|
|
34821
34846
|
},
|
|
34847
|
+
today: {
|
|
34848
|
+
classPropertyName: "today",
|
|
34849
|
+
publicName: "today",
|
|
34850
|
+
isSignal: true,
|
|
34851
|
+
isRequired: false,
|
|
34852
|
+
transformFunction: null
|
|
34853
|
+
},
|
|
34822
34854
|
maxVisible: {
|
|
34823
34855
|
classPropertyName: "maxVisible",
|
|
34824
34856
|
publicName: "maxVisible",
|
|
@@ -34907,7 +34939,7 @@ var CalendarComponent = class CalendarComponent {
|
|
|
34907
34939
|
<div class="mobile-summary"><ng-content select="[calendar-summary-mobile]" /></div>
|
|
34908
34940
|
}
|
|
34909
34941
|
|
|
34910
|
-
@if (filters().length
|
|
34942
|
+
@if (filters().length) {
|
|
34911
34943
|
<div class="filter-bar">
|
|
34912
34944
|
@if (filterLabel()) { <div class="filter-bar-label">{{ filterLabel() }}</div> }
|
|
34913
34945
|
<div class="filter-chips" role="group" [attr.aria-label]="filterLabel() || 'Filter'">
|
|
@@ -34975,7 +35007,7 @@ var CalendarComponent = class CalendarComponent {
|
|
|
34975
35007
|
<div class="cell-events">
|
|
34976
35008
|
@for (e of c.visible; track e.id) {
|
|
34977
35009
|
<button type="button" class="event-chip" [class.stacked]="chipLayout() === 'stacked'" [class.has-head]="!!(e.iconPath || chipTime(e))" [style.background]="e.bgColor" [style.borderLeftColor]="e.color"
|
|
34978
|
-
[attr.aria-label]="itemLabel(e)" [title]="e.title"
|
|
35010
|
+
[attr.aria-label]="itemLabel(e)" [title]="e.tooltip || e.title"
|
|
34979
35011
|
(click)="onItemClick(e, $event)">
|
|
34980
35012
|
<span class="chip-head">
|
|
34981
35013
|
@if (e.iconPath) {
|
|
@@ -35018,7 +35050,7 @@ var CalendarComponent = class CalendarComponent {
|
|
|
35018
35050
|
}
|
|
35019
35051
|
@for (e of col.allDay; track e.id) {
|
|
35020
35052
|
<button type="button" class="allday-chip" [style.background]="e.bgColor" [style.borderLeftColor]="e.color"
|
|
35021
|
-
[attr.aria-label]="itemLabel(e)" (click)="onItemClick(e, $event)">{{ e.title }}</button>
|
|
35053
|
+
[attr.aria-label]="itemLabel(e)" [attr.title]="e.tooltip || null" (click)="onItemClick(e, $event)">{{ e.title }}</button>
|
|
35022
35054
|
}
|
|
35023
35055
|
</div>
|
|
35024
35056
|
}
|
|
@@ -35039,7 +35071,7 @@ var CalendarComponent = class CalendarComponent {
|
|
|
35039
35071
|
[style.left]="'calc(' + (t.lane.lane / t.lane.lanes * 100) + '% + 2px)'"
|
|
35040
35072
|
[style.width]="'calc(' + (100 / t.lane.lanes) + '% - 4px)'"
|
|
35041
35073
|
[style.background]="t.item.bgColor" [style.borderLeftColor]="t.item.color"
|
|
35042
|
-
[attr.aria-label]="itemLabel(t.item)" (click)="onItemClick(t.item, $event)">
|
|
35074
|
+
[attr.aria-label]="itemLabel(t.item)" [attr.title]="t.item.tooltip || null" (click)="onItemClick(t.item, $event)">
|
|
35043
35075
|
<span class="te-title" [class.strike]="t.item.strike">{{ t.item.title }}</span>
|
|
35044
35076
|
@if (t.item.startTime) { <span class="te-time">{{ t.item.timeLabel || timeRange(t.item) }}</span> }
|
|
35045
35077
|
</button>
|
|
@@ -35063,7 +35095,7 @@ var CalendarComponent = class CalendarComponent {
|
|
|
35063
35095
|
</div>
|
|
35064
35096
|
<div class="agenda-events">
|
|
35065
35097
|
@for (e of group.items; track e.id) {
|
|
35066
|
-
<button type="button" class="agenda-event" [attr.aria-label]="e.ariaLabel || null" (click)="onItemClick(e, $event)">
|
|
35098
|
+
<button type="button" class="agenda-event" [attr.aria-label]="e.ariaLabel || null" [attr.title]="e.tooltip || null" (click)="onItemClick(e, $event)">
|
|
35067
35099
|
<span class="ae-color-bar" [style.background]="e.color"></span>
|
|
35068
35100
|
<span class="ae-body">
|
|
35069
35101
|
<span class="ae-top">
|
|
@@ -35186,7 +35218,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
35186
35218
|
<div class="mobile-summary"><ng-content select="[calendar-summary-mobile]" /></div>
|
|
35187
35219
|
}
|
|
35188
35220
|
|
|
35189
|
-
@if (filters().length
|
|
35221
|
+
@if (filters().length) {
|
|
35190
35222
|
<div class="filter-bar">
|
|
35191
35223
|
@if (filterLabel()) { <div class="filter-bar-label">{{ filterLabel() }}</div> }
|
|
35192
35224
|
<div class="filter-chips" role="group" [attr.aria-label]="filterLabel() || 'Filter'">
|
|
@@ -35254,7 +35286,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
35254
35286
|
<div class="cell-events">
|
|
35255
35287
|
@for (e of c.visible; track e.id) {
|
|
35256
35288
|
<button type="button" class="event-chip" [class.stacked]="chipLayout() === 'stacked'" [class.has-head]="!!(e.iconPath || chipTime(e))" [style.background]="e.bgColor" [style.borderLeftColor]="e.color"
|
|
35257
|
-
[attr.aria-label]="itemLabel(e)" [title]="e.title"
|
|
35289
|
+
[attr.aria-label]="itemLabel(e)" [title]="e.tooltip || e.title"
|
|
35258
35290
|
(click)="onItemClick(e, $event)">
|
|
35259
35291
|
<span class="chip-head">
|
|
35260
35292
|
@if (e.iconPath) {
|
|
@@ -35297,7 +35329,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
35297
35329
|
}
|
|
35298
35330
|
@for (e of col.allDay; track e.id) {
|
|
35299
35331
|
<button type="button" class="allday-chip" [style.background]="e.bgColor" [style.borderLeftColor]="e.color"
|
|
35300
|
-
[attr.aria-label]="itemLabel(e)" (click)="onItemClick(e, $event)">{{ e.title }}</button>
|
|
35332
|
+
[attr.aria-label]="itemLabel(e)" [attr.title]="e.tooltip || null" (click)="onItemClick(e, $event)">{{ e.title }}</button>
|
|
35301
35333
|
}
|
|
35302
35334
|
</div>
|
|
35303
35335
|
}
|
|
@@ -35318,7 +35350,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
35318
35350
|
[style.left]="'calc(' + (t.lane.lane / t.lane.lanes * 100) + '% + 2px)'"
|
|
35319
35351
|
[style.width]="'calc(' + (100 / t.lane.lanes) + '% - 4px)'"
|
|
35320
35352
|
[style.background]="t.item.bgColor" [style.borderLeftColor]="t.item.color"
|
|
35321
|
-
[attr.aria-label]="itemLabel(t.item)" (click)="onItemClick(t.item, $event)">
|
|
35353
|
+
[attr.aria-label]="itemLabel(t.item)" [attr.title]="t.item.tooltip || null" (click)="onItemClick(t.item, $event)">
|
|
35322
35354
|
<span class="te-title" [class.strike]="t.item.strike">{{ t.item.title }}</span>
|
|
35323
35355
|
@if (t.item.startTime) { <span class="te-time">{{ t.item.timeLabel || timeRange(t.item) }}</span> }
|
|
35324
35356
|
</button>
|
|
@@ -35342,7 +35374,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
35342
35374
|
</div>
|
|
35343
35375
|
<div class="agenda-events">
|
|
35344
35376
|
@for (e of group.items; track e.id) {
|
|
35345
|
-
<button type="button" class="agenda-event" [attr.aria-label]="e.ariaLabel || null" (click)="onItemClick(e, $event)">
|
|
35377
|
+
<button type="button" class="agenda-event" [attr.aria-label]="e.ariaLabel || null" [attr.title]="e.tooltip || null" (click)="onItemClick(e, $event)">
|
|
35346
35378
|
<span class="ae-color-bar" [style.background]="e.color"></span>
|
|
35347
35379
|
<span class="ae-body">
|
|
35348
35380
|
<span class="ae-top">
|
|
@@ -35476,6 +35508,14 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
35476
35508
|
required: false
|
|
35477
35509
|
}]
|
|
35478
35510
|
}],
|
|
35511
|
+
today: [{
|
|
35512
|
+
type: i0.Input,
|
|
35513
|
+
args: [{
|
|
35514
|
+
isSignal: true,
|
|
35515
|
+
alias: "today",
|
|
35516
|
+
required: false
|
|
35517
|
+
}]
|
|
35518
|
+
}],
|
|
35479
35519
|
maxVisible: [{
|
|
35480
35520
|
type: i0.Input,
|
|
35481
35521
|
args: [{
|