From 6bf66345f0e9ae8660b79045e0617d89dc644ca2 Mon Sep 17 00:00:00 2001 From: crisbeto Date: Wed, 14 Mar 2018 05:29:14 -0400 Subject: [PATCH] refactor(datepicker): remove 6.0.0 deletion targets Removes the deletion targets for 6.0.0 from `material/datepicker`. BREAKING CHANGES: * `selectedChanged` has been removed. Use `dateChange` or `dateInput` from `MatDatepickerInput`. --- src/lib/datepicker/datepicker-input.ts | 15 +++++++-------- src/lib/datepicker/datepicker.spec.ts | 4 ++-- src/lib/datepicker/datepicker.ts | 12 ++++-------- 3 files changed, 13 insertions(+), 18 deletions(-) diff --git a/src/lib/datepicker/datepicker-input.ts b/src/lib/datepicker/datepicker-input.ts index 8e78529a4133..f9e2ff231e99 100644 --- a/src/lib/datepicker/datepicker-input.ts +++ b/src/lib/datepicker/datepicker-input.ts @@ -254,14 +254,13 @@ export class MatDatepickerInput implements AfterContentInit, ControlValueAcce ngAfterContentInit() { if (this._datepicker) { - this._datepickerSubscription = - this._datepicker.selectedChanged.subscribe((selected: D) => { - this.value = selected; - this._cvaOnChange(selected); - this._onTouched(); - this.dateInput.emit(new MatDatepickerInputEvent(this, this._elementRef.nativeElement)); - this.dateChange.emit(new MatDatepickerInputEvent(this, this._elementRef.nativeElement)); - }); + this._datepickerSubscription = this._datepicker._selectedChanged.subscribe((selected: D) => { + this.value = selected; + this._cvaOnChange(selected); + this._onTouched(); + this.dateInput.emit(new MatDatepickerInputEvent(this, this._elementRef.nativeElement)); + this.dateChange.emit(new MatDatepickerInputEvent(this, this._elementRef.nativeElement)); + }); } } diff --git a/src/lib/datepicker/datepicker.spec.ts b/src/lib/datepicker/datepicker.spec.ts index a9036b15c7a7..a8f51229bd0a 100644 --- a/src/lib/datepicker/datepicker.spec.ts +++ b/src/lib/datepicker/datepicker.spec.ts @@ -232,7 +232,7 @@ describe('MatDatepicker', () => { it('clicking the currently selected date should close the calendar ' + 'without firing selectedChanged', fakeAsync(() => { const selectedChangedSpy = - spyOn(testComponent.datepicker.selectedChanged, 'emit').and.callThrough(); + spyOn(testComponent.datepicker._selectedChanged, 'next').and.callThrough(); for (let changeCount = 1; changeCount < 3; changeCount++) { const currentDay = changeCount; @@ -256,7 +256,7 @@ describe('MatDatepicker', () => { it('pressing enter on the currently selected date should close the calendar without ' + 'firing selectedChanged', () => { const selectedChangedSpy = - spyOn(testComponent.datepicker.selectedChanged, 'emit').and.callThrough(); + spyOn(testComponent.datepicker._selectedChanged, 'next').and.callThrough(); testComponent.datepicker.open(); fixture.detectChanges(); diff --git a/src/lib/datepicker/datepicker.ts b/src/lib/datepicker/datepicker.ts index c06e7d513fd7..e12aa47b1a46 100644 --- a/src/lib/datepicker/datepicker.ts +++ b/src/lib/datepicker/datepicker.ts @@ -236,13 +236,6 @@ export class MatDatepicker implements OnDestroy, CanColor { } private _disabled: boolean; - /** - * Emits new selected date when selected date changes. - * @deprecated Switch to the `dateChange` and `dateInput` binding on the input element. - * @deletion-target 6.0.0 - */ - @Output() readonly selectedChanged: EventEmitter = new EventEmitter(); - /** * Emits selected year in multiyear view. * This doesn't imply a change on the selected date. @@ -317,6 +310,9 @@ export class MatDatepicker implements OnDestroy, CanColor { /** Emits when the datepicker is disabled. */ readonly _disabledChange = new Subject(); + /** Emits new selected date when selected date changes. */ + readonly _selectedChanged = new Subject(); + constructor(private _dialog: MatDialog, private _overlay: Overlay, private _ngZone: NgZone, @@ -346,7 +342,7 @@ export class MatDatepicker implements OnDestroy, CanColor { let oldValue = this._selected; this._selected = date; if (!this._dateAdapter.sameDate(oldValue, this._selected)) { - this.selectedChanged.emit(date); + this._selectedChanged.next(date); } }