angular-6-calendar-week-hours-view
Version:
This project supports on Angular 6.0+. and aims to provide an alternative view to those already provided on [Angular Calendar](https://github.com/mattlewis92/angular-calendar) v0.25.2. based out of [Angular Calendar Week Hours View](https://github.com/Inn
58 lines (50 loc) • 1.92 kB
text/typescript
import {Component, EventEmitter, Input, Output, TemplateRef} from '@angular/core';
import {WeekViewEvent} from 'calendar-utils';
({
selector: 'iq-calendar-week-hours-view-event',
template: `
<ng-template
#defaultTemplate
let-weekEvent="weekEvent"
let-tooltipPlacement="tooltipPlacement"
let-eventClicked="eventClicked"
let-tooltipTemplate="tooltipTemplate"
let-tooltipAppendToBody="tooltipAppendToBody">
<div
class="cal-event"
[style.backgroundColor]="weekEvent.event.color.secondary"
[mwlCalendarTooltip]="weekEvent.event.title | calendarEventTitle:'weekTooltip':weekEvent.event"
[tooltipPlacement]="tooltipPlacement"
[tooltipEvent]="weekEvent.event"
[tooltipTemplate]="tooltipTemplate"
[tooltipAppendToBody]="tooltipAppendToBody">
<mwl-calendar-event-actions [event]="weekEvent.event"></mwl-calendar-event-actions>
<mwl-calendar-event-title
[event]="weekEvent.event"
[customTemplate]="eventTitleTemplate"
view="week"
(mwlClick)="eventClicked.emit()">
</mwl-calendar-event-title>
</div>
</ng-template>
<ng-template
[ngTemplateOutlet]="customTemplate || defaultTemplate"
[ngTemplateOutletContext]="{
weekEvent: weekEvent,
tooltipPlacement: tooltipPlacement,
eventClicked: eventClicked,
tooltipTemplate: tooltipTemplate,
tooltipAppendToBody: tooltipAppendToBody
}">
</ng-template>
`
})
export class CalendarWeekHoursViewEventComponent {
() weekEvent: WeekViewEvent;
() tooltipPlacement: string;
() tooltipAppendToBody: boolean;
() customTemplate: TemplateRef<any>;
() eventTitleTemplate: TemplateRef<any>;
() tooltipTemplate: TemplateRef<any>;
() eventClicked: EventEmitter<any> = new EventEmitter();
}