text: import { __extends, __decorate, __metadata, __param } from 'tslib';
  import { TransferState, BrowserTransferStateModule } from '@angular/platform-browser';
  import { ElementRef, NgZone, Inject, PLATFORM_ID, Input, Output, EventEmitter, ContentChildren, QueryList, Component, NgModule } from '@angular/core';
  import DxGantt from 'devextreme/ui/gantt';
  import { DxTemplateHost, WatcherHelper, IterableDifferHelper, NestedOptionHost, DxComponent, DxIntegrationModule, DxTemplateModule } from 'devextreme-angular/core';
  import { DxiColumnComponent, DxiStripLineComponent, DxiColumnModule, DxiButtonModule, DxoHeaderFilterModule, DxoLookupModule, DxoFormatModule, DxoFormItemModule, DxoLabelModule, DxiValidationRuleModule, DxoContextMenuModule, DxiItemModule, DxoDependenciesModule, DxoEditingModule, DxoFilterRowModule, DxoOperationDescriptionsModule, DxoTextsModule, DxoResourceAssignmentsModule, DxoResourcesModule, DxoScaleTypeRangeModule, DxoSortingModule, DxiStripLineModule, DxoTasksModule, DxoToolbarModule, DxoValidationModule } from 'devextreme-angular/ui/nested';
  
  /*!
   * devextreme-angular
   * Version: 21.2.5
   * Build date: Mon Jan 17 2022
   *
   * Copyright (c) 2012 - 2022 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
   */
  /**
   * The Gantt is a UI component that displays the task flow and dependencies between tasks.
  
   */
  var DxGanttComponent = /** @class */ (function (_super) {
      __extends(DxGanttComponent, _super);
      function DxGanttComponent(elementRef, ngZone, templateHost, _watcherHelper, _idh, optionHost, transferState, platformId) {
          var _this = _super.call(this, elementRef, ngZone, templateHost, _watcherHelper, transferState, platformId) || this;
          _this._watcherHelper = _watcherHelper;
          _this._idh = _idh;
          _this._createEventEmitters([
              { subscribe: 'contentReady', emit: 'onContentReady' },
              { subscribe: 'contextMenuPreparing', emit: 'onContextMenuPreparing' },
              { subscribe: 'customCommand', emit: 'onCustomCommand' },
              { subscribe: 'dependencyDeleted', emit: 'onDependencyDeleted' },
              { subscribe: 'dependencyDeleting', emit: 'onDependencyDeleting' },
              { subscribe: 'dependencyInserted', emit: 'onDependencyInserted' },
              { subscribe: 'dependencyInserting', emit: 'onDependencyInserting' },
              { subscribe: 'disposing', emit: 'onDisposing' },
              { subscribe: 'initialized', emit: 'onInitialized' },
              { subscribe: 'optionChanged', emit: 'onOptionChanged' },
              { subscribe: 'resourceAssigned', emit: 'onResourceAssigned' },
              { subscribe: 'resourceAssigning', emit: 'onResourceAssigning' },
              { subscribe: 'resourceDeleted', emit: 'onResourceDeleted' },
              { subscribe: 'resourceDeleting', emit: 'onResourceDeleting' },
              { subscribe: 'resourceInserted', emit: 'onResourceInserted' },
              { subscribe: 'resourceInserting', emit: 'onResourceInserting' },
              { subscribe: 'resourceManagerDialogShowing', emit: 'onResourceManagerDialogShowing' },
              { subscribe: 'resourceUnassigned', emit: 'onResourceUnassigned' },
              { subscribe: 'resourceUnassigning', emit: 'onResourceUnassigning' },
              { subscribe: 'selectionChanged', emit: 'onSelectionChanged' },
              { subscribe: 'taskClick', emit: 'onTaskClick' },
              { subscribe: 'taskDblClick', emit: 'onTaskDblClick' },
              { subscribe: 'taskDeleted', emit: 'onTaskDeleted' },
              { subscribe: 'taskDeleting', emit: 'onTaskDeleting' },
              { subscribe: 'taskEditDialogShowing', emit: 'onTaskEditDialogShowing' },
              { subscribe: 'taskInserted', emit: 'onTaskInserted' },
              { subscribe: 'taskInserting', emit: 'onTaskInserting' },
              { subscribe: 'taskMoving', emit: 'onTaskMoving' },
              { subscribe: 'taskUpdated', emit: 'onTaskUpdated' },
              { subscribe: 'taskUpdating', emit: 'onTaskUpdating' },
              { emit: 'accessKeyChange' },
              { emit: 'activeStateEnabledChange' },
              { emit: 'allowSelectionChange' },
              { emit: 'columnsChange' },
              { emit: 'contextMenuChange' },
              { emit: 'dependenciesChange' },
              { emit: 'disabledChange' },
              { emit: 'editingChange' },
              { emit: 'elementAttrChange' },
              { emit: 'endDateRangeChange' },
              { emit: 'filterRowChange' },
              { emit: 'firstDayOfWeekChange' },
              { emit: 'focusStateEnabledChange' },
              { emit: 'headerFilterChange' },
              { emit: 'heightChange' },
              { emit: 'hintChange' },
              { emit: 'hoverStateEnabledChange' },
              { emit: 'resourceAssignmentsChange' },
              { emit: 'resourcesChange' },
              { emit: 'rootValueChange' },
              { emit: 'scaleTypeChange' },
              { emit: 'scaleTypeRangeChange' },
              { emit: 'selectedRowKeyChange' },
              { emit: 'showDependenciesChange' },
              { emit: 'showResourcesChange' },
              { emit: 'showRowLinesChange' },
              { emit: 'sortingChange' },
              { emit: 'startDateRangeChange' },
              { emit: 'stripLinesChange' },
              { emit: 'tabIndexChange' },
              { emit: 'taskContentTemplateChange' },
              { emit: 'taskListWidthChange' },
              { emit: 'taskProgressTooltipContentTemplateChange' },
              { emit: 'tasksChange' },
              { emit: 'taskTimeTooltipContentTemplateChange' },
              { emit: 'taskTitlePositionChange' },
              { emit: 'taskTooltipContentTemplateChange' },
              { emit: 'toolbarChange' },
              { emit: 'validationChange' },
              { emit: 'visibleChange' },
              { emit: 'widthChange' }
          ]);
          _this._idh.setHost(_this);
          optionHost.setHost(_this);
          return _this;
      }
      Object.defineProperty(DxGanttComponent.prototype, "accessKey", {
          /**
           * Specifies the shortcut key that sets focus on the UI component.
          
           */
          get: function () {
              return this._getOption('accessKey');
          },
          set: function (value) {
              this._setOption('accessKey', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "activeStateEnabled", {
          /**
           * Specifies whether or not the UI component changes its state when interacting with a user.
          
           */
          get: function () {
              return this._getOption('activeStateEnabled');
          },
          set: function (value) {
              this._setOption('activeStateEnabled', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "allowSelection", {
          /**
           * Specifies whether users can select tasks in the Gantt.
          
           */
          get: function () {
              return this._getOption('allowSelection');
          },
          set: function (value) {
              this._setOption('allowSelection', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "columns", {
          /**
           * An array of columns in the Gantt.
          
           */
          get: function () {
              return this._getOption('columns');
          },
          set: function (value) {
              this._setOption('columns', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "contextMenu", {
          /**
           * Configures the context menu settings.
          
           */
          get: function () {
              return this._getOption('contextMenu');
          },
          set: function (value) {
              this._setOption('contextMenu', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "dependencies", {
          /**
           * Configures dependencies.
          
           */
          get: function () {
              return this._getOption('dependencies');
          },
          set: function (value) {
              this._setOption('dependencies', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "disabled", {
          /**
           * Specifies whether the UI component responds to user interaction.
          
           */
          get: function () {
              return this._getOption('disabled');
          },
          set: function (value) {
              this._setOption('disabled', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "editing", {
          /**
           * Configures edit properties.
          
           */
          get: function () {
              return this._getOption('editing');
          },
          set: function (value) {
              this._setOption('editing', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "elementAttr", {
          /**
           * Specifies the global attributes to be attached to the UI component&apos;s container element.
          
           */
          get: function () {
              return this._getOption('elementAttr');
          },
          set: function (value) {
              this._setOption('elementAttr', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "endDateRange", {
          /**
           * Specifies the end date of the date interval in the Gantt chart.
          
           */
          get: function () {
              return this._getOption('endDateRange');
          },
          set: function (value) {
              this._setOption('endDateRange', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "filterRow", {
          /**
           * Configures filter row settings.
          
           */
          get: function () {
              return this._getOption('filterRow');
          },
          set: function (value) {
              this._setOption('filterRow', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "firstDayOfWeek", {
          /**
           * Specifies the first day of a week.
          
           */
          get: function () {
              return this._getOption('firstDayOfWeek');
          },
          set: function (value) {
              this._setOption('firstDayOfWeek', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "focusStateEnabled", {
          /**
           * Specifies whether the UI component can be focused using keyboard navigation.
          
           */
          get: function () {
              return this._getOption('focusStateEnabled');
          },
          set: function (value) {
              this._setOption('focusStateEnabled', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "headerFilter", {
          /**
           * Configures the header filter settings.
          
           */
          get: function () {
              return this._getOption('headerFilter');
          },
          set: function (value) {
              this._setOption('headerFilter', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "height", {
          /**
           * Specifies the UI component&apos;s height.
          
           */
          get: function () {
              return this._getOption('height');
          },
          set: function (value) {
              this._setOption('height', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "hint", {
          /**
           * Specifies text for a hint that appears when a user pauses on the UI component.
          
           */
          get: function () {
              return this._getOption('hint');
          },
          set: function (value) {
              this._setOption('hint', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "hoverStateEnabled", {
          /**
           * Specifies whether the UI component changes its state when a user pauses on it.
          
           */
          get: function () {
              return this._getOption('hoverStateEnabled');
          },
          set: function (value) {
              this._setOption('hoverStateEnabled', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "resourceAssignments", {
          /**
           * Configures resource assignments.
          
           */
          get: function () {
              return this._getOption('resourceAssignments');
          },
          set: function (value) {
              this._setOption('resourceAssignments', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "resources", {
          /**
           * Configures task resources.
          
           */
          get: function () {
              return this._getOption('resources');
          },
          set: function (value) {
              this._setOption('resources', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "rootValue", {
          /**
           * Specifies the root task&apos;s identifier.
          
           */
          get: function () {
              return this._getOption('rootValue');
          },
          set: function (value) {
              this._setOption('rootValue', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "scaleType", {
          /**
           * Specifies the zoom level of tasks in the Gantt chart.
          
           */
          get: function () {
              return this._getOption('scaleType');
          },
          set: function (value) {
              this._setOption('scaleType', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "scaleTypeRange", {
          /**
           * Configures zoom range settings.
          
           */
          get: function () {
              return this._getOption('scaleTypeRange');
          },
          set: function (value) {
              this._setOption('scaleTypeRange', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "selectedRowKey", {
          /**
           * Allows you to select a row or determine which row is selected.
          
           */
          get: function () {
              return this._getOption('selectedRowKey');
          },
          set: function (value) {
              this._setOption('selectedRowKey', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "showDependencies", {
          /**
           * Specifies whether to display dependencies between tasks.
          
           */
          get: function () {
              return this._getOption('showDependencies');
          },
          set: function (value) {
              this._setOption('showDependencies', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "showResources", {
          /**
           * Specifies whether to display task resources.
          
           */
          get: function () {
              return this._getOption('showResources');
          },
          set: function (value) {
              this._setOption('showResources', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "showRowLines", {
          /**
           * Specifies whether to show/hide horizontal faint lines that separate tasks.
          
           */
          get: function () {
              return this._getOption('showRowLines');
          },
          set: function (value) {
              this._setOption('showRowLines', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "sorting", {
          /**
           * Configures sort settings.
          
           */
          get: function () {
              return this._getOption('sorting');
          },
          set: function (value) {
              this._setOption('sorting', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "startDateRange", {
          /**
           * Specifies the start date of the date interval in the Gantt chart.
          
           */
          get: function () {
              return this._getOption('startDateRange');
          },
          set: function (value) {
              this._setOption('startDateRange', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "stripLines", {
          /**
           * Configures strip lines.
          
           */
          get: function () {
              return this._getOption('stripLines');
          },
          set: function (value) {
              this._setOption('stripLines', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "tabIndex", {
          /**
           * Specifies the number of the element when the Tab key is used for navigating.
          
           */
          get: function () {
              return this._getOption('tabIndex');
          },
          set: function (value) {
              this._setOption('tabIndex', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "taskContentTemplate", {
          /**
           * Specifies custom content for the task.
          
           */
          get: function () {
              return this._getOption('taskContentTemplate');
          },
          set: function (value) {
              this._setOption('taskContentTemplate', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "taskListWidth", {
          /**
           * Specifies the width of the task list in pixels.
          
           */
          get: function () {
              return this._getOption('taskListWidth');
          },
          set: function (value) {
              this._setOption('taskListWidth', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "taskProgressTooltipContentTemplate", {
          /**
           * Specifies custom content for the tooltip that displays the task&apos;s progress while the progress handler is resized in the UI.
          
           */
          get: function () {
              return this._getOption('taskProgressTooltipContentTemplate');
          },
          set: function (value) {
              this._setOption('taskProgressTooltipContentTemplate', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "tasks", {
          /**
           * Configures tasks.
          
           */
          get: function () {
              return this._getOption('tasks');
          },
          set: function (value) {
              this._setOption('tasks', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "taskTimeTooltipContentTemplate", {
          /**
           * Specifies custom content for the tooltip that displays the task&apos;s start and end time while the task is resized in the UI.
          
           */
          get: function () {
              return this._getOption('taskTimeTooltipContentTemplate');
          },
          set: function (value) {
              this._setOption('taskTimeTooltipContentTemplate', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "taskTitlePosition", {
          /**
           * Specifies a task&apos;s title position.
          
           */
          get: function () {
              return this._getOption('taskTitlePosition');
          },
          set: function (value) {
              this._setOption('taskTitlePosition', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "taskTooltipContentTemplate", {
          /**
           * Specifies custom content for the task tooltip.
          
           */
          get: function () {
              return this._getOption('taskTooltipContentTemplate');
          },
          set: function (value) {
              this._setOption('taskTooltipContentTemplate', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "toolbar", {
          /**
           * Configures toolbar settings.
          
           */
          get: function () {
              return this._getOption('toolbar');
          },
          set: function (value) {
              this._setOption('toolbar', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "validation", {
          /**
           * Configures validation properties.
          
           */
          get: function () {
              return this._getOption('validation');
          },
          set: function (value) {
              this._setOption('validation', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "visible", {
          /**
           * Specifies whether the UI component is visible.
          
           */
          get: function () {
              return this._getOption('visible');
          },
          set: function (value) {
              this._setOption('visible', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "width", {
          /**
           * Specifies the UI component&apos;s width.
          
           */
          get: function () {
              return this._getOption('width');
          },
          set: function (value) {
              this._setOption('width', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "columnsChildren", {
          get: function () {
              return this._getOption('columns');
          },
          set: function (value) {
              this.setChildren('columns', value);
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(DxGanttComponent.prototype, "stripLinesChildren", {
          get: function () {
              return this._getOption('stripLines');
          },
          set: function (value) {
              this.setChildren('stripLines', value);
          },
          enumerable: true,
          configurable: true
      });
      DxGanttComponent.prototype._createInstance = function (element, options) {
          return new DxGantt(element, options);
      };
      DxGanttComponent.prototype.ngOnDestroy = function () {
          this._destroyWidget();
      };
      DxGanttComponent.prototype.ngOnChanges = function (changes) {
          _super.prototype.ngOnChanges.call(this, changes);
          this.setupChanges('columns', changes);
          this.setupChanges('stripLines', changes);
      };
      DxGanttComponent.prototype.setupChanges = function (prop, changes) {
          if (!(prop in this._optionsToUpdate)) {
              this._idh.setup(prop, changes);
          }
      };
      DxGanttComponent.prototype.ngDoCheck = function () {
          this._idh.doCheck('columns');
          this._idh.doCheck('stripLines');
          this._watcherHelper.checkWatchers();
          _super.prototype.ngDoCheck.call(this);
          _super.prototype.clearChangedOptions.call(this);
      };
      DxGanttComponent.prototype._setOption = function (name, value) {
          var isSetup = this._idh.setupSingle(name, value);
          var isChanged = this._idh.getChanges(name, value) !== null;
          if (isSetup || isChanged) {
              _super.prototype._setOption.call(this, name, value);
          }
      };
      DxGanttComponent.ctorParameters = function () { return [
          { type: ElementRef },
          { type: NgZone },
          { type: DxTemplateHost },
          { type: WatcherHelper },
          { type: IterableDifferHelper },
          { type: NestedOptionHost },
          { type: TransferState },
          { type: undefined, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] }
      ]; };
      __decorate([
          Input(),
          __metadata("design:type", String),
          __metadata("design:paramtypes", [String])
      ], DxGanttComponent.prototype, "accessKey", null);
      __decorate([
          Input(),
          __metadata("design:type", Boolean),
          __metadata("design:paramtypes", [Boolean])
      ], DxGanttComponent.prototype, "activeStateEnabled", null);
      __decorate([
          Input(),
          __metadata("design:type", Boolean),
          __metadata("design:paramtypes", [Boolean])
      ], DxGanttComponent.prototype, "allowSelection", null);
      __decorate([
          Input(),
          __metadata("design:type", Array),
          __metadata("design:paramtypes", [Array])
      ], DxGanttComponent.prototype, "columns", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "contextMenu", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "dependencies", null);
      __decorate([
          Input(),
          __metadata("design:type", Boolean),
          __metadata("design:paramtypes", [Boolean])
      ], DxGanttComponent.prototype, "disabled", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "editing", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "elementAttr", null);
      __decorate([
          Input(),
          __metadata("design:type", Date),
          __metadata("design:paramtypes", [Date])
      ], DxGanttComponent.prototype, "endDateRange", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "filterRow", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "firstDayOfWeek", null);
      __decorate([
          Input(),
          __metadata("design:type", Boolean),
          __metadata("design:paramtypes", [Boolean])
      ], DxGanttComponent.prototype, "focusStateEnabled", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "headerFilter", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "height", null);
      __decorate([
          Input(),
          __metadata("design:type", String),
          __metadata("design:paramtypes", [String])
      ], DxGanttComponent.prototype, "hint", null);
      __decorate([
          Input(),
          __metadata("design:type", Boolean),
          __metadata("design:paramtypes", [Boolean])
      ], DxGanttComponent.prototype, "hoverStateEnabled", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "resourceAssignments", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "resources", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "rootValue", null);
      __decorate([
          Input(),
          __metadata("design:type", String),
          __metadata("design:paramtypes", [String])
      ], DxGanttComponent.prototype, "scaleType", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "scaleTypeRange", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "selectedRowKey", null);
      __decorate([
          Input(),
          __metadata("design:type", Boolean),
          __metadata("design:paramtypes", [Boolean])
      ], DxGanttComponent.prototype, "showDependencies", null);
      __decorate([
          Input(),
          __metadata("design:type", Boolean),
          __metadata("design:paramtypes", [Boolean])
      ], DxGanttComponent.prototype, "showResources", null);
      __decorate([
          Input(),
          __metadata("design:type", Boolean),
          __metadata("design:paramtypes", [Boolean])
      ], DxGanttComponent.prototype, "showRowLines", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "sorting", null);
      __decorate([
          Input(),
          __metadata("design:type", Date),
          __metadata("design:paramtypes", [Date])
      ], DxGanttComponent.prototype, "startDateRange", null);
      __decorate([
          Input(),
          __metadata("design:type", Array),
          __metadata("design:paramtypes", [Array])
      ], DxGanttComponent.prototype, "stripLines", null);
      __decorate([
          Input(),
          __metadata("design:type", Number),
          __metadata("design:paramtypes", [Number])
      ], DxGanttComponent.prototype, "tabIndex", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "taskContentTemplate", null);
      __decorate([
          Input(),
          __metadata("design:type", Number),
          __metadata("design:paramtypes", [Number])
      ], DxGanttComponent.prototype, "taskListWidth", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "taskProgressTooltipContentTemplate", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "tasks", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "taskTimeTooltipContentTemplate", null);
      __decorate([
          Input(),
          __metadata("design:type", String),
          __metadata("design:paramtypes", [String])
      ], DxGanttComponent.prototype, "taskTitlePosition", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "taskTooltipContentTemplate", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "toolbar", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "validation", null);
      __decorate([
          Input(),
          __metadata("design:type", Boolean),
          __metadata("design:paramtypes", [Boolean])
      ], DxGanttComponent.prototype, "visible", null);
      __decorate([
          Input(),
          __metadata("design:type", Object),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "width", null);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onContentReady", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onContextMenuPreparing", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onCustomCommand", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onDependencyDeleted", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onDependencyDeleting", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onDependencyInserted", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onDependencyInserting", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onDisposing", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onInitialized", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onOptionChanged", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onResourceAssigned", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onResourceAssigning", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onResourceDeleted", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onResourceDeleting", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onResourceInserted", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onResourceInserting", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onResourceManagerDialogShowing", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onResourceUnassigned", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onResourceUnassigning", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onSelectionChanged", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onTaskClick", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onTaskDblClick", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onTaskDeleted", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onTaskDeleting", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onTaskEditDialogShowing", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onTaskInserted", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onTaskInserting", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onTaskMoving", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onTaskUpdated", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "onTaskUpdating", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "accessKeyChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "activeStateEnabledChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "allowSelectionChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "columnsChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "contextMenuChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "dependenciesChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "disabledChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "editingChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "elementAttrChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "endDateRangeChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "filterRowChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "firstDayOfWeekChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "focusStateEnabledChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "headerFilterChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "heightChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "hintChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "hoverStateEnabledChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "resourceAssignmentsChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "resourcesChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "rootValueChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "scaleTypeChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "scaleTypeRangeChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "selectedRowKeyChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "showDependenciesChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "showResourcesChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "showRowLinesChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "sortingChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "startDateRangeChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "stripLinesChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "tabIndexChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "taskContentTemplateChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "taskListWidthChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "taskProgressTooltipContentTemplateChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "tasksChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "taskTimeTooltipContentTemplateChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "taskTitlePositionChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "taskTooltipContentTemplateChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "toolbarChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "validationChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "visibleChange", void 0);
      __decorate([
          Output(),
          __metadata("design:type", EventEmitter)
      ], DxGanttComponent.prototype, "widthChange", void 0);
      __decorate([
          ContentChildren(DxiColumnComponent),
          __metadata("design:type", QueryList),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "columnsChildren", null);
      __decorate([
          ContentChildren(DxiStripLineComponent),
          __metadata("design:type", QueryList),
          __metadata("design:paramtypes", [Object])
      ], DxGanttComponent.prototype, "stripLinesChildren", null);
      DxGanttComponent = __decorate([
          Component({
              selector: 'dx-gantt',
              template: '',
              providers: [
                  DxTemplateHost,
                  WatcherHelper,
                  NestedOptionHost,
                  IterableDifferHelper
              ]
          }),
          __param(7, Inject(PLATFORM_ID)),
          __metadata("design:paramtypes", [ElementRef, NgZone, DxTemplateHost,
              WatcherHelper,
              IterableDifferHelper,
              NestedOptionHost,
              TransferState, Object])
      ], DxGanttComponent);
      return DxGanttComponent;
  }(DxComponent));
  var DxGanttModule = /** @class */ (function () {
      function DxGanttModule() {
      }
      DxGanttModule = __decorate([
          NgModule({
              imports: [
                  DxiColumnModule,
                  DxiButtonModule,
                  DxoHeaderFilterModule,
                  DxoLookupModule,
                  DxoFormatModule,
                  DxoFormItemModule,
                  DxoLabelModule,
                  DxiValidationRuleModule,
                  DxoContextMenuModule,
                  DxiItemModule,
                  DxoDependenciesModule,
                  DxoEditingModule,
                  DxoFilterRowModule,
                  DxoOperationDescriptionsModule,
                  DxoTextsModule,
                  DxoResourceAssignmentsModule,
                  DxoResourcesModule,
                  DxoScaleTypeRangeModule,
                  DxoSortingModule,
                  DxiStripLineModule,
                  DxoTasksModule,
                  DxoToolbarModule,
                  DxoValidationModule,
                  DxIntegrationModule,
                  DxTemplateModule,
                  BrowserTransferStateModule
              ],
              declarations: [
                  DxGanttComponent
              ],
              exports: [
                  DxGanttComponent,
                  DxiColumnModule,
                  DxiButtonModule,
                  DxoHeaderFilterModule,
                  DxoLookupModule,
                  DxoFormatModule,
                  DxoFormItemModule,
                  DxoLabelModule,
                  DxiValidationRuleModule,
                  DxoContextMenuModule,
                  DxiItemModule,
                  DxoDependenciesModule,
                  DxoEditingModule,
                  DxoFilterRowModule,
                  DxoOperationDescriptionsModule,
                  DxoTextsModule,
                  DxoResourceAssignmentsModule,
                  DxoResourcesModule,
                  DxoScaleTypeRangeModule,
                  DxoSortingModule,
                  DxiStripLineModule,
                  DxoTasksModule,
                  DxoToolbarModule,
                  DxoValidationModule,
                  DxTemplateModule
              ]
          })
      ], DxGanttModule);
      return DxGanttModule;
  }());
  
  /**
   * Generated bundle index. Do not edit.
   */
  
  export { DxGanttComponent, DxGanttModule };
  //# sourceMappingURL=devextreme-angular-ui-gantt.js.map
  