@angular/material 20.2.7 → 20.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/datepicker/index.d.ts +34 -34
- package/fesm2022/animation.mjs.map +1 -1
- package/fesm2022/autocomplete/testing.mjs.map +1 -1
- package/fesm2022/autocomplete.mjs.map +1 -1
- package/fesm2022/badge/testing.mjs.map +1 -1
- package/fesm2022/badge.mjs.map +1 -1
- package/fesm2022/bottom-sheet/testing.mjs.map +1 -1
- package/fesm2022/bottom-sheet.mjs.map +1 -1
- package/fesm2022/button/testing.mjs.map +1 -1
- package/fesm2022/button-toggle/testing.mjs.map +1 -1
- package/fesm2022/button-toggle.mjs.map +1 -1
- package/fesm2022/button.mjs.map +1 -1
- package/fesm2022/card/testing.mjs.map +1 -1
- package/fesm2022/card.mjs.map +1 -1
- package/fesm2022/checkbox/testing.mjs.map +1 -1
- package/fesm2022/checkbox.mjs.map +1 -1
- package/fesm2022/chips/testing.mjs.map +1 -1
- package/fesm2022/chips.mjs.map +1 -1
- package/fesm2022/common-module.mjs.map +1 -1
- package/fesm2022/core/testing.mjs.map +1 -1
- package/fesm2022/core.mjs +1 -1
- package/fesm2022/core.mjs.map +1 -1
- package/fesm2022/date-formats.mjs.map +1 -1
- package/fesm2022/date-range-input-harness.mjs.map +1 -1
- package/fesm2022/datepicker/testing.mjs.map +1 -1
- package/fesm2022/datepicker.mjs +71 -72
- package/fesm2022/datepicker.mjs.map +1 -1
- package/fesm2022/dialog/testing.mjs.map +1 -1
- package/fesm2022/dialog-module.mjs.map +1 -1
- package/fesm2022/dialog.mjs.map +1 -1
- package/fesm2022/divider/testing.mjs.map +1 -1
- package/fesm2022/divider.mjs.map +1 -1
- package/fesm2022/error-options.mjs.map +1 -1
- package/fesm2022/error-state.mjs.map +1 -1
- package/fesm2022/expansion/testing.mjs.map +1 -1
- package/fesm2022/expansion.mjs.map +1 -1
- package/fesm2022/form-field/testing/control.mjs.map +1 -1
- package/fesm2022/form-field/testing.mjs.map +1 -1
- package/fesm2022/form-field-module.mjs.map +1 -1
- package/fesm2022/form-field.mjs.map +1 -1
- package/fesm2022/form-field2.mjs.map +1 -1
- package/fesm2022/grid-list/testing.mjs.map +1 -1
- package/fesm2022/grid-list.mjs.map +1 -1
- package/fesm2022/icon/testing.mjs.map +1 -1
- package/fesm2022/icon-button.mjs.map +1 -1
- package/fesm2022/icon-registry.mjs.map +1 -1
- package/fesm2022/icon.mjs.map +1 -1
- package/fesm2022/input/testing.mjs.map +1 -1
- package/fesm2022/input-harness.mjs.map +1 -1
- package/fesm2022/input-value-accessor.mjs.map +1 -1
- package/fesm2022/input.mjs.map +1 -1
- package/fesm2022/internal-form-field.mjs.map +1 -1
- package/fesm2022/line.mjs.map +1 -1
- package/fesm2022/list/testing.mjs.map +1 -1
- package/fesm2022/list.mjs.map +1 -1
- package/fesm2022/material.mjs.map +1 -1
- package/fesm2022/menu/testing.mjs.map +1 -1
- package/fesm2022/menu.mjs.map +1 -1
- package/fesm2022/option-harness.mjs.map +1 -1
- package/fesm2022/option-module.mjs.map +1 -1
- package/fesm2022/option.mjs.map +1 -1
- package/fesm2022/paginator/testing.mjs.map +1 -1
- package/fesm2022/paginator.mjs.map +1 -1
- package/fesm2022/progress-bar/testing.mjs.map +1 -1
- package/fesm2022/progress-bar.mjs.map +1 -1
- package/fesm2022/progress-spinner/testing.mjs.map +1 -1
- package/fesm2022/progress-spinner.mjs.map +1 -1
- package/fesm2022/pseudo-checkbox-module.mjs.map +1 -1
- package/fesm2022/pseudo-checkbox.mjs.map +1 -1
- package/fesm2022/public-api.mjs.map +1 -1
- package/fesm2022/radio/testing.mjs.map +1 -1
- package/fesm2022/radio.mjs +2 -2
- package/fesm2022/radio.mjs.map +1 -1
- package/fesm2022/ripple-loader.mjs.map +1 -1
- package/fesm2022/ripple-module.mjs.map +1 -1
- package/fesm2022/ripple.mjs.map +1 -1
- package/fesm2022/select/testing.mjs.map +1 -1
- package/fesm2022/select-module.mjs.map +1 -1
- package/fesm2022/select.mjs.map +1 -1
- package/fesm2022/sidenav/testing.mjs.map +1 -1
- package/fesm2022/sidenav.mjs.map +1 -1
- package/fesm2022/slide-toggle/testing.mjs.map +1 -1
- package/fesm2022/slide-toggle.mjs.map +1 -1
- package/fesm2022/slider/testing.mjs.map +1 -1
- package/fesm2022/slider.mjs.map +1 -1
- package/fesm2022/snack-bar/testing.mjs.map +1 -1
- package/fesm2022/snack-bar.mjs.map +1 -1
- package/fesm2022/sort/testing.mjs.map +1 -1
- package/fesm2022/sort.mjs.map +1 -1
- package/fesm2022/stepper/testing.mjs.map +1 -1
- package/fesm2022/stepper.mjs.map +1 -1
- package/fesm2022/structural-styles.mjs.map +1 -1
- package/fesm2022/table/testing.mjs.map +1 -1
- package/fesm2022/table.mjs.map +1 -1
- package/fesm2022/tabs/testing.mjs.map +1 -1
- package/fesm2022/tabs.mjs.map +1 -1
- package/fesm2022/timepicker/testing.mjs.map +1 -1
- package/fesm2022/timepicker.mjs +15 -9
- package/fesm2022/timepicker.mjs.map +1 -1
- package/fesm2022/toolbar/testing.mjs.map +1 -1
- package/fesm2022/toolbar.mjs.map +1 -1
- package/fesm2022/tooltip/testing.mjs.map +1 -1
- package/fesm2022/tooltip-module.mjs.map +1 -1
- package/fesm2022/tooltip.mjs.map +1 -1
- package/fesm2022/tooltip2.mjs.map +1 -1
- package/fesm2022/tree/testing.mjs.map +1 -1
- package/fesm2022/tree.mjs.map +1 -1
- package/package.json +2 -2
- package/schematics/ng-add/index.js +1 -1
- package/timepicker/index.d.ts +2 -0
package/fesm2022/datepicker.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, inject, ElementRef, NgZone, EventEmitter, Injector, Renderer2, afterNextRender, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, Output, Optional, SkipSelf, InjectionToken, ChangeDetectorRef, ViewChild, ViewContainerRef, DOCUMENT, booleanAttribute, Directive, forwardRef,
|
|
2
|
+
import { Injectable, inject, ElementRef, NgZone, EventEmitter, Injector, Renderer2, afterNextRender, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, Output, Optional, SkipSelf, InjectionToken, ChangeDetectorRef, signal, ViewChild, ViewContainerRef, DOCUMENT, booleanAttribute, Directive, forwardRef, HostAttributeToken, ContentChild, TemplateRef, NgModule } from '@angular/core';
|
|
3
3
|
import { Subject, Subscription, merge, of } from 'rxjs';
|
|
4
4
|
import { DateAdapter, MAT_DATE_FORMATS } from './date-formats.mjs';
|
|
5
5
|
import { _IdGenerator, CdkMonitorFocus, CdkTrapFocus, A11yModule } from '@angular/cdk/a11y';
|
|
@@ -547,7 +547,9 @@ class MatCalendarBody {
|
|
|
547
547
|
const row = cell.getAttribute('data-mat-row');
|
|
548
548
|
const col = cell.getAttribute('data-mat-col');
|
|
549
549
|
if (row && col) {
|
|
550
|
-
|
|
550
|
+
// We need the optional read here, because this can
|
|
551
|
+
// fire too late when the user is navigating quickly.
|
|
552
|
+
return this.rows[parseInt(row)]?.[parseInt(col)] || null;
|
|
551
553
|
}
|
|
552
554
|
}
|
|
553
555
|
return null;
|
|
@@ -1033,29 +1035,29 @@ class MatMonthView {
|
|
|
1033
1035
|
/** The body of calendar table */
|
|
1034
1036
|
_matCalendarBody;
|
|
1035
1037
|
/** The label for this month (e.g. "January 2017"). */
|
|
1036
|
-
_monthLabel;
|
|
1038
|
+
_monthLabel = signal('', ...(ngDevMode ? [{ debugName: "_monthLabel" }] : []));
|
|
1037
1039
|
/** Grid of calendar cells representing the dates of the month. */
|
|
1038
|
-
_weeks;
|
|
1040
|
+
_weeks = signal([], ...(ngDevMode ? [{ debugName: "_weeks" }] : []));
|
|
1039
1041
|
/** The number of blank cells in the first row before the 1st of the month. */
|
|
1040
|
-
_firstWeekOffset;
|
|
1042
|
+
_firstWeekOffset = signal(0, ...(ngDevMode ? [{ debugName: "_firstWeekOffset" }] : []));
|
|
1041
1043
|
/** Start value of the currently-shown date range. */
|
|
1042
|
-
_rangeStart;
|
|
1044
|
+
_rangeStart = signal(null, ...(ngDevMode ? [{ debugName: "_rangeStart" }] : []));
|
|
1043
1045
|
/** End value of the currently-shown date range. */
|
|
1044
|
-
_rangeEnd;
|
|
1046
|
+
_rangeEnd = signal(null, ...(ngDevMode ? [{ debugName: "_rangeEnd" }] : []));
|
|
1045
1047
|
/** Start value of the currently-shown comparison date range. */
|
|
1046
|
-
_comparisonRangeStart;
|
|
1048
|
+
_comparisonRangeStart = signal(null, ...(ngDevMode ? [{ debugName: "_comparisonRangeStart" }] : []));
|
|
1047
1049
|
/** End value of the currently-shown comparison date range. */
|
|
1048
|
-
_comparisonRangeEnd;
|
|
1050
|
+
_comparisonRangeEnd = signal(null, ...(ngDevMode ? [{ debugName: "_comparisonRangeEnd" }] : []));
|
|
1049
1051
|
/** Start of the preview range. */
|
|
1050
|
-
_previewStart;
|
|
1052
|
+
_previewStart = signal(null, ...(ngDevMode ? [{ debugName: "_previewStart" }] : []));
|
|
1051
1053
|
/** End of the preview range. */
|
|
1052
|
-
_previewEnd;
|
|
1054
|
+
_previewEnd = signal(null, ...(ngDevMode ? [{ debugName: "_previewEnd" }] : []));
|
|
1053
1055
|
/** Whether the user is currently selecting a range of dates. */
|
|
1054
|
-
_isRange;
|
|
1056
|
+
_isRange = signal(false, ...(ngDevMode ? [{ debugName: "_isRange" }] : []));
|
|
1055
1057
|
/** The date of the month that today falls on. Null if today is in another month. */
|
|
1056
|
-
_todayDate;
|
|
1058
|
+
_todayDate = signal(null, ...(ngDevMode ? [{ debugName: "_todayDate" }] : []));
|
|
1057
1059
|
/** The names of the weekdays. */
|
|
1058
|
-
_weekdays;
|
|
1060
|
+
_weekdays = signal([], ...(ngDevMode ? [{ debugName: "_weekdays" }] : []));
|
|
1059
1061
|
constructor() {
|
|
1060
1062
|
inject(_CdkPrivateStyleLoader).load(_VisuallyHiddenLoader);
|
|
1061
1063
|
if (typeof ngDevMode === 'undefined' || ngDevMode) {
|
|
@@ -1174,7 +1176,7 @@ class MatMonthView {
|
|
|
1174
1176
|
return;
|
|
1175
1177
|
case ESCAPE:
|
|
1176
1178
|
// Abort the current range selection if the user presses escape mid-selection.
|
|
1177
|
-
if (this._previewEnd != null && !hasModifierKey(event)) {
|
|
1179
|
+
if (this._previewEnd() != null && !hasModifierKey(event)) {
|
|
1178
1180
|
this._clearPreview();
|
|
1179
1181
|
// If a drag is in progress, cancel the drag without changing the
|
|
1180
1182
|
// current selection.
|
|
@@ -1212,17 +1214,16 @@ class MatMonthView {
|
|
|
1212
1214
|
/** Initializes this month view. */
|
|
1213
1215
|
_init() {
|
|
1214
1216
|
this._setRanges(this.selected);
|
|
1215
|
-
this._todayDate
|
|
1216
|
-
this._monthLabel
|
|
1217
|
+
this._todayDate.set(this._getCellCompareValue(this._dateAdapter.today()));
|
|
1218
|
+
this._monthLabel.set(this._dateFormats.display.monthLabel
|
|
1217
1219
|
? this._dateAdapter.format(this.activeDate, this._dateFormats.display.monthLabel)
|
|
1218
1220
|
: this._dateAdapter
|
|
1219
|
-
.getMonthNames('short')[this._dateAdapter.getMonth(this.activeDate)].toLocaleUpperCase();
|
|
1221
|
+
.getMonthNames('short')[this._dateAdapter.getMonth(this.activeDate)].toLocaleUpperCase());
|
|
1220
1222
|
let firstOfMonth = this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate), this._dateAdapter.getMonth(this.activeDate), 1);
|
|
1221
|
-
this._firstWeekOffset
|
|
1222
|
-
(
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
DAYS_PER_WEEK;
|
|
1223
|
+
this._firstWeekOffset.set((DAYS_PER_WEEK +
|
|
1224
|
+
this._dateAdapter.getDayOfWeek(firstOfMonth) -
|
|
1225
|
+
this._dateAdapter.getFirstDayOfWeek()) %
|
|
1226
|
+
DAYS_PER_WEEK);
|
|
1226
1227
|
this._initWeekdays();
|
|
1227
1228
|
this._createWeekCells();
|
|
1228
1229
|
this._changeDetectorRef.markForCheck();
|
|
@@ -1242,20 +1243,15 @@ class MatMonthView {
|
|
|
1242
1243
|
// events aren't fired for single date selections.
|
|
1243
1244
|
const value = cell ? cell.rawValue : null;
|
|
1244
1245
|
const previewRange = this._rangeStrategy.createPreview(value, this.selected, event);
|
|
1245
|
-
this._previewStart
|
|
1246
|
-
this._previewEnd
|
|
1246
|
+
this._previewStart.set(this._getCellCompareValue(previewRange.start));
|
|
1247
|
+
this._previewEnd.set(this._getCellCompareValue(previewRange.end));
|
|
1247
1248
|
if (this.activeDrag && value) {
|
|
1248
1249
|
const dragRange = this._rangeStrategy.createDrag?.(this.activeDrag.value, this.selected, value, event);
|
|
1249
1250
|
if (dragRange) {
|
|
1250
|
-
this._previewStart
|
|
1251
|
-
this._previewEnd
|
|
1251
|
+
this._previewStart.set(this._getCellCompareValue(dragRange.start));
|
|
1252
|
+
this._previewEnd.set(this._getCellCompareValue(dragRange.end));
|
|
1252
1253
|
}
|
|
1253
1254
|
}
|
|
1254
|
-
// Note that here we need to use `detectChanges`, rather than `markForCheck`, because
|
|
1255
|
-
// the way `_focusActiveCell` is set up at the moment makes it fire at the wrong time
|
|
1256
|
-
// when navigating one month back using the keyboard which will cause this handler
|
|
1257
|
-
// to throw a "changed after checked" error when updating the preview state.
|
|
1258
|
-
this._changeDetectorRef.detectChanges();
|
|
1259
1255
|
}
|
|
1260
1256
|
}
|
|
1261
1257
|
/**
|
|
@@ -1287,27 +1283,28 @@ class MatMonthView {
|
|
|
1287
1283
|
const narrowWeekdays = this._dateAdapter.getDayOfWeekNames('narrow');
|
|
1288
1284
|
const longWeekdays = this._dateAdapter.getDayOfWeekNames('long');
|
|
1289
1285
|
// Rotate the labels for days of the week based on the configured first day of the week.
|
|
1290
|
-
|
|
1286
|
+
const weekdays = longWeekdays.map((long, i) => {
|
|
1291
1287
|
return { long, narrow: narrowWeekdays[i], id: uniqueIdCounter++ };
|
|
1292
1288
|
});
|
|
1293
|
-
this._weekdays
|
|
1289
|
+
this._weekdays.set(weekdays.slice(firstDayOfWeek).concat(weekdays.slice(0, firstDayOfWeek)));
|
|
1294
1290
|
}
|
|
1295
1291
|
/** Creates MatCalendarCells for the dates in this month. */
|
|
1296
1292
|
_createWeekCells() {
|
|
1297
1293
|
const daysInMonth = this._dateAdapter.getNumDaysInMonth(this.activeDate);
|
|
1298
1294
|
const dateNames = this._dateAdapter.getDateNames();
|
|
1299
|
-
|
|
1300
|
-
for (let i = 0, cell = this._firstWeekOffset; i < daysInMonth; i++, cell++) {
|
|
1295
|
+
const weeks = [[]];
|
|
1296
|
+
for (let i = 0, cell = this._firstWeekOffset(); i < daysInMonth; i++, cell++) {
|
|
1301
1297
|
if (cell == DAYS_PER_WEEK) {
|
|
1302
|
-
|
|
1298
|
+
weeks.push([]);
|
|
1303
1299
|
cell = 0;
|
|
1304
1300
|
}
|
|
1305
1301
|
const date = this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate), this._dateAdapter.getMonth(this.activeDate), i + 1);
|
|
1306
1302
|
const enabled = this._shouldEnableDate(date);
|
|
1307
1303
|
const ariaLabel = this._dateAdapter.format(date, this._dateFormats.display.dateA11yLabel);
|
|
1308
1304
|
const cellClasses = this.dateClass ? this.dateClass(date, 'month') : undefined;
|
|
1309
|
-
|
|
1305
|
+
weeks[weeks.length - 1].push(new MatCalendarCell(i + 1, dateNames[i], ariaLabel, enabled, cellClasses, this._getCellCompareValue(date), date));
|
|
1310
1306
|
}
|
|
1307
|
+
this._weeks.set(weeks);
|
|
1311
1308
|
}
|
|
1312
1309
|
/** Date filter for the month */
|
|
1313
1310
|
_shouldEnableDate(date) {
|
|
@@ -1351,16 +1348,17 @@ class MatMonthView {
|
|
|
1351
1348
|
/** Sets the current range based on a model value. */
|
|
1352
1349
|
_setRanges(selectedValue) {
|
|
1353
1350
|
if (selectedValue instanceof DateRange) {
|
|
1354
|
-
this._rangeStart
|
|
1355
|
-
this._rangeEnd
|
|
1356
|
-
this._isRange
|
|
1351
|
+
this._rangeStart.set(this._getCellCompareValue(selectedValue.start));
|
|
1352
|
+
this._rangeEnd.set(this._getCellCompareValue(selectedValue.end));
|
|
1353
|
+
this._isRange.set(true);
|
|
1357
1354
|
}
|
|
1358
1355
|
else {
|
|
1359
|
-
this._rangeStart
|
|
1360
|
-
this.
|
|
1356
|
+
this._rangeStart.set(this._getCellCompareValue(selectedValue));
|
|
1357
|
+
this._rangeEnd.set(this._rangeStart());
|
|
1358
|
+
this._isRange.set(false);
|
|
1361
1359
|
}
|
|
1362
|
-
this._comparisonRangeStart
|
|
1363
|
-
this._comparisonRangeEnd
|
|
1360
|
+
this._comparisonRangeStart.set(this._getCellCompareValue(this.comparisonStart));
|
|
1361
|
+
this._comparisonRangeEnd.set(this._getCellCompareValue(this.comparisonEnd));
|
|
1364
1362
|
}
|
|
1365
1363
|
/** Gets whether a date can be selected in the month view. */
|
|
1366
1364
|
_canSelect(date) {
|
|
@@ -1368,14 +1366,15 @@ class MatMonthView {
|
|
|
1368
1366
|
}
|
|
1369
1367
|
/** Clears out preview state. */
|
|
1370
1368
|
_clearPreview() {
|
|
1371
|
-
this._previewStart
|
|
1369
|
+
this._previewStart.set(null);
|
|
1370
|
+
this._previewEnd.set(null);
|
|
1372
1371
|
}
|
|
1373
1372
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatMonthView, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1374
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.0-next.2", type: MatMonthView, isStandalone: true, selector: "mat-month-view", inputs: { activeDate: "activeDate", selected: "selected", minDate: "minDate", maxDate: "maxDate", dateFilter: "dateFilter", dateClass: "dateClass", comparisonStart: "comparisonStart", comparisonEnd: "comparisonEnd", startDateAccessibleName: "startDateAccessibleName", endDateAccessibleName: "endDateAccessibleName", activeDrag: "activeDrag" }, outputs: { selectedChange: "selectedChange", _userSelection: "_userSelection", dragStarted: "dragStarted", dragEnded: "dragEnded", activeDateChange: "activeDateChange" }, viewQueries: [{ propertyName: "_matCalendarBody", first: true, predicate: MatCalendarBody, descendants: true }], exportAs: ["matMonthView"], usesOnChanges: true, ngImport: i0, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead class=\"mat-calendar-table-header\">\n <tr>\n @for (day of _weekdays; track day.id) {\n <th scope=\"col\">\n <span class=\"cdk-visually-hidden\">{{day.long}}</span>\n <span aria-hidden=\"true\">{{day.narrow}}</span>\n </th>\n }\n </tr>\n <tr aria-hidden=\"true\"><th class=\"mat-calendar-table-header-divider\" colspan=\"7\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [label]=\"_monthLabel\"\n [rows]=\"_weeks\"\n [todayValue]=\"_todayDate!\"\n [startValue]=\"_rangeStart!\"\n [endValue]=\"_rangeEnd!\"\n [comparisonStart]=\"_comparisonRangeStart\"\n [comparisonEnd]=\"_comparisonRangeEnd\"\n [previewStart]=\"_previewStart\"\n [previewEnd]=\"_previewEnd\"\n [isRange]=\"_isRange\"\n [labelMinRequiredCells]=\"3\"\n [activeCell]=\"_dateAdapter.getDate(activeDate) - 1\"\n [startDateAccessibleName]=\"startDateAccessibleName\"\n [endDateAccessibleName]=\"endDateAccessibleName\"\n (selectedValueChange)=\"_dateSelected($event)\"\n (activeDateChange)=\"_updateActiveDate($event)\"\n (previewChange)=\"_previewChanged($event)\"\n (dragStarted)=\"dragStarted.emit($event)\"\n (dragEnded)=\"_dragEnded($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n", dependencies: [{ kind: "component", type: MatCalendarBody, selector: "[mat-calendar-body]", inputs: ["label", "rows", "todayValue", "startValue", "endValue", "labelMinRequiredCells", "numCols", "activeCell", "isRange", "cellAspectRatio", "comparisonStart", "comparisonEnd", "previewStart", "previewEnd", "startDateAccessibleName", "endDateAccessibleName"], outputs: ["selectedValueChange", "previewChange", "activeDateChange", "dragStarted", "dragEnded"], exportAs: ["matCalendarBody"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
1373
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.0-next.2", type: MatMonthView, isStandalone: true, selector: "mat-month-view", inputs: { activeDate: "activeDate", selected: "selected", minDate: "minDate", maxDate: "maxDate", dateFilter: "dateFilter", dateClass: "dateClass", comparisonStart: "comparisonStart", comparisonEnd: "comparisonEnd", startDateAccessibleName: "startDateAccessibleName", endDateAccessibleName: "endDateAccessibleName", activeDrag: "activeDrag" }, outputs: { selectedChange: "selectedChange", _userSelection: "_userSelection", dragStarted: "dragStarted", dragEnded: "dragEnded", activeDateChange: "activeDateChange" }, viewQueries: [{ propertyName: "_matCalendarBody", first: true, predicate: MatCalendarBody, descendants: true }], exportAs: ["matMonthView"], usesOnChanges: true, ngImport: i0, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead class=\"mat-calendar-table-header\">\n <tr>\n @for (day of _weekdays(); track day.id) {\n <th scope=\"col\">\n <span class=\"cdk-visually-hidden\">{{day.long}}</span>\n <span aria-hidden=\"true\">{{day.narrow}}</span>\n </th>\n }\n </tr>\n <tr aria-hidden=\"true\"><th class=\"mat-calendar-table-header-divider\" colspan=\"7\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [label]=\"_monthLabel()\"\n [rows]=\"_weeks()\"\n [todayValue]=\"_todayDate()!\"\n [startValue]=\"_rangeStart()!\"\n [endValue]=\"_rangeEnd()!\"\n [comparisonStart]=\"_comparisonRangeStart()\"\n [comparisonEnd]=\"_comparisonRangeEnd()\"\n [previewStart]=\"_previewStart()\"\n [previewEnd]=\"_previewEnd()\"\n [isRange]=\"_isRange()\"\n [labelMinRequiredCells]=\"3\"\n [activeCell]=\"_dateAdapter.getDate(activeDate) - 1\"\n [startDateAccessibleName]=\"startDateAccessibleName\"\n [endDateAccessibleName]=\"endDateAccessibleName\"\n (selectedValueChange)=\"_dateSelected($event)\"\n (activeDateChange)=\"_updateActiveDate($event)\"\n (previewChange)=\"_previewChanged($event)\"\n (dragStarted)=\"dragStarted.emit($event)\"\n (dragEnded)=\"_dragEnded($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n", dependencies: [{ kind: "component", type: MatCalendarBody, selector: "[mat-calendar-body]", inputs: ["label", "rows", "todayValue", "startValue", "endValue", "labelMinRequiredCells", "numCols", "activeCell", "isRange", "cellAspectRatio", "comparisonStart", "comparisonEnd", "previewStart", "previewEnd", "startDateAccessibleName", "endDateAccessibleName"], outputs: ["selectedValueChange", "previewChange", "activeDateChange", "dragStarted", "dragEnded"], exportAs: ["matCalendarBody"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
1375
1374
|
}
|
|
1376
1375
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatMonthView, decorators: [{
|
|
1377
1376
|
type: Component,
|
|
1378
|
-
args: [{ selector: 'mat-month-view', exportAs: 'matMonthView', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [MatCalendarBody], template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead class=\"mat-calendar-table-header\">\n <tr>\n @for (day of _weekdays; track day.id) {\n <th scope=\"col\">\n <span class=\"cdk-visually-hidden\">{{day.long}}</span>\n <span aria-hidden=\"true\">{{day.narrow}}</span>\n </th>\n }\n </tr>\n <tr aria-hidden=\"true\"><th class=\"mat-calendar-table-header-divider\" colspan=\"7\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [label]=\"_monthLabel\"\n [rows]=\"_weeks\"\n [todayValue]=\"_todayDate!\"\n [startValue]=\"_rangeStart!\"\n [endValue]=\"_rangeEnd!\"\n [comparisonStart]=\"_comparisonRangeStart\"\n [comparisonEnd]=\"_comparisonRangeEnd\"\n [previewStart]=\"_previewStart\"\n [previewEnd]=\"_previewEnd\"\n [isRange]=\"_isRange\"\n [labelMinRequiredCells]=\"3\"\n [activeCell]=\"_dateAdapter.getDate(activeDate) - 1\"\n [startDateAccessibleName]=\"startDateAccessibleName\"\n [endDateAccessibleName]=\"endDateAccessibleName\"\n (selectedValueChange)=\"_dateSelected($event)\"\n (activeDateChange)=\"_updateActiveDate($event)\"\n (previewChange)=\"_previewChanged($event)\"\n (dragStarted)=\"dragStarted.emit($event)\"\n (dragEnded)=\"_dragEnded($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n" }]
|
|
1377
|
+
args: [{ selector: 'mat-month-view', exportAs: 'matMonthView', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [MatCalendarBody], template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead class=\"mat-calendar-table-header\">\n <tr>\n @for (day of _weekdays(); track day.id) {\n <th scope=\"col\">\n <span class=\"cdk-visually-hidden\">{{day.long}}</span>\n <span aria-hidden=\"true\">{{day.narrow}}</span>\n </th>\n }\n </tr>\n <tr aria-hidden=\"true\"><th class=\"mat-calendar-table-header-divider\" colspan=\"7\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [label]=\"_monthLabel()\"\n [rows]=\"_weeks()\"\n [todayValue]=\"_todayDate()!\"\n [startValue]=\"_rangeStart()!\"\n [endValue]=\"_rangeEnd()!\"\n [comparisonStart]=\"_comparisonRangeStart()\"\n [comparisonEnd]=\"_comparisonRangeEnd()\"\n [previewStart]=\"_previewStart()\"\n [previewEnd]=\"_previewEnd()\"\n [isRange]=\"_isRange()\"\n [labelMinRequiredCells]=\"3\"\n [activeCell]=\"_dateAdapter.getDate(activeDate) - 1\"\n [startDateAccessibleName]=\"startDateAccessibleName\"\n [endDateAccessibleName]=\"endDateAccessibleName\"\n (selectedValueChange)=\"_dateSelected($event)\"\n (activeDateChange)=\"_updateActiveDate($event)\"\n (previewChange)=\"_previewChanged($event)\"\n (dragStarted)=\"dragStarted.emit($event)\"\n (dragEnded)=\"_dragEnded($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n" }]
|
|
1379
1378
|
}], ctorParameters: () => [], propDecorators: { activeDate: [{
|
|
1380
1379
|
type: Input
|
|
1381
1380
|
}], selected: [{
|
|
@@ -1483,11 +1482,11 @@ class MatMultiYearView {
|
|
|
1483
1482
|
/** The body of calendar table */
|
|
1484
1483
|
_matCalendarBody;
|
|
1485
1484
|
/** Grid of calendar cells representing the currently displayed years. */
|
|
1486
|
-
_years;
|
|
1485
|
+
_years = signal([], ...(ngDevMode ? [{ debugName: "_years" }] : []));
|
|
1487
1486
|
/** The year that today falls on. */
|
|
1488
|
-
_todayYear;
|
|
1487
|
+
_todayYear = signal(0, ...(ngDevMode ? [{ debugName: "_todayYear" }] : []));
|
|
1489
1488
|
/** The year of the selected date. Null if the selected date is null. */
|
|
1490
|
-
_selectedYear;
|
|
1489
|
+
_selectedYear = signal(null, ...(ngDevMode ? [{ debugName: "_selectedYear" }] : []));
|
|
1491
1490
|
constructor() {
|
|
1492
1491
|
if (!this._dateAdapter && (typeof ngDevMode === 'undefined' || ngDevMode)) {
|
|
1493
1492
|
throw createMissingDateImplError('DateAdapter');
|
|
@@ -1504,7 +1503,7 @@ class MatMultiYearView {
|
|
|
1504
1503
|
}
|
|
1505
1504
|
/** Initializes this multi-year view. */
|
|
1506
1505
|
_init() {
|
|
1507
|
-
this._todayYear
|
|
1506
|
+
this._todayYear.set(this._dateAdapter.getYear(this._dateAdapter.today()));
|
|
1508
1507
|
// We want a range years such that we maximize the number of
|
|
1509
1508
|
// enabled dates visible at once. This prevents issues where the minimum year
|
|
1510
1509
|
// is the last item of a page OR the maximum year is the first item of a page.
|
|
@@ -1512,14 +1511,15 @@ class MatMultiYearView {
|
|
|
1512
1511
|
// *actual* first rendered year in the multi-year view.
|
|
1513
1512
|
const activeYear = this._dateAdapter.getYear(this._activeDate);
|
|
1514
1513
|
const minYearOfPage = activeYear - getActiveOffset(this._dateAdapter, this.activeDate, this.minDate, this.maxDate);
|
|
1515
|
-
|
|
1514
|
+
const years = [];
|
|
1516
1515
|
for (let i = 0, row = []; i < yearsPerPage; i++) {
|
|
1517
1516
|
row.push(minYearOfPage + i);
|
|
1518
1517
|
if (row.length == yearsPerRow) {
|
|
1519
|
-
|
|
1518
|
+
years.push(row.map(year => this._createCellForYear(year)));
|
|
1520
1519
|
row = [];
|
|
1521
1520
|
}
|
|
1522
1521
|
}
|
|
1522
|
+
this._years.set(years);
|
|
1523
1523
|
this._changeDetectorRef.markForCheck();
|
|
1524
1524
|
}
|
|
1525
1525
|
/** Handles when a new year is selected. */
|
|
@@ -1663,23 +1663,23 @@ class MatMultiYearView {
|
|
|
1663
1663
|
}
|
|
1664
1664
|
/** Sets the currently-highlighted year based on a model value. */
|
|
1665
1665
|
_setSelectedYear(value) {
|
|
1666
|
-
this._selectedYear
|
|
1666
|
+
this._selectedYear.set(null);
|
|
1667
1667
|
if (value instanceof DateRange) {
|
|
1668
1668
|
const displayValue = value.start || value.end;
|
|
1669
1669
|
if (displayValue) {
|
|
1670
|
-
this._selectedYear
|
|
1670
|
+
this._selectedYear.set(this._dateAdapter.getYear(displayValue));
|
|
1671
1671
|
}
|
|
1672
1672
|
}
|
|
1673
1673
|
else if (value) {
|
|
1674
|
-
this._selectedYear
|
|
1674
|
+
this._selectedYear.set(this._dateAdapter.getYear(value));
|
|
1675
1675
|
}
|
|
1676
1676
|
}
|
|
1677
1677
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatMultiYearView, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1678
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.0-next.2", type: MatMultiYearView, isStandalone: true, selector: "mat-multi-year-view", inputs: { activeDate: "activeDate", selected: "selected", minDate: "minDate", maxDate: "maxDate", dateFilter: "dateFilter", dateClass: "dateClass" }, outputs: { selectedChange: "selectedChange", yearSelected: "yearSelected", activeDateChange: "activeDateChange" }, viewQueries: [{ propertyName: "_matCalendarBody", first: true, predicate: MatCalendarBody, descendants: true }], exportAs: ["matMultiYearView"], ngImport: i0, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr><th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [rows]=\"_years\"\n [todayValue]=\"_todayYear\"\n [startValue]=\"_selectedYear!\"\n [endValue]=\"_selectedYear!\"\n [numCols]=\"4\"\n [cellAspectRatio]=\"4 / 7\"\n [activeCell]=\"_getActiveCell()\"\n (selectedValueChange)=\"_yearSelected($event)\"\n (activeDateChange)=\"_updateActiveDate($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n", dependencies: [{ kind: "component", type: MatCalendarBody, selector: "[mat-calendar-body]", inputs: ["label", "rows", "todayValue", "startValue", "endValue", "labelMinRequiredCells", "numCols", "activeCell", "isRange", "cellAspectRatio", "comparisonStart", "comparisonEnd", "previewStart", "previewEnd", "startDateAccessibleName", "endDateAccessibleName"], outputs: ["selectedValueChange", "previewChange", "activeDateChange", "dragStarted", "dragEnded"], exportAs: ["matCalendarBody"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
1678
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.0-next.2", type: MatMultiYearView, isStandalone: true, selector: "mat-multi-year-view", inputs: { activeDate: "activeDate", selected: "selected", minDate: "minDate", maxDate: "maxDate", dateFilter: "dateFilter", dateClass: "dateClass" }, outputs: { selectedChange: "selectedChange", yearSelected: "yearSelected", activeDateChange: "activeDateChange" }, viewQueries: [{ propertyName: "_matCalendarBody", first: true, predicate: MatCalendarBody, descendants: true }], exportAs: ["matMultiYearView"], ngImport: i0, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr><th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [rows]=\"_years()\"\n [todayValue]=\"_todayYear()\"\n [startValue]=\"_selectedYear()!\"\n [endValue]=\"_selectedYear()!\"\n [numCols]=\"4\"\n [cellAspectRatio]=\"4 / 7\"\n [activeCell]=\"_getActiveCell()\"\n (selectedValueChange)=\"_yearSelected($event)\"\n (activeDateChange)=\"_updateActiveDate($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n", dependencies: [{ kind: "component", type: MatCalendarBody, selector: "[mat-calendar-body]", inputs: ["label", "rows", "todayValue", "startValue", "endValue", "labelMinRequiredCells", "numCols", "activeCell", "isRange", "cellAspectRatio", "comparisonStart", "comparisonEnd", "previewStart", "previewEnd", "startDateAccessibleName", "endDateAccessibleName"], outputs: ["selectedValueChange", "previewChange", "activeDateChange", "dragStarted", "dragEnded"], exportAs: ["matCalendarBody"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
1679
1679
|
}
|
|
1680
1680
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatMultiYearView, decorators: [{
|
|
1681
1681
|
type: Component,
|
|
1682
|
-
args: [{ selector: 'mat-multi-year-view', exportAs: 'matMultiYearView', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [MatCalendarBody], template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr><th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [rows]=\"_years\"\n [todayValue]=\"_todayYear\"\n [startValue]=\"_selectedYear!\"\n [endValue]=\"_selectedYear!\"\n [numCols]=\"4\"\n [cellAspectRatio]=\"4 / 7\"\n [activeCell]=\"_getActiveCell()\"\n (selectedValueChange)=\"_yearSelected($event)\"\n (activeDateChange)=\"_updateActiveDate($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n" }]
|
|
1682
|
+
args: [{ selector: 'mat-multi-year-view', exportAs: 'matMultiYearView', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [MatCalendarBody], template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr><th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [rows]=\"_years()\"\n [todayValue]=\"_todayYear()\"\n [startValue]=\"_selectedYear()!\"\n [endValue]=\"_selectedYear()!\"\n [numCols]=\"4\"\n [cellAspectRatio]=\"4 / 7\"\n [activeCell]=\"_getActiveCell()\"\n (selectedValueChange)=\"_yearSelected($event)\"\n (activeDateChange)=\"_updateActiveDate($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n" }]
|
|
1683
1683
|
}], ctorParameters: () => [], propDecorators: { activeDate: [{
|
|
1684
1684
|
type: Input
|
|
1685
1685
|
}], selected: [{
|
|
@@ -1807,16 +1807,16 @@ class MatYearView {
|
|
|
1807
1807
|
/** The body of calendar table */
|
|
1808
1808
|
_matCalendarBody;
|
|
1809
1809
|
/** Grid of calendar cells representing the months of the year. */
|
|
1810
|
-
_months;
|
|
1810
|
+
_months = signal([], ...(ngDevMode ? [{ debugName: "_months" }] : []));
|
|
1811
1811
|
/** The label for this year (e.g. "2017"). */
|
|
1812
|
-
_yearLabel;
|
|
1812
|
+
_yearLabel = signal('', ...(ngDevMode ? [{ debugName: "_yearLabel" }] : []));
|
|
1813
1813
|
/** The month in this year that today falls on. Null if today is in a different year. */
|
|
1814
|
-
_todayMonth;
|
|
1814
|
+
_todayMonth = signal(null, ...(ngDevMode ? [{ debugName: "_todayMonth" }] : []));
|
|
1815
1815
|
/**
|
|
1816
1816
|
* The month in this year that the selected Date falls on.
|
|
1817
1817
|
* Null if the selected Date is in a different year.
|
|
1818
1818
|
*/
|
|
1819
|
-
_selectedMonth;
|
|
1819
|
+
_selectedMonth = signal(null, ...(ngDevMode ? [{ debugName: "_selectedMonth" }] : []));
|
|
1820
1820
|
constructor() {
|
|
1821
1821
|
if (typeof ngDevMode === 'undefined' || ngDevMode) {
|
|
1822
1822
|
if (!this._dateAdapter) {
|
|
@@ -1925,15 +1925,15 @@ class MatYearView {
|
|
|
1925
1925
|
/** Initializes this year view. */
|
|
1926
1926
|
_init() {
|
|
1927
1927
|
this._setSelectedMonth(this.selected);
|
|
1928
|
-
this._todayMonth
|
|
1929
|
-
this._yearLabel
|
|
1928
|
+
this._todayMonth.set(this._getMonthInCurrentYear(this._dateAdapter.today()));
|
|
1929
|
+
this._yearLabel.set(this._dateAdapter.getYearName(this.activeDate));
|
|
1930
1930
|
let monthNames = this._dateAdapter.getMonthNames('short');
|
|
1931
1931
|
// First row of months only contains 5 elements so we can fit the year label on the same row.
|
|
1932
|
-
this._months
|
|
1932
|
+
this._months.set([
|
|
1933
1933
|
[0, 1, 2, 3],
|
|
1934
1934
|
[4, 5, 6, 7],
|
|
1935
1935
|
[8, 9, 10, 11],
|
|
1936
|
-
].map(row => row.map(month => this._createCellForMonth(month, monthNames[month])));
|
|
1936
|
+
].map(row => row.map(month => this._createCellForMonth(month, monthNames[month]))));
|
|
1937
1937
|
this._changeDetectorRef.markForCheck();
|
|
1938
1938
|
}
|
|
1939
1939
|
/** Focuses the active cell after the microtask queue is empty. */
|
|
@@ -2021,19 +2021,18 @@ class MatYearView {
|
|
|
2021
2021
|
/** Sets the currently-selected month based on a model value. */
|
|
2022
2022
|
_setSelectedMonth(value) {
|
|
2023
2023
|
if (value instanceof DateRange) {
|
|
2024
|
-
this._selectedMonth
|
|
2025
|
-
this._getMonthInCurrentYear(value.start) || this._getMonthInCurrentYear(value.end);
|
|
2024
|
+
this._selectedMonth.set(this._getMonthInCurrentYear(value.start) || this._getMonthInCurrentYear(value.end));
|
|
2026
2025
|
}
|
|
2027
2026
|
else {
|
|
2028
|
-
this._selectedMonth
|
|
2027
|
+
this._selectedMonth.set(this._getMonthInCurrentYear(value));
|
|
2029
2028
|
}
|
|
2030
2029
|
}
|
|
2031
2030
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatYearView, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2032
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.0-next.2", type: MatYearView, isStandalone: true, selector: "mat-year-view", inputs: { activeDate: "activeDate", selected: "selected", minDate: "minDate", maxDate: "maxDate", dateFilter: "dateFilter", dateClass: "dateClass" }, outputs: { selectedChange: "selectedChange", monthSelected: "monthSelected", activeDateChange: "activeDateChange" }, viewQueries: [{ propertyName: "_matCalendarBody", first: true, predicate: MatCalendarBody, descendants: true }], exportAs: ["matYearView"], ngImport: i0, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr><th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [label]=\"_yearLabel\"\n [rows]=\"_months\"\n [todayValue]=\"_todayMonth!\"\n [startValue]=\"_selectedMonth!\"\n [endValue]=\"_selectedMonth!\"\n [labelMinRequiredCells]=\"2\"\n [numCols]=\"4\"\n [cellAspectRatio]=\"4 / 7\"\n [activeCell]=\"_dateAdapter.getMonth(activeDate)\"\n (selectedValueChange)=\"_monthSelected($event)\"\n (activeDateChange)=\"_updateActiveDate($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n", dependencies: [{ kind: "component", type: MatCalendarBody, selector: "[mat-calendar-body]", inputs: ["label", "rows", "todayValue", "startValue", "endValue", "labelMinRequiredCells", "numCols", "activeCell", "isRange", "cellAspectRatio", "comparisonStart", "comparisonEnd", "previewStart", "previewEnd", "startDateAccessibleName", "endDateAccessibleName"], outputs: ["selectedValueChange", "previewChange", "activeDateChange", "dragStarted", "dragEnded"], exportAs: ["matCalendarBody"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
2031
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.0-next.2", type: MatYearView, isStandalone: true, selector: "mat-year-view", inputs: { activeDate: "activeDate", selected: "selected", minDate: "minDate", maxDate: "maxDate", dateFilter: "dateFilter", dateClass: "dateClass" }, outputs: { selectedChange: "selectedChange", monthSelected: "monthSelected", activeDateChange: "activeDateChange" }, viewQueries: [{ propertyName: "_matCalendarBody", first: true, predicate: MatCalendarBody, descendants: true }], exportAs: ["matYearView"], ngImport: i0, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr><th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [label]=\"_yearLabel()\"\n [rows]=\"_months()\"\n [todayValue]=\"_todayMonth()!\"\n [startValue]=\"_selectedMonth()!\"\n [endValue]=\"_selectedMonth()!\"\n [labelMinRequiredCells]=\"2\"\n [numCols]=\"4\"\n [cellAspectRatio]=\"4 / 7\"\n [activeCell]=\"_dateAdapter.getMonth(activeDate)\"\n (selectedValueChange)=\"_monthSelected($event)\"\n (activeDateChange)=\"_updateActiveDate($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n", dependencies: [{ kind: "component", type: MatCalendarBody, selector: "[mat-calendar-body]", inputs: ["label", "rows", "todayValue", "startValue", "endValue", "labelMinRequiredCells", "numCols", "activeCell", "isRange", "cellAspectRatio", "comparisonStart", "comparisonEnd", "previewStart", "previewEnd", "startDateAccessibleName", "endDateAccessibleName"], outputs: ["selectedValueChange", "previewChange", "activeDateChange", "dragStarted", "dragEnded"], exportAs: ["matCalendarBody"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
2033
2032
|
}
|
|
2034
2033
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatYearView, decorators: [{
|
|
2035
2034
|
type: Component,
|
|
2036
|
-
args: [{ selector: 'mat-year-view', exportAs: 'matYearView', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [MatCalendarBody], template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr><th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [label]=\"_yearLabel\"\n [rows]=\"_months\"\n [todayValue]=\"_todayMonth!\"\n [startValue]=\"_selectedMonth!\"\n [endValue]=\"_selectedMonth!\"\n [labelMinRequiredCells]=\"2\"\n [numCols]=\"4\"\n [cellAspectRatio]=\"4 / 7\"\n [activeCell]=\"_dateAdapter.getMonth(activeDate)\"\n (selectedValueChange)=\"_monthSelected($event)\"\n (activeDateChange)=\"_updateActiveDate($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n" }]
|
|
2035
|
+
args: [{ selector: 'mat-year-view', exportAs: 'matYearView', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [MatCalendarBody], template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr><th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th></tr>\n </thead>\n <tbody mat-calendar-body\n [label]=\"_yearLabel()\"\n [rows]=\"_months()\"\n [todayValue]=\"_todayMonth()!\"\n [startValue]=\"_selectedMonth()!\"\n [endValue]=\"_selectedMonth()!\"\n [labelMinRequiredCells]=\"2\"\n [numCols]=\"4\"\n [cellAspectRatio]=\"4 / 7\"\n [activeCell]=\"_dateAdapter.getMonth(activeDate)\"\n (selectedValueChange)=\"_monthSelected($event)\"\n (activeDateChange)=\"_updateActiveDate($event)\"\n (keyup)=\"_handleCalendarBodyKeyup($event)\"\n (keydown)=\"_handleCalendarBodyKeydown($event)\">\n </tbody>\n</table>\n" }]
|
|
2037
2036
|
}], ctorParameters: () => [], propDecorators: { activeDate: [{
|
|
2038
2037
|
type: Input
|
|
2039
2038
|
}], selected: [{
|