mn-angular-lib 0.0.72 → 0.0.74
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.
|
@@ -5596,6 +5596,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
|
|
|
5596
5596
|
*/
|
|
5597
5597
|
class CalendarWeekComponent {
|
|
5598
5598
|
layoutService;
|
|
5599
|
+
cdr;
|
|
5599
5600
|
/** The date around which the week is centred. */
|
|
5600
5601
|
focusDay;
|
|
5601
5602
|
/** Observable that emits the full event list whenever it changes. */
|
|
@@ -5621,8 +5622,9 @@ class CalendarWeekComponent {
|
|
|
5621
5622
|
formatter;
|
|
5622
5623
|
resolvedConfig;
|
|
5623
5624
|
currentTimeInterval;
|
|
5624
|
-
constructor(layoutService) {
|
|
5625
|
+
constructor(layoutService, cdr) {
|
|
5625
5626
|
this.layoutService = layoutService;
|
|
5627
|
+
this.cdr = cdr;
|
|
5626
5628
|
this.formatter = new DefaultCalendarDateFormatter();
|
|
5627
5629
|
}
|
|
5628
5630
|
ngOnInit() {
|
|
@@ -5634,6 +5636,7 @@ class CalendarWeekComponent {
|
|
|
5634
5636
|
this.eventsChanged.pipe(takeUntil(this.destroy$)).subscribe(events => {
|
|
5635
5637
|
this.events = events;
|
|
5636
5638
|
this.refreshEvents();
|
|
5639
|
+
this.cdr.detectChanges();
|
|
5637
5640
|
});
|
|
5638
5641
|
}
|
|
5639
5642
|
if (this.focusDayChanged) {
|
|
@@ -5642,10 +5645,11 @@ class CalendarWeekComponent {
|
|
|
5642
5645
|
this.buildColumns();
|
|
5643
5646
|
this.refreshEvents();
|
|
5644
5647
|
this.updateCurrentTime();
|
|
5648
|
+
this.cdr.detectChanges();
|
|
5645
5649
|
});
|
|
5646
5650
|
}
|
|
5647
5651
|
// Build hour rows asynchronously (formatTimeI returns a Promise).
|
|
5648
|
-
this.buildHourRows();
|
|
5652
|
+
this.buildHourRows().then(() => this.cdr.detectChanges());
|
|
5649
5653
|
}
|
|
5650
5654
|
ngOnDestroy() {
|
|
5651
5655
|
this.destroy$.next();
|
|
@@ -5693,19 +5697,20 @@ class CalendarWeekComponent {
|
|
|
5693
5697
|
return event.id;
|
|
5694
5698
|
}
|
|
5695
5699
|
async buildHourRows() {
|
|
5696
|
-
this.hourRows = [];
|
|
5697
5700
|
const hours = this.resolvedConfig.endHour - this.resolvedConfig.startHour;
|
|
5698
5701
|
this.totalRows = hours * 2;
|
|
5702
|
+
const rows = [];
|
|
5699
5703
|
for (let i = 0; i < hours; i++) {
|
|
5700
5704
|
const hour = this.resolvedConfig.startHour + i;
|
|
5701
5705
|
const label = await this.formatter.formatTimeI(hour, 0);
|
|
5702
|
-
|
|
5706
|
+
rows.push({
|
|
5703
5707
|
hour,
|
|
5704
5708
|
topRow: i * 2 + 1,
|
|
5705
5709
|
bottomRow: i * 2 + 3,
|
|
5706
5710
|
hourLabel: label
|
|
5707
5711
|
});
|
|
5708
5712
|
}
|
|
5713
|
+
this.hourRows = rows;
|
|
5709
5714
|
}
|
|
5710
5715
|
/** Builds the 7 day columns for the current week (Monday–Sunday). */
|
|
5711
5716
|
buildColumns() {
|
|
@@ -5786,13 +5791,13 @@ class CalendarWeekComponent {
|
|
|
5786
5791
|
this.currentTimeRow = 0;
|
|
5787
5792
|
}
|
|
5788
5793
|
}
|
|
5789
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: CalendarWeekComponent, deps: [{ token: CalendarEventLayoutService }], target: i0.ɵɵFactoryTarget.Component });
|
|
5794
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: CalendarWeekComponent, deps: [{ token: CalendarEventLayoutService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
5790
5795
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.3", type: CalendarWeekComponent, isStandalone: true, selector: "app-calendar-week", inputs: { focusDay: "focusDay", eventsChanged: "eventsChanged", focusDayChanged: "focusDayChanged", config: "config", calendarEventComponent: "calendarEventComponent" }, outputs: { eventClicked: "eventClicked" }, providers: [CalendarEventLayoutService], ngImport: i0, template: "<div class=\"calendar-week\" role=\"grid\" aria-label=\"Week view\">\n <div class=\"week-header\" [style.grid-template-columns]=\"'60px ' + gridTemplateColumns\">\n <div class=\"time-gutter-header\"></div>\n @for (col of columns; track col.dayName; let i = $index) {\n <div class=\"day-column-header\"\n [class.today]=\"col.isToday\"\n [style.grid-column]=\"getHeaderColumn(i)\"\n role=\"columnheader\">\n <span class=\"day-name\">{{ col.dayName }}</span>\n <span class=\"day-number\">{{ col.dayNumber }}</span>\n </div>\n }\n </div>\n <div class=\"week-body\">\n <div class=\"time-gutter\" [style.grid-template-rows]=\"'repeat(' + totalRows + ', 1fr)'\">\n @for (row of hourRows; track row.topRow) {\n <div class=\"hour-label\"\n [style.grid-row]=\"row.topRow + '/' + row.bottomRow\">\n {{ row.hourLabel }}\n </div>\n }\n </div>\n <div class=\"week-grid\"\n [style.grid-template-rows]=\"'repeat(' + totalRows + ', 1fr)'\"\n [style.grid-template-columns]=\"gridTemplateColumns\">\n @for (row of hourRows; track row.topRow) {\n <div class=\"hour-line\"\n [style.grid-row]=\"row.topRow + '/' + row.bottomRow\"\n [style.grid-column]=\"'1 / -1'\">\n </div>\n }\n @if (currentTimeRow > 0 && currentTimeCol) {\n <div class=\"current-time-line\"\n [style.grid-row]=\"currentTimeRow\"\n [style.grid-column]=\"currentTimeCol\">\n <div class=\"current-time-dot\"></div>\n <div class=\"current-time-rule\"></div>\n </div>\n }\n @for (event of displayEvents; track event.id) {\n <div class=\"week-event\"\n [style.grid-row]=\"getEventRow(event)\"\n [style.grid-column]=\"getEventColumn(event)\"\n (click)=\"onEventClick(event)\">\n <app-calendar-event [event]=\"event\" [customComponent]=\"calendarEventComponent\"></app-calendar-event>\n </div>\n }\n </div>\n </div>\n</div>\n", styles: [".calendar-week{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden}.week-header{display:grid;border-bottom:1px solid var(--color-base-300)}.time-gutter-header{min-width:60px}.day-column-header{text-align:center;padding:8px 4px;font-size:13px}.day-column-header.today{color:var(--color-primary);font-weight:700}.day-name{display:block;font-size:11px;text-transform:uppercase;color:var(--color-base-content, #6b7280);opacity:.7}.day-number{font-size:18px;font-weight:600}.week-body{display:grid;grid-template-columns:60px 1fr;flex:1;min-height:0;overflow:hidden;align-items:stretch}.time-gutter{display:grid;height:100%;min-height:0}.hour-label{font-size:11px;color:var(--color-base-content, #6b7280);opacity:.7;text-align:right;padding-right:8px;display:flex;align-items:start;min-height:0;overflow:hidden}.week-grid{display:grid;position:relative;grid-auto-rows:1fr;height:100%;min-height:0}.hour-line{border-top:1px solid var(--color-base-200);pointer-events:none;min-height:0}.week-event{z-index:1;padding:1px 2px;overflow:hidden;min-height:0}.current-time-line{position:relative;z-index:2;pointer-events:none}.current-time-dot{width:8px;height:8px;background:var(--color-error, #ef4444);border-radius:50%;position:absolute;left:-4px;top:-4px}.current-time-rule{height:2px;background:var(--color-error, #ef4444);width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: CalendarEventComponent, selector: "app-calendar-event", inputs: ["event", "customComponent"], outputs: ["eventClicked"] }] });
|
|
5791
5796
|
}
|
|
5792
5797
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: CalendarWeekComponent, decorators: [{
|
|
5793
5798
|
type: Component,
|
|
5794
5799
|
args: [{ selector: 'app-calendar-week', standalone: true, imports: [CommonModule, CalendarEventComponent], providers: [CalendarEventLayoutService], template: "<div class=\"calendar-week\" role=\"grid\" aria-label=\"Week view\">\n <div class=\"week-header\" [style.grid-template-columns]=\"'60px ' + gridTemplateColumns\">\n <div class=\"time-gutter-header\"></div>\n @for (col of columns; track col.dayName; let i = $index) {\n <div class=\"day-column-header\"\n [class.today]=\"col.isToday\"\n [style.grid-column]=\"getHeaderColumn(i)\"\n role=\"columnheader\">\n <span class=\"day-name\">{{ col.dayName }}</span>\n <span class=\"day-number\">{{ col.dayNumber }}</span>\n </div>\n }\n </div>\n <div class=\"week-body\">\n <div class=\"time-gutter\" [style.grid-template-rows]=\"'repeat(' + totalRows + ', 1fr)'\">\n @for (row of hourRows; track row.topRow) {\n <div class=\"hour-label\"\n [style.grid-row]=\"row.topRow + '/' + row.bottomRow\">\n {{ row.hourLabel }}\n </div>\n }\n </div>\n <div class=\"week-grid\"\n [style.grid-template-rows]=\"'repeat(' + totalRows + ', 1fr)'\"\n [style.grid-template-columns]=\"gridTemplateColumns\">\n @for (row of hourRows; track row.topRow) {\n <div class=\"hour-line\"\n [style.grid-row]=\"row.topRow + '/' + row.bottomRow\"\n [style.grid-column]=\"'1 / -1'\">\n </div>\n }\n @if (currentTimeRow > 0 && currentTimeCol) {\n <div class=\"current-time-line\"\n [style.grid-row]=\"currentTimeRow\"\n [style.grid-column]=\"currentTimeCol\">\n <div class=\"current-time-dot\"></div>\n <div class=\"current-time-rule\"></div>\n </div>\n }\n @for (event of displayEvents; track event.id) {\n <div class=\"week-event\"\n [style.grid-row]=\"getEventRow(event)\"\n [style.grid-column]=\"getEventColumn(event)\"\n (click)=\"onEventClick(event)\">\n <app-calendar-event [event]=\"event\" [customComponent]=\"calendarEventComponent\"></app-calendar-event>\n </div>\n }\n </div>\n </div>\n</div>\n", styles: [".calendar-week{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden}.week-header{display:grid;border-bottom:1px solid var(--color-base-300)}.time-gutter-header{min-width:60px}.day-column-header{text-align:center;padding:8px 4px;font-size:13px}.day-column-header.today{color:var(--color-primary);font-weight:700}.day-name{display:block;font-size:11px;text-transform:uppercase;color:var(--color-base-content, #6b7280);opacity:.7}.day-number{font-size:18px;font-weight:600}.week-body{display:grid;grid-template-columns:60px 1fr;flex:1;min-height:0;overflow:hidden;align-items:stretch}.time-gutter{display:grid;height:100%;min-height:0}.hour-label{font-size:11px;color:var(--color-base-content, #6b7280);opacity:.7;text-align:right;padding-right:8px;display:flex;align-items:start;min-height:0;overflow:hidden}.week-grid{display:grid;position:relative;grid-auto-rows:1fr;height:100%;min-height:0}.hour-line{border-top:1px solid var(--color-base-200);pointer-events:none;min-height:0}.week-event{z-index:1;padding:1px 2px;overflow:hidden;min-height:0}.current-time-line{position:relative;z-index:2;pointer-events:none}.current-time-dot{width:8px;height:8px;background:var(--color-error, #ef4444);border-radius:50%;position:absolute;left:-4px;top:-4px}.current-time-rule{height:2px;background:var(--color-error, #ef4444);width:100%}\n"] }]
|
|
5795
|
-
}], ctorParameters: () => [{ type: CalendarEventLayoutService }], propDecorators: { focusDay: [{
|
|
5800
|
+
}], ctorParameters: () => [{ type: CalendarEventLayoutService }, { type: i0.ChangeDetectorRef }], propDecorators: { focusDay: [{
|
|
5796
5801
|
type: Input
|
|
5797
5802
|
}], eventsChanged: [{
|
|
5798
5803
|
type: Input
|
|
@@ -5814,6 +5819,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
|
|
|
5814
5819
|
*/
|
|
5815
5820
|
class CalendarDayComponent {
|
|
5816
5821
|
layoutService;
|
|
5822
|
+
cdr;
|
|
5817
5823
|
/** The date to display. */
|
|
5818
5824
|
focusDay;
|
|
5819
5825
|
/** Observable that emits the full event list whenever it changes. */
|
|
@@ -5838,8 +5844,9 @@ class CalendarDayComponent {
|
|
|
5838
5844
|
formatter;
|
|
5839
5845
|
resolvedConfig;
|
|
5840
5846
|
currentTimeInterval;
|
|
5841
|
-
constructor(layoutService) {
|
|
5847
|
+
constructor(layoutService, cdr) {
|
|
5842
5848
|
this.layoutService = layoutService;
|
|
5849
|
+
this.cdr = cdr;
|
|
5843
5850
|
this.formatter = new DefaultCalendarDateFormatter();
|
|
5844
5851
|
}
|
|
5845
5852
|
ngOnInit() {
|
|
@@ -5851,6 +5858,7 @@ class CalendarDayComponent {
|
|
|
5851
5858
|
this.eventsChanged.pipe(takeUntil(this.destroy$)).subscribe(events => {
|
|
5852
5859
|
this.events = events;
|
|
5853
5860
|
this.refreshEvents();
|
|
5861
|
+
this.cdr.detectChanges();
|
|
5854
5862
|
});
|
|
5855
5863
|
}
|
|
5856
5864
|
if (this.focusDayChanged) {
|
|
@@ -5859,10 +5867,11 @@ class CalendarDayComponent {
|
|
|
5859
5867
|
this.updateDayInfo();
|
|
5860
5868
|
this.refreshEvents();
|
|
5861
5869
|
this.updateCurrentTime();
|
|
5870
|
+
this.cdr.detectChanges();
|
|
5862
5871
|
});
|
|
5863
5872
|
}
|
|
5864
5873
|
// Build hour rows asynchronously (formatTimeI returns a Promise).
|
|
5865
|
-
this.buildHourRows();
|
|
5874
|
+
this.buildHourRows().then(() => this.cdr.detectChanges());
|
|
5866
5875
|
}
|
|
5867
5876
|
ngOnDestroy() {
|
|
5868
5877
|
this.destroy$.next();
|
|
@@ -5895,19 +5904,20 @@ class CalendarDayComponent {
|
|
|
5895
5904
|
return event.id;
|
|
5896
5905
|
}
|
|
5897
5906
|
async buildHourRows() {
|
|
5898
|
-
this.hourRows = [];
|
|
5899
5907
|
const hours = this.resolvedConfig.endHour - this.resolvedConfig.startHour;
|
|
5900
5908
|
this.totalRows = hours * 2;
|
|
5909
|
+
const rows = [];
|
|
5901
5910
|
for (let i = 0; i < hours; i++) {
|
|
5902
5911
|
const hour = this.resolvedConfig.startHour + i;
|
|
5903
5912
|
const label = await this.formatter.formatTimeI(hour, 0);
|
|
5904
|
-
|
|
5913
|
+
rows.push({
|
|
5905
5914
|
hour,
|
|
5906
5915
|
topRow: i * 2 + 1,
|
|
5907
5916
|
bottomRow: i * 2 + 3,
|
|
5908
5917
|
hourLabel: label
|
|
5909
5918
|
});
|
|
5910
5919
|
}
|
|
5920
|
+
this.hourRows = rows;
|
|
5911
5921
|
}
|
|
5912
5922
|
/** Updates the day name and isToday flag. */
|
|
5913
5923
|
updateDayInfo() {
|
|
@@ -5947,13 +5957,13 @@ class CalendarDayComponent {
|
|
|
5947
5957
|
this.isToday = false;
|
|
5948
5958
|
}
|
|
5949
5959
|
}
|
|
5950
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: CalendarDayComponent, deps: [{ token: CalendarEventLayoutService }], target: i0.ɵɵFactoryTarget.Component });
|
|
5960
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: CalendarDayComponent, deps: [{ token: CalendarEventLayoutService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
5951
5961
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.3", type: CalendarDayComponent, isStandalone: true, selector: "app-calendar-day", inputs: { focusDay: "focusDay", eventsChanged: "eventsChanged", focusDayChanged: "focusDayChanged", config: "config", calendarEventComponent: "calendarEventComponent" }, outputs: { eventClicked: "eventClicked" }, providers: [CalendarEventLayoutService], ngImport: i0, template: "<div class=\"calendar-day\" role=\"grid\" aria-label=\"Day view\">\n <div class=\"day-header\">\n <div class=\"time-gutter-header\"></div>\n <div class=\"day-column-header\" [class.today]=\"isToday\" role=\"columnheader\">\n <span class=\"day-name\">{{ dayName }}</span>\n <span class=\"day-number\">{{ focusDay.getDate() }}</span>\n </div>\n </div>\n <div class=\"day-body\">\n <div class=\"time-gutter\" [style.grid-template-rows]=\"'repeat(' + totalRows + ', 1fr)'\">\n @for (row of hourRows; track row.topRow) {\n <div class=\"hour-label\"\n [style.grid-row]=\"row.topRow + '/' + row.bottomRow\">\n {{ row.hourLabel }}\n </div>\n }\n </div>\n <div class=\"day-grid\"\n [style.grid-template-rows]=\"'repeat(' + totalRows + ', 1fr)'\"\n [style.grid-template-columns]=\"'repeat(' + totalColumns + ', 1fr)'\">\n @for (row of hourRows; track row.topRow) {\n <div class=\"hour-line\"\n [style.grid-row]=\"row.topRow + '/' + row.bottomRow\"\n [style.grid-column]=\"'1 / -1'\">\n </div>\n }\n @if (currentTimeRow > 0 && isToday) {\n <div class=\"current-time-line\"\n [style.grid-row]=\"currentTimeRow\"\n [style.grid-column]=\"'1 / -1'\">\n <div class=\"current-time-dot\"></div>\n <div class=\"current-time-rule\"></div>\n </div>\n }\n @for (event of displayEvents; track event.id) {\n <div class=\"day-event\"\n [style.grid-row]=\"getEventRow(event)\"\n [style.grid-column]=\"getEventColumn(event)\"\n (click)=\"onEventClick(event)\">\n <app-calendar-event [event]=\"event\" [customComponent]=\"calendarEventComponent\"></app-calendar-event>\n </div>\n }\n </div>\n </div>\n</div>\n", styles: [".calendar-day{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden}.day-header{display:grid;grid-template-columns:60px 1fr;border-bottom:1px solid var(--color-base-300)}.time-gutter-header{min-width:60px}.day-column-header{text-align:center;padding:8px 4px;font-size:13px}.day-column-header.today{color:var(--color-primary);font-weight:700}.day-name{display:block;font-size:11px;text-transform:uppercase;color:var(--color-base-content, #6b7280);opacity:.7}.day-number{font-size:18px;font-weight:600}.day-body{display:grid;grid-template-columns:60px 1fr;flex:1;min-height:0;overflow:hidden;align-items:stretch}.time-gutter{display:grid;height:100%;min-height:0}.hour-label{font-size:11px;color:var(--color-base-content, #6b7280);opacity:.7;text-align:right;padding-right:8px;display:flex;align-items:start;min-height:0;overflow:hidden}.day-grid{display:grid;position:relative;grid-auto-rows:1fr;height:100%;min-height:0}.hour-line{border-top:1px solid var(--color-base-200);pointer-events:none;min-height:0}.day-event{z-index:1;padding:1px 2px;overflow:hidden;min-height:0}.current-time-line{position:relative;z-index:2;pointer-events:none}.current-time-dot{width:8px;height:8px;background:var(--color-error, #ef4444);border-radius:50%;position:absolute;left:-4px;top:-4px}.current-time-rule{height:2px;background:var(--color-error, #ef4444);width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: CalendarEventComponent, selector: "app-calendar-event", inputs: ["event", "customComponent"], outputs: ["eventClicked"] }] });
|
|
5952
5962
|
}
|
|
5953
5963
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: CalendarDayComponent, decorators: [{
|
|
5954
5964
|
type: Component,
|
|
5955
5965
|
args: [{ selector: 'app-calendar-day', standalone: true, imports: [CommonModule, CalendarEventComponent], providers: [CalendarEventLayoutService], template: "<div class=\"calendar-day\" role=\"grid\" aria-label=\"Day view\">\n <div class=\"day-header\">\n <div class=\"time-gutter-header\"></div>\n <div class=\"day-column-header\" [class.today]=\"isToday\" role=\"columnheader\">\n <span class=\"day-name\">{{ dayName }}</span>\n <span class=\"day-number\">{{ focusDay.getDate() }}</span>\n </div>\n </div>\n <div class=\"day-body\">\n <div class=\"time-gutter\" [style.grid-template-rows]=\"'repeat(' + totalRows + ', 1fr)'\">\n @for (row of hourRows; track row.topRow) {\n <div class=\"hour-label\"\n [style.grid-row]=\"row.topRow + '/' + row.bottomRow\">\n {{ row.hourLabel }}\n </div>\n }\n </div>\n <div class=\"day-grid\"\n [style.grid-template-rows]=\"'repeat(' + totalRows + ', 1fr)'\"\n [style.grid-template-columns]=\"'repeat(' + totalColumns + ', 1fr)'\">\n @for (row of hourRows; track row.topRow) {\n <div class=\"hour-line\"\n [style.grid-row]=\"row.topRow + '/' + row.bottomRow\"\n [style.grid-column]=\"'1 / -1'\">\n </div>\n }\n @if (currentTimeRow > 0 && isToday) {\n <div class=\"current-time-line\"\n [style.grid-row]=\"currentTimeRow\"\n [style.grid-column]=\"'1 / -1'\">\n <div class=\"current-time-dot\"></div>\n <div class=\"current-time-rule\"></div>\n </div>\n }\n @for (event of displayEvents; track event.id) {\n <div class=\"day-event\"\n [style.grid-row]=\"getEventRow(event)\"\n [style.grid-column]=\"getEventColumn(event)\"\n (click)=\"onEventClick(event)\">\n <app-calendar-event [event]=\"event\" [customComponent]=\"calendarEventComponent\"></app-calendar-event>\n </div>\n }\n </div>\n </div>\n</div>\n", styles: [".calendar-day{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden}.day-header{display:grid;grid-template-columns:60px 1fr;border-bottom:1px solid var(--color-base-300)}.time-gutter-header{min-width:60px}.day-column-header{text-align:center;padding:8px 4px;font-size:13px}.day-column-header.today{color:var(--color-primary);font-weight:700}.day-name{display:block;font-size:11px;text-transform:uppercase;color:var(--color-base-content, #6b7280);opacity:.7}.day-number{font-size:18px;font-weight:600}.day-body{display:grid;grid-template-columns:60px 1fr;flex:1;min-height:0;overflow:hidden;align-items:stretch}.time-gutter{display:grid;height:100%;min-height:0}.hour-label{font-size:11px;color:var(--color-base-content, #6b7280);opacity:.7;text-align:right;padding-right:8px;display:flex;align-items:start;min-height:0;overflow:hidden}.day-grid{display:grid;position:relative;grid-auto-rows:1fr;height:100%;min-height:0}.hour-line{border-top:1px solid var(--color-base-200);pointer-events:none;min-height:0}.day-event{z-index:1;padding:1px 2px;overflow:hidden;min-height:0}.current-time-line{position:relative;z-index:2;pointer-events:none}.current-time-dot{width:8px;height:8px;background:var(--color-error, #ef4444);border-radius:50%;position:absolute;left:-4px;top:-4px}.current-time-rule{height:2px;background:var(--color-error, #ef4444);width:100%}\n"] }]
|
|
5956
|
-
}], ctorParameters: () => [{ type: CalendarEventLayoutService }], propDecorators: { focusDay: [{
|
|
5966
|
+
}], ctorParameters: () => [{ type: CalendarEventLayoutService }, { type: i0.ChangeDetectorRef }], propDecorators: { focusDay: [{
|
|
5957
5967
|
type: Input
|
|
5958
5968
|
}], eventsChanged: [{
|
|
5959
5969
|
type: Input
|