@progress/kendo-angular-gantt 17.0.0-develop.8 → 17.0.0
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/binding-directives/flat-binding.directive.d.ts +1 -1
- package/binding-directives/hierarchy-binding.directive.d.ts +1 -1
- package/columns/column-base.component.d.ts +1 -74
- package/columns/column-group.component.d.ts +1 -80
- package/columns/column.component.d.ts +1 -80
- package/columns/span-column.component.d.ts +1 -90
- package/dependencies/gantt-dependency.directive.d.ts +1 -1
- package/dragging/dependency-drag-create.directive.d.ts +1 -1
- package/editing/add-task.component.d.ts +1 -1
- package/editing/dependencies-table.component.d.ts +1 -1
- package/editing/edit-dialog.component.d.ts +1 -1
- package/{esm2020 → esm2022}/binding-directives/flat-binding.directive.mjs +7 -3
- package/{esm2020 → esm2022}/binding-directives/hierarchy-binding.directive.mjs +7 -3
- package/{esm2020 → esm2022}/columns/cell-template.directive.mjs +4 -3
- package/esm2022/columns/column-base.component.mjs +22 -0
- package/esm2022/columns/column-group.component.mjs +66 -0
- package/{esm2020 → esm2022}/columns/column-menu-template.directive.mjs +4 -3
- package/{esm2020 → esm2022}/columns/column.component.mjs +37 -65
- package/{esm2020 → esm2022}/columns/edit-template.directive.mjs +4 -3
- package/{esm2020 → esm2022}/columns/filter-cell-template.directive.mjs +4 -3
- package/{esm2020 → esm2022}/columns/filter-menu-template.directive.mjs +4 -3
- package/{esm2020 → esm2022}/columns/footer-template.directive.mjs +4 -3
- package/{esm2020 → esm2022}/columns/header-template.directive.mjs +4 -3
- package/esm2022/columns/span-column.component.mjs +66 -0
- package/{esm2020 → esm2022}/common/mapping.service.mjs +5 -7
- package/{esm2020 → esm2022}/common/option-changes.service.mjs +6 -8
- package/{esm2020 → esm2022}/dependencies/dependency-dom.service.mjs +21 -12
- package/{esm2020 → esm2022}/dependencies/gantt-dependency.directive.mjs +10 -4
- package/{esm2020 → esm2022}/dragging/dependency-drag-create.directive.mjs +41 -18
- package/{esm2020 → esm2022}/dragging/drag-validation-tooltip.component.mjs +24 -12
- package/{esm2020 → esm2022}/editing/add-task.component.mjs +31 -28
- package/{esm2020 → esm2022}/editing/dependencies-table.component.mjs +22 -15
- package/{esm2020 → esm2022}/editing/edit-dialog.component.mjs +14 -8
- package/{esm2020 → esm2022}/editing/edit.service.mjs +23 -17
- package/{esm2020 → esm2022}/editing/task-fields.component.mjs +8 -5
- package/{esm2020 → esm2022}/expanded-state/expand-event.mjs +4 -0
- package/{esm2020 → esm2022}/expanded-state/expandable.directive.mjs +3 -3
- package/{esm2020 → esm2022}/gantt.component.mjs +434 -364
- package/{esm2020 → esm2022}/gantt.module.mjs +31 -31
- package/{esm2020 → esm2022}/localization/custom-messages.component.mjs +9 -8
- package/{esm2020 → esm2022}/localization/gantt-localization.service.mjs +4 -3
- package/{esm2020 → esm2022}/localization/localized-messages.directive.mjs +9 -8
- package/esm2022/localization/messages.mjs +441 -0
- package/esm2022/models/events/cell-close-event.interface.mjs +45 -0
- package/{esm2020 → esm2022}/navigation/navigation.service.mjs +40 -35
- package/{esm2020 → esm2022}/package-metadata.mjs +2 -2
- package/{esm2020 → esm2022}/rendering/gantt-header-table-body.component.mjs +7 -7
- package/{esm2020 → esm2022}/rendering/gantt-milestone-task.component.mjs +11 -11
- package/{esm2020 → esm2022}/rendering/gantt-summary-task.component.mjs +16 -14
- package/{esm2020 → esm2022}/rendering/gantt-task-base.mjs +37 -18
- package/{esm2020 → esm2022}/rendering/gantt-task.component.mjs +14 -11
- package/{esm2020 → esm2022}/rendering/gantt-tasks-table-body.component.mjs +20 -8
- package/{esm2020 → esm2022}/scrolling/scroll-sync.service.mjs +9 -6
- package/{esm2020 → esm2022}/scrolling/timeline-scroll.directive.mjs +10 -4
- package/{esm2020 → esm2022}/scrolling/timeline-scroll.service.mjs +6 -8
- package/{esm2020 → esm2022}/selection/selectable.directive.mjs +18 -14
- package/{esm2020 → esm2022}/template-directives/summary-task-template.directive.mjs +4 -3
- package/{esm2020 → esm2022}/template-directives/task-content-template.directive.mjs +4 -3
- package/{esm2020 → esm2022}/template-directives/task-template.directive.mjs +4 -3
- package/{esm2020 → esm2022}/timeline/current-time-marker.service.mjs +36 -27
- package/{esm2020 → esm2022}/timeline/gantt-timeline.component.mjs +54 -16
- package/{esm2020 → esm2022}/timeline/timeline-base-view.service.mjs +6 -3
- package/{esm2020 → esm2022}/timeline/timeline-day-view.component.mjs +12 -12
- package/{esm2020 → esm2022}/timeline/timeline-day-view.service.mjs +4 -3
- package/{esm2020 → esm2022}/timeline/timeline-month-view.component.mjs +12 -12
- package/{esm2020 → esm2022}/timeline/timeline-month-view.service.mjs +4 -3
- package/{esm2020 → esm2022}/timeline/timeline-view.service.mjs +5 -4
- package/{esm2020 → esm2022}/timeline/timeline-week-view.component.mjs +12 -12
- package/{esm2020 → esm2022}/timeline/timeline-week-view.service.mjs +4 -3
- package/{esm2020 → esm2022}/timeline/timeline-year-view.component.mjs +12 -12
- package/{esm2020 → esm2022}/timeline/timeline-year-view.service.mjs +4 -3
- package/{esm2020 → esm2022}/timeline/view-base.mjs +22 -9
- package/{esm2020 → esm2022}/toolbar/toolbar-navigation.service.mjs +6 -4
- package/{esm2020 → esm2022}/toolbar/toolbar-template.directive.mjs +8 -7
- package/{esm2020 → esm2022}/toolbar/toolbar.component.mjs +21 -12
- package/{esm2020 → esm2022}/toolbar/view-selector.component.mjs +19 -14
- package/expanded-state/expandable.directive.d.ts +1 -1
- package/{fesm2020 → fesm2022}/progress-kendo-angular-gantt.mjs +1579 -1114
- package/gantt.component.d.ts +1 -1
- package/localization/messages.d.ts +1 -1
- package/models/cell-content-type.interface.d.ts +1 -1
- package/models/class-callbacks.d.ts +2 -2
- package/models/events/task-edit-event.interface.d.ts +1 -1
- package/models/filterable-settings.d.ts +1 -1
- package/models/sort-settings.d.ts +2 -2
- package/models/timeline-view.d.ts +1 -1
- package/models/toolbar-settings.d.ts +1 -1
- package/package.json +25 -31
- package/rendering/gantt-header-table-body.component.d.ts +1 -1
- package/rendering/gantt-summary-task.component.d.ts +1 -1
- package/rendering/gantt-task-base.d.ts +1 -1
- package/rendering/gantt-task.component.d.ts +1 -1
- package/rendering/gantt-tasks-table-body.component.d.ts +1 -1
- package/schematics/ngAdd/index.js +8 -8
- package/scrolling/scroll-sync.service.d.ts +2 -2
- package/scrolling/timeline-scroll.directive.d.ts +1 -1
- package/selection/selectable.directive.d.ts +1 -1
- package/timeline/gantt-timeline.component.d.ts +1 -1
- package/timeline/view-base.d.ts +1 -1
- package/toolbar/toolbar-template.directive.d.ts +1 -1
- package/toolbar/toolbar.component.d.ts +1 -1
- package/toolbar/view-selector.component.d.ts +1 -1
- package/utils.d.ts +1 -1
- package/esm2020/columns/column-base.component.mjs +0 -55
- package/esm2020/columns/column-group.component.mjs +0 -101
- package/esm2020/columns/span-column.component.mjs +0 -120
- package/esm2020/localization/messages.mjs +0 -157
- package/esm2020/models/events/cell-close-event.interface.mjs +0 -14
- package/fesm2015/progress-kendo-angular-gantt.mjs +0 -8219
- /package/{esm2020 → esm2022}/columns/columns.mjs +0 -0
- /package/{esm2020 → esm2022}/common/default-callbacks.mjs +0 -0
- /package/{esm2020 → esm2022}/dependencies/dom-dependency-args.mjs +0 -0
- /package/{esm2020 → esm2022}/dependencies/utils.mjs +0 -0
- /package/{esm2020 → esm2022}/directives.mjs +0 -0
- /package/{esm2020 → esm2022}/editing/utils.mjs +0 -0
- /package/{esm2020 → esm2022}/index.mjs +0 -0
- /package/{esm2020 → esm2022}/models/cell-content-type.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/class-callbacks.mjs +0 -0
- /package/{esm2020 → esm2022}/models/column-menu-settings.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/column-reorder-config.mjs +0 -0
- /package/{esm2020 → esm2022}/models/current-time-settings.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/date-range.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/dependency-type.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/cell-click-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/click-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/column-locked-change-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/column-reorder-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/column-resize-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/column-visibility-change-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/data-state-change-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/dependency-add-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/selected-view-change-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/task-add-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/task-click-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/task-delete-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/task-edit-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/task-move-end-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/task-move-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/task-move-start-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/task-resize-end-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/task-resize-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/events/task-resize-start-event.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/filterable-settings.mjs +0 -0
- /package/{esm2020 → esm2022}/models/gantt-dependency-model-fields.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/gantt-dependency.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/gantt-task-model-fields.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/gantt-task.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/models.mjs +0 -0
- /package/{esm2020 → esm2022}/models/slot.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/sort-settings.mjs +0 -0
- /package/{esm2020 → esm2022}/models/splitter-pane-options.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/timeline-header-date-format.mjs +0 -0
- /package/{esm2020 → esm2022}/models/timeline-options.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/models/timeline-view.mjs +0 -0
- /package/{esm2020 → esm2022}/models/toolbar-settings.mjs +0 -0
- /package/{esm2020 → esm2022}/models/view-item.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/navigation/navigation-models.mjs +0 -0
- /package/{esm2020 → esm2022}/navigation/utils.mjs +0 -0
- /package/{esm2020 → esm2022}/progress-kendo-angular-gantt.mjs +0 -0
- /package/{esm2020 → esm2022}/scrolling/drag-scroll-settings.mjs +0 -0
- /package/{esm2020 → esm2022}/scrolling/utils.mjs +0 -0
- /package/{esm2020 → esm2022}/selection/selection-change-event.mjs +0 -0
- /package/{esm2020 → esm2022}/utils.mjs +0 -0
|
@@ -12,38 +12,17 @@ import * as i1 from "../scrolling/scroll-sync.service";
|
|
|
12
12
|
* @hidden
|
|
13
13
|
*/
|
|
14
14
|
export class NavigationService {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
this.taskStatusChanges = new Subject();
|
|
27
|
-
/**
|
|
28
|
-
* Keeps track of whether the Timeline part is focused.
|
|
29
|
-
* Used when the index of the task elements change (tasks are changed, pushed to, spliced from, etc.)
|
|
30
|
-
* and their status should be updated accordingly.
|
|
31
|
-
*/
|
|
32
|
-
this.isTimelineFocused = false;
|
|
33
|
-
/**
|
|
34
|
-
* Keeps track of which part has last been focused.
|
|
35
|
-
* Used when calling `gantt.focus()` to determine which part of the component should receive focus.
|
|
36
|
-
*/
|
|
37
|
-
this.treeListLastActive = false;
|
|
38
|
-
/**
|
|
39
|
-
* Keeps track of which part has last been focused.
|
|
40
|
-
* Used when calling `gantt.focus()` to determine which part of the component should receive focus.
|
|
41
|
-
*/
|
|
42
|
-
this.timelineLastActive = false;
|
|
43
|
-
this._enabled = false;
|
|
44
|
-
this._activeTimelineIndex = 0;
|
|
45
|
-
this._activeTreeListCell = { rowIndex: 0, colIndex: 0 };
|
|
46
|
-
}
|
|
15
|
+
zone;
|
|
16
|
+
renderer;
|
|
17
|
+
scrollSyncService;
|
|
18
|
+
/**
|
|
19
|
+
* Notifies when the tasks' focused and interactive (tabindex) state has changed.
|
|
20
|
+
*
|
|
21
|
+
* All tasks are rendered with tabindex="-1".
|
|
22
|
+
* When one is clicked, or when some navigation key keyboard key is pressed, it should be focused, assigned the focus class, and its tabindex updated to 0.
|
|
23
|
+
* All other tasks should get -1 tabindex and have the focus class removed from them.
|
|
24
|
+
*/
|
|
25
|
+
taskStatusChanges = new Subject();
|
|
47
26
|
/**
|
|
48
27
|
* Specifies whether navigation is enabled.
|
|
49
28
|
*/
|
|
@@ -88,6 +67,12 @@ export class NavigationService {
|
|
|
88
67
|
const colIndex = fitToRange(this._activeTreeListCell.colIndex, firstAvailableIndex, lastAvailableColIndex);
|
|
89
68
|
return { rowIndex, colIndex };
|
|
90
69
|
}
|
|
70
|
+
/**
|
|
71
|
+
* Keeps track of whether the Timeline part is focused.
|
|
72
|
+
* Used when the index of the task elements change (tasks are changed, pushed to, spliced from, etc.)
|
|
73
|
+
* and their status should be updated accordingly.
|
|
74
|
+
*/
|
|
75
|
+
isTimelineFocused = false;
|
|
91
76
|
/**
|
|
92
77
|
* The TreeList row index takes into account the header and filter rows.
|
|
93
78
|
* Used when translating Timeline task indices to TreeList row indices.
|
|
@@ -96,6 +81,26 @@ export class NavigationService {
|
|
|
96
81
|
// captures nested group header rows + filter row if we start supporting it at some point
|
|
97
82
|
return this.metadata.treeListElement.querySelectorAll('.k-grid-header tr').length;
|
|
98
83
|
}
|
|
84
|
+
/**
|
|
85
|
+
* Keeps track of which part has last been focused.
|
|
86
|
+
* Used when calling `gantt.focus()` to determine which part of the component should receive focus.
|
|
87
|
+
*/
|
|
88
|
+
treeListLastActive = false;
|
|
89
|
+
/**
|
|
90
|
+
* Keeps track of which part has last been focused.
|
|
91
|
+
* Used when calling `gantt.focus()` to determine which part of the component should receive focus.
|
|
92
|
+
*/
|
|
93
|
+
timelineLastActive = false;
|
|
94
|
+
metadata;
|
|
95
|
+
_enabled = false;
|
|
96
|
+
_activeTimelineIndex = 0;
|
|
97
|
+
_activeTreeListCell = { rowIndex: 0, colIndex: 0 };
|
|
98
|
+
eventListenerDisposers;
|
|
99
|
+
constructor(zone, renderer, scrollSyncService) {
|
|
100
|
+
this.zone = zone;
|
|
101
|
+
this.renderer = renderer;
|
|
102
|
+
this.scrollSyncService = scrollSyncService;
|
|
103
|
+
}
|
|
99
104
|
initialize(metadata) {
|
|
100
105
|
// no private property setters in TypeScript, so use a getter and a poorly named private prop for this value
|
|
101
106
|
this._enabled = true;
|
|
@@ -258,9 +263,9 @@ export class NavigationService {
|
|
|
258
263
|
focusTreeList() {
|
|
259
264
|
this.metadata.treeList.focus();
|
|
260
265
|
}
|
|
266
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NavigationService, deps: [{ token: i0.NgZone }, { token: i0.Renderer2 }, { token: i1.ScrollSyncService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
267
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NavigationService });
|
|
261
268
|
}
|
|
262
|
-
|
|
263
|
-
NavigationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NavigationService });
|
|
264
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NavigationService, decorators: [{
|
|
269
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NavigationService, decorators: [{
|
|
265
270
|
type: Injectable
|
|
266
271
|
}], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.Renderer2 }, { type: i1.ScrollSyncService }]; } });
|
|
@@ -9,7 +9,7 @@ export const packageMetadata = {
|
|
|
9
9
|
name: '@progress/kendo-angular-gantt',
|
|
10
10
|
productName: 'Kendo UI for Angular',
|
|
11
11
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
12
|
-
publishDate:
|
|
13
|
-
version: '17.0.0
|
|
12
|
+
publishDate: 1731414248,
|
|
13
|
+
version: '17.0.0',
|
|
14
14
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning'
|
|
15
15
|
};
|
|
@@ -9,12 +9,11 @@ import * as i0 from "@angular/core";
|
|
|
9
9
|
* @hidden
|
|
10
10
|
*/
|
|
11
11
|
export class GanttHeaderTableBodyComponent {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
GanttHeaderTableBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: GanttHeaderTableBodyComponent, isStandalone: true, selector: "[kendoGanttHeaderTableBody]", inputs: { groupSlots: "groupSlots", slots: "slots" }, host: { properties: { "class.k-table-tbody": "this.tbodyClass" } }, ngImport: i0, template: `
|
|
12
|
+
tbodyClass = true;
|
|
13
|
+
groupSlots;
|
|
14
|
+
slots;
|
|
15
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GanttHeaderTableBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
16
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GanttHeaderTableBodyComponent, isStandalone: true, selector: "[kendoGanttHeaderTableBody]", inputs: { groupSlots: "groupSlots", slots: "slots" }, host: { properties: { "class.k-table-tbody": "this.tbodyClass" } }, ngImport: i0, template: `
|
|
18
17
|
<tr class="k-table-row">
|
|
19
18
|
<td *ngFor="let item of groupSlots" [attr.colspan]="item.span" class="k-header k-table-td">{{ item.text }}</td>
|
|
20
19
|
</tr>
|
|
@@ -23,7 +22,8 @@ GanttHeaderTableBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "1
|
|
|
23
22
|
<td *ngFor="let item of slots" class="k-header k-table-td" [attr.colspan]="item.span === 7 ? item.span : 1" [attr.title]="item.text">{{ item.text }}</td>
|
|
24
23
|
</tr>
|
|
25
24
|
`, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
26
|
-
|
|
25
|
+
}
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GanttHeaderTableBodyComponent, decorators: [{
|
|
27
27
|
type: Component,
|
|
28
28
|
args: [{
|
|
29
29
|
// eslint-disable-next-line @angular-eslint/component-selector
|
|
@@ -21,19 +21,18 @@ import * as i5 from "../navigation/navigation.service";
|
|
|
21
21
|
* @hidden
|
|
22
22
|
*/
|
|
23
23
|
export class GanttMilestoneTaskComponent extends GanttTaskBase {
|
|
24
|
+
milestoneWrapperClass = true;
|
|
25
|
+
touchEnabled = touchEnabled;
|
|
24
26
|
constructor(mapper, timelineViewService, dependencyDomService, optionChangesService, cdr, navigationService) {
|
|
25
27
|
super(mapper, timelineViewService, dependencyDomService, optionChangesService, cdr, navigationService);
|
|
26
|
-
this.milestoneWrapperClass = true;
|
|
27
|
-
this.touchEnabled = touchEnabled;
|
|
28
28
|
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
], usesInheritance: true, ngImport: i0, template: `
|
|
29
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GanttMilestoneTaskComponent, deps: [{ token: i1.MappingService }, { token: i2.TimelineViewService }, { token: i3.DependencyDomService }, { token: i4.OptionChangesService }, { token: i0.ChangeDetectorRef }, { token: i5.NavigationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
30
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GanttMilestoneTaskComponent, isStandalone: true, selector: "kendo-gantt-milestone-task", host: { properties: { "class.k-milestone-wrap": "this.milestoneWrapperClass" } }, providers: [
|
|
31
|
+
{
|
|
32
|
+
provide: GanttTaskBase,
|
|
33
|
+
useExisting: forwardRef(() => GanttMilestoneTaskComponent)
|
|
34
|
+
}
|
|
35
|
+
], usesInheritance: true, ngImport: i0, template: `
|
|
37
36
|
<div
|
|
38
37
|
#task
|
|
39
38
|
role="treeitem"
|
|
@@ -58,7 +57,8 @@ GanttMilestoneTaskComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.
|
|
|
58
57
|
</div>
|
|
59
58
|
</ng-container>
|
|
60
59
|
`, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
61
|
-
|
|
60
|
+
}
|
|
61
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GanttMilestoneTaskComponent, decorators: [{
|
|
62
62
|
type: Component,
|
|
63
63
|
args: [{
|
|
64
64
|
selector: 'kendo-gantt-milestone-task',
|
|
@@ -22,25 +22,26 @@ import * as i5 from "../navigation/navigation.service";
|
|
|
22
22
|
* @hidden
|
|
23
23
|
*/
|
|
24
24
|
export class GanttSummaryTaskComponent extends GanttTaskBase {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
}
|
|
25
|
+
summaryWrapperClass = true;
|
|
26
|
+
template;
|
|
27
|
+
isExpanded;
|
|
28
|
+
touchEnabled = touchEnabled;
|
|
30
29
|
get ariaExpanded() {
|
|
31
30
|
// if no callback is provided, all child items are displayed and the item is regarded as expanded
|
|
32
31
|
// replicates the TreeList aria-expanded behavior
|
|
33
32
|
const isExpanded = !isPresent(this.isExpanded) || this.isExpanded(this.dataItem);
|
|
34
33
|
return String(isExpanded);
|
|
35
34
|
}
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
35
|
+
constructor(mapper, timelineViewService, dependencyDomService, optionChangesService, cdr, navigationService) {
|
|
36
|
+
super(mapper, timelineViewService, dependencyDomService, optionChangesService, cdr, navigationService);
|
|
37
|
+
}
|
|
38
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GanttSummaryTaskComponent, deps: [{ token: i1.MappingService }, { token: i2.TimelineViewService }, { token: i3.DependencyDomService }, { token: i4.OptionChangesService }, { token: i0.ChangeDetectorRef }, { token: i5.NavigationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
39
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GanttSummaryTaskComponent, isStandalone: true, selector: "kendo-gantt-summary-task", inputs: { template: "template", isExpanded: "isExpanded" }, host: { properties: { "class.k-summary-wrap": "this.summaryWrapperClass" } }, providers: [
|
|
40
|
+
{
|
|
41
|
+
provide: GanttTaskBase,
|
|
42
|
+
useExisting: forwardRef(() => GanttSummaryTaskComponent)
|
|
43
|
+
}
|
|
44
|
+
], usesInheritance: true, ngImport: i0, template: `
|
|
44
45
|
<div
|
|
45
46
|
#task
|
|
46
47
|
role="treeitem"
|
|
@@ -85,7 +86,8 @@ GanttSummaryTaskComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.
|
|
|
85
86
|
</div>
|
|
86
87
|
</ng-container>
|
|
87
88
|
`, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
|
|
88
|
-
|
|
89
|
+
}
|
|
90
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GanttSummaryTaskComponent, decorators: [{
|
|
89
91
|
type: Component,
|
|
90
92
|
args: [{
|
|
91
93
|
selector: 'kendo-gantt-summary-task',
|
|
@@ -27,24 +27,29 @@ const FOCUSED_CLASS = 'k-focus';
|
|
|
27
27
|
* @hidden
|
|
28
28
|
*/
|
|
29
29
|
export class GanttTaskBase {
|
|
30
|
-
|
|
31
|
-
timelineViewService
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
this.navigationService = navigationService;
|
|
38
|
-
this.wrapperClass = true;
|
|
39
|
-
this.subscriptions = new Subscription();
|
|
40
|
-
this.subscriptions.add(this.optionChangesService.viewChanges
|
|
41
|
-
.subscribe(() => this.cdr.markForCheck()));
|
|
42
|
-
this.subscriptions.add(this.navigationService.taskStatusChanges
|
|
43
|
-
.subscribe(this.updateActiveState.bind(this)));
|
|
44
|
-
}
|
|
30
|
+
mapper;
|
|
31
|
+
timelineViewService;
|
|
32
|
+
dependencyDomService;
|
|
33
|
+
optionChangesService;
|
|
34
|
+
cdr;
|
|
35
|
+
navigationService;
|
|
36
|
+
wrapperClass = true;
|
|
45
37
|
get taskIndexAttribute() {
|
|
46
38
|
return this.index;
|
|
47
39
|
}
|
|
40
|
+
/**
|
|
41
|
+
* Points to the `.k-task` element of the template (present in all three task types).
|
|
42
|
+
*/
|
|
43
|
+
taskElement;
|
|
44
|
+
dataItem;
|
|
45
|
+
index;
|
|
46
|
+
level;
|
|
47
|
+
renderDependencyDragClues;
|
|
48
|
+
selectable;
|
|
49
|
+
isSelected;
|
|
50
|
+
// better to be set in a service and retrieved from it whenever needed?
|
|
51
|
+
activeView;
|
|
52
|
+
taskClass;
|
|
48
53
|
get ariaSelected() {
|
|
49
54
|
// assigning null will not render the attribute at all (desired in selectable="false" mode)
|
|
50
55
|
return this.selectable ? String(this.isSelected(this.dataItem)) : null;
|
|
@@ -104,6 +109,20 @@ export class GanttTaskBase {
|
|
|
104
109
|
// fall-back to 0 in case no completionRatio is provided
|
|
105
110
|
return isNumber(overlayWidth) ? overlayWidth : 0;
|
|
106
111
|
}
|
|
112
|
+
subscriptions = new Subscription();
|
|
113
|
+
constructor(mapper, // left public to be available for usage in the templates
|
|
114
|
+
timelineViewService, dependencyDomService, optionChangesService, cdr, navigationService) {
|
|
115
|
+
this.mapper = mapper;
|
|
116
|
+
this.timelineViewService = timelineViewService;
|
|
117
|
+
this.dependencyDomService = dependencyDomService;
|
|
118
|
+
this.optionChangesService = optionChangesService;
|
|
119
|
+
this.cdr = cdr;
|
|
120
|
+
this.navigationService = navigationService;
|
|
121
|
+
this.subscriptions.add(this.optionChangesService.viewChanges
|
|
122
|
+
.subscribe(() => this.cdr.markForCheck()));
|
|
123
|
+
this.subscriptions.add(this.navigationService.taskStatusChanges
|
|
124
|
+
.subscribe(this.updateActiveState.bind(this)));
|
|
125
|
+
}
|
|
107
126
|
ngOnChanges(changes) {
|
|
108
127
|
if (isPresent(changes['dataItem'])) {
|
|
109
128
|
if (isPresent(changes['dataItem'].previousValue)) {
|
|
@@ -136,10 +155,10 @@ export class GanttTaskBase {
|
|
|
136
155
|
this.taskElement.nativeElement.classList.remove(FOCUSED_CLASS);
|
|
137
156
|
}
|
|
138
157
|
}
|
|
158
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GanttTaskBase, deps: [{ token: i1.MappingService }, { token: i2.TimelineViewService }, { token: i3.DependencyDomService }, { token: i4.OptionChangesService }, { token: i0.ChangeDetectorRef }, { token: i5.NavigationService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
159
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: GanttTaskBase, selector: "kendo-gantt-task-base", inputs: { dataItem: "dataItem", index: "index", level: "level", renderDependencyDragClues: "renderDependencyDragClues", selectable: "selectable", isSelected: "isSelected", activeView: "activeView", taskClass: "taskClass" }, host: { properties: { "class.k-task-wrap": "this.wrapperClass", "attr.data-task-index": "this.taskIndexAttribute", "style.left.px": "this.taskOffset" } }, viewQueries: [{ propertyName: "taskElement", first: true, predicate: ["task"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0 });
|
|
139
160
|
}
|
|
140
|
-
|
|
141
|
-
GanttTaskBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: GanttTaskBase, selector: "kendo-gantt-task-base", inputs: { dataItem: "dataItem", index: "index", level: "level", renderDependencyDragClues: "renderDependencyDragClues", selectable: "selectable", isSelected: "isSelected", activeView: "activeView", taskClass: "taskClass" }, host: { properties: { "class.k-task-wrap": "this.wrapperClass", "attr.data-task-index": "this.taskIndexAttribute", "style.left.px": "this.taskOffset" } }, viewQueries: [{ propertyName: "taskElement", first: true, predicate: ["task"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0 });
|
|
142
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GanttTaskBase, decorators: [{
|
|
161
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GanttTaskBase, decorators: [{
|
|
143
162
|
type: Directive,
|
|
144
163
|
args: [{
|
|
145
164
|
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
@@ -26,24 +26,26 @@ import * as i6 from "../navigation/navigation.service";
|
|
|
26
26
|
* @hidden
|
|
27
27
|
*/
|
|
28
28
|
export class GanttTaskComponent extends GanttTaskBase {
|
|
29
|
+
editService;
|
|
30
|
+
taskContentTemplate;
|
|
31
|
+
taskTemplate;
|
|
32
|
+
xIcon = xIcon;
|
|
33
|
+
touchEnabled = touchEnabled;
|
|
29
34
|
constructor(editService, mapper, timelineViewService, dependencyDomService, optionChangesService, cdr, navigationService) {
|
|
30
35
|
super(mapper, timelineViewService, dependencyDomService, optionChangesService, cdr, navigationService);
|
|
31
36
|
this.editService = editService;
|
|
32
|
-
this.xIcon = xIcon;
|
|
33
|
-
this.touchEnabled = touchEnabled;
|
|
34
37
|
}
|
|
35
38
|
onTaskDelete() {
|
|
36
39
|
this.editService.dataItem = this.dataItem;
|
|
37
40
|
this.editService.taskDelete.next(this.dataItem);
|
|
38
41
|
}
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
], usesInheritance: true, ngImport: i0, template: `
|
|
42
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GanttTaskComponent, deps: [{ token: i1.EditService }, { token: i2.MappingService }, { token: i3.TimelineViewService }, { token: i4.DependencyDomService }, { token: i5.OptionChangesService }, { token: i0.ChangeDetectorRef }, { token: i6.NavigationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
43
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GanttTaskComponent, isStandalone: true, selector: "kendo-gantt-task", inputs: { taskContentTemplate: "taskContentTemplate", taskTemplate: "taskTemplate" }, providers: [
|
|
44
|
+
{
|
|
45
|
+
provide: GanttTaskBase,
|
|
46
|
+
useExisting: forwardRef(() => GanttTaskComponent)
|
|
47
|
+
}
|
|
48
|
+
], usesInheritance: true, ngImport: i0, template: `
|
|
47
49
|
<div
|
|
48
50
|
#task
|
|
49
51
|
class="k-task k-task-single"
|
|
@@ -115,7 +117,8 @@ GanttTaskComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ver
|
|
|
115
117
|
</div>
|
|
116
118
|
</ng-container>
|
|
117
119
|
`, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
|
|
118
|
-
|
|
120
|
+
}
|
|
121
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GanttTaskComponent, decorators: [{
|
|
119
122
|
type: Component,
|
|
120
123
|
args: [{
|
|
121
124
|
selector: 'kendo-gantt-task',
|
|
@@ -18,10 +18,8 @@ import * as i2 from "../common/mapping.service";
|
|
|
18
18
|
* @hidden
|
|
19
19
|
*/
|
|
20
20
|
export class GanttTasksTableBodyComponent {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
this.mapper = mapper;
|
|
24
|
-
}
|
|
21
|
+
dependencyDomService;
|
|
22
|
+
mapper;
|
|
25
23
|
set timelineRow(timelineRow) {
|
|
26
24
|
// register the row value only when the first row is rendered
|
|
27
25
|
// with server-side data-binding, the rows rendering could be delayed
|
|
@@ -29,12 +27,25 @@ export class GanttTasksTableBodyComponent {
|
|
|
29
27
|
this.dependencyDomService.registerTimelineRow(timelineRow.nativeElement);
|
|
30
28
|
}
|
|
31
29
|
}
|
|
30
|
+
selectable;
|
|
31
|
+
rows;
|
|
32
|
+
activeView;
|
|
33
|
+
taskContentTemplate;
|
|
34
|
+
taskTemplate;
|
|
35
|
+
summaryTaskTemplate;
|
|
36
|
+
taskClass;
|
|
37
|
+
isExpanded;
|
|
38
|
+
isTaskSelected;
|
|
39
|
+
renderDependencyDragClues;
|
|
40
|
+
constructor(dependencyDomService, mapper) {
|
|
41
|
+
this.dependencyDomService = dependencyDomService;
|
|
42
|
+
this.mapper = mapper;
|
|
43
|
+
}
|
|
32
44
|
isMileStone(item) {
|
|
33
45
|
return !item.hasChildren && isEqual(this.mapper.extractFromTask(item.data, 'start'), this.mapper.extractFromTask(item.data, 'end'));
|
|
34
46
|
}
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
GanttTasksTableBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: GanttTasksTableBodyComponent, isStandalone: true, selector: "[kendoGanttTasksTableBody]", inputs: { selectable: "selectable", rows: "rows", activeView: "activeView", taskContentTemplate: "taskContentTemplate", taskTemplate: "taskTemplate", summaryTaskTemplate: "summaryTaskTemplate", taskClass: "taskClass", isExpanded: "isExpanded", isTaskSelected: "isTaskSelected", renderDependencyDragClues: "renderDependencyDragClues" }, viewQueries: [{ propertyName: "timelineRow", first: true, predicate: ["timelineRow"], descendants: true }], ngImport: i0, template: `
|
|
47
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GanttTasksTableBodyComponent, deps: [{ token: i1.DependencyDomService }, { token: i2.MappingService }], target: i0.ɵɵFactoryTarget.Component });
|
|
48
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GanttTasksTableBodyComponent, isStandalone: true, selector: "[kendoGanttTasksTableBody]", inputs: { selectable: "selectable", rows: "rows", activeView: "activeView", taskContentTemplate: "taskContentTemplate", taskTemplate: "taskTemplate", summaryTaskTemplate: "summaryTaskTemplate", taskClass: "taskClass", isExpanded: "isExpanded", isTaskSelected: "isTaskSelected", renderDependencyDragClues: "renderDependencyDragClues" }, viewQueries: [{ propertyName: "timelineRow", first: true, predicate: ["timelineRow"], descendants: true }], ngImport: i0, template: `
|
|
38
49
|
<tr class="k-table-row" #timelineRow *ngFor="let item of rows; let index = index">
|
|
39
50
|
<td class="k-table-td">
|
|
40
51
|
<kendo-gantt-milestone-task
|
|
@@ -82,7 +93,8 @@ GanttTasksTableBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14
|
|
|
82
93
|
</td>
|
|
83
94
|
</tr>
|
|
84
95
|
`, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: GanttMilestoneTaskComponent, selector: "kendo-gantt-milestone-task" }, { kind: "component", type: GanttSummaryTaskComponent, selector: "kendo-gantt-summary-task", inputs: ["template", "isExpanded"] }, { kind: "component", type: GanttTaskComponent, selector: "kendo-gantt-task", inputs: ["taskContentTemplate", "taskTemplate"] }] });
|
|
85
|
-
|
|
96
|
+
}
|
|
97
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GanttTasksTableBodyComponent, decorators: [{
|
|
86
98
|
type: Component,
|
|
87
99
|
args: [{
|
|
88
100
|
// eslint-disable-next-line @angular-eslint/component-selector
|
|
@@ -10,11 +10,14 @@ import * as i0 from "@angular/core";
|
|
|
10
10
|
* @hidden
|
|
11
11
|
*/
|
|
12
12
|
export class ScrollSyncService {
|
|
13
|
+
ngZone;
|
|
14
|
+
changes = new Subject();
|
|
15
|
+
elements = [];
|
|
16
|
+
subscriptions = new Subscription();
|
|
17
|
+
syncingTimeline;
|
|
18
|
+
syncingTreeList;
|
|
13
19
|
constructor(ngZone) {
|
|
14
20
|
this.ngZone = ngZone;
|
|
15
|
-
this.changes = new Subject();
|
|
16
|
-
this.elements = [];
|
|
17
|
-
this.subscriptions = new Subscription();
|
|
18
21
|
this.subscriptions.add(this.changes.subscribe(args => {
|
|
19
22
|
this.scroll(args);
|
|
20
23
|
}));
|
|
@@ -72,9 +75,9 @@ export class ScrollSyncService {
|
|
|
72
75
|
}
|
|
73
76
|
});
|
|
74
77
|
}
|
|
78
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ScrollSyncService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
79
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ScrollSyncService });
|
|
75
80
|
}
|
|
76
|
-
|
|
77
|
-
ScrollSyncService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ScrollSyncService });
|
|
78
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ScrollSyncService, decorators: [{
|
|
81
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ScrollSyncService, decorators: [{
|
|
79
82
|
type: Injectable
|
|
80
83
|
}], ctorParameters: function () { return [{ type: i0.NgZone }]; } });
|
|
@@ -14,11 +14,17 @@ import * as i1 from "./timeline-scroll.service";
|
|
|
14
14
|
* @hidden
|
|
15
15
|
*/
|
|
16
16
|
export class TimelineScrollableDirective {
|
|
17
|
+
timelineScrollableContainer;
|
|
18
|
+
scrollService;
|
|
19
|
+
zone;
|
|
20
|
+
scrollSettings;
|
|
21
|
+
subscriptions = new Subscription();
|
|
22
|
+
verticalScrollInterval;
|
|
23
|
+
horizontalScrollInterval;
|
|
17
24
|
constructor(timelineScrollableContainer, scrollService, zone) {
|
|
18
25
|
this.timelineScrollableContainer = timelineScrollableContainer;
|
|
19
26
|
this.scrollService = scrollService;
|
|
20
27
|
this.zone = zone;
|
|
21
|
-
this.subscriptions = new Subscription();
|
|
22
28
|
this.subscriptions.add(this.scrollService.horizontalScroll
|
|
23
29
|
.subscribe(this.scrollHorizontallyTo.bind(this)));
|
|
24
30
|
this.subscriptions.add(this.scrollService.verticalScroll
|
|
@@ -63,10 +69,10 @@ export class TimelineScrollableDirective {
|
|
|
63
69
|
this.horizontalScrollInterval = null;
|
|
64
70
|
}
|
|
65
71
|
}
|
|
72
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TimelineScrollableDirective, deps: [{ token: i0.ElementRef }, { token: i1.TimelineScrollService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
|
|
73
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TimelineScrollableDirective, isStandalone: true, selector: "[kendoGanttTimelineScrollable]", inputs: { scrollSettings: "scrollSettings" }, ngImport: i0 });
|
|
66
74
|
}
|
|
67
|
-
|
|
68
|
-
TimelineScrollableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: TimelineScrollableDirective, isStandalone: true, selector: "[kendoGanttTimelineScrollable]", inputs: { scrollSettings: "scrollSettings" }, ngImport: i0 });
|
|
69
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TimelineScrollableDirective, decorators: [{
|
|
75
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TimelineScrollableDirective, decorators: [{
|
|
70
76
|
type: Directive,
|
|
71
77
|
args: [{
|
|
72
78
|
selector: '[kendoGanttTimelineScrollable]',
|
|
@@ -12,11 +12,9 @@ import * as i0 from "@angular/core";
|
|
|
12
12
|
* The scrolling is performed based on client (viewport) coordinates.
|
|
13
13
|
*/
|
|
14
14
|
export class TimelineScrollService {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
this.scrollCancel = new Subject();
|
|
19
|
-
}
|
|
15
|
+
horizontalScroll = new Subject();
|
|
16
|
+
verticalScroll = new Subject();
|
|
17
|
+
scrollCancel = new Subject();
|
|
20
18
|
ngOnDestroy() {
|
|
21
19
|
this.horizontalScroll.complete();
|
|
22
20
|
this.verticalScroll.complete();
|
|
@@ -31,9 +29,9 @@ export class TimelineScrollService {
|
|
|
31
29
|
requestScrollCancel() {
|
|
32
30
|
this.scrollCancel.next();
|
|
33
31
|
}
|
|
32
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TimelineScrollService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
33
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TimelineScrollService });
|
|
34
34
|
}
|
|
35
|
-
|
|
36
|
-
TimelineScrollService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TimelineScrollService });
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TimelineScrollService, decorators: [{
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TimelineScrollService, decorators: [{
|
|
38
36
|
type: Injectable
|
|
39
37
|
}] });
|
|
@@ -13,17 +13,7 @@ import * as i1 from "../gantt.component";
|
|
|
13
13
|
* ([see example]({% slug selection_gantt %}#toc-built-in-directive))
|
|
14
14
|
*/
|
|
15
15
|
export class SelectableDirective {
|
|
16
|
-
|
|
17
|
-
this.gantt = gantt;
|
|
18
|
-
/**
|
|
19
|
-
* Fires when the selected keys are changed.
|
|
20
|
-
*/
|
|
21
|
-
this.selectedKeysChange = new EventEmitter();
|
|
22
|
-
this.state = new Set();
|
|
23
|
-
this.isSelected = this.isSelected.bind(this);
|
|
24
|
-
this.selectionChange = this.selectionChange.bind(this);
|
|
25
|
-
this.selectable = true;
|
|
26
|
-
}
|
|
16
|
+
gantt;
|
|
27
17
|
/**
|
|
28
18
|
* @hidden
|
|
29
19
|
*/
|
|
@@ -51,6 +41,10 @@ export class SelectableDirective {
|
|
|
51
41
|
this.state = new Set(keys);
|
|
52
42
|
this.gantt.updateView();
|
|
53
43
|
}
|
|
44
|
+
/**
|
|
45
|
+
* Fires when the selected keys are changed.
|
|
46
|
+
*/
|
|
47
|
+
selectedKeysChange = new EventEmitter();
|
|
54
48
|
/**
|
|
55
49
|
* The field name or a function that specifies the data item unique key identifier.
|
|
56
50
|
* By default, the string field `id` is used.
|
|
@@ -66,6 +60,16 @@ export class SelectableDirective {
|
|
|
66
60
|
get keyGetter() {
|
|
67
61
|
return this._keyGetter || this.gantt.idGetter;
|
|
68
62
|
}
|
|
63
|
+
selectionSubscription;
|
|
64
|
+
state = new Set();
|
|
65
|
+
lastChange;
|
|
66
|
+
_keyGetter;
|
|
67
|
+
constructor(gantt) {
|
|
68
|
+
this.gantt = gantt;
|
|
69
|
+
this.isSelected = this.isSelected.bind(this);
|
|
70
|
+
this.selectionChange = this.selectionChange.bind(this);
|
|
71
|
+
this.selectable = true;
|
|
72
|
+
}
|
|
69
73
|
ngOnDestroy() {
|
|
70
74
|
this.unsubscribeSelection();
|
|
71
75
|
}
|
|
@@ -93,10 +97,10 @@ export class SelectableDirective {
|
|
|
93
97
|
this.selectionSubscription = null;
|
|
94
98
|
}
|
|
95
99
|
}
|
|
100
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectableDirective, deps: [{ token: i1.GanttComponent }], target: i0.ɵɵFactoryTarget.Directive });
|
|
101
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SelectableDirective, isStandalone: true, selector: "[kendoGanttSelectable]", inputs: { selectable: "selectable", selectedKeys: "selectedKeys", itemKey: "itemKey" }, outputs: { selectedKeysChange: "selectedKeysChange" }, exportAs: ["kendoGanttSelectable"], ngImport: i0 });
|
|
96
102
|
}
|
|
97
|
-
|
|
98
|
-
SelectableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SelectableDirective, isStandalone: true, selector: "[kendoGanttSelectable]", inputs: { selectable: "selectable", selectedKeys: "selectedKeys", itemKey: "itemKey" }, outputs: { selectedKeysChange: "selectedKeysChange" }, exportAs: ["kendoGanttSelectable"], ngImport: i0 });
|
|
99
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SelectableDirective, decorators: [{
|
|
103
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectableDirective, decorators: [{
|
|
100
104
|
type: Directive,
|
|
101
105
|
args: [{
|
|
102
106
|
exportAs: 'kendoGanttSelectable',
|
|
@@ -34,13 +34,14 @@ import * as i0 from "@angular/core";
|
|
|
34
34
|
* ```
|
|
35
35
|
*/
|
|
36
36
|
export class GanttSummaryTaskTemplateDirective {
|
|
37
|
+
templateRef;
|
|
37
38
|
constructor(templateRef) {
|
|
38
39
|
this.templateRef = templateRef;
|
|
39
40
|
}
|
|
41
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GanttSummaryTaskTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
42
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: GanttSummaryTaskTemplateDirective, isStandalone: true, selector: "[kendoGanttSummaryTaskTemplate]", ngImport: i0 });
|
|
40
43
|
}
|
|
41
|
-
|
|
42
|
-
GanttSummaryTaskTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: GanttSummaryTaskTemplateDirective, isStandalone: true, selector: "[kendoGanttSummaryTaskTemplate]", ngImport: i0 });
|
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GanttSummaryTaskTemplateDirective, decorators: [{
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GanttSummaryTaskTemplateDirective, decorators: [{
|
|
44
45
|
type: Directive,
|
|
45
46
|
args: [{
|
|
46
47
|
selector: '[kendoGanttSummaryTaskTemplate]',
|
|
@@ -29,13 +29,14 @@ import * as i0 from "@angular/core";
|
|
|
29
29
|
* ```
|
|
30
30
|
*/
|
|
31
31
|
export class GanttTaskContentTemplateDirective {
|
|
32
|
+
templateRef;
|
|
32
33
|
constructor(templateRef) {
|
|
33
34
|
this.templateRef = templateRef;
|
|
34
35
|
}
|
|
36
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GanttTaskContentTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
37
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: GanttTaskContentTemplateDirective, isStandalone: true, selector: "[kendoGanttTaskContentTemplate]", ngImport: i0 });
|
|
35
38
|
}
|
|
36
|
-
|
|
37
|
-
GanttTaskContentTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: GanttTaskContentTemplateDirective, isStandalone: true, selector: "[kendoGanttTaskContentTemplate]", ngImport: i0 });
|
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GanttTaskContentTemplateDirective, decorators: [{
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GanttTaskContentTemplateDirective, decorators: [{
|
|
39
40
|
type: Directive,
|
|
40
41
|
args: [{
|
|
41
42
|
selector: '[kendoGanttTaskContentTemplate]',
|