angular-calendar
Version:
A calendar component that can display events on a month, week or day view
50 lines • 1.58 kB
JavaScript
import { Directive, HostListener, Input, Output, EventEmitter } from '@angular/core';
import subDays from 'date-fns/sub_days';
import subWeeks from 'date-fns/sub_weeks';
import subMonths from 'date-fns/sub_months';
/**
* Change the view date to the previous view. For example:
*
* ```
* <button
* mwlCalendarPreviousView
* [(viewDate)]="viewDate"
* [view]="view">
* Previous
* </button>
* ```
*/
export var CalendarPreviousViewDirective = (function () {
function CalendarPreviousViewDirective() {
/**
* Called when the view date is changed
*/
this.viewDateChange = new EventEmitter();
}
/**
* @hidden
*/
CalendarPreviousViewDirective.prototype.onClick = function () {
var subFn = {
day: subDays,
week: subWeeks,
month: subMonths
}[this.view];
this.viewDateChange.emit(subFn(this.viewDate, 1));
};
CalendarPreviousViewDirective.decorators = [
{ type: Directive, args: [{
selector: '[mwlCalendarPreviousView]'
},] },
];
/** @nocollapse */
CalendarPreviousViewDirective.ctorParameters = function () { return []; };
CalendarPreviousViewDirective.propDecorators = {
'view': [{ type: Input },],
'viewDate': [{ type: Input },],
'viewDateChange': [{ type: Output },],
'onClick': [{ type: HostListener, args: ['click',] },],
};
return CalendarPreviousViewDirective;
}());
//# sourceMappingURL=calendarPreviousView.directive.js.map