diff --git a/src/material/datepicker/date-selection-model.ts b/src/material/datepicker/date-selection-model.ts index 51ecd40ad4b8..1c5e45ce3f57 100644 --- a/src/material/datepicker/date-selection-model.ts +++ b/src/material/datepicker/date-selection-model.ts @@ -84,18 +84,8 @@ export abstract class MatDateSelectionModel { - if (typeof ngDevMode === 'undefined' || ngDevMode) { - throw Error('Not implemented'); - } - - return null!; - } + /** Clones the selection model. */ + abstract clone(): MatDateSelectionModel; } /** A selection model that contains a single date. */ diff --git a/src/material/datepicker/datepicker-base.ts b/src/material/datepicker/datepicker-base.ts index 676a5aa81599..61e2c3002bc0 100644 --- a/src/material/datepicker/datepicker-base.ts +++ b/src/material/datepicker/datepicker-base.ts @@ -168,14 +168,9 @@ export class MatDatepickerContent> private _dateAdapter: DateAdapter, @Optional() @Inject(MAT_DATE_RANGE_SELECTION_STRATEGY) private _rangeSelectionStrategy: MatDateRangeSelectionStrategy, - /** - * @deprecated `intl` argument to become required. - * @breaking-change 12.0.0 - */ - intl?: MatDatepickerIntl) { + intl: MatDatepickerIntl) { super(elementRef); - // @breaking-change 12.0.0 Remove fallback for `intl`. - this._closeButtonText = intl?.closeCalendarLabel || 'Close calendar'; + this._closeButtonText = intl.closeCalendarLabel; } ngOnInit() { diff --git a/src/material/schematics/ng-update/data/constructor-checks.ts b/src/material/schematics/ng-update/data/constructor-checks.ts index ff33ee40d213..26385f094fcb 100644 --- a/src/material/schematics/ng-update/data/constructor-checks.ts +++ b/src/material/schematics/ng-update/data/constructor-checks.ts @@ -18,6 +18,10 @@ export const constructorChecks: VersionChanges = { { pr: 'https://github.com/angular/components/pull/21897', changes: ['MatTooltip'] + }, + { + pr: 'https://github.com/angular/components/pull/21952', + changes: ['MatDatepickerContent'] } ], [TargetVersion.V11]: [ diff --git a/tools/public_api_guard/material/datepicker.d.ts b/tools/public_api_guard/material/datepicker.d.ts index 21c179cd4c5b..2c6ed8e51450 100644 --- a/tools/public_api_guard/material/datepicker.d.ts +++ b/tools/public_api_guard/material/datepicker.d.ts @@ -223,8 +223,7 @@ export declare class MatDatepickerContent comparisonEnd: D | null; comparisonStart: D | null; datepicker: MatDatepickerBase; - constructor(elementRef: ElementRef, _changeDetectorRef: ChangeDetectorRef, _globalModel: MatDateSelectionModel, _dateAdapter: DateAdapter, _rangeSelectionStrategy: MatDateRangeSelectionStrategy, - intl?: MatDatepickerIntl); + constructor(elementRef: ElementRef, _changeDetectorRef: ChangeDetectorRef, _globalModel: MatDateSelectionModel, _dateAdapter: DateAdapter, _rangeSelectionStrategy: MatDateRangeSelectionStrategy, intl: MatDatepickerIntl); _applyPendingSelection(): void; _getSelected(): D | DateRange | null; _handleUserSelection(event: MatCalendarUserEvent): void; @@ -390,7 +389,7 @@ export declare abstract class MatDateSelectionModel); protected _isValidDateInstance(date: D): boolean; abstract add(date: D | null): void; - clone(): MatDateSelectionModel; + abstract clone(): MatDateSelectionModel; abstract isComplete(): boolean; abstract isValid(): boolean; ngOnDestroy(): void;