Skip to content

Commit 54f0b77

Browse files
committed
Added extension of CalendarView with the material datepicker view components
1 parent ae2bfde commit 54f0b77

File tree

4 files changed

+10
-3
lines changed

4 files changed

+10
-3
lines changed

src/lib/datepicker/BUILD.bazel

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ ng_module(
2121
"//src/cdk/a11y",
2222
"//src/cdk/bidi",
2323
"//src/cdk/coercion",
24+
"//src/cdk/datepicker",
2425
"//src/cdk/keycodes",
2526
"//src/cdk/portal",
2627
"//src/cdk/overlay",

src/lib/datepicker/month-view.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ import {
3030
ViewEncapsulation,
3131
ViewChild,
3232
} from '@angular/core';
33+
import {CalendarView} from '@angular/cdk/datepicker';
3334
import {DateAdapter, MAT_DATE_FORMATS, MatDateFormats} from '@angular/material/core';
3435
import {Directionality} from '@angular/cdk/bidi';
3536
import {MatCalendarBody, MatCalendarCell} from './calendar-body';
@@ -51,7 +52,7 @@ const DAYS_PER_WEEK = 7;
5152
encapsulation: ViewEncapsulation.None,
5253
changeDetection: ChangeDetectionStrategy.OnPush
5354
})
54-
export class MatMonthView<D> implements AfterContentInit {
55+
export class MatMonthView<D> extends CalendarView<D> implements AfterContentInit {
5556
/**
5657
* The date to display in this month view (everything other than the month and year is ignored).
5758
*/
@@ -133,6 +134,7 @@ export class MatMonthView<D> implements AfterContentInit {
133134
@Optional() @Inject(MAT_DATE_FORMATS) private _dateFormats: MatDateFormats,
134135
@Optional() public _dateAdapter: DateAdapter<D>,
135136
@Optional() private _dir?: Directionality) {
137+
super();
136138
if (!this._dateAdapter) {
137139
throw createMissingDateImplError('DateAdapter');
138140
}

src/lib/datepicker/multi-year-view.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ import {
2929
ViewChild,
3030
ViewEncapsulation,
3131
} from '@angular/core';
32+
import {CalendarView} from '@angular/cdk/datepicker';
3233
import {DateAdapter} from '@angular/material/core';
3334
import {Directionality} from '@angular/cdk/bidi';
3435
import {MatCalendarBody, MatCalendarCell} from './calendar-body';
@@ -51,7 +52,7 @@ export const yearsPerRow = 4;
5152
encapsulation: ViewEncapsulation.None,
5253
changeDetection: ChangeDetectionStrategy.OnPush
5354
})
54-
export class MatMultiYearView<D> implements AfterContentInit {
55+
export class MatMultiYearView<D> extends CalendarView<D> implements AfterContentInit {
5556
/** The date to display in this multi-year view (everything other than the year is ignored). */
5657
@Input()
5758
get activeDate(): D { return this._activeDate; }
@@ -119,6 +120,7 @@ export class MatMultiYearView<D> implements AfterContentInit {
119120
constructor(private _changeDetectorRef: ChangeDetectorRef,
120121
@Optional() public _dateAdapter: DateAdapter<D>,
121122
@Optional() private _dir?: Directionality) {
123+
super();
122124
if (!this._dateAdapter) {
123125
throw createMissingDateImplError('DateAdapter');
124126
}

src/lib/datepicker/year-view.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ import {
3030
ViewChild,
3131
ViewEncapsulation,
3232
} from '@angular/core';
33+
import {CalendarView} from '@angular/cdk/datepicker';
3334
import {DateAdapter, MAT_DATE_FORMATS, MatDateFormats} from '@angular/material/core';
3435
import {Directionality} from '@angular/cdk/bidi';
3536
import {MatCalendarBody, MatCalendarCell} from './calendar-body';
@@ -47,7 +48,7 @@ import {createMissingDateImplError} from './datepicker-errors';
4748
encapsulation: ViewEncapsulation.None,
4849
changeDetection: ChangeDetectionStrategy.OnPush
4950
})
50-
export class MatYearView<D> implements AfterContentInit {
51+
export class MatYearView<D> extends CalendarView<D> implements AfterContentInit {
5152
/** The date to display in this year view (everything other than the year is ignored). */
5253
@Input()
5354
get activeDate(): D { return this._activeDate; }
@@ -121,6 +122,7 @@ export class MatYearView<D> implements AfterContentInit {
121122
@Optional() @Inject(MAT_DATE_FORMATS) private _dateFormats: MatDateFormats,
122123
@Optional() public _dateAdapter: DateAdapter<D>,
123124
@Optional() private _dir?: Directionality) {
125+
super();
124126
if (!this._dateAdapter) {
125127
throw createMissingDateImplError('DateAdapter');
126128
}

0 commit comments

Comments
 (0)