@ngx-mce/datetime-picker 21.2.5 → 21.2.6-next.2

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.
@@ -36,7 +36,6 @@ class NgxDateRange {
36
36
  * Ensures that objects with a `start` and `end` property can't be assigned to a variable that
37
37
  * expects a `DateRange`
38
38
  */
39
- // tslint:disable-next-line:no-unused-variable
40
39
  _disableStructuralEquivalency;
41
40
  constructor(
42
41
  /** The start date of the range. */
@@ -80,10 +79,10 @@ class NgxMatDateSelectionModel {
80
79
  _isValidDateInstance(date) {
81
80
  return this._adapter.isDateInstance(date) && this._adapter.isValid(date);
82
81
  }
83
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDateSelectionModel, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable });
84
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDateSelectionModel });
82
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDateSelectionModel, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable });
83
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDateSelectionModel });
85
84
  }
86
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDateSelectionModel, decorators: [{
85
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDateSelectionModel, decorators: [{
87
86
  type: Injectable
88
87
  }], ctorParameters: () => [{ type: undefined }, { type: i1.DateAdapter }] });
89
88
  /**
@@ -118,10 +117,10 @@ class NgxMatSingleDateSelectionModel extends NgxMatDateSelectionModel {
118
117
  clone.updateSelection(this.selection, this);
119
118
  return clone;
120
119
  }
121
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatSingleDateSelectionModel, deps: [{ token: i1.DateAdapter }], target: i0.ɵɵFactoryTarget.Injectable });
122
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatSingleDateSelectionModel });
120
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatSingleDateSelectionModel, deps: [{ token: i1.DateAdapter }], target: i0.ɵɵFactoryTarget.Injectable });
121
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatSingleDateSelectionModel });
123
122
  }
124
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatSingleDateSelectionModel, decorators: [{
123
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatSingleDateSelectionModel, decorators: [{
125
124
  type: Injectable
126
125
  }], ctorParameters: () => [{ type: i1.DateAdapter }] });
127
126
  /**
@@ -181,10 +180,10 @@ class NgxMatRangeDateSelectionModel extends NgxMatDateSelectionModel {
181
180
  clone.updateSelection(this.selection, this);
182
181
  return clone;
183
182
  }
184
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatRangeDateSelectionModel, deps: [{ token: i1.DateAdapter }], target: i0.ɵɵFactoryTarget.Injectable });
185
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatRangeDateSelectionModel });
183
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatRangeDateSelectionModel, deps: [{ token: i1.DateAdapter }], target: i0.ɵɵFactoryTarget.Injectable });
184
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatRangeDateSelectionModel });
186
185
  }
187
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatRangeDateSelectionModel, decorators: [{
186
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatRangeDateSelectionModel, decorators: [{
188
187
  type: Injectable
189
188
  }], ctorParameters: () => [{ type: i1.DateAdapter }] });
190
189
  /** @docs-private */
@@ -258,21 +257,21 @@ class NgxMatCalendarBody {
258
257
  */
259
258
  _focusActiveCellAfterViewChecked = false;
260
259
  /** The label for the table. (e.g. "Jan 2017"). */
261
- label = input(...(ngDevMode ? [undefined, { debugName: "label" }] : []));
260
+ label = input(...(ngDevMode ? [undefined, { debugName: "label" }] : /* istanbul ignore next */ []));
262
261
  /** The cells to display in the table. */
263
- rows = input(...(ngDevMode ? [undefined, { debugName: "rows" }] : []));
262
+ rows = input(...(ngDevMode ? [undefined, { debugName: "rows" }] : /* istanbul ignore next */ []));
264
263
  /** The value in the table that corresponds to today. */
265
- todayValue = input(...(ngDevMode ? [undefined, { debugName: "todayValue" }] : []));
264
+ todayValue = input(...(ngDevMode ? [undefined, { debugName: "todayValue" }] : /* istanbul ignore next */ []));
266
265
  /** Start value of the selected date range. */
267
- startValue = input(...(ngDevMode ? [undefined, { debugName: "startValue" }] : []));
266
+ startValue = input(...(ngDevMode ? [undefined, { debugName: "startValue" }] : /* istanbul ignore next */ []));
268
267
  /** End value of the selected date range. */
269
- endValue = input(...(ngDevMode ? [undefined, { debugName: "endValue" }] : []));
268
+ endValue = input(...(ngDevMode ? [undefined, { debugName: "endValue" }] : /* istanbul ignore next */ []));
270
269
  /** The minimum number of free cells needed to fit the label in the first row. */
271
- labelMinRequiredCells = input(...(ngDevMode ? [undefined, { debugName: "labelMinRequiredCells" }] : []));
270
+ labelMinRequiredCells = input(...(ngDevMode ? [undefined, { debugName: "labelMinRequiredCells" }] : /* istanbul ignore next */ []));
272
271
  /** The number of columns in the table. */
273
- numCols = input(7, ...(ngDevMode ? [{ debugName: "numCols" }] : []));
272
+ numCols = input(7, ...(ngDevMode ? [{ debugName: "numCols" }] : /* istanbul ignore next */ []));
274
273
  /** The cell number of the active cell in the table. */
275
- activeCell = input(0, ...(ngDevMode ? [{ debugName: "activeCell" }] : []));
274
+ activeCell = input(0, ...(ngDevMode ? [{ debugName: "activeCell" }] : /* istanbul ignore next */ []));
276
275
  ngAfterViewChecked() {
277
276
  if (this._focusActiveCellAfterViewChecked) {
278
277
  this._focusActiveCell();
@@ -280,24 +279,24 @@ class NgxMatCalendarBody {
280
279
  }
281
280
  }
282
281
  /** Whether a range is being selected. */
283
- isRange = input(false, ...(ngDevMode ? [{ debugName: "isRange" }] : []));
282
+ isRange = input(false, ...(ngDevMode ? [{ debugName: "isRange" }] : /* istanbul ignore next */ []));
284
283
  /**
285
284
  * The aspect ratio (width / height) to use for the cells in the table. This aspect ratio will be
286
285
  * maintained even as the table resizes.
287
286
  */
288
- cellAspectRatio = input(1, ...(ngDevMode ? [{ debugName: "cellAspectRatio" }] : []));
287
+ cellAspectRatio = input(1, ...(ngDevMode ? [{ debugName: "cellAspectRatio" }] : /* istanbul ignore next */ []));
289
288
  /** Start of the comparison range. */
290
- comparisonStart = input(...(ngDevMode ? [undefined, { debugName: "comparisonStart" }] : []));
289
+ comparisonStart = input(...(ngDevMode ? [undefined, { debugName: "comparisonStart" }] : /* istanbul ignore next */ []));
291
290
  /** End of the comparison range. */
292
- comparisonEnd = input(...(ngDevMode ? [undefined, { debugName: "comparisonEnd" }] : []));
291
+ comparisonEnd = input(...(ngDevMode ? [undefined, { debugName: "comparisonEnd" }] : /* istanbul ignore next */ []));
293
292
  /** Start of the preview range. */
294
- previewStart = input(null, ...(ngDevMode ? [{ debugName: "previewStart" }] : []));
293
+ previewStart = input(null, ...(ngDevMode ? [{ debugName: "previewStart" }] : /* istanbul ignore next */ []));
295
294
  /** End of the preview range. */
296
- previewEnd = input(null, ...(ngDevMode ? [{ debugName: "previewEnd" }] : []));
295
+ previewEnd = input(null, ...(ngDevMode ? [{ debugName: "previewEnd" }] : /* istanbul ignore next */ []));
297
296
  /** ARIA Accessible name of the `<input matStartDate/>` */
298
- startDateAccessibleName = input(...(ngDevMode ? [undefined, { debugName: "startDateAccessibleName" }] : []));
297
+ startDateAccessibleName = input(...(ngDevMode ? [undefined, { debugName: "startDateAccessibleName" }] : /* istanbul ignore next */ []));
299
298
  /** ARIA Accessible name of the `<input matEndDate/>` */
300
- endDateAccessibleName = input(...(ngDevMode ? [undefined, { debugName: "endDateAccessibleName" }] : []));
299
+ endDateAccessibleName = input(...(ngDevMode ? [undefined, { debugName: "endDateAccessibleName" }] : /* istanbul ignore next */ []));
301
300
  /** Emits when a new value is selected. */
302
301
  selectedValueChange = output();
303
302
  /** Emits when the preview has changed as a result of a user action. */
@@ -312,17 +311,17 @@ class NgxMatCalendarBody {
312
311
  const rows = this.rows();
313
312
  const numCols = this.numCols();
314
313
  return rows && rows.length && rows[0].length ? numCols - rows[0].length : 0;
315
- }, ...(ngDevMode ? [{ debugName: "_firstRowOffset" }] : []));
314
+ }, ...(ngDevMode ? [{ debugName: "_firstRowOffset" }] : /* istanbul ignore next */ []));
316
315
  /** Padding for the individual date cells. */
317
316
  _cellPadding = computed(() => {
318
317
  const numCols = this.numCols();
319
318
  const cellAspectRatio = this.cellAspectRatio();
320
319
  return `${(50 * cellAspectRatio) / numCols}%`;
321
- }, ...(ngDevMode ? [{ debugName: "_cellPadding" }] : []));
320
+ }, ...(ngDevMode ? [{ debugName: "_cellPadding" }] : /* istanbul ignore next */ []));
322
321
  /** Width of an individual cell. */
323
322
  _cellWidth = computed(() => {
324
323
  return `${100 / this.numCols()}%`;
325
- }, ...(ngDevMode ? [{ debugName: "_cellWidth" }] : []));
324
+ }, ...(ngDevMode ? [{ debugName: "_cellWidth" }] : /* istanbul ignore next */ []));
326
325
  _didDragSinceMouseDown = false;
327
326
  constructor(_elementRef, _ngZone) {
328
327
  this._elementRef = _elementRef;
@@ -602,10 +601,10 @@ class NgxMatCalendarBody {
602
601
  _id = `mat-calendar-body-${calendarBodyId++}`;
603
602
  _startDateLabelId = `${this._id}-start-date`;
604
603
  _endDateLabelId = `${this._id}-end-date`;
605
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatCalendarBody, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
606
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.5", type: NgxMatCalendarBody, isStandalone: true, selector: "[ngx-mat-calendar-body]", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, rows: { classPropertyName: "rows", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null }, todayValue: { classPropertyName: "todayValue", publicName: "todayValue", isSignal: true, isRequired: false, transformFunction: null }, startValue: { classPropertyName: "startValue", publicName: "startValue", isSignal: true, isRequired: false, transformFunction: null }, endValue: { classPropertyName: "endValue", publicName: "endValue", isSignal: true, isRequired: false, transformFunction: null }, labelMinRequiredCells: { classPropertyName: "labelMinRequiredCells", publicName: "labelMinRequiredCells", isSignal: true, isRequired: false, transformFunction: null }, numCols: { classPropertyName: "numCols", publicName: "numCols", isSignal: true, isRequired: false, transformFunction: null }, activeCell: { classPropertyName: "activeCell", publicName: "activeCell", isSignal: true, isRequired: false, transformFunction: null }, isRange: { classPropertyName: "isRange", publicName: "isRange", isSignal: true, isRequired: false, transformFunction: null }, cellAspectRatio: { classPropertyName: "cellAspectRatio", publicName: "cellAspectRatio", isSignal: true, isRequired: false, transformFunction: null }, comparisonStart: { classPropertyName: "comparisonStart", publicName: "comparisonStart", isSignal: true, isRequired: false, transformFunction: null }, comparisonEnd: { classPropertyName: "comparisonEnd", publicName: "comparisonEnd", isSignal: true, isRequired: false, transformFunction: null }, previewStart: { classPropertyName: "previewStart", publicName: "previewStart", isSignal: true, isRequired: false, transformFunction: null }, previewEnd: { classPropertyName: "previewEnd", publicName: "previewEnd", isSignal: true, isRequired: false, transformFunction: null }, startDateAccessibleName: { classPropertyName: "startDateAccessibleName", publicName: "startDateAccessibleName", isSignal: true, isRequired: false, transformFunction: null }, endDateAccessibleName: { classPropertyName: "endDateAccessibleName", publicName: "endDateAccessibleName", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedValueChange: "selectedValueChange", previewChange: "previewChange", activeDateChange: "activeDateChange", dragStarted: "dragStarted", dragEnded: "dragEnded" }, host: { classAttribute: "ngx-mat-calendar-body" }, exportAs: ["matCalendarBody"], ngImport: i0, template: "<!--\nIf there's not enough space in the first row, create a separate label row. We mark this row as\naria-hidden because we don't want it to be read out as one of the weeks in the month.\n-->\n@if (_firstRowOffset()! < labelMinRequiredCells()!) {\n <tr aria-hidden=\"true\">\n <td\n class=\"mat-calendar-body-label\"\n [attr.colspan]=\"numCols()\"\n [style.paddingTop]=\"_cellPadding()\"\n [style.paddingBottom]=\"_cellPadding()\">\n {{ label() }}\n </td>\n </tr>\n}\n\n<!-- Create the first row separately so we can include a special spacer cell. -->\n@for (row of rows(); track rowIndex; let rowIndex = $index) {\n <tr role=\"row\">\n <!--\n This cell is purely decorative, but we can't put `aria-hidden` or `role=\"presentation\"` on it,\n because it throws off the week days for the rest of the row on NVDA. The aspect ratio of the\n table cells is maintained by setting the top and bottom padding as a percentage of the width\n (a variant of the trick described here: https://www.w3schools.com/howto/howto_css_aspect_ratio.asp).\n -->\n @if (rowIndex === 0 && _firstRowOffset()) {\n <td\n class=\"mat-calendar-body-label\"\n [attr.colspan]=\"_firstRowOffset()\"\n [style.paddingTop]=\"_cellPadding()\"\n [style.paddingBottom]=\"_cellPadding()\">\n {{ _firstRowOffset()! >= labelMinRequiredCells()! ? label() : '' }}\n </td>\n }\n <!--\n Each gridcell in the calendar contains a button, which signals to assistive technology that the\n cell is interactable, as well as the selection state via `aria-pressed`. See #23476 for\n background.\n -->\n @for (item of row; track colIndex; let colIndex = $index) {\n <td\n role=\"gridcell\"\n class=\"mat-calendar-body-cell-container\"\n [style.width]=\"_cellWidth()\"\n [style.paddingTop]=\"_cellPadding()\"\n [style.paddingBottom]=\"_cellPadding()\"\n [attr.data-mat-row]=\"rowIndex\"\n [attr.data-mat-col]=\"colIndex\">\n <button\n type=\"button\"\n class=\"mat-calendar-body-cell\"\n [ngClass]=\"item.cssClasses\"\n [tabindex]=\"_isActiveCell(rowIndex, colIndex) ? 0 : -1\"\n [class.mat-calendar-body-disabled]=\"!item.enabled\"\n [class.mat-calendar-body-active]=\"_isActiveCell(rowIndex, colIndex)\"\n [class.mat-calendar-body-range-start]=\"_isRangeStart(item.compareValue)\"\n [class.mat-calendar-body-range-end]=\"_isRangeEnd(item.compareValue)\"\n [class.mat-calendar-body-in-range]=\"_isInRange(item.compareValue)\"\n [class.mat-calendar-body-comparison-bridge-start]=\"\n _isComparisonBridgeStart(item.compareValue, rowIndex, colIndex)\n \"\n [class.mat-calendar-body-comparison-bridge-end]=\"\n _isComparisonBridgeEnd(item.compareValue, rowIndex, colIndex)\n \"\n [class.mat-calendar-body-comparison-start]=\"_isComparisonStart(item.compareValue)\"\n [class.mat-calendar-body-comparison-end]=\"_isComparisonEnd(item.compareValue)\"\n [class.mat-calendar-body-in-comparison-range]=\"_isInComparisonRange(item.compareValue)\"\n [class.mat-calendar-body-preview-start]=\"_isPreviewStart(item.compareValue)\"\n [class.mat-calendar-body-preview-end]=\"_isPreviewEnd(item.compareValue)\"\n [class.mat-calendar-body-in-preview]=\"_isInPreview(item.compareValue)\"\n [attr.aria-label]=\"item.ariaLabel\"\n [attr.aria-disabled]=\"!item.enabled || null\"\n [attr.aria-pressed]=\"_isSelected(item.compareValue)\"\n [attr.aria-current]=\"todayValue() === item.compareValue ? 'date' : null\"\n [attr.aria-describedby]=\"_getDescribedby(item.compareValue)\"\n (click)=\"_cellClicked(item, $event)\"\n (focus)=\"_emitActiveDateChange(item, $event)\">\n <span\n class=\"mat-calendar-body-cell-content mat-focus-indicator\"\n [class.mat-calendar-body-selected]=\"_isSelected(item.compareValue)\"\n [class.mat-calendar-body-comparison-identical]=\"\n _isComparisonIdentical(item.compareValue)\n \"\n [class.mat-calendar-body-today]=\"todayValue() === item.compareValue\">\n {{ item.displayValue }}\n </span>\n <span class=\"mat-calendar-body-cell-preview\" aria-hidden=\"true\"></span>\n </button>\n </td>\n }\n </tr>\n}\n\n<label [id]=\"_startDateLabelId\" class=\"mat-calendar-body-hidden-label\">\n {{ startDateAccessibleName() }}\n</label>\n<label [id]=\"_endDateLabelId\" class=\"mat-calendar-body-hidden-label\">\n {{ endDateAccessibleName() }}\n</label>\n", styles: [".mat-calendar-body{min-width:224px}.mat-calendar-body-label{height:0;line-height:0;padding-left:4.7142857143%;padding-right:4.7142857143%;text-align:start;font-size:var(--mat-datepicker-calendar-body-label-text-size, var(--mat-sys-title-small-size));font-weight:var(--mat-datepicker-calendar-body-label-text-weight, var(--mat-sys-title-small-weight));color:var(--mat-datepicker-calendar-body-label-text-color, var(--mat-sys-on-surface))}.mat-calendar-body-hidden-label{display:none}.mat-calendar-body-cell-container{position:relative;height:0;line-height:0}.mat-calendar-body-cell-container .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:var(--mat-datepicker-calendar-date-hover-state-background-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%), transparent))}.mat-calendar-body-disabled>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){color:var(--mat-datepicker-calendar-date-disabled-state-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-calendar-body-cell{-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent}.mat-calendar-body-cell::-moz-focus-inner{border:0}.mat-calendar-body-cell{position:absolute;top:0;left:0;width:100%;height:100%;background:none;text-align:center;outline:none;font-family:var(--mat-datepicker-calendar-text-font, var(--mat-sys-body-medium-font));font-size:var(--mat-datepicker-calendar-text-size, var(--mat-sys-body-medium-size));margin:0}.mat-calendar-body-cell:before,.mat-calendar-body-cell:after,.mat-calendar-body-cell-preview{content:\"\";position:absolute;top:5%;left:0;z-index:0;box-sizing:border-box;display:block;height:90%;width:100%}.mat-calendar-body-range-start:not(.mat-calendar-body-in-comparison-range):before,.mat-calendar-body-range-start:after,.mat-calendar-body-comparison-start:not(.mat-calendar-body-comparison-bridge-start):before,.mat-calendar-body-comparison-start:after,.mat-calendar-body-preview-start .mat-calendar-body-cell-preview{left:5%;width:95%;border-top-left-radius:999px;border-bottom-left-radius:999px}[dir=rtl] .mat-calendar-body-range-start:not(.mat-calendar-body-in-comparison-range):before,[dir=rtl] .mat-calendar-body-range-start:after,[dir=rtl] .mat-calendar-body-comparison-start:not(.mat-calendar-body-comparison-bridge-start):before,[dir=rtl] .mat-calendar-body-comparison-start:after,[dir=rtl] .mat-calendar-body-preview-start .mat-calendar-body-cell-preview{left:0;border-radius:0 999px 999px 0}.mat-calendar-body-range-end:not(.mat-calendar-body-in-comparison-range):before,.mat-calendar-body-range-end:after,.mat-calendar-body-comparison-end:not(.mat-calendar-body-comparison-bridge-end):before,.mat-calendar-body-comparison-end:after,.mat-calendar-body-preview-end .mat-calendar-body-cell-preview{width:95%;border-top-right-radius:999px;border-bottom-right-radius:999px}[dir=rtl] .mat-calendar-body-range-end:not(.mat-calendar-body-in-comparison-range):before,[dir=rtl] .mat-calendar-body-range-end:after,[dir=rtl] .mat-calendar-body-comparison-end:not(.mat-calendar-body-comparison-bridge-end):before,[dir=rtl] .mat-calendar-body-comparison-end:after,[dir=rtl] .mat-calendar-body-preview-end .mat-calendar-body-cell-preview{left:5%;border-radius:999px 0 0 999px}[dir=rtl] .mat-calendar-body-comparison-bridge-start.mat-calendar-body-range-end:after,[dir=rtl] .mat-calendar-body-comparison-bridge-end.mat-calendar-body-range-start:after{width:95%;border-top-right-radius:999px;border-bottom-right-radius:999px}.mat-calendar-body-comparison-start.mat-calendar-body-range-end:after,[dir=rtl] .mat-calendar-body-comparison-start.mat-calendar-body-range-end:after,.mat-calendar-body-comparison-end.mat-calendar-body-range-start:after,[dir=rtl] .mat-calendar-body-comparison-end.mat-calendar-body-range-start:after{width:90%}.mat-calendar-body-in-preview .mat-calendar-body-cell-preview{border-top:dashed 1px;border-bottom:dashed 1px}.mat-calendar-body-preview-start .mat-calendar-body-cell-preview{border-left:dashed 1px}[dir=rtl] .mat-calendar-body-preview-start .mat-calendar-body-cell-preview{border-left:0;border-right:dashed 1px}.mat-calendar-body-preview-end .mat-calendar-body-cell-preview{border-right:dashed 1px}[dir=rtl] .mat-calendar-body-preview-end .mat-calendar-body-cell-preview{border-right:0;border-left:dashed 1px}.mat-calendar-body-disabled{cursor:default}@media(forced-colors:active){.mat-calendar-body-disabled{opacity:.5}}.mat-calendar-body-cell-content{top:5%;left:5%;z-index:1;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:90%;height:90%;line-height:1;border-width:1px;border-style:solid;border-radius:999px;color:var(--mat-datepicker-calendar-date-text-color, var(--mat-sys-on-surface));border-color:var(--mat-datepicker-calendar-date-outline-color, transparent)}.mat-calendar-body-cell-content.mat-calendar-body-selected{background-color:var(--mat-datepicker-calendar-date-selected-state-background-color, var(--mat-sys-primary));color:var(--mat-datepicker-calendar-date-selected-state-text-color, var(--mat-sys-on-primary))}.mat-calendar-body-cell-content.mat-calendar-body-today:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){border-color:var(--mat-datepicker-calendar-date-today-outline-color, var(--mat-sys-primary))}.mat-calendar-body-cell-content.mat-focus-indicator{position:absolute}@media(forced-colors:active){.mat-calendar-body-cell-content{border:none}}@media(forced-colors:active){.mat-datepicker-popup:not(:empty),.mat-calendar-body-cell:not(.mat-calendar-body-in-range) .mat-calendar-body-selected{outline:solid 1px}.mat-calendar-body-today{outline:dotted 1px}.mat-calendar-body-cell:before,.mat-calendar-body-cell:after,.mat-calendar-body-selected{background:none}.mat-calendar-body-in-range:before,.mat-calendar-body-comparison-bridge-start:before,.mat-calendar-body-comparison-bridge-end:before{border-top:solid 1px;border-bottom:solid 1px}.mat-calendar-body-range-start:before{border-left:solid 1px}[dir=rtl] .mat-calendar-body-range-start:before{border-left:0;border-right:solid 1px}.mat-calendar-body-range-end:before{border-right:solid 1px}[dir=rtl] .mat-calendar-body-range-end:before{border-right:0;border-left:solid 1px}.mat-calendar-body-in-comparison-range:before{border-top:dashed 1px;border-bottom:dashed 1px}.mat-calendar-body-comparison-start:before{border-left:dashed 1px}[dir=rtl] .mat-calendar-body-comparison-start:before{border-left:0;border-right:dashed 1px}.mat-calendar-body-comparison-end:before{border-right:dashed 1px}[dir=rtl] .mat-calendar-body-comparison-end:before{border-right:0;border-left:dashed 1px}}[dir=rtl] .mat-calendar-body-label{text-align:right}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
604
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatCalendarBody, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
605
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.6", type: NgxMatCalendarBody, isStandalone: true, selector: "[ngx-mat-calendar-body]", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, rows: { classPropertyName: "rows", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null }, todayValue: { classPropertyName: "todayValue", publicName: "todayValue", isSignal: true, isRequired: false, transformFunction: null }, startValue: { classPropertyName: "startValue", publicName: "startValue", isSignal: true, isRequired: false, transformFunction: null }, endValue: { classPropertyName: "endValue", publicName: "endValue", isSignal: true, isRequired: false, transformFunction: null }, labelMinRequiredCells: { classPropertyName: "labelMinRequiredCells", publicName: "labelMinRequiredCells", isSignal: true, isRequired: false, transformFunction: null }, numCols: { classPropertyName: "numCols", publicName: "numCols", isSignal: true, isRequired: false, transformFunction: null }, activeCell: { classPropertyName: "activeCell", publicName: "activeCell", isSignal: true, isRequired: false, transformFunction: null }, isRange: { classPropertyName: "isRange", publicName: "isRange", isSignal: true, isRequired: false, transformFunction: null }, cellAspectRatio: { classPropertyName: "cellAspectRatio", publicName: "cellAspectRatio", isSignal: true, isRequired: false, transformFunction: null }, comparisonStart: { classPropertyName: "comparisonStart", publicName: "comparisonStart", isSignal: true, isRequired: false, transformFunction: null }, comparisonEnd: { classPropertyName: "comparisonEnd", publicName: "comparisonEnd", isSignal: true, isRequired: false, transformFunction: null }, previewStart: { classPropertyName: "previewStart", publicName: "previewStart", isSignal: true, isRequired: false, transformFunction: null }, previewEnd: { classPropertyName: "previewEnd", publicName: "previewEnd", isSignal: true, isRequired: false, transformFunction: null }, startDateAccessibleName: { classPropertyName: "startDateAccessibleName", publicName: "startDateAccessibleName", isSignal: true, isRequired: false, transformFunction: null }, endDateAccessibleName: { classPropertyName: "endDateAccessibleName", publicName: "endDateAccessibleName", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedValueChange: "selectedValueChange", previewChange: "previewChange", activeDateChange: "activeDateChange", dragStarted: "dragStarted", dragEnded: "dragEnded" }, host: { classAttribute: "ngx-mat-calendar-body" }, exportAs: ["matCalendarBody"], ngImport: i0, template: "<!--\nIf there's not enough space in the first row, create a separate label row. We mark this row as\naria-hidden because we don't want it to be read out as one of the weeks in the month.\n-->\n@if (_firstRowOffset()! < labelMinRequiredCells()!) {\n <tr aria-hidden=\"true\">\n <td\n class=\"mat-calendar-body-label\"\n [attr.colspan]=\"numCols()\"\n [style.paddingTop]=\"_cellPadding()\"\n [style.paddingBottom]=\"_cellPadding()\">\n {{ label() }}\n </td>\n </tr>\n}\n\n<!-- Create the first row separately so we can include a special spacer cell. -->\n@for (row of rows(); track rowIndex; let rowIndex = $index) {\n <tr role=\"row\">\n <!--\n This cell is purely decorative, but we can't put `aria-hidden` or `role=\"presentation\"` on it,\n because it throws off the week days for the rest of the row on NVDA. The aspect ratio of the\n table cells is maintained by setting the top and bottom padding as a percentage of the width\n (a variant of the trick described here: https://www.w3schools.com/howto/howto_css_aspect_ratio.asp).\n -->\n @if (rowIndex === 0 && _firstRowOffset()) {\n <td\n class=\"mat-calendar-body-label\"\n [attr.colspan]=\"_firstRowOffset()\"\n [style.paddingTop]=\"_cellPadding()\"\n [style.paddingBottom]=\"_cellPadding()\">\n {{ _firstRowOffset()! >= labelMinRequiredCells()! ? label() : '' }}\n </td>\n }\n <!--\n Each gridcell in the calendar contains a button, which signals to assistive technology that the\n cell is interactable, as well as the selection state via `aria-pressed`. See #23476 for\n background.\n -->\n @for (item of row; track colIndex; let colIndex = $index) {\n <td\n role=\"gridcell\"\n class=\"mat-calendar-body-cell-container\"\n [style.width]=\"_cellWidth()\"\n [style.paddingTop]=\"_cellPadding()\"\n [style.paddingBottom]=\"_cellPadding()\"\n [attr.data-mat-row]=\"rowIndex\"\n [attr.data-mat-col]=\"colIndex\">\n <button\n type=\"button\"\n class=\"mat-calendar-body-cell\"\n [ngClass]=\"item.cssClasses\"\n [tabindex]=\"_isActiveCell(rowIndex, colIndex) ? 0 : -1\"\n [class.mat-calendar-body-disabled]=\"!item.enabled\"\n [class.mat-calendar-body-active]=\"_isActiveCell(rowIndex, colIndex)\"\n [class.mat-calendar-body-range-start]=\"_isRangeStart(item.compareValue)\"\n [class.mat-calendar-body-range-end]=\"_isRangeEnd(item.compareValue)\"\n [class.mat-calendar-body-in-range]=\"_isInRange(item.compareValue)\"\n [class.mat-calendar-body-comparison-bridge-start]=\"\n _isComparisonBridgeStart(item.compareValue, rowIndex, colIndex)\n \"\n [class.mat-calendar-body-comparison-bridge-end]=\"\n _isComparisonBridgeEnd(item.compareValue, rowIndex, colIndex)\n \"\n [class.mat-calendar-body-comparison-start]=\"_isComparisonStart(item.compareValue)\"\n [class.mat-calendar-body-comparison-end]=\"_isComparisonEnd(item.compareValue)\"\n [class.mat-calendar-body-in-comparison-range]=\"_isInComparisonRange(item.compareValue)\"\n [class.mat-calendar-body-preview-start]=\"_isPreviewStart(item.compareValue)\"\n [class.mat-calendar-body-preview-end]=\"_isPreviewEnd(item.compareValue)\"\n [class.mat-calendar-body-in-preview]=\"_isInPreview(item.compareValue)\"\n [attr.aria-label]=\"item.ariaLabel\"\n [attr.aria-disabled]=\"!item.enabled || null\"\n [attr.aria-pressed]=\"_isSelected(item.compareValue)\"\n [attr.aria-current]=\"todayValue() === item.compareValue ? 'date' : null\"\n [attr.aria-describedby]=\"_getDescribedby(item.compareValue)\"\n (click)=\"_cellClicked(item, $event)\"\n (focus)=\"_emitActiveDateChange(item, $event)\">\n <span\n class=\"mat-calendar-body-cell-content mat-focus-indicator\"\n [class.mat-calendar-body-selected]=\"_isSelected(item.compareValue)\"\n [class.mat-calendar-body-comparison-identical]=\"\n _isComparisonIdentical(item.compareValue)\n \"\n [class.mat-calendar-body-today]=\"todayValue() === item.compareValue\">\n {{ item.displayValue }}\n </span>\n <span class=\"mat-calendar-body-cell-preview\" aria-hidden=\"true\"></span>\n </button>\n </td>\n }\n </tr>\n}\n\n<label [id]=\"_startDateLabelId\" class=\"mat-calendar-body-hidden-label\">\n {{ startDateAccessibleName() }}\n</label>\n<label [id]=\"_endDateLabelId\" class=\"mat-calendar-body-hidden-label\">\n {{ endDateAccessibleName() }}\n</label>\n", styles: [".mat-calendar-body{min-width:224px}.mat-calendar-body-label{height:0;line-height:0;padding-left:4.7142857143%;padding-right:4.7142857143%;text-align:start;font-size:var(--mat-datepicker-calendar-body-label-text-size, var(--mat-sys-title-small-size));font-weight:var(--mat-datepicker-calendar-body-label-text-weight, var(--mat-sys-title-small-weight));color:var(--mat-datepicker-calendar-body-label-text-color, var(--mat-sys-on-surface))}.mat-calendar-body-hidden-label{display:none}.mat-calendar-body-cell-container{position:relative;height:0;line-height:0}.mat-calendar-body-cell-container .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:var(--mat-datepicker-calendar-date-hover-state-background-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%), transparent))}.mat-calendar-body-disabled>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){color:var(--mat-datepicker-calendar-date-disabled-state-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-calendar-body-cell{-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent}.mat-calendar-body-cell::-moz-focus-inner{border:0}.mat-calendar-body-cell{position:absolute;top:0;left:0;width:100%;height:100%;background:none;text-align:center;outline:none;font-family:var(--mat-datepicker-calendar-text-font, var(--mat-sys-body-medium-font));font-size:var(--mat-datepicker-calendar-text-size, var(--mat-sys-body-medium-size));margin:0}.mat-calendar-body-cell:before,.mat-calendar-body-cell:after,.mat-calendar-body-cell-preview{content:\"\";position:absolute;top:5%;left:0;z-index:0;box-sizing:border-box;display:block;height:90%;width:100%}.mat-calendar-body-range-start:not(.mat-calendar-body-in-comparison-range):before,.mat-calendar-body-range-start:after,.mat-calendar-body-comparison-start:not(.mat-calendar-body-comparison-bridge-start):before,.mat-calendar-body-comparison-start:after,.mat-calendar-body-preview-start .mat-calendar-body-cell-preview{left:5%;width:95%;border-top-left-radius:999px;border-bottom-left-radius:999px}[dir=rtl] .mat-calendar-body-range-start:not(.mat-calendar-body-in-comparison-range):before,[dir=rtl] .mat-calendar-body-range-start:after,[dir=rtl] .mat-calendar-body-comparison-start:not(.mat-calendar-body-comparison-bridge-start):before,[dir=rtl] .mat-calendar-body-comparison-start:after,[dir=rtl] .mat-calendar-body-preview-start .mat-calendar-body-cell-preview{left:0;border-radius:0 999px 999px 0}.mat-calendar-body-range-end:not(.mat-calendar-body-in-comparison-range):before,.mat-calendar-body-range-end:after,.mat-calendar-body-comparison-end:not(.mat-calendar-body-comparison-bridge-end):before,.mat-calendar-body-comparison-end:after,.mat-calendar-body-preview-end .mat-calendar-body-cell-preview{width:95%;border-top-right-radius:999px;border-bottom-right-radius:999px}[dir=rtl] .mat-calendar-body-range-end:not(.mat-calendar-body-in-comparison-range):before,[dir=rtl] .mat-calendar-body-range-end:after,[dir=rtl] .mat-calendar-body-comparison-end:not(.mat-calendar-body-comparison-bridge-end):before,[dir=rtl] .mat-calendar-body-comparison-end:after,[dir=rtl] .mat-calendar-body-preview-end .mat-calendar-body-cell-preview{left:5%;border-radius:999px 0 0 999px}[dir=rtl] .mat-calendar-body-comparison-bridge-start.mat-calendar-body-range-end:after,[dir=rtl] .mat-calendar-body-comparison-bridge-end.mat-calendar-body-range-start:after{width:95%;border-top-right-radius:999px;border-bottom-right-radius:999px}.mat-calendar-body-comparison-start.mat-calendar-body-range-end:after,[dir=rtl] .mat-calendar-body-comparison-start.mat-calendar-body-range-end:after,.mat-calendar-body-comparison-end.mat-calendar-body-range-start:after,[dir=rtl] .mat-calendar-body-comparison-end.mat-calendar-body-range-start:after{width:90%}.mat-calendar-body-in-preview .mat-calendar-body-cell-preview{border-top:dashed 1px;border-bottom:dashed 1px}.mat-calendar-body-preview-start .mat-calendar-body-cell-preview{border-left:dashed 1px}[dir=rtl] .mat-calendar-body-preview-start .mat-calendar-body-cell-preview{border-left:0;border-right:dashed 1px}.mat-calendar-body-preview-end .mat-calendar-body-cell-preview{border-right:dashed 1px}[dir=rtl] .mat-calendar-body-preview-end .mat-calendar-body-cell-preview{border-right:0;border-left:dashed 1px}.mat-calendar-body-disabled{cursor:default}@media(forced-colors:active){.mat-calendar-body-disabled{opacity:.5}}.mat-calendar-body-cell-content{top:5%;left:5%;z-index:1;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:90%;height:90%;line-height:1;border-width:1px;border-style:solid;border-radius:999px;color:var(--mat-datepicker-calendar-date-text-color, var(--mat-sys-on-surface));border-color:var(--mat-datepicker-calendar-date-outline-color, transparent)}.mat-calendar-body-cell-content.mat-calendar-body-selected{background-color:var(--mat-datepicker-calendar-date-selected-state-background-color, var(--mat-sys-primary));color:var(--mat-datepicker-calendar-date-selected-state-text-color, var(--mat-sys-on-primary))}.mat-calendar-body-cell-content.mat-calendar-body-today:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){border-color:var(--mat-datepicker-calendar-date-today-outline-color, var(--mat-sys-primary))}.mat-calendar-body-cell-content.mat-focus-indicator{position:absolute}@media(forced-colors:active){.mat-calendar-body-cell-content{border:none}}@media(forced-colors:active){.mat-datepicker-popup:not(:empty),.mat-calendar-body-cell:not(.mat-calendar-body-in-range) .mat-calendar-body-selected{outline:solid 1px}.mat-calendar-body-today{outline:dotted 1px}.mat-calendar-body-cell:before,.mat-calendar-body-cell:after,.mat-calendar-body-selected{background:none}.mat-calendar-body-in-range:before,.mat-calendar-body-comparison-bridge-start:before,.mat-calendar-body-comparison-bridge-end:before{border-top:solid 1px;border-bottom:solid 1px}.mat-calendar-body-range-start:before{border-left:solid 1px}[dir=rtl] .mat-calendar-body-range-start:before{border-left:0;border-right:solid 1px}.mat-calendar-body-range-end:before{border-right:solid 1px}[dir=rtl] .mat-calendar-body-range-end:before{border-right:0;border-left:solid 1px}.mat-calendar-body-in-comparison-range:before{border-top:dashed 1px;border-bottom:dashed 1px}.mat-calendar-body-comparison-start:before{border-left:dashed 1px}[dir=rtl] .mat-calendar-body-comparison-start:before{border-left:0;border-right:dashed 1px}.mat-calendar-body-comparison-end:before{border-right:dashed 1px}[dir=rtl] .mat-calendar-body-comparison-end:before{border-right:0;border-left:dashed 1px}}[dir=rtl] .mat-calendar-body-label{text-align:right}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
607
606
  }
608
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatCalendarBody, decorators: [{
607
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatCalendarBody, decorators: [{
609
608
  type: Component,
610
609
  args: [{ selector: '[ngx-mat-calendar-body]', host: {
611
610
  class: 'ngx-mat-calendar-body',
@@ -727,10 +726,10 @@ class DefaultNgxMatCalendarRangeStrategy {
727
726
  }
728
727
  return new NgxDateRange(start, end);
729
728
  }
730
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: DefaultNgxMatCalendarRangeStrategy, deps: [{ token: i1.DateAdapter }], target: i0.ɵɵFactoryTarget.Injectable });
731
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: DefaultNgxMatCalendarRangeStrategy });
729
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: DefaultNgxMatCalendarRangeStrategy, deps: [{ token: i1.DateAdapter }], target: i0.ɵɵFactoryTarget.Injectable });
730
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: DefaultNgxMatCalendarRangeStrategy });
732
731
  }
733
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: DefaultNgxMatCalendarRangeStrategy, decorators: [{
732
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: DefaultNgxMatCalendarRangeStrategy, decorators: [{
734
733
  type: Injectable
735
734
  }], ctorParameters: () => [{ type: i1.DateAdapter }] });
736
735
  /** @docs-private */
@@ -804,19 +803,19 @@ class NgxMatMonthView {
804
803
  }
805
804
  _maxDate = null;
806
805
  /** Function used to filter which dates are selectable. */
807
- dateFilter = input(...(ngDevMode ? [undefined, { debugName: "dateFilter" }] : []));
806
+ dateFilter = input(...(ngDevMode ? [undefined, { debugName: "dateFilter" }] : /* istanbul ignore next */ []));
808
807
  /** Function that can be used to add custom CSS classes to dates. */
809
- dateClass = input(...(ngDevMode ? [undefined, { debugName: "dateClass" }] : []));
808
+ dateClass = input(...(ngDevMode ? [undefined, { debugName: "dateClass" }] : /* istanbul ignore next */ []));
810
809
  /** Start of the comparison range. */
811
- comparisonStart = input(...(ngDevMode ? [undefined, { debugName: "comparisonStart" }] : []));
810
+ comparisonStart = input(...(ngDevMode ? [undefined, { debugName: "comparisonStart" }] : /* istanbul ignore next */ []));
812
811
  /** End of the comparison range. */
813
- comparisonEnd = input(...(ngDevMode ? [undefined, { debugName: "comparisonEnd" }] : []));
812
+ comparisonEnd = input(...(ngDevMode ? [undefined, { debugName: "comparisonEnd" }] : /* istanbul ignore next */ []));
814
813
  /** ARIA Accessible name of the `<input matStartDate/>` */
815
- startDateAccessibleName = input(...(ngDevMode ? [undefined, { debugName: "startDateAccessibleName" }] : []));
814
+ startDateAccessibleName = input(...(ngDevMode ? [undefined, { debugName: "startDateAccessibleName" }] : /* istanbul ignore next */ []));
816
815
  /** ARIA Accessible name of the `<input matEndDate/>` */
817
- endDateAccessibleName = input(...(ngDevMode ? [undefined, { debugName: "endDateAccessibleName" }] : []));
816
+ endDateAccessibleName = input(...(ngDevMode ? [undefined, { debugName: "endDateAccessibleName" }] : /* istanbul ignore next */ []));
818
817
  /** Origin of active drag, or null when dragging is not active. */
819
- activeDrag = input(null, ...(ngDevMode ? [{ debugName: "activeDrag" }] : []));
818
+ activeDrag = input(null, ...(ngDevMode ? [{ debugName: "activeDrag" }] : /* istanbul ignore next */ []));
820
819
  /** Emits when a new date is selected. */
821
820
  selectedChange = output();
822
821
  /** Emits when any date is selected. */
@@ -831,7 +830,7 @@ class NgxMatMonthView {
831
830
  /** Emits when any date is activated. */
832
831
  activeDateChange = output();
833
832
  /** The body of calendar table */
834
- _matCalendarBody = viewChild(NgxMatCalendarBody, ...(ngDevMode ? [{ debugName: "_matCalendarBody" }] : []));
833
+ _matCalendarBody = viewChild(NgxMatCalendarBody, ...(ngDevMode ? [{ debugName: "_matCalendarBody" }] : /* istanbul ignore next */ []));
835
834
  /** The label for this month (e.g. "January 2017"). */
836
835
  _monthLabel = "";
837
836
  /** Grid of calendar cells representing the dates of the month. */
@@ -1022,7 +1021,7 @@ class NgxMatMonthView {
1022
1021
  ? this._dateAdapter.format(this.activeDate, this._dateFormats.display.monthLabel)
1023
1022
  : this._dateAdapter
1024
1023
  .getMonthNames('short')[this._dateAdapter.getMonth(this.activeDate)].toLocaleUpperCase();
1025
- let firstOfMonth = this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate), this._dateAdapter.getMonth(this.activeDate), 1);
1024
+ const firstOfMonth = this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate), this._dateAdapter.getMonth(this.activeDate), 1);
1026
1025
  this._firstWeekOffset =
1027
1026
  (DAYS_PER_WEEK +
1028
1027
  this._dateAdapter.getDayOfWeek(firstOfMonth) -
@@ -1095,7 +1094,7 @@ class NgxMatMonthView {
1095
1094
  const narrowWeekdays = this._dateAdapter.getDayOfWeekNames('narrow');
1096
1095
  const longWeekdays = this._dateAdapter.getDayOfWeekNames('long');
1097
1096
  // Rotate the labels for days of the week based on the configured first day of the week.
1098
- let weekdays = longWeekdays.map((long, i) => {
1097
+ const weekdays = longWeekdays.map((long, i) => {
1099
1098
  return { long, narrow: narrowWeekdays[i] };
1100
1099
  });
1101
1100
  this._weekdays = weekdays.slice(firstDayOfWeek).concat(weekdays.slice(0, firstDayOfWeek));
@@ -1178,10 +1177,10 @@ class NgxMatMonthView {
1178
1177
  _clearPreview() {
1179
1178
  this._previewStart = this._previewEnd = null;
1180
1179
  }
1181
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatMonthView, deps: [{ token: i0.ChangeDetectorRef }, { token: MAT_DATE_FORMATS, optional: true }, { token: i1.DateAdapter, optional: true }, { token: i2.Directionality, optional: true }, { token: NGX_MAT_DATE_RANGE_SELECTION_STRATEGY, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1182
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.5", type: NgxMatMonthView, isStandalone: true, selector: "ngx-mat-month-view", inputs: { activeDate: { classPropertyName: "activeDate", publicName: "activeDate", isSignal: false, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: false, isRequired: false, transformFunction: null }, minDate: { classPropertyName: "minDate", publicName: "minDate", isSignal: false, isRequired: false, transformFunction: null }, maxDate: { classPropertyName: "maxDate", publicName: "maxDate", isSignal: false, isRequired: false, transformFunction: null }, dateFilter: { classPropertyName: "dateFilter", publicName: "dateFilter", isSignal: true, isRequired: false, transformFunction: null }, dateClass: { classPropertyName: "dateClass", publicName: "dateClass", isSignal: true, isRequired: false, transformFunction: null }, comparisonStart: { classPropertyName: "comparisonStart", publicName: "comparisonStart", isSignal: true, isRequired: false, transformFunction: null }, comparisonEnd: { classPropertyName: "comparisonEnd", publicName: "comparisonEnd", isSignal: true, isRequired: false, transformFunction: null }, startDateAccessibleName: { classPropertyName: "startDateAccessibleName", publicName: "startDateAccessibleName", isSignal: true, isRequired: false, transformFunction: null }, endDateAccessibleName: { classPropertyName: "endDateAccessibleName", publicName: "endDateAccessibleName", isSignal: true, isRequired: false, transformFunction: null }, activeDrag: { classPropertyName: "activeDrag", publicName: "activeDrag", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedChange: "selectedChange", _userSelection: "_userSelection", dragStarted: "dragStarted", dragEnded: "dragEnded", activeDateChange: "activeDateChange" }, viewQueries: [{ propertyName: "_matCalendarBody", first: true, predicate: NgxMatCalendarBody, descendants: true, isSignal: true }], exportAs: ["ngxMatMonthView"], 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 $index) {\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>\n <th\n aria-hidden=\"true\"\n class=\"mat-calendar-table-header-divider\"\n colspan=\"7\"\n ></th>\n </tr>\n </thead>\n <tbody\n ngx-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: NgxMatCalendarBody, selector: "[ngx-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 });
1180
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatMonthView, deps: [{ token: i0.ChangeDetectorRef }, { token: MAT_DATE_FORMATS, optional: true }, { token: i1.DateAdapter, optional: true }, { token: i2.Directionality, optional: true }, { token: NGX_MAT_DATE_RANGE_SELECTION_STRATEGY, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1181
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.6", type: NgxMatMonthView, isStandalone: true, selector: "ngx-mat-month-view", inputs: { activeDate: { classPropertyName: "activeDate", publicName: "activeDate", isSignal: false, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: false, isRequired: false, transformFunction: null }, minDate: { classPropertyName: "minDate", publicName: "minDate", isSignal: false, isRequired: false, transformFunction: null }, maxDate: { classPropertyName: "maxDate", publicName: "maxDate", isSignal: false, isRequired: false, transformFunction: null }, dateFilter: { classPropertyName: "dateFilter", publicName: "dateFilter", isSignal: true, isRequired: false, transformFunction: null }, dateClass: { classPropertyName: "dateClass", publicName: "dateClass", isSignal: true, isRequired: false, transformFunction: null }, comparisonStart: { classPropertyName: "comparisonStart", publicName: "comparisonStart", isSignal: true, isRequired: false, transformFunction: null }, comparisonEnd: { classPropertyName: "comparisonEnd", publicName: "comparisonEnd", isSignal: true, isRequired: false, transformFunction: null }, startDateAccessibleName: { classPropertyName: "startDateAccessibleName", publicName: "startDateAccessibleName", isSignal: true, isRequired: false, transformFunction: null }, endDateAccessibleName: { classPropertyName: "endDateAccessibleName", publicName: "endDateAccessibleName", isSignal: true, isRequired: false, transformFunction: null }, activeDrag: { classPropertyName: "activeDrag", publicName: "activeDrag", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedChange: "selectedChange", _userSelection: "_userSelection", dragStarted: "dragStarted", dragEnded: "dragEnded", activeDateChange: "activeDateChange" }, viewQueries: [{ propertyName: "_matCalendarBody", first: true, predicate: NgxMatCalendarBody, descendants: true, isSignal: true }], exportAs: ["ngxMatMonthView"], 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 $index) {\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>\n <th\n aria-hidden=\"true\"\n class=\"mat-calendar-table-header-divider\"\n colspan=\"7\"\n ></th>\n </tr>\n </thead>\n <tbody\n ngx-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: NgxMatCalendarBody, selector: "[ngx-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 });
1183
1182
  }
1184
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatMonthView, decorators: [{
1183
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatMonthView, decorators: [{
1185
1184
  type: Component,
1186
1185
  args: [{ selector: 'ngx-mat-month-view', exportAs: 'ngxMatMonthView', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgxMatCalendarBody], template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead class=\"mat-calendar-table-header\">\n <tr>\n @for (day of _weekdays; track $index) {\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>\n <th\n aria-hidden=\"true\"\n class=\"mat-calendar-table-header-divider\"\n colspan=\"7\"\n ></th>\n </tr>\n </thead>\n <tbody\n ngx-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" }]
1187
1186
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
@@ -1226,7 +1225,7 @@ class NgxMatMultiYearView {
1226
1225
  return this._activeDate;
1227
1226
  }
1228
1227
  set activeDate(value) {
1229
- let oldActiveDate = this._activeDate;
1228
+ const oldActiveDate = this._activeDate;
1230
1229
  const validDate = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value)) ||
1231
1230
  this._dateAdapter.today();
1232
1231
  this._activeDate = this._dateAdapter.clampDate(validDate, this.minDate, this.maxDate);
@@ -1266,9 +1265,9 @@ class NgxMatMultiYearView {
1266
1265
  }
1267
1266
  _maxDate = null;
1268
1267
  /** A function used to filter which dates are selectable. */
1269
- dateFilter = input(...(ngDevMode ? [undefined, { debugName: "dateFilter" }] : []));
1268
+ dateFilter = input(...(ngDevMode ? [undefined, { debugName: "dateFilter" }] : /* istanbul ignore next */ []));
1270
1269
  /** Function that can be used to add custom CSS classes to date cells. */
1271
- dateClass = input(...(ngDevMode ? [undefined, { debugName: "dateClass" }] : []));
1270
+ dateClass = input(...(ngDevMode ? [undefined, { debugName: "dateClass" }] : /* istanbul ignore next */ []));
1272
1271
  /** Emits when a new year is selected. */
1273
1272
  selectedChange = output();
1274
1273
  /** Emits the selected year. This doesn't imply a change on the selected date */
@@ -1276,7 +1275,7 @@ class NgxMatMultiYearView {
1276
1275
  /** Emits when any date is activated. */
1277
1276
  activeDateChange = output();
1278
1277
  /** The body of calendar table */
1279
- _matCalendarBody = viewChild(NgxMatCalendarBody, ...(ngDevMode ? [{ debugName: "_matCalendarBody" }] : []));
1278
+ _matCalendarBody = viewChild(NgxMatCalendarBody, ...(ngDevMode ? [{ debugName: "_matCalendarBody" }] : /* istanbul ignore next */ []));
1280
1279
  /** Grid of calendar cells representing the currently displayed years. */
1281
1280
  _years = null;
1282
1281
  /** The year that today falls on. */
@@ -1475,10 +1474,10 @@ class NgxMatMultiYearView {
1475
1474
  this._selectedYear = this._dateAdapter.getYear(value);
1476
1475
  }
1477
1476
  }
1478
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatMultiYearView, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.DateAdapter, optional: true }, { token: i2.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1479
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.1.5", type: NgxMatMultiYearView, isStandalone: true, selector: "ngx-mat-multi-year-view", inputs: { activeDate: { classPropertyName: "activeDate", publicName: "activeDate", isSignal: false, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: false, isRequired: false, transformFunction: null }, minDate: { classPropertyName: "minDate", publicName: "minDate", isSignal: false, isRequired: false, transformFunction: null }, maxDate: { classPropertyName: "maxDate", publicName: "maxDate", isSignal: false, isRequired: false, transformFunction: null }, dateFilter: { classPropertyName: "dateFilter", publicName: "dateFilter", isSignal: true, isRequired: false, transformFunction: null }, dateClass: { classPropertyName: "dateClass", publicName: "dateClass", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedChange: "selectedChange", yearSelected: "yearSelected", activeDateChange: "activeDateChange" }, viewQueries: [{ propertyName: "_matCalendarBody", first: true, predicate: NgxMatCalendarBody, descendants: true, isSignal: true }], exportAs: ["ngxMatMultiYearView"], ngImport: i0, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr>\n <th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th>\n </tr>\n </thead>\n <tbody\n ngx-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: NgxMatCalendarBody, selector: "[ngx-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 });
1477
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatMultiYearView, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.DateAdapter, optional: true }, { token: i2.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1478
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.6", type: NgxMatMultiYearView, isStandalone: true, selector: "ngx-mat-multi-year-view", inputs: { activeDate: { classPropertyName: "activeDate", publicName: "activeDate", isSignal: false, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: false, isRequired: false, transformFunction: null }, minDate: { classPropertyName: "minDate", publicName: "minDate", isSignal: false, isRequired: false, transformFunction: null }, maxDate: { classPropertyName: "maxDate", publicName: "maxDate", isSignal: false, isRequired: false, transformFunction: null }, dateFilter: { classPropertyName: "dateFilter", publicName: "dateFilter", isSignal: true, isRequired: false, transformFunction: null }, dateClass: { classPropertyName: "dateClass", publicName: "dateClass", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedChange: "selectedChange", yearSelected: "yearSelected", activeDateChange: "activeDateChange" }, viewQueries: [{ propertyName: "_matCalendarBody", first: true, predicate: NgxMatCalendarBody, descendants: true, isSignal: true }], exportAs: ["ngxMatMultiYearView"], ngImport: i0, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr>\n <th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th>\n </tr>\n </thead>\n <tbody\n ngx-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: NgxMatCalendarBody, selector: "[ngx-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 });
1480
1479
  }
1481
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatMultiYearView, decorators: [{
1480
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatMultiYearView, decorators: [{
1482
1481
  type: Component,
1483
1482
  args: [{ selector: 'ngx-mat-multi-year-view', exportAs: 'ngxMatMultiYearView', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgxMatCalendarBody], template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr>\n <th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th>\n </tr>\n </thead>\n <tbody\n ngx-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" }]
1484
1483
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.DateAdapter, decorators: [{
@@ -1547,7 +1546,7 @@ class NgxMatYearView {
1547
1546
  return this._activeDate;
1548
1547
  }
1549
1548
  set activeDate(value) {
1550
- let oldActiveDate = this._activeDate;
1549
+ const oldActiveDate = this._activeDate;
1551
1550
  const validDate = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value)) ||
1552
1551
  this._dateAdapter.today();
1553
1552
  this._activeDate = this._dateAdapter.clampDate(validDate, this.minDate, this.maxDate);
@@ -1587,9 +1586,9 @@ class NgxMatYearView {
1587
1586
  }
1588
1587
  _maxDate = null;
1589
1588
  /** A function used to filter which dates are selectable. */
1590
- dateFilter = input(...(ngDevMode ? [undefined, { debugName: "dateFilter" }] : []));
1589
+ dateFilter = input(...(ngDevMode ? [undefined, { debugName: "dateFilter" }] : /* istanbul ignore next */ []));
1591
1590
  /** Function that can be used to add custom CSS classes to date cells. */
1592
- dateClass = input(...(ngDevMode ? [undefined, { debugName: "dateClass" }] : []));
1591
+ dateClass = input(...(ngDevMode ? [undefined, { debugName: "dateClass" }] : /* istanbul ignore next */ []));
1593
1592
  /** Emits when a new month is selected. */
1594
1593
  selectedChange = output();
1595
1594
  /** Emits the selected month. This doesn't imply a change on the selected date */
@@ -1597,7 +1596,7 @@ class NgxMatYearView {
1597
1596
  /** Emits when any date is activated. */
1598
1597
  activeDateChange = output();
1599
1598
  /** The body of calendar table */
1600
- _matCalendarBody = viewChild(NgxMatCalendarBody, ...(ngDevMode ? [{ debugName: "_matCalendarBody" }] : []));
1599
+ _matCalendarBody = viewChild(NgxMatCalendarBody, ...(ngDevMode ? [{ debugName: "_matCalendarBody" }] : /* istanbul ignore next */ []));
1601
1600
  /** Grid of calendar cells representing the months of the year. */
1602
1601
  _months = null;
1603
1602
  /** The label for this year (e.g. "2017"). */
@@ -1724,7 +1723,7 @@ class NgxMatYearView {
1724
1723
  this._setSelectedMonth(this.selected);
1725
1724
  this._todayMonth = this._getMonthInCurrentYear(this._dateAdapter.today());
1726
1725
  this._yearLabel = this._dateAdapter.getYearName(this.activeDate);
1727
- let monthNames = this._dateAdapter.getMonthNames('short');
1726
+ const monthNames = this._dateAdapter.getMonthNames('short');
1728
1727
  // First row of months only contains 5 elements so we can fit the year label on the same row.
1729
1728
  this._months = [
1730
1729
  [0, 1, 2, 3],
@@ -1825,10 +1824,10 @@ class NgxMatYearView {
1825
1824
  this._selectedMonth = this._getMonthInCurrentYear(value);
1826
1825
  }
1827
1826
  }
1828
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatYearView, deps: [{ token: i0.ChangeDetectorRef }, { token: MAT_DATE_FORMATS, optional: true }, { token: i1.DateAdapter, optional: true }, { token: i2.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1829
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.1.5", type: NgxMatYearView, isStandalone: true, selector: "ngx-mat-year-view", inputs: { activeDate: { classPropertyName: "activeDate", publicName: "activeDate", isSignal: false, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: false, isRequired: false, transformFunction: null }, minDate: { classPropertyName: "minDate", publicName: "minDate", isSignal: false, isRequired: false, transformFunction: null }, maxDate: { classPropertyName: "maxDate", publicName: "maxDate", isSignal: false, isRequired: false, transformFunction: null }, dateFilter: { classPropertyName: "dateFilter", publicName: "dateFilter", isSignal: true, isRequired: false, transformFunction: null }, dateClass: { classPropertyName: "dateClass", publicName: "dateClass", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedChange: "selectedChange", monthSelected: "monthSelected", activeDateChange: "activeDateChange" }, viewQueries: [{ propertyName: "_matCalendarBody", first: true, predicate: NgxMatCalendarBody, descendants: true, isSignal: true }], exportAs: ["ngxMatYearView"], ngImport: i0, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr>\n <th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th>\n </tr>\n </thead>\n <tbody\n ngx-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)\"></tbody>\n</table>\n", dependencies: [{ kind: "component", type: NgxMatCalendarBody, selector: "[ngx-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 });
1827
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatYearView, deps: [{ token: i0.ChangeDetectorRef }, { token: MAT_DATE_FORMATS, optional: true }, { token: i1.DateAdapter, optional: true }, { token: i2.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1828
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.6", type: NgxMatYearView, isStandalone: true, selector: "ngx-mat-year-view", inputs: { activeDate: { classPropertyName: "activeDate", publicName: "activeDate", isSignal: false, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: false, isRequired: false, transformFunction: null }, minDate: { classPropertyName: "minDate", publicName: "minDate", isSignal: false, isRequired: false, transformFunction: null }, maxDate: { classPropertyName: "maxDate", publicName: "maxDate", isSignal: false, isRequired: false, transformFunction: null }, dateFilter: { classPropertyName: "dateFilter", publicName: "dateFilter", isSignal: true, isRequired: false, transformFunction: null }, dateClass: { classPropertyName: "dateClass", publicName: "dateClass", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedChange: "selectedChange", monthSelected: "monthSelected", activeDateChange: "activeDateChange" }, viewQueries: [{ propertyName: "_matCalendarBody", first: true, predicate: NgxMatCalendarBody, descendants: true, isSignal: true }], exportAs: ["ngxMatYearView"], ngImport: i0, template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr>\n <th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th>\n </tr>\n </thead>\n <tbody\n ngx-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)\"></tbody>\n</table>\n", dependencies: [{ kind: "component", type: NgxMatCalendarBody, selector: "[ngx-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 });
1830
1829
  }
1831
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatYearView, decorators: [{
1830
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatYearView, decorators: [{
1832
1831
  type: Component,
1833
1832
  args: [{ selector: 'ngx-mat-year-view', exportAs: 'ngxMatYearView', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgxMatCalendarBody], template: "<table class=\"mat-calendar-table\" role=\"grid\">\n <thead aria-hidden=\"true\" class=\"mat-calendar-table-header\">\n <tr>\n <th class=\"mat-calendar-table-header-divider\" colspan=\"4\"></th>\n </tr>\n </thead>\n <tbody\n ngx-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)\"></tbody>\n</table>\n" }]
1834
1833
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
@@ -1899,10 +1898,10 @@ class NgxMatDatepickerIntl {
1899
1898
  formatYearRangeLabel(start, end) {
1900
1899
  return `${start} to ${end}`;
1901
1900
  }
1902
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerIntl, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1903
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerIntl, providedIn: 'root' });
1901
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerIntl, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1902
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerIntl, providedIn: 'root' });
1904
1903
  }
1905
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerIntl, decorators: [{
1904
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerIntl, decorators: [{
1906
1905
  type: Injectable,
1907
1906
  args: [{ providedIn: 'root' }]
1908
1907
  }] });
@@ -2029,10 +2028,10 @@ class NgxMatCalendarHeader {
2029
2028
  }
2030
2029
  _id = `mat-calendar-header-${calendarHeaderId++}`;
2031
2030
  _periodButtonLabelId = `${this._id}-period-label`;
2032
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatCalendarHeader, deps: [{ token: NgxMatDatepickerIntl }, { token: forwardRef(() => NgxMatCalendar) }, { token: i1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2033
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.5", type: NgxMatCalendarHeader, isStandalone: true, selector: "ngx-mat-calendar-header", exportAs: ["ngxMatCalendarHeader"], ngImport: i0, template: "<div class=\"mat-calendar-header\">\n <div class=\"mat-calendar-controls\">\n <button\n mat-button\n type=\"button\"\n class=\"mat-calendar-period-button\"\n (click)=\"currentPeriodClicked()\"\n [attr.aria-label]=\"periodButtonLabel\"\n [attr.aria-describedby]=\"_periodButtonLabelId\"\n aria-live=\"polite\">\n <span aria-hidden=\"true\">{{ periodButtonText }}</span>\n <svg\n class=\"mat-calendar-arrow\"\n [class.mat-calendar-invert]=\"calendar.currentView() !== 'month'\"\n viewBox=\"0 0 10 5\"\n focusable=\"false\"\n aria-hidden=\"true\">\n <polygon points=\"0,0 5,5 10,0\" />\n </svg>\n </button>\n\n <div class=\"mat-calendar-spacer\"></div>\n\n <ng-content></ng-content>\n\n <button\n mat-icon-button\n type=\"button\"\n class=\"mat-calendar-previous-button\"\n [disabled]=\"!previousEnabled()\"\n (click)=\"previousClicked()\"\n [attr.aria-label]=\"prevButtonLabel\"></button>\n\n <button\n mat-icon-button\n type=\"button\"\n class=\"mat-calendar-next-button\"\n [disabled]=\"!nextEnabled()\"\n (click)=\"nextClicked()\"\n [attr.aria-label]=\"nextButtonLabel\"></button>\n </div>\n</div>\n<label [id]=\"_periodButtonLabelId\" class=\"mat-calendar-hidden-label\">{{\n periodButtonDescription\n}}</label>\n", dependencies: [{ kind: "component", type: MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2031
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatCalendarHeader, deps: [{ token: NgxMatDatepickerIntl }, { token: forwardRef(() => NgxMatCalendar) }, { token: i1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2032
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.6", type: NgxMatCalendarHeader, isStandalone: true, selector: "ngx-mat-calendar-header", exportAs: ["ngxMatCalendarHeader"], ngImport: i0, template: "<div class=\"mat-calendar-header\">\n <div class=\"mat-calendar-controls\">\n <button\n mat-button\n type=\"button\"\n class=\"mat-calendar-period-button\"\n (click)=\"currentPeriodClicked()\"\n [attr.aria-label]=\"periodButtonLabel\"\n [attr.aria-describedby]=\"_periodButtonLabelId\"\n aria-live=\"polite\">\n <span aria-hidden=\"true\">{{ periodButtonText }}</span>\n <svg\n class=\"mat-calendar-arrow\"\n [class.mat-calendar-invert]=\"calendar.currentView() !== 'month'\"\n viewBox=\"0 0 10 5\"\n focusable=\"false\"\n aria-hidden=\"true\">\n <polygon points=\"0,0 5,5 10,0\" />\n </svg>\n </button>\n\n <div class=\"mat-calendar-spacer\"></div>\n\n <ng-content></ng-content>\n\n <button\n mat-icon-button\n type=\"button\"\n class=\"mat-calendar-previous-button\"\n [disabled]=\"!previousEnabled()\"\n (click)=\"previousClicked()\"\n [attr.aria-label]=\"prevButtonLabel\"></button>\n\n <button\n mat-icon-button\n type=\"button\"\n class=\"mat-calendar-next-button\"\n [disabled]=\"!nextEnabled()\"\n (click)=\"nextClicked()\"\n [attr.aria-label]=\"nextButtonLabel\"></button>\n </div>\n</div>\n<label [id]=\"_periodButtonLabelId\" class=\"mat-calendar-hidden-label\">{{\n periodButtonDescription\n}}</label>\n", dependencies: [{ kind: "component", type: MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2034
2033
  }
2035
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatCalendarHeader, decorators: [{
2034
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatCalendarHeader, decorators: [{
2036
2035
  type: Component,
2037
2036
  args: [{ selector: 'ngx-mat-calendar-header', exportAs: 'ngxMatCalendarHeader', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [MatButton, MatIconButton], template: "<div class=\"mat-calendar-header\">\n <div class=\"mat-calendar-controls\">\n <button\n mat-button\n type=\"button\"\n class=\"mat-calendar-period-button\"\n (click)=\"currentPeriodClicked()\"\n [attr.aria-label]=\"periodButtonLabel\"\n [attr.aria-describedby]=\"_periodButtonLabelId\"\n aria-live=\"polite\">\n <span aria-hidden=\"true\">{{ periodButtonText }}</span>\n <svg\n class=\"mat-calendar-arrow\"\n [class.mat-calendar-invert]=\"calendar.currentView() !== 'month'\"\n viewBox=\"0 0 10 5\"\n focusable=\"false\"\n aria-hidden=\"true\">\n <polygon points=\"0,0 5,5 10,0\" />\n </svg>\n </button>\n\n <div class=\"mat-calendar-spacer\"></div>\n\n <ng-content></ng-content>\n\n <button\n mat-icon-button\n type=\"button\"\n class=\"mat-calendar-previous-button\"\n [disabled]=\"!previousEnabled()\"\n (click)=\"previousClicked()\"\n [attr.aria-label]=\"prevButtonLabel\"></button>\n\n <button\n mat-icon-button\n type=\"button\"\n class=\"mat-calendar-next-button\"\n [disabled]=\"!nextEnabled()\"\n (click)=\"nextClicked()\"\n [attr.aria-label]=\"nextButtonLabel\"></button>\n </div>\n</div>\n<label [id]=\"_periodButtonLabelId\" class=\"mat-calendar-hidden-label\">{{\n periodButtonDescription\n}}</label>\n" }]
2038
2037
  }], ctorParameters: () => [{ type: NgxMatDatepickerIntl }, { type: NgxMatCalendar, decorators: [{
@@ -2052,7 +2051,7 @@ class NgxMatCalendar {
2052
2051
  _dateFormats;
2053
2052
  _changeDetectorRef;
2054
2053
  /** An input indicating the type of the header component, if set. */
2055
- headerComponent = input(...(ngDevMode ? [undefined, { debugName: "headerComponent" }] : []));
2054
+ headerComponent = input(...(ngDevMode ? [undefined, { debugName: "headerComponent" }] : /* istanbul ignore next */ []));
2056
2055
  /** A portal containing the header component type for this calendar. */
2057
2056
  _calendarHeaderPortal = null;
2058
2057
  _intlChanges;
@@ -2061,7 +2060,7 @@ class NgxMatCalendar {
2061
2060
  * We need to schedule it, rather than do it immediately, because we have to wait
2062
2061
  * for Angular to re-evaluate the view children.
2063
2062
  */
2064
- _moveFocusOnNextTick = linkedSignal(() => !!this.currentView(), ...(ngDevMode ? [{ debugName: "_moveFocusOnNextTick" }] : []));
2063
+ _moveFocusOnNextTick = linkedSignal(() => !!this.currentView(), ...(ngDevMode ? [{ debugName: "_moveFocusOnNextTick" }] : /* istanbul ignore next */ []));
2065
2064
  /** A date representing the period (month or year) to start the calendar in. */
2066
2065
  get startAt() {
2067
2066
  return this._startAt;
@@ -2071,7 +2070,7 @@ class NgxMatCalendar {
2071
2070
  }
2072
2071
  _startAt = null;
2073
2072
  /** Whether the calendar should be started in month or year view. */
2074
- startView = input('month', ...(ngDevMode ? [{ debugName: "startView" }] : []));
2073
+ startView = input('month', ...(ngDevMode ? [{ debugName: "startView" }] : /* istanbul ignore next */ []));
2075
2074
  /** The currently selected date. */
2076
2075
  get selected() {
2077
2076
  return this._selected;
@@ -2102,18 +2101,18 @@ class NgxMatCalendar {
2102
2101
  }
2103
2102
  _maxDate = null;
2104
2103
  /** Function used to filter which dates are selectable. */
2105
- dateFilter = input(...(ngDevMode ? [undefined, { debugName: "dateFilter" }] : []));
2104
+ dateFilter = input(...(ngDevMode ? [undefined, { debugName: "dateFilter" }] : /* istanbul ignore next */ []));
2106
2105
  /** Function that can be used to add custom CSS classes to dates. */
2107
- dateClass = input(...(ngDevMode ? [undefined, { debugName: "dateClass" }] : []));
2106
+ dateClass = input(...(ngDevMode ? [undefined, { debugName: "dateClass" }] : /* istanbul ignore next */ []));
2108
2107
  /** Start of the comparison range. */
2109
- comparisonStart = input(...(ngDevMode ? [undefined, { debugName: "comparisonStart" }] : []));
2108
+ comparisonStart = input(...(ngDevMode ? [undefined, { debugName: "comparisonStart" }] : /* istanbul ignore next */ []));
2110
2109
  /** End of the comparison range. */
2111
- comparisonEnd = input(...(ngDevMode ? [undefined, { debugName: "comparisonEnd" }] : []));
2110
+ comparisonEnd = input(...(ngDevMode ? [undefined, { debugName: "comparisonEnd" }] : /* istanbul ignore next */ []));
2112
2111
  /** ARIA Accessible name of the `<input matStartDate/>` */
2113
- startDateAccessibleName = input(...(ngDevMode ? [undefined, { debugName: "startDateAccessibleName" }] : []));
2112
+ startDateAccessibleName = input(...(ngDevMode ? [undefined, { debugName: "startDateAccessibleName" }] : /* istanbul ignore next */ []));
2114
2113
  /** ARIA Accessible name of the `<input matEndDate/>` */
2115
- endDateAccessibleName = input(...(ngDevMode ? [undefined, { debugName: "endDateAccessibleName" }] : []));
2116
- currentView = linkedSignal(() => this.startView(), ...(ngDevMode ? [{ debugName: "currentView" }] : []));
2114
+ endDateAccessibleName = input(...(ngDevMode ? [undefined, { debugName: "endDateAccessibleName" }] : /* istanbul ignore next */ []));
2115
+ currentView = linkedSignal(() => this.startView(), ...(ngDevMode ? [{ debugName: "currentView" }] : /* istanbul ignore next */ []));
2117
2116
  /** Emits when the currently selected date changes. */
2118
2117
  selectedChange = output();
2119
2118
  /**
@@ -2135,11 +2134,11 @@ class NgxMatCalendar {
2135
2134
  /** Emits a new date range value when the user completes a drag drop operation. */
2136
2135
  _userDragDrop = output();
2137
2136
  /** Reference to the current month view component. */
2138
- monthView = viewChild(NgxMatMonthView, ...(ngDevMode ? [{ debugName: "monthView" }] : []));
2137
+ monthView = viewChild(NgxMatMonthView, ...(ngDevMode ? [{ debugName: "monthView" }] : /* istanbul ignore next */ []));
2139
2138
  /** Reference to the current year view component. */
2140
- yearView = viewChild(NgxMatYearView, ...(ngDevMode ? [{ debugName: "yearView" }] : []));
2139
+ yearView = viewChild(NgxMatYearView, ...(ngDevMode ? [{ debugName: "yearView" }] : /* istanbul ignore next */ []));
2141
2140
  /** Reference to the current multi-year view component. */
2142
- multiYearView = viewChild(NgxMatMultiYearView, ...(ngDevMode ? [{ debugName: "multiYearView" }] : []));
2141
+ multiYearView = viewChild(NgxMatMultiYearView, ...(ngDevMode ? [{ debugName: "multiYearView" }] : /* istanbul ignore next */ []));
2143
2142
  /**
2144
2143
  * The current active date. This determines which time period is shown and which date is
2145
2144
  * highlighted when using keyboard navigation.
@@ -2276,10 +2275,10 @@ class NgxMatCalendar {
2276
2275
  // only the first component type. See https://github.com/angular/components/issues/22996.
2277
2276
  return this.monthView() || this.yearView() || this.multiYearView();
2278
2277
  }
2279
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatCalendar, deps: [{ token: NgxMatDatepickerIntl }, { token: i1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2280
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.5", type: NgxMatCalendar, isStandalone: true, selector: "ngx-mat-calendar", inputs: { headerComponent: { classPropertyName: "headerComponent", publicName: "headerComponent", isSignal: true, isRequired: false, transformFunction: null }, startAt: { classPropertyName: "startAt", publicName: "startAt", isSignal: false, isRequired: false, transformFunction: null }, startView: { classPropertyName: "startView", publicName: "startView", isSignal: true, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: false, isRequired: false, transformFunction: null }, minDate: { classPropertyName: "minDate", publicName: "minDate", isSignal: false, isRequired: false, transformFunction: null }, maxDate: { classPropertyName: "maxDate", publicName: "maxDate", isSignal: false, isRequired: false, transformFunction: null }, dateFilter: { classPropertyName: "dateFilter", publicName: "dateFilter", isSignal: true, isRequired: false, transformFunction: null }, dateClass: { classPropertyName: "dateClass", publicName: "dateClass", isSignal: true, isRequired: false, transformFunction: null }, comparisonStart: { classPropertyName: "comparisonStart", publicName: "comparisonStart", isSignal: true, isRequired: false, transformFunction: null }, comparisonEnd: { classPropertyName: "comparisonEnd", publicName: "comparisonEnd", isSignal: true, isRequired: false, transformFunction: null }, startDateAccessibleName: { classPropertyName: "startDateAccessibleName", publicName: "startDateAccessibleName", isSignal: true, isRequired: false, transformFunction: null }, endDateAccessibleName: { classPropertyName: "endDateAccessibleName", publicName: "endDateAccessibleName", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedChange: "selectedChange", yearSelected: "yearSelected", monthSelected: "monthSelected", viewChanged: "viewChanged", _userSelection: "_userSelection", _userDragDrop: "_userDragDrop" }, host: { classAttribute: "mat-calendar" }, providers: [NGX_MAT_SINGLE_DATE_SELECTION_MODEL_PROVIDER], viewQueries: [{ propertyName: "monthView", first: true, predicate: NgxMatMonthView, descendants: true, isSignal: true }, { propertyName: "yearView", first: true, predicate: NgxMatYearView, descendants: true, isSignal: true }, { propertyName: "multiYearView", first: true, predicate: NgxMatMultiYearView, descendants: true, isSignal: true }], exportAs: ["ngxMatCalendar"], usesOnChanges: true, ngImport: i0, template: "<ng-template [cdkPortalOutlet]=\"_calendarHeaderPortal\" />\n\n<div class=\"mat-calendar-content\" cdkMonitorSubtreeFocus tabindex=\"-1\">\n @switch (currentView()) {\n @case ('month') {\n <ngx-mat-month-view\n [activeDate]=\"activeDate\"\n [selected]=\"selected\"\n [dateFilter]=\"dateFilter()\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [dateClass]=\"dateClass()\"\n [comparisonStart]=\"comparisonStart()\"\n [comparisonEnd]=\"comparisonEnd()\"\n [startDateAccessibleName]=\"startDateAccessibleName()\"\n [endDateAccessibleName]=\"endDateAccessibleName()\"\n (_userSelection)=\"_dateSelected($event)\"\n (dragStarted)=\"_dragStarted($event)\"\n (dragEnded)=\"_dragEnded($event)\"\n [activeDrag]=\"_activeDrag\" />\n }\n @case ('year') {\n <ngx-mat-year-view\n [activeDate]=\"activeDate\"\n [selected]=\"selected\"\n [dateFilter]=\"dateFilter()\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [dateClass]=\"dateClass()\"\n (monthSelected)=\"_monthSelectedInYearView($event)\"\n (selectedChange)=\"_goToDateInView($event, 'month')\" />\n }\n @case ('multi-year') {\n <ngx-mat-multi-year-view\n [activeDate]=\"activeDate\"\n [selected]=\"selected\"\n [dateFilter]=\"dateFilter()\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [dateClass]=\"dateClass()\"\n (yearSelected)=\"_yearSelectedInMultiYearView($event)\"\n (selectedChange)=\"_goToDateInView($event, 'year')\" />\n }\n }\n</div>\n", styles: [".mat-calendar{display:block}.mat-calendar-header{padding:8px 8px 0}.mat-calendar-content{padding:0 8px 8px;outline:none}.mat-calendar-controls{display:flex;align-items:center;margin:5% calc(4.7142857143% - 16px)}.mat-calendar-spacer{flex:1 1 auto}.mat-calendar-period-button{min-width:0;margin:0 8px}.mat-calendar-arrow{display:inline-block;width:10px;height:5px;margin:0 0 0 5px;vertical-align:middle}.mat-calendar-arrow.mat-calendar-invert{transform:rotate(180deg)}[dir=rtl] .mat-calendar-arrow{margin:0 5px 0 0}@media(forced-colors:active){.mat-calendar-arrow{fill:CanvasText}}.mat-calendar-previous-button,.mat-calendar-next-button{position:relative}.mat-calendar-previous-button:after,.mat-calendar-next-button:after{inset:0;position:absolute;content:\"\";margin:15.5px;border:0 solid currentColor;border-top-width:2px}[dir=rtl] .mat-calendar-previous-button,[dir=rtl] .mat-calendar-next-button{transform:rotate(180deg)}.mat-calendar-previous-button:after{border-left-width:2px;transform:translate(2px) rotate(-45deg)}.mat-calendar-next-button:after{border-right-width:2px;transform:translate(-2px) rotate(45deg)}.mat-calendar-table{border-spacing:0;border-collapse:collapse;width:100%}.mat-calendar-table-header th{text-align:center;padding:0 0 8px;color:var(--mat-datepicker-calendar-header-text-color, var(--mat-sys-on-surface-variant));font-size:var(--mat-datepicker-calendar-header-text-size, var(--mat-sys-title-small-size));font-weight:var(--mat-datepicker-calendar-header-text-weight, var(--mat-sys-title-small-weight))}.mat-calendar-table-header-divider{position:relative;height:1px}.mat-calendar-table-header-divider:after{content:\"\";position:absolute;top:0;left:-8px;right:-8px;height:1px}.mat-calendar-body-cell-content:before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 3px) * -1)}.mat-calendar-body-cell:focus .mat-focus-indicator:before{content:\"\"}.mat-calendar-hidden-label{display:none}\n"], dependencies: [{ kind: "directive", type: CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "directive", type: CdkMonitorFocus, selector: "[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]", outputs: ["cdkFocusChange"], exportAs: ["cdkMonitorFocus"] }, { kind: "component", type: NgxMatMonthView, selector: "ngx-mat-month-view", inputs: ["activeDate", "selected", "minDate", "maxDate", "dateFilter", "dateClass", "comparisonStart", "comparisonEnd", "startDateAccessibleName", "endDateAccessibleName", "activeDrag"], outputs: ["selectedChange", "_userSelection", "dragStarted", "dragEnded", "activeDateChange"], exportAs: ["ngxMatMonthView"] }, { kind: "component", type: NgxMatYearView, selector: "ngx-mat-year-view", inputs: ["activeDate", "selected", "minDate", "maxDate", "dateFilter", "dateClass"], outputs: ["selectedChange", "monthSelected", "activeDateChange"], exportAs: ["ngxMatYearView"] }, { kind: "component", type: NgxMatMultiYearView, selector: "ngx-mat-multi-year-view", inputs: ["activeDate", "selected", "minDate", "maxDate", "dateFilter", "dateClass"], outputs: ["selectedChange", "yearSelected", "activeDateChange"], exportAs: ["ngxMatMultiYearView"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2278
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatCalendar, deps: [{ token: NgxMatDatepickerIntl }, { token: i1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2279
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.6", type: NgxMatCalendar, isStandalone: true, selector: "ngx-mat-calendar", inputs: { headerComponent: { classPropertyName: "headerComponent", publicName: "headerComponent", isSignal: true, isRequired: false, transformFunction: null }, startAt: { classPropertyName: "startAt", publicName: "startAt", isSignal: false, isRequired: false, transformFunction: null }, startView: { classPropertyName: "startView", publicName: "startView", isSignal: true, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: false, isRequired: false, transformFunction: null }, minDate: { classPropertyName: "minDate", publicName: "minDate", isSignal: false, isRequired: false, transformFunction: null }, maxDate: { classPropertyName: "maxDate", publicName: "maxDate", isSignal: false, isRequired: false, transformFunction: null }, dateFilter: { classPropertyName: "dateFilter", publicName: "dateFilter", isSignal: true, isRequired: false, transformFunction: null }, dateClass: { classPropertyName: "dateClass", publicName: "dateClass", isSignal: true, isRequired: false, transformFunction: null }, comparisonStart: { classPropertyName: "comparisonStart", publicName: "comparisonStart", isSignal: true, isRequired: false, transformFunction: null }, comparisonEnd: { classPropertyName: "comparisonEnd", publicName: "comparisonEnd", isSignal: true, isRequired: false, transformFunction: null }, startDateAccessibleName: { classPropertyName: "startDateAccessibleName", publicName: "startDateAccessibleName", isSignal: true, isRequired: false, transformFunction: null }, endDateAccessibleName: { classPropertyName: "endDateAccessibleName", publicName: "endDateAccessibleName", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedChange: "selectedChange", yearSelected: "yearSelected", monthSelected: "monthSelected", viewChanged: "viewChanged", _userSelection: "_userSelection", _userDragDrop: "_userDragDrop" }, host: { classAttribute: "mat-calendar" }, providers: [NGX_MAT_SINGLE_DATE_SELECTION_MODEL_PROVIDER], viewQueries: [{ propertyName: "monthView", first: true, predicate: NgxMatMonthView, descendants: true, isSignal: true }, { propertyName: "yearView", first: true, predicate: NgxMatYearView, descendants: true, isSignal: true }, { propertyName: "multiYearView", first: true, predicate: NgxMatMultiYearView, descendants: true, isSignal: true }], exportAs: ["ngxMatCalendar"], usesOnChanges: true, ngImport: i0, template: "<ng-template [cdkPortalOutlet]=\"_calendarHeaderPortal\" />\n\n<div class=\"mat-calendar-content\" cdkMonitorSubtreeFocus tabindex=\"-1\">\n @switch (currentView()) {\n @case ('month') {\n <ngx-mat-month-view\n [activeDate]=\"activeDate\"\n [selected]=\"selected\"\n [dateFilter]=\"dateFilter()\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [dateClass]=\"dateClass()\"\n [comparisonStart]=\"comparisonStart()\"\n [comparisonEnd]=\"comparisonEnd()\"\n [startDateAccessibleName]=\"startDateAccessibleName()\"\n [endDateAccessibleName]=\"endDateAccessibleName()\"\n (_userSelection)=\"_dateSelected($event)\"\n (dragStarted)=\"_dragStarted($event)\"\n (dragEnded)=\"_dragEnded($event)\"\n [activeDrag]=\"_activeDrag\" />\n }\n @case ('year') {\n <ngx-mat-year-view\n [activeDate]=\"activeDate\"\n [selected]=\"selected\"\n [dateFilter]=\"dateFilter()\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [dateClass]=\"dateClass()\"\n (monthSelected)=\"_monthSelectedInYearView($event)\"\n (selectedChange)=\"_goToDateInView($event, 'month')\" />\n }\n @case ('multi-year') {\n <ngx-mat-multi-year-view\n [activeDate]=\"activeDate\"\n [selected]=\"selected\"\n [dateFilter]=\"dateFilter()\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [dateClass]=\"dateClass()\"\n (yearSelected)=\"_yearSelectedInMultiYearView($event)\"\n (selectedChange)=\"_goToDateInView($event, 'year')\" />\n }\n }\n</div>\n", styles: [".mat-calendar{display:block}.mat-calendar-header{padding:8px 8px 0}.mat-calendar-content{padding:0 8px 8px;outline:none}.mat-calendar-controls{display:flex;align-items:center;margin:5% calc(4.7142857143% - 16px)}.mat-calendar-spacer{flex:1 1 auto}.mat-calendar-period-button{min-width:0;margin:0 8px}.mat-calendar-arrow{display:inline-block;width:10px;height:5px;margin:0 0 0 5px;vertical-align:middle}.mat-calendar-arrow.mat-calendar-invert{transform:rotate(180deg)}[dir=rtl] .mat-calendar-arrow{margin:0 5px 0 0}@media(forced-colors:active){.mat-calendar-arrow{fill:CanvasText}}.mat-calendar-previous-button,.mat-calendar-next-button{position:relative}.mat-calendar-previous-button:after,.mat-calendar-next-button:after{inset:0;position:absolute;content:\"\";margin:15.5px;border:0 solid currentColor;border-top-width:2px}[dir=rtl] .mat-calendar-previous-button,[dir=rtl] .mat-calendar-next-button{transform:rotate(180deg)}.mat-calendar-previous-button:after{border-left-width:2px;transform:translate(2px) rotate(-45deg)}.mat-calendar-next-button:after{border-right-width:2px;transform:translate(-2px) rotate(45deg)}.mat-calendar-table{border-spacing:0;border-collapse:collapse;width:100%}.mat-calendar-table-header th{text-align:center;padding:0 0 8px;color:var(--mat-datepicker-calendar-header-text-color, var(--mat-sys-on-surface-variant));font-size:var(--mat-datepicker-calendar-header-text-size, var(--mat-sys-title-small-size));font-weight:var(--mat-datepicker-calendar-header-text-weight, var(--mat-sys-title-small-weight))}.mat-calendar-table-header-divider{position:relative;height:1px}.mat-calendar-table-header-divider:after{content:\"\";position:absolute;top:0;left:-8px;right:-8px;height:1px}.mat-calendar-body-cell-content:before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 3px) * -1)}.mat-calendar-body-cell:focus .mat-focus-indicator:before{content:\"\"}.mat-calendar-hidden-label{display:none}\n"], dependencies: [{ kind: "directive", type: CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "directive", type: CdkMonitorFocus, selector: "[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]", outputs: ["cdkFocusChange"], exportAs: ["cdkMonitorFocus"] }, { kind: "component", type: NgxMatMonthView, selector: "ngx-mat-month-view", inputs: ["activeDate", "selected", "minDate", "maxDate", "dateFilter", "dateClass", "comparisonStart", "comparisonEnd", "startDateAccessibleName", "endDateAccessibleName", "activeDrag"], outputs: ["selectedChange", "_userSelection", "dragStarted", "dragEnded", "activeDateChange"], exportAs: ["ngxMatMonthView"] }, { kind: "component", type: NgxMatYearView, selector: "ngx-mat-year-view", inputs: ["activeDate", "selected", "minDate", "maxDate", "dateFilter", "dateClass"], outputs: ["selectedChange", "monthSelected", "activeDateChange"], exportAs: ["ngxMatYearView"] }, { kind: "component", type: NgxMatMultiYearView, selector: "ngx-mat-multi-year-view", inputs: ["activeDate", "selected", "minDate", "maxDate", "dateFilter", "dateClass"], outputs: ["selectedChange", "yearSelected", "activeDateChange"], exportAs: ["ngxMatMultiYearView"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2281
2280
  }
2282
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatCalendar, decorators: [{
2281
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatCalendar, decorators: [{
2283
2282
  type: Component,
2284
2283
  args: [{ selector: 'ngx-mat-calendar', host: {
2285
2284
  class: 'mat-calendar',
@@ -2726,10 +2725,10 @@ class NgxMatDatepickerInputBase {
2726
2725
  const filter = this._getDateFilter();
2727
2726
  return !filter || filter(value);
2728
2727
  }
2729
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerInputBase, deps: [{ token: i0.ElementRef }, { token: i1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
2730
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.5", type: NgxMatDatepickerInputBase, isStandalone: true, inputs: { value: "value", disabled: "disabled" }, outputs: { dateChange: "dateChange", dateInput: "dateInput" }, usesOnChanges: true, ngImport: i0 });
2728
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerInputBase, deps: [{ token: i0.ElementRef }, { token: i1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
2729
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.6", type: NgxMatDatepickerInputBase, isStandalone: true, inputs: { value: "value", disabled: "disabled" }, outputs: { dateChange: "dateChange", dateInput: "dateInput" }, usesOnChanges: true, ngImport: i0 });
2731
2730
  }
2732
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerInputBase, decorators: [{
2731
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerInputBase, decorators: [{
2733
2732
  type: Directive
2734
2733
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.DateAdapter, decorators: [{
2735
2734
  type: Optional
@@ -2749,7 +2748,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImpor
2749
2748
  */
2750
2749
  function dateInputsHaveChanged(changes, adapter) {
2751
2750
  const keys = Object.keys(changes);
2752
- for (let key of keys) {
2751
+ for (const key of keys) {
2753
2752
  const { previousValue, currentValue } = changes[key];
2754
2753
  if (adapter.isDateInstance(previousValue) && adapter.isDateInstance(currentValue)) {
2755
2754
  if (!adapter.sameDate(previousValue, currentValue)) {
@@ -2802,7 +2801,6 @@ class NgxMatDateRangeInputPartBase extends NgxMatDatepickerInputBase {
2802
2801
  // itself. Usually we can work around it for the CVA, but there's no API to do it for the
2803
2802
  // validator. We work around it here by injecting the `NgControl` in `ngOnInit`, after
2804
2803
  // everything has been resolved.
2805
- // tslint:disable-next-line:no-bitwise
2806
2804
  const ngControl = this._injector.get(NgControl, null, {
2807
2805
  optional: true,
2808
2806
  self: true,
@@ -2879,10 +2877,10 @@ class NgxMatDateRangeInputPartBase extends NgxMatDatepickerInputBase {
2879
2877
  _getAccessibleName() {
2880
2878
  return _computeAriaAccessibleName(this._elementRef.nativeElement);
2881
2879
  }
2882
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDateRangeInputPartBase, deps: [{ token: NGX_MAT_DATE_RANGE_INPUT_PARENT }, { token: i0.ElementRef }, { token: i1.ErrorStateMatcher }, { token: i0.Injector }, { token: i2$1.NgForm, optional: true }, { token: i2$1.FormGroupDirective, optional: true }, { token: i1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
2883
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.5", type: NgxMatDateRangeInputPartBase, isStandalone: true, inputs: { errorStateMatcher: "errorStateMatcher" }, usesInheritance: true, ngImport: i0 });
2880
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDateRangeInputPartBase, deps: [{ token: NGX_MAT_DATE_RANGE_INPUT_PARENT }, { token: i0.ElementRef }, { token: i1.ErrorStateMatcher }, { token: i0.Injector }, { token: i2$1.NgForm, optional: true }, { token: i2$1.FormGroupDirective, optional: true }, { token: i1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
2881
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.6", type: NgxMatDateRangeInputPartBase, isStandalone: true, inputs: { errorStateMatcher: "errorStateMatcher" }, usesInheritance: true, ngImport: i0 });
2884
2882
  }
2885
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDateRangeInputPartBase, decorators: [{
2883
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDateRangeInputPartBase, decorators: [{
2886
2884
  type: Directive
2887
2885
  }], ctorParameters: () => [{ type: undefined, decorators: [{
2888
2886
  type: Inject,
@@ -2957,13 +2955,13 @@ class NgxMatStartDate extends NgxMatDateRangeInputPartBase {
2957
2955
  super._onKeydown(event);
2958
2956
  }
2959
2957
  }
2960
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatStartDate, deps: [{ token: NGX_MAT_DATE_RANGE_INPUT_PARENT }, { token: i0.ElementRef }, { token: i1.ErrorStateMatcher }, { token: i0.Injector }, { token: i2$1.NgForm, optional: true }, { token: i2$1.FormGroupDirective, optional: true }, { token: i1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
2961
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.5", type: NgxMatStartDate, isStandalone: true, selector: "input[ngxMatStartDate]", inputs: { errorStateMatcher: "errorStateMatcher" }, outputs: { dateChange: "dateChange", dateInput: "dateInput" }, host: { attributes: { "type": "text" }, listeners: { "input": "_onInput($event)", "change": "_onChange()", "keydown": "_onKeydown($event)", "blur": "_onBlur()" }, properties: { "disabled": "disabled", "attr.aria-haspopup": "_rangeInput.rangePicker ? \"dialog\" : null", "attr.aria-owns": "(_rangeInput.rangePicker?.opened && _rangeInput.rangePicker.id) || null", "attr.min": "_getMinDate() ? _dateAdapter.toIso8601(_getMinDate()!) : null", "attr.max": "_getMaxDate() ? _dateAdapter.toIso8601(_getMaxDate()!) : null" }, classAttribute: "mat-start-date mat-date-range-input-inner" }, providers: [
2958
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatStartDate, deps: [{ token: NGX_MAT_DATE_RANGE_INPUT_PARENT }, { token: i0.ElementRef }, { token: i1.ErrorStateMatcher }, { token: i0.Injector }, { token: i2$1.NgForm, optional: true }, { token: i2$1.FormGroupDirective, optional: true }, { token: i1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
2959
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.6", type: NgxMatStartDate, isStandalone: true, selector: "input[ngxMatStartDate]", inputs: { errorStateMatcher: "errorStateMatcher" }, outputs: { dateChange: "dateChange", dateInput: "dateInput" }, host: { attributes: { "type": "text" }, listeners: { "input": "_onInput($event)", "change": "_onChange()", "keydown": "_onKeydown($event)", "blur": "_onBlur()" }, properties: { "disabled": "disabled", "attr.aria-haspopup": "_rangeInput.rangePicker ? \"dialog\" : null", "attr.aria-owns": "(_rangeInput.rangePicker?.opened && _rangeInput.rangePicker.id) || null", "attr.min": "_getMinDate() ? _dateAdapter.toIso8601(_getMinDate()!) : null", "attr.max": "_getMaxDate() ? _dateAdapter.toIso8601(_getMaxDate()!) : null" }, classAttribute: "mat-start-date mat-date-range-input-inner" }, providers: [
2962
2960
  { provide: NG_VALUE_ACCESSOR, useExisting: NgxMatStartDate, multi: true },
2963
2961
  { provide: NG_VALIDATORS, useExisting: NgxMatStartDate, multi: true },
2964
2962
  ], usesInheritance: true, ngImport: i0 });
2965
2963
  }
2966
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatStartDate, decorators: [{
2964
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatStartDate, decorators: [{
2967
2965
  type: Directive,
2968
2966
  args: [{
2969
2967
  selector: 'input[ngxMatStartDate]',
@@ -3060,13 +3058,13 @@ class NgxMatEndDate extends NgxMatDateRangeInputPartBase {
3060
3058
  super._onKeydown(event);
3061
3059
  }
3062
3060
  }
3063
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatEndDate, deps: [{ token: NGX_MAT_DATE_RANGE_INPUT_PARENT }, { token: i0.ElementRef }, { token: i1.ErrorStateMatcher }, { token: i0.Injector }, { token: i2$1.NgForm, optional: true }, { token: i2$1.FormGroupDirective, optional: true }, { token: i1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
3064
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.5", type: NgxMatEndDate, isStandalone: true, selector: "input[ngxMatEndDate]", inputs: { errorStateMatcher: "errorStateMatcher" }, outputs: { dateChange: "dateChange", dateInput: "dateInput" }, host: { attributes: { "type": "text" }, listeners: { "input": "_onInput($event)", "change": "_onChange()", "keydown": "_onKeydown($event)", "blur": "_onBlur()" }, properties: { "disabled": "disabled", "attr.aria-haspopup": "_rangeInput.rangePicker ? \"dialog\" : null", "attr.aria-owns": "(_rangeInput.rangePicker?.opened && _rangeInput.rangePicker.id) || null", "attr.min": "_getMinDate() ? _dateAdapter.toIso8601(_getMinDate()!) : null", "attr.max": "_getMaxDate() ? _dateAdapter.toIso8601(_getMaxDate()!) : null" }, classAttribute: "mat-end-date mat-date-range-input-inner" }, providers: [
3061
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatEndDate, deps: [{ token: NGX_MAT_DATE_RANGE_INPUT_PARENT }, { token: i0.ElementRef }, { token: i1.ErrorStateMatcher }, { token: i0.Injector }, { token: i2$1.NgForm, optional: true }, { token: i2$1.FormGroupDirective, optional: true }, { token: i1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
3062
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.6", type: NgxMatEndDate, isStandalone: true, selector: "input[ngxMatEndDate]", inputs: { errorStateMatcher: "errorStateMatcher" }, outputs: { dateChange: "dateChange", dateInput: "dateInput" }, host: { attributes: { "type": "text" }, listeners: { "input": "_onInput($event)", "change": "_onChange()", "keydown": "_onKeydown($event)", "blur": "_onBlur()" }, properties: { "disabled": "disabled", "attr.aria-haspopup": "_rangeInput.rangePicker ? \"dialog\" : null", "attr.aria-owns": "(_rangeInput.rangePicker?.opened && _rangeInput.rangePicker.id) || null", "attr.min": "_getMinDate() ? _dateAdapter.toIso8601(_getMinDate()!) : null", "attr.max": "_getMaxDate() ? _dateAdapter.toIso8601(_getMaxDate()!) : null" }, classAttribute: "mat-end-date mat-date-range-input-inner" }, providers: [
3065
3063
  { provide: NG_VALUE_ACCESSOR, useExisting: NgxMatEndDate, multi: true },
3066
3064
  { provide: NG_VALIDATORS, useExisting: NgxMatEndDate, multi: true },
3067
3065
  ], usesInheritance: true, ngImport: i0 });
3068
3066
  }
3069
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatEndDate, decorators: [{
3067
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatEndDate, decorators: [{
3070
3068
  type: Directive,
3071
3069
  args: [{
3072
3070
  selector: 'input[ngxMatEndDate]',
@@ -3399,8 +3397,8 @@ class NgxMatDateRangeInput {
3399
3397
  _isTargetRequired(target) {
3400
3398
  return target?.ngControl?.control?.hasValidator(Validators.required);
3401
3399
  }
3402
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDateRangeInput, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i2$1.ControlContainer, optional: true, self: true }, { token: i1.DateAdapter, optional: true }, { token: MAT_FORM_FIELD, optional: true }], target: i0.ɵɵFactoryTarget.Component });
3403
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.5", type: NgxMatDateRangeInput, isStandalone: true, selector: "ngx-mat-date-range-input", inputs: { rangePicker: "rangePicker", required: "required", dateFilter: "dateFilter", min: "min", max: "max", disabled: "disabled", separator: "separator", comparisonStart: "comparisonStart", comparisonEnd: "comparisonEnd" }, host: { attributes: { "role": "group" }, properties: { "class.mat-date-range-input-hide-placeholders": "_shouldHidePlaceholders()", "class.mat-date-range-input-required": "required", "attr.id": "id", "attr.aria-labelledby": "_getAriaLabelledby()", "attr.aria-describedby": "_ariaDescribedBy", "attr.data-mat-calendar": "rangePicker ? rangePicker.id : null" }, classAttribute: "mat-date-range-input" }, providers: [
3400
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDateRangeInput, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i2$1.ControlContainer, optional: true, self: true }, { token: i1.DateAdapter, optional: true }, { token: MAT_FORM_FIELD, optional: true }], target: i0.ɵɵFactoryTarget.Component });
3401
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.6", type: NgxMatDateRangeInput, isStandalone: true, selector: "ngx-mat-date-range-input", inputs: { rangePicker: "rangePicker", required: "required", dateFilter: "dateFilter", min: "min", max: "max", disabled: "disabled", separator: "separator", comparisonStart: "comparisonStart", comparisonEnd: "comparisonEnd" }, host: { attributes: { "role": "group" }, properties: { "class.mat-date-range-input-hide-placeholders": "_shouldHidePlaceholders()", "class.mat-date-range-input-required": "required", "attr.id": "id", "attr.aria-labelledby": "_getAriaLabelledby()", "attr.aria-describedby": "_ariaDescribedBy", "attr.data-mat-calendar": "rangePicker ? rangePicker.id : null" }, classAttribute: "mat-date-range-input" }, providers: [
3404
3402
  { provide: MatFormFieldControl, useExisting: NgxMatDateRangeInput },
3405
3403
  {
3406
3404
  provide: NGX_MAT_DATE_RANGE_INPUT_PARENT,
@@ -3408,7 +3406,7 @@ class NgxMatDateRangeInput {
3408
3406
  },
3409
3407
  ], queries: [{ propertyName: "_startInput", first: true, predicate: NgxMatStartDate, descendants: true }, { propertyName: "_endInput", first: true, predicate: NgxMatEndDate, descendants: true }], exportAs: ["ngxMatDateRangeInput"], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"mat-date-range-input-container\"\n cdkMonitorSubtreeFocus\n (cdkFocusChange)=\"_updateFocus($event)\"\n>\n <div class=\"mat-date-range-input-wrapper\">\n <ng-content select=\"input[matStartDate]\"></ng-content>\n <span class=\"mat-date-range-input-mirror\" aria-hidden=\"true\">{{\n _getInputMirrorValue(\"start\")\n }}</span>\n </div>\n\n <span\n class=\"mat-date-range-input-separator\"\n [class.mat-date-range-input-separator-hidden]=\"_shouldHideSeparator()\"\n >{{ separator }}</span\n >\n\n <div class=\"mat-date-range-input-wrapper mat-date-range-input-end-wrapper\">\n <ng-content select=\"input[matEndDate]\"></ng-content>\n <span class=\"mat-date-range-input-mirror\" aria-hidden=\"true\">{{\n _getInputMirrorValue(\"end\")\n }}</span>\n </div>\n</div>\n", styles: [".mat-date-range-input{display:block;width:100%}.mat-date-range-input-container{display:flex;align-items:center}.mat-date-range-input-separator{transition:opacity .4s .1333333333333s cubic-bezier(.25,.8,.25,1);margin:0 4px}._mat-animation-noopable .mat-date-range-input-separator{transition:none}.mat-date-range-input-separator-hidden{-webkit-user-select:none;user-select:none;opacity:0;transition:none}.mat-date-range-input-wrapper{position:relative;overflow:hidden;max-width:calc(50% - 4px)}.mat-date-range-input-end-wrapper{flex-grow:1}.mat-date-range-input-inner{position:absolute;top:0;left:0;font:inherit;background:transparent;color:currentColor;border:none;outline:none;padding:0;margin:0;vertical-align:bottom;text-align:inherit;appearance:none;width:100%;height:100%}.mat-date-range-input-inner:-moz-ui-invalid{box-shadow:none}.mat-form-field-hide-placeholder .mat-date-range-input-inner::placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::placeholder{-webkit-user-select:none;user-select:none;color:transparent!important;-webkit-text-fill-color:transparent;transition:none}@media(forced-colors:active){.mat-form-field-hide-placeholder .mat-date-range-input-inner::placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::placeholder{opacity:0}}.mat-form-field-hide-placeholder .mat-date-range-input-inner::-moz-placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-moz-placeholder{-webkit-user-select:none;user-select:none;color:transparent!important;-webkit-text-fill-color:transparent;transition:none}@media(forced-colors:active){.mat-form-field-hide-placeholder .mat-date-range-input-inner::-moz-placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-moz-placeholder{opacity:0}}.mat-form-field-hide-placeholder .mat-date-range-input-inner::-webkit-input-placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-webkit-input-placeholder{-webkit-user-select:none;user-select:none;color:transparent!important;-webkit-text-fill-color:transparent;transition:none}@media(forced-colors:active){.mat-form-field-hide-placeholder .mat-date-range-input-inner::-webkit-input-placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-webkit-input-placeholder{opacity:0}}.mat-form-field-hide-placeholder .mat-date-range-input-inner:-ms-input-placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner:-ms-input-placeholder{-webkit-user-select:none;user-select:none;color:transparent!important;-webkit-text-fill-color:transparent;transition:none}@media(forced-colors:active){.mat-form-field-hide-placeholder .mat-date-range-input-inner:-ms-input-placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner:-ms-input-placeholder{opacity:0}}._mat-animation-noopable .mat-date-range-input-inner::placeholder{transition:none}._mat-animation-noopable .mat-date-range-input-inner::-moz-placeholder{transition:none}._mat-animation-noopable .mat-date-range-input-inner::-webkit-input-placeholder{transition:none}._mat-animation-noopable .mat-date-range-input-inner:-ms-input-placeholder{transition:none}.mat-date-range-input-mirror{-webkit-user-select:none;user-select:none;visibility:hidden;white-space:nowrap;display:inline-block;min-width:2px}.mat-mdc-form-field-type-mat-date-range-input .mat-mdc-form-field-infix{width:200px}\n"], dependencies: [{ kind: "directive", type: CdkMonitorFocus, selector: "[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]", outputs: ["cdkFocusChange"], exportAs: ["cdkMonitorFocus"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
3410
3408
  }
3411
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDateRangeInput, decorators: [{
3409
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDateRangeInput, decorators: [{
3412
3410
  type: Component,
3413
3411
  args: [{ selector: 'ngx-mat-date-range-input', exportAs: 'ngxMatDateRangeInput', host: {
3414
3412
  class: 'mat-date-range-input',
@@ -3501,19 +3499,19 @@ var MERIDIANS;
3501
3499
  class NgxMatTimepickerComponent {
3502
3500
  formBuilder = inject(FormBuilder);
3503
3501
  _dateAdapter = inject((DateAdapter), { optional: true });
3504
- disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
3505
- showSpinners = input(true, ...(ngDevMode ? [{ debugName: "showSpinners" }] : []));
3506
- stepHour = input(DEFAULT_STEP, ...(ngDevMode ? [{ debugName: "stepHour" }] : []));
3507
- stepMinute = input(DEFAULT_STEP, ...(ngDevMode ? [{ debugName: "stepMinute" }] : []));
3508
- stepSecond = input(DEFAULT_STEP, ...(ngDevMode ? [{ debugName: "stepSecond" }] : []));
3509
- showSeconds = input(false, ...(ngDevMode ? [{ debugName: "showSeconds" }] : []));
3510
- disableMinute = input(false, ...(ngDevMode ? [{ debugName: "disableMinute" }] : []));
3511
- enableMeridian = input(false, ...(ngDevMode ? [{ debugName: "enableMeridian" }] : []));
3512
- defaultTime = input(...(ngDevMode ? [undefined, { debugName: "defaultTime" }] : []));
3513
- color = input('primary', ...(ngDevMode ? [{ debugName: "color" }] : []));
3502
+ disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : /* istanbul ignore next */ []));
3503
+ showSpinners = input(true, ...(ngDevMode ? [{ debugName: "showSpinners" }] : /* istanbul ignore next */ []));
3504
+ stepHour = input(DEFAULT_STEP, ...(ngDevMode ? [{ debugName: "stepHour" }] : /* istanbul ignore next */ []));
3505
+ stepMinute = input(DEFAULT_STEP, ...(ngDevMode ? [{ debugName: "stepMinute" }] : /* istanbul ignore next */ []));
3506
+ stepSecond = input(DEFAULT_STEP, ...(ngDevMode ? [{ debugName: "stepSecond" }] : /* istanbul ignore next */ []));
3507
+ showSeconds = input(false, ...(ngDevMode ? [{ debugName: "showSeconds" }] : /* istanbul ignore next */ []));
3508
+ disableMinute = input(false, ...(ngDevMode ? [{ debugName: "disableMinute" }] : /* istanbul ignore next */ []));
3509
+ enableMeridian = input(false, ...(ngDevMode ? [{ debugName: "enableMeridian" }] : /* istanbul ignore next */ []));
3510
+ defaultTime = input(...(ngDevMode ? [undefined, { debugName: "defaultTime" }] : /* istanbul ignore next */ []));
3511
+ color = input('primary', ...(ngDevMode ? [{ debugName: "color" }] : /* istanbul ignore next */ []));
3514
3512
  pattern = PATTERN_INPUT_HOUR;
3515
- meridianInput = input(MERIDIANS.AM, { ...(ngDevMode ? { debugName: "meridianInput" } : {}), alias: 'meridian' });
3516
- meridian = linkedSignal(() => this.meridianInput(), ...(ngDevMode ? [{ debugName: "meridian" }] : []));
3513
+ meridianInput = input(MERIDIANS.AM, { ...(ngDevMode ? { debugName: "meridianInput" } : /* istanbul ignore next */ {}), alias: 'meridian' });
3514
+ meridian = linkedSignal(() => this.meridianInput(), ...(ngDevMode ? [{ debugName: "meridian" }] : /* istanbul ignore next */ []));
3517
3515
  form = this.formBuilder.group({
3518
3516
  hour: new FormControl(this.defaultTime()?.[0] ? String(this.defaultTime()[0]) : null, {
3519
3517
  validators: [Validators.required, Validators.pattern(PATTERN_INPUT_HOUR)],
@@ -3530,7 +3528,7 @@ class NgxMatTimepickerComponent {
3530
3528
  });
3531
3529
  _onChange = () => { };
3532
3530
  _onTouched = () => { };
3533
- value = model(...(ngDevMode ? [undefined, { debugName: "value" }] : []));
3531
+ value = model(...(ngDevMode ? [undefined, { debugName: "value" }] : /* istanbul ignore next */ []));
3534
3532
  /** Hour */
3535
3533
  get hour() {
3536
3534
  const val = Number(this.form.controls['hour'].getRawValue());
@@ -3702,8 +3700,8 @@ class NgxMatTimepickerComponent {
3702
3700
  }
3703
3701
  }
3704
3702
  }
3705
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatTimepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3706
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.5", type: NgxMatTimepickerComponent, isStandalone: true, selector: "ngx-mat-timepicker", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, showSpinners: { classPropertyName: "showSpinners", publicName: "showSpinners", isSignal: true, isRequired: false, transformFunction: null }, stepHour: { classPropertyName: "stepHour", publicName: "stepHour", isSignal: true, isRequired: false, transformFunction: null }, stepMinute: { classPropertyName: "stepMinute", publicName: "stepMinute", isSignal: true, isRequired: false, transformFunction: null }, stepSecond: { classPropertyName: "stepSecond", publicName: "stepSecond", isSignal: true, isRequired: false, transformFunction: null }, showSeconds: { classPropertyName: "showSeconds", publicName: "showSeconds", isSignal: true, isRequired: false, transformFunction: null }, disableMinute: { classPropertyName: "disableMinute", publicName: "disableMinute", isSignal: true, isRequired: false, transformFunction: null }, enableMeridian: { classPropertyName: "enableMeridian", publicName: "enableMeridian", isSignal: true, isRequired: false, transformFunction: null }, defaultTime: { classPropertyName: "defaultTime", publicName: "defaultTime", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, meridianInput: { classPropertyName: "meridianInput", publicName: "meridian", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, host: { classAttribute: "ngx-mat-timepicker" }, providers: [
3703
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatTimepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3704
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.6", type: NgxMatTimepickerComponent, isStandalone: true, selector: "ngx-mat-timepicker", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, showSpinners: { classPropertyName: "showSpinners", publicName: "showSpinners", isSignal: true, isRequired: false, transformFunction: null }, stepHour: { classPropertyName: "stepHour", publicName: "stepHour", isSignal: true, isRequired: false, transformFunction: null }, stepMinute: { classPropertyName: "stepMinute", publicName: "stepMinute", isSignal: true, isRequired: false, transformFunction: null }, stepSecond: { classPropertyName: "stepSecond", publicName: "stepSecond", isSignal: true, isRequired: false, transformFunction: null }, showSeconds: { classPropertyName: "showSeconds", publicName: "showSeconds", isSignal: true, isRequired: false, transformFunction: null }, disableMinute: { classPropertyName: "disableMinute", publicName: "disableMinute", isSignal: true, isRequired: false, transformFunction: null }, enableMeridian: { classPropertyName: "enableMeridian", publicName: "enableMeridian", isSignal: true, isRequired: false, transformFunction: null }, defaultTime: { classPropertyName: "defaultTime", publicName: "defaultTime", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, meridianInput: { classPropertyName: "meridianInput", publicName: "meridian", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, host: { classAttribute: "ngx-mat-timepicker" }, providers: [
3707
3705
  {
3708
3706
  provide: NG_VALUE_ACCESSOR,
3709
3707
  useExisting: forwardRef(() => NgxMatTimepickerComponent),
@@ -3711,7 +3709,7 @@ class NgxMatTimepickerComponent {
3711
3709
  },
3712
3710
  ], exportAs: ["ngxMatTimepicker"], ngImport: i0, template: "<form [formGroup]=\"form\">\n <table class=\"ngx-mat-timepicker-table\">\n <tbody class=\"ngx-mat-timepicker-tbody\">\n @if (showSpinners()) {\n <tr>\n <td>\n <button\n type=\"button\"\n mat-icon-button\n aria-label=\"expand_less icon\"\n (click)=\"change('hour', true)\"\n [disabled]=\"disabled()\">\n <mat-icon>\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\">\n <path d=\"M18 15l-6-6-6 6\" />\n </svg>\n </mat-icon>\n </button>\n </td>\n <td></td>\n <td>\n <button\n type=\"button\"\n mat-icon-button\n aria-label=\"expand_less icon\"\n (click)=\"change('minute', true)\"\n [disabled]=\"disabled() || disableMinute()\">\n <mat-icon\n ><svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\">\n <path d=\"M18 15l-6-6-6 6\" /></svg\n ></mat-icon>\n </button>\n </td>\n <td></td>\n @if (showSeconds()) {\n <td>\n <button\n type=\"button\"\n mat-icon-button\n aria-label=\"expand_less icon\"\n (click)=\"change('second', true)\"\n [disabled]=\"disabled() || disableMinute()\">\n <mat-icon\n ><svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\">\n <path d=\"M18 15l-6-6-6 6\" /></svg\n ></mat-icon>\n </button>\n </td>\n }\n @if (enableMeridian()) {\n <td class=\"ngx-mat-timepicker-spacer\"></td>\n <td></td>\n }\n </tr>\n }\n\n <tr>\n <td>\n <mat-form-field appearance=\"fill\" [color]=\"color()\">\n <input\n type=\"text\"\n matInput\n (input)=\"formatInput($any($event).target)\"\n maxlength=\"2\"\n formControlName=\"hour\"\n (keydown.ArrowUp)=\"change('hour', true); $event.preventDefault()\"\n (keydown.ArrowDown)=\"change('hour', false); $event.preventDefault()\"\n (blur)=\"change('hour')\" />\n </mat-form-field>\n </td>\n <td class=\"ngx-mat-timepicker-spacer\">&#58;</td>\n <td>\n <mat-form-field appearance=\"fill\" [color]=\"color()\">\n <input\n type=\"text\"\n matInput\n (input)=\"formatInput($any($event).target)\"\n maxlength=\"2\"\n formControlName=\"minute\"\n (keydown.ArrowUp)=\"change('minute', true); $event.preventDefault()\"\n (keydown.ArrowDown)=\"change('minute', false); $event.preventDefault()\"\n (blur)=\"change('minute')\" />\n </mat-form-field>\n </td>\n @if (showSeconds()) {\n <td class=\"ngx-mat-timepicker-spacer\">&#58;</td>\n <td>\n <mat-form-field appearance=\"fill\" [color]=\"color()\">\n <input\n type=\"text\"\n matInput\n (input)=\"formatInput($any($event).target)\"\n maxlength=\"2\"\n formControlName=\"second\"\n (keydown.ArrowUp)=\"change('second', true); $event.preventDefault()\"\n (keydown.ArrowDown)=\"change('second', false); $event.preventDefault()\"\n (blur)=\"change('second')\" />\n </mat-form-field>\n </td>\n }\n\n @if (enableMeridian()) {\n <td class=\"ngx-mat-timepicker-spacer\"></td>\n\n <td class=\"ngx-mat-timepicker-meridian\">\n <button\n mat-button\n (click)=\"toggleMeridian()\"\n mat-stroked-button\n [color]=\"color()\"\n [disabled]=\"disabled()\">\n {{ meridian() }}\n </button>\n </td>\n }\n </tr>\n\n @if (showSpinners()) {\n <tr>\n <td>\n <button\n type=\"button\"\n mat-icon-button\n aria-label=\"keyboard_arrow_down icon\"\n (click)=\"change('hour', false)\"\n [disabled]=\"disabled()\">\n <mat-icon>\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\">\n <path d=\"M6 9l6 6 6-6\" />\n </svg>\n </mat-icon>\n </button>\n </td>\n <td></td>\n <td>\n <button\n type=\"button\"\n mat-icon-button\n aria-label=\"keyboard_arrow_down icon\"\n (click)=\"change('minute', false)\"\n [disabled]=\"disabled() || disableMinute()\">\n <mat-icon\n ><svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\">\n <path d=\"M6 9l6 6 6-6\" /></svg\n ></mat-icon>\n </button>\n </td>\n @if (showSeconds()) {\n <td></td>\n\n <td>\n <button\n type=\"button\"\n mat-icon-button\n aria-label=\"keyboard_arrow_down icon\"\n (click)=\"change('second', false)\"\n [disabled]=\"disabled() || disableMinute()\">\n <mat-icon\n ><svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\">\n <path d=\"M6 9l6 6 6-6\" /></svg\n ></mat-icon>\n </button>\n </td>\n }\n\n @if (enableMeridian()) {\n <td class=\"ngx-mat-timepicker-spacer\"></td>\n <td></td>\n }\n </tr>\n }\n </tbody>\n </table>\n</form>\n", styles: [".ngx-mat-timepicker form .ngx-mat-timepicker-table .ngx-mat-timepicker-tbody tr td{text-align:center}.ngx-mat-timepicker form .ngx-mat-timepicker-table .ngx-mat-timepicker-tbody tr td.ngx-mat-timepicker-spacer{font-weight:700}.ngx-mat-timepicker form .ngx-mat-timepicker-table .ngx-mat-timepicker-tbody tr td.ngx-mat-timepicker-meridian .mdc-button{min-width:64px;line-height:36px;min-width:0;border-radius:50%;width:36px;height:36px;padding:0;flex-shrink:0}.ngx-mat-timepicker form .ngx-mat-timepicker-table .ngx-mat-timepicker-tbody tr td .mat-mdc-icon-button{display:inline-flex;align-items:center;justify-content:center;height:var(--mat-icon-button-state-layer-size, 40px);width:var(--mdc-icon-button-state-layer-size, 40px);line-height:var(--mdc-icon-button-state-layer-size, 40px);font-size:var(--mdc-icon-button-icon-size, 24px);color:var(--mdc-icon-button-icon-color, var(--mat-sys-on-surface-variant));padding:calc((var(--mdc-icon-button-state-layer-size, 40px) - var(--mdc-icon-button-icon-size, 24px)) / 2)}.ngx-mat-timepicker form .ngx-mat-timepicker-table .ngx-mat-timepicker-tbody tr td .mat-mdc-icon-button .mat-icon{font-size:var(--mdc-icon-button-icon-size, 24px)}.ngx-mat-timepicker form .ngx-mat-timepicker-table .ngx-mat-timepicker-tbody tr td .mat-mdc-icon-button svg{width:var(--mdc-icon-button-icon-size, 24px);height:var(--mdc-icon-button-icon-size, 24px);vertical-align:baseline}.ngx-mat-timepicker form .ngx-mat-timepicker-table .ngx-mat-timepicker-tbody tr td .mat-mdc-icon-button:disabled,.ngx-mat-timepicker form .ngx-mat-timepicker-table .ngx-mat-timepicker-tbody tr td .mat-mdc-icon-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mdc-icon-button-disabled-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.ngx-mat-timepicker form .ngx-mat-timepicker-table .ngx-mat-timepicker-tbody tr td .mat-mdc-form-field{width:24px;max-width:24px;text-align:center}.ngx-mat-timepicker form .ngx-mat-timepicker-table .ngx-mat-timepicker-tbody tr td .mat-mdc-form-field.mat-focused .mdc-text-field--filled .mat-mdc-form-field-focus-overlay,.ngx-mat-timepicker form .ngx-mat-timepicker-table .ngx-mat-timepicker-tbody tr td .mat-mdc-form-field:hover .mdc-text-field--filled .mat-mdc-form-field-focus-overlay{background-color:transparent}.ngx-mat-timepicker form .ngx-mat-timepicker-table .ngx-mat-timepicker-tbody tr td .mat-mdc-form-field .mdc-text-field--filled{background-color:transparent!important;padding:0!important}.ngx-mat-timepicker form .ngx-mat-timepicker-table .ngx-mat-timepicker-tbody tr td .mat-mdc-form-field .mdc-text-field--filled .mat-mdc-form-field-infix{padding:4px 0;min-height:1px!important}.ngx-mat-timepicker form .ngx-mat-timepicker-table .ngx-mat-timepicker-tbody tr td .mat-mdc-form-field .mdc-text-field--filled .mat-mdc-form-field-infix input{text-align:center;font-size:14px}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2$1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
3713
3711
  }
3714
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatTimepickerComponent, decorators: [{
3712
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatTimepickerComponent, decorators: [{
3715
3713
  type: Component,
3716
3714
  args: [{ selector: 'ngx-mat-timepicker', host: {
3717
3715
  class: 'ngx-mat-timepicker',
@@ -3923,10 +3921,10 @@ class NgxMatDatepickerContent {
3923
3921
  this._changeDetectorRef.detectChanges();
3924
3922
  }
3925
3923
  }
3926
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerContent, deps: [{ token: i0.ChangeDetectorRef }, { token: NgxMatDateSelectionModel }, { token: i1.DateAdapter }, { token: NGX_MAT_DATE_RANGE_SELECTION_STRATEGY, optional: true }, { token: NgxMatDatepickerIntl }], target: i0.ɵɵFactoryTarget.Component });
3927
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.5", type: NgxMatDatepickerContent, isStandalone: true, selector: "ngx-mat-datepicker-content", inputs: { color: "color" }, host: { listeners: { "animationend": "_onAnimationEnd($event)" }, properties: { "class.mat-datepicker-content-touch": "datepicker!.touchUi", "class.mat-datepicker-content-touch-with-time": "!datepicker!.hideTime", "class.mat-primary": "this.isPrimary", "class.mat-accent": "this.isAccent", "class.mat-warn": "this.isWarn", "class.panel-enter-dropdown": "this.isEnterDropdown", "class.panel-enter-dialog": "this.isEnterDialog", "class.panel-leave": "this.isLeavingClass" }, classAttribute: "mat-datepicker-content" }, viewQueries: [{ propertyName: "_calendar", first: true, predicate: NgxMatCalendar, descendants: true, isSignal: true }], exportAs: ["ngxMatDatepickerContent"], ngImport: i0, template: "<div\n cdkTrapFocus\n role=\"dialog\"\n [attr.aria-modal]=\"true\"\n [attr.aria-labelledby]=\"_dialogLabelId ?? undefined\"\n class=\"mat-datepicker-content-container\"\n [class.mat-datepicker-content-container-with-custom-header]=\"\n datepicker?.calendarHeaderComponent()\n \"\n [class.mat-datepicker-content-container-with-actions]=\"_actionsPortal\"\n [class.mat-datepicker-content-container-with-time]=\"!datepicker!._hideTime\"\n>\n <ngx-mat-calendar\n [id]=\"datepicker!.id\"\n [ngClass]=\"datepicker!.panelClass\"\n [startAt]=\"datepicker!.startAt\"\n [startView]=\"datepicker!.startView()\"\n [minDate]=\"datepicker!._getMinDate()\"\n [maxDate]=\"datepicker!._getMaxDate()\"\n [dateFilter]=\"datepicker!._getDateFilter()\"\n [headerComponent]=\"datepicker!.calendarHeaderComponent()\"\n [selected]=\"_getSelected()\"\n [dateClass]=\"datepicker!.dateClass()\"\n [comparisonStart]=\"comparisonStart\"\n [comparisonEnd]=\"comparisonEnd\"\n [class.calendar-fade-enter]=\"false\"\n [startDateAccessibleName]=\"startDateAccessibleName\"\n [endDateAccessibleName]=\"endDateAccessibleName\"\n (yearSelected)=\"datepicker!._selectYear($event)\"\n (monthSelected)=\"datepicker!._selectMonth($event)\"\n (viewChanged)=\"datepicker!._viewChanged($event)\"\n (_userSelection)=\"_handleUserSelection($event)\"\n (_userDragDrop)=\"_handleUserDragDrop($event)\"\n />\n\n @if (isViewMonth) {\n @if (!datepicker!._hideTime) {\n <div\n class=\"time-container\"\n [ngClass]=\"datepicker!.panelClass\"\n [class.disable-seconds]=\"!datepicker!._showSeconds\"\n >\n <ngx-mat-timepicker\n [showSpinners]=\"datepicker!._showSpinners\"\n [showSeconds]=\"datepicker!._showSeconds\"\n [disabled]=\"datepicker!._disabled || !_modelTime\"\n [stepHour]=\"datepicker!._stepHour\"\n [stepMinute]=\"datepicker!._stepMinute\"\n [stepSecond]=\"datepicker!._stepSecond\"\n [(ngModel)]=\"_modelTime\"\n [color]=\"datepicker!._color\"\n [enableMeridian]=\"datepicker!._enableMeridian\"\n [disableMinute]=\"datepicker!._disableMinute\"\n (ngModelChange)=\"onTimeChanged($event)\"\n />\n </div>\n }\n }\n\n <ng-template [cdkPortalOutlet]=\"_actionsPortal\" />\n\n <!-- Invisible close button for screen reader users. -->\n <button\n type=\"button\"\n mat-raised-button\n [color]=\"color || 'primary'\"\n class=\"mat-datepicker-close-button\"\n [class.cdk-visually-hidden]=\"!_closeButtonFocused\"\n (focus)=\"_closeButtonFocused = true\"\n (blur)=\"_closeButtonFocused = false\"\n (click)=\"datepicker?.close()\"\n >\n {{ _closeButtonText }}\n </button>\n</div>\n", styles: ["@keyframes panelDropdownEnter{0%{opacity:0;transform:scaleY(.8)}to{opacity:1;transform:scale(1)}}@keyframes panelDialogEnter{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:none}}@keyframes panelLeave{0%{opacity:1}to{opacity:0}}.panel-enter-dropdown{animation:panelDropdownEnter .12s cubic-bezier(0,0,.2,1)}.panel-enter-dialog{animation:panelDialogEnter .15s cubic-bezier(0,0,.2,1)}.panel-leave{animation:panelLeave .1s linear forwards;pointer-events:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.calendar-fade-enter{animation:fadeIn .12s .1s cubic-bezier(.55,0,.55,.2) forwards}\n", ".mat-datepicker-content{display:block;border-radius:var(--mat-datepicker-calendar-container-shape, var(--mat-sys-corner-large, 4px));background-color:var(--mat-datepicker-calendar-container-background-color, var(--mat-sys-surface-container-high));color:var(--mat-datepicker-calendar-container-text-color, var(--mat-sys-on-surface));box-shadow:var(--mat-datepicker-calendar-container-elevation-shadow, 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12))}.mat-datepicker-content .mat-calendar{font-family:var(--mat-datepicker-calendar-text-font, var(--mat-sys-body-medium-font));font-size:var(--mat-datepicker-calendar-text-size, var(--mat-sys-body-medium-size));width:296px;height:354px}.mat-datepicker-content .mat-datepicker-content-container-with-custom-header .mat-calendar{height:auto}.mat-datepicker-content .mat-datepicker-close-button{position:absolute;top:100%;left:0;margin-top:8px}.ng-animating .mat-datepicker-content .mat-datepicker-close-button{display:none}.mat-datepicker-content-container{display:flex;flex-direction:column;justify-content:space-between}.time-container{display:flex;position:relative;padding-top:5px;justify-content:center}.time-container.disable-seconds .ngx-mat-timepicker .table{margin-left:9px}.time-container:before{content:\"\";position:absolute;top:0;left:0;right:0;height:1px;background-color:#0000001f}.mat-datepicker-content-touch{display:block;max-height:90vh;position:relative;overflow:visible}.mat-datepicker-content-touch .mat-datepicker-content-container{min-height:312px;max-height:815px;min-width:250px;max-width:750px}.mat-datepicker-content-touch .mat-calendar{width:100%;height:auto}@media all and (orientation:landscape){.mat-datepicker-content-touch .mat-datepicker-content-container{width:64vh;height:90vh}.mat-datepicker-content-touch .mat-datepicker-content-container.mat-datepicker-content-container-with-time{height:auto;max-height:none}}@media all and (orientation:portrait){.mat-datepicker-content-touch{max-height:100vh}.mat-datepicker-content-touch .mat-datepicker-content-container{width:80vw;height:100vw}.mat-datepicker-content-touch .mat-datepicker-content-container.mat-datepicker-content-container-with-time{height:auto;max-height:870px}.mat-datepicker-content-touch .mat-datepicker-content-container.mat-datepicker-content-container-with-time.mat-datepicker-content-container-with-actions{max-height:none!important}.mat-datepicker-content-touch .mat-datepicker-content-container-with-actions{height:115vw}}\n"], dependencies: [{ kind: "directive", type: CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "component", type: NgxMatCalendar, selector: "ngx-mat-calendar", inputs: ["headerComponent", "startAt", "startView", "selected", "minDate", "maxDate", "dateFilter", "dateClass", "comparisonStart", "comparisonEnd", "startDateAccessibleName", "endDateAccessibleName"], outputs: ["selectedChange", "yearSelected", "monthSelected", "viewChanged", "_userSelection", "_userDragDrop"], exportAs: ["ngxMatCalendar"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: NgxMatTimepickerComponent, selector: "ngx-mat-timepicker", inputs: ["disabled", "showSpinners", "stepHour", "stepMinute", "stepSecond", "showSeconds", "disableMinute", "enableMeridian", "defaultTime", "color", "meridian", "value"], outputs: ["valueChange"], exportAs: ["ngxMatTimepicker"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
3924
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerContent, deps: [{ token: i0.ChangeDetectorRef }, { token: NgxMatDateSelectionModel }, { token: i1.DateAdapter }, { token: NGX_MAT_DATE_RANGE_SELECTION_STRATEGY, optional: true }, { token: NgxMatDatepickerIntl }], target: i0.ɵɵFactoryTarget.Component });
3925
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.6", type: NgxMatDatepickerContent, isStandalone: true, selector: "ngx-mat-datepicker-content", inputs: { color: "color" }, host: { listeners: { "animationend": "_onAnimationEnd($event)" }, properties: { "class.mat-datepicker-content-touch": "datepicker!.touchUi", "class.mat-datepicker-content-touch-with-time": "!datepicker!.hideTime", "class.mat-primary": "this.isPrimary", "class.mat-accent": "this.isAccent", "class.mat-warn": "this.isWarn", "class.panel-enter-dropdown": "this.isEnterDropdown", "class.panel-enter-dialog": "this.isEnterDialog", "class.panel-leave": "this.isLeavingClass" }, classAttribute: "mat-datepicker-content" }, viewQueries: [{ propertyName: "_calendar", first: true, predicate: NgxMatCalendar, descendants: true, isSignal: true }], exportAs: ["ngxMatDatepickerContent"], ngImport: i0, template: "<div\n cdkTrapFocus\n role=\"dialog\"\n [attr.aria-modal]=\"true\"\n [attr.aria-labelledby]=\"_dialogLabelId ?? undefined\"\n class=\"mat-datepicker-content-container\"\n [class.mat-datepicker-content-container-with-custom-header]=\"\n datepicker?.calendarHeaderComponent()\n \"\n [class.mat-datepicker-content-container-with-actions]=\"_actionsPortal\"\n [class.mat-datepicker-content-container-with-time]=\"!datepicker!._hideTime\"\n>\n <ngx-mat-calendar\n [id]=\"datepicker!.id\"\n [ngClass]=\"datepicker!.panelClass\"\n [startAt]=\"datepicker!.startAt\"\n [startView]=\"datepicker!.startView()\"\n [minDate]=\"datepicker!._getMinDate()\"\n [maxDate]=\"datepicker!._getMaxDate()\"\n [dateFilter]=\"datepicker!._getDateFilter()\"\n [headerComponent]=\"datepicker!.calendarHeaderComponent()\"\n [selected]=\"_getSelected()\"\n [dateClass]=\"datepicker!.dateClass()\"\n [comparisonStart]=\"comparisonStart\"\n [comparisonEnd]=\"comparisonEnd\"\n [class.calendar-fade-enter]=\"false\"\n [startDateAccessibleName]=\"startDateAccessibleName\"\n [endDateAccessibleName]=\"endDateAccessibleName\"\n (yearSelected)=\"datepicker!._selectYear($event)\"\n (monthSelected)=\"datepicker!._selectMonth($event)\"\n (viewChanged)=\"datepicker!._viewChanged($event)\"\n (_userSelection)=\"_handleUserSelection($event)\"\n (_userDragDrop)=\"_handleUserDragDrop($event)\"\n />\n\n @if (isViewMonth) {\n @if (!datepicker!._hideTime) {\n <div\n class=\"time-container\"\n [ngClass]=\"datepicker!.panelClass\"\n [class.disable-seconds]=\"!datepicker!._showSeconds\"\n >\n <ngx-mat-timepicker\n [showSpinners]=\"datepicker!._showSpinners\"\n [showSeconds]=\"datepicker!._showSeconds\"\n [disabled]=\"datepicker!._disabled || !_modelTime\"\n [stepHour]=\"datepicker!._stepHour\"\n [stepMinute]=\"datepicker!._stepMinute\"\n [stepSecond]=\"datepicker!._stepSecond\"\n [(ngModel)]=\"_modelTime\"\n [color]=\"datepicker!._color\"\n [enableMeridian]=\"datepicker!._enableMeridian\"\n [disableMinute]=\"datepicker!._disableMinute\"\n (ngModelChange)=\"onTimeChanged($event)\"\n />\n </div>\n }\n }\n\n <ng-template [cdkPortalOutlet]=\"_actionsPortal\" />\n\n <!-- Invisible close button for screen reader users. -->\n <button\n type=\"button\"\n mat-raised-button\n [color]=\"color || 'primary'\"\n class=\"mat-datepicker-close-button\"\n [class.cdk-visually-hidden]=\"!_closeButtonFocused\"\n (focus)=\"_closeButtonFocused = true\"\n (blur)=\"_closeButtonFocused = false\"\n (click)=\"datepicker?.close()\"\n >\n {{ _closeButtonText }}\n </button>\n</div>\n", styles: ["@keyframes panelDropdownEnter{0%{opacity:0;transform:scaleY(.8)}to{opacity:1;transform:scale(1)}}@keyframes panelDialogEnter{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:none}}@keyframes panelLeave{0%{opacity:1}to{opacity:0}}.panel-enter-dropdown{animation:panelDropdownEnter .12s cubic-bezier(0,0,.2,1)}.panel-enter-dialog{animation:panelDialogEnter .15s cubic-bezier(0,0,.2,1)}.panel-leave{animation:panelLeave .1s linear forwards;pointer-events:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.calendar-fade-enter{animation:fadeIn .12s .1s cubic-bezier(.55,0,.55,.2) forwards}\n", ".mat-datepicker-content{display:block;border-radius:var(--mat-datepicker-calendar-container-shape, var(--mat-sys-corner-large, 4px));background-color:var(--mat-datepicker-calendar-container-background-color, var(--mat-sys-surface-container-high));color:var(--mat-datepicker-calendar-container-text-color, var(--mat-sys-on-surface));box-shadow:var(--mat-datepicker-calendar-container-elevation-shadow, 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12))}.mat-datepicker-content .mat-calendar{font-family:var(--mat-datepicker-calendar-text-font, var(--mat-sys-body-medium-font));font-size:var(--mat-datepicker-calendar-text-size, var(--mat-sys-body-medium-size));width:296px;height:354px}.mat-datepicker-content .mat-datepicker-content-container-with-custom-header .mat-calendar{height:auto}.mat-datepicker-content .mat-datepicker-close-button{position:absolute;top:100%;left:0;margin-top:8px}.ng-animating .mat-datepicker-content .mat-datepicker-close-button{display:none}.mat-datepicker-content-container{display:flex;flex-direction:column;justify-content:space-between}.time-container{display:flex;position:relative;padding-top:5px;justify-content:center}.time-container.disable-seconds .ngx-mat-timepicker .table{margin-left:9px}.time-container:before{content:\"\";position:absolute;top:0;left:0;right:0;height:1px;background-color:#0000001f}.mat-datepicker-content-touch{display:block;max-height:90vh;position:relative;overflow:visible}.mat-datepicker-content-touch .mat-datepicker-content-container{min-height:312px;max-height:815px;min-width:250px;max-width:750px}.mat-datepicker-content-touch .mat-calendar{width:100%;height:auto}@media all and (orientation:landscape){.mat-datepicker-content-touch .mat-datepicker-content-container{width:64vh;height:90vh}.mat-datepicker-content-touch .mat-datepicker-content-container.mat-datepicker-content-container-with-time{height:auto;max-height:none}}@media all and (orientation:portrait){.mat-datepicker-content-touch{max-height:100vh}.mat-datepicker-content-touch .mat-datepicker-content-container{width:80vw;height:100vw}.mat-datepicker-content-touch .mat-datepicker-content-container.mat-datepicker-content-container-with-time{height:auto;max-height:870px}.mat-datepicker-content-touch .mat-datepicker-content-container.mat-datepicker-content-container-with-time.mat-datepicker-content-container-with-actions{max-height:none!important}.mat-datepicker-content-touch .mat-datepicker-content-container-with-actions{height:115vw}}\n"], dependencies: [{ kind: "directive", type: CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "component", type: NgxMatCalendar, selector: "ngx-mat-calendar", inputs: ["headerComponent", "startAt", "startView", "selected", "minDate", "maxDate", "dateFilter", "dateClass", "comparisonStart", "comparisonEnd", "startDateAccessibleName", "endDateAccessibleName"], outputs: ["selectedChange", "yearSelected", "monthSelected", "viewChanged", "_userSelection", "_userDragDrop"], exportAs: ["ngxMatCalendar"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: NgxMatTimepickerComponent, selector: "ngx-mat-timepicker", inputs: ["disabled", "showSpinners", "stepHour", "stepMinute", "stepSecond", "showSeconds", "disableMinute", "enableMeridian", "defaultTime", "color", "meridian", "value"], outputs: ["valueChange"], exportAs: ["ngxMatTimepicker"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
3928
3926
  }
3929
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerContent, decorators: [{
3927
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerContent, decorators: [{
3930
3928
  type: Component,
3931
3929
  args: [{ selector: 'ngx-mat-datepicker-content', host: {
3932
3930
  class: 'mat-datepicker-content',
@@ -3981,7 +3979,7 @@ class NgxMatDatepickerBase {
3981
3979
  _inputStateChanges = Subscription.EMPTY;
3982
3980
  _document = inject(DOCUMENT);
3983
3981
  /** An input indicating the type of the custom header component for the calendar, if set. */
3984
- calendarHeaderComponent = input(...(ngDevMode ? [undefined, { debugName: "calendarHeaderComponent" }] : []));
3982
+ calendarHeaderComponent = input(...(ngDevMode ? [undefined, { debugName: "calendarHeaderComponent" }] : /* istanbul ignore next */ []));
3985
3983
  /** The date to open the calendar to initially. */
3986
3984
  get startAt() {
3987
3985
  // If an explicit startAt is set we start there, otherwise we start at whatever the currently
@@ -3993,7 +3991,7 @@ class NgxMatDatepickerBase {
3993
3991
  }
3994
3992
  _startAt = null;
3995
3993
  /** The view that the calendar should start in. */
3996
- startView = input('month', ...(ngDevMode ? [{ debugName: "startView" }] : []));
3994
+ startView = input('month', ...(ngDevMode ? [{ debugName: "startView" }] : /* istanbul ignore next */ []));
3997
3995
  /** Color palette to use on the datepicker's calendar. */
3998
3996
  get color() {
3999
3997
  return (this._color || (this.datepickerInput ? this.datepickerInput.getThemePalette() : undefined));
@@ -4035,9 +4033,9 @@ class NgxMatDatepickerBase {
4035
4033
  }
4036
4034
  _disabled = false;
4037
4035
  /** Preferred position of the datepicker in the X axis. */
4038
- xPosition = input('start', ...(ngDevMode ? [{ debugName: "xPosition" }] : []));
4036
+ xPosition = input('start', ...(ngDevMode ? [{ debugName: "xPosition" }] : /* istanbul ignore next */ []));
4039
4037
  /** Preferred position of the datepicker in the Y axis. */
4040
- yPosition = input('below', ...(ngDevMode ? [{ debugName: "yPosition" }] : []));
4038
+ yPosition = input('below', ...(ngDevMode ? [{ debugName: "yPosition" }] : /* istanbul ignore next */ []));
4041
4039
  /**
4042
4040
  * Whether to restore focus to the previously-focused element when the calendar is closed.
4043
4041
  * Note that automatic focus restoration is an accessibility feature and it is recommended that
@@ -4065,7 +4063,7 @@ class NgxMatDatepickerBase {
4065
4063
  */
4066
4064
  viewChanged = output();
4067
4065
  /** Function that can be used to add custom CSS classes to dates. */
4068
- dateClass = input(...(ngDevMode ? [undefined, { debugName: "dateClass" }] : []));
4066
+ dateClass = input(...(ngDevMode ? [undefined, { debugName: "dateClass" }] : /* istanbul ignore next */ []));
4069
4067
  /** Emits when the datepicker has been opened. */
4070
4068
  openedStream = new EventEmitter();
4071
4069
  /** Emits when the datepicker has been closed. */
@@ -4449,10 +4447,10 @@ class NgxMatDatepickerBase {
4449
4447
  ctrlShiftMetaModifiers.every((modifier) => !hasModifierKey(event, modifier))));
4450
4448
  })));
4451
4449
  }
4452
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerBase, deps: [{ token: i5$1.Overlay }, { token: i0.NgZone }, { token: i0.ViewContainerRef }, { token: NGX_MAT_DATEPICKER_SCROLL_STRATEGY }, { token: i1.DateAdapter, optional: true }, { token: i2.Directionality, optional: true }, { token: NgxMatDateSelectionModel }], target: i0.ɵɵFactoryTarget.Directive });
4453
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.5", type: NgxMatDatepickerBase, isStandalone: true, inputs: { calendarHeaderComponent: { classPropertyName: "calendarHeaderComponent", publicName: "calendarHeaderComponent", isSignal: true, isRequired: false, transformFunction: null }, startAt: { classPropertyName: "startAt", publicName: "startAt", isSignal: false, isRequired: false, transformFunction: null }, startView: { classPropertyName: "startView", publicName: "startView", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: false, isRequired: false, transformFunction: null }, touchUi: { classPropertyName: "touchUi", publicName: "touchUi", isSignal: false, isRequired: false, transformFunction: null }, hideTime: { classPropertyName: "hideTime", publicName: "hideTime", isSignal: false, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, xPosition: { classPropertyName: "xPosition", publicName: "xPosition", isSignal: true, isRequired: false, transformFunction: null }, yPosition: { classPropertyName: "yPosition", publicName: "yPosition", isSignal: true, isRequired: false, transformFunction: null }, restoreFocus: { classPropertyName: "restoreFocus", publicName: "restoreFocus", isSignal: false, isRequired: false, transformFunction: null }, dateClass: { classPropertyName: "dateClass", publicName: "dateClass", isSignal: true, isRequired: false, transformFunction: null }, panelClass: { classPropertyName: "panelClass", publicName: "panelClass", isSignal: false, isRequired: false, transformFunction: null }, opened: { classPropertyName: "opened", publicName: "opened", isSignal: false, isRequired: false, transformFunction: null }, showSpinners: { classPropertyName: "showSpinners", publicName: "showSpinners", isSignal: false, isRequired: false, transformFunction: null }, showSeconds: { classPropertyName: "showSeconds", publicName: "showSeconds", isSignal: false, isRequired: false, transformFunction: null }, stepHour: { classPropertyName: "stepHour", publicName: "stepHour", isSignal: false, isRequired: false, transformFunction: null }, stepMinute: { classPropertyName: "stepMinute", publicName: "stepMinute", isSignal: false, isRequired: false, transformFunction: null }, stepSecond: { classPropertyName: "stepSecond", publicName: "stepSecond", isSignal: false, isRequired: false, transformFunction: null }, enableMeridian: { classPropertyName: "enableMeridian", publicName: "enableMeridian", isSignal: false, isRequired: false, transformFunction: null }, disableMinute: { classPropertyName: "disableMinute", publicName: "disableMinute", isSignal: false, isRequired: false, transformFunction: null }, defaultTime: { classPropertyName: "defaultTime", publicName: "defaultTime", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { yearSelected: "yearSelected", monthSelected: "monthSelected", viewChanged: "viewChanged", openedStream: "opened", closedStream: "closed" }, usesOnChanges: true, ngImport: i0 });
4450
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerBase, deps: [{ token: i5$1.Overlay }, { token: i0.NgZone }, { token: i0.ViewContainerRef }, { token: NGX_MAT_DATEPICKER_SCROLL_STRATEGY }, { token: i1.DateAdapter, optional: true }, { token: i2.Directionality, optional: true }, { token: NgxMatDateSelectionModel }], target: i0.ɵɵFactoryTarget.Directive });
4451
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.6", type: NgxMatDatepickerBase, isStandalone: true, inputs: { calendarHeaderComponent: { classPropertyName: "calendarHeaderComponent", publicName: "calendarHeaderComponent", isSignal: true, isRequired: false, transformFunction: null }, startAt: { classPropertyName: "startAt", publicName: "startAt", isSignal: false, isRequired: false, transformFunction: null }, startView: { classPropertyName: "startView", publicName: "startView", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: false, isRequired: false, transformFunction: null }, touchUi: { classPropertyName: "touchUi", publicName: "touchUi", isSignal: false, isRequired: false, transformFunction: null }, hideTime: { classPropertyName: "hideTime", publicName: "hideTime", isSignal: false, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, xPosition: { classPropertyName: "xPosition", publicName: "xPosition", isSignal: true, isRequired: false, transformFunction: null }, yPosition: { classPropertyName: "yPosition", publicName: "yPosition", isSignal: true, isRequired: false, transformFunction: null }, restoreFocus: { classPropertyName: "restoreFocus", publicName: "restoreFocus", isSignal: false, isRequired: false, transformFunction: null }, dateClass: { classPropertyName: "dateClass", publicName: "dateClass", isSignal: true, isRequired: false, transformFunction: null }, panelClass: { classPropertyName: "panelClass", publicName: "panelClass", isSignal: false, isRequired: false, transformFunction: null }, opened: { classPropertyName: "opened", publicName: "opened", isSignal: false, isRequired: false, transformFunction: null }, showSpinners: { classPropertyName: "showSpinners", publicName: "showSpinners", isSignal: false, isRequired: false, transformFunction: null }, showSeconds: { classPropertyName: "showSeconds", publicName: "showSeconds", isSignal: false, isRequired: false, transformFunction: null }, stepHour: { classPropertyName: "stepHour", publicName: "stepHour", isSignal: false, isRequired: false, transformFunction: null }, stepMinute: { classPropertyName: "stepMinute", publicName: "stepMinute", isSignal: false, isRequired: false, transformFunction: null }, stepSecond: { classPropertyName: "stepSecond", publicName: "stepSecond", isSignal: false, isRequired: false, transformFunction: null }, enableMeridian: { classPropertyName: "enableMeridian", publicName: "enableMeridian", isSignal: false, isRequired: false, transformFunction: null }, disableMinute: { classPropertyName: "disableMinute", publicName: "disableMinute", isSignal: false, isRequired: false, transformFunction: null }, defaultTime: { classPropertyName: "defaultTime", publicName: "defaultTime", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { yearSelected: "yearSelected", monthSelected: "monthSelected", viewChanged: "viewChanged", openedStream: "opened", closedStream: "closed" }, usesOnChanges: true, ngImport: i0 });
4454
4452
  }
4455
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerBase, decorators: [{
4453
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerBase, decorators: [{
4456
4454
  type: Directive
4457
4455
  }], ctorParameters: () => [{ type: i5$1.Overlay }, { type: i0.NgZone }, { type: i0.ViewContainerRef }, { type: undefined, decorators: [{
4458
4456
  type: Inject,
@@ -4516,14 +4514,14 @@ class NgxMatDateRangePicker extends NgxMatDatepickerBase {
4516
4514
  instance.endDateAccessibleName = input._getEndDateAccessibleName();
4517
4515
  }
4518
4516
  }
4519
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDateRangePicker, deps: null, target: i0.ɵɵFactoryTarget.Component });
4520
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.5", type: NgxMatDateRangePicker, isStandalone: true, selector: "ngx-mat-date-range-picker", providers: [
4517
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDateRangePicker, deps: null, target: i0.ɵɵFactoryTarget.Component });
4518
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.6", type: NgxMatDateRangePicker, isStandalone: true, selector: "ngx-mat-date-range-picker", providers: [
4521
4519
  NGX_MAT_RANGE_DATE_SELECTION_MODEL_PROVIDER,
4522
4520
  NGX_MAT_CALENDAR_RANGE_STRATEGY_PROVIDER,
4523
4521
  { provide: NgxMatDatepickerBase, useExisting: NgxMatDateRangePicker },
4524
4522
  ], exportAs: ["ngxMatDateRangePicker"], usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
4525
4523
  }
4526
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDateRangePicker, decorators: [{
4524
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDateRangePicker, decorators: [{
4527
4525
  type: Component,
4528
4526
  args: [{
4529
4527
  selector: 'ngx-mat-date-range-picker',
@@ -4544,14 +4542,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImpor
4544
4542
  // if angular adds support for `exportAs: '$implicit'` on directives.
4545
4543
  /** Component responsible for managing the datepicker popup/dialog. */
4546
4544
  class NgxMatDatetimepicker extends NgxMatDatepickerBase {
4547
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatetimepicker, deps: null, target: i0.ɵɵFactoryTarget.Component });
4548
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.5", type: NgxMatDatetimepicker, isStandalone: true, selector: "ngx-mat-datetime-picker", providers: [
4545
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatetimepicker, deps: null, target: i0.ɵɵFactoryTarget.Component });
4546
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.6", type: NgxMatDatetimepicker, isStandalone: true, selector: "ngx-mat-datetime-picker", providers: [
4549
4547
  NGX_MAT_SINGLE_DATE_SELECTION_MODEL_PROVIDER,
4550
4548
  NGX_MAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER,
4551
4549
  { provide: NgxMatDatepickerBase, useExisting: NgxMatDatetimepicker },
4552
4550
  ], exportAs: ["ngxMatDatetimePicker"], usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
4553
4551
  }
4554
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatetimepicker, decorators: [{
4552
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatetimepicker, decorators: [{
4555
4553
  type: Component,
4556
4554
  args: [{
4557
4555
  selector: 'ngx-mat-datetime-picker',
@@ -4577,10 +4575,10 @@ class NgxMatDatepickerApply {
4577
4575
  this._datepicker._applyPendingSelection();
4578
4576
  this._datepicker.close();
4579
4577
  }
4580
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerApply, deps: [{ token: NgxMatDatepickerBase }], target: i0.ɵɵFactoryTarget.Directive });
4581
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.5", type: NgxMatDatepickerApply, isStandalone: true, selector: "[ngxMatDatepickerApply], [ngxMatDateRangePickerApply]", host: { listeners: { "click": "_applySelection()" } }, ngImport: i0 });
4578
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerApply, deps: [{ token: NgxMatDatepickerBase }], target: i0.ɵɵFactoryTarget.Directive });
4579
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.6", type: NgxMatDatepickerApply, isStandalone: true, selector: "[ngxMatDatepickerApply], [ngxMatDateRangePickerApply]", host: { listeners: { "click": "_applySelection()" } }, ngImport: i0 });
4582
4580
  }
4583
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerApply, decorators: [{
4581
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerApply, decorators: [{
4584
4582
  type: Directive,
4585
4583
  args: [{
4586
4584
  selector: '[ngxMatDatepickerApply], [ngxMatDateRangePickerApply]',
@@ -4599,10 +4597,10 @@ class NgxMatDatepickerClear {
4599
4597
  this._datepicker.close();
4600
4598
  }
4601
4599
  }
4602
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerClear, deps: [{ token: NgxMatDatepickerBase }], target: i0.ɵɵFactoryTarget.Directive });
4603
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "21.1.5", type: NgxMatDatepickerClear, isStandalone: true, selector: "[ngxMatDatepickerClear], [ngxMatDateRangePickerClear]", inputs: { close: ["close", "close", booleanAttribute] }, host: { listeners: { "click": "_clearSelection()" } }, ngImport: i0 });
4600
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerClear, deps: [{ token: NgxMatDatepickerBase }], target: i0.ɵɵFactoryTarget.Directive });
4601
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "21.2.6", type: NgxMatDatepickerClear, isStandalone: true, selector: "[ngxMatDatepickerClear], [ngxMatDateRangePickerClear]", inputs: { close: ["close", "close", booleanAttribute] }, host: { listeners: { "click": "_clearSelection()" } }, ngImport: i0 });
4604
4602
  }
4605
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerClear, decorators: [{
4603
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerClear, decorators: [{
4606
4604
  type: Directive,
4607
4605
  args: [{
4608
4606
  selector: '[ngxMatDatepickerClear], [ngxMatDateRangePickerClear]',
@@ -4620,10 +4618,10 @@ class NgxMatDatepickerCancel {
4620
4618
  constructor(_datepicker) {
4621
4619
  this._datepicker = _datepicker;
4622
4620
  }
4623
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerCancel, deps: [{ token: NgxMatDatepickerBase }], target: i0.ɵɵFactoryTarget.Directive });
4624
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.5", type: NgxMatDatepickerCancel, isStandalone: true, selector: "[ngxMatDatepickerCancel], [ngxMatDateRangePickerCancel]", host: { listeners: { "click": "_datepicker.close()" } }, ngImport: i0 });
4621
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerCancel, deps: [{ token: NgxMatDatepickerBase }], target: i0.ɵɵFactoryTarget.Directive });
4622
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.6", type: NgxMatDatepickerCancel, isStandalone: true, selector: "[ngxMatDatepickerCancel], [ngxMatDateRangePickerCancel]", host: { listeners: { "click": "_datepicker.close()" } }, ngImport: i0 });
4625
4623
  }
4626
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerCancel, decorators: [{
4624
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerCancel, decorators: [{
4627
4625
  type: Directive,
4628
4626
  args: [{
4629
4627
  selector: '[ngxMatDatepickerCancel], [ngxMatDateRangePickerCancel]',
@@ -4637,7 +4635,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImpor
4637
4635
  class NgxMatDatepickerActions {
4638
4636
  _datepicker;
4639
4637
  _viewContainerRef;
4640
- _template = viewChild(TemplateRef, ...(ngDevMode ? [{ debugName: "_template" }] : []));
4638
+ _template = viewChild(TemplateRef, ...(ngDevMode ? [{ debugName: "_template" }] : /* istanbul ignore next */ []));
4641
4639
  _portal = null;
4642
4640
  constructor(_datepicker, _viewContainerRef) {
4643
4641
  this._datepicker = _datepicker;
@@ -4654,8 +4652,8 @@ class NgxMatDatepickerActions {
4654
4652
  this._portal?.detach();
4655
4653
  }
4656
4654
  }
4657
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerActions, deps: [{ token: NgxMatDatepickerBase }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
4658
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.1.5", type: NgxMatDatepickerActions, isStandalone: true, selector: "ngx-mat-datepicker-actions, ngx-mat-date-range-picker-actions", viewQueries: [{ propertyName: "_template", first: true, predicate: TemplateRef, descendants: true, isSignal: true }], ngImport: i0, template: `
4655
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerActions, deps: [{ token: NgxMatDatepickerBase }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
4656
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.6", type: NgxMatDatepickerActions, isStandalone: true, selector: "ngx-mat-datepicker-actions, ngx-mat-date-range-picker-actions", viewQueries: [{ propertyName: "_template", first: true, predicate: TemplateRef, descendants: true, isSignal: true }], ngImport: i0, template: `
4659
4657
  <ng-template>
4660
4658
  <div class="mat-datepicker-actions">
4661
4659
  <ng-content></ng-content>
@@ -4663,7 +4661,7 @@ class NgxMatDatepickerActions {
4663
4661
  </ng-template>
4664
4662
  `, isInline: true, styles: [".mat-datepicker-actions{display:flex;justify-content:flex-end;align-items:center;padding:8px}.mat-datepicker-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-datepicker-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
4665
4663
  }
4666
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerActions, decorators: [{
4664
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerActions, decorators: [{
4667
4665
  type: Component,
4668
4666
  args: [{ selector: 'ngx-mat-datepicker-actions, ngx-mat-date-range-picker-actions', template: `
4669
4667
  <ng-template>
@@ -4797,14 +4795,14 @@ class NgxMatDatepickerInput extends NgxMatDatepickerInputBase {
4797
4795
  _shouldHandleChangeEvent(event) {
4798
4796
  return event.source !== this;
4799
4797
  }
4800
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerInput, deps: [{ token: i0.ElementRef }, { token: i1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }, { token: MAT_FORM_FIELD, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
4801
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.5", type: NgxMatDatepickerInput, isStandalone: true, selector: "input[ngxMatDatetimePicker]", inputs: { ngxMatDatetimePicker: "ngxMatDatetimePicker", min: "min", max: "max", dateFilter: ["matDatepickerFilter", "dateFilter"] }, host: { listeners: { "input": "_onInput($event)", "change": "_onChange()", "blur": "_onBlur()", "keydown": "_onKeydown($event)" }, properties: { "attr.aria-haspopup": "_datepicker ? \"dialog\" : null", "attr.aria-owns": "(_datepicker?.opened && _datepicker?.id) || null", "attr.min": "min ? _dateAdapter.toIso8601(min) : null", "attr.max": "max ? _dateAdapter.toIso8601(max) : null", "attr.data-mat-calendar": "_datepicker ? _datepicker.id : null", "disabled": "disabled" }, classAttribute: "mat-datepicker-input" }, providers: [
4798
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerInput, deps: [{ token: i0.ElementRef }, { token: i1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }, { token: MAT_FORM_FIELD, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
4799
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.6", type: NgxMatDatepickerInput, isStandalone: true, selector: "input[ngxMatDatetimePicker]", inputs: { ngxMatDatetimePicker: "ngxMatDatetimePicker", min: "min", max: "max", dateFilter: ["matDatepickerFilter", "dateFilter"] }, host: { listeners: { "input": "_onInput($event)", "change": "_onChange()", "blur": "_onBlur()", "keydown": "_onKeydown($event)" }, properties: { "attr.aria-haspopup": "_datepicker ? \"dialog\" : null", "attr.aria-owns": "(_datepicker?.opened && _datepicker?.id) || null", "attr.min": "min ? _dateAdapter.toIso8601(min) : null", "attr.max": "max ? _dateAdapter.toIso8601(max) : null", "attr.data-mat-calendar": "_datepicker ? _datepicker.id : null", "disabled": "disabled" }, classAttribute: "mat-datepicker-input" }, providers: [
4802
4800
  NGX_MAT_DATEPICKER_VALUE_ACCESSOR,
4803
4801
  NGX_MAT_DATEPICKER_VALIDATORS,
4804
4802
  { provide: MAT_INPUT_VALUE_ACCESSOR, useExisting: NgxMatDatepickerInput },
4805
4803
  ], exportAs: ["ngxMatDatepickerInput"], usesInheritance: true, ngImport: i0 });
4806
4804
  }
4807
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerInput, decorators: [{
4805
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerInput, decorators: [{
4808
4806
  type: Directive,
4809
4807
  args: [{
4810
4808
  selector: 'input[ngxMatDatetimePicker]',
@@ -4855,10 +4853,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImpor
4855
4853
 
4856
4854
  /** Can be used to override the icon of a `matDatepickerToggle`. */
4857
4855
  class NgxMatDatepickerToggleIcon {
4858
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerToggleIcon, deps: [], target: i0.ɵɵFactoryTarget.Directive });
4859
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.5", type: NgxMatDatepickerToggleIcon, isStandalone: true, selector: "[ngxMatDatepickerToggleIcon]", ngImport: i0 });
4856
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerToggleIcon, deps: [], target: i0.ɵɵFactoryTarget.Directive });
4857
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.6", type: NgxMatDatepickerToggleIcon, isStandalone: true, selector: "[ngxMatDatepickerToggleIcon]", ngImport: i0 });
4860
4858
  }
4861
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerToggleIcon, decorators: [{
4859
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerToggleIcon, decorators: [{
4862
4860
  type: Directive,
4863
4861
  args: [{
4864
4862
  selector: '[ngxMatDatepickerToggleIcon]',
@@ -4869,11 +4867,11 @@ class NgxMatDatepickerToggle {
4869
4867
  _changeDetectorRef;
4870
4868
  _stateChanges = Subscription.EMPTY;
4871
4869
  /** Datepicker instance that the button will toggle. */
4872
- datepicker = input(undefined, { ...(ngDevMode ? { debugName: "datepicker" } : {}), alias: 'for' });
4870
+ datepicker = input(undefined, { ...(ngDevMode ? { debugName: "datepicker" } : /* istanbul ignore next */ {}), alias: 'for' });
4873
4871
  /** Tabindex for the toggle. */
4874
4872
  tabIndex = null;
4875
4873
  /** Screen-reader label for the button. */
4876
- ariaLabel = input(undefined, { ...(ngDevMode ? { debugName: "ariaLabel" } : {}), alias: 'aria-label' });
4874
+ ariaLabel = input(undefined, { ...(ngDevMode ? { debugName: "ariaLabel" } : /* istanbul ignore next */ {}), alias: 'aria-label' });
4877
4875
  /** Whether the toggle button is disabled. */
4878
4876
  get disabled() {
4879
4877
  if (this._disabled === undefined && this.datepicker()) {
@@ -4886,9 +4884,9 @@ class NgxMatDatepickerToggle {
4886
4884
  }
4887
4885
  _disabled = false;
4888
4886
  /** Whether ripples on the toggle should be disabled. */
4889
- disableRipple = input(...(ngDevMode ? [undefined, { debugName: "disableRipple" }] : []));
4887
+ disableRipple = input(...(ngDevMode ? [undefined, { debugName: "disableRipple" }] : /* istanbul ignore next */ []));
4890
4888
  /** Underlying button element. */
4891
- _button = viewChild('button', ...(ngDevMode ? [{ debugName: "_button" }] : []));
4889
+ _button = viewChild('button', ...(ngDevMode ? [{ debugName: "_button" }] : /* istanbul ignore next */ []));
4892
4890
  constructor(_intl, _changeDetectorRef, defaultTabIndex) {
4893
4891
  this._intl = _intl;
4894
4892
  this._changeDetectorRef = _changeDetectorRef;
@@ -4924,10 +4922,10 @@ class NgxMatDatepickerToggle {
4924
4922
  this._stateChanges.unsubscribe();
4925
4923
  this._stateChanges = merge(this._intl.changes, datepickerStateChanged, inputStateChanged, datepickerToggled).subscribe(() => this._changeDetectorRef.markForCheck());
4926
4924
  }
4927
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerToggle, deps: [{ token: NgxMatDatepickerIntl }, { token: i0.ChangeDetectorRef }, { token: 'tabindex', attribute: true }], target: i0.ɵɵFactoryTarget.Component });
4928
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.1.5", type: NgxMatDatepickerToggle, isStandalone: true, selector: "ngx-mat-datepicker-toggle", inputs: { datepicker: { classPropertyName: "datepicker", publicName: "for", isSignal: true, isRequired: false, transformFunction: null }, tabIndex: { classPropertyName: "tabIndex", publicName: "tabIndex", isSignal: false, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "aria-label", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, disableRipple: { classPropertyName: "disableRipple", publicName: "disableRipple", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "click": "_open($event)" }, properties: { "attr.tabindex": "null", "class.mat-datepicker-toggle-active": "datepicker()?.opened", "class.mat-accent": "datepicker()?.color === \"accent\"", "class.mat-warn": "datepicker()?.color === \"warn\"", "attr.data-mat-calendar": "datepicker()?.id" }, classAttribute: "mat-datepicker-toggle" }, viewQueries: [{ propertyName: "_button", first: true, predicate: ["button"], descendants: true, isSignal: true }], exportAs: ["ngxMatDatepickerToggle"], ngImport: i0, template: "<button\n #button\n mat-icon-button\n type=\"button\"\n [attr.aria-haspopup]=\"datepicker() ? 'dialog' : null\"\n [attr.aria-label]=\"ariaLabel() || _intl.openCalendarLabel\"\n [attr.tabindex]=\"disabled ? -1 : tabIndex\"\n [disabled]=\"disabled\"\n [disableRipple]=\"disableRipple()\"\n>\n <ng-content select=\"[ngxMatDatepickerToggleIcon]\">\n <svg\n class=\"mat-datepicker-toggle-default-icon\"\n viewBox=\"0 0 24 24\"\n width=\"24px\"\n height=\"24px\"\n fill=\"currentColor\"\n focusable=\"false\"\n >\n <path\n d=\"M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z\"\n />\n </svg>\n </ng-content>\n</button>\n", styles: [".mat-datepicker-toggle{pointer-events:auto;color:var(--mat-datepicker-toggle-icon-color, var(--mat-sys-on-surface-variant))}@media(forced-colors:active){.mat-datepicker-toggle-default-icon{color:CanvasText}}\n"], dependencies: [{ kind: "component", type: MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
4925
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerToggle, deps: [{ token: NgxMatDatepickerIntl }, { token: i0.ChangeDetectorRef }, { token: 'tabindex', attribute: true }], target: i0.ɵɵFactoryTarget.Component });
4926
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.6", type: NgxMatDatepickerToggle, isStandalone: true, selector: "ngx-mat-datepicker-toggle", inputs: { datepicker: { classPropertyName: "datepicker", publicName: "for", isSignal: true, isRequired: false, transformFunction: null }, tabIndex: { classPropertyName: "tabIndex", publicName: "tabIndex", isSignal: false, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "aria-label", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, disableRipple: { classPropertyName: "disableRipple", publicName: "disableRipple", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "click": "_open($event)" }, properties: { "attr.tabindex": "null", "class.mat-datepicker-toggle-active": "datepicker()?.opened", "class.mat-accent": "datepicker()?.color === \"accent\"", "class.mat-warn": "datepicker()?.color === \"warn\"", "attr.data-mat-calendar": "datepicker()?.id" }, classAttribute: "mat-datepicker-toggle" }, viewQueries: [{ propertyName: "_button", first: true, predicate: ["button"], descendants: true, isSignal: true }], exportAs: ["ngxMatDatepickerToggle"], ngImport: i0, template: "<button\n #button\n mat-icon-button\n type=\"button\"\n [attr.aria-haspopup]=\"datepicker() ? 'dialog' : null\"\n [attr.aria-label]=\"ariaLabel() || _intl.openCalendarLabel\"\n [attr.tabindex]=\"disabled ? -1 : tabIndex\"\n [disabled]=\"disabled\"\n [disableRipple]=\"disableRipple()\"\n>\n <ng-content select=\"[ngxMatDatepickerToggleIcon]\">\n <svg\n class=\"mat-datepicker-toggle-default-icon\"\n viewBox=\"0 0 24 24\"\n width=\"24px\"\n height=\"24px\"\n fill=\"currentColor\"\n focusable=\"false\"\n >\n <path\n d=\"M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z\"\n />\n </svg>\n </ng-content>\n</button>\n", styles: [".mat-datepicker-toggle{pointer-events:auto;color:var(--mat-datepicker-toggle-icon-color, var(--mat-sys-on-surface-variant))}@media(forced-colors:active){.mat-datepicker-toggle-default-icon{color:CanvasText}}\n"], dependencies: [{ kind: "component", type: MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
4929
4927
  }
4930
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatepickerToggle, decorators: [{
4928
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatepickerToggle, decorators: [{
4931
4929
  type: Component,
4932
4930
  args: [{ selector: 'ngx-mat-datepicker-toggle', host: {
4933
4931
  class: 'mat-datepicker-toggle',
@@ -4959,8 +4957,8 @@ class NgxMatDatetimePickerContentV2 {
4959
4957
  _dateAdapter = inject((DateAdapter));
4960
4958
  _destroyed = new Subject();
4961
4959
  // Signals for reactive state management
4962
- selectedDate = signal(this.data.value || null, ...(ngDevMode ? [{ debugName: "selectedDate" }] : []));
4963
- selectedDateTime = signal(this.data.value || null, ...(ngDevMode ? [{ debugName: "selectedDateTime" }] : []));
4960
+ selectedDate = signal(this.data.value || null, ...(ngDevMode ? [{ debugName: "selectedDate" }] : /* istanbul ignore next */ []));
4961
+ selectedDateTime = signal(this.data.value || null, ...(ngDevMode ? [{ debugName: "selectedDateTime" }] : /* istanbul ignore next */ []));
4964
4962
  constructor() {
4965
4963
  // Initialize values once without effects to avoid reset loops
4966
4964
  const initialValue = this.data.value;
@@ -5072,8 +5070,8 @@ class NgxMatDatetimePickerContentV2 {
5072
5070
  dateObj.setMilliseconds(0);
5073
5071
  return this._dateAdapter.deserialize(dateObj.toISOString());
5074
5072
  }
5075
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatetimePickerContentV2, deps: [], target: i0.ɵɵFactoryTarget.Component });
5076
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.5", type: NgxMatDatetimePickerContentV2, isStandalone: true, selector: "ngx-mat-datetime-picker-content-v2", host: { properties: { "class.ngx-mat-datetime-picker-content-touch": "data.touchUi" }, classAttribute: "ngx-mat-datetime-picker-content-v2" }, viewQueries: [{ propertyName: "calendar", first: true, predicate: ["calendar"], descendants: true, static: true }, { propertyName: "timepicker", first: true, predicate: ["timepicker"], descendants: true }], ngImport: i0, template: `
5073
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatetimePickerContentV2, deps: [], target: i0.ɵɵFactoryTarget.Component });
5074
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.6", type: NgxMatDatetimePickerContentV2, isStandalone: true, selector: "ngx-mat-datetime-picker-content-v2", host: { properties: { "class.ngx-mat-datetime-picker-content-touch": "data.touchUi" }, classAttribute: "ngx-mat-datetime-picker-content-v2" }, viewQueries: [{ propertyName: "calendar", first: true, predicate: ["calendar"], descendants: true, static: true }, { propertyName: "timepicker", first: true, predicate: ["timepicker"], descendants: true }], ngImport: i0, template: `
5077
5075
  <div
5078
5076
  class="ngx-mat-datetime-picker-content"
5079
5077
  [class.ngx-mat-datetime-picker-content-touch]="data.touchUi">
@@ -5129,7 +5127,7 @@ class NgxMatDatetimePickerContentV2 {
5129
5127
  </div>
5130
5128
  `, isInline: true, styles: [".ngx-mat-datetime-picker-content-v2{display:flex;flex-direction:column;max-height:90vh;min-width:296px}.ngx-mat-datetime-picker-content-v2 .ngx-mat-datetime-picker-content{display:flex;flex-direction:column}.ngx-mat-datetime-picker-content-v2 .ngx-mat-datetime-picker-time{padding:16px;border-top:1px solid rgba(0,0,0,.12)}.mat-dark .ngx-mat-datetime-picker-content-v2 .ngx-mat-datetime-picker-time{border-top-color:#ffffff1f}.ngx-mat-datetime-picker-content-v2 .ngx-mat-datetime-picker-actions{display:flex;justify-content:flex-end;gap:8px;padding:8px 16px 16px;border-top:1px solid rgba(0,0,0,.12)}.mat-dark .ngx-mat-datetime-picker-content-v2 .ngx-mat-datetime-picker-actions{border-top-color:#ffffff1f}.ngx-mat-datetime-picker-content-v2.ngx-mat-datetime-picker-content-touch{min-width:320px}.ngx-mat-datetime-picker-content-v2.ngx-mat-datetime-picker-content-touch .ngx-mat-datetime-picker-time{padding:24px}.ngx-mat-datetime-picker-content-v2.ngx-mat-datetime-picker-content-touch .ngx-mat-datetime-picker-actions{padding:16px 24px 24px}.ngx-mat-datetime-picker-content-v2 mat-calendar{display:block}.ngx-mat-datetime-picker-content-v2 mat-calendar .mat-calendar-header{padding:8px 8px 0}.ngx-mat-datetime-picker-content-v2 mat-calendar .mat-calendar-content{padding:0 8px 8px}.ngx-mat-datetime-picker-content-v2 ngx-mat-timepicker{width:100%;display:flex;justify-content:center;align-items:center}.ngx-mat-datetime-picker-content-v2 ngx-mat-timepicker .ngx-mat-timepicker-container{justify-content:center}.ngx-mat-datetime-picker-content-enter{opacity:0;transform:scale(.9);transition:opacity .15s cubic-bezier(.25,.8,.25,1),transform .15s cubic-bezier(.25,.8,.25,1)}.ngx-mat-datetime-picker-content-enter-active{opacity:1;transform:scale(1)}.ngx-mat-datetime-picker-content-exit{opacity:1;transform:scale(1);transition:opacity .15s cubic-bezier(.4,0,.2,1),transform .15s cubic-bezier(.4,0,.2,1)}.ngx-mat-datetime-picker-content-exit-active{opacity:0;transform:scale(.9)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: MatCalendar, selector: "mat-calendar", inputs: ["headerComponent", "startAt", "startView", "selected", "minDate", "maxDate", "dateFilter", "dateClass", "comparisonStart", "comparisonEnd", "startDateAccessibleName", "endDateAccessibleName"], outputs: ["selectedChange", "yearSelected", "monthSelected", "viewChanged", "_userSelection", "_userDragDrop"], exportAs: ["matCalendar"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: NgxMatTimepickerComponent, selector: "ngx-mat-timepicker", inputs: ["disabled", "showSpinners", "stepHour", "stepMinute", "stepSecond", "showSeconds", "disableMinute", "enableMeridian", "defaultTime", "color", "meridian", "value"], outputs: ["valueChange"], exportAs: ["ngxMatTimepicker"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
5131
5129
  }
5132
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatetimePickerContentV2, decorators: [{
5130
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatetimePickerContentV2, decorators: [{
5133
5131
  type: Component,
5134
5132
  args: [{ selector: 'ngx-mat-datetime-picker-content-v2', template: `
5135
5133
  <div
@@ -5222,7 +5220,7 @@ class NgxMatDatetimePickerInputV2 {
5222
5220
  set value(value) {
5223
5221
  this._assignValue(value);
5224
5222
  }
5225
- _value = signal(null, ...(ngDevMode ? [{ debugName: "_value" }] : []));
5223
+ _value = signal(null, ...(ngDevMode ? [{ debugName: "_value" }] : /* istanbul ignore next */ []));
5226
5224
  /** The minimum valid date. */
5227
5225
  get min() {
5228
5226
  return this._min();
@@ -5232,7 +5230,7 @@ class NgxMatDatetimePickerInputV2 {
5232
5230
  this._min.set(validValue);
5233
5231
  this._validatorOnChange();
5234
5232
  }
5235
- _min = signal(null, ...(ngDevMode ? [{ debugName: "_min" }] : []));
5233
+ _min = signal(null, ...(ngDevMode ? [{ debugName: "_min" }] : /* istanbul ignore next */ []));
5236
5234
  /** The maximum valid date. */
5237
5235
  get max() {
5238
5236
  return this._max();
@@ -5242,7 +5240,7 @@ class NgxMatDatetimePickerInputV2 {
5242
5240
  this._max.set(validValue);
5243
5241
  this._validatorOnChange();
5244
5242
  }
5245
- _max = signal(null, ...(ngDevMode ? [{ debugName: "_max" }] : []));
5243
+ _max = signal(null, ...(ngDevMode ? [{ debugName: "_max" }] : /* istanbul ignore next */ []));
5246
5244
  /** Function that can be used to filter out dates within the datepicker. */
5247
5245
  get dateFilter() {
5248
5246
  return this._dateFilter();
@@ -5254,7 +5252,7 @@ class NgxMatDatetimePickerInputV2 {
5254
5252
  this._validatorOnChange();
5255
5253
  }
5256
5254
  }
5257
- _dateFilter = signal(() => true, ...(ngDevMode ? [{ debugName: "_dateFilter" }] : []));
5255
+ _dateFilter = signal(() => true, ...(ngDevMode ? [{ debugName: "_dateFilter" }] : /* istanbul ignore next */ []));
5258
5256
  /** Whether the datepicker-input is disabled. */
5259
5257
  get disabled() {
5260
5258
  return this._disabled();
@@ -5267,7 +5265,7 @@ class NgxMatDatetimePickerInputV2 {
5267
5265
  }
5268
5266
  this.stateChanges.next();
5269
5267
  }
5270
- _disabled = signal(false, ...(ngDevMode ? [{ debugName: "_disabled" }] : []));
5268
+ _disabled = signal(false, ...(ngDevMode ? [{ debugName: "_disabled" }] : /* istanbul ignore next */ []));
5271
5269
  /** Emits when a `change` event is fired on this `<input>`. */
5272
5270
  dateChange = new EventEmitter();
5273
5271
  /** Emits when an `input` event is fired on this `<input>`. */
@@ -5332,7 +5330,7 @@ class NgxMatDatetimePickerInputV2 {
5332
5330
  this._required.set(coerceBooleanProperty(value));
5333
5331
  this.stateChanges.next();
5334
5332
  }
5335
- _required = signal(false, ...(ngDevMode ? [{ debugName: "_required" }] : []));
5333
+ _required = signal(false, ...(ngDevMode ? [{ debugName: "_required" }] : /* istanbul ignore next */ []));
5336
5334
  get placeholder() {
5337
5335
  return this._placeholder();
5338
5336
  }
@@ -5340,11 +5338,11 @@ class NgxMatDatetimePickerInputV2 {
5340
5338
  this._placeholder.set(value);
5341
5339
  this.stateChanges.next();
5342
5340
  }
5343
- _placeholder = signal('', ...(ngDevMode ? [{ debugName: "_placeholder" }] : []));
5341
+ _placeholder = signal('', ...(ngDevMode ? [{ debugName: "_placeholder" }] : /* istanbul ignore next */ []));
5344
5342
  get errorState() {
5345
5343
  return this._errorState();
5346
5344
  }
5347
- _errorState = signal(false, ...(ngDevMode ? [{ debugName: "_errorState" }] : []));
5345
+ _errorState = signal(false, ...(ngDevMode ? [{ debugName: "_errorState" }] : /* istanbul ignore next */ []));
5348
5346
  // Unique ID for this input
5349
5347
  id = `ngx-mat-datetime-picker-input-${Math.random().toString(36).substr(2, 9)}`;
5350
5348
  constructor() {
@@ -5411,7 +5409,7 @@ class NgxMatDatetimePickerInputV2 {
5411
5409
  const target = event?.target;
5412
5410
  const parsedDate = this._dateAdapter?.parse(target.value, this._dateFormats.display.dateInput);
5413
5411
  this._lastValueValid = this._dateAdapter?.isValid(parsedDate);
5414
- let date = this._dateAdapter?.getValidDateOrNull(parsedDate);
5412
+ const date = this._dateAdapter?.getValidDateOrNull(parsedDate);
5415
5413
  // Update internal value
5416
5414
  this._value.set(date);
5417
5415
  // Notify form control
@@ -5504,14 +5502,14 @@ class NgxMatDatetimePickerInputV2 {
5504
5502
  getOverlayLabelId() {
5505
5503
  return this.id;
5506
5504
  }
5507
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatetimePickerInputV2, deps: [], target: i0.ɵɵFactoryTarget.Directive });
5508
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.5", type: NgxMatDatetimePickerInputV2, isStandalone: true, selector: "input[ngxMatDatetimePicker]", inputs: { ngxMatDatetimePicker: "ngxMatDatetimePicker", value: "value", min: "min", max: "max", dateFilter: "dateFilter", disabled: "disabled" }, outputs: { dateChange: "dateChange", dateInput: "dateInput" }, host: { listeners: { "input": "_onInput($event)", "change": "_onChange()", "blur": "_onBlur()", "keydown": "_onKeydown($event)", "click": "_onClick($event)" }, properties: { "attr.aria-haspopup": "ngxMatDatetimePicker ? \"dialog\" : null", "attr.aria-owns": "(ngxMatDatetimePicker?.opened && ngxMatDatetimePicker?.id) || null", "attr.min": "min ? _dateAdapter?.toIso8601(min) : null", "attr.max": "max ? _dateAdapter?.toIso8601(max) : null", "attr.data-mat-calendar": "ngxMatDatetimePicker ? ngxMatDatetimePicker.id : null", "disabled": "disabled" }, classAttribute: "ngx-mat-datetime-picker-input" }, providers: [
5505
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatetimePickerInputV2, deps: [], target: i0.ɵɵFactoryTarget.Directive });
5506
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.6", type: NgxMatDatetimePickerInputV2, isStandalone: true, selector: "input[ngxMatDatetimePicker]", inputs: { ngxMatDatetimePicker: "ngxMatDatetimePicker", value: "value", min: "min", max: "max", dateFilter: "dateFilter", disabled: "disabled" }, outputs: { dateChange: "dateChange", dateInput: "dateInput" }, host: { listeners: { "input": "_onInput($event)", "change": "_onChange()", "blur": "_onBlur()", "keydown": "_onKeydown($event)", "click": "_onClick($event)" }, properties: { "attr.aria-haspopup": "ngxMatDatetimePicker ? \"dialog\" : null", "attr.aria-owns": "(ngxMatDatetimePicker?.opened && ngxMatDatetimePicker?.id) || null", "attr.min": "min ? _dateAdapter?.toIso8601(min) : null", "attr.max": "max ? _dateAdapter?.toIso8601(max) : null", "attr.data-mat-calendar": "ngxMatDatetimePicker ? ngxMatDatetimePicker.id : null", "disabled": "disabled" }, classAttribute: "ngx-mat-datetime-picker-input" }, providers: [
5509
5507
  NGX_MAT_DATETIME_PICKER_VALUE_ACCESSOR,
5510
5508
  NGX_MAT_DATETIME_PICKER_VALIDATORS,
5511
5509
  { provide: MatFormFieldControl, useExisting: NgxMatDatetimePickerInputV2 },
5512
5510
  ], ngImport: i0 });
5513
5511
  }
5514
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatetimePickerInputV2, decorators: [{
5512
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatetimePickerInputV2, decorators: [{
5515
5513
  type: Directive,
5516
5514
  args: [{
5517
5515
  selector: 'input[ngxMatDatetimePicker]',
@@ -5586,23 +5584,23 @@ class NgxMatDatetimePickerV2 {
5586
5584
  /** Emits when the datepicker has been closed. */
5587
5585
  closedStream = new EventEmitter();
5588
5586
  // Configuration inputs
5589
- startView = input('month', ...(ngDevMode ? [{ debugName: "startView" }] : []));
5590
- color = input('primary', ...(ngDevMode ? [{ debugName: "color" }] : []));
5591
- touchUi = input(false, ...(ngDevMode ? [{ debugName: "touchUi" }] : []));
5592
- disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
5593
- hideTime = input(false, ...(ngDevMode ? [{ debugName: "hideTime" }] : []));
5594
- showSpinners = input(true, ...(ngDevMode ? [{ debugName: "showSpinners" }] : []));
5595
- showSeconds = input(false, ...(ngDevMode ? [{ debugName: "showSeconds" }] : []));
5596
- stepHour = input(DEFAULT_STEP, ...(ngDevMode ? [{ debugName: "stepHour" }] : []));
5597
- stepMinute = input(DEFAULT_STEP, ...(ngDevMode ? [{ debugName: "stepMinute" }] : []));
5598
- stepSecond = input(DEFAULT_STEP, ...(ngDevMode ? [{ debugName: "stepSecond" }] : []));
5599
- enableMeridian = input(false, ...(ngDevMode ? [{ debugName: "enableMeridian" }] : []));
5600
- disableMinute = input(false, ...(ngDevMode ? [{ debugName: "disableMinute" }] : []));
5601
- defaultTime = input(...(ngDevMode ? [undefined, { debugName: "defaultTime" }] : []));
5602
- startAt = input(null, ...(ngDevMode ? [{ debugName: "startAt" }] : []));
5603
- panelClass = input([], ...(ngDevMode ? [{ debugName: "panelClass" }] : []));
5587
+ startView = input('month', ...(ngDevMode ? [{ debugName: "startView" }] : /* istanbul ignore next */ []));
5588
+ color = input('primary', ...(ngDevMode ? [{ debugName: "color" }] : /* istanbul ignore next */ []));
5589
+ touchUi = input(false, ...(ngDevMode ? [{ debugName: "touchUi" }] : /* istanbul ignore next */ []));
5590
+ disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : /* istanbul ignore next */ []));
5591
+ hideTime = input(false, ...(ngDevMode ? [{ debugName: "hideTime" }] : /* istanbul ignore next */ []));
5592
+ showSpinners = input(true, ...(ngDevMode ? [{ debugName: "showSpinners" }] : /* istanbul ignore next */ []));
5593
+ showSeconds = input(false, ...(ngDevMode ? [{ debugName: "showSeconds" }] : /* istanbul ignore next */ []));
5594
+ stepHour = input(DEFAULT_STEP, ...(ngDevMode ? [{ debugName: "stepHour" }] : /* istanbul ignore next */ []));
5595
+ stepMinute = input(DEFAULT_STEP, ...(ngDevMode ? [{ debugName: "stepMinute" }] : /* istanbul ignore next */ []));
5596
+ stepSecond = input(DEFAULT_STEP, ...(ngDevMode ? [{ debugName: "stepSecond" }] : /* istanbul ignore next */ []));
5597
+ enableMeridian = input(false, ...(ngDevMode ? [{ debugName: "enableMeridian" }] : /* istanbul ignore next */ []));
5598
+ disableMinute = input(false, ...(ngDevMode ? [{ debugName: "disableMinute" }] : /* istanbul ignore next */ []));
5599
+ defaultTime = input(...(ngDevMode ? [undefined, { debugName: "defaultTime" }] : /* istanbul ignore next */ []));
5600
+ startAt = input(null, ...(ngDevMode ? [{ debugName: "startAt" }] : /* istanbul ignore next */ []));
5601
+ panelClass = input([], ...(ngDevMode ? [{ debugName: "panelClass" }] : /* istanbul ignore next */ []));
5604
5602
  // Internal state
5605
- _opened = signal(false, ...(ngDevMode ? [{ debugName: "_opened" }] : []));
5603
+ _opened = signal(false, ...(ngDevMode ? [{ debugName: "_opened" }] : /* istanbul ignore next */ []));
5606
5604
  opened = this._opened.asReadonly();
5607
5605
  constructor() {
5608
5606
  if (!this._dateAdapter) {
@@ -5725,10 +5723,10 @@ class NgxMatDatetimePickerV2 {
5725
5723
  this.close();
5726
5724
  });
5727
5725
  }
5728
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatetimePickerV2, deps: [], target: i0.ɵɵFactoryTarget.Component });
5729
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.5", type: NgxMatDatetimePickerV2, isStandalone: true, selector: "ngx-mat-datetime-picker", inputs: { startView: { classPropertyName: "startView", publicName: "startView", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, touchUi: { classPropertyName: "touchUi", publicName: "touchUi", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, hideTime: { classPropertyName: "hideTime", publicName: "hideTime", isSignal: true, isRequired: false, transformFunction: null }, showSpinners: { classPropertyName: "showSpinners", publicName: "showSpinners", isSignal: true, isRequired: false, transformFunction: null }, showSeconds: { classPropertyName: "showSeconds", publicName: "showSeconds", isSignal: true, isRequired: false, transformFunction: null }, stepHour: { classPropertyName: "stepHour", publicName: "stepHour", isSignal: true, isRequired: false, transformFunction: null }, stepMinute: { classPropertyName: "stepMinute", publicName: "stepMinute", isSignal: true, isRequired: false, transformFunction: null }, stepSecond: { classPropertyName: "stepSecond", publicName: "stepSecond", isSignal: true, isRequired: false, transformFunction: null }, enableMeridian: { classPropertyName: "enableMeridian", publicName: "enableMeridian", isSignal: true, isRequired: false, transformFunction: null }, disableMinute: { classPropertyName: "disableMinute", publicName: "disableMinute", isSignal: true, isRequired: false, transformFunction: null }, defaultTime: { classPropertyName: "defaultTime", publicName: "defaultTime", isSignal: true, isRequired: false, transformFunction: null }, startAt: { classPropertyName: "startAt", publicName: "startAt", isSignal: true, isRequired: false, transformFunction: null }, panelClass: { classPropertyName: "panelClass", publicName: "panelClass", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { openedStream: "openedStream", closedStream: "closedStream" }, providers: [NGX_MAT_SINGLE_DATE_SELECTION_MODEL_PROVIDER], exportAs: ["ngxMatDatetimePicker"], ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
5726
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatetimePickerV2, deps: [], target: i0.ɵɵFactoryTarget.Component });
5727
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.6", type: NgxMatDatetimePickerV2, isStandalone: true, selector: "ngx-mat-datetime-picker", inputs: { startView: { classPropertyName: "startView", publicName: "startView", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, touchUi: { classPropertyName: "touchUi", publicName: "touchUi", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, hideTime: { classPropertyName: "hideTime", publicName: "hideTime", isSignal: true, isRequired: false, transformFunction: null }, showSpinners: { classPropertyName: "showSpinners", publicName: "showSpinners", isSignal: true, isRequired: false, transformFunction: null }, showSeconds: { classPropertyName: "showSeconds", publicName: "showSeconds", isSignal: true, isRequired: false, transformFunction: null }, stepHour: { classPropertyName: "stepHour", publicName: "stepHour", isSignal: true, isRequired: false, transformFunction: null }, stepMinute: { classPropertyName: "stepMinute", publicName: "stepMinute", isSignal: true, isRequired: false, transformFunction: null }, stepSecond: { classPropertyName: "stepSecond", publicName: "stepSecond", isSignal: true, isRequired: false, transformFunction: null }, enableMeridian: { classPropertyName: "enableMeridian", publicName: "enableMeridian", isSignal: true, isRequired: false, transformFunction: null }, disableMinute: { classPropertyName: "disableMinute", publicName: "disableMinute", isSignal: true, isRequired: false, transformFunction: null }, defaultTime: { classPropertyName: "defaultTime", publicName: "defaultTime", isSignal: true, isRequired: false, transformFunction: null }, startAt: { classPropertyName: "startAt", publicName: "startAt", isSignal: true, isRequired: false, transformFunction: null }, panelClass: { classPropertyName: "panelClass", publicName: "panelClass", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { openedStream: "openedStream", closedStream: "closedStream" }, providers: [NGX_MAT_SINGLE_DATE_SELECTION_MODEL_PROVIDER], exportAs: ["ngxMatDatetimePicker"], ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
5730
5728
  }
5731
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: NgxMatDatetimePickerV2, decorators: [{
5729
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: NgxMatDatetimePickerV2, decorators: [{
5732
5730
  type: Component,
5733
5731
  args: [{
5734
5732
  selector: 'ngx-mat-datetime-picker',