@catull/igniteui-angular
Version:
Ignite UI for Angular is a dependency-free Angular toolkit for building modern web apps
122 lines • 10.7 kB
JavaScript
import { __decorate, __metadata } from "tslib";
import { Component, ViewChild, Input, Output, EventEmitter, HostListener, HostBinding } from '@angular/core';
import { IgxCalendarComponent } from '../calendar';
import { InteractionMode } from '../core/enums';
import { IgxDatePickerActionsDirective } from './date-picker.directives';
/**
* @hidden
*/
var IgxCalendarContainerComponent = /** @class */ (function () {
function IgxCalendarContainerComponent() {
this.mode = InteractionMode.Dialog;
this.vertical = false;
this.onClose = new EventEmitter();
this.onTodaySelection = new EventEmitter();
this.styleClass = 'igx-date-picker';
}
Object.defineProperty(IgxCalendarContainerComponent.prototype, "dropdownCSS", {
get: function () {
return this.mode === InteractionMode.DropDown;
},
enumerable: true,
configurable: true
});
Object.defineProperty(IgxCalendarContainerComponent.prototype, "verticalCSS", {
get: function () {
return this.vertical && this.mode === InteractionMode.Dialog;
},
enumerable: true,
configurable: true
});
IgxCalendarContainerComponent.prototype.onEscape = function (event) {
event.preventDefault();
this.onClose.emit();
};
Object.defineProperty(IgxCalendarContainerComponent.prototype, "isReadonly", {
/**
* Returns whether the date-picker is in readonly dialog mode.
*
* @hidden
*/
get: function () {
return this.mode === InteractionMode.Dialog;
},
enumerable: true,
configurable: true
});
/**
* Emits close event for the calendar.
*/
IgxCalendarContainerComponent.prototype.closeCalendar = function () {
this.onClose.emit();
};
/**
* Emits today selection event for the calendar.
*/
IgxCalendarContainerComponent.prototype.triggerTodaySelection = function () {
this.onTodaySelection.emit();
};
__decorate([
ViewChild('calendar', { static: true }),
__metadata("design:type", IgxCalendarComponent)
], IgxCalendarContainerComponent.prototype, "calendar", void 0);
__decorate([
Input(),
__metadata("design:type", String)
], IgxCalendarContainerComponent.prototype, "mode", void 0);
__decorate([
Input(),
__metadata("design:type", Object)
], IgxCalendarContainerComponent.prototype, "vertical", void 0);
__decorate([
Input(),
__metadata("design:type", String)
], IgxCalendarContainerComponent.prototype, "cancelButtonLabel", void 0);
__decorate([
Input(),
__metadata("design:type", String)
], IgxCalendarContainerComponent.prototype, "todayButtonLabel", void 0);
__decorate([
Input(),
__metadata("design:type", IgxDatePickerActionsDirective)
], IgxCalendarContainerComponent.prototype, "datePickerActions", void 0);
__decorate([
Output(),
__metadata("design:type", Object)
], IgxCalendarContainerComponent.prototype, "onClose", void 0);
__decorate([
Output(),
__metadata("design:type", Object)
], IgxCalendarContainerComponent.prototype, "onTodaySelection", void 0);
__decorate([
HostBinding('class.igx-date-picker'),
__metadata("design:type", Object)
], IgxCalendarContainerComponent.prototype, "styleClass", void 0);
__decorate([
HostBinding('class.igx-date-picker--dropdown'),
__metadata("design:type", Boolean),
__metadata("design:paramtypes", [])
], IgxCalendarContainerComponent.prototype, "dropdownCSS", null);
__decorate([
HostBinding('class.igx-date-picker--vertical'),
__metadata("design:type", Boolean),
__metadata("design:paramtypes", [])
], IgxCalendarContainerComponent.prototype, "verticalCSS", null);
__decorate([
HostListener('keydown.esc', ['$event']),
HostListener('keydown.alt.arrowup', ['$event']),
__metadata("design:type", Function),
__metadata("design:paramtypes", [Object]),
__metadata("design:returntype", void 0)
], IgxCalendarContainerComponent.prototype, "onEscape", null);
IgxCalendarContainerComponent = __decorate([
Component({
selector: 'igx-calendar-container',
template: "<ng-template #defaultDatePickerActions>\n <div *ngIf=\"cancelButtonLabel || todayButtonLabel\" class=\"igx-date-picker__buttons\">\n <button #closeButton *ngIf=\"cancelButtonLabel\" igxButton=\"flat\" igxRipple (click)=\"closeCalendar()\">\n {{ cancelButtonLabel }}\n </button>\n <button #todayButton *ngIf=\"todayButtonLabel\" igxButton=\"flat\" igxRipple (click)=\"triggerTodaySelection()\">\n {{ todayButtonLabel }}\n </button>\n </div>\n</ng-template>\n<igx-calendar #calendar></igx-calendar>\n<ng-container *ngTemplateOutlet=\"datePickerActions ? datePickerActions.template : defaultDatePickerActions\"></ng-container>\n",
styles: [':host {display: block;}']
})
], IgxCalendarContainerComponent);
return IgxCalendarContainerComponent;
}());
export { IgxCalendarContainerComponent };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2lnbml0ZXVpLWFuZ3VsYXIvIiwic291cmNlcyI6WyJsaWIvZGF0ZS1waWNrZXIvY2FsZW5kYXItY29udGFpbmVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV6RTs7R0FFRztBQU1IO0lBQUE7UUFLVyxTQUFJLEdBQW9CLGVBQWUsQ0FBQyxNQUFNLENBQUM7UUFHL0MsYUFBUSxHQUFHLEtBQUssQ0FBQztRQVlqQixZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUc3QixxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBR3RDLGVBQVUsR0FBRyxpQkFBaUIsQ0FBQztJQXlDMUMsQ0FBQztJQXRDRyxzQkFBSSxzREFBVzthQUFmO1lBQ0ksT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLGVBQWUsQ0FBQyxRQUFRLENBQUM7UUFDbEQsQ0FBQzs7O09BQUE7SUFHRCxzQkFBSSxzREFBVzthQUFmO1lBQ0ksT0FBTyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssZUFBZSxDQUFDLE1BQU0sQ0FBQztRQUNqRSxDQUFDOzs7T0FBQTtJQUlNLGdEQUFRLEdBQWYsVUFBZ0IsS0FBSztRQUNqQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBT0Qsc0JBQVcscURBQVU7UUFMckI7Ozs7VUFJRTthQUNGO1lBQ0ksT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLGVBQWUsQ0FBQyxNQUFNLENBQUM7UUFDaEQsQ0FBQzs7O09BQUE7SUFFRDs7T0FFRztJQUNJLHFEQUFhLEdBQXBCO1FBQ0ksSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQ7O01BRUU7SUFDSyw2REFBcUIsR0FBNUI7UUFDSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQWhFRDtRQURDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUM7a0NBQ3ZCLG9CQUFvQjttRUFBQztJQUd0QztRQURDLEtBQUssRUFBRTs7K0RBQzhDO0lBR3REO1FBREMsS0FBSyxFQUFFOzttRUFDZ0I7SUFHeEI7UUFEQyxLQUFLLEVBQUU7OzRFQUN5QjtJQUdqQztRQURDLEtBQUssRUFBRTs7MkVBQ3dCO0lBR2hDO1FBREMsS0FBSyxFQUFFO2tDQUNrQiw2QkFBNkI7NEVBQUM7SUFHeEQ7UUFEQyxNQUFNLEVBQUU7O2tFQUMyQjtJQUdwQztRQURDLE1BQU0sRUFBRTs7MkVBQ29DO0lBRzdDO1FBREMsV0FBVyxDQUFDLHVCQUF1QixDQUFDOztxRUFDQztJQUd0QztRQURDLFdBQVcsQ0FBQyxpQ0FBaUMsQ0FBQzs7O29FQUc5QztJQUdEO1FBREMsV0FBVyxDQUFDLGlDQUFpQyxDQUFDOzs7b0VBRzlDO0lBSUQ7UUFGQyxZQUFZLENBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdkMsWUFBWSxDQUFDLHFCQUFxQixFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7Ozs7aUVBSS9DO0lBM0NRLDZCQUE2QjtRQUx6QyxTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsd0JBQXdCO1lBRWxDLHFyQkFBZ0Q7cUJBRHZDLHlCQUF5QjtTQUVyQyxDQUFDO09BQ1csNkJBQTZCLENBbUV6QztJQUFELG9DQUFDO0NBQUEsQUFuRUQsSUFtRUM7U0FuRVksNkJBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3Q2hpbGQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSWd4Q2FsZW5kYXJDb21wb25lbnQgfSBmcm9tICcuLi9jYWxlbmRhcic7XG5pbXBvcnQgeyBJbnRlcmFjdGlvbk1vZGUgfSBmcm9tICcuLi9jb3JlL2VudW1zJztcbmltcG9ydCB7IElneERhdGVQaWNrZXJBY3Rpb25zRGlyZWN0aXZlIH0gZnJvbSAnLi9kYXRlLXBpY2tlci5kaXJlY3RpdmVzJztcblxuLyoqXG4gKiBAaGlkZGVuXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnaWd4LWNhbGVuZGFyLWNvbnRhaW5lcicsXG4gICAgc3R5bGVzOiBbJzpob3N0IHtkaXNwbGF5OiBibG9jazt9J10sXG4gICAgdGVtcGxhdGVVcmw6ICdjYWxlbmRhci1jb250YWluZXIuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIElneENhbGVuZGFyQ29udGFpbmVyQ29tcG9uZW50IHtcbiAgICBAVmlld0NoaWxkKCdjYWxlbmRhcicsIHsgc3RhdGljOiB0cnVlIH0pXG4gICAgcHVibGljIGNhbGVuZGFyOiBJZ3hDYWxlbmRhckNvbXBvbmVudDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG1vZGU6IEludGVyYWN0aW9uTW9kZSA9IEludGVyYWN0aW9uTW9kZS5EaWFsb2c7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB2ZXJ0aWNhbCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgY2FuY2VsQnV0dG9uTGFiZWw6IHN0cmluZztcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHRvZGF5QnV0dG9uTGFiZWw6IHN0cmluZztcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGRhdGVQaWNrZXJBY3Rpb25zOiBJZ3hEYXRlUGlja2VyQWN0aW9uc0RpcmVjdGl2ZTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBvbkNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIG9uVG9kYXlTZWxlY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlneC1kYXRlLXBpY2tlcicpXG4gICAgcHVibGljIHN0eWxlQ2xhc3MgPSAnaWd4LWRhdGUtcGlja2VyJztcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaWd4LWRhdGUtcGlja2VyLS1kcm9wZG93bicpXG4gICAgZ2V0IGRyb3Bkb3duQ1NTKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5tb2RlID09PSBJbnRlcmFjdGlvbk1vZGUuRHJvcERvd247XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pZ3gtZGF0ZS1waWNrZXItLXZlcnRpY2FsJylcbiAgICBnZXQgdmVydGljYWxDU1MoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnZlcnRpY2FsICYmIHRoaXMubW9kZSA9PT0gSW50ZXJhY3Rpb25Nb2RlLkRpYWxvZztcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmVzYycsIFsnJGV2ZW50J10pXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5hbHQuYXJyb3d1cCcsIFsnJGV2ZW50J10pXG4gICAgcHVibGljIG9uRXNjYXBlKGV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMub25DbG9zZS5lbWl0KCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB3aGV0aGVyIHRoZSBkYXRlLXBpY2tlciBpcyBpbiByZWFkb25seSBkaWFsb2cgbW9kZS5cbiAgICAgKlxuICAgICAqIEBoaWRkZW5cbiAgICAqL1xuICAgIHB1YmxpYyBnZXQgaXNSZWFkb25seSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubW9kZSA9PT0gSW50ZXJhY3Rpb25Nb2RlLkRpYWxvZztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBFbWl0cyBjbG9zZSBldmVudCBmb3IgdGhlIGNhbGVuZGFyLlxuICAgICAqL1xuICAgIHB1YmxpYyBjbG9zZUNhbGVuZGFyKCkge1xuICAgICAgICB0aGlzLm9uQ2xvc2UuZW1pdCgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICogRW1pdHMgdG9kYXkgc2VsZWN0aW9uIGV2ZW50IGZvciB0aGUgY2FsZW5kYXIuXG4gICAgKi9cbiAgICBwdWJsaWMgdHJpZ2dlclRvZGF5U2VsZWN0aW9uKCkge1xuICAgICAgICB0aGlzLm9uVG9kYXlTZWxlY3Rpb24uZW1pdCgpO1xuICAgIH1cbn1cbiJdfQ==