@progress/kendo-angular-gantt 0.2.1-dev.202112091741 → 0.3.0-dev.202201131518
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdn/js/kendo-angular-gantt.js +2 -2
- package/dist/cdn/main.js +4 -4
- package/dist/es/common/touch-enabled.js +9 -0
- package/dist/es/dependencies/utils.js +40 -5
- package/dist/es/dragging/dependency-drag-create.directive.js +347 -0
- package/dist/es/dragging/drag-validation-tooltip.component.js +27 -0
- package/dist/es/editing/add-task.component.js +94 -0
- package/dist/es/editing/dependencies-table.component.js +131 -0
- package/dist/es/editing/edit-dialog.component.js +37 -6
- package/dist/es/editing/edit.service.js +89 -7
- package/dist/es/editing/task-fields.component.js +43 -0
- package/dist/es/editing/{util.js → utils.js} +0 -0
- package/dist/es/expanded-state/expandable.directive.js +4 -6
- package/dist/es/gantt.component.js +230 -45
- package/dist/es/gantt.module.js +36 -10
- package/dist/es/index.js +8 -1
- package/dist/es/localization/gantt-localization.service.js +26 -0
- package/dist/es/localization/messages.js +45 -1
- package/dist/es/main.js +1 -0
- package/dist/es/models/dependency-type.enum.js +16 -0
- package/dist/es/models/events/{add-event.interface.js → dependency-add-event.interface.js} +0 -0
- package/dist/es/models/events/{edit-event.interface.js → task-add-event.interface.js} +0 -0
- package/dist/es/models/models.js +1 -0
- package/dist/es/models/{events/remove-event.interface.js → toolbar-settings.js} +0 -0
- package/dist/es/models/{toolbar-position.js → view-item.interface.js} +0 -0
- package/dist/es/package-metadata.js +1 -1
- package/dist/es/rendering/gantt-milestone-task.component.js +7 -4
- package/dist/es/rendering/gantt-summary-task.component.js +7 -4
- package/dist/es/rendering/gantt-task-base.js +30 -19
- package/dist/es/rendering/gantt-task.component.js +8 -6
- package/dist/es/rendering/gantt-tasks-table-body.component.js +5 -1
- package/dist/es/scrolling/drag-scroll-settings.js +20 -0
- package/dist/es/scrolling/timeline-scroll.directive.js +89 -0
- package/dist/es/scrolling/timeline-scroll.service.js +39 -0
- package/dist/es/scrolling/utils.js +80 -0
- package/dist/es/timeline/gantt-timeline.component.js +45 -3
- package/dist/es/toolbar/toolbar.component.js +9 -1
- package/dist/es/utils.js +143 -12
- package/dist/es2015/common/touch-enabled.d.ts +9 -0
- package/dist/es2015/common/touch-enabled.js +9 -0
- package/dist/es2015/dependencies/utils.d.ts +15 -0
- package/dist/es2015/dependencies/utils.js +40 -5
- package/dist/es2015/dragging/dependency-drag-create.directive.d.ts +72 -0
- package/dist/es2015/dragging/dependency-drag-create.directive.js +324 -0
- package/dist/es2015/dragging/drag-validation-tooltip.component.d.ts +29 -0
- package/dist/es2015/dragging/drag-validation-tooltip.component.js +76 -0
- package/dist/es2015/editing/add-task.component.d.ts +45 -0
- package/dist/es2015/editing/add-task.component.js +102 -0
- package/dist/es2015/editing/dependencies-table.component.d.ts +39 -0
- package/dist/es2015/editing/dependencies-table.component.js +160 -0
- package/dist/es2015/editing/edit-dialog.component.d.ts +10 -3
- package/dist/es2015/editing/edit-dialog.component.js +55 -33
- package/dist/es2015/editing/edit.service.d.ts +24 -3
- package/dist/es2015/editing/edit.service.js +78 -10
- package/dist/es2015/editing/task-fields.component.d.ts +22 -0
- package/dist/es2015/editing/task-fields.component.js +67 -0
- package/dist/es2015/editing/{util.d.ts → utils.d.ts} +0 -0
- package/dist/es2015/editing/{util.js → utils.js} +0 -0
- package/dist/es2015/expanded-state/expandable.directive.d.ts +1 -2
- package/dist/es2015/expanded-state/expandable.directive.js +2 -7
- package/dist/es2015/gantt.component.d.ts +62 -18
- package/dist/es2015/gantt.component.js +290 -43
- package/dist/es2015/gantt.module.js +36 -10
- package/dist/es2015/index.d.ts +8 -1
- package/dist/es2015/index.js +8 -1
- package/dist/es2015/index.metadata.json +1 -1
- package/dist/es2015/localization/{treelist-messages.directive.d.ts → gantt-localization.service.d.ts} +4 -3
- package/dist/es2015/localization/gantt-localization.service.js +25 -0
- package/dist/es2015/localization/messages.d.ts +46 -2
- package/dist/es2015/localization/messages.js +45 -1
- package/dist/es2015/main.d.ts +1 -0
- package/dist/es2015/main.js +1 -0
- package/dist/es2015/models/dependency-type.enum.d.ts +1 -1
- package/dist/es2015/models/dependency-type.enum.js +16 -0
- package/dist/es2015/models/events/dependency-add-event.interface.d.ts +26 -0
- package/dist/es2015/models/events/{add-event.interface.js → dependency-add-event.interface.js} +0 -0
- package/dist/es2015/models/events/task-add-event.interface.d.ts +31 -0
- package/dist/es2015/models/events/{edit-event.interface.js → task-add-event.interface.js} +0 -0
- package/dist/es2015/models/events/task-edit-event.interface.d.ts +17 -4
- package/dist/es2015/models/models.d.ts +4 -3
- package/dist/es2015/models/models.js +1 -0
- package/dist/es2015/models/toolbar-settings.d.ts +29 -0
- package/dist/es2015/models/{events/remove-event.interface.js → toolbar-settings.js} +0 -0
- package/dist/es2015/models/view-item.interface.d.ts +35 -0
- package/dist/es2015/models/{toolbar-position.js → view-item.interface.js} +0 -0
- package/dist/es2015/package-metadata.js +1 -1
- package/dist/es2015/rendering/gantt-milestone-task.component.d.ts +2 -1
- package/dist/es2015/rendering/gantt-milestone-task.component.js +18 -5
- package/dist/es2015/rendering/gantt-summary-task.component.d.ts +2 -1
- package/dist/es2015/rendering/gantt-summary-task.component.js +18 -5
- package/dist/es2015/rendering/gantt-task-base.d.ts +11 -5
- package/dist/es2015/rendering/gantt-task-base.js +30 -19
- package/dist/es2015/rendering/gantt-task.component.d.ts +2 -1
- package/dist/es2015/rendering/gantt-task.component.js +19 -7
- package/dist/es2015/rendering/gantt-tasks-table-body.component.d.ts +1 -0
- package/dist/es2015/rendering/gantt-tasks-table-body.component.js +10 -3
- package/dist/es2015/scrolling/drag-scroll-settings.d.ts +47 -0
- package/dist/es2015/scrolling/drag-scroll-settings.js +20 -0
- package/dist/es2015/scrolling/timeline-scroll.directive.d.ts +24 -0
- package/dist/es2015/scrolling/timeline-scroll.directive.js +78 -0
- package/dist/es2015/scrolling/timeline-scroll.service.d.ts +20 -0
- package/dist/es2015/scrolling/timeline-scroll.service.js +44 -0
- package/dist/es2015/scrolling/utils.d.ts +29 -0
- package/dist/es2015/scrolling/utils.js +80 -0
- package/dist/es2015/timeline/gantt-timeline.component.d.ts +25 -2
- package/dist/es2015/timeline/gantt-timeline.component.js +56 -3
- package/dist/es2015/toolbar/toolbar-template.directive.d.ts +1 -1
- package/dist/es2015/toolbar/toolbar.component.d.ts +2 -0
- package/dist/es2015/toolbar/toolbar.component.js +10 -0
- package/dist/es2015/utils.d.ts +70 -8
- package/dist/es2015/utils.js +143 -12
- package/dist/fesm2015/index.js +1981 -424
- package/dist/fesm5/index.js +1784 -391
- package/dist/npm/common/touch-enabled.js +11 -0
- package/dist/npm/dependencies/utils.js +40 -5
- package/dist/npm/dragging/dependency-drag-create.directive.js +349 -0
- package/dist/npm/dragging/drag-validation-tooltip.component.js +29 -0
- package/dist/npm/editing/add-task.component.js +96 -0
- package/dist/npm/editing/dependencies-table.component.js +133 -0
- package/dist/npm/editing/edit-dialog.component.js +36 -5
- package/dist/npm/editing/edit.service.js +88 -6
- package/dist/npm/editing/task-fields.component.js +45 -0
- package/dist/npm/editing/{util.js → utils.js} +0 -0
- package/dist/npm/expanded-state/expandable.directive.js +3 -5
- package/dist/npm/gantt.component.js +231 -46
- package/dist/npm/gantt.module.js +34 -8
- package/dist/npm/index.js +16 -2
- package/dist/npm/localization/gantt-localization.service.js +28 -0
- package/dist/npm/localization/messages.js +45 -1
- package/dist/npm/main.js +2 -0
- package/dist/npm/models/dependency-type.enum.js +16 -0
- package/dist/npm/models/events/{add-event.interface.js → dependency-add-event.interface.js} +0 -0
- package/dist/npm/models/events/{edit-event.interface.js → task-add-event.interface.js} +0 -0
- package/dist/npm/models/models.js +2 -0
- package/dist/npm/models/{events/remove-event.interface.js → toolbar-settings.js} +0 -0
- package/dist/npm/models/{toolbar-position.js → view-item.interface.js} +0 -0
- package/dist/npm/package-metadata.js +1 -1
- package/dist/npm/rendering/gantt-milestone-task.component.js +6 -3
- package/dist/npm/rendering/gantt-summary-task.component.js +6 -3
- package/dist/npm/rendering/gantt-task-base.js +30 -19
- package/dist/npm/rendering/gantt-task.component.js +7 -5
- package/dist/npm/rendering/gantt-tasks-table-body.component.js +5 -1
- package/dist/npm/scrolling/drag-scroll-settings.js +22 -0
- package/dist/npm/scrolling/timeline-scroll.directive.js +91 -0
- package/dist/npm/scrolling/timeline-scroll.service.js +41 -0
- package/dist/npm/scrolling/utils.js +83 -0
- package/dist/npm/timeline/gantt-timeline.component.js +44 -2
- package/dist/npm/toolbar/toolbar.component.js +9 -1
- package/dist/npm/utils.js +143 -12
- package/dist/systemjs/kendo-angular-gantt.js +1 -1
- package/package.json +9 -6
- package/dist/es/localization/treelist-messages.directive.js +0 -31
- package/dist/es2015/localization/treelist-messages.directive.js +0 -29
- package/dist/es2015/models/events/add-event.interface.d.ts +0 -16
- package/dist/es2015/models/events/edit-event.interface.d.ts +0 -19
- package/dist/es2015/models/events/remove-event.interface.d.ts +0 -16
- package/dist/es2015/models/toolbar-position.d.ts +0 -9
- package/dist/npm/localization/treelist-messages.directive.js +0 -33
|
@@ -12,6 +12,8 @@ import { packageMetadata } from './package-metadata';
|
|
|
12
12
|
import { anyChanged, hasObservers } from '@progress/kendo-angular-common';
|
|
13
13
|
import { GanttColumnBase } from './columns/columns';
|
|
14
14
|
import { fetchChildren, hasChildren, isSelected, rowClassCallback, taskClassCallback } from './common/default-callbacks';
|
|
15
|
+
import { DependencyType } from './models/models';
|
|
16
|
+
import { LocalizationService } from '@progress/kendo-angular-l10n';
|
|
15
17
|
import { TimelineViewService } from './timeline/timeline-view.service';
|
|
16
18
|
import { TimelineDayViewService } from './timeline/timeline-day-view.service';
|
|
17
19
|
import { TimelineWeekViewService } from './timeline/timeline-week-view.service';
|
|
@@ -21,17 +23,25 @@ import { DependencyDomService } from './dependencies/dependency-dom.service';
|
|
|
21
23
|
import { MappingService } from './common/mapping.service';
|
|
22
24
|
import { OptionChangesService } from './common/option-changes.service';
|
|
23
25
|
import { EditService } from './editing/edit.service';
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
+
import { TimelineScrollService } from './scrolling/timeline-scroll.service';
|
|
27
|
+
import { GanttLocalizationService } from './localization/gantt-localization.service';
|
|
28
|
+
import { areParentChild, getClosestTaskIndex, isClearButton, isColumnGroup, isPresent, isTask, normalizeGanttData, scrollbarWidth } from './utils';
|
|
26
29
|
import { DEFAULT_TIMELINE_PANE_SETTINGS, DEFAULT_TREELIST_PANE_SETTINGS } from './models/splitter-pane-options.interface';
|
|
27
30
|
import { GanttTaskTemplateDirective } from './template-directives/task-template.directive';
|
|
28
31
|
import { GanttSummaryTaskTemplateDirective } from './template-directives/summary-task-template.directive';
|
|
29
32
|
import { GanttTaskContentTemplateDirective } from './template-directives/task-content-template.directive';
|
|
30
33
|
import { ToolbarTemplateDirective } from './toolbar/toolbar-template.directive';
|
|
34
|
+
import { GanttTimelineComponent } from './timeline/gantt-timeline.component';
|
|
31
35
|
import { ViewBase } from './timeline/view-base';
|
|
32
|
-
import { getEditItem } from './editing/
|
|
36
|
+
import { getEditItem } from './editing/utils';
|
|
33
37
|
var TREELIST_GROUP_COLUMNS_CLASS = 'k-gantt-treelist-nested-columns';
|
|
34
38
|
var DEFAULT_VIEW = 'week';
|
|
39
|
+
var DEFAULT_DRAG_SCROLL_SETTINGS = {
|
|
40
|
+
enabled: true,
|
|
41
|
+
step: 3,
|
|
42
|
+
interval: 1,
|
|
43
|
+
threshold: 10
|
|
44
|
+
};
|
|
35
45
|
/**
|
|
36
46
|
* Represents the Kendo UI Gantt component for Angular.
|
|
37
47
|
*
|
|
@@ -118,11 +128,22 @@ var GanttComponent = /** @class */ (function () {
|
|
|
118
128
|
this.zone = zone;
|
|
119
129
|
this.hostClasses = true;
|
|
120
130
|
/**
|
|
121
|
-
*
|
|
131
|
+
* Specifies a callback that determines if the given task is selected ([see example]({% slug selection_gantt %}#toc-custom-selection)).
|
|
122
132
|
*
|
|
123
133
|
* > The [`selectable`]({% slug api_gantt_ganttcomponent %}#toc-selectable) prop has to be set to `true` in order for this callback to be executed.
|
|
124
134
|
*/
|
|
125
135
|
this.isSelected = isSelected;
|
|
136
|
+
/**
|
|
137
|
+
* Specifies a callback that determines if a new dependency is valid.
|
|
138
|
+
* Used when evaluating if an attempt to create a new dependency will result in a valid link between the two tasks
|
|
139
|
+
* [see example]({% slug editing_drag_create_dependencies_gantt %}#toc-validation).
|
|
140
|
+
*
|
|
141
|
+
* By defalut, dependencies are deemed invalid when:
|
|
142
|
+
* - The two tasks are in a parent-child relationship.
|
|
143
|
+
* - The two tasks are already dependent on one another. Only one dependency is allowed per pair.
|
|
144
|
+
* - The start or end times of the two tasks are incompatible with the attempted dependency type.
|
|
145
|
+
*/
|
|
146
|
+
this.validateNewDependency = this.defaultValidateNewDependencyCallback.bind(this);
|
|
126
147
|
/**
|
|
127
148
|
* Fires when the Gantt selection is changed through user interaction.
|
|
128
149
|
*
|
|
@@ -138,25 +159,6 @@ var GanttComponent = /** @class */ (function () {
|
|
|
138
159
|
* > When applied, the [`SelectableDirective`]({% slug api_gantt_selectabledirective %}) sets `selectable` to `true` internally.
|
|
139
160
|
*/
|
|
140
161
|
this.selectable = false;
|
|
141
|
-
/**
|
|
142
|
-
* The position of the toolbar.
|
|
143
|
-
*
|
|
144
|
-
* The possible values are:
|
|
145
|
-
* - `top`—Positions the toolbar above the Gantt panes.
|
|
146
|
-
* - `bottom`—Positions the toolbar below the Gantt panes.
|
|
147
|
-
* - `both`—Displays two toolbar instances. Positions the first one above,
|
|
148
|
-
* and the second one - below the Gantt panes.
|
|
149
|
-
* - `none`—No toolbar is rendered.
|
|
150
|
-
*/
|
|
151
|
-
this.toolbarPosition = 'top';
|
|
152
|
-
/**
|
|
153
|
-
* Gets or sets the callback function that retrieves the child items for a particular item.
|
|
154
|
-
*/
|
|
155
|
-
this.fetchChildren = fetchChildren;
|
|
156
|
-
/**
|
|
157
|
-
* Gets or sets the callback function that indicates if a particular item has child items.
|
|
158
|
-
*/
|
|
159
|
-
this.hasChildren = hasChildren;
|
|
160
162
|
/**
|
|
161
163
|
* Defines the dependencies that will be drawn between the rendered tasks.
|
|
162
164
|
*
|
|
@@ -258,6 +260,15 @@ var GanttComponent = /** @class */ (function () {
|
|
|
258
260
|
* Fires when the user saves an edited task.
|
|
259
261
|
*/
|
|
260
262
|
this.save = new EventEmitter();
|
|
263
|
+
/**
|
|
264
|
+
* Fires when the user adds a task.
|
|
265
|
+
*/
|
|
266
|
+
this.taskAdd = new EventEmitter();
|
|
267
|
+
/**
|
|
268
|
+
* Fires when the user adds a dependency via dragging
|
|
269
|
+
* [see example]({% slug editing_drag_create_dependencies_gantt %}#toc-basic-concepts).
|
|
270
|
+
*/
|
|
271
|
+
this.dependencyAdd = new EventEmitter();
|
|
261
272
|
/**
|
|
262
273
|
* Fires when the sorting of the Gantt is changed.
|
|
263
274
|
* You have to handle the event yourself and sort the data.
|
|
@@ -314,6 +325,15 @@ var GanttComponent = /** @class */ (function () {
|
|
|
314
325
|
* Fires when a task is clicked.
|
|
315
326
|
*/
|
|
316
327
|
this.taskClick = new EventEmitter();
|
|
328
|
+
/**
|
|
329
|
+
* @hidden
|
|
330
|
+
*
|
|
331
|
+
* Specifies whether the dependency drag clues will be rendered.
|
|
332
|
+
* Set internally by the dependency-drag-create directive.
|
|
333
|
+
*
|
|
334
|
+
* @default false
|
|
335
|
+
*/
|
|
336
|
+
this.renderDependencyDragClues = false;
|
|
317
337
|
/**
|
|
318
338
|
* @hidden
|
|
319
339
|
*
|
|
@@ -330,11 +350,19 @@ var GanttComponent = /** @class */ (function () {
|
|
|
330
350
|
this.showConfirmationDialog = false;
|
|
331
351
|
this._columns = new QueryList();
|
|
332
352
|
this._data = [];
|
|
353
|
+
this._dragScrollSettings = tslib_1.__assign({}, DEFAULT_DRAG_SCROLL_SETTINGS);
|
|
333
354
|
this._timelinePaneOptions = tslib_1.__assign({}, DEFAULT_TIMELINE_PANE_SETTINGS);
|
|
334
355
|
this._treeListPaneOptions = tslib_1.__assign({}, DEFAULT_TREELIST_PANE_SETTINGS);
|
|
335
356
|
this._rowClass = rowClassCallback;
|
|
336
357
|
this._taskClass = taskClassCallback;
|
|
337
358
|
this._activeView = DEFAULT_VIEW;
|
|
359
|
+
this._toolbarSettings = {
|
|
360
|
+
position: 'top',
|
|
361
|
+
addTaskTool: 'none',
|
|
362
|
+
viewSelectorTool: 'top'
|
|
363
|
+
};
|
|
364
|
+
this._fetchChildren = fetchChildren;
|
|
365
|
+
this._hasChildren = hasChildren;
|
|
338
366
|
this.rtl = false;
|
|
339
367
|
this.optionChangesSubscriptions = new Subscription();
|
|
340
368
|
this.editServiceSubscription = new Subscription();
|
|
@@ -345,16 +373,26 @@ var GanttComponent = /** @class */ (function () {
|
|
|
345
373
|
this.optionChangesSubscriptions.add(this.optionChangesService.columnChanges.subscribe(function () {
|
|
346
374
|
_this.treeList.columns.notifyOnChanges();
|
|
347
375
|
}));
|
|
376
|
+
this.editService.getSelectedItem = this.getFirstSelectedItem.bind(this);
|
|
348
377
|
this.editServiceSubscription.add(this.editService.showEditingDialog.subscribe(function (show) { return _this.showEditingDialog = show; }));
|
|
349
378
|
this.editServiceSubscription.add(this.editService.showConfirmationDialog.subscribe(function () { return _this.taskDelete.emit(); }));
|
|
350
379
|
this.editServiceSubscription.add(this.editService.editEvent.subscribe(function (args) {
|
|
351
380
|
_this[args.editResultType].emit({
|
|
352
|
-
|
|
381
|
+
taskFormGroup: args.taskFormGroup,
|
|
353
382
|
item: getEditItem(args.dataItem, _this.treeList.view.data, _this.mapper),
|
|
383
|
+
dependencies: args.dependencies,
|
|
354
384
|
sender: _this
|
|
355
385
|
});
|
|
356
386
|
_this.showConfirmationDialog = _this.showEditingDialog = false;
|
|
357
|
-
_this.editService.dataItem = _this.editService.
|
|
387
|
+
_this.editService.dataItem = _this.editService.taskFormGroup = null;
|
|
388
|
+
_this.updateView();
|
|
389
|
+
}));
|
|
390
|
+
this.editServiceSubscription.add(this.editService.addEvent.subscribe(function (args) {
|
|
391
|
+
var selectedItem = _this.getFirstSelectedItem();
|
|
392
|
+
_this.taskAdd.emit({
|
|
393
|
+
actionType: args.actionType,
|
|
394
|
+
selectedItem: selectedItem ? getEditItem(selectedItem, _this.treeList.view.data, _this.mapper) : null
|
|
395
|
+
});
|
|
358
396
|
_this.updateView();
|
|
359
397
|
}));
|
|
360
398
|
this.localizationSubscription = this.localizationService.changes.subscribe(function (_a) {
|
|
@@ -461,6 +499,61 @@ var GanttComponent = /** @class */ (function () {
|
|
|
461
499
|
enumerable: true,
|
|
462
500
|
configurable: true
|
|
463
501
|
});
|
|
502
|
+
Object.defineProperty(GanttComponent.prototype, "toolbarSettings", {
|
|
503
|
+
get: function () {
|
|
504
|
+
return this._toolbarSettings;
|
|
505
|
+
},
|
|
506
|
+
/**
|
|
507
|
+
* The toolbar configuration. Defines the position and content of the toolbar(s).
|
|
508
|
+
* The available properties are `position`, `addTaskTool`, and `viewSelectorTool`.
|
|
509
|
+
* All are optional and default to `top`.
|
|
510
|
+
*
|
|
511
|
+
* The possible values for each option are:
|
|
512
|
+
* - `top`—Positions the toolbar above the Gantt panes. Renders the respective tool in the top toolbar.
|
|
513
|
+
* - `bottom`—Positions the toolbar below the Gantt panes. Renders the respective tool in the bottom toolbar.
|
|
514
|
+
* - `both`—Displays two toolbar instances. Positions the first one above,
|
|
515
|
+
* and the second one - below the Gantt panes. Renders the respective tool in the both toolbars.
|
|
516
|
+
* - `none`—No toolbar is rendered when used for setting `position`.
|
|
517
|
+
* No add task or view selector tool is rendered when used for setting `addTaskTool` or `viewSelectorTool`.
|
|
518
|
+
*/
|
|
519
|
+
set: function (value) {
|
|
520
|
+
this._toolbarSettings = {
|
|
521
|
+
position: value.position || 'top',
|
|
522
|
+
addTaskTool: value.addTaskTool || 'none',
|
|
523
|
+
viewSelectorTool: value.viewSelectorTool || 'top'
|
|
524
|
+
};
|
|
525
|
+
},
|
|
526
|
+
enumerable: true,
|
|
527
|
+
configurable: true
|
|
528
|
+
});
|
|
529
|
+
Object.defineProperty(GanttComponent.prototype, "fetchChildren", {
|
|
530
|
+
get: function () {
|
|
531
|
+
return this._fetchChildren;
|
|
532
|
+
},
|
|
533
|
+
/**
|
|
534
|
+
* Gets or sets the callback function that retrieves the child items for a particular item.
|
|
535
|
+
*/
|
|
536
|
+
set: function (fn) {
|
|
537
|
+
this._fetchChildren = fn;
|
|
538
|
+
this.editService.fetchChildren = fn;
|
|
539
|
+
},
|
|
540
|
+
enumerable: true,
|
|
541
|
+
configurable: true
|
|
542
|
+
});
|
|
543
|
+
Object.defineProperty(GanttComponent.prototype, "hasChildren", {
|
|
544
|
+
get: function () {
|
|
545
|
+
return this._hasChildren;
|
|
546
|
+
},
|
|
547
|
+
/**
|
|
548
|
+
* Gets or sets the callback function that indicates if a particular item has child items.
|
|
549
|
+
*/
|
|
550
|
+
set: function (fn) {
|
|
551
|
+
this._hasChildren = fn;
|
|
552
|
+
this.editService.hasChildren = fn;
|
|
553
|
+
},
|
|
554
|
+
enumerable: true,
|
|
555
|
+
configurable: true
|
|
556
|
+
});
|
|
464
557
|
Object.defineProperty(GanttComponent.prototype, "timelinePaneOptions", {
|
|
465
558
|
get: function () {
|
|
466
559
|
return tslib_1.__assign({}, this._timelinePaneOptions, { size: this.treeListPaneOptions.collapsed ? '100%' : this._timelinePaneOptions.size });
|
|
@@ -536,6 +629,21 @@ var GanttComponent = /** @class */ (function () {
|
|
|
536
629
|
enumerable: true,
|
|
537
630
|
configurable: true
|
|
538
631
|
});
|
|
632
|
+
Object.defineProperty(GanttComponent.prototype, "dragScrollSettings", {
|
|
633
|
+
get: function () {
|
|
634
|
+
return this._dragScrollSettings;
|
|
635
|
+
},
|
|
636
|
+
/**
|
|
637
|
+
* Specifies the settings for auto-scrolling during dragging
|
|
638
|
+
* when the pointer moves outside of the container bounderies
|
|
639
|
+
* [see example]({% slug editing_drag_create_dependencies_gantt %}#toc-auto-scrolling).
|
|
640
|
+
*/
|
|
641
|
+
set: function (settings) {
|
|
642
|
+
this._dragScrollSettings = tslib_1.__assign({}, DEFAULT_DRAG_SCROLL_SETTINGS, settings);
|
|
643
|
+
},
|
|
644
|
+
enumerable: true,
|
|
645
|
+
configurable: true
|
|
646
|
+
});
|
|
539
647
|
Object.defineProperty(GanttComponent.prototype, "renderedTreeListItems", {
|
|
540
648
|
/**
|
|
541
649
|
* @hidden
|
|
@@ -612,16 +720,6 @@ var GanttComponent = /** @class */ (function () {
|
|
|
612
720
|
enumerable: true,
|
|
613
721
|
configurable: true
|
|
614
722
|
});
|
|
615
|
-
Object.defineProperty(GanttComponent.prototype, "editDialogFormGroup", {
|
|
616
|
-
/**
|
|
617
|
-
* @hidden
|
|
618
|
-
*/
|
|
619
|
-
get: function () {
|
|
620
|
-
return this.editService.formGroup;
|
|
621
|
-
},
|
|
622
|
-
enumerable: true,
|
|
623
|
-
configurable: true
|
|
624
|
-
});
|
|
625
723
|
GanttComponent.prototype.ngOnChanges = function (changes) {
|
|
626
724
|
if (anyChanged(['data', 'activeView', 'workWeekStart', 'workWeekEnd', 'workDayStart', 'workDayEnd'], changes)) {
|
|
627
725
|
this.loadTimelineData();
|
|
@@ -711,8 +809,14 @@ var GanttComponent = /** @class */ (function () {
|
|
|
711
809
|
* Opens the task editing dialog.
|
|
712
810
|
*/
|
|
713
811
|
GanttComponent.prototype.editTask = function (dataItem, formGroup) {
|
|
812
|
+
var _this = this;
|
|
714
813
|
if (!this.showEditingDialog) {
|
|
715
|
-
this.
|
|
814
|
+
var taskId_1 = this.mapper.extractFromTask(dataItem, 'id');
|
|
815
|
+
var dependencies = this.dependencies.filter(function (item) {
|
|
816
|
+
return _this.mapper.extractFromDependency(item, 'toId') === taskId_1
|
|
817
|
+
|| _this.mapper.extractFromDependency(item, 'fromId') === taskId_1;
|
|
818
|
+
});
|
|
819
|
+
this.editService.createEditDialog(dataItem, formGroup, dependencies);
|
|
716
820
|
}
|
|
717
821
|
};
|
|
718
822
|
/**
|
|
@@ -785,7 +889,7 @@ var GanttComponent = /** @class */ (function () {
|
|
|
785
889
|
* @hidden
|
|
786
890
|
*/
|
|
787
891
|
GanttComponent.prototype.showToolbar = function (position) {
|
|
788
|
-
return this.
|
|
892
|
+
return this.toolbarSettings.position !== 'none' && ([position, 'both'].indexOf(this.toolbarSettings.position) > -1);
|
|
789
893
|
};
|
|
790
894
|
/**
|
|
791
895
|
* @hidden
|
|
@@ -993,11 +1097,70 @@ var GanttComponent = /** @class */ (function () {
|
|
|
993
1097
|
var shouldToggleSelection = ctrlKey || metaKey;
|
|
994
1098
|
return (shouldToggleSelection && this.isSelected(dataItem)) ? 'remove' : 'select';
|
|
995
1099
|
};
|
|
1100
|
+
GanttComponent.prototype.getFirstSelectedItem = function () {
|
|
1101
|
+
var isSelectedCallback = this.isSelected || isSelected;
|
|
1102
|
+
var loadedItems = this.renderedTreeListItems || [];
|
|
1103
|
+
return loadedItems.find(isSelectedCallback);
|
|
1104
|
+
};
|
|
1105
|
+
GanttComponent.prototype.defaultValidateNewDependencyCallback = function (dependency) {
|
|
1106
|
+
var _this = this;
|
|
1107
|
+
var fromTaskId = this.mapper.extractFromDependency(dependency, 'fromId');
|
|
1108
|
+
var toTaskId = this.mapper.extractFromDependency(dependency, 'toId');
|
|
1109
|
+
var fromTask = this.treeList.view.data.find(function (task) {
|
|
1110
|
+
return _this.mapper.extractFromTask(task.data, 'id') === fromTaskId;
|
|
1111
|
+
});
|
|
1112
|
+
var toTask = this.treeList.view.data.find(function (task) {
|
|
1113
|
+
return _this.mapper.extractFromTask(task.data, 'id') === toTaskId;
|
|
1114
|
+
});
|
|
1115
|
+
// mark as invalid if the attempted dependency is lacking valid from- and to-tasks
|
|
1116
|
+
// or when the from- and to-tasks are actually the same task
|
|
1117
|
+
if (!isPresent(fromTask) || !isPresent(fromTask.data) ||
|
|
1118
|
+
!isPresent(toTask) || !isPresent(toTask.data) ||
|
|
1119
|
+
fromTask.data === toTask.data) {
|
|
1120
|
+
return false;
|
|
1121
|
+
}
|
|
1122
|
+
var tasksDependentOnOneAnother = this.dependencies.some(function (current) {
|
|
1123
|
+
var currentFromId = _this.mapper.extractFromDependency(current, 'fromId');
|
|
1124
|
+
var currentToId = _this.mapper.extractFromDependency(current, 'toId');
|
|
1125
|
+
return (fromTaskId === currentFromId && toTaskId === currentToId) ||
|
|
1126
|
+
(toTaskId === currentFromId && fromTaskId === currentToId);
|
|
1127
|
+
});
|
|
1128
|
+
// mark as invalid if the attempted dependency is trying to connect already dependent tasks
|
|
1129
|
+
// mark as invalid if the two tasks are in parent-child relationship
|
|
1130
|
+
if (tasksDependentOnOneAnother || areParentChild(fromTask, toTask)) {
|
|
1131
|
+
return false;
|
|
1132
|
+
}
|
|
1133
|
+
var fromTaskStart = this.mapper.extractFromTask(fromTask.data, 'start');
|
|
1134
|
+
var fromTaskEnd = this.mapper.extractFromTask(fromTask.data, 'end');
|
|
1135
|
+
var toTaskStart = this.mapper.extractFromTask(toTask.data, 'start');
|
|
1136
|
+
var toTaskEnd = this.mapper.extractFromTask(toTask.data, 'end');
|
|
1137
|
+
// if the two tasks are available to be connected via a dependency,
|
|
1138
|
+
// check if their start and end time allow for the attempted dependency type
|
|
1139
|
+
switch (this.mapper.extractFromDependency(dependency, 'type')) {
|
|
1140
|
+
// finish to finish (FF) — the from-task ends before the to-task can end
|
|
1141
|
+
case DependencyType.FF:
|
|
1142
|
+
return fromTaskEnd <= toTaskEnd;
|
|
1143
|
+
// finish to start (FS) — the from-task ends before the to-task can begin
|
|
1144
|
+
case DependencyType.FS:
|
|
1145
|
+
return fromTaskEnd <= toTaskStart;
|
|
1146
|
+
// start to finish (SF) — the from-task begins before the to-task can end
|
|
1147
|
+
case DependencyType.SF:
|
|
1148
|
+
return fromTaskStart <= toTaskEnd;
|
|
1149
|
+
// start to start (SS) — the from-task begins before the to-task can begin
|
|
1150
|
+
case DependencyType.SS:
|
|
1151
|
+
return fromTaskStart <= toTaskStart;
|
|
1152
|
+
default: return false;
|
|
1153
|
+
}
|
|
1154
|
+
};
|
|
996
1155
|
var GanttComponent_1;
|
|
997
1156
|
tslib_1.__decorate([
|
|
998
1157
|
ViewChild(TreeListComponent, { static: true }),
|
|
999
1158
|
tslib_1.__metadata("design:type", TreeListComponent)
|
|
1000
1159
|
], GanttComponent.prototype, "treeList", void 0);
|
|
1160
|
+
tslib_1.__decorate([
|
|
1161
|
+
ViewChild(GanttTimelineComponent, { static: false }),
|
|
1162
|
+
tslib_1.__metadata("design:type", GanttTimelineComponent)
|
|
1163
|
+
], GanttComponent.prototype, "timeline", void 0);
|
|
1001
1164
|
tslib_1.__decorate([
|
|
1002
1165
|
ContentChild(GanttTaskContentTemplateDirective, { static: true }),
|
|
1003
1166
|
tslib_1.__metadata("design:type", GanttTaskContentTemplateDirective)
|
|
@@ -1056,6 +1219,10 @@ var GanttComponent = /** @class */ (function () {
|
|
|
1056
1219
|
Input(),
|
|
1057
1220
|
tslib_1.__metadata("design:type", Function)
|
|
1058
1221
|
], GanttComponent.prototype, "isSelected", void 0);
|
|
1222
|
+
tslib_1.__decorate([
|
|
1223
|
+
Input(),
|
|
1224
|
+
tslib_1.__metadata("design:type", Function)
|
|
1225
|
+
], GanttComponent.prototype, "validateNewDependency", void 0);
|
|
1059
1226
|
tslib_1.__decorate([
|
|
1060
1227
|
Output(),
|
|
1061
1228
|
tslib_1.__metadata("design:type", EventEmitter)
|
|
@@ -1066,16 +1233,19 @@ var GanttComponent = /** @class */ (function () {
|
|
|
1066
1233
|
], GanttComponent.prototype, "selectable", void 0);
|
|
1067
1234
|
tslib_1.__decorate([
|
|
1068
1235
|
Input(),
|
|
1069
|
-
tslib_1.__metadata("design:type",
|
|
1070
|
-
|
|
1236
|
+
tslib_1.__metadata("design:type", Object),
|
|
1237
|
+
tslib_1.__metadata("design:paramtypes", [Object])
|
|
1238
|
+
], GanttComponent.prototype, "toolbarSettings", null);
|
|
1071
1239
|
tslib_1.__decorate([
|
|
1072
1240
|
Input(),
|
|
1073
|
-
tslib_1.__metadata("design:type", Function)
|
|
1074
|
-
|
|
1241
|
+
tslib_1.__metadata("design:type", Function),
|
|
1242
|
+
tslib_1.__metadata("design:paramtypes", [Function])
|
|
1243
|
+
], GanttComponent.prototype, "fetchChildren", null);
|
|
1075
1244
|
tslib_1.__decorate([
|
|
1076
1245
|
Input(),
|
|
1077
|
-
tslib_1.__metadata("design:type", Function)
|
|
1078
|
-
|
|
1246
|
+
tslib_1.__metadata("design:type", Function),
|
|
1247
|
+
tslib_1.__metadata("design:paramtypes", [Function])
|
|
1248
|
+
], GanttComponent.prototype, "hasChildren", null);
|
|
1079
1249
|
tslib_1.__decorate([
|
|
1080
1250
|
Input(),
|
|
1081
1251
|
tslib_1.__metadata("design:type", Array)
|
|
@@ -1152,6 +1322,11 @@ var GanttComponent = /** @class */ (function () {
|
|
|
1152
1322
|
Input(),
|
|
1153
1323
|
tslib_1.__metadata("design:type", Boolean)
|
|
1154
1324
|
], GanttComponent.prototype, "columnsResizable", void 0);
|
|
1325
|
+
tslib_1.__decorate([
|
|
1326
|
+
Input(),
|
|
1327
|
+
tslib_1.__metadata("design:type", Object),
|
|
1328
|
+
tslib_1.__metadata("design:paramtypes", [Object])
|
|
1329
|
+
], GanttComponent.prototype, "dragScrollSettings", null);
|
|
1155
1330
|
tslib_1.__decorate([
|
|
1156
1331
|
Output(),
|
|
1157
1332
|
tslib_1.__metadata("design:type", EventEmitter)
|
|
@@ -1188,6 +1363,14 @@ var GanttComponent = /** @class */ (function () {
|
|
|
1188
1363
|
Output(),
|
|
1189
1364
|
tslib_1.__metadata("design:type", EventEmitter)
|
|
1190
1365
|
], GanttComponent.prototype, "save", void 0);
|
|
1366
|
+
tslib_1.__decorate([
|
|
1367
|
+
Output(),
|
|
1368
|
+
tslib_1.__metadata("design:type", EventEmitter)
|
|
1369
|
+
], GanttComponent.prototype, "taskAdd", void 0);
|
|
1370
|
+
tslib_1.__decorate([
|
|
1371
|
+
Output(),
|
|
1372
|
+
tslib_1.__metadata("design:type", EventEmitter)
|
|
1373
|
+
], GanttComponent.prototype, "dependencyAdd", void 0);
|
|
1191
1374
|
tslib_1.__decorate([
|
|
1192
1375
|
Output(),
|
|
1193
1376
|
tslib_1.__metadata("design:type", EventEmitter)
|
|
@@ -1245,6 +1428,7 @@ var GanttComponent = /** @class */ (function () {
|
|
|
1245
1428
|
selector: 'kendo-gantt',
|
|
1246
1429
|
exportAs: 'kendoGantt',
|
|
1247
1430
|
providers: [
|
|
1431
|
+
GanttLocalizationService,
|
|
1248
1432
|
LocalizationService,
|
|
1249
1433
|
{
|
|
1250
1434
|
provide: DataBoundTreeComponent,
|
|
@@ -1262,9 +1446,10 @@ var GanttComponent = /** @class */ (function () {
|
|
|
1262
1446
|
DependencyDomService,
|
|
1263
1447
|
MappingService,
|
|
1264
1448
|
OptionChangesService,
|
|
1265
|
-
EditService
|
|
1449
|
+
EditService,
|
|
1450
|
+
TimelineScrollService
|
|
1266
1451
|
],
|
|
1267
|
-
template: "\n <ng-container kendoGanttLocalizedMessages\n i18n-taskDeleteLabel=\"kendo.gantt.taskDeleteLabel|The label of the task delete icon\"\n taskDeleteLabel=\"Delete\"\n\n i18n-taskEditingDialogTitle=\"kendo.gantt.taskEditingDialogTitle|The title of the task editing dialog\"\n taskEditingDialogTitle=\"Editing Task\"\n\n i18n-taskEditingDialogCloseTitle=\"kendo.gantt.taskEditingDialogCloseTitle|The title of the task editing dialog close button\"\n taskEditingDialogCloseTitle=\"Close\"\n\n i18n-confirmationDialogCloseTitle=\"kendo.gantt.confirmationDialogCloseTitle|The title of the confirmation dialog close button\"\n confirmationDialogCloseTitle=\"Close\"\n\n i18n-confirmationDialogTitle=\"kendo.gantt.confirmationDialogTitle|The title of the delete task confirmation dialog\"\n confirmationDialogTitle=\"Delete Task\"\n\n i18n-confirmationDialogContent=\"kendo.gantt.confirmationDialogContent|The content of the delete task confirmation dialog\"\n confirmationDialogContent=\"Are you sure you want to delete this task?\"\n\n i18n-deleteButtonText=\"kendo.gantt.deleteButtonText|The text of the task editing dialog 'Delete' button\"\n deleteButtonText=\"Delete\"\n\n i18n-cancelButtonText=\"kendo.gantt.cancelButtonText|The text of the task editing dialog 'Cancel' button\"\n cancelButtonText=\"Cancel\"\n\n i18n-saveButtonText=\"kendo.gantt.saveButtonText|The text of the task editing dialog 'Save' button\"\n saveButtonText=\"Save\"\n\n i18n-titleFieldInputLabel=\"kendo.gantt.titleFieldInputLabel|The label of the 'title' field input in editing mode\"\n titleFieldInputLabel=\"Title\"\n\n i18n-startFieldInputLabel=\"kendo.gantt.startFieldInputLabel|The label of the 'start' field input in editing mode\"\n startFieldInputLabel=\"Start\"\n\n i18n-endFieldInputLabel=\"kendo.gantt.endFieldInputLabel|The label of the 'end' field input in editing mode\"\n endFieldInputLabel=\"End\"\n\n i18n-completionRatioFieldInputLabel=\"kendo.gantt.completionRatioFieldInputLabel|The label of the 'completionRatio' field input in editing mode\"\n completionRatioFieldInputLabel=\"Progress\"\n\n i18n-dayViewText=\"kendo.gantt.dayViewText|The text of the day view in the ViewSelector component\"\n dayViewText=\"Day\"\n\n i18n-weekViewText=\"kendo.gantt.weekViewText|The text of the week view in the ViewSelector component\"\n weekViewText=\"Week\"\n\n i18n-monthViewText=\"kendo.gantt.monthViewText|The text of the month view in the ViewSelector component\"\n monthViewText=\"Month\"\n\n i18n-yearViewText-disabled=\"kendo.gantt.yearViewText|The text of the year view in the ViewSelector component\"\n yearViewText=\"Year\"\n\n i18n-noRecords=\"kendo.gantt.noRecords|The label visible in the TreeList when there are no records\"\n noRecords=\"No records available.\"\n\n i18n-filter=\"kendo.gantt.filter|The label of the filter cell or icon\"\n filter=\"Filter\"\n\n i18n-filterEqOperator=\"kendo.gantt.filterEqOperator|The text of the equal filter operator\"\n filterEqOperator=\"Is equal to\"\n\n i18n-filterNotEqOperator=\"kendo.gantt.filterNotEqOperator|The text of the not equal filter operator\"\n filterNotEqOperator=\"Is not equal to\"\n\n i18n-filterIsNullOperator=\"kendo.gantt.filterIsNullOperator|The text of the is null filter operator\"\n filterIsNullOperator=\"Is null\"\n\n i18n-filterIsNotNullOperator=\"kendo.gantt.filterIsNotNullOperator|The text of the is not null filter operator\"\n filterIsNotNullOperator=\"Is not null\"\n\n i18n-filterIsEmptyOperator=\"kendo.gantt.filterIsEmptyOperator|The text of the is empty filter operator\"\n filterIsEmptyOperator=\"Is empty\"\n\n i18n-filterIsNotEmptyOperator=\"kendo.gantt.filterIsNotEmptyOperator|The text of the is not empty filter operator\"\n filterIsNotEmptyOperator=\"Is not empty\"\n\n i18n-filterStartsWithOperator=\"kendo.gantt.filterStartsWithOperator|The text of the starts with filter operator\"\n filterStartsWithOperator=\"Starts with\"\n\n i18n-filterContainsOperator=\"kendo.gantt.filterContainsOperator|The text of the contains filter operator\"\n filterContainsOperator=\"Contains\"\n\n i18n-filterNotContainsOperator=\"kendo.gantt.filterNotContainsOperator|The text of the does not contain filter operator\"\n filterNotContainsOperator=\"Does not contain\"\n\n i18n-filterEndsWithOperator=\"kendo.gantt.filterEndsWithOperator|The text of the ends with filter operator\"\n filterEndsWithOperator=\"Ends with\"\n\n i18n-filterGteOperator=\"kendo.gantt.filterGteOperator|The text of the greater than or equal filter operator\"\n filterGteOperator=\"Is greater than or equal to\"\n\n i18n-filterGtOperator=\"kendo.gantt.filterGtOperator|The text of the greater than filter operator\"\n filterGtOperator=\"Is greater than\"\n\n i18n-filterLteOperator=\"kendo.gantt.filterLteOperator|The text of the less than or equal filter operator\"\n filterLteOperator=\"Is less than or equal to\"\n\n i18n-filterLtOperator=\"kendo.gantt.filterLtOperator|The text of the less than filter operator\"\n filterLtOperator=\"Is less than\"\n\n i18n-filterIsTrue=\"kendo.gantt.filterIsTrue|The text of the IsTrue boolean filter option\"\n filterIsTrue=\"Is True\"\n\n i18n-filterIsFalse=\"kendo.gantt.filterIsFalse|The text of the IsFalse boolean filter option\"\n filterIsFalse=\"Is False\"\n\n i18n-filterBooleanAll=\"kendo.gantt.filterBooleanAll|The text of the (All) boolean filter option\"\n filterBooleanAll=\"(All)\"\n\n i18n-filterAfterOrEqualOperator=\"kendo.gantt.filterAfterOrEqualOperator|The text of the after or equal date filter operator\"\n filterAfterOrEqualOperator=\"Is after or equal to\"\n\n i18n-filterAfterOperator=\"kendo.gantt.filterAfterOperator|The text of the after date filter operator\"\n filterAfterOperator=\"Is after\"\n\n i18n-filterBeforeOperator=\"kendo.gantt.filterBeforeOperator|The text of the before date filter operator\"\n filterBeforeOperator=\"Is before\"\n\n i18n-filterBeforeOrEqualOperator=\"kendo.gantt.filterBeforeOrEqualOperator|The text of the before or equal date filter operator\"\n filterBeforeOrEqualOperator=\"Is before or equal to\"\n\n i18n-filterFilterButton=\"kendo.gantt.filterFilterButton|The text of the filter button\"\n filterFilterButton=\"Filter\"\n\n i18n-filterClearButton=\"kendo.gantt.filterClearButton|The text of the clear filter button\"\n filterClearButton=\"Clear\"\n\n i18n-filterAndLogic=\"kendo.gantt.filterAndLogic|The text of the And filter logic\"\n filterAndLogic=\"And\"\n\n i18n-filterOrLogic=\"kendo.gantt.filterOrLogic|The text of the Or filter logic\"\n filterOrLogic=\"Or\"\n\n i18n-loading=\"kendo.gantt.loading|The loading text\"\n loading=\"Loading\"\n\n i18n-columnMenu=\"kendo.gantt.columnMenu|The title of the column menu icon\"\n columnMenu=\"Column Menu\"\n\n i18n-columns=\"kendo.gantt.columns|The text shown in the column menu for the columns item\"\n columns=\"Columns\"\n\n i18n-lock-disabled=\"kendo.gantt.lock|The text shown in the column menu for the lock item\"\n lock-disabled=\"Lock\"\n\n i18n-unlock-disabled=\"kendo.gantt.unlock|The text shown in the column menu for the unlock item\"\n unlock-disabled=\"Unlock\"\n\n i18n-sortable=\"kendo.gantt.sortable|The label of the sort icon\"\n sortable=\"Sortable\"\n\n i18n-sortAscending=\"kendo.gantt.sortAscending|The text shown in the column menu for the sort ascending item\"\n sortAscending=\"Sort Ascending\"\n\n i18n-sortDescending=\"kendo.gantt.sortDescending|The text shown in the column menu for the sort descending item\"\n sortDescending=\"Sort Descending\"\n\n i18n-sortedAscending=\"kendo.gantt.sortedAscending|The status announcement when a column is sorted ascending\"\n sortedAscending=\"Sorted Ascending\"\n\n i18n-sortedDescending=\"kendo.gantt.sortedDescending|The status announcement when a column is sorted descending\"\n sortedDescending=\"Sorted Descending\"\n\n i18n-sortedDefault=\"kendo.gantt.sortedDefault|The status announcement when a column is no longer sorted\"\n sortedDefault=\"Not Sorted\"\n\n i18n-columnsApply=\"kendo.gantt.columnsApply|The text shown in the column menu or column chooser for the columns apply button\"\n columnsApply=\"Apply\"\n\n i18n-columnsReset=\"kendo.gantt.columnsReset|The text shown in the column menu or column chooser for the columns reset button\"\n columnsReset=\"Reset\"></ng-container>\n <kendo-gantt-toolbar\n *ngIf=\"showToolbar('top')\"\n class=\"k-gantt-header k-toolbar k-gantt-toolbar\"\n position=\"top\"></kendo-gantt-toolbar>\n <div class=\"k-gantt-content\">\n <kendo-splitter [style.border]=\"0\">\n <kendo-splitter-pane\n class=\"k-gantt-treelist k-gantt-treelist-scrollable\"\n [collapsible]=\"treeListPaneOptions?.collapsible\"\n [collapsed]=\"treeListPaneOptions?.collapsed\"\n (collapsedChange)=\"onTreeListCollapsedChange($event)\"\n [scrollable]=\"false\">\n <kendo-treelist\n [idField]=\"taskIdField\"\n [columns]=\"columns\"\n [data]=\"data\"\n [hasChildren]=\"hasChildren\"\n [fetchChildren]=\"fetchChildren\"\n [isExpanded]=\"isExpanded\"\n [autoSize]=\"columnsAutoSize\"\n [columnMenu]=\"columnMenu\"\n [reorderable]=\"columnsReorderable\"\n [resizable]=\"columnsResizable\"\n [rowClass]=\"rowClass\"\n [isSelected]=\"isSelected\"\n [selectable]=\"selectable\"\n [sortable]=\"sortable\"\n [sort]=\"sort\"\n [filterable]=\"filterMenu\"\n [filter]=\"filter\"\n (filterChange)=\"filterChange.emit($event)\"\n (sortChange)=\"sortChange.emit($event)\"\n (dataStateChange)=\"dataStateChange.emit({\n filter: $event.filter,\n sort: $event.sort\n })\"\n (expandStateChange)=\"expandStateChange.emit($event)\"\n (expand)=\"rowExpand.emit({ dataItem: $event.dataItem })\"\n (collapse)=\"rowCollapse.emit({ dataItem: $event.dataItem })\"\n (columnReorder)=\"columnReorder.emit($event)\"\n (columnResize)=\"columnResize.emit($event)\"\n (columnVisibilityChange)=\"handleColumnVisibilityChange($event)\"\n (columnLockedChange)=\"columnLockedChange.emit($event)\"\n (selectionChange)=\"handleTreeListSelectionChange($event)\"\n (cellClick)=\"handleTreeListCellClick($event)\"\n (cellClose)=\"handleCellClose($event)\"\n [kendoEventsOutsideAngular]=\"{\n dblclick: handleTreeListDoubleClick\n }\"\n [scope]=\"this\"\n >\n <kendo-treelist-messages [kendoGanttTreeListMessages]=\"localizationService\"></kendo-treelist-messages>\n </kendo-treelist>\n </kendo-splitter-pane>\n <kendo-splitter-pane\n [collapsible]=\"timelinePaneOptions?.collapsible\"\n [resizable]=\"timelinePaneOptions?.resizable\"\n [collapsed]=\"timelinePaneOptions?.collapsed\"\n [min]=\"timelinePaneOptions?.min\"\n [max]=\"timelinePaneOptions?.max\"\n [size]=\"timelinePaneOptions?.size\"\n (collapsedChange)=\"onTimelineCollapsedChange($event)\"\n (sizeChange)=\"onTimelinePaneSizeChange($event)\"\n [scrollable]=\"false\">\n <kendo-gantt-timeline\n *ngIf=\"views && views.length\"\n [rows]=\"renderedTreeListItems\"\n [slots]=\"timelineSlots\"\n [groupSlots]=\"timelineGroupSlots\"\n [tableWidth]=\"tableWidth\"\n [activeView]=\"activeView\"\n [taskContentTemplate]=\"taskContentTemplate?.templateRef\"\n [taskTemplate]=\"taskTemplate?.templateRef\"\n [summaryTaskTemplate]=\"summaryTaskTemplate?.templateRef\"\n [taskClass]=\"taskClass\"\n [dependencies]=\"dependencies\"\n [hasChildren]=\"hasChildren\"\n [isTaskSelected]=\"isTaskSelected\"\n [kendoEventsOutsideAngular]=\"{\n click: handleTimelineClick,\n contextmenu: handleTimelineRightClick,\n dblclick: handleTimelineDblClick,\n mousedown: handleTimelineMouseDown\n }\"\n [scope]=\"this\"\n ></kendo-gantt-timeline>\n </kendo-splitter-pane>\n </kendo-splitter>\n </div>\n <kendo-gantt-toolbar\n *ngIf=\"showToolbar('bottom')\"\n class=\"k-gantt-footer k-toolbar k-gantt-toolbar\"\n position=\"bottom\"></kendo-gantt-toolbar>\n <kendo-gantt-edit-dialog *ngIf=\"showEditingDialog\" [formGroup]=\"editDialogFormGroup\"></kendo-gantt-edit-dialog>\n <kendo-dialog\n *ngIf=\"showConfirmationDialog\"\n [width]=\"575\"\n [height]=\"170\"\n [title]=\"getText('confirmationDialogTitle')\"\n (close)=\"showConfirmationDialog = false;\">\n <span>{{getText('confirmationDialogContent')}}</span>\n <kendo-dialog-actions layout=\"normal\">\n <kendo-treelist-spacer></kendo-treelist-spacer>\n <button kendoButton [primary]=\"true\" (click)=\"handleDeleteConfirmation()\">{{ getText('deleteButtonText') }}</button>\n <button kendoButton (click)=\"showConfirmationDialog = false;\">{{ getText('cancelButtonText') }}</button>\n </kendo-dialog-actions>\n </kendo-dialog>\n "
|
|
1452
|
+
template: "\n <ng-container kendoGanttLocalizedMessages\n i18n-taskEditingGeneralTabTitle=\"kendo.gantt.taskEditingGeneralTabTitle|The title of the 'General' tab of the editing dialog TabStrip\"\n taskEditingGeneralTabTitle=\"General\"\n\n i18n-taskEditingPredecessorsTabTitle=\"kendo.gantt.taskEditingPredecessorsTabTitle|The title of the 'Predecessors' dependencies tab of the editing dialog TabStrip\"\n taskEditingPredecessorsTabTitle=\"Predecessors\"\n\n i18n-taskEditingSuccessorsTabTitle=\"kendo.gantt.taskEditingSuccessorsTabTitle|The title of the 'Successors' dependencies tab of the editing dialog TabStrip\"\n taskEditingSuccessorsTabTitle=\"Successors\"\n\n i18n-taskEditingDependenciesAddButtonText=\"kendo.gantt.taskEditingDependenciesAddButtonText|The text of the 'Add' button in the dependencies tabs of the editing dialog TabStrip\"\n taskEditingDependenciesAddButtonText=\"Add\"\n\n i18n-taskEditingDependenciesRemoveButtonText=\"kendo.gantt.taskEditingDependenciesRemoveButtonText|The text of the 'Remove' button in the dependencies tabs of the editing dialog TabStrip\"\n taskEditingDependenciesRemoveButtonText=\"Remove\"\n\n i18n-taskEditingDependenciesGridNameColumnTitle=\"kendo.gantt.taskEditingDependenciesGridNameColumnTitle|The title of the 'Task Title' Grid column in the dependencies tabs of the editing dialog TabStrip\"\n taskEditingDependenciesGridNameColumnTitle=\"Task Title\"\n\n i18n-taskEditingDependenciesGridTypeColumnTitle=\"kendo.gantt.taskEditingDependenciesGridTypeColumnTitle|The title of the 'Type' Grid column in the dependencies tabs of the editing dialog TabStrip\"\n taskEditingDependenciesGridTypeColumnTitle=\"Type\"\n\n i18n-taskDeleteLabel=\"kendo.gantt.taskDeleteLabel|The label of the task delete icon\"\n taskDeleteLabel=\"Delete\"\n\n i18n-taskEditingDialogTitle=\"kendo.gantt.taskEditingDialogTitle|The title of the task editing dialog\"\n taskEditingDialogTitle=\"Editing Task\"\n\n i18n-taskEditingDialogCloseTitle=\"kendo.gantt.taskEditingDialogCloseTitle|The title of the task editing dialog close button\"\n taskEditingDialogCloseTitle=\"Close\"\n\n i18n-confirmationDialogCloseTitle=\"kendo.gantt.confirmationDialogCloseTitle|The title of the confirmation dialog close button\"\n confirmationDialogCloseTitle=\"Close\"\n\n i18n-confirmationDialogTitle=\"kendo.gantt.confirmationDialogTitle|The title of the delete task confirmation dialog\"\n confirmationDialogTitle=\"Delete Task\"\n\n i18n-confirmationDialogContent=\"kendo.gantt.confirmationDialogContent|The content of the delete task confirmation dialog\"\n confirmationDialogContent=\"Are you sure you want to delete this task?\"\n\n i18n-deleteButtonText=\"kendo.gantt.deleteButtonText|The text of the task editing dialog 'Delete' button\"\n deleteButtonText=\"Delete\"\n\n i18n-cancelButtonText=\"kendo.gantt.cancelButtonText|The text of the task editing dialog 'Cancel' button\"\n cancelButtonText=\"Cancel\"\n\n i18n-saveButtonText=\"kendo.gantt.saveButtonText|The text of the task editing dialog 'Save' button\"\n saveButtonText=\"Save\"\n\n i18n-titleFieldInputLabel=\"kendo.gantt.titleFieldInputLabel|The label of the 'title' field input in editing mode\"\n titleFieldInputLabel=\"Title\"\n\n i18n-startFieldInputLabel=\"kendo.gantt.startFieldInputLabel|The label of the 'start' field input in editing mode\"\n startFieldInputLabel=\"Start\"\n\n i18n-endFieldInputLabel=\"kendo.gantt.endFieldInputLabel|The label of the 'end' field input in editing mode\"\n endFieldInputLabel=\"End\"\n\n i18n-completionRatioFieldInputLabel=\"kendo.gantt.completionRatioFieldInputLabel|The label of the 'completionRatio' field input in editing mode\"\n completionRatioFieldInputLabel=\"Progress\"\n\n i18n-dayViewText=\"kendo.gantt.dayViewText|The text of the day view in the ViewSelector component\"\n dayViewText=\"Day\"\n\n i18n-weekViewText=\"kendo.gantt.weekViewText|The text of the week view in the ViewSelector component\"\n weekViewText=\"Week\"\n\n i18n-monthViewText=\"kendo.gantt.monthViewText|The text of the month view in the ViewSelector component\"\n monthViewText=\"Month\"\n\n i18n-yearViewText-disabled=\"kendo.gantt.yearViewText|The text of the year view in the ViewSelector component\"\n yearViewText=\"Year\"\n\n i18n-addTaskText=\"kendo.gantt.addTaskText|The text of the DropDownButton in the AddTask component\"\n addTaskText=\"Add Task\"\n\n i18n-addChildText=\"kendo.gantt.addChildText|The text of the 'Add Child' option in the AddTask component\"\n addChildText=\"Add Child\"\n\n i18n-addAboveText=\"kendo.gantt.addAboveText|The text of the 'Add Above' option in the AddTask component\"\n addAboveText=\"Add Above\"\n\n i18n-addBelowText=\"kendo.gantt.addBelowText|The text of the 'Add Below' option in the AddTask component\"\n addBelowText=\"Add Below\"\n\n i18n-noRecords=\"kendo.gantt.noRecords|The label visible in the TreeList when there are no records\"\n noRecords=\"No records available.\"\n\n i18n-filter=\"kendo.gantt.filter|The label of the filter cell or icon\"\n filter=\"Filter\"\n\n i18n-filterEqOperator=\"kendo.gantt.filterEqOperator|The text of the equal filter operator\"\n filterEqOperator=\"Is equal to\"\n\n i18n-filterNotEqOperator=\"kendo.gantt.filterNotEqOperator|The text of the not equal filter operator\"\n filterNotEqOperator=\"Is not equal to\"\n\n i18n-filterIsNullOperator=\"kendo.gantt.filterIsNullOperator|The text of the is null filter operator\"\n filterIsNullOperator=\"Is null\"\n\n i18n-filterIsNotNullOperator=\"kendo.gantt.filterIsNotNullOperator|The text of the is not null filter operator\"\n filterIsNotNullOperator=\"Is not null\"\n\n i18n-filterIsEmptyOperator=\"kendo.gantt.filterIsEmptyOperator|The text of the is empty filter operator\"\n filterIsEmptyOperator=\"Is empty\"\n\n i18n-filterIsNotEmptyOperator=\"kendo.gantt.filterIsNotEmptyOperator|The text of the is not empty filter operator\"\n filterIsNotEmptyOperator=\"Is not empty\"\n\n i18n-filterStartsWithOperator=\"kendo.gantt.filterStartsWithOperator|The text of the starts with filter operator\"\n filterStartsWithOperator=\"Starts with\"\n\n i18n-filterContainsOperator=\"kendo.gantt.filterContainsOperator|The text of the contains filter operator\"\n filterContainsOperator=\"Contains\"\n\n i18n-filterNotContainsOperator=\"kendo.gantt.filterNotContainsOperator|The text of the does not contain filter operator\"\n filterNotContainsOperator=\"Does not contain\"\n\n i18n-filterEndsWithOperator=\"kendo.gantt.filterEndsWithOperator|The text of the ends with filter operator\"\n filterEndsWithOperator=\"Ends with\"\n\n i18n-filterGteOperator=\"kendo.gantt.filterGteOperator|The text of the greater than or equal filter operator\"\n filterGteOperator=\"Is greater than or equal to\"\n\n i18n-filterGtOperator=\"kendo.gantt.filterGtOperator|The text of the greater than filter operator\"\n filterGtOperator=\"Is greater than\"\n\n i18n-filterLteOperator=\"kendo.gantt.filterLteOperator|The text of the less than or equal filter operator\"\n filterLteOperator=\"Is less than or equal to\"\n\n i18n-filterLtOperator=\"kendo.gantt.filterLtOperator|The text of the less than filter operator\"\n filterLtOperator=\"Is less than\"\n\n i18n-filterIsTrue=\"kendo.gantt.filterIsTrue|The text of the IsTrue boolean filter option\"\n filterIsTrue=\"Is True\"\n\n i18n-filterIsFalse=\"kendo.gantt.filterIsFalse|The text of the IsFalse boolean filter option\"\n filterIsFalse=\"Is False\"\n\n i18n-filterBooleanAll=\"kendo.gantt.filterBooleanAll|The text of the (All) boolean filter option\"\n filterBooleanAll=\"(All)\"\n\n i18n-filterAfterOrEqualOperator=\"kendo.gantt.filterAfterOrEqualOperator|The text of the after or equal date filter operator\"\n filterAfterOrEqualOperator=\"Is after or equal to\"\n\n i18n-filterAfterOperator=\"kendo.gantt.filterAfterOperator|The text of the after date filter operator\"\n filterAfterOperator=\"Is after\"\n\n i18n-filterBeforeOperator=\"kendo.gantt.filterBeforeOperator|The text of the before date filter operator\"\n filterBeforeOperator=\"Is before\"\n\n i18n-filterBeforeOrEqualOperator=\"kendo.gantt.filterBeforeOrEqualOperator|The text of the before or equal date filter operator\"\n filterBeforeOrEqualOperator=\"Is before or equal to\"\n\n i18n-filterFilterButton=\"kendo.gantt.filterFilterButton|The text of the filter button\"\n filterFilterButton=\"Filter\"\n\n i18n-filterClearButton=\"kendo.gantt.filterClearButton|The text of the clear filter button\"\n filterClearButton=\"Clear\"\n\n i18n-filterAndLogic=\"kendo.gantt.filterAndLogic|The text of the And filter logic\"\n filterAndLogic=\"And\"\n\n i18n-filterOrLogic=\"kendo.gantt.filterOrLogic|The text of the Or filter logic\"\n filterOrLogic=\"Or\"\n\n i18n-loading=\"kendo.gantt.loading|The loading text\"\n loading=\"Loading\"\n\n i18n-columnMenu=\"kendo.gantt.columnMenu|The title of the column menu icon\"\n columnMenu=\"Column Menu\"\n\n i18n-columns=\"kendo.gantt.columns|The text shown in the column menu for the columns item\"\n columns=\"Columns\"\n\n i18n-lock-disabled=\"kendo.gantt.lock|The text shown in the column menu for the lock item\"\n lock-disabled=\"Lock\"\n\n i18n-unlock-disabled=\"kendo.gantt.unlock|The text shown in the column menu for the unlock item\"\n unlock-disabled=\"Unlock\"\n\n i18n-sortable=\"kendo.gantt.sortable|The label of the sort icon\"\n sortable=\"Sortable\"\n\n i18n-sortAscending=\"kendo.gantt.sortAscending|The text shown in the column menu for the sort ascending item\"\n sortAscending=\"Sort Ascending\"\n\n i18n-sortDescending=\"kendo.gantt.sortDescending|The text shown in the column menu for the sort descending item\"\n sortDescending=\"Sort Descending\"\n\n i18n-sortedAscending=\"kendo.gantt.sortedAscending|The status announcement when a column is sorted ascending\"\n sortedAscending=\"Sorted Ascending\"\n\n i18n-sortedDescending=\"kendo.gantt.sortedDescending|The status announcement when a column is sorted descending\"\n sortedDescending=\"Sorted Descending\"\n\n i18n-sortedDefault=\"kendo.gantt.sortedDefault|The status announcement when a column is no longer sorted\"\n sortedDefault=\"Not Sorted\"\n\n i18n-columnsApply=\"kendo.gantt.columnsApply|The text shown in the column menu or column chooser for the columns apply button\"\n columnsApply=\"Apply\"\n\n i18n-columnsReset=\"kendo.gantt.columnsReset|The text shown in the column menu or column chooser for the columns reset button\"\n columnsReset=\"Reset\"></ng-container>\n <kendo-gantt-toolbar\n *ngIf=\"showToolbar('top')\"\n [showAddTask]=\"toolbarSettings.addTaskTool === 'top' || toolbarSettings.addTaskTool === 'both'\"\n [showViewSelector]=\"toolbarSettings.viewSelectorTool === 'top' || toolbarSettings.viewSelectorTool === 'both'\"\n class=\"k-gantt-header k-toolbar k-gantt-toolbar\"\n position=\"top\"></kendo-gantt-toolbar>\n <div class=\"k-gantt-content\">\n <kendo-splitter [style.border]=\"0\">\n <kendo-splitter-pane\n class=\"k-gantt-treelist k-gantt-treelist-scrollable\"\n [collapsible]=\"treeListPaneOptions?.collapsible\"\n [collapsed]=\"treeListPaneOptions?.collapsed\"\n (collapsedChange)=\"onTreeListCollapsedChange($event)\"\n [scrollable]=\"false\">\n <kendo-treelist\n [idField]=\"taskIdField\"\n [columns]=\"columns\"\n [data]=\"data\"\n [hasChildren]=\"hasChildren\"\n [fetchChildren]=\"fetchChildren\"\n [isExpanded]=\"isExpanded\"\n [autoSize]=\"columnsAutoSize\"\n [columnMenu]=\"columnMenu\"\n [reorderable]=\"columnsReorderable\"\n [resizable]=\"columnsResizable\"\n [rowClass]=\"rowClass\"\n [isSelected]=\"isSelected\"\n [selectable]=\"selectable\"\n [sortable]=\"sortable\"\n [sort]=\"sort\"\n [filterable]=\"filterMenu\"\n [filter]=\"filter\"\n (filterChange)=\"filterChange.emit($event)\"\n (sortChange)=\"sortChange.emit($event)\"\n (dataStateChange)=\"dataStateChange.emit({\n filter: $event.filter,\n sort: $event.sort\n })\"\n (expandStateChange)=\"expandStateChange.emit($event)\"\n (expand)=\"rowExpand.emit({ dataItem: $event.dataItem })\"\n (collapse)=\"rowCollapse.emit({ dataItem: $event.dataItem })\"\n (columnReorder)=\"columnReorder.emit($event)\"\n (columnResize)=\"columnResize.emit($event)\"\n (columnVisibilityChange)=\"handleColumnVisibilityChange($event)\"\n (columnLockedChange)=\"columnLockedChange.emit($event)\"\n (selectionChange)=\"handleTreeListSelectionChange($event)\"\n (cellClick)=\"handleTreeListCellClick($event)\"\n (cellClose)=\"handleCellClose($event)\"\n [kendoEventsOutsideAngular]=\"{\n dblclick: handleTreeListDoubleClick\n }\"\n [scope]=\"this\"\n >\n <kendo-treelist-messages\n [noRecords]=\"getText('noRecords')\"\n [filter]=\"getText('filter')\"\n [filterEqOperator]=\"getText('filterEqOperator')\"\n [filterNotEqOperator]=\"getText('filterNotEqOperator')\"\n [filterIsNullOperator]=\"getText('filterIsNullOperator')\"\n [filterIsNotNullOperator]=\"getText('filterIsNotNullOperator')\"\n [filterIsEmptyOperator]=\"getText('filterIsEmptyOperator')\"\n [filterIsNotEmptyOperator]=\"getText('filterIsNotEmptyOperator')\"\n [filterStartsWithOperator]=\"getText('filterStartsWithOperator')\"\n [filterContainsOperator]=\"getText('filterContainsOperator')\"\n [filterNotContainsOperator]=\"getText('filterNotContainsOperator')\"\n [filterEndsWithOperator]=\"getText('filterEndsWithOperator')\"\n [filterGteOperator]=\"getText('filterGteOperator')\"\n [filterGtOperator]=\"getText('filterGtOperator')\"\n [filterLteOperator]=\"getText('filterLteOperator')\"\n [filterLtOperator]=\"getText('filterLtOperator')\"\n [filterIsTrue]=\"getText('filterIsTrue')\"\n [filterIsFalse]=\"getText('filterIsFalse')\"\n [filterBooleanAll]=\"getText('filterBooleanAll')\"\n [filterAfterOrEqualOperator]=\"getText('filterAfterOrEqualOperator')\"\n [filterAfterOperator]=\"getText('filterAfterOperator')\"\n [filterBeforeOperator]=\"getText('filterBeforeOperator')\"\n [filterBeforeOrEqualOperator]=\"getText('filterBeforeOrEqualOperator')\"\n [filterFilterButton]=\"getText('filterFilterButton')\"\n [filterClearButton]=\"getText('filterClearButton')\"\n [filterAndLogic]=\"getText('filterAndLogic')\"\n [filterOrLogic]=\"getText('filterOrLogic')\"\n [loading]=\"getText('loading')\"\n [columnMenu]=\"getText('columnMenu')\"\n [columns]=\"getText('columns')\"\n [sortable]=\"getText('sortable')\"\n [sortAscending]=\"getText('sortAscending')\"\n [sortDescending]=\"getText('sortDescending')\"\n [sortedAscending]=\"getText('sortedAscending')\"\n [sortedDescending]=\"getText('sortedDescending')\"\n [sortedDefault]=\"getText('sortedDefault')\"\n [columnsApply]=\"getText('columnsApply')\"\n [columnsReset]=\"getText('columnsReset')\"\n >\n </kendo-treelist-messages>\n </kendo-treelist>\n </kendo-splitter-pane>\n <kendo-splitter-pane\n [collapsible]=\"timelinePaneOptions?.collapsible\"\n [resizable]=\"timelinePaneOptions?.resizable\"\n [collapsed]=\"timelinePaneOptions?.collapsed\"\n [min]=\"timelinePaneOptions?.min\"\n [max]=\"timelinePaneOptions?.max\"\n [size]=\"timelinePaneOptions?.size\"\n (collapsedChange)=\"onTimelineCollapsedChange($event)\"\n (sizeChange)=\"onTimelinePaneSizeChange($event)\"\n [scrollable]=\"false\">\n <kendo-gantt-timeline\n *ngIf=\"views && views.length\"\n [renderDependencyDragClues]=\"renderDependencyDragClues\"\n [dragScrollSettings]=\"dragScrollSettings\"\n [rows]=\"renderedTreeListItems\"\n [slots]=\"timelineSlots\"\n [groupSlots]=\"timelineGroupSlots\"\n [tableWidth]=\"tableWidth\"\n [activeView]=\"activeView\"\n [taskContentTemplate]=\"taskContentTemplate?.templateRef\"\n [taskTemplate]=\"taskTemplate?.templateRef\"\n [summaryTaskTemplate]=\"summaryTaskTemplate?.templateRef\"\n [taskClass]=\"taskClass\"\n [dependencies]=\"dependencies\"\n [hasChildren]=\"hasChildren\"\n [isTaskSelected]=\"isTaskSelected\"\n [kendoEventsOutsideAngular]=\"{\n click: handleTimelineClick,\n contextmenu: handleTimelineRightClick,\n dblclick: handleTimelineDblClick,\n mousedown: handleTimelineMouseDown\n }\"\n [scope]=\"this\"\n ></kendo-gantt-timeline>\n </kendo-splitter-pane>\n </kendo-splitter>\n </div>\n <kendo-gantt-toolbar\n *ngIf=\"showToolbar('bottom')\"\n [showAddTask]=\"toolbarSettings.addTaskTool === 'bottom' || toolbarSettings.addTaskTool === 'both'\"\n [showViewSelector]=\"toolbarSettings.viewSelectorTool === 'bottom' || toolbarSettings.viewSelectorTool === 'both'\"\n class=\"k-gantt-footer k-toolbar k-gantt-toolbar\"\n position=\"bottom\"></kendo-gantt-toolbar>\n <kendo-gantt-edit-dialog\n *ngIf=\"showEditingDialog\"\n [data]=\"data\">\n </kendo-gantt-edit-dialog>\n <kendo-dialog\n *ngIf=\"showConfirmationDialog\"\n [width]=\"575\"\n [height]=\"170\"\n [title]=\"getText('confirmationDialogTitle')\"\n (close)=\"showConfirmationDialog = false;\">\n <span>{{ getText('confirmationDialogContent') }}</span>\n <kendo-dialog-actions layout=\"normal\">\n <kendo-treelist-spacer></kendo-treelist-spacer>\n <button kendoButton [primary]=\"true\" (click)=\"handleDeleteConfirmation()\">{{ getText('deleteButtonText') }}</button>\n <button kendoButton (click)=\"showConfirmationDialog = false;\">{{ getText('cancelButtonText') }}</button>\n </kendo-dialog-actions>\n </kendo-dialog>\n "
|
|
1268
1453
|
}),
|
|
1269
1454
|
tslib_1.__metadata("design:paramtypes", [TimelineViewService,
|
|
1270
1455
|
ScrollSyncService,
|
package/dist/es/gantt.module.js
CHANGED
|
@@ -5,11 +5,19 @@
|
|
|
5
5
|
import * as tslib_1 from "tslib";
|
|
6
6
|
import { NgModule } from '@angular/core';
|
|
7
7
|
import { CommonModule } from '@angular/common';
|
|
8
|
-
import {
|
|
8
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
9
|
+
import { SplitterModule, TabStripModule } from '@progress/kendo-angular-layout';
|
|
9
10
|
import { TreeListModule } from '@progress/kendo-angular-treelist';
|
|
10
11
|
import { ButtonsModule } from '@progress/kendo-angular-buttons';
|
|
11
|
-
import { EventsModule } from '@progress/kendo-angular-common';
|
|
12
|
+
import { DraggableModule, EventsModule } from '@progress/kendo-angular-common';
|
|
12
13
|
import { DialogModule } from '@progress/kendo-angular-dialog';
|
|
14
|
+
import { LabelModule } from '@progress/kendo-angular-label';
|
|
15
|
+
import { InputsModule } from '@progress/kendo-angular-inputs';
|
|
16
|
+
import { DateInputsModule } from '@progress/kendo-angular-dateinputs';
|
|
17
|
+
import { L10N_PREFIX } from '@progress/kendo-angular-l10n';
|
|
18
|
+
import { PopupModule } from '@progress/kendo-angular-popup';
|
|
19
|
+
import { touchEnabled } from '@progress/kendo-common';
|
|
20
|
+
import { TOUCH_ENABLED } from './common/touch-enabled';
|
|
13
21
|
import { GanttComponent } from './gantt.component';
|
|
14
22
|
import { GanttTimelineComponent } from './timeline/gantt-timeline.component';
|
|
15
23
|
import { GanttTasksTableBodyComponent } from './rendering/gantt-tasks-table-body.component';
|
|
@@ -28,19 +36,21 @@ import { ToolbarComponent } from './toolbar/toolbar.component';
|
|
|
28
36
|
import { ToolbarTemplateDirective } from './toolbar/toolbar-template.directive';
|
|
29
37
|
import { ViewSelectorComponent } from './toolbar/view-selector.component';
|
|
30
38
|
import { GanttDependencyDirective } from './dependencies/gantt-dependency.directive';
|
|
39
|
+
import { DependencyDragCreateDirective } from './dragging/dependency-drag-create.directive';
|
|
40
|
+
import { DragValidationTooltipComponent } from './dragging/drag-validation-tooltip.component';
|
|
41
|
+
import { TimelineScrollableDirective } from './scrolling/timeline-scroll.directive';
|
|
31
42
|
import { GanttColumnComponent, GanttColumnGroupComponent, GanttSpanColumnComponent, FilterMenuTemplateDirective, FilterCellTemplateDirective, CellTemplateDirective, ColumnMenuTemplateDirective, FooterTemplateDirective, HeaderTemplateDirective, EditTemplateDirective } from './columns/columns';
|
|
32
43
|
import { TimelineDayViewComponent } from './timeline/timeline-day-view.component';
|
|
33
44
|
import { TimelineWeekViewComponent } from './timeline/timeline-week-view.component';
|
|
34
45
|
import { TimelineMonthViewComponent } from './timeline/timeline-month-view.component';
|
|
35
46
|
import { EditDialogComponent } from './editing/edit-dialog.component';
|
|
36
|
-
import { ReactiveFormsModule } from '@angular/forms';
|
|
37
|
-
import { LabelModule } from '@progress/kendo-angular-label';
|
|
38
|
-
import { InputsModule } from '@progress/kendo-angular-inputs';
|
|
39
|
-
import { DateInputsModule } from '@progress/kendo-angular-dateinputs';
|
|
40
47
|
import { CustomMessagesComponent } from './localization/custom-messages.component';
|
|
41
|
-
import { L10N_PREFIX } from '@progress/kendo-angular-l10n';
|
|
42
48
|
import { LocalizedMessagesDirective } from './localization/localized-messages.directive';
|
|
43
|
-
import {
|
|
49
|
+
import { GanttAddTaskComponent } from './editing/add-task.component';
|
|
50
|
+
import { GridModule } from '@progress/kendo-angular-grid';
|
|
51
|
+
import { DropDownsModule } from '@progress/kendo-angular-dropdowns';
|
|
52
|
+
import { DependenciesTableComponent } from './editing/dependencies-table.component';
|
|
53
|
+
import { TaskFieldsComponent } from './editing/task-fields.component';
|
|
44
54
|
var IMPORTED_MODULES = [
|
|
45
55
|
CommonModule,
|
|
46
56
|
ReactiveFormsModule,
|
|
@@ -52,7 +62,12 @@ var IMPORTED_MODULES = [
|
|
|
52
62
|
TreeListModule,
|
|
53
63
|
ButtonsModule,
|
|
54
64
|
DialogModule,
|
|
55
|
-
EventsModule
|
|
65
|
+
EventsModule,
|
|
66
|
+
PopupModule,
|
|
67
|
+
DraggableModule,
|
|
68
|
+
TabStripModule,
|
|
69
|
+
GridModule,
|
|
70
|
+
DropDownsModule
|
|
56
71
|
];
|
|
57
72
|
var DECLARATIONS = [
|
|
58
73
|
GanttComponent,
|
|
@@ -82,6 +97,7 @@ var DECLARATIONS = [
|
|
|
82
97
|
FooterTemplateDirective,
|
|
83
98
|
GanttExpandableDirective,
|
|
84
99
|
GanttDependencyDirective,
|
|
100
|
+
DependencyDragCreateDirective,
|
|
85
101
|
TimelineDayViewComponent,
|
|
86
102
|
TimelineWeekViewComponent,
|
|
87
103
|
TimelineMonthViewComponent,
|
|
@@ -89,8 +105,13 @@ var DECLARATIONS = [
|
|
|
89
105
|
EditDialogComponent,
|
|
90
106
|
CustomMessagesComponent,
|
|
91
107
|
LocalizedMessagesDirective,
|
|
92
|
-
|
|
108
|
+
GanttAddTaskComponent,
|
|
109
|
+
DragValidationTooltipComponent,
|
|
110
|
+
TimelineScrollableDirective,
|
|
111
|
+
DependenciesTableComponent,
|
|
112
|
+
TaskFieldsComponent
|
|
93
113
|
];
|
|
114
|
+
var ɵ0 = touchEnabled;
|
|
94
115
|
/**
|
|
95
116
|
* Represents the [NgModule]({{ site.data.urls.angular['ngmoduleapi'] }})
|
|
96
117
|
* definition for the Gantt component.
|
|
@@ -130,12 +151,17 @@ var GanttModule = /** @class */ (function () {
|
|
|
130
151
|
imports: IMPORTED_MODULES.slice(),
|
|
131
152
|
declarations: DECLARATIONS.slice(),
|
|
132
153
|
exports: DECLARATIONS.slice(),
|
|
154
|
+
entryComponents: [DragValidationTooltipComponent],
|
|
133
155
|
providers: [{
|
|
134
156
|
provide: L10N_PREFIX,
|
|
135
157
|
useValue: 'kendo.gantt'
|
|
158
|
+
}, {
|
|
159
|
+
provide: TOUCH_ENABLED,
|
|
160
|
+
useValue: ɵ0
|
|
136
161
|
}]
|
|
137
162
|
})
|
|
138
163
|
], GanttModule);
|
|
139
164
|
return GanttModule;
|
|
140
165
|
}());
|
|
141
166
|
export { GanttModule };
|
|
167
|
+
export { ɵ0 };
|