angular-calendar-scheduler
Version:
This project provide a scheduler view component for [mattlewis92/angular-calendar](https://github.com/mattlewis92/angular-calendar).
83 lines • 11.4 kB
JavaScript
import * as tslib_1 from "tslib";
import { Component, Input, Output, EventEmitter, TemplateRef } from '@angular/core';
// WORKAROUND: https://github.com/dherges/ng-packagr/issues/217#issuecomment-339460255
import * as momentImported from 'moment';
var moment = momentImported;
var CalendarSchedulerHourSegmentComponent = /** @class */ (function () {
function CalendarSchedulerHourSegmentComponent() {
this.hourSegmentHeight = 58;
this.showHour = false;
this.segmentClicked = new EventEmitter();
}
CalendarSchedulerHourSegmentComponent.prototype.ngOnInit = function () {
this.title = this.title || moment(this.segment.date).format('dddd L, LT');
};
/**
* @hidden
*/
CalendarSchedulerHourSegmentComponent.prototype.onMouseEnter = function (mouseEvent, segment, event) {
if (!event.isDisabled && !segment.isDisabled) {
// Maybe do something
}
};
/**
* @hidden
*/
CalendarSchedulerHourSegmentComponent.prototype.onMouseLeave = function (mouseEvent, segment, event) {
if (!event.isDisabled && !segment.isDisabled) {
// Maybe do something
}
};
/**
* @hidden
*/
CalendarSchedulerHourSegmentComponent.prototype.onSegmentClick = function (mouseEvent, segment) {
if (mouseEvent.stopPropagation) {
mouseEvent.stopPropagation();
}
if (segment.events.length === 0 && !segment.isDisabled && !segment.isCancelled) {
this.segmentClicked.emit({ segment: segment });
}
};
tslib_1.__decorate([
Input(),
tslib_1.__metadata("design:type", String)
], CalendarSchedulerHourSegmentComponent.prototype, "title", void 0);
tslib_1.__decorate([
Input(),
tslib_1.__metadata("design:type", Object)
], CalendarSchedulerHourSegmentComponent.prototype, "day", void 0);
tslib_1.__decorate([
Input(),
tslib_1.__metadata("design:type", Object)
], CalendarSchedulerHourSegmentComponent.prototype, "segment", void 0);
tslib_1.__decorate([
Input(),
tslib_1.__metadata("design:type", String)
], CalendarSchedulerHourSegmentComponent.prototype, "locale", void 0);
tslib_1.__decorate([
Input(),
tslib_1.__metadata("design:type", TemplateRef)
], CalendarSchedulerHourSegmentComponent.prototype, "customTemplate", void 0);
tslib_1.__decorate([
Input(),
tslib_1.__metadata("design:type", Number)
], CalendarSchedulerHourSegmentComponent.prototype, "hourSegmentHeight", void 0);
tslib_1.__decorate([
Input(),
tslib_1.__metadata("design:type", Boolean)
], CalendarSchedulerHourSegmentComponent.prototype, "showHour", void 0);
tslib_1.__decorate([
Output(),
tslib_1.__metadata("design:type", EventEmitter)
], CalendarSchedulerHourSegmentComponent.prototype, "segmentClicked", void 0);
CalendarSchedulerHourSegmentComponent = tslib_1.__decorate([
Component({
selector: 'calendar-scheduler-hour-segment',
template: "\n <ng-template #defaultTemplate>\n <div class=\"cal-scheduler-hour-segment\"\n [title]=\"title\"\n [ngClass]=\"segment?.cssClass\"\n [class.has-events]=\"segment.events.length > 0\"\n [class.cal-cancelled]=\"segment.isCancelled\"\n [class.cal-disabled]=\"segment.isDisabled\"\n [style.backgroundColor]=\"segment.backgroundColor\"\n [style.height.px]=\"hourSegmentHeight\"\n (mwlClick)=\"onSegmentClick($event, segment)\">\n <div class=\"cal-scheduler-time\" *ngIf=\"showHour\">\n {{ segment.date | calendarDate:'dayViewHour':locale }}\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{\n title: title,\n day: day,\n segment: segment,\n locale: locale,\n hourSegmentHeight: hourSegmentHeight,\n showHour: showHour,\n segmentClicked: segmentClicked\n }\">\n </ng-template>\n "
})
], CalendarSchedulerHourSegmentComponent);
return CalendarSchedulerHourSegmentComponent;
}());
export { CalendarSchedulerHourSegmentComponent };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItc2NoZWR1bGVyLWhvdXItc2VnbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLWNhbGVuZGFyLXNjaGVkdWxlci8iLCJzb3VyY2VzIjpbIm1vZHVsZXMvc2NoZWR1bGVyL2NhbGVuZGFyLXNjaGVkdWxlci1ob3VyLXNlZ21lbnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU81RixzRkFBc0Y7QUFDdEYsT0FBTyxLQUFLLGNBQWMsTUFBTSxRQUFRLENBQUM7QUFDekMsSUFBTSxNQUFNLEdBQUcsY0FBYyxDQUFDO0FBa0M5QjtJQWhDQTtRQTJDYSxzQkFBaUIsR0FBVyxFQUFFLENBQUM7UUFFL0IsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUV6QixtQkFBYyxHQUF3RCxJQUFJLFlBQVksRUFBeUMsQ0FBQztJQW9DOUksQ0FBQztJQWxDRyx3REFBUSxHQUFSO1FBQ0ksSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQ7O09BRUc7SUFDSCw0REFBWSxHQUFaLFVBQWEsVUFBc0IsRUFBRSxPQUFpQyxFQUFFLEtBQTZCO1FBQ2pHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRTtZQUMxQyxxQkFBcUI7U0FDeEI7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSCw0REFBWSxHQUFaLFVBQWEsVUFBc0IsRUFBRSxPQUFpQyxFQUFFLEtBQTZCO1FBQ2pHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRTtZQUMxQyxxQkFBcUI7U0FDeEI7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSCw4REFBYyxHQUFkLFVBQWUsVUFBc0IsRUFBRSxPQUFpQztRQUNwRSxJQUFJLFVBQVUsQ0FBQyxlQUFlLEVBQUU7WUFDNUIsVUFBVSxDQUFDLGVBQWUsRUFBRSxDQUFDO1NBQ2hDO1FBRUQsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRTtZQUM1RSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO1NBQ2xEO0lBQ0wsQ0FBQztJQWpEUTtRQUFSLEtBQUssRUFBRTs7d0VBQWU7SUFFZDtRQUFSLEtBQUssRUFBRTs7c0VBQXVCO0lBRXRCO1FBQVIsS0FBSyxFQUFFOzswRUFBbUM7SUFFbEM7UUFBUixLQUFLLEVBQUU7O3lFQUFnQjtJQUVmO1FBQVIsS0FBSyxFQUFFOzBDQUFpQixXQUFXO2lGQUFNO0lBRWpDO1FBQVIsS0FBSyxFQUFFOztvRkFBZ0M7SUFFL0I7UUFBUixLQUFLLEVBQUU7OzJFQUEyQjtJQUV6QjtRQUFULE1BQU0sRUFBRTswQ0FBaUIsWUFBWTtpRkFBb0c7SUFmakkscUNBQXFDO1FBaENqRCxTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsaUNBQWlDO1lBQzNDLFFBQVEsRUFBRSwwc0NBNEJUO1NBQ0osQ0FBQztPQUNXLHFDQUFxQyxDQW1EakQ7SUFBRCw0Q0FBQztDQUFBLEFBbkRELElBbURDO1NBbkRZLHFDQUFxQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgICBTY2hlZHVsZXJWaWV3RGF5LFxyXG4gICAgU2NoZWR1bGVyVmlld0hvdXJTZWdtZW50LFxyXG4gICAgQ2FsZW5kYXJTY2hlZHVsZXJFdmVudFxyXG59IGZyb20gJy4vbW9kZWxzJztcclxuXHJcbi8vIFdPUktBUk9VTkQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9kaGVyZ2VzL25nLXBhY2thZ3IvaXNzdWVzLzIxNyNpc3N1ZWNvbW1lbnQtMzM5NDYwMjU1XHJcbmltcG9ydCAqIGFzIG1vbWVudEltcG9ydGVkIGZyb20gJ21vbWVudCc7XHJcbmNvbnN0IG1vbWVudCA9IG1vbWVudEltcG9ydGVkO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2NhbGVuZGFyLXNjaGVkdWxlci1ob3VyLXNlZ21lbnQnLFxyXG4gICAgdGVtcGxhdGU6IGBcclxuICAgICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRUZW1wbGF0ZT5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhbC1zY2hlZHVsZXItaG91ci1zZWdtZW50XCJcclxuICAgICAgICAgICAgICAgIFt0aXRsZV09XCJ0aXRsZVwiXHJcbiAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzZWdtZW50Py5jc3NDbGFzc1wiXHJcbiAgICAgICAgICAgICAgICBbY2xhc3MuaGFzLWV2ZW50c109XCJzZWdtZW50LmV2ZW50cy5sZW5ndGggPiAwXCJcclxuICAgICAgICAgICAgICAgIFtjbGFzcy5jYWwtY2FuY2VsbGVkXT1cInNlZ21lbnQuaXNDYW5jZWxsZWRcIlxyXG4gICAgICAgICAgICAgICAgW2NsYXNzLmNhbC1kaXNhYmxlZF09XCJzZWdtZW50LmlzRGlzYWJsZWRcIlxyXG4gICAgICAgICAgICAgICAgW3N0eWxlLmJhY2tncm91bmRDb2xvcl09XCJzZWdtZW50LmJhY2tncm91bmRDb2xvclwiXHJcbiAgICAgICAgICAgICAgICBbc3R5bGUuaGVpZ2h0LnB4XT1cImhvdXJTZWdtZW50SGVpZ2h0XCJcclxuICAgICAgICAgICAgICAgIChtd2xDbGljayk9XCJvblNlZ21lbnRDbGljaygkZXZlbnQsIHNlZ21lbnQpXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FsLXNjaGVkdWxlci10aW1lXCIgKm5nSWY9XCJzaG93SG91clwiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7IHNlZ21lbnQuZGF0ZSB8IGNhbGVuZGFyRGF0ZTonZGF5Vmlld0hvdXInOmxvY2FsZSB9fVxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlXHJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImN1c3RvbVRlbXBsYXRlIHx8IGRlZmF1bHRUZW1wbGF0ZVwiXHJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XHJcbiAgICAgICAgICAgICAgICB0aXRsZTogdGl0bGUsXHJcbiAgICAgICAgICAgICAgICBkYXk6IGRheSxcclxuICAgICAgICAgICAgICAgIHNlZ21lbnQ6IHNlZ21lbnQsXHJcbiAgICAgICAgICAgICAgICBsb2NhbGU6IGxvY2FsZSxcclxuICAgICAgICAgICAgICAgIGhvdXJTZWdtZW50SGVpZ2h0OiBob3VyU2VnbWVudEhlaWdodCxcclxuICAgICAgICAgICAgICAgIHNob3dIb3VyOiBzaG93SG91cixcclxuICAgICAgICAgICAgICAgIHNlZ21lbnRDbGlja2VkOiBzZWdtZW50Q2xpY2tlZFxyXG4gICAgICAgICAgICB9XCI+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIGBcclxufSlcclxuZXhwb3J0IGNsYXNzIENhbGVuZGFyU2NoZWR1bGVySG91clNlZ21lbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gICAgQElucHV0KCkgdGl0bGU6IHN0cmluZztcclxuXHJcbiAgICBASW5wdXQoKSBkYXk6IFNjaGVkdWxlclZpZXdEYXk7XHJcblxyXG4gICAgQElucHV0KCkgc2VnbWVudDogU2NoZWR1bGVyVmlld0hvdXJTZWdtZW50O1xyXG5cclxuICAgIEBJbnB1dCgpIGxvY2FsZTogc3RyaW5nO1xyXG5cclxuICAgIEBJbnB1dCgpIGN1c3RvbVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICAgIEBJbnB1dCgpIGhvdXJTZWdtZW50SGVpZ2h0OiBudW1iZXIgPSA1ODtcclxuXHJcbiAgICBASW5wdXQoKSBzaG93SG91cjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIEBPdXRwdXQoKSBzZWdtZW50Q2xpY2tlZDogRXZlbnRFbWl0dGVyPHsgc2VnbWVudDogU2NoZWR1bGVyVmlld0hvdXJTZWdtZW50IH0+ID0gbmV3IEV2ZW50RW1pdHRlcjx7IHNlZ21lbnQ6IFNjaGVkdWxlclZpZXdIb3VyU2VnbWVudCB9PigpO1xyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMudGl0bGUgPSB0aGlzLnRpdGxlIHx8IG1vbWVudCh0aGlzLnNlZ21lbnQuZGF0ZSkuZm9ybWF0KCdkZGRkIEwsIExUJyk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBAaGlkZGVuXHJcbiAgICAgKi9cclxuICAgIG9uTW91c2VFbnRlcihtb3VzZUV2ZW50OiBNb3VzZUV2ZW50LCBzZWdtZW50OiBTY2hlZHVsZXJWaWV3SG91clNlZ21lbnQsIGV2ZW50OiBDYWxlbmRhclNjaGVkdWxlckV2ZW50KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCFldmVudC5pc0Rpc2FibGVkICYmICFzZWdtZW50LmlzRGlzYWJsZWQpIHtcclxuICAgICAgICAgICAgLy8gTWF5YmUgZG8gc29tZXRoaW5nXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQGhpZGRlblxyXG4gICAgICovXHJcbiAgICBvbk1vdXNlTGVhdmUobW91c2VFdmVudDogTW91c2VFdmVudCwgc2VnbWVudDogU2NoZWR1bGVyVmlld0hvdXJTZWdtZW50LCBldmVudDogQ2FsZW5kYXJTY2hlZHVsZXJFdmVudCk6IHZvaWQge1xyXG4gICAgICAgIGlmICghZXZlbnQuaXNEaXNhYmxlZCAmJiAhc2VnbWVudC5pc0Rpc2FibGVkKSB7XHJcbiAgICAgICAgICAgIC8vIE1heWJlIGRvIHNvbWV0aGluZ1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEBoaWRkZW5cclxuICAgICAqL1xyXG4gICAgb25TZWdtZW50Q2xpY2sobW91c2VFdmVudDogTW91c2VFdmVudCwgc2VnbWVudDogU2NoZWR1bGVyVmlld0hvdXJTZWdtZW50KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKG1vdXNlRXZlbnQuc3RvcFByb3BhZ2F0aW9uKSB7XHJcbiAgICAgICAgICAgIG1vdXNlRXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoc2VnbWVudC5ldmVudHMubGVuZ3RoID09PSAwICYmICFzZWdtZW50LmlzRGlzYWJsZWQgJiYgIXNlZ21lbnQuaXNDYW5jZWxsZWQpIHtcclxuICAgICAgICAgICAgdGhpcy5zZWdtZW50Q2xpY2tlZC5lbWl0KHsgc2VnbWVudDogc2VnbWVudCB9KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19