@progress/kendo-angular-gantt 0.1.5 → 0.2.0-dev.202111231320
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 -76
- package/dist/cdn/main.js +23 -1
- package/dist/es/columns/column.component.js +5 -0
- package/dist/es/columns/columns.js +1 -0
- package/dist/es/columns/edit-template.directive.js +34 -0
- package/dist/es/columns/span-column.component.js +6 -0
- package/dist/es/editing/edit-dialog.component.js +44 -0
- package/dist/es/editing/edit.service.js +39 -0
- package/dist/es/editing/util.js +17 -0
- package/dist/es/gantt.component.js +309 -8
- package/dist/es/gantt.module.js +60 -5
- package/dist/es/index.js +6 -0
- package/dist/es/localization/custom-messages.component.js +44 -0
- package/dist/es/localization/localized-messages.directive.js +35 -0
- package/dist/es/localization/messages.js +246 -0
- package/dist/es/localization/treelist-messages.directive.js +31 -0
- package/dist/es/models/events/cell-click-event.interface.js +4 -0
- package/dist/es/models/events/cell-close-event.interface.js +19 -0
- package/dist/es/models/events/preventable-event.js +32 -0
- package/dist/es/models/events/task-click-event.interface.js +4 -0
- package/dist/es/models/events/task-edit-event.interface.js +4 -0
- package/dist/es/models/gantt-task-model-fields.interface.js +2 -1
- package/dist/es/package-metadata.js +1 -1
- package/dist/es/rendering/gantt-milestone-task.component.js +1 -1
- package/dist/es/rendering/gantt-summary-task.component.js +1 -1
- package/dist/es/rendering/gantt-task-base.js +4 -0
- package/dist/es/rendering/gantt-task.component.js +12 -4
- package/dist/es/rendering/gantt-tasks-table-body.component.js +5 -1
- package/dist/es/toolbar/view-selector.component.js +7 -4
- package/dist/es/utils.js +44 -1
- package/dist/es2015/columns/column.component.d.ts +2 -0
- package/dist/es2015/columns/column.component.js +5 -0
- package/dist/es2015/columns/columns.d.ts +1 -0
- package/dist/es2015/columns/columns.js +1 -0
- package/dist/es2015/columns/edit-template.directive.d.ts +23 -0
- package/dist/es2015/columns/edit-template.directive.js +33 -0
- package/dist/es2015/columns/span-column.component.d.ts +2 -0
- package/dist/es2015/columns/span-column.component.js +6 -0
- package/dist/es2015/editing/edit-dialog.component.d.ts +21 -0
- package/dist/es2015/editing/edit-dialog.component.js +86 -0
- package/dist/es2015/editing/edit.service.d.ts +20 -0
- package/dist/es2015/editing/edit.service.js +41 -0
- package/dist/es2015/editing/util.d.ts +10 -0
- package/dist/es2015/editing/util.js +17 -0
- package/dist/es2015/gantt.component.d.ts +180 -4
- package/dist/es2015/gantt.component.js +492 -8
- package/dist/es2015/gantt.module.d.ts +29 -1
- package/dist/es2015/gantt.module.js +60 -5
- package/dist/es2015/index.d.ts +6 -0
- package/dist/es2015/index.js +6 -0
- package/dist/es2015/index.metadata.json +1 -1
- package/dist/es2015/localization/custom-messages.component.d.ts +15 -0
- package/dist/es2015/localization/custom-messages.component.js +36 -0
- package/dist/es2015/localization/localized-messages.directive.d.ts +13 -0
- package/dist/es2015/localization/localized-messages.directive.js +31 -0
- package/dist/es2015/localization/messages.d.ts +246 -0
- package/dist/es2015/localization/messages.js +240 -0
- package/dist/es2015/localization/treelist-messages.directive.d.ts +14 -0
- package/dist/es2015/localization/treelist-messages.directive.js +29 -0
- package/dist/es2015/models/events/cell-click-event.interface.d.ts +20 -0
- package/dist/es2015/models/events/cell-click-event.interface.js +4 -0
- package/dist/es2015/models/events/cell-close-event.interface.d.ts +48 -0
- package/dist/es2015/models/events/cell-close-event.interface.js +14 -0
- package/dist/es2015/models/events/preventable-event.d.ts +24 -0
- package/dist/es2015/models/events/preventable-event.js +30 -0
- package/dist/es2015/models/events/task-click-event.interface.d.ts +22 -0
- package/dist/es2015/models/events/task-click-event.interface.js +4 -0
- package/dist/es2015/models/events/task-edit-event.interface.d.ts +46 -0
- package/dist/es2015/models/events/task-edit-event.interface.js +4 -0
- package/dist/es2015/models/gantt-task-model-fields.interface.d.ts +1 -0
- package/dist/es2015/models/gantt-task-model-fields.interface.js +2 -1
- package/dist/es2015/package-metadata.js +1 -1
- package/dist/es2015/rendering/gantt-milestone-task.component.js +1 -0
- package/dist/es2015/rendering/gantt-summary-task.component.js +1 -0
- package/dist/es2015/rendering/gantt-task-base.d.ts +1 -0
- package/dist/es2015/rendering/gantt-task-base.js +4 -0
- package/dist/es2015/rendering/gantt-task.component.d.ts +4 -1
- package/dist/es2015/rendering/gantt-task.component.js +17 -2
- package/dist/es2015/rendering/gantt-tasks-table-body.component.d.ts +1 -0
- package/dist/es2015/rendering/gantt-tasks-table-body.component.js +8 -1
- package/dist/es2015/toolbar/view-selector.component.d.ts +3 -0
- package/dist/es2015/toolbar/view-selector.component.js +7 -7
- package/dist/es2015/utils.d.ts +34 -0
- package/dist/es2015/utils.js +44 -1
- package/dist/fesm2015/index.js +1080 -23
- package/dist/fesm5/index.js +865 -24
- package/dist/npm/columns/column.component.js +5 -0
- package/dist/npm/columns/columns.js +2 -0
- package/dist/npm/columns/edit-template.directive.js +36 -0
- package/dist/npm/columns/span-column.component.js +6 -0
- package/dist/npm/editing/edit-dialog.component.js +46 -0
- package/dist/npm/editing/edit.service.js +41 -0
- package/dist/npm/editing/util.js +19 -0
- package/dist/npm/gantt.component.js +306 -5
- package/dist/npm/gantt.module.js +59 -4
- package/dist/npm/index.js +12 -0
- package/dist/npm/localization/custom-messages.component.js +46 -0
- package/dist/npm/localization/localized-messages.directive.js +37 -0
- package/dist/npm/localization/messages.js +248 -0
- package/dist/npm/localization/treelist-messages.directive.js +33 -0
- package/dist/npm/models/events/cell-click-event.interface.js +6 -0
- package/dist/npm/models/events/cell-close-event.interface.js +21 -0
- package/dist/npm/models/events/preventable-event.js +34 -0
- package/dist/npm/models/events/task-click-event.interface.js +6 -0
- package/dist/npm/models/events/task-edit-event.interface.js +6 -0
- package/dist/npm/models/gantt-task-model-fields.interface.js +2 -1
- package/dist/npm/package-metadata.js +1 -1
- package/dist/npm/rendering/gantt-milestone-task.component.js +1 -1
- package/dist/npm/rendering/gantt-summary-task.component.js +1 -1
- package/dist/npm/rendering/gantt-task-base.js +4 -0
- package/dist/npm/rendering/gantt-task.component.js +12 -4
- package/dist/npm/rendering/gantt-tasks-table-body.component.js +5 -1
- package/dist/npm/toolbar/view-selector.component.js +7 -4
- package/dist/npm/utils.js +43 -0
- package/dist/systemjs/kendo-angular-gantt.js +1 -1
- package/package.json +5 -2
package/dist/fesm2015/index.js
CHANGED
|
@@ -7,15 +7,21 @@ import { Input, EventEmitter, Injectable, Directive, Optional, TemplateRef, Quer
|
|
|
7
7
|
import { ColumnBase, ColumnComponent, ColumnGroupComponent, SpanColumnComponent, TreeListComponent, DataBoundTreeComponent, ExpandableTreeComponent, FlatBindingDirective, HierarchyBindingDirective, ExpandableDirective, TreeListModule } from '@progress/kendo-angular-treelist';
|
|
8
8
|
import { of, Subject, Subscription, fromEvent } from 'rxjs';
|
|
9
9
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
10
|
-
import { isDocumentAvailable, anyChanged } from '@progress/kendo-angular-common';
|
|
10
|
+
import { isDocumentAvailable, closestInScope, matchesClasses, anyChanged, hasObservers, EventsModule } from '@progress/kendo-angular-common';
|
|
11
11
|
import { IntlService } from '@progress/kendo-angular-intl';
|
|
12
12
|
import { orderBy } from '@progress/kendo-data-query';
|
|
13
13
|
import { cloneDate, addWeeks, firstDayInWeek, addDays, getDate, lastDayOfMonth, firstDayOfMonth, addMonths, isEqualDate, MS_PER_HOUR, MS_PER_DAY } from '@progress/kendo-date-math';
|
|
14
14
|
import { getter } from '@progress/kendo-common';
|
|
15
15
|
import { map, distinctUntilChanged, take, filter, switchMap } from 'rxjs/operators';
|
|
16
|
+
import { LocalizationService, ComponentMessages, L10N_PREFIX } from '@progress/kendo-angular-l10n';
|
|
16
17
|
import { CommonModule } from '@angular/common';
|
|
17
18
|
import { SplitterModule } from '@progress/kendo-angular-layout';
|
|
18
19
|
import { ButtonsModule } from '@progress/kendo-angular-buttons';
|
|
20
|
+
import { DialogModule } from '@progress/kendo-angular-dialog';
|
|
21
|
+
import { FormGroup, ReactiveFormsModule } from '@angular/forms';
|
|
22
|
+
import { LabelModule } from '@progress/kendo-angular-label';
|
|
23
|
+
import { InputsModule } from '@progress/kendo-angular-inputs';
|
|
24
|
+
import { DateInputsModule } from '@progress/kendo-angular-dateinputs';
|
|
19
25
|
|
|
20
26
|
/**
|
|
21
27
|
* @hidden
|
|
@@ -24,7 +30,7 @@ const packageMetadata = {
|
|
|
24
30
|
name: '@progress/kendo-angular-gantt',
|
|
25
31
|
productName: 'Kendo UI for Angular',
|
|
26
32
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
27
|
-
publishDate:
|
|
33
|
+
publishDate: 1637673280,
|
|
28
34
|
version: '',
|
|
29
35
|
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'
|
|
30
36
|
};
|
|
@@ -250,6 +256,33 @@ HeaderTemplateDirective = __decorate([
|
|
|
250
256
|
__metadata("design:paramtypes", [TemplateRef])
|
|
251
257
|
], HeaderTemplateDirective);
|
|
252
258
|
|
|
259
|
+
/**
|
|
260
|
+
* Represents the column edit-cell template of the Gantt.
|
|
261
|
+
* Helps to customize the content of the edited cells. To define the cell template, nest an `<ng-template>`
|
|
262
|
+
* tag with the `kendoGanttEditTemplate` directive inside a `<kendo-gantt-column>` tag.
|
|
263
|
+
*
|
|
264
|
+
* The template context contains the following fields:
|
|
265
|
+
* - `column`—The current column instance.
|
|
266
|
+
* - `dataItem`—The current data item.
|
|
267
|
+
* - `cellContext`—An object used to pass context information to built-in directives.
|
|
268
|
+
* - `formGroup`—The current [`FormGroup`]({{ site.data.urls.angular['formgroupapi'] }}).
|
|
269
|
+
* If you use the Gantt inside [Template-Driven Forms]({{ site.data.urls.angular['forms'] }}), it will be `undefined`.
|
|
270
|
+
* - `isNew`—The state of the current item.
|
|
271
|
+
* - `rowIndex`—The current row index. If inside a new item row, `rowIndex` is `-1`.
|
|
272
|
+
*/
|
|
273
|
+
let EditTemplateDirective = class EditTemplateDirective {
|
|
274
|
+
constructor(templateRef) {
|
|
275
|
+
this.templateRef = templateRef;
|
|
276
|
+
}
|
|
277
|
+
};
|
|
278
|
+
EditTemplateDirective = __decorate([
|
|
279
|
+
Directive({
|
|
280
|
+
selector: '[kendoGanttEditTemplate]'
|
|
281
|
+
}),
|
|
282
|
+
__param(0, Optional()),
|
|
283
|
+
__metadata("design:paramtypes", [TemplateRef])
|
|
284
|
+
], EditTemplateDirective);
|
|
285
|
+
|
|
253
286
|
var GanttColumnComponent_1;
|
|
254
287
|
let GanttColumnComponent = GanttColumnComponent_1 = class GanttColumnComponent extends ColumnComponent {
|
|
255
288
|
constructor(options, parent) {
|
|
@@ -305,6 +338,10 @@ __decorate([
|
|
|
305
338
|
ContentChild(CellTemplateDirective, { static: false }),
|
|
306
339
|
__metadata("design:type", CellTemplateDirective)
|
|
307
340
|
], GanttColumnComponent.prototype, "template", void 0);
|
|
341
|
+
__decorate([
|
|
342
|
+
ContentChild(EditTemplateDirective, { static: false }),
|
|
343
|
+
__metadata("design:type", EditTemplateDirective)
|
|
344
|
+
], GanttColumnComponent.prototype, "editTemplate", void 0);
|
|
308
345
|
__decorate([
|
|
309
346
|
ContentChild(FilterCellTemplateDirective, { static: false }),
|
|
310
347
|
__metadata("design:type", FilterCellTemplateDirective)
|
|
@@ -496,6 +533,7 @@ let GanttSpanColumnComponent = GanttSpanColumnComponent_1 = class GanttSpanColum
|
|
|
496
533
|
*/
|
|
497
534
|
this.childColumns = new QueryList();
|
|
498
535
|
this.template = new QueryList();
|
|
536
|
+
this.editTemplate = new QueryList();
|
|
499
537
|
}
|
|
500
538
|
ngOnChanges() {
|
|
501
539
|
this.options.notifyColumnChanges();
|
|
@@ -509,6 +547,10 @@ __decorate([
|
|
|
509
547
|
ContentChildren(CellTemplateDirective, { descendants: false }),
|
|
510
548
|
__metadata("design:type", QueryList)
|
|
511
549
|
], GanttSpanColumnComponent.prototype, "template", void 0);
|
|
550
|
+
__decorate([
|
|
551
|
+
ContentChildren(EditTemplateDirective, { descendants: false }),
|
|
552
|
+
__metadata("design:type", QueryList)
|
|
553
|
+
], GanttSpanColumnComponent.prototype, "editTemplate", void 0);
|
|
512
554
|
__decorate([
|
|
513
555
|
Input(),
|
|
514
556
|
__metadata("design:type", Boolean)
|
|
@@ -681,6 +723,40 @@ const isColumnGroup = (column) => column.isColumnGroup;
|
|
|
681
723
|
* @hidden
|
|
682
724
|
*/
|
|
683
725
|
const isNumber = (contender) => typeof contender === 'number' && !isNaN(contender);
|
|
726
|
+
/**
|
|
727
|
+
* @hidden
|
|
728
|
+
*
|
|
729
|
+
* Gets the closest timeline task element index from an event target.
|
|
730
|
+
* Uses the `data-task-index` attribute assigned to each task.
|
|
731
|
+
* Restricts the search up to the provided gantt element from the second param.
|
|
732
|
+
*/
|
|
733
|
+
const getClosestTaskIndex = (element, gantt) => {
|
|
734
|
+
const task = closestInScope(element, matchesClasses('k-task'), gantt);
|
|
735
|
+
if (!isPresent(task)) {
|
|
736
|
+
return null;
|
|
737
|
+
}
|
|
738
|
+
return Number(task.getAttribute('data-task-index'));
|
|
739
|
+
};
|
|
740
|
+
/**
|
|
741
|
+
* @hidden
|
|
742
|
+
*
|
|
743
|
+
* Checks whether the queried item or its parent items has a `k-task` selector.
|
|
744
|
+
* Restricts the search up to the provided gantt element from the second param.
|
|
745
|
+
*/
|
|
746
|
+
const isTask = (contender, gantt) => {
|
|
747
|
+
const task = closestInScope(contender, matchesClasses('k-task'), gantt);
|
|
748
|
+
return isPresent(task);
|
|
749
|
+
};
|
|
750
|
+
/**
|
|
751
|
+
* @hidden
|
|
752
|
+
*
|
|
753
|
+
* Checks whether the queried item or its parent items has a `k-task-actions` selector - used for the clear button.
|
|
754
|
+
* Restricts the search up to the provided gantt element from the second param.
|
|
755
|
+
*/
|
|
756
|
+
const isClearButton = (contender, gantt) => {
|
|
757
|
+
const clearButtonContainer = closestInScope(contender, matchesClasses('k-task-actions'), gantt);
|
|
758
|
+
return isPresent(clearButtonContainer);
|
|
759
|
+
};
|
|
684
760
|
|
|
685
761
|
const DAY_FORMAT = 'E d/MM';
|
|
686
762
|
const HOUR_FORMAT = 'HH:mm aa';
|
|
@@ -845,7 +921,8 @@ const DEFAULT_TASK_MODEL_FIELDS = Object.freeze({
|
|
|
845
921
|
start: 'start',
|
|
846
922
|
end: 'end',
|
|
847
923
|
title: 'title',
|
|
848
|
-
completionRatio: 'completionRatio'
|
|
924
|
+
completionRatio: 'completionRatio',
|
|
925
|
+
children: 'children'
|
|
849
926
|
});
|
|
850
927
|
|
|
851
928
|
/**
|
|
@@ -1224,6 +1301,40 @@ DependencyDomService = __decorate([
|
|
|
1224
1301
|
__metadata("design:paramtypes", [MappingService])
|
|
1225
1302
|
], DependencyDomService);
|
|
1226
1303
|
|
|
1304
|
+
/**
|
|
1305
|
+
* @hidden
|
|
1306
|
+
*/
|
|
1307
|
+
let EditService = class EditService {
|
|
1308
|
+
/**
|
|
1309
|
+
* @hidden
|
|
1310
|
+
*/
|
|
1311
|
+
constructor() {
|
|
1312
|
+
this.showEditingDialog = new Subject();
|
|
1313
|
+
this.showConfirmationDialog = new Subject();
|
|
1314
|
+
this.editEvent = new Subject();
|
|
1315
|
+
}
|
|
1316
|
+
createEditDialog(dataItem, formGroup) {
|
|
1317
|
+
this.dataItem = dataItem;
|
|
1318
|
+
this.formGroup = formGroup;
|
|
1319
|
+
this.showEditingDialog.next(true);
|
|
1320
|
+
}
|
|
1321
|
+
closeEditDialog() {
|
|
1322
|
+
this.showEditingDialog.next(false);
|
|
1323
|
+
this.dataItem = undefined;
|
|
1324
|
+
this.formGroup = undefined;
|
|
1325
|
+
}
|
|
1326
|
+
triggerEditEvent(editResultType) {
|
|
1327
|
+
this.editEvent.next({
|
|
1328
|
+
formGroup: this.formGroup,
|
|
1329
|
+
dataItem: this.dataItem,
|
|
1330
|
+
editResultType
|
|
1331
|
+
});
|
|
1332
|
+
}
|
|
1333
|
+
};
|
|
1334
|
+
EditService = __decorate([
|
|
1335
|
+
Injectable()
|
|
1336
|
+
], EditService);
|
|
1337
|
+
|
|
1227
1338
|
/**
|
|
1228
1339
|
* @hidden
|
|
1229
1340
|
*/
|
|
@@ -1511,20 +1622,104 @@ __decorate([
|
|
|
1511
1622
|
__metadata("design:type", Number)
|
|
1512
1623
|
], ViewBase.prototype, "slotWidth", void 0);
|
|
1513
1624
|
|
|
1625
|
+
/**
|
|
1626
|
+
* @hidden
|
|
1627
|
+
*/
|
|
1628
|
+
const getEditItem = (dataItem, data, mapper) => {
|
|
1629
|
+
const treeListDataItem = data.find(item => mapper.extractFromTask(item.data, 'id') === mapper.extractFromTask(dataItem, 'id'));
|
|
1630
|
+
return mapPath(treeListDataItem);
|
|
1631
|
+
};
|
|
1632
|
+
const mapPath = (item) => ({
|
|
1633
|
+
dataItem: item.data,
|
|
1634
|
+
parent: item.parent.data ? mapPath(item.parent) : null
|
|
1635
|
+
});
|
|
1636
|
+
|
|
1514
1637
|
var GanttComponent_1;
|
|
1515
1638
|
const TREELIST_GROUP_COLUMNS_CLASS = 'k-gantt-treelist-nested-columns';
|
|
1516
1639
|
const DEFAULT_VIEW = 'week';
|
|
1517
1640
|
/**
|
|
1518
|
-
*
|
|
1641
|
+
* Represents the Kendo UI Gantt component for Angular.
|
|
1642
|
+
*
|
|
1643
|
+
* @example
|
|
1644
|
+
* ```ts-preview
|
|
1645
|
+
* _@Component({
|
|
1646
|
+
* selector: 'my-app',
|
|
1647
|
+
* template: `
|
|
1648
|
+
* <kendo-gantt
|
|
1649
|
+
* [style.height.px]="500"
|
|
1650
|
+
* [kendoGanttHierarchyBinding]="data"
|
|
1651
|
+
* childrenField="subtasks"
|
|
1652
|
+
* [dependencies]="dependencies">
|
|
1653
|
+
* <kendo-gantt-column
|
|
1654
|
+
* field="title"
|
|
1655
|
+
* title="Task"
|
|
1656
|
+
* [width]="200"
|
|
1657
|
+
* [expandable]="true"></kendo-gantt-column>
|
|
1658
|
+
* <kendo-gantt-column
|
|
1659
|
+
* field="start"
|
|
1660
|
+
* title="Start"
|
|
1661
|
+
* format="dd-MMM-yyyy"
|
|
1662
|
+
* [width]="120"></kendo-gantt-column>
|
|
1663
|
+
* <kendo-gantt-column
|
|
1664
|
+
* field="end"
|
|
1665
|
+
* title="End"
|
|
1666
|
+
* format="dd-MMM-yyyy"
|
|
1667
|
+
* [width]="120"></kendo-gantt-column>
|
|
1668
|
+
* <kendo-gantt-timeline-day-view></kendo-gantt-timeline-day-view>
|
|
1669
|
+
* <kendo-gantt-timeline-week-view></kendo-gantt-timeline-week-view>
|
|
1670
|
+
* <kendo-gantt-timeline-month-view></kendo-gantt-timeline-month-view>
|
|
1671
|
+
* </kendo-gantt>
|
|
1672
|
+
* `
|
|
1673
|
+
* })
|
|
1674
|
+
* class AppComponent {
|
|
1675
|
+
* public data: Task[] = [{
|
|
1676
|
+
* id: 7, title: 'Validation and R&D', start: new Date('2014-06-02T00:00:00.000Z'),
|
|
1677
|
+
* end: new Date('2014-06-19T00:00:00.000Z'), completionRatio: 0.45708333333333334,
|
|
1678
|
+
* subtasks: [
|
|
1679
|
+
* { id: 18, title: 'Project Kickoff', start: new Date('2014-06-02T00:00:00.000Z'),
|
|
1680
|
+
* end: new Date('2014-06-02T00:00:00.000Z'), completionRatio: 0.23 },
|
|
1681
|
+
* { id: 11, title: 'Research', start: new Date('2014-06-02T00:00:00.000Z'),
|
|
1682
|
+
* end: new Date('2014-06-07T00:00:00.000Z'), completionRatio: 0.5766666666666667,
|
|
1683
|
+
* subtasks: [
|
|
1684
|
+
* { id: 19, title: 'Validation', start: new Date('2014-06-02T00:00:00.000Z'),
|
|
1685
|
+
* end: new Date('2014-06-04T00:00:00.000Z'), completionRatio: 0.25 },
|
|
1686
|
+
* { id: 39, title: 'Specification', start: new Date('2014-06-04T00:00:00.000Z'),
|
|
1687
|
+
* end: new Date('2014-06-07T00:00:00.000Z'), completionRatio: 0.66 }]
|
|
1688
|
+
* }, { id: 13, title: 'Implementation', start: new Date('2014-06-08T00:00:00.000Z'),
|
|
1689
|
+
* end: new Date('2014-06-19T00:00:00.000Z'), completionRatio: 0.77,
|
|
1690
|
+
* subtasks: [
|
|
1691
|
+
* { id: 24, title: 'Prototype', start: new Date('2014-06-08T00:00:00.000Z'),
|
|
1692
|
+
* end: new Date('2014-06-14T00:00:00.000Z'), completionRatio: 0.77 },
|
|
1693
|
+
* { id: 29, title: 'UI and Interaction', start: new Date('2014-06-14T00:00:00.000Z'),
|
|
1694
|
+
* end: new Date('2014-06-19T00:00:00.000Z'), completionRatio: 0.6 }]
|
|
1695
|
+
* }, { id: 17, title: 'Release', start: new Date('2014-06-19T00:00:00.000Z'),
|
|
1696
|
+
* end: new Date('2014-06-19T00:00:00.000Z'), completionRatio: 0 }]
|
|
1697
|
+
* }];
|
|
1698
|
+
*
|
|
1699
|
+
* public dependencies: GanttDependency[] = [
|
|
1700
|
+
* { id: 528, fromId: 18, toId: 19, type: DependencyType.FS },
|
|
1701
|
+
* { id: 529, fromId: 19, toId: 39, type: DependencyType.FS },
|
|
1702
|
+
* { id: 535, fromId: 24, toId: 29, type: DependencyType.FS },
|
|
1703
|
+
* { id: 551, fromId: 13, toId: 29, type: DependencyType.FF },
|
|
1704
|
+
* { id: 777, fromId: 7, toId: 11, type: DependencyType.SF },
|
|
1705
|
+
* { id: 556, fromId: 39, toId: 24, type: DependencyType.FS },
|
|
1706
|
+
* { id: 546, fromId: 29, toId: 17, type: DependencyType.FS },
|
|
1707
|
+
* ];
|
|
1708
|
+
* }
|
|
1709
|
+
* ```
|
|
1519
1710
|
*/
|
|
1520
1711
|
let GanttComponent = GanttComponent_1 = class GanttComponent {
|
|
1521
|
-
constructor(timelineViewService, scrollSyncService, renderer, mapper, optionChangesService, dependencyDomService) {
|
|
1712
|
+
constructor(timelineViewService, scrollSyncService, renderer, mapper, optionChangesService, dependencyDomService, editService, localizationService, hostElement, zone) {
|
|
1522
1713
|
this.timelineViewService = timelineViewService;
|
|
1523
1714
|
this.scrollSyncService = scrollSyncService;
|
|
1524
1715
|
this.renderer = renderer;
|
|
1525
1716
|
this.mapper = mapper;
|
|
1526
1717
|
this.optionChangesService = optionChangesService;
|
|
1527
1718
|
this.dependencyDomService = dependencyDomService;
|
|
1719
|
+
this.editService = editService;
|
|
1720
|
+
this.localizationService = localizationService;
|
|
1721
|
+
this.hostElement = hostElement;
|
|
1722
|
+
this.zone = zone;
|
|
1528
1723
|
this.hostClasses = true;
|
|
1529
1724
|
/**
|
|
1530
1725
|
* The position of the toolbar.
|
|
@@ -1612,10 +1807,40 @@ let GanttComponent = GanttComponent_1 = class GanttComponent {
|
|
|
1612
1807
|
* Fires when an item is expanded.
|
|
1613
1808
|
*/
|
|
1614
1809
|
this.rowExpand = new EventEmitter();
|
|
1810
|
+
/**
|
|
1811
|
+
* Fires when a Gantt task in the timeline pane is double-clicked. The data item, associated with the clicked task,
|
|
1812
|
+
* is available in the event data. Use the event handler to open a task editing dialog as necessary.
|
|
1813
|
+
*/
|
|
1814
|
+
this.taskDblClick = new EventEmitter();
|
|
1815
|
+
/**
|
|
1816
|
+
* Fires when the user double clicks a cell.
|
|
1817
|
+
*/
|
|
1818
|
+
this.cellDblClick = new EventEmitter();
|
|
1819
|
+
/**
|
|
1820
|
+
* Fires when the user leaves an edited cell.
|
|
1821
|
+
*/
|
|
1822
|
+
this.cellClose = new EventEmitter();
|
|
1823
|
+
/**
|
|
1824
|
+
* Fires when the end user clicks the `Delete` button in the task editing dialog or the task delete icon.
|
|
1825
|
+
* Use the event handler to open a confirmation dialog when necessary.
|
|
1826
|
+
*/
|
|
1827
|
+
this.taskDelete = new EventEmitter();
|
|
1615
1828
|
/**
|
|
1616
1829
|
* Fires when an item is collapsed.
|
|
1617
1830
|
*/
|
|
1618
1831
|
this.rowCollapse = new EventEmitter();
|
|
1832
|
+
/**
|
|
1833
|
+
* Fires when the user confirms deleting a task.
|
|
1834
|
+
*/
|
|
1835
|
+
this.remove = new EventEmitter();
|
|
1836
|
+
/**
|
|
1837
|
+
* Fires when the user cancels editing a task.
|
|
1838
|
+
*/
|
|
1839
|
+
this.cancel = new EventEmitter();
|
|
1840
|
+
/**
|
|
1841
|
+
* Fires when the user saves an edited task.
|
|
1842
|
+
*/
|
|
1843
|
+
this.save = new EventEmitter();
|
|
1619
1844
|
/**
|
|
1620
1845
|
* Fires when the sorting of the Gantt is changed.
|
|
1621
1846
|
* You have to handle the event yourself and sort the data.
|
|
@@ -1670,6 +1895,14 @@ let GanttComponent = GanttComponent_1 = class GanttComponent {
|
|
|
1670
1895
|
* Used by the GanttExpandableDirective.
|
|
1671
1896
|
*/
|
|
1672
1897
|
this.expandStateChange = new EventEmitter();
|
|
1898
|
+
/**
|
|
1899
|
+
* @hidden
|
|
1900
|
+
*/
|
|
1901
|
+
this.showEditingDialog = false;
|
|
1902
|
+
/**
|
|
1903
|
+
* @hidden
|
|
1904
|
+
*/
|
|
1905
|
+
this.showConfirmationDialog = false;
|
|
1673
1906
|
this._columns = new QueryList();
|
|
1674
1907
|
this._data = [];
|
|
1675
1908
|
this._timelinePaneOptions = Object.assign({}, DEFAULT_TIMELINE_PANE_SETTINGS);
|
|
@@ -1677,14 +1910,36 @@ let GanttComponent = GanttComponent_1 = class GanttComponent {
|
|
|
1677
1910
|
this._rowClass = rowClassCallback;
|
|
1678
1911
|
this._taskClass = taskClassCallback;
|
|
1679
1912
|
this._activeView = DEFAULT_VIEW;
|
|
1913
|
+
this.rtl = false;
|
|
1680
1914
|
this.optionChangesSubscriptions = new Subscription();
|
|
1915
|
+
this.editServiceSubscription = new Subscription();
|
|
1681
1916
|
validatePackage(packageMetadata);
|
|
1917
|
+
this.handleTimelineDblClick = this.handleTimelineDblClick.bind(this);
|
|
1918
|
+
this.handleTimelineMouseDown = this.handleTimelineMouseDown.bind(this);
|
|
1919
|
+
this.handleDoubleClick = this.handleDoubleClick.bind(this);
|
|
1682
1920
|
this.optionChangesSubscriptions.add(this.optionChangesService.viewChanges.subscribe(() => {
|
|
1683
1921
|
this.loadTimelineData();
|
|
1684
1922
|
}));
|
|
1685
1923
|
this.optionChangesSubscriptions.add(this.optionChangesService.columnChanges.subscribe(() => {
|
|
1686
1924
|
this.treeList.columns.notifyOnChanges();
|
|
1687
1925
|
}));
|
|
1926
|
+
this.editServiceSubscription.add(this.editService.showEditingDialog.subscribe(show => this.showEditingDialog = show));
|
|
1927
|
+
this.editServiceSubscription.add(this.editService.showConfirmationDialog.subscribe(() => this.taskDelete.emit()));
|
|
1928
|
+
this.editServiceSubscription.add(this.editService.editEvent.subscribe(args => {
|
|
1929
|
+
this[args.editResultType].emit({
|
|
1930
|
+
formGroup: args.formGroup,
|
|
1931
|
+
item: getEditItem(args.dataItem, this.treeList.view.data, this.mapper),
|
|
1932
|
+
sender: this
|
|
1933
|
+
});
|
|
1934
|
+
this.showConfirmationDialog = this.showEditingDialog = false;
|
|
1935
|
+
this.editService.dataItem = this.editService.formGroup = null;
|
|
1936
|
+
this.updateView();
|
|
1937
|
+
this.dependencyDomService.notifyChanges();
|
|
1938
|
+
}));
|
|
1939
|
+
this.localizationSubscription = this.localizationService.changes.subscribe(({ rtl }) => {
|
|
1940
|
+
this.rtl = rtl;
|
|
1941
|
+
this.direction = this.rtl ? 'rtl' : 'ltr';
|
|
1942
|
+
});
|
|
1688
1943
|
}
|
|
1689
1944
|
get toolbarTemplate() {
|
|
1690
1945
|
if (this._customToolbarTemplate) {
|
|
@@ -1695,6 +1950,9 @@ let GanttComponent = GanttComponent_1 = class GanttComponent {
|
|
|
1695
1950
|
set toolbarTemplate(customToolbarTemplate) {
|
|
1696
1951
|
this._customToolbarTemplate = customToolbarTemplate;
|
|
1697
1952
|
}
|
|
1953
|
+
get dir() {
|
|
1954
|
+
return this.direction;
|
|
1955
|
+
}
|
|
1698
1956
|
/**
|
|
1699
1957
|
* A query list of all declared columns.
|
|
1700
1958
|
*/
|
|
@@ -1849,6 +2107,12 @@ let GanttComponent = GanttComponent_1 = class GanttComponent {
|
|
|
1849
2107
|
get viewTypes() {
|
|
1850
2108
|
return this.views.map(view => view.type);
|
|
1851
2109
|
}
|
|
2110
|
+
/**
|
|
2111
|
+
* @hidden
|
|
2112
|
+
*/
|
|
2113
|
+
get editDialogFormGroup() {
|
|
2114
|
+
return this.editService.formGroup;
|
|
2115
|
+
}
|
|
1852
2116
|
ngOnChanges(changes) {
|
|
1853
2117
|
if (anyChanged(['data', 'activeView', 'workWeekStart', 'workWeekEnd', 'workDayStart', 'workDayEnd'], changes)) {
|
|
1854
2118
|
this.loadTimelineData();
|
|
@@ -1868,6 +2132,10 @@ let GanttComponent = GanttComponent_1 = class GanttComponent {
|
|
|
1868
2132
|
}
|
|
1869
2133
|
ngOnDestroy() {
|
|
1870
2134
|
this.optionChangesSubscriptions.unsubscribe();
|
|
2135
|
+
this.editServiceSubscription.unsubscribe();
|
|
2136
|
+
if (this.localizationSubscription) {
|
|
2137
|
+
this.localizationSubscription.unsubscribe();
|
|
2138
|
+
}
|
|
1871
2139
|
}
|
|
1872
2140
|
/**
|
|
1873
2141
|
* Applies the minimum possible width for the specified column,
|
|
@@ -1915,6 +2183,47 @@ let GanttComponent = GanttComponent_1 = class GanttComponent {
|
|
|
1915
2183
|
this.treeList.reorderColumn(source, destIndex, options);
|
|
1916
2184
|
}
|
|
1917
2185
|
}
|
|
2186
|
+
/**
|
|
2187
|
+
* Opens the task editing dialog.
|
|
2188
|
+
*/
|
|
2189
|
+
editTask(dataItem, formGroup) {
|
|
2190
|
+
if (!this.showEditingDialog) {
|
|
2191
|
+
this.editService.createEditDialog(dataItem, formGroup);
|
|
2192
|
+
}
|
|
2193
|
+
}
|
|
2194
|
+
/**
|
|
2195
|
+
* Closes the task editing dialog.
|
|
2196
|
+
*/
|
|
2197
|
+
closeTaskDialog() {
|
|
2198
|
+
if (this.showEditingDialog) {
|
|
2199
|
+
this.editService.closeEditDialog();
|
|
2200
|
+
}
|
|
2201
|
+
}
|
|
2202
|
+
/**
|
|
2203
|
+
* Opens the delete task confirmation dialog.
|
|
2204
|
+
*/
|
|
2205
|
+
openConfirmationDialog() {
|
|
2206
|
+
this.showConfirmationDialog = true;
|
|
2207
|
+
}
|
|
2208
|
+
/**
|
|
2209
|
+
* Opens a cell for editing.
|
|
2210
|
+
*/
|
|
2211
|
+
editCell(dataItem, column, formGroup) {
|
|
2212
|
+
this.treeList.editCell(dataItem, column, formGroup);
|
|
2213
|
+
}
|
|
2214
|
+
/**
|
|
2215
|
+
* Closes an edited cell.
|
|
2216
|
+
*/
|
|
2217
|
+
closeCell() {
|
|
2218
|
+
this.treeList.closeCell();
|
|
2219
|
+
}
|
|
2220
|
+
/**
|
|
2221
|
+
* @hidden
|
|
2222
|
+
*/
|
|
2223
|
+
handleCellClose(e) {
|
|
2224
|
+
this.cellClose.emit(Object.assign(e, { item: this.editItem, sender: this }));
|
|
2225
|
+
this.dependencyDomService.notifyChanges();
|
|
2226
|
+
}
|
|
1918
2227
|
/**
|
|
1919
2228
|
* @hidden
|
|
1920
2229
|
*/
|
|
@@ -1978,6 +2287,67 @@ let GanttComponent = GanttComponent_1 = class GanttComponent {
|
|
|
1978
2287
|
this._timelinePaneOptions.size = e;
|
|
1979
2288
|
this.timelinePaneSizeChange.emit(e);
|
|
1980
2289
|
}
|
|
2290
|
+
/**
|
|
2291
|
+
* @hidden
|
|
2292
|
+
*/
|
|
2293
|
+
handleCellClick(event) {
|
|
2294
|
+
this._cellClickEvent = event;
|
|
2295
|
+
}
|
|
2296
|
+
/**
|
|
2297
|
+
* @hidden
|
|
2298
|
+
*/
|
|
2299
|
+
handleDoubleClick(event) {
|
|
2300
|
+
const cell = this._cellClickEvent.originalEvent.target;
|
|
2301
|
+
if (event.target !== cell) {
|
|
2302
|
+
return;
|
|
2303
|
+
}
|
|
2304
|
+
this.editItem = getEditItem(this._cellClickEvent.dataItem, this.treeList.view.data, this.mapper);
|
|
2305
|
+
if (hasObservers(this.cellDblClick)) {
|
|
2306
|
+
this.zone.run(() => {
|
|
2307
|
+
this.cellDblClick.emit(Object.assign({}, this._cellClickEvent, { sender: this }));
|
|
2308
|
+
});
|
|
2309
|
+
}
|
|
2310
|
+
}
|
|
2311
|
+
/**
|
|
2312
|
+
* @hidden
|
|
2313
|
+
*/
|
|
2314
|
+
handleDeleteConfirmation() {
|
|
2315
|
+
this.editService.triggerEditEvent('remove');
|
|
2316
|
+
}
|
|
2317
|
+
/**
|
|
2318
|
+
* @hidden
|
|
2319
|
+
*/
|
|
2320
|
+
handleTimelineMouseDown(event) {
|
|
2321
|
+
const target = event.target;
|
|
2322
|
+
const gantt = this.hostElement.nativeElement;
|
|
2323
|
+
if (!isTask(target, gantt) || isClearButton(target, gantt)) {
|
|
2324
|
+
return;
|
|
2325
|
+
}
|
|
2326
|
+
event.preventDefault();
|
|
2327
|
+
}
|
|
2328
|
+
/**
|
|
2329
|
+
* @hidden
|
|
2330
|
+
*/
|
|
2331
|
+
handleTimelineDblClick(event) {
|
|
2332
|
+
const target = event.target;
|
|
2333
|
+
const gantt = this.hostElement.nativeElement;
|
|
2334
|
+
if (!isTask(target, gantt) || isClearButton(target, gantt)) {
|
|
2335
|
+
return;
|
|
2336
|
+
}
|
|
2337
|
+
const taskIndex = getClosestTaskIndex(target, gantt);
|
|
2338
|
+
const task = this.renderedTreeListItems[taskIndex];
|
|
2339
|
+
this.zone.run(() => this.taskDblClick.emit({
|
|
2340
|
+
dataItem: task,
|
|
2341
|
+
originalEvent: event,
|
|
2342
|
+
sender: this
|
|
2343
|
+
}));
|
|
2344
|
+
}
|
|
2345
|
+
/**
|
|
2346
|
+
* @hidden
|
|
2347
|
+
*/
|
|
2348
|
+
getText(token) {
|
|
2349
|
+
return this.localizationService.get(token);
|
|
2350
|
+
}
|
|
1981
2351
|
updateTreeListGroupClass(columns = this.columns) {
|
|
1982
2352
|
if (!isPresent(this.treeList)) {
|
|
1983
2353
|
return;
|
|
@@ -2029,6 +2399,11 @@ __decorate([
|
|
|
2029
2399
|
HostBinding('class.k-gantt'),
|
|
2030
2400
|
__metadata("design:type", Boolean)
|
|
2031
2401
|
], GanttComponent.prototype, "hostClasses", void 0);
|
|
2402
|
+
__decorate([
|
|
2403
|
+
HostBinding('attr.dir'),
|
|
2404
|
+
__metadata("design:type", String),
|
|
2405
|
+
__metadata("design:paramtypes", [])
|
|
2406
|
+
], GanttComponent.prototype, "dir", null);
|
|
2032
2407
|
__decorate([
|
|
2033
2408
|
ContentChildren(GanttColumnBase),
|
|
2034
2409
|
__metadata("design:type", QueryList),
|
|
@@ -2150,10 +2525,38 @@ __decorate([
|
|
|
2150
2525
|
Output(),
|
|
2151
2526
|
__metadata("design:type", EventEmitter)
|
|
2152
2527
|
], GanttComponent.prototype, "rowExpand", void 0);
|
|
2528
|
+
__decorate([
|
|
2529
|
+
Output(),
|
|
2530
|
+
__metadata("design:type", EventEmitter)
|
|
2531
|
+
], GanttComponent.prototype, "taskDblClick", void 0);
|
|
2532
|
+
__decorate([
|
|
2533
|
+
Output(),
|
|
2534
|
+
__metadata("design:type", EventEmitter)
|
|
2535
|
+
], GanttComponent.prototype, "cellDblClick", void 0);
|
|
2536
|
+
__decorate([
|
|
2537
|
+
Output(),
|
|
2538
|
+
__metadata("design:type", EventEmitter)
|
|
2539
|
+
], GanttComponent.prototype, "cellClose", void 0);
|
|
2540
|
+
__decorate([
|
|
2541
|
+
Output(),
|
|
2542
|
+
__metadata("design:type", EventEmitter)
|
|
2543
|
+
], GanttComponent.prototype, "taskDelete", void 0);
|
|
2153
2544
|
__decorate([
|
|
2154
2545
|
Output(),
|
|
2155
2546
|
__metadata("design:type", EventEmitter)
|
|
2156
2547
|
], GanttComponent.prototype, "rowCollapse", void 0);
|
|
2548
|
+
__decorate([
|
|
2549
|
+
Output(),
|
|
2550
|
+
__metadata("design:type", EventEmitter)
|
|
2551
|
+
], GanttComponent.prototype, "remove", void 0);
|
|
2552
|
+
__decorate([
|
|
2553
|
+
Output(),
|
|
2554
|
+
__metadata("design:type", EventEmitter)
|
|
2555
|
+
], GanttComponent.prototype, "cancel", void 0);
|
|
2556
|
+
__decorate([
|
|
2557
|
+
Output(),
|
|
2558
|
+
__metadata("design:type", EventEmitter)
|
|
2559
|
+
], GanttComponent.prototype, "save", void 0);
|
|
2157
2560
|
__decorate([
|
|
2158
2561
|
Output(),
|
|
2159
2562
|
__metadata("design:type", EventEmitter)
|
|
@@ -2201,7 +2604,9 @@ __decorate([
|
|
|
2201
2604
|
GanttComponent = GanttComponent_1 = __decorate([
|
|
2202
2605
|
Component({
|
|
2203
2606
|
selector: 'kendo-gantt',
|
|
2607
|
+
exportAs: 'kendoGantt',
|
|
2204
2608
|
providers: [
|
|
2609
|
+
LocalizationService,
|
|
2205
2610
|
{
|
|
2206
2611
|
provide: DataBoundTreeComponent,
|
|
2207
2612
|
useExisting: forwardRef(() => GanttComponent_1)
|
|
@@ -2217,9 +2622,181 @@ GanttComponent = GanttComponent_1 = __decorate([
|
|
|
2217
2622
|
ScrollSyncService,
|
|
2218
2623
|
DependencyDomService,
|
|
2219
2624
|
MappingService,
|
|
2220
|
-
OptionChangesService
|
|
2625
|
+
OptionChangesService,
|
|
2626
|
+
EditService
|
|
2221
2627
|
],
|
|
2222
2628
|
template: `
|
|
2629
|
+
<ng-container kendoGanttLocalizedMessages
|
|
2630
|
+
i18n-taskDeleteLabel="kendo.gantt.taskDeleteLabel|The label of the task delete icon"
|
|
2631
|
+
taskDeleteLabel="Delete"
|
|
2632
|
+
|
|
2633
|
+
i18n-taskEditingDialogTitle="kendo.gantt.taskEditingDialogTitle|The title of the task editing dialog"
|
|
2634
|
+
taskEditingDialogTitle="Editing Task"
|
|
2635
|
+
|
|
2636
|
+
i18n-taskEditingDialogCloseTitle="kendo.gantt.taskEditingDialogCloseTitle|The title of the task editing dialog close button"
|
|
2637
|
+
taskEditingDialogCloseTitle="Close"
|
|
2638
|
+
|
|
2639
|
+
i18n-confirmationDialogCloseTitle="kendo.gantt.confirmationDialogCloseTitle|The title of the confirmation dialog close button"
|
|
2640
|
+
confirmationDialogCloseTitle="Close"
|
|
2641
|
+
|
|
2642
|
+
i18n-confirmationDialogTitle="kendo.gantt.confirmationDialogTitle|The title of the delete task confirmation dialog"
|
|
2643
|
+
confirmationDialogTitle="Delete Task"
|
|
2644
|
+
|
|
2645
|
+
i18n-confirmationDialogContent="kendo.gantt.confirmationDialogContent|The content of the delete task confirmation dialog"
|
|
2646
|
+
confirmationDialogContent="Are you sure you want to delete this task?"
|
|
2647
|
+
|
|
2648
|
+
i18n-deleteButtonText="kendo.gantt.deleteButtonText|The text of the task editing dialog 'Delete' button"
|
|
2649
|
+
deleteButtonText="Delete"
|
|
2650
|
+
|
|
2651
|
+
i18n-cancelButtonText="kendo.gantt.cancelButtonText|The text of the task editing dialog 'Cancel' button"
|
|
2652
|
+
cancelButtonText="Cancel"
|
|
2653
|
+
|
|
2654
|
+
i18n-saveButtonText="kendo.gantt.saveButtonText|The text of the task editing dialog 'Save' button"
|
|
2655
|
+
saveButtonText="Save"
|
|
2656
|
+
|
|
2657
|
+
i18n-titleFieldInputLabel="kendo.gantt.titleFieldInputLabel|The label of the 'title' field input in editing mode"
|
|
2658
|
+
titleFieldInputLabel="Title"
|
|
2659
|
+
|
|
2660
|
+
i18n-startFieldInputLabel="kendo.gantt.startFieldInputLabel|The label of the 'start' field input in editing mode"
|
|
2661
|
+
startFieldInputLabel="Start"
|
|
2662
|
+
|
|
2663
|
+
i18n-endFieldInputLabel="kendo.gantt.endFieldInputLabel|The label of the 'end' field input in editing mode"
|
|
2664
|
+
endFieldInputLabel="End"
|
|
2665
|
+
|
|
2666
|
+
i18n-completionRatioFieldInputLabel="kendo.gantt.completionRatioFieldInputLabel|The label of the 'completionRatio' field input in editing mode"
|
|
2667
|
+
completionRatioFieldInputLabel="Progress"
|
|
2668
|
+
|
|
2669
|
+
i18n-dayViewText="kendo.gantt.dayViewText|The text of the day view in the ViewSelector component"
|
|
2670
|
+
dayViewText="Day"
|
|
2671
|
+
|
|
2672
|
+
i18n-weekViewText="kendo.gantt.weekViewText|The text of the week view in the ViewSelector component"
|
|
2673
|
+
weekViewText="Week"
|
|
2674
|
+
|
|
2675
|
+
i18n-monthViewText="kendo.gantt.monthViewText|The text of the month view in the ViewSelector component"
|
|
2676
|
+
monthViewText="Month"
|
|
2677
|
+
|
|
2678
|
+
i18n-yearViewText-disabled="kendo.gantt.yearViewText|The text of the year view in the ViewSelector component"
|
|
2679
|
+
yearViewText="Year"
|
|
2680
|
+
|
|
2681
|
+
i18n-noRecords="kendo.gantt.noRecords|The label visible in the TreeList when there are no records"
|
|
2682
|
+
noRecords="No records available."
|
|
2683
|
+
|
|
2684
|
+
i18n-filter="kendo.gantt.filter|The label of the filter cell or icon"
|
|
2685
|
+
filter="Filter"
|
|
2686
|
+
|
|
2687
|
+
i18n-filterEqOperator="kendo.gantt.filterEqOperator|The text of the equal filter operator"
|
|
2688
|
+
filterEqOperator="Is equal to"
|
|
2689
|
+
|
|
2690
|
+
i18n-filterNotEqOperator="kendo.gantt.filterNotEqOperator|The text of the not equal filter operator"
|
|
2691
|
+
filterNotEqOperator="Is not equal to"
|
|
2692
|
+
|
|
2693
|
+
i18n-filterIsNullOperator="kendo.gantt.filterIsNullOperator|The text of the is null filter operator"
|
|
2694
|
+
filterIsNullOperator="Is null"
|
|
2695
|
+
|
|
2696
|
+
i18n-filterIsNotNullOperator="kendo.gantt.filterIsNotNullOperator|The text of the is not null filter operator"
|
|
2697
|
+
filterIsNotNullOperator="Is not null"
|
|
2698
|
+
|
|
2699
|
+
i18n-filterIsEmptyOperator="kendo.gantt.filterIsEmptyOperator|The text of the is empty filter operator"
|
|
2700
|
+
filterIsEmptyOperator="Is empty"
|
|
2701
|
+
|
|
2702
|
+
i18n-filterIsNotEmptyOperator="kendo.gantt.filterIsNotEmptyOperator|The text of the is not empty filter operator"
|
|
2703
|
+
filterIsNotEmptyOperator="Is not empty"
|
|
2704
|
+
|
|
2705
|
+
i18n-filterStartsWithOperator="kendo.gantt.filterStartsWithOperator|The text of the starts with filter operator"
|
|
2706
|
+
filterStartsWithOperator="Starts with"
|
|
2707
|
+
|
|
2708
|
+
i18n-filterContainsOperator="kendo.gantt.filterContainsOperator|The text of the contains filter operator"
|
|
2709
|
+
filterContainsOperator="Contains"
|
|
2710
|
+
|
|
2711
|
+
i18n-filterNotContainsOperator="kendo.gantt.filterNotContainsOperator|The text of the does not contain filter operator"
|
|
2712
|
+
filterNotContainsOperator="Does not contain"
|
|
2713
|
+
|
|
2714
|
+
i18n-filterEndsWithOperator="kendo.gantt.filterEndsWithOperator|The text of the ends with filter operator"
|
|
2715
|
+
filterEndsWithOperator="Ends with"
|
|
2716
|
+
|
|
2717
|
+
i18n-filterGteOperator="kendo.gantt.filterGteOperator|The text of the greater than or equal filter operator"
|
|
2718
|
+
filterGteOperator="Is greater than or equal to"
|
|
2719
|
+
|
|
2720
|
+
i18n-filterGtOperator="kendo.gantt.filterGtOperator|The text of the greater than filter operator"
|
|
2721
|
+
filterGtOperator="Is greater than"
|
|
2722
|
+
|
|
2723
|
+
i18n-filterLteOperator="kendo.gantt.filterLteOperator|The text of the less than or equal filter operator"
|
|
2724
|
+
filterLteOperator="Is less than or equal to"
|
|
2725
|
+
|
|
2726
|
+
i18n-filterLtOperator="kendo.gantt.filterLtOperator|The text of the less than filter operator"
|
|
2727
|
+
filterLtOperator="Is less than"
|
|
2728
|
+
|
|
2729
|
+
i18n-filterIsTrue="kendo.gantt.filterIsTrue|The text of the IsTrue boolean filter option"
|
|
2730
|
+
filterIsTrue="Is True"
|
|
2731
|
+
|
|
2732
|
+
i18n-filterIsFalse="kendo.gantt.filterIsFalse|The text of the IsFalse boolean filter option"
|
|
2733
|
+
filterIsFalse="Is False"
|
|
2734
|
+
|
|
2735
|
+
i18n-filterBooleanAll="kendo.gantt.filterBooleanAll|The text of the (All) boolean filter option"
|
|
2736
|
+
filterBooleanAll="(All)"
|
|
2737
|
+
|
|
2738
|
+
i18n-filterAfterOrEqualOperator="kendo.gantt.filterAfterOrEqualOperator|The text of the after or equal date filter operator"
|
|
2739
|
+
filterAfterOrEqualOperator="Is after or equal to"
|
|
2740
|
+
|
|
2741
|
+
i18n-filterAfterOperator="kendo.gantt.filterAfterOperator|The text of the after date filter operator"
|
|
2742
|
+
filterAfterOperator="Is after"
|
|
2743
|
+
|
|
2744
|
+
i18n-filterBeforeOperator="kendo.gantt.filterBeforeOperator|The text of the before date filter operator"
|
|
2745
|
+
filterBeforeOperator="Is before"
|
|
2746
|
+
|
|
2747
|
+
i18n-filterBeforeOrEqualOperator="kendo.gantt.filterBeforeOrEqualOperator|The text of the before or equal date filter operator"
|
|
2748
|
+
filterBeforeOrEqualOperator="Is before or equal to"
|
|
2749
|
+
|
|
2750
|
+
i18n-filterFilterButton="kendo.gantt.filterFilterButton|The text of the filter button"
|
|
2751
|
+
filterFilterButton="Filter"
|
|
2752
|
+
|
|
2753
|
+
i18n-filterClearButton="kendo.gantt.filterClearButton|The text of the clear filter button"
|
|
2754
|
+
filterClearButton="Clear"
|
|
2755
|
+
|
|
2756
|
+
i18n-filterAndLogic="kendo.gantt.filterAndLogic|The text of the And filter logic"
|
|
2757
|
+
filterAndLogic="And"
|
|
2758
|
+
|
|
2759
|
+
i18n-filterOrLogic="kendo.gantt.filterOrLogic|The text of the Or filter logic"
|
|
2760
|
+
filterOrLogic="Or"
|
|
2761
|
+
|
|
2762
|
+
i18n-loading="kendo.gantt.loading|The loading text"
|
|
2763
|
+
loading="Loading"
|
|
2764
|
+
|
|
2765
|
+
i18n-columnMenu="kendo.gantt.columnMenu|The title of the column menu icon"
|
|
2766
|
+
columnMenu="Column Menu"
|
|
2767
|
+
|
|
2768
|
+
i18n-columns="kendo.gantt.columns|The text shown in the column menu for the columns item"
|
|
2769
|
+
columns="Columns"
|
|
2770
|
+
|
|
2771
|
+
i18n-lock-disabled="kendo.gantt.lock|The text shown in the column menu for the lock item"
|
|
2772
|
+
lock-disabled="Lock"
|
|
2773
|
+
|
|
2774
|
+
i18n-unlock-disabled="kendo.gantt.unlock|The text shown in the column menu for the unlock item"
|
|
2775
|
+
unlock-disabled="Unlock"
|
|
2776
|
+
|
|
2777
|
+
i18n-sortable="kendo.gantt.sortable|The label of the sort icon"
|
|
2778
|
+
sortable="Sortable"
|
|
2779
|
+
|
|
2780
|
+
i18n-sortAscending="kendo.gantt.sortAscending|The text shown in the column menu for the sort ascending item"
|
|
2781
|
+
sortAscending="Sort Ascending"
|
|
2782
|
+
|
|
2783
|
+
i18n-sortDescending="kendo.gantt.sortDescending|The text shown in the column menu for the sort descending item"
|
|
2784
|
+
sortDescending="Sort Descending"
|
|
2785
|
+
|
|
2786
|
+
i18n-sortedAscending="kendo.gantt.sortedAscending|The status announcement when a column is sorted ascending"
|
|
2787
|
+
sortedAscending="Sorted Ascending"
|
|
2788
|
+
|
|
2789
|
+
i18n-sortedDescending="kendo.gantt.sortedDescending|The status announcement when a column is sorted descending"
|
|
2790
|
+
sortedDescending="Sorted Descending"
|
|
2791
|
+
|
|
2792
|
+
i18n-sortedDefault="kendo.gantt.sortedDefault|The status announcement when a column is no longer sorted"
|
|
2793
|
+
sortedDefault="Not Sorted"
|
|
2794
|
+
|
|
2795
|
+
i18n-columnsApply="kendo.gantt.columnsApply|The text shown in the column menu or column chooser for the columns apply button"
|
|
2796
|
+
columnsApply="Apply"
|
|
2797
|
+
|
|
2798
|
+
i18n-columnsReset="kendo.gantt.columnsReset|The text shown in the column menu or column chooser for the columns reset button"
|
|
2799
|
+
columnsReset="Reset"></ng-container>
|
|
2223
2800
|
<kendo-gantt-toolbar
|
|
2224
2801
|
*ngIf="showToolbar('top')"
|
|
2225
2802
|
class="k-gantt-header k-toolbar k-gantt-toolbar"
|
|
@@ -2261,7 +2838,12 @@ GanttComponent = GanttComponent_1 = __decorate([
|
|
|
2261
2838
|
(columnResize)="columnResize.emit($event)"
|
|
2262
2839
|
(columnVisibilityChange)="handleColumnVisibilityChange($event)"
|
|
2263
2840
|
(columnLockedChange)="columnLockedChange.emit($event)"
|
|
2264
|
-
|
|
2841
|
+
(cellClick)="handleCellClick($event)"
|
|
2842
|
+
(cellClose)="handleCellClose($event)"
|
|
2843
|
+
[kendoEventsOutsideAngular]="{
|
|
2844
|
+
dblclick: handleDoubleClick
|
|
2845
|
+
}">
|
|
2846
|
+
<kendo-treelist-messages [kendoGanttTreeListMessages]="localizationService"></kendo-treelist-messages>
|
|
2265
2847
|
</kendo-treelist>
|
|
2266
2848
|
</kendo-splitter-pane>
|
|
2267
2849
|
<kendo-splitter-pane
|
|
@@ -2287,6 +2869,10 @@ GanttComponent = GanttComponent_1 = __decorate([
|
|
|
2287
2869
|
[taskClass]="taskClass"
|
|
2288
2870
|
[dependencies]="dependencies"
|
|
2289
2871
|
[hasChildren]="hasChildren"
|
|
2872
|
+
[kendoEventsOutsideAngular]="{
|
|
2873
|
+
dblclick: handleTimelineDblClick,
|
|
2874
|
+
mousedown: handleTimelineMouseDown
|
|
2875
|
+
}"
|
|
2290
2876
|
></kendo-gantt-timeline>
|
|
2291
2877
|
</kendo-splitter-pane>
|
|
2292
2878
|
</kendo-splitter>
|
|
@@ -2295,6 +2881,20 @@ GanttComponent = GanttComponent_1 = __decorate([
|
|
|
2295
2881
|
*ngIf="showToolbar('bottom')"
|
|
2296
2882
|
class="k-gantt-footer k-toolbar k-gantt-toolbar"
|
|
2297
2883
|
position="bottom"></kendo-gantt-toolbar>
|
|
2884
|
+
<kendo-gantt-edit-dialog *ngIf="showEditingDialog" [formGroup]="editDialogFormGroup"></kendo-gantt-edit-dialog>
|
|
2885
|
+
<kendo-dialog
|
|
2886
|
+
*ngIf="showConfirmationDialog"
|
|
2887
|
+
[width]="575"
|
|
2888
|
+
[height]="170"
|
|
2889
|
+
[title]="getText('confirmationDialogTitle')"
|
|
2890
|
+
(close)="showConfirmationDialog = false;">
|
|
2891
|
+
<span>{{getText('confirmationDialogContent')}}</span>
|
|
2892
|
+
<kendo-dialog-actions layout="normal">
|
|
2893
|
+
<kendo-treelist-spacer></kendo-treelist-spacer>
|
|
2894
|
+
<button kendoButton [primary]="true" (click)="handleDeleteConfirmation()">{{ getText('deleteButtonText') }}</button>
|
|
2895
|
+
<button kendoButton (click)="showConfirmationDialog = false;">{{ getText('cancelButtonText') }}</button>
|
|
2896
|
+
</kendo-dialog-actions>
|
|
2897
|
+
</kendo-dialog>
|
|
2298
2898
|
`
|
|
2299
2899
|
}),
|
|
2300
2900
|
__metadata("design:paramtypes", [TimelineViewService,
|
|
@@ -2302,7 +2902,11 @@ GanttComponent = GanttComponent_1 = __decorate([
|
|
|
2302
2902
|
Renderer2,
|
|
2303
2903
|
MappingService,
|
|
2304
2904
|
OptionChangesService,
|
|
2305
|
-
DependencyDomService
|
|
2905
|
+
DependencyDomService,
|
|
2906
|
+
EditService,
|
|
2907
|
+
LocalizationService,
|
|
2908
|
+
ElementRef,
|
|
2909
|
+
NgZone])
|
|
2306
2910
|
], GanttComponent);
|
|
2307
2911
|
|
|
2308
2912
|
/**
|
|
@@ -2549,17 +3153,22 @@ __decorate([
|
|
|
2549
3153
|
Input(),
|
|
2550
3154
|
__metadata("design:type", Function)
|
|
2551
3155
|
], GanttTasksTableBodyComponent.prototype, "hasChildren", void 0);
|
|
3156
|
+
__decorate([
|
|
3157
|
+
Input(),
|
|
3158
|
+
__metadata("design:type", Number)
|
|
3159
|
+
], GanttTasksTableBodyComponent.prototype, "index", void 0);
|
|
2552
3160
|
GanttTasksTableBodyComponent = __decorate([
|
|
2553
3161
|
Component({
|
|
2554
3162
|
selector: '[kendoGanttTasksTableBody]',
|
|
2555
3163
|
template: `
|
|
2556
|
-
<tr #timelineRow *ngFor="let item of rows">
|
|
3164
|
+
<tr #timelineRow *ngFor="let item of rows; let index = index">
|
|
2557
3165
|
<td>
|
|
2558
3166
|
<kendo-gantt-milestone-task
|
|
2559
3167
|
*ngIf="isMileStone(item); else task"
|
|
2560
3168
|
[dataItem]="item"
|
|
2561
3169
|
[activeView]="activeView"
|
|
2562
3170
|
[taskClass]="taskClass"
|
|
3171
|
+
[index]="index"
|
|
2563
3172
|
>
|
|
2564
3173
|
</kendo-gantt-milestone-task>
|
|
2565
3174
|
<ng-template #task>
|
|
@@ -2569,6 +3178,7 @@ GanttTasksTableBodyComponent = __decorate([
|
|
|
2569
3178
|
[template]="summaryTaskTemplate"
|
|
2570
3179
|
[activeView]="activeView"
|
|
2571
3180
|
[taskClass]="taskClass"
|
|
3181
|
+
[index]="index"
|
|
2572
3182
|
>
|
|
2573
3183
|
</kendo-gantt-summary-task>
|
|
2574
3184
|
<kendo-gantt-task
|
|
@@ -2578,6 +3188,7 @@ GanttTasksTableBodyComponent = __decorate([
|
|
|
2578
3188
|
[taskTemplate]="taskTemplate"
|
|
2579
3189
|
[activeView]="activeView"
|
|
2580
3190
|
[taskClass]="taskClass"
|
|
3191
|
+
[index]="index"
|
|
2581
3192
|
>
|
|
2582
3193
|
</kendo-gantt-task>
|
|
2583
3194
|
</ng-template>
|
|
@@ -2703,14 +3314,23 @@ __decorate([
|
|
|
2703
3314
|
Input(),
|
|
2704
3315
|
__metadata("design:type", Function)
|
|
2705
3316
|
], GanttTaskBase.prototype, "taskClass", void 0);
|
|
3317
|
+
__decorate([
|
|
3318
|
+
Input(),
|
|
3319
|
+
__metadata("design:type", Number)
|
|
3320
|
+
], GanttTaskBase.prototype, "index", void 0);
|
|
2706
3321
|
|
|
2707
3322
|
var GanttTaskComponent_1;
|
|
2708
3323
|
/**
|
|
2709
3324
|
* @hidden
|
|
2710
3325
|
*/
|
|
2711
3326
|
let GanttTaskComponent = GanttTaskComponent_1 = class GanttTaskComponent extends GanttTaskBase {
|
|
2712
|
-
constructor(mapper, timelineViewService, dependencyDomService, optionChangesService, cdr) {
|
|
3327
|
+
constructor(mapper, timelineViewService, dependencyDomService, optionChangesService, cdr, editService) {
|
|
2713
3328
|
super(mapper, timelineViewService, dependencyDomService, optionChangesService, cdr);
|
|
3329
|
+
this.editService = editService;
|
|
3330
|
+
}
|
|
3331
|
+
onTaskDelete() {
|
|
3332
|
+
this.editService.dataItem = this.dataItem;
|
|
3333
|
+
this.editService.showConfirmationDialog.next();
|
|
2714
3334
|
}
|
|
2715
3335
|
};
|
|
2716
3336
|
__decorate([
|
|
@@ -2738,6 +3358,7 @@ GanttTaskComponent = GanttTaskComponent_1 = __decorate([
|
|
|
2738
3358
|
[style.width.px]="taskWidth"
|
|
2739
3359
|
[style.left.px]="taskOffset"
|
|
2740
3360
|
[attr.title]="mapper.extractFromTask(dataItem, 'title')"
|
|
3361
|
+
[attr.data-task-index]="index"
|
|
2741
3362
|
>
|
|
2742
3363
|
<ng-container *ngIf="!taskTemplate">
|
|
2743
3364
|
<div
|
|
@@ -2757,6 +3378,13 @@ GanttTaskComponent = GanttTaskComponent_1 = __decorate([
|
|
|
2757
3378
|
>
|
|
2758
3379
|
</ng-template>
|
|
2759
3380
|
</div>
|
|
3381
|
+
<span class="k-task-actions">
|
|
3382
|
+
<span
|
|
3383
|
+
(click)="onTaskDelete()"
|
|
3384
|
+
class="k-link k-task-delete">
|
|
3385
|
+
<span class="k-icon k-i-close"></span>
|
|
3386
|
+
</span>
|
|
3387
|
+
</span>
|
|
2760
3388
|
</div>
|
|
2761
3389
|
</ng-container>
|
|
2762
3390
|
<ng-template
|
|
@@ -2775,7 +3403,8 @@ GanttTaskComponent = GanttTaskComponent_1 = __decorate([
|
|
|
2775
3403
|
TimelineViewService,
|
|
2776
3404
|
DependencyDomService,
|
|
2777
3405
|
OptionChangesService,
|
|
2778
|
-
ChangeDetectorRef
|
|
3406
|
+
ChangeDetectorRef,
|
|
3407
|
+
EditService])
|
|
2779
3408
|
], GanttTaskComponent);
|
|
2780
3409
|
|
|
2781
3410
|
var GanttSummaryTaskComponent_1;
|
|
@@ -2813,6 +3442,7 @@ GanttSummaryTaskComponent = GanttSummaryTaskComponent_1 = __decorate([
|
|
|
2813
3442
|
[style.width.px]="taskWidth"
|
|
2814
3443
|
[style.left.px]="taskOffset"
|
|
2815
3444
|
[attr.title]="mapper.extractFromTask(dataItem, 'title')"
|
|
3445
|
+
[attr.data-task-index]="index"
|
|
2816
3446
|
>
|
|
2817
3447
|
<div *ngIf="!template; else summaryTemplate"
|
|
2818
3448
|
class="k-task-summary-progress"
|
|
@@ -2872,6 +3502,7 @@ GanttMilestoneTaskComponent = GanttMilestoneTaskComponent_1 = __decorate([
|
|
|
2872
3502
|
[ngClass]="taskClass(dataItem)"
|
|
2873
3503
|
[style.left.px]="taskOffset"
|
|
2874
3504
|
[attr.title]="mapper.extractFromTask(dataItem, 'title')"
|
|
3505
|
+
[attr.data-task-index]="index"
|
|
2875
3506
|
>
|
|
2876
3507
|
</div>
|
|
2877
3508
|
`
|
|
@@ -3021,10 +3652,8 @@ ToolbarComponent = __decorate([
|
|
|
3021
3652
|
* The Gantt ViewSelector component. Shows the currently active view type, and allows switching to another view type.
|
|
3022
3653
|
*/
|
|
3023
3654
|
let ViewSelectorComponent = class ViewSelectorComponent {
|
|
3024
|
-
|
|
3025
|
-
|
|
3026
|
-
*/
|
|
3027
|
-
constructor() {
|
|
3655
|
+
constructor(localizationService) {
|
|
3656
|
+
this.localizationService = localizationService;
|
|
3028
3657
|
this.hostClass = true;
|
|
3029
3658
|
/**
|
|
3030
3659
|
* The currently active view type.
|
|
@@ -3048,7 +3677,7 @@ let ViewSelectorComponent = class ViewSelectorComponent {
|
|
|
3048
3677
|
* @hidden
|
|
3049
3678
|
*/
|
|
3050
3679
|
getViewTypeText(viewType) {
|
|
3051
|
-
return `${viewType
|
|
3680
|
+
return this.localizationService.get(`${viewType}ViewText`);
|
|
3052
3681
|
}
|
|
3053
3682
|
};
|
|
3054
3683
|
__decorate([
|
|
@@ -3071,7 +3700,7 @@ ViewSelectorComponent = __decorate([
|
|
|
3071
3700
|
Component({
|
|
3072
3701
|
selector: 'kendo-gantt-view-selector',
|
|
3073
3702
|
template: `
|
|
3074
|
-
<select class="k-dropdown k-views-dropdown"
|
|
3703
|
+
<select class="k-dropdown k-views-dropdown"
|
|
3075
3704
|
[value]="activeView"
|
|
3076
3705
|
(change)="activeViewChange.emit($event.target.value)">
|
|
3077
3706
|
<option *ngFor="let view of views" [value]="view">{{getViewTypeText(view)}}</option>
|
|
@@ -3083,7 +3712,8 @@ ViewSelectorComponent = __decorate([
|
|
|
3083
3712
|
(click)="onClick(view)">{{getViewTypeText(view)}}</button>
|
|
3084
3713
|
</kendo-buttongroup>
|
|
3085
3714
|
`
|
|
3086
|
-
})
|
|
3715
|
+
}),
|
|
3716
|
+
__metadata("design:paramtypes", [LocalizationService])
|
|
3087
3717
|
], ViewSelectorComponent);
|
|
3088
3718
|
|
|
3089
3719
|
/**
|
|
@@ -3389,11 +4019,401 @@ TimelineMonthViewComponent = TimelineMonthViewComponent_1 = __decorate([
|
|
|
3389
4019
|
__metadata("design:paramtypes", [OptionChangesService, DependencyDomService])
|
|
3390
4020
|
], TimelineMonthViewComponent);
|
|
3391
4021
|
|
|
4022
|
+
/**
|
|
4023
|
+
* @hidden
|
|
4024
|
+
*/
|
|
4025
|
+
let EditDialogComponent = class EditDialogComponent {
|
|
4026
|
+
constructor(mapper, editService, localizationService) {
|
|
4027
|
+
this.mapper = mapper;
|
|
4028
|
+
this.editService = editService;
|
|
4029
|
+
this.localizationService = localizationService;
|
|
4030
|
+
}
|
|
4031
|
+
getText(token) {
|
|
4032
|
+
return this.localizationService.get(token);
|
|
4033
|
+
}
|
|
4034
|
+
handleEditingResult(editResultType) {
|
|
4035
|
+
this.editService.triggerEditEvent(editResultType);
|
|
4036
|
+
}
|
|
4037
|
+
onTaskDelete() {
|
|
4038
|
+
this.editService.showConfirmationDialog.next();
|
|
4039
|
+
}
|
|
4040
|
+
};
|
|
4041
|
+
__decorate([
|
|
4042
|
+
Input(),
|
|
4043
|
+
__metadata("design:type", FormGroup)
|
|
4044
|
+
], EditDialogComponent.prototype, "formGroup", void 0);
|
|
4045
|
+
EditDialogComponent = __decorate([
|
|
4046
|
+
Component({
|
|
4047
|
+
selector: 'kendo-gantt-edit-dialog',
|
|
4048
|
+
template: `
|
|
4049
|
+
<kendo-dialog
|
|
4050
|
+
[title]="getText('taskEditingDialogTitle')"
|
|
4051
|
+
[width]="575"
|
|
4052
|
+
[height]="470"
|
|
4053
|
+
(close)="handleEditingResult('cancel')">
|
|
4054
|
+
<kendo-dialog-messages
|
|
4055
|
+
[closeTitle]="getText('taskEditingDialogCloseTitle')"></kendo-dialog-messages>
|
|
4056
|
+
<form class="k-form" [formGroup]="formGroup">
|
|
4057
|
+
<kendo-formfield *ngIf="formGroup.contains(mapper.taskFields.title)">
|
|
4058
|
+
<kendo-label [for]="mapper.taskFields.title" [text]="getText('titleFieldInputLabel')"></kendo-label>
|
|
4059
|
+
<input class="k-textbox" [formControlName]="mapper.taskFields.title" />
|
|
4060
|
+
</kendo-formfield>
|
|
4061
|
+
<div class="k-hstack">
|
|
4062
|
+
<kendo-formfield [style.width.%]="49" *ngIf="formGroup.contains(mapper.taskFields.start)">
|
|
4063
|
+
<kendo-label [for]="mapper.taskFields.start" [text]="getText('startFieldInputLabel')"></kendo-label>
|
|
4064
|
+
<kendo-datetimepicker [formControlName]="mapper.taskFields.start"></kendo-datetimepicker>
|
|
4065
|
+
</kendo-formfield>
|
|
4066
|
+
<kendo-treelist-spacer></kendo-treelist-spacer>
|
|
4067
|
+
<kendo-formfield [style.width.%]="49" *ngIf="formGroup.contains(mapper.taskFields.end)">
|
|
4068
|
+
<kendo-label [for]="mapper.taskFields.end" [text]="getText('endFieldInputLabel')"></kendo-label>
|
|
4069
|
+
<kendo-datetimepicker [formControlName]="mapper.taskFields.end"></kendo-datetimepicker>
|
|
4070
|
+
</kendo-formfield>
|
|
4071
|
+
</div>
|
|
4072
|
+
<kendo-formfield [style.width.%]="49" *ngIf="formGroup.contains(mapper.taskFields.completionRatio)">
|
|
4073
|
+
<kendo-label [for]="mapper.taskFields.completionRatio" [text]="getText('completionRatioFieldInputLabel')"></kendo-label>
|
|
4074
|
+
<kendo-numerictextbox
|
|
4075
|
+
[formControlName]="mapper.taskFields.completionRatio"
|
|
4076
|
+
[min]="0"
|
|
4077
|
+
[max]="1"
|
|
4078
|
+
[decimals]="2"
|
|
4079
|
+
format="p2"
|
|
4080
|
+
[step]="0.01"
|
|
4081
|
+
></kendo-numerictextbox>
|
|
4082
|
+
</kendo-formfield>
|
|
4083
|
+
</form>
|
|
4084
|
+
<kendo-dialog-actions layout="normal">
|
|
4085
|
+
<button kendoButton (click)="onTaskDelete()">{{ getText('deleteButtonText') }}</button>
|
|
4086
|
+
<kendo-treelist-spacer></kendo-treelist-spacer>
|
|
4087
|
+
<button kendoButton [primary]="true" (click)="handleEditingResult('save')">{{ getText('saveButtonText') }}</button>
|
|
4088
|
+
<button kendoButton (click)="handleEditingResult('cancel')">{{ getText('cancelButtonText') }}</button>
|
|
4089
|
+
</kendo-dialog-actions>
|
|
4090
|
+
</kendo-dialog>
|
|
4091
|
+
`
|
|
4092
|
+
}),
|
|
4093
|
+
__metadata("design:paramtypes", [MappingService,
|
|
4094
|
+
EditService,
|
|
4095
|
+
LocalizationService])
|
|
4096
|
+
], EditDialogComponent);
|
|
4097
|
+
|
|
4098
|
+
/**
|
|
4099
|
+
* @hidden
|
|
4100
|
+
*/
|
|
4101
|
+
class Messages extends ComponentMessages {
|
|
4102
|
+
}
|
|
4103
|
+
__decorate([
|
|
4104
|
+
Input(),
|
|
4105
|
+
__metadata("design:type", String)
|
|
4106
|
+
], Messages.prototype, "taskDeleteLabel", void 0);
|
|
4107
|
+
__decorate([
|
|
4108
|
+
Input(),
|
|
4109
|
+
__metadata("design:type", String)
|
|
4110
|
+
], Messages.prototype, "taskEditingDialogTitle", void 0);
|
|
4111
|
+
__decorate([
|
|
4112
|
+
Input(),
|
|
4113
|
+
__metadata("design:type", String)
|
|
4114
|
+
], Messages.prototype, "taskEditingDialogCloseTitle", void 0);
|
|
4115
|
+
__decorate([
|
|
4116
|
+
Input(),
|
|
4117
|
+
__metadata("design:type", String)
|
|
4118
|
+
], Messages.prototype, "confirmationDialogCloseTitle", void 0);
|
|
4119
|
+
__decorate([
|
|
4120
|
+
Input(),
|
|
4121
|
+
__metadata("design:type", String)
|
|
4122
|
+
], Messages.prototype, "confirmationDialogTitle", void 0);
|
|
4123
|
+
__decorate([
|
|
4124
|
+
Input(),
|
|
4125
|
+
__metadata("design:type", String)
|
|
4126
|
+
], Messages.prototype, "deleteButtonText", void 0);
|
|
4127
|
+
__decorate([
|
|
4128
|
+
Input(),
|
|
4129
|
+
__metadata("design:type", String)
|
|
4130
|
+
], Messages.prototype, "cancelButtonText", void 0);
|
|
4131
|
+
__decorate([
|
|
4132
|
+
Input(),
|
|
4133
|
+
__metadata("design:type", String)
|
|
4134
|
+
], Messages.prototype, "saveButtonText", void 0);
|
|
4135
|
+
__decorate([
|
|
4136
|
+
Input(),
|
|
4137
|
+
__metadata("design:type", String)
|
|
4138
|
+
], Messages.prototype, "titleFieldInputLabel", void 0);
|
|
4139
|
+
__decorate([
|
|
4140
|
+
Input(),
|
|
4141
|
+
__metadata("design:type", String)
|
|
4142
|
+
], Messages.prototype, "startFieldInputLabel", void 0);
|
|
4143
|
+
__decorate([
|
|
4144
|
+
Input(),
|
|
4145
|
+
__metadata("design:type", String)
|
|
4146
|
+
], Messages.prototype, "endFieldInputLabel", void 0);
|
|
4147
|
+
__decorate([
|
|
4148
|
+
Input(),
|
|
4149
|
+
__metadata("design:type", String)
|
|
4150
|
+
], Messages.prototype, "completionRatioFieldInputLabel", void 0);
|
|
4151
|
+
__decorate([
|
|
4152
|
+
Input(),
|
|
4153
|
+
__metadata("design:type", String)
|
|
4154
|
+
], Messages.prototype, "confirmationDialogContent", void 0);
|
|
4155
|
+
__decorate([
|
|
4156
|
+
Input(),
|
|
4157
|
+
__metadata("design:type", String)
|
|
4158
|
+
], Messages.prototype, "dayViewText", void 0);
|
|
4159
|
+
__decorate([
|
|
4160
|
+
Input(),
|
|
4161
|
+
__metadata("design:type", String)
|
|
4162
|
+
], Messages.prototype, "weekViewText", void 0);
|
|
4163
|
+
__decorate([
|
|
4164
|
+
Input(),
|
|
4165
|
+
__metadata("design:type", String)
|
|
4166
|
+
], Messages.prototype, "monthViewText", void 0);
|
|
4167
|
+
__decorate([
|
|
4168
|
+
Input(),
|
|
4169
|
+
__metadata("design:type", String)
|
|
4170
|
+
], Messages.prototype, "yearViewText", void 0);
|
|
4171
|
+
__decorate([
|
|
4172
|
+
Input(),
|
|
4173
|
+
__metadata("design:type", String)
|
|
4174
|
+
], Messages.prototype, "noRecords", void 0);
|
|
4175
|
+
__decorate([
|
|
4176
|
+
Input(),
|
|
4177
|
+
__metadata("design:type", String)
|
|
4178
|
+
], Messages.prototype, "filter", void 0);
|
|
4179
|
+
__decorate([
|
|
4180
|
+
Input(),
|
|
4181
|
+
__metadata("design:type", String)
|
|
4182
|
+
], Messages.prototype, "filterEqOperator", void 0);
|
|
4183
|
+
__decorate([
|
|
4184
|
+
Input(),
|
|
4185
|
+
__metadata("design:type", String)
|
|
4186
|
+
], Messages.prototype, "filterNotEqOperator", void 0);
|
|
4187
|
+
__decorate([
|
|
4188
|
+
Input(),
|
|
4189
|
+
__metadata("design:type", String)
|
|
4190
|
+
], Messages.prototype, "filterIsNullOperator", void 0);
|
|
4191
|
+
__decorate([
|
|
4192
|
+
Input(),
|
|
4193
|
+
__metadata("design:type", String)
|
|
4194
|
+
], Messages.prototype, "filterIsNotNullOperator", void 0);
|
|
4195
|
+
__decorate([
|
|
4196
|
+
Input(),
|
|
4197
|
+
__metadata("design:type", String)
|
|
4198
|
+
], Messages.prototype, "filterIsEmptyOperator", void 0);
|
|
4199
|
+
__decorate([
|
|
4200
|
+
Input(),
|
|
4201
|
+
__metadata("design:type", String)
|
|
4202
|
+
], Messages.prototype, "filterIsNotEmptyOperator", void 0);
|
|
4203
|
+
__decorate([
|
|
4204
|
+
Input(),
|
|
4205
|
+
__metadata("design:type", String)
|
|
4206
|
+
], Messages.prototype, "filterStartsWithOperator", void 0);
|
|
4207
|
+
__decorate([
|
|
4208
|
+
Input(),
|
|
4209
|
+
__metadata("design:type", String)
|
|
4210
|
+
], Messages.prototype, "filterContainsOperator", void 0);
|
|
4211
|
+
__decorate([
|
|
4212
|
+
Input(),
|
|
4213
|
+
__metadata("design:type", String)
|
|
4214
|
+
], Messages.prototype, "filterNotContainsOperator", void 0);
|
|
4215
|
+
__decorate([
|
|
4216
|
+
Input(),
|
|
4217
|
+
__metadata("design:type", String)
|
|
4218
|
+
], Messages.prototype, "filterEndsWithOperator", void 0);
|
|
4219
|
+
__decorate([
|
|
4220
|
+
Input(),
|
|
4221
|
+
__metadata("design:type", String)
|
|
4222
|
+
], Messages.prototype, "filterGteOperator", void 0);
|
|
4223
|
+
__decorate([
|
|
4224
|
+
Input(),
|
|
4225
|
+
__metadata("design:type", String)
|
|
4226
|
+
], Messages.prototype, "filterGtOperator", void 0);
|
|
4227
|
+
__decorate([
|
|
4228
|
+
Input(),
|
|
4229
|
+
__metadata("design:type", String)
|
|
4230
|
+
], Messages.prototype, "filterLteOperator", void 0);
|
|
4231
|
+
__decorate([
|
|
4232
|
+
Input(),
|
|
4233
|
+
__metadata("design:type", String)
|
|
4234
|
+
], Messages.prototype, "filterLtOperator", void 0);
|
|
4235
|
+
__decorate([
|
|
4236
|
+
Input(),
|
|
4237
|
+
__metadata("design:type", String)
|
|
4238
|
+
], Messages.prototype, "filterIsTrue", void 0);
|
|
4239
|
+
__decorate([
|
|
4240
|
+
Input(),
|
|
4241
|
+
__metadata("design:type", String)
|
|
4242
|
+
], Messages.prototype, "filterIsFalse", void 0);
|
|
4243
|
+
__decorate([
|
|
4244
|
+
Input(),
|
|
4245
|
+
__metadata("design:type", String)
|
|
4246
|
+
], Messages.prototype, "filterBooleanAll", void 0);
|
|
4247
|
+
__decorate([
|
|
4248
|
+
Input(),
|
|
4249
|
+
__metadata("design:type", String)
|
|
4250
|
+
], Messages.prototype, "filterAfterOrEqualOperator", void 0);
|
|
4251
|
+
__decorate([
|
|
4252
|
+
Input(),
|
|
4253
|
+
__metadata("design:type", String)
|
|
4254
|
+
], Messages.prototype, "filterAfterOperator", void 0);
|
|
4255
|
+
__decorate([
|
|
4256
|
+
Input(),
|
|
4257
|
+
__metadata("design:type", String)
|
|
4258
|
+
], Messages.prototype, "filterBeforeOperator", void 0);
|
|
4259
|
+
__decorate([
|
|
4260
|
+
Input(),
|
|
4261
|
+
__metadata("design:type", String)
|
|
4262
|
+
], Messages.prototype, "filterBeforeOrEqualOperator", void 0);
|
|
4263
|
+
__decorate([
|
|
4264
|
+
Input(),
|
|
4265
|
+
__metadata("design:type", String)
|
|
4266
|
+
], Messages.prototype, "filterFilterButton", void 0);
|
|
4267
|
+
__decorate([
|
|
4268
|
+
Input(),
|
|
4269
|
+
__metadata("design:type", String)
|
|
4270
|
+
], Messages.prototype, "filterClearButton", void 0);
|
|
4271
|
+
__decorate([
|
|
4272
|
+
Input(),
|
|
4273
|
+
__metadata("design:type", String)
|
|
4274
|
+
], Messages.prototype, "filterAndLogic", void 0);
|
|
4275
|
+
__decorate([
|
|
4276
|
+
Input(),
|
|
4277
|
+
__metadata("design:type", String)
|
|
4278
|
+
], Messages.prototype, "filterOrLogic", void 0);
|
|
4279
|
+
__decorate([
|
|
4280
|
+
Input(),
|
|
4281
|
+
__metadata("design:type", String)
|
|
4282
|
+
], Messages.prototype, "loading", void 0);
|
|
4283
|
+
__decorate([
|
|
4284
|
+
Input(),
|
|
4285
|
+
__metadata("design:type", String)
|
|
4286
|
+
], Messages.prototype, "columnMenu", void 0);
|
|
4287
|
+
__decorate([
|
|
4288
|
+
Input(),
|
|
4289
|
+
__metadata("design:type", String)
|
|
4290
|
+
], Messages.prototype, "columns", void 0);
|
|
4291
|
+
__decorate([
|
|
4292
|
+
Input(),
|
|
4293
|
+
__metadata("design:type", String)
|
|
4294
|
+
], Messages.prototype, "lock", void 0);
|
|
4295
|
+
__decorate([
|
|
4296
|
+
Input(),
|
|
4297
|
+
__metadata("design:type", String)
|
|
4298
|
+
], Messages.prototype, "unlock", void 0);
|
|
4299
|
+
__decorate([
|
|
4300
|
+
Input(),
|
|
4301
|
+
__metadata("design:type", String)
|
|
4302
|
+
], Messages.prototype, "sortable", void 0);
|
|
4303
|
+
__decorate([
|
|
4304
|
+
Input(),
|
|
4305
|
+
__metadata("design:type", String)
|
|
4306
|
+
], Messages.prototype, "sortAscending", void 0);
|
|
4307
|
+
__decorate([
|
|
4308
|
+
Input(),
|
|
4309
|
+
__metadata("design:type", String)
|
|
4310
|
+
], Messages.prototype, "sortDescending", void 0);
|
|
4311
|
+
__decorate([
|
|
4312
|
+
Input(),
|
|
4313
|
+
__metadata("design:type", String)
|
|
4314
|
+
], Messages.prototype, "sortedAscending", void 0);
|
|
4315
|
+
__decorate([
|
|
4316
|
+
Input(),
|
|
4317
|
+
__metadata("design:type", String)
|
|
4318
|
+
], Messages.prototype, "sortedDescending", void 0);
|
|
4319
|
+
__decorate([
|
|
4320
|
+
Input(),
|
|
4321
|
+
__metadata("design:type", String)
|
|
4322
|
+
], Messages.prototype, "sortedDefault", void 0);
|
|
4323
|
+
__decorate([
|
|
4324
|
+
Input(),
|
|
4325
|
+
__metadata("design:type", String)
|
|
4326
|
+
], Messages.prototype, "columnsApply", void 0);
|
|
4327
|
+
__decorate([
|
|
4328
|
+
Input(),
|
|
4329
|
+
__metadata("design:type", String)
|
|
4330
|
+
], Messages.prototype, "columnsReset", void 0);
|
|
4331
|
+
|
|
4332
|
+
var CustomMessagesComponent_1;
|
|
4333
|
+
/**
|
|
4334
|
+
* Custom component messages override default component messages
|
|
4335
|
+
* ([see example]({% slug globalization_treelist %}#toc-localization)).
|
|
4336
|
+
*/
|
|
4337
|
+
let CustomMessagesComponent = CustomMessagesComponent_1 = class CustomMessagesComponent extends Messages {
|
|
4338
|
+
constructor(service) {
|
|
4339
|
+
super();
|
|
4340
|
+
this.service = service;
|
|
4341
|
+
}
|
|
4342
|
+
get override() {
|
|
4343
|
+
return true;
|
|
4344
|
+
}
|
|
4345
|
+
};
|
|
4346
|
+
CustomMessagesComponent = CustomMessagesComponent_1 = __decorate([
|
|
4347
|
+
Component({
|
|
4348
|
+
providers: [
|
|
4349
|
+
{
|
|
4350
|
+
provide: Messages,
|
|
4351
|
+
useExisting: forwardRef(() => CustomMessagesComponent_1)
|
|
4352
|
+
}
|
|
4353
|
+
],
|
|
4354
|
+
selector: 'kendo-gantt-messages',
|
|
4355
|
+
template: ``
|
|
4356
|
+
}),
|
|
4357
|
+
__metadata("design:paramtypes", [LocalizationService])
|
|
4358
|
+
], CustomMessagesComponent);
|
|
4359
|
+
|
|
4360
|
+
var LocalizedMessagesDirective_1;
|
|
4361
|
+
/**
|
|
4362
|
+
* @hidden
|
|
4363
|
+
*/
|
|
4364
|
+
let LocalizedMessagesDirective = LocalizedMessagesDirective_1 = class LocalizedMessagesDirective extends Messages {
|
|
4365
|
+
constructor(service) {
|
|
4366
|
+
super();
|
|
4367
|
+
this.service = service;
|
|
4368
|
+
}
|
|
4369
|
+
};
|
|
4370
|
+
LocalizedMessagesDirective = LocalizedMessagesDirective_1 = __decorate([
|
|
4371
|
+
Directive({
|
|
4372
|
+
providers: [
|
|
4373
|
+
{
|
|
4374
|
+
provide: Messages,
|
|
4375
|
+
useExisting: forwardRef(() => LocalizedMessagesDirective_1)
|
|
4376
|
+
}
|
|
4377
|
+
],
|
|
4378
|
+
selector: '[kendoGanttLocalizedMessages]'
|
|
4379
|
+
}),
|
|
4380
|
+
__metadata("design:paramtypes", [LocalizationService])
|
|
4381
|
+
], LocalizedMessagesDirective);
|
|
4382
|
+
|
|
4383
|
+
/**
|
|
4384
|
+
* @hidden
|
|
4385
|
+
*/
|
|
4386
|
+
let GanttTreeListMessagesDirective = class GanttTreeListMessagesDirective {
|
|
4387
|
+
constructor(localizationService) {
|
|
4388
|
+
this.localizationService = localizationService;
|
|
4389
|
+
}
|
|
4390
|
+
ngAfterViewInit() {
|
|
4391
|
+
const treeListServiceDictionary = this.localizationService.dictionary;
|
|
4392
|
+
Object.keys(treeListServiceDictionary)
|
|
4393
|
+
.forEach(token => treeListServiceDictionary[token] = this.kendoGanttTreeListMessages.get(token.replace('kendo.treelist.', '')));
|
|
4394
|
+
}
|
|
4395
|
+
};
|
|
4396
|
+
__decorate([
|
|
4397
|
+
Input(),
|
|
4398
|
+
__metadata("design:type", LocalizationService)
|
|
4399
|
+
], GanttTreeListMessagesDirective.prototype, "kendoGanttTreeListMessages", void 0);
|
|
4400
|
+
GanttTreeListMessagesDirective = __decorate([
|
|
4401
|
+
Directive({ selector: '[kendoGanttTreeListMessages]' }),
|
|
4402
|
+
__metadata("design:paramtypes", [LocalizationService])
|
|
4403
|
+
], GanttTreeListMessagesDirective);
|
|
4404
|
+
|
|
3392
4405
|
const IMPORTED_MODULES = [
|
|
3393
4406
|
CommonModule,
|
|
4407
|
+
ReactiveFormsModule,
|
|
4408
|
+
LabelModule,
|
|
4409
|
+
InputsModule,
|
|
4410
|
+
DateInputsModule,
|
|
4411
|
+
ButtonsModule,
|
|
3394
4412
|
SplitterModule,
|
|
3395
4413
|
TreeListModule,
|
|
3396
|
-
ButtonsModule
|
|
4414
|
+
ButtonsModule,
|
|
4415
|
+
DialogModule,
|
|
4416
|
+
EventsModule
|
|
3397
4417
|
];
|
|
3398
4418
|
const DECLARATIONS = [
|
|
3399
4419
|
GanttComponent,
|
|
@@ -3417,6 +4437,7 @@ const DECLARATIONS = [
|
|
|
3417
4437
|
FilterMenuTemplateDirective,
|
|
3418
4438
|
FilterCellTemplateDirective,
|
|
3419
4439
|
CellTemplateDirective,
|
|
4440
|
+
EditTemplateDirective,
|
|
3420
4441
|
ColumnMenuTemplateDirective,
|
|
3421
4442
|
HeaderTemplateDirective,
|
|
3422
4443
|
FooterTemplateDirective,
|
|
@@ -3424,10 +4445,42 @@ const DECLARATIONS = [
|
|
|
3424
4445
|
GanttDependencyDirective,
|
|
3425
4446
|
TimelineDayViewComponent,
|
|
3426
4447
|
TimelineWeekViewComponent,
|
|
3427
|
-
TimelineMonthViewComponent
|
|
4448
|
+
TimelineMonthViewComponent,
|
|
4449
|
+
EditDialogComponent,
|
|
4450
|
+
CustomMessagesComponent,
|
|
4451
|
+
LocalizedMessagesDirective,
|
|
4452
|
+
GanttTreeListMessagesDirective
|
|
3428
4453
|
];
|
|
3429
4454
|
/**
|
|
3430
|
-
*
|
|
4455
|
+
* Represents the [NgModule]({{ site.data.urls.angular['ngmoduleapi'] }})
|
|
4456
|
+
* definition for the Gantt component.
|
|
4457
|
+
*
|
|
4458
|
+
* @example
|
|
4459
|
+
*
|
|
4460
|
+
* ```ts-no-run
|
|
4461
|
+
* // Import the Gantt module
|
|
4462
|
+
* import { GanttModule } from '@progress/kendo-angular-gantt';
|
|
4463
|
+
*
|
|
4464
|
+
* // The browser platform with a compiler
|
|
4465
|
+
* import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
|
|
4466
|
+
*
|
|
4467
|
+
* import { NgModule } from '@angular/core';
|
|
4468
|
+
*
|
|
4469
|
+
* // Import the app component
|
|
4470
|
+
* import { AppComponent } from './app.component';
|
|
4471
|
+
*
|
|
4472
|
+
* // Define the app module
|
|
4473
|
+
* _@NgModule({
|
|
4474
|
+
* declarations: [AppComponent], // declare app component
|
|
4475
|
+
* imports: [BrowserModule, GanttModule], // import Gantt module
|
|
4476
|
+
* bootstrap: [AppComponent]
|
|
4477
|
+
* })
|
|
4478
|
+
* export class AppModule {}
|
|
4479
|
+
*
|
|
4480
|
+
* // Compile and launch the module
|
|
4481
|
+
* platformBrowserDynamic().bootstrapModule(AppModule);
|
|
4482
|
+
*
|
|
4483
|
+
* ```
|
|
3431
4484
|
*/
|
|
3432
4485
|
let GanttModule = class GanttModule {
|
|
3433
4486
|
};
|
|
@@ -3435,7 +4488,11 @@ GanttModule = __decorate([
|
|
|
3435
4488
|
NgModule({
|
|
3436
4489
|
imports: [...IMPORTED_MODULES],
|
|
3437
4490
|
declarations: [...DECLARATIONS],
|
|
3438
|
-
exports: [...DECLARATIONS]
|
|
4491
|
+
exports: [...DECLARATIONS],
|
|
4492
|
+
providers: [{
|
|
4493
|
+
provide: L10N_PREFIX,
|
|
4494
|
+
useValue: 'kendo.gantt'
|
|
4495
|
+
}]
|
|
3439
4496
|
})
|
|
3440
4497
|
], GanttModule);
|
|
3441
4498
|
|
|
@@ -3443,4 +4500,4 @@ GanttModule = __decorate([
|
|
|
3443
4500
|
* Generated bundle index. Do not edit.
|
|
3444
4501
|
*/
|
|
3445
4502
|
|
|
3446
|
-
export { MappingService, OptionChangesService, DependencyDomService, GanttDependencyDirective, GanttHeaderTableBodyComponent, GanttMilestoneTaskComponent, GanttSummaryTaskComponent, GanttTaskBase, GanttTaskComponent, GanttTasksTableBodyComponent, ScrollSyncService, GanttTimelineComponent, TimelineBaseViewService, TimelineDayViewComponent, TimelineDayViewService, TimelineMonthViewComponent, TimelineMonthViewService, TimelineViewService, TimelineWeekViewComponent, TimelineWeekViewService, ViewBase, ToolbarComponent, ViewSelectorComponent, GanttComponent, GanttModule, GanttHierarchyBindingDirective, GanttFlatBindingDirective, GanttExpandableDirective, GanttTaskTemplateDirective, GanttTaskContentTemplateDirective, GanttSummaryTaskTemplateDirective, ToolbarTemplateDirective, GanttColumnBase, GanttColumnComponent, GanttColumnGroupComponent, GanttSpanColumnComponent, CellTemplateDirective, HeaderTemplateDirective, FooterTemplateDirective, ColumnMenuTemplateDirective, FilterCellTemplateDirective, FilterMenuTemplateDirective };
|
|
4503
|
+
export { MappingService, OptionChangesService, DependencyDomService, GanttDependencyDirective, EditDialogComponent, EditService, CustomMessagesComponent, LocalizedMessagesDirective, Messages, GanttTreeListMessagesDirective, GanttHeaderTableBodyComponent, GanttMilestoneTaskComponent, GanttSummaryTaskComponent, GanttTaskBase, GanttTaskComponent, GanttTasksTableBodyComponent, ScrollSyncService, GanttTimelineComponent, TimelineBaseViewService, TimelineDayViewComponent, TimelineDayViewService, TimelineMonthViewComponent, TimelineMonthViewService, TimelineViewService, TimelineWeekViewComponent, TimelineWeekViewService, ViewBase, ToolbarComponent, ViewSelectorComponent, GanttComponent, GanttModule, GanttHierarchyBindingDirective, GanttFlatBindingDirective, GanttExpandableDirective, GanttTaskTemplateDirective, GanttTaskContentTemplateDirective, GanttSummaryTaskTemplateDirective, ToolbarTemplateDirective, GanttColumnBase, GanttColumnComponent, GanttColumnGroupComponent, GanttSpanColumnComponent, CellTemplateDirective, HeaderTemplateDirective, FooterTemplateDirective, ColumnMenuTemplateDirective, FilterCellTemplateDirective, FilterMenuTemplateDirective, EditTemplateDirective };
|