UNPKG

devextreme-angular

Version:

Angular UI and visualization components based on DevExtreme widgets

1,397 lines (1,336 loc) • 143 kB
/*! * devextreme-angular * Version: 20.2.5 * Build date: Fri Jan 15 2021 * * Copyright (c) 2012 - 2021 Developer Express Inc. ALL RIGHTS RESERVED * * This software may be modified and distributed under the terms * of the MIT license. See the LICENSE file in the root of the project for details. * * https://github.com/DevExpress/devextreme-angular */ import * as tslib_1 from "tslib"; /* tslint:disable:max-line-length */ import { BrowserTransferStateModule } from '@angular/platform-browser'; import { TransferState } from '@angular/platform-browser'; import { Component, NgModule, ElementRef, NgZone, PLATFORM_ID, Inject, Input, Output, OnDestroy, EventEmitter, OnChanges, DoCheck, SimpleChanges, ContentChildren, QueryList } from '@angular/core'; import DxScheduler from 'devextreme/ui/scheduler'; import { DxComponent, DxTemplateHost, DxIntegrationModule, DxTemplateModule, NestedOptionHost, IterableDifferHelper, WatcherHelper } from 'devextreme-angular/core'; import { DxoAppointmentDraggingModule } from 'devextreme-angular/ui/nested'; import { DxoEditingModule } from 'devextreme-angular/ui/nested'; import { DxiResourceModule } from 'devextreme-angular/ui/nested'; import { DxoScrollingModule } from 'devextreme-angular/ui/nested'; import { DxiViewModule } from 'devextreme-angular/ui/nested'; import { DxiResourceComponent } from 'devextreme-angular/ui/nested'; import { DxiViewComponent } from 'devextreme-angular/ui/nested'; /** * The Scheduler is a UI component that represents scheduled data and allows a user to manage and edit it. */ let DxSchedulerComponent = class DxSchedulerComponent extends DxComponent { constructor(elementRef, ngZone, templateHost, _watcherHelper, _idh, optionHost, transferState, platformId) { super(elementRef, ngZone, templateHost, _watcherHelper, transferState, platformId); this._watcherHelper = _watcherHelper; this._idh = _idh; this._createEventEmitters([ { subscribe: 'appointmentAdded', emit: 'onAppointmentAdded' }, { subscribe: 'appointmentAdding', emit: 'onAppointmentAdding' }, { subscribe: 'appointmentClick', emit: 'onAppointmentClick' }, { subscribe: 'appointmentContextMenu', emit: 'onAppointmentContextMenu' }, { subscribe: 'appointmentDblClick', emit: 'onAppointmentDblClick' }, { subscribe: 'appointmentDeleted', emit: 'onAppointmentDeleted' }, { subscribe: 'appointmentDeleting', emit: 'onAppointmentDeleting' }, { subscribe: 'appointmentFormOpening', emit: 'onAppointmentFormOpening' }, { subscribe: 'appointmentRendered', emit: 'onAppointmentRendered' }, { subscribe: 'appointmentUpdated', emit: 'onAppointmentUpdated' }, { subscribe: 'appointmentUpdating', emit: 'onAppointmentUpdating' }, { subscribe: 'cellClick', emit: 'onCellClick' }, { subscribe: 'cellContextMenu', emit: 'onCellContextMenu' }, { subscribe: 'contentReady', emit: 'onContentReady' }, { subscribe: 'disposing', emit: 'onDisposing' }, { subscribe: 'initialized', emit: 'onInitialized' }, { subscribe: 'optionChanged', emit: 'onOptionChanged' }, { emit: 'accessKeyChange' }, { emit: 'adaptivityEnabledChange' }, { emit: 'allDayExprChange' }, { emit: 'appointmentCollectorTemplateChange' }, { emit: 'appointmentDraggingChange' }, { emit: 'appointmentTemplateChange' }, { emit: 'appointmentTooltipTemplateChange' }, { emit: 'cellDurationChange' }, { emit: 'crossScrollingEnabledChange' }, { emit: 'currentDateChange' }, { emit: 'currentViewChange' }, { emit: 'customizeDateNavigatorTextChange' }, { emit: 'dataCellTemplateChange' }, { emit: 'dataSourceChange' }, { emit: 'dateCellTemplateChange' }, { emit: 'dateSerializationFormatChange' }, { emit: 'descriptionExprChange' }, { emit: 'disabledChange' }, { emit: 'dropDownAppointmentTemplateChange' }, { emit: 'editingChange' }, { emit: 'elementAttrChange' }, { emit: 'endDateExprChange' }, { emit: 'endDateTimeZoneExprChange' }, { emit: 'endDayHourChange' }, { emit: 'firstDayOfWeekChange' }, { emit: 'focusStateEnabledChange' }, { emit: 'groupByDateChange' }, { emit: 'groupsChange' }, { emit: 'heightChange' }, { emit: 'hintChange' }, { emit: 'indicatorUpdateIntervalChange' }, { emit: 'maxChange' }, { emit: 'maxAppointmentsPerCellChange' }, { emit: 'minChange' }, { emit: 'noDataTextChange' }, { emit: 'recurrenceEditModeChange' }, { emit: 'recurrenceExceptionExprChange' }, { emit: 'recurrenceRuleExprChange' }, { emit: 'remoteFilteringChange' }, { emit: 'resourceCellTemplateChange' }, { emit: 'resourcesChange' }, { emit: 'rtlEnabledChange' }, { emit: 'scrollingChange' }, { emit: 'selectedCellDataChange' }, { emit: 'shadeUntilCurrentTimeChange' }, { emit: 'showAllDayPanelChange' }, { emit: 'showCurrentTimeIndicatorChange' }, { emit: 'startDateExprChange' }, { emit: 'startDateTimeZoneExprChange' }, { emit: 'startDayHourChange' }, { emit: 'tabIndexChange' }, { emit: 'textExprChange' }, { emit: 'timeCellTemplateChange' }, { emit: 'timeZoneChange' }, { emit: 'useDropDownViewSwitcherChange' }, { emit: 'viewsChange' }, { emit: 'visibleChange' }, { emit: 'widthChange' } ]); this._idh.setHost(this); optionHost.setHost(this); } /** * Specifies the shortcut key that sets focus on the UI component. */ get accessKey() { return this._getOption('accessKey'); } set accessKey(value) { this._setOption('accessKey', value); } /** * Specifies whether the UI component adapts to small screens. */ get adaptivityEnabled() { return this._getOption('adaptivityEnabled'); } set adaptivityEnabled(value) { this._setOption('adaptivityEnabled', value); } /** * Specifies the name of the data source item field whose value defines whether or not the corresponding appointment is an all-day appointment. */ get allDayExpr() { return this._getOption('allDayExpr'); } set allDayExpr(value) { this._setOption('allDayExpr', value); } /** * Specifies a custom template for cell overflow indicators. */ get appointmentCollectorTemplate() { return this._getOption('appointmentCollectorTemplate'); } set appointmentCollectorTemplate(value) { this._setOption('appointmentCollectorTemplate', value); } /** * Configures appointment reordering using drag and drop gestures. */ get appointmentDragging() { return this._getOption('appointmentDragging'); } set appointmentDragging(value) { this._setOption('appointmentDragging', value); } /** * Specifies a custom template for appointments. */ get appointmentTemplate() { return this._getOption('appointmentTemplate'); } set appointmentTemplate(value) { this._setOption('appointmentTemplate', value); } /** * Specifies a custom template for tooltips displayed when users click an appointment or cell overflow indicator. */ get appointmentTooltipTemplate() { return this._getOption('appointmentTooltipTemplate'); } set appointmentTooltipTemplate(value) { this._setOption('appointmentTooltipTemplate', value); } /** * Specifies cell duration in minutes. This property's value should divide the interval between startDayHour and endDayHour into even parts. */ get cellDuration() { return this._getOption('cellDuration'); } set cellDuration(value) { this._setOption('cellDuration', value); } /** * Specifies whether or not an end-user can scroll the view in both directions at the same time. */ get crossScrollingEnabled() { return this._getOption('crossScrollingEnabled'); } set crossScrollingEnabled(value) { this._setOption('crossScrollingEnabled', value); } /** * Specifies the current date. */ get currentDate() { return this._getOption('currentDate'); } set currentDate(value) { this._setOption('currentDate', value); } /** * Specifies the currently displayed view. Accepts the view's name or type. */ get currentView() { return this._getOption('currentView'); } set currentView(value) { this._setOption('currentView', value); } /** * Customizes the date navigator's text. */ get customizeDateNavigatorText() { return this._getOption('customizeDateNavigatorText'); } set customizeDateNavigatorText(value) { this._setOption('customizeDateNavigatorText', value); } /** * Specifies a custom template for table cells. */ get dataCellTemplate() { return this._getOption('dataCellTemplate'); } set dataCellTemplate(value) { this._setOption('dataCellTemplate', value); } /** * Binds the UI component to data. */ get dataSource() { return this._getOption('dataSource'); } set dataSource(value) { this._setOption('dataSource', value); } /** * Specifies a custom template for day scale items. */ get dateCellTemplate() { return this._getOption('dateCellTemplate'); } set dateCellTemplate(value) { this._setOption('dateCellTemplate', value); } /** * Specifies the date-time values' serialization format. Use it only if you do not specify the dataSource at design time. */ get dateSerializationFormat() { return this._getOption('dateSerializationFormat'); } set dateSerializationFormat(value) { this._setOption('dateSerializationFormat', value); } /** * Specifies the name of the data source item field whose value holds the description of the corresponding appointment. */ get descriptionExpr() { return this._getOption('descriptionExpr'); } set descriptionExpr(value) { this._setOption('descriptionExpr', value); } /** * Specifies whether the UI component responds to user interaction. */ get disabled() { return this._getOption('disabled'); } set disabled(value) { this._setOption('disabled', value); } /** * Specifies a custom template for tooltips displayed when users click a cell overflow indicator. * @deprecated Use the appointmentTooltipTemplate option instead. */ get dropDownAppointmentTemplate() { return this._getOption('dropDownAppointmentTemplate'); } set dropDownAppointmentTemplate(value) { this._setOption('dropDownAppointmentTemplate', value); } /** * Specifies which editing operations a user can perform on appointments. */ get editing() { return this._getOption('editing'); } set editing(value) { this._setOption('editing', value); } /** * Specifies the global attributes to be attached to the UI component's container element. */ get elementAttr() { return this._getOption('elementAttr'); } set elementAttr(value) { this._setOption('elementAttr', value); } /** * Specifies the name of the data source item field that defines the ending of an appointment. */ get endDateExpr() { return this._getOption('endDateExpr'); } set endDateExpr(value) { this._setOption('endDateExpr', value); } /** * Specifies the name of the data source item field that defines the timezone of the appointment end date. */ get endDateTimeZoneExpr() { return this._getOption('endDateTimeZoneExpr'); } set endDateTimeZoneExpr(value) { this._setOption('endDateTimeZoneExpr', value); } /** * Specifies the last hour on the time scale. Accepts integer values from 0 to 24. */ get endDayHour() { return this._getOption('endDayHour'); } set endDayHour(value) { this._setOption('endDayHour', value); } /** * Specifies the first day of a week. Does not apply to the agenda view. */ get firstDayOfWeek() { return this._getOption('firstDayOfWeek'); } set firstDayOfWeek(value) { this._setOption('firstDayOfWeek', value); } /** * Specifies whether the UI component can be focused using keyboard navigation. */ get focusStateEnabled() { return this._getOption('focusStateEnabled'); } set focusStateEnabled(value) { this._setOption('focusStateEnabled', value); } /** * If true, appointments are grouped by date first and then by resource; opposite if false. Applies only if appointments are grouped and groupOrientation is 'horizontal'. */ get groupByDate() { return this._getOption('groupByDate'); } set groupByDate(value) { this._setOption('groupByDate', value); } /** * Specifies the resource kinds by which the scheduler's appointments are grouped in a timetable. */ get groups() { return this._getOption('groups'); } set groups(value) { this._setOption('groups', value); } /** * Specifies the UI component's height. */ get height() { return this._getOption('height'); } set height(value) { this._setOption('height', value); } /** * Specifies text for a hint that appears when a user pauses on the UI component. */ get hint() { return this._getOption('hint'); } set hint(value) { this._setOption('hint', value); } /** * Specifies the time interval between when the date-time indicator changes its position, in milliseconds. */ get indicatorUpdateInterval() { return this._getOption('indicatorUpdateInterval'); } set indicatorUpdateInterval(value) { this._setOption('indicatorUpdateInterval', value); } /** * The latest date the UI component allows you to select. */ get max() { return this._getOption('max'); } set max(value) { this._setOption('max', value); } /** * Specifies the limit of full-sized appointments displayed per cell. Applies to all views except 'agenda'. */ get maxAppointmentsPerCell() { return this._getOption('maxAppointmentsPerCell'); } set maxAppointmentsPerCell(value) { this._setOption('maxAppointmentsPerCell', value); } /** * The earliest date the UI component allows you to select. */ get min() { return this._getOption('min'); } set min(value) { this._setOption('min', value); } /** * The text or HTML markup displayed by the UI component if the item collection is empty. Available for the Agenda view only. */ get noDataText() { return this._getOption('noDataText'); } set noDataText(value) { this._setOption('noDataText', value); } /** * Specifies the edit mode for recurring appointments. */ get recurrenceEditMode() { return this._getOption('recurrenceEditMode'); } set recurrenceEditMode(value) { this._setOption('recurrenceEditMode', value); } /** * Specifies the name of the data source item field that defines exceptions for the current recurring appointment. */ get recurrenceExceptionExpr() { return this._getOption('recurrenceExceptionExpr'); } set recurrenceExceptionExpr(value) { this._setOption('recurrenceExceptionExpr', value); } /** * Specifies the name of the data source item field that defines a recurrence rule for generating recurring appointments. */ get recurrenceRuleExpr() { return this._getOption('recurrenceRuleExpr'); } set recurrenceRuleExpr(value) { this._setOption('recurrenceRuleExpr', value); } /** * Specifies whether filtering is performed on the server or client side. */ get remoteFiltering() { return this._getOption('remoteFiltering'); } set remoteFiltering(value) { this._setOption('remoteFiltering', value); } /** * Specifies a custom template for resource headers. */ get resourceCellTemplate() { return this._getOption('resourceCellTemplate'); } set resourceCellTemplate(value) { this._setOption('resourceCellTemplate', value); } /** * Specifies an array of resources available in the scheduler. */ get resources() { return this._getOption('resources'); } set resources(value) { this._setOption('resources', value); } /** * Switches the UI component to a right-to-left representation. */ get rtlEnabled() { return this._getOption('rtlEnabled'); } set rtlEnabled(value) { this._setOption('rtlEnabled', value); } /** * Configures scrolling. */ get scrolling() { return this._getOption('scrolling'); } set scrolling(value) { this._setOption('scrolling', value); } /** * Currently selected cells' data. */ get selectedCellData() { return this._getOption('selectedCellData'); } set selectedCellData(value) { this._setOption('selectedCellData', value); } /** * Specifies whether to apply shading to cover the timetable up to the current time. */ get shadeUntilCurrentTime() { return this._getOption('shadeUntilCurrentTime'); } set shadeUntilCurrentTime(value) { this._setOption('shadeUntilCurrentTime', value); } /** * Specifies the 'All-day' panel's visibility. Setting this property to false hides the panel along with the all-day appointments. */ get showAllDayPanel() { return this._getOption('showAllDayPanel'); } set showAllDayPanel(value) { this._setOption('showAllDayPanel', value); } /** * Specifies the current date-time indicator's visibility. */ get showCurrentTimeIndicator() { return this._getOption('showCurrentTimeIndicator'); } set showCurrentTimeIndicator(value) { this._setOption('showCurrentTimeIndicator', value); } /** * Specifies the name of the data source item field that defines the start of an appointment. */ get startDateExpr() { return this._getOption('startDateExpr'); } set startDateExpr(value) { this._setOption('startDateExpr', value); } /** * Specifies the name of the data source item field that defines the timezone of the appointment start date. */ get startDateTimeZoneExpr() { return this._getOption('startDateTimeZoneExpr'); } set startDateTimeZoneExpr(value) { this._setOption('startDateTimeZoneExpr', value); } /** * Specifies the first hour on the time scale. Accepts integer values from 0 to 24. */ get startDayHour() { return this._getOption('startDayHour'); } set startDayHour(value) { this._setOption('startDayHour', value); } /** * Specifies the number of the element when the Tab key is used for navigating. */ get tabIndex() { return this._getOption('tabIndex'); } set tabIndex(value) { this._setOption('tabIndex', value); } /** * Specifies the name of the data source item field that holds the subject of an appointment. */ get textExpr() { return this._getOption('textExpr'); } set textExpr(value) { this._setOption('textExpr', value); } /** * Specifies a custom template for time scale items. */ get timeCellTemplate() { return this._getOption('timeCellTemplate'); } set timeCellTemplate(value) { this._setOption('timeCellTemplate', value); } /** * Specifies the time zone for the Scheduler's grid. Accepts values from the IANA time zone database. */ get timeZone() { return this._getOption('timeZone'); } set timeZone(value) { this._setOption('timeZone', value); } /** * Specifies whether a user can switch views using tabs or a drop-down menu. */ get useDropDownViewSwitcher() { return this._getOption('useDropDownViewSwitcher'); } set useDropDownViewSwitcher(value) { this._setOption('useDropDownViewSwitcher', value); } /** * Specifies and configures the views to be available in the view switcher. */ get views() { return this._getOption('views'); } set views(value) { this._setOption('views', value); } /** * Specifies whether the UI component is visible. */ get visible() { return this._getOption('visible'); } set visible(value) { this._setOption('visible', value); } /** * Specifies the UI component's width. */ get width() { return this._getOption('width'); } set width(value) { this._setOption('width', value); } get resourcesChildren() { return this._getOption('resources'); } set resourcesChildren(value) { this.setChildren('resources', value); } get viewsChildren() { return this._getOption('views'); } set viewsChildren(value) { this.setChildren('views', value); } _createInstance(element, options) { return new DxScheduler(element, options); } ngOnDestroy() { this._destroyWidget(); } ngOnChanges(changes) { super.ngOnChanges(changes); this.setupChanges('dataSource', changes); this.setupChanges('groups', changes); this.setupChanges('resources', changes); this.setupChanges('selectedCellData', changes); this.setupChanges('views', changes); } setupChanges(prop, changes) { if (!(prop in this._optionsToUpdate)) { this._idh.setup(prop, changes); } } ngDoCheck() { this._idh.doCheck('dataSource'); this._idh.doCheck('groups'); this._idh.doCheck('resources'); this._idh.doCheck('selectedCellData'); this._idh.doCheck('views'); this._watcherHelper.checkWatchers(); super.ngDoCheck(); super.clearChangedOptions(); } _setOption(name, value) { let isSetup = this._idh.setupSingle(name, value); let isChanged = this._idh.getChanges(name, value) !== null; if (isSetup || isChanged) { super._setOption(name, value); } } }; DxSchedulerComponent.ctorParameters = () => [ { type: ElementRef }, { type: NgZone }, { type: DxTemplateHost }, { type: WatcherHelper }, { type: IterableDifferHelper }, { type: NestedOptionHost }, { type: TransferState }, { type: undefined, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] } ]; tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", String), tslib_1.__metadata("design:paramtypes", [String]) ], DxSchedulerComponent.prototype, "accessKey", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Boolean), tslib_1.__metadata("design:paramtypes", [Boolean]) ], DxSchedulerComponent.prototype, "adaptivityEnabled", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", String), tslib_1.__metadata("design:paramtypes", [String]) ], DxSchedulerComponent.prototype, "allDayExpr", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "appointmentCollectorTemplate", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "appointmentDragging", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "appointmentTemplate", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "appointmentTooltipTemplate", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Number), tslib_1.__metadata("design:paramtypes", [Number]) ], DxSchedulerComponent.prototype, "cellDuration", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Boolean), tslib_1.__metadata("design:paramtypes", [Boolean]) ], DxSchedulerComponent.prototype, "crossScrollingEnabled", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "currentDate", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", String), tslib_1.__metadata("design:paramtypes", [String]) ], DxSchedulerComponent.prototype, "currentView", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Function), tslib_1.__metadata("design:paramtypes", [Function]) ], DxSchedulerComponent.prototype, "customizeDateNavigatorText", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "dataCellTemplate", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "dataSource", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "dateCellTemplate", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", String), tslib_1.__metadata("design:paramtypes", [String]) ], DxSchedulerComponent.prototype, "dateSerializationFormat", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", String), tslib_1.__metadata("design:paramtypes", [String]) ], DxSchedulerComponent.prototype, "descriptionExpr", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Boolean), tslib_1.__metadata("design:paramtypes", [Boolean]) ], DxSchedulerComponent.prototype, "disabled", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "dropDownAppointmentTemplate", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "editing", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "elementAttr", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", String), tslib_1.__metadata("design:paramtypes", [String]) ], DxSchedulerComponent.prototype, "endDateExpr", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", String), tslib_1.__metadata("design:paramtypes", [String]) ], DxSchedulerComponent.prototype, "endDateTimeZoneExpr", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Number), tslib_1.__metadata("design:paramtypes", [Number]) ], DxSchedulerComponent.prototype, "endDayHour", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "firstDayOfWeek", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Boolean), tslib_1.__metadata("design:paramtypes", [Boolean]) ], DxSchedulerComponent.prototype, "focusStateEnabled", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Boolean), tslib_1.__metadata("design:paramtypes", [Boolean]) ], DxSchedulerComponent.prototype, "groupByDate", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Array), tslib_1.__metadata("design:paramtypes", [Array]) ], DxSchedulerComponent.prototype, "groups", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "height", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", String), tslib_1.__metadata("design:paramtypes", [String]) ], DxSchedulerComponent.prototype, "hint", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Number), tslib_1.__metadata("design:paramtypes", [Number]) ], DxSchedulerComponent.prototype, "indicatorUpdateInterval", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "max", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "maxAppointmentsPerCell", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "min", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", String), tslib_1.__metadata("design:paramtypes", [String]) ], DxSchedulerComponent.prototype, "noDataText", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", String), tslib_1.__metadata("design:paramtypes", [String]) ], DxSchedulerComponent.prototype, "recurrenceEditMode", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", String), tslib_1.__metadata("design:paramtypes", [String]) ], DxSchedulerComponent.prototype, "recurrenceExceptionExpr", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", String), tslib_1.__metadata("design:paramtypes", [String]) ], DxSchedulerComponent.prototype, "recurrenceRuleExpr", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Boolean), tslib_1.__metadata("design:paramtypes", [Boolean]) ], DxSchedulerComponent.prototype, "remoteFiltering", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "resourceCellTemplate", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Array), tslib_1.__metadata("design:paramtypes", [Array]) ], DxSchedulerComponent.prototype, "resources", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Boolean), tslib_1.__metadata("design:paramtypes", [Boolean]) ], DxSchedulerComponent.prototype, "rtlEnabled", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "scrolling", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Array), tslib_1.__metadata("design:paramtypes", [Array]) ], DxSchedulerComponent.prototype, "selectedCellData", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Boolean), tslib_1.__metadata("design:paramtypes", [Boolean]) ], DxSchedulerComponent.prototype, "shadeUntilCurrentTime", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Boolean), tslib_1.__metadata("design:paramtypes", [Boolean]) ], DxSchedulerComponent.prototype, "showAllDayPanel", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Boolean), tslib_1.__metadata("design:paramtypes", [Boolean]) ], DxSchedulerComponent.prototype, "showCurrentTimeIndicator", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", String), tslib_1.__metadata("design:paramtypes", [String]) ], DxSchedulerComponent.prototype, "startDateExpr", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", String), tslib_1.__metadata("design:paramtypes", [String]) ], DxSchedulerComponent.prototype, "startDateTimeZoneExpr", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Number), tslib_1.__metadata("design:paramtypes", [Number]) ], DxSchedulerComponent.prototype, "startDayHour", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Number), tslib_1.__metadata("design:paramtypes", [Number]) ], DxSchedulerComponent.prototype, "tabIndex", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", String), tslib_1.__metadata("design:paramtypes", [String]) ], DxSchedulerComponent.prototype, "textExpr", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "timeCellTemplate", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", String), tslib_1.__metadata("design:paramtypes", [String]) ], DxSchedulerComponent.prototype, "timeZone", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Boolean), tslib_1.__metadata("design:paramtypes", [Boolean]) ], DxSchedulerComponent.prototype, "useDropDownViewSwitcher", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "views", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Boolean), tslib_1.__metadata("design:paramtypes", [Boolean]) ], DxSchedulerComponent.prototype, "visible", null); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", Object), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "width", null); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "onAppointmentAdded", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "onAppointmentAdding", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "onAppointmentClick", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "onAppointmentContextMenu", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "onAppointmentDblClick", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "onAppointmentDeleted", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "onAppointmentDeleting", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "onAppointmentFormOpening", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "onAppointmentRendered", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "onAppointmentUpdated", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "onAppointmentUpdating", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "onCellClick", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "onCellContextMenu", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "onContentReady", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "onDisposing", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "onInitialized", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "onOptionChanged", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "accessKeyChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "adaptivityEnabledChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "allDayExprChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "appointmentCollectorTemplateChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "appointmentDraggingChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "appointmentTemplateChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "appointmentTooltipTemplateChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "cellDurationChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "crossScrollingEnabledChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "currentDateChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "currentViewChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "customizeDateNavigatorTextChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "dataCellTemplateChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "dataSourceChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "dateCellTemplateChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "dateSerializationFormatChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "descriptionExprChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "disabledChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "dropDownAppointmentTemplateChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "editingChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "elementAttrChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "endDateExprChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "endDateTimeZoneExprChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "endDayHourChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "firstDayOfWeekChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "focusStateEnabledChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "groupByDateChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "groupsChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "heightChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "hintChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "indicatorUpdateIntervalChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "maxChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "maxAppointmentsPerCellChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "minChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "noDataTextChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "recurrenceEditModeChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "recurrenceExceptionExprChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "recurrenceRuleExprChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "remoteFilteringChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "resourceCellTemplateChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "resourcesChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "rtlEnabledChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "scrollingChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "selectedCellDataChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "shadeUntilCurrentTimeChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "showAllDayPanelChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "showCurrentTimeIndicatorChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "startDateExprChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "startDateTimeZoneExprChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "startDayHourChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "tabIndexChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "textExprChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "timeCellTemplateChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "timeZoneChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "useDropDownViewSwitcherChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "viewsChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "visibleChange", void 0); tslib_1.__decorate([ Output(), tslib_1.__metadata("design:type", EventEmitter) ], DxSchedulerComponent.prototype, "widthChange", void 0); tslib_1.__decorate([ ContentChildren(DxiResourceComponent), tslib_1.__metadata("design:type", QueryList), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "resourcesChildren", null); tslib_1.__decorate([ ContentChildren(DxiViewComponent), tslib_1.__metadata("design:type", QueryList), tslib_1.__metadata("design:paramtypes", [Object]) ], DxSchedulerComponent.prototype, "viewsChildren", null); DxSchedulerComponent = tslib_1.__decorate([ Component({ selector: 'dx-scheduler', template: '', providers: [ DxTemplateHost, WatcherHelper, NestedOptionHost, IterableDifferHelper ] }), tslib_1.__param(7, Inject(PLATFORM_ID)), tslib_1.__metadata("design:paramtypes", [ElementRef, NgZone, DxTemplateHost, WatcherHelper, IterableDifferHelper, NestedOptionHost, TransferState, Object]) ], DxSchedulerComponent); export { DxSchedulerComponent }; let DxSchedulerModule = class DxSchedulerModule { }; DxSchedulerModule = tslib_1.__decorate([ NgModule({ imports: [ DxoAppointmentDraggingModule, DxoEditingModule, DxiResourceModule, DxoScrollingModule, DxiViewModule, DxIntegrationModule, DxTemplateModule, BrowserTransferStateModule ], declarations: [ DxSchedulerComponent ], exports: [ DxSchedulerComponent, DxoAppointmentDraggingModule, DxoEditingModule,