UNPKG

5.8 kBTypeScriptView Raw
1import { EventEmitter, TemplateRef } from '@angular/core';
2import { CalendarEvent } from 'calendar-utils';
3import { Subject } from 'rxjs';
4import { CalendarEventTimesChangedEvent } from '../common/calendar-event-times-changed-event.interface';
5import { PlacementArray } from 'positioning';
6import { CalendarWeekViewBeforeRenderEvent } from '../week/calendar-week.module';
7import * as i0 from "@angular/core";
8export declare type CalendarDayViewBeforeRenderEvent = CalendarWeekViewBeforeRenderEvent;
9/**
10 * Shows all events on a given day. Example usage:
11 *
12 * ```typescript
13 * <mwl-calendar-day-view
14 * [viewDate]="viewDate"
15 * [events]="events">
16 * </mwl-calendar-day-view>
17 * ```
18 */
19export declare class CalendarDayViewComponent {
20 /**
21 * The current view date
22 */
23 viewDate: Date;
24 /**
25 * An array of events to display on view
26 * The schema is available here: https://github.com/mattlewis92/calendar-utils/blob/c51689985f59a271940e30bc4e2c4e1fee3fcb5c/src/calendarUtils.ts#L49-L63
27 */
28 events: CalendarEvent[];
29 /**
30 * The number of segments in an hour. Must divide equally into 60.
31 */
32 hourSegments: number;
33 /**
34 * The height in pixels of each hour segment
35 */
36 hourSegmentHeight: number;
37 /**
38 * The duration of each segment group in minutes
39 */
40 hourDuration: number;
41 /**
42 * The minimum height in pixels of each event
43 */
44 minimumEventHeight: number;
45 /**
46 * The day start hours in 24 hour time. Must be 0-23
47 */
48 dayStartHour: number;
49 /**
50 * The day start minutes. Must be 0-59
51 */
52 dayStartMinute: number;
53 /**
54 * The day end hours in 24 hour time. Must be 0-23
55 */
56 dayEndHour: number;
57 /**
58 * The day end minutes. Must be 0-59
59 */
60 dayEndMinute: number;
61 /**
62 * An observable that when emitted on will re-render the current view
63 */
64 refresh: Subject<any>;
65 /**
66 * The locale used to format dates
67 */
68 locale: string;
69 /**
70 * The grid size to snap resizing and dragging of events to
71 */
72 eventSnapSize: number;
73 /**
74 * The placement of the event tooltip
75 */
76 tooltipPlacement: PlacementArray;
77 /**
78 * A custom template to use for the event tooltips
79 */
80 tooltipTemplate: TemplateRef<any>;
81 /**
82 * Whether to append tooltips to the body or next to the trigger element
83 */
84 tooltipAppendToBody: boolean;
85 /**
86 * The delay in milliseconds before the tooltip should be displayed. If not provided the tooltip
87 * will be displayed immediately.
88 */
89 tooltipDelay: number | null;
90 /**
91 * A custom template to use to replace the hour segment
92 */
93 hourSegmentTemplate: TemplateRef<any>;
94 /**
95 * A custom template to use for day view events
96 */
97 eventTemplate: TemplateRef<any>;
98 /**
99 * A custom template to use for event titles
100 */
101 eventTitleTemplate: TemplateRef<any>;
102 /**
103 * A custom template to use for event actions
104 */
105 eventActionsTemplate: TemplateRef<any>;
106 /**
107 * Whether to snap events to a grid when dragging
108 */
109 snapDraggedEvents: boolean;
110 /**
111 * A custom template to use for the all day events label text
112 */
113 allDayEventsLabelTemplate: TemplateRef<any>;
114 /**
115 * A custom template to use for the current time marker
116 */
117 currentTimeMarkerTemplate: TemplateRef<any>;
118 /**
119 * Allow you to customise where events can be dragged and resized to.
120 * Return true to allow dragging and resizing to the new location, or false to prevent it
121 */
122 validateEventTimesChanged: (event: CalendarEventTimesChangedEvent) => boolean;
123 /**
124 * Called when an event title is clicked
125 */
126 eventClicked: EventEmitter<{
127 event: CalendarEvent;
128 sourceEvent: MouseEvent | KeyboardEvent;
129 }>;
130 /**
131 * Called when an hour segment is clicked
132 */
133 hourSegmentClicked: EventEmitter<{
134 date: Date;
135 sourceEvent: MouseEvent;
136 }>;
137 /**
138 * Called when an event is resized or dragged and dropped
139 */
140 eventTimesChanged: EventEmitter<CalendarEventTimesChangedEvent<any>>;
141 /**
142 * An output that will be called before the view is rendered for the current day.
143 * If you add the `cssClass` property to an hour grid segment it will add that class to the hour segment in the template
144 */
145 beforeViewRender: EventEmitter<CalendarWeekViewBeforeRenderEvent>;
146 static ɵfac: i0.ɵɵFactoryDeclaration<CalendarDayViewComponent, never>;
147 static ɵcmp: i0.ɵɵComponentDeclaration<CalendarDayViewComponent, "mwl-calendar-day-view", never, { "viewDate": "viewDate"; "events": "events"; "hourSegments": "hourSegments"; "hourSegmentHeight": "hourSegmentHeight"; "hourDuration": "hourDuration"; "minimumEventHeight": "minimumEventHeight"; "dayStartHour": "dayStartHour"; "dayStartMinute": "dayStartMinute"; "dayEndHour": "dayEndHour"; "dayEndMinute": "dayEndMinute"; "refresh": "refresh"; "locale": "locale"; "eventSnapSize": "eventSnapSize"; "tooltipPlacement": "tooltipPlacement"; "tooltipTemplate": "tooltipTemplate"; "tooltipAppendToBody": "tooltipAppendToBody"; "tooltipDelay": "tooltipDelay"; "hourSegmentTemplate": "hourSegmentTemplate"; "eventTemplate": "eventTemplate"; "eventTitleTemplate": "eventTitleTemplate"; "eventActionsTemplate": "eventActionsTemplate"; "snapDraggedEvents": "snapDraggedEvents"; "allDayEventsLabelTemplate": "allDayEventsLabelTemplate"; "currentTimeMarkerTemplate": "currentTimeMarkerTemplate"; "validateEventTimesChanged": "validateEventTimesChanged"; }, { "eventClicked": "eventClicked"; "hourSegmentClicked": "hourSegmentClicked"; "eventTimesChanged": "eventTimesChanged"; "beforeViewRender": "beforeViewRender"; }, never, never>;
148}