UNPKG

year-scheduler

Version:
74 lines 11.2 kB
import { Component, ViewEncapsulation, Input } from '@angular/core'; import { trigger, transition, style, animate } from '@angular/animations'; import moment from 'moment'; import { AxiomSchedulerComponentCommon } from '../axiom-scheduler/axiom-scheduler-component-common.component'; import * as i0 from "@angular/core"; export class AxiomSchedulerMonthTileDayComponent extends AxiomSchedulerComponentCommon { _renderer; _element; day; events = []; constructor(injector, _renderer, _element) { super(injector); this._renderer = _renderer; this._element = _element; } ngOnInit() { this.refreshDate(); this.refreshView(); } showEventsDialog() { if (this.events && this.events.length > 0) { this.sidebarService.open({ title: `${this.day.format('DD MMMM YYYY')}`, events: this.events }); } } refreshView() { this.checkEvents(); // const text = `${this.events.length} event${this.events.length > 1 ? 's' : ''}, Click to show detail...`; // this._renderer.setAttribute(this._element.nativeElement, 'title', text); } checkEvents() { this.events = []; const startOfDay = this.day.clone().startOf('day'); this.service.getEventsForMonth(this.day.get('month')).forEach(ev => { if (ev.date && moment(ev.date).isSame(startOfDay, 'day')) { this.events.push(ev); } }); } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AxiomSchedulerMonthTileDayComponent, deps: [{ token: i0.Injector }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AxiomSchedulerMonthTileDayComponent, selector: "[ax-scheduler-month-tile-day]", inputs: { day: "day" }, host: { listeners: { "click": "showEventsDialog()" }, properties: { "class.hasEvent": "events.length > 0" }, classAttribute: "ax-scheduler__year-view__month__day" }, usesInheritance: true, ngImport: i0, template: "\n{{ day.format('DD') }}\n", styles: [""], animations: [ trigger('dialogAnimation', [ transition(':enter', [ style({ transform: 'scale(0)' }), animate(`${190}ms ease-in`, style({ transform: 'scale(1.1)' })), animate(`${100}ms ease-in`, style({ transform: 'scale(1)' })) ]), transition(':leave', [ animate(`${80}ms ease-in-out`, style({ transform: 'scale(0)' })) ]) ]) ], encapsulation: i0.ViewEncapsulation.None }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AxiomSchedulerMonthTileDayComponent, decorators: [{ type: Component, args: [{ selector: '[ax-scheduler-month-tile-day]', encapsulation: ViewEncapsulation.None, host: { 'class': 'ax-scheduler__year-view__month__day', '[class.hasEvent]': 'events.length > 0', '(click)': 'showEventsDialog()' }, animations: [ trigger('dialogAnimation', [ transition(':enter', [ style({ transform: 'scale(0)' }), animate(`${190}ms ease-in`, style({ transform: 'scale(1.1)' })), animate(`${100}ms ease-in`, style({ transform: 'scale(1)' })) ]), transition(':leave', [ animate(`${80}ms ease-in-out`, style({ transform: 'scale(0)' })) ]) ]) ], standalone: false, template: "\n{{ day.format('DD') }}\n" }] }], ctorParameters: () => [{ type: i0.Injector }, { type: i0.Renderer2 }, { type: i0.ElementRef }], propDecorators: { day: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXhpb20tc2NoZWR1bGVyLW1vbnRoLXRpbGUtZGF5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3llYXItc2NoZWR1bGVyL3NyYy9saWIvYXhpb20tc2NoZWR1bGVyLW1vbnRoLXRpbGUtZGF5L2F4aW9tLXNjaGVkdWxlci1tb250aC10aWxlLWRheS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy95ZWFyLXNjaGVkdWxlci9zcmMvbGliL2F4aW9tLXNjaGVkdWxlci1tb250aC10aWxlLWRheS9heGlvbS1zY2hlZHVsZXItbW9udGgtdGlsZS1kYXkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBb0IsaUJBQWlCLEVBQUUsS0FBSyxFQUF5QixNQUFNLGVBQWUsQ0FBQztBQUM3RyxPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUUsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBRTVCLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLCtEQUErRCxDQUFDOztBQTBCOUcsTUFBTSxPQUFPLG1DQUFvQyxTQUFRLDZCQUE2QjtJQU01QztJQUE4QjtJQUo3RCxHQUFHLENBQWlCO0lBRXRCLE1BQU0sR0FBMEIsRUFBRSxDQUFDO0lBRTFDLFlBQVksUUFBa0IsRUFBVSxTQUFvQixFQUFVLFFBQW9CO1FBQ3hGLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQURzQixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBWTtJQUUxRixDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVNLGdCQUFnQjtRQUNyQixJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDMUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUNqRyxDQUFDO0lBQ0gsQ0FBQztJQUVlLFdBQVc7UUFDekIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLDJHQUEyRztRQUMzRywyRUFBMkU7SUFDN0UsQ0FBQztJQUVPLFdBQVc7UUFDakIsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDakIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsRUFBRTtZQUNqRSxJQUFJLEVBQUUsQ0FBQyxJQUFJLElBQUksTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ3pELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7d0dBbkNVLG1DQUFtQzs0RkFBbkMsbUNBQW1DLDBSQzlCaEQsNEJBRUEsNEJEY2dCO1lBQ1IsT0FBTyxDQUFDLGlCQUFpQixFQUFFO2dCQUN2QixVQUFVLENBQUMsUUFBUSxFQUFFO29CQUNqQixLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLENBQUM7b0JBQ2hDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsWUFBWSxFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO29CQUMvRCxPQUFPLENBQUMsR0FBRyxHQUFHLFlBQVksRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztpQkFDaEUsQ0FBQztnQkFDRixVQUFVLENBQUMsUUFBUSxFQUFFO29CQUNqQixPQUFPLENBQUMsR0FBRyxFQUFFLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO2lCQUNuRSxDQUFDO2FBQ0wsQ0FBQztTQUNMOzs0RkFHUSxtQ0FBbUM7a0JBeEIvQyxTQUFTOytCQUNJLCtCQUErQixpQkFHMUIsaUJBQWlCLENBQUMsSUFBSSxRQUMvQjt3QkFDRixPQUFPLEVBQUUscUNBQXFDO3dCQUM5QyxrQkFBa0IsRUFBRSxtQkFBbUI7d0JBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7cUJBQ2xDLGNBQ1c7d0JBQ1IsT0FBTyxDQUFDLGlCQUFpQixFQUFFOzRCQUN2QixVQUFVLENBQUMsUUFBUSxFQUFFO2dDQUNqQixLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLENBQUM7Z0NBQ2hDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsWUFBWSxFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO2dDQUMvRCxPQUFPLENBQUMsR0FBRyxHQUFHLFlBQVksRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQzs2QkFDaEUsQ0FBQzs0QkFDRixVQUFVLENBQUMsUUFBUSxFQUFFO2dDQUNqQixPQUFPLENBQUMsR0FBRyxFQUFFLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDOzZCQUNuRSxDQUFDO3lCQUNMLENBQUM7cUJBQ0wsY0FDVyxLQUFLOzhIQUlWLEdBQUc7c0JBQVgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbmplY3RvciwgVmlld0VuY2Fwc3VsYXRpb24sIElucHV0LCBSZW5kZXJlcjIsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRyaWdnZXIsIHRyYW5zaXRpb24sIHN0eWxlLCBhbmltYXRlIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBBeGlvbVNjaGVkdWxlckV2ZW50IH0gZnJvbSAnLi4vbW9kZWwvYXhpb20tc2NoZWR1bGVyLWV2ZW50Lm1vZGVsJztcbmltcG9ydCB7IEF4aW9tU2NoZWR1bGVyQ29tcG9uZW50Q29tbW9uIH0gZnJvbSAnLi4vYXhpb20tc2NoZWR1bGVyL2F4aW9tLXNjaGVkdWxlci1jb21wb25lbnQtY29tbW9uLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnW2F4LXNjaGVkdWxlci1tb250aC10aWxlLWRheV0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9heGlvbS1zY2hlZHVsZXItbW9udGgtdGlsZS1kYXkuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2F4aW9tLXNjaGVkdWxlci1tb250aC10aWxlLWRheS5jb21wb25lbnQuc2NzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgaG9zdDoge1xuICAgICAgICAnY2xhc3MnOiAnYXgtc2NoZWR1bGVyX195ZWFyLXZpZXdfX21vbnRoX19kYXknLFxuICAgICAgICAnW2NsYXNzLmhhc0V2ZW50XSc6ICdldmVudHMubGVuZ3RoID4gMCcsXG4gICAgICAgICcoY2xpY2spJzogJ3Nob3dFdmVudHNEaWFsb2coKSdcbiAgICB9LFxuICAgIGFuaW1hdGlvbnM6IFtcbiAgICAgICAgdHJpZ2dlcignZGlhbG9nQW5pbWF0aW9uJywgW1xuICAgICAgICAgICAgdHJhbnNpdGlvbignOmVudGVyJywgW1xuICAgICAgICAgICAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAnc2NhbGUoMCknIH0pLFxuICAgICAgICAgICAgICAgIGFuaW1hdGUoYCR7MTkwfW1zIGVhc2UtaW5gLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3NjYWxlKDEuMSknIH0pKSxcbiAgICAgICAgICAgICAgICBhbmltYXRlKGAkezEwMH1tcyBlYXNlLWluYCwgc3R5bGUoeyB0cmFuc2Zvcm06ICdzY2FsZSgxKScgfSkpXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtcbiAgICAgICAgICAgICAgICBhbmltYXRlKGAkezgwfW1zIGVhc2UtaW4tb3V0YCwgc3R5bGUoeyB0cmFuc2Zvcm06ICdzY2FsZSgwKScgfSkpXG4gICAgICAgICAgICBdKVxuICAgICAgICBdKVxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogZmFsc2Vcbn0pXG5leHBvcnQgY2xhc3MgQXhpb21TY2hlZHVsZXJNb250aFRpbGVEYXlDb21wb25lbnQgZXh0ZW5kcyBBeGlvbVNjaGVkdWxlckNvbXBvbmVudENvbW1vbiBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KCkgZGF5ITogbW9tZW50Lk1vbWVudDtcblxuICBwdWJsaWMgZXZlbnRzOiBBeGlvbVNjaGVkdWxlckV2ZW50W10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IsIHByaXZhdGUgX3JlbmRlcmVyOiBSZW5kZXJlcjIsIHByaXZhdGUgX2VsZW1lbnQ6IEVsZW1lbnRSZWYpIHtcbiAgICBzdXBlcihpbmplY3Rvcik7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yZWZyZXNoRGF0ZSgpO1xuICAgIHRoaXMucmVmcmVzaFZpZXcoKTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93RXZlbnRzRGlhbG9nKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmV2ZW50cyAmJiB0aGlzLmV2ZW50cy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLnNpZGViYXJTZXJ2aWNlLm9wZW4oeyB0aXRsZTogYCR7dGhpcy5kYXkuZm9ybWF0KCdERCBNTU1NIFlZWVknKX1gLCBldmVudHM6IHRoaXMuZXZlbnRzIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSByZWZyZXNoVmlldygpOiB2b2lkIHtcbiAgICB0aGlzLmNoZWNrRXZlbnRzKCk7XG4gICAgLy8gY29uc3QgdGV4dCA9IGAke3RoaXMuZXZlbnRzLmxlbmd0aH0gZXZlbnQke3RoaXMuZXZlbnRzLmxlbmd0aCA+IDEgPyAncycgOiAnJ30sIENsaWNrIHRvIHNob3cgZGV0YWlsLi4uYDtcbiAgICAvLyB0aGlzLl9yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5fZWxlbWVudC5uYXRpdmVFbGVtZW50LCAndGl0bGUnLCB0ZXh0KTtcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tFdmVudHMoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudHMgPSBbXTtcbiAgICBjb25zdCBzdGFydE9mRGF5ID0gdGhpcy5kYXkuY2xvbmUoKS5zdGFydE9mKCdkYXknKTtcbiAgICB0aGlzLnNlcnZpY2UuZ2V0RXZlbnRzRm9yTW9udGgodGhpcy5kYXkuZ2V0KCdtb250aCcpKS5mb3JFYWNoKGV2ID0+IHtcbiAgICAgIGlmIChldi5kYXRlICYmIG1vbWVudChldi5kYXRlKS5pc1NhbWUoc3RhcnRPZkRheSwgJ2RheScpKSB7XG4gICAgICAgIHRoaXMuZXZlbnRzLnB1c2goZXYpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbn1cblxuIiwiXG57eyBkYXkuZm9ybWF0KCdERCcpIH19XG4iXX0=