@progress/kendo-angular-gantt 13.5.1-develop.3 → 13.6.0-develop.1
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/esm2020/gantt.component.mjs +47 -17
- package/esm2020/models/current-time-settings.interface.mjs +5 -0
- package/esm2020/package-metadata.mjs +2 -2
- package/esm2020/timeline/current-time-marker.service.mjs +85 -0
- package/esm2020/timeline/gantt-timeline.component.mjs +27 -11
- package/esm2020/timeline/timeline-base-view.service.mjs +10 -4
- package/esm2020/timeline/view-base.mjs +3 -1
- package/fesm2015/progress-kendo-angular-gantt.mjs +155 -27
- package/fesm2020/progress-kendo-angular-gantt.mjs +152 -27
- package/gantt.component.d.ts +18 -2
- package/index.d.ts +1 -0
- package/models/current-time-settings.interface.d.ts +19 -0
- package/package.json +13 -13
- package/schematics/ngAdd/index.js +11 -11
- package/timeline/current-time-marker.service.d.ts +40 -0
- package/timeline/gantt-timeline.component.d.ts +6 -2
- package/timeline/view-base.d.ts +9 -1
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import * as i0 from '@angular/core';
|
|
6
6
|
import { Injectable, Component, HostBinding, Input, InjectionToken, Inject, LOCALE_ID, EventEmitter, Directive, ViewChild, forwardRef, ViewContainerRef, Output, Optional, QueryList, SkipSelf, Host, ContentChildren, ContentChild, HostListener, isDevMode, NgModule } from '@angular/core';
|
|
7
|
-
import * as
|
|
7
|
+
import * as i12 from '@progress/kendo-angular-treelist';
|
|
8
8
|
import { ColumnBase, ColumnComponent, ColumnGroupComponent, SpanColumnComponent, DataBoundTreeComponent, ExpandableTreeComponent, TreeListComponent, FlatBindingDirective, HierarchyBindingDirective, ExpandableDirective, TreeListModule } from '@progress/kendo-angular-treelist';
|
|
9
9
|
import { Subject, Subscription, fromEvent, forkJoin, EMPTY, isObservable, of } from 'rxjs';
|
|
10
10
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
11
|
-
import * as
|
|
11
|
+
import * as i17 from '@progress/kendo-angular-common';
|
|
12
12
|
import { Keys, isDocumentAvailable, closestInScope, matchesClasses, PreventableEvent, anyChanged, closest, isFocusable, focusableSelector, isVisible, shouldShowValidationUI, hasObservers, EventsModule, DraggableModule, WatermarkModule } from '@progress/kendo-angular-common';
|
|
13
13
|
import { map, distinctUntilChanged, take, expand, reduce, switchMap, filter } from 'rxjs/operators';
|
|
14
14
|
import { cloneDate, addWeeks, firstDayInWeek, addDays, lastDayOfMonth, getDate, firstDayOfMonth, addMonths, lastMonthOfYear, MS_PER_HOUR, MS_PER_DAY, isEqual } from '@progress/kendo-date-math';
|
|
@@ -52,8 +52,8 @@ const packageMetadata = {
|
|
|
52
52
|
name: '@progress/kendo-angular-gantt',
|
|
53
53
|
productName: 'Kendo UI for Angular',
|
|
54
54
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
55
|
-
publishDate:
|
|
56
|
-
version: '13.
|
|
55
|
+
publishDate: 1695633813,
|
|
56
|
+
version: '13.6.0-develop.1',
|
|
57
57
|
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'
|
|
58
58
|
};
|
|
59
59
|
|
|
@@ -182,7 +182,7 @@ const isArray = (value) => Array.isArray(value);
|
|
|
182
182
|
* Returns a new date with the specified hours, minutes, seconds and millliseconds set.
|
|
183
183
|
* Only the hours are required, the rest of the params are set to `0` by default.
|
|
184
184
|
*/
|
|
185
|
-
const setTime = (date, hours, minutes = 0, seconds = 0, milliseconds = 0) => {
|
|
185
|
+
const setTime$1 = (date, hours, minutes = 0, seconds = 0, milliseconds = 0) => {
|
|
186
186
|
if (!isPresent(date)) {
|
|
187
187
|
return null;
|
|
188
188
|
}
|
|
@@ -657,6 +657,82 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
657
657
|
type: Injectable
|
|
658
658
|
}], ctorParameters: function () { return [{ type: MappingService }]; } });
|
|
659
659
|
|
|
660
|
+
const MS_PER_SECOND = 1000;
|
|
661
|
+
const MS_PER_MINUTE = 60 * MS_PER_SECOND;
|
|
662
|
+
/**
|
|
663
|
+
* @hidden
|
|
664
|
+
*/
|
|
665
|
+
class CurrentTimeMarkerService {
|
|
666
|
+
constructor(renderer, zone) {
|
|
667
|
+
this.renderer = renderer;
|
|
668
|
+
this.zone = zone;
|
|
669
|
+
this.slots = [];
|
|
670
|
+
this.rows = [];
|
|
671
|
+
this.now = new Date(Date.now());
|
|
672
|
+
this.createTimeMarker = () => {
|
|
673
|
+
if (!isDocumentAvailable()) {
|
|
674
|
+
return;
|
|
675
|
+
}
|
|
676
|
+
this.removeTimeMarker();
|
|
677
|
+
if (this.slotIndex >= 0) {
|
|
678
|
+
this.now = new Date(Date.now());
|
|
679
|
+
this.timeMarkerDiv = this.renderer.createElement('div');
|
|
680
|
+
this.renderer.addClass(this.timeMarkerDiv, 'k-current-time');
|
|
681
|
+
this.renderer.setStyle(this.timeMarkerDiv, 'width', '1px');
|
|
682
|
+
this.renderer.setStyle(this.timeMarkerDiv, 'top', '0px');
|
|
683
|
+
this.renderer.setStyle(this.timeMarkerDiv, `${this.rtl ? 'right' : 'left'}`, this.deltaOffset + 'px');
|
|
684
|
+
this.renderer.appendChild(this.container.nativeElement, this.timeMarkerDiv);
|
|
685
|
+
this.renderer.setStyle(this.timeMarkerDiv, 'height', this.height + 'px');
|
|
686
|
+
this.currentTimeTimeout = setTimeout(this.createTimeMarker, this.interval || MS_PER_MINUTE);
|
|
687
|
+
}
|
|
688
|
+
};
|
|
689
|
+
}
|
|
690
|
+
get deltaOffset() {
|
|
691
|
+
if (this.slotIndex >= 0) {
|
|
692
|
+
const total = this.slots[this.slotIndex].end.getTime() - this.slots[this.slotIndex].start.getTime();
|
|
693
|
+
if (total > 0) {
|
|
694
|
+
const currentTimeValue = this.now.getTime() - this.slots[this.slotIndex].start.getTime();
|
|
695
|
+
const fractionInsideCell = currentTimeValue / total;
|
|
696
|
+
const deltaOffsetToSlot = this.slotIndex * this.slotWidth;
|
|
697
|
+
const deltaOffsetInsideSlot = fractionInsideCell * this.slotWidth;
|
|
698
|
+
return deltaOffsetToSlot + deltaOffsetInsideSlot;
|
|
699
|
+
}
|
|
700
|
+
return 0;
|
|
701
|
+
}
|
|
702
|
+
}
|
|
703
|
+
;
|
|
704
|
+
get slotWidth() {
|
|
705
|
+
var _a;
|
|
706
|
+
return (_a = this.slots[0]) === null || _a === void 0 ? void 0 : _a.slotWidth;
|
|
707
|
+
}
|
|
708
|
+
get slotIndex() {
|
|
709
|
+
return this.slots.indexOf(this.slots.find((slot) => slot.start <= this.now && slot.end > this.now));
|
|
710
|
+
}
|
|
711
|
+
get height() {
|
|
712
|
+
return this.rows.length * this.rowHeight;
|
|
713
|
+
}
|
|
714
|
+
get interval() {
|
|
715
|
+
if (typeof (this.currentTimeMarker) === 'boolean') {
|
|
716
|
+
return MS_PER_MINUTE;
|
|
717
|
+
}
|
|
718
|
+
return this.currentTimeMarker.updateInterval || MS_PER_MINUTE;
|
|
719
|
+
}
|
|
720
|
+
ngOnDestroy() {
|
|
721
|
+
clearInterval(this.currentTimeTimeout);
|
|
722
|
+
}
|
|
723
|
+
removeTimeMarker() {
|
|
724
|
+
if (this.timeMarkerDiv) {
|
|
725
|
+
this.renderer.removeChild(this.container.nativeElement, this.timeMarkerDiv);
|
|
726
|
+
clearInterval(this.currentTimeTimeout);
|
|
727
|
+
}
|
|
728
|
+
}
|
|
729
|
+
}
|
|
730
|
+
CurrentTimeMarkerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CurrentTimeMarkerService, deps: [{ token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
731
|
+
CurrentTimeMarkerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CurrentTimeMarkerService });
|
|
732
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CurrentTimeMarkerService, decorators: [{
|
|
733
|
+
type: Injectable
|
|
734
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.NgZone }]; } });
|
|
735
|
+
|
|
660
736
|
/**
|
|
661
737
|
* @hidden
|
|
662
738
|
*/
|
|
@@ -704,6 +780,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
704
780
|
*/
|
|
705
781
|
const TOUCH_ENABLED = new InjectionToken('gantt-touch-enabled');
|
|
706
782
|
|
|
783
|
+
const setTime = (origin, candidate) => {
|
|
784
|
+
const date = cloneDate(origin);
|
|
785
|
+
date.setHours(candidate.getHours(), candidate.getMinutes(), candidate.getSeconds(), candidate.getMilliseconds());
|
|
786
|
+
return date;
|
|
787
|
+
};
|
|
707
788
|
/**
|
|
708
789
|
* @hidden
|
|
709
790
|
*/
|
|
@@ -720,6 +801,7 @@ const MONTH_FORMAT = 'MMM';
|
|
|
720
801
|
* @hidden
|
|
721
802
|
*/
|
|
722
803
|
const YEAR_FORMAT = 'yyyy';
|
|
804
|
+
const END_OF_DAY_DATE = new Date(1980, 0, 1, 23, 59, 59, 999);
|
|
723
805
|
/**
|
|
724
806
|
* @hidden
|
|
725
807
|
*/
|
|
@@ -830,7 +912,7 @@ let TimelineBaseViewService = class TimelineBaseViewService {
|
|
|
830
912
|
if (span > 0) {
|
|
831
913
|
slots.push({
|
|
832
914
|
start: daySlots[0].start,
|
|
833
|
-
end: daySlots[span - 1].end,
|
|
915
|
+
end: setTime(daySlots[span - 1].end, END_OF_DAY_DATE),
|
|
834
916
|
text: `${firstDay} - ${lastDay}`,
|
|
835
917
|
span: span,
|
|
836
918
|
slotWidth: this.options.slotWidth
|
|
@@ -856,7 +938,7 @@ let TimelineBaseViewService = class TimelineBaseViewService {
|
|
|
856
938
|
if (span > 0) {
|
|
857
939
|
slots.push({
|
|
858
940
|
start: isMainViewType ? daySlots[0].start : weekSlots[0].start,
|
|
859
|
-
end: isMainViewType ? daySlots[span - 1] : weekSlots[span - 1].end,
|
|
941
|
+
end: isMainViewType ? daySlots[span - 1] : setTime(weekSlots[span - 1].end, END_OF_DAY_DATE),
|
|
860
942
|
span: span,
|
|
861
943
|
text: shortText,
|
|
862
944
|
slotWidth: this.options.slotWidth
|
|
@@ -879,7 +961,7 @@ let TimelineBaseViewService = class TimelineBaseViewService {
|
|
|
879
961
|
if (span > 0) {
|
|
880
962
|
slots.push({
|
|
881
963
|
start: monthSlots[0].start,
|
|
882
|
-
end: monthSlots[span - 1].end,
|
|
964
|
+
end: setTime(monthSlots[span - 1].end, END_OF_DAY_DATE),
|
|
883
965
|
span: span,
|
|
884
966
|
text: this.intlService.formatDate(slotEnd, yearFormat),
|
|
885
967
|
slotWidth: this.options.slotWidth
|
|
@@ -908,13 +990,13 @@ class TimelineDayViewService extends TimelineBaseViewService {
|
|
|
908
990
|
* Gets a date an hour before the first task start with minutes, seconds, milliseconds cleared.
|
|
909
991
|
*/
|
|
910
992
|
getStartOffset(rangeStart) {
|
|
911
|
-
return setTime(rangeStart, rangeStart.getHours() - 1);
|
|
993
|
+
return setTime$1(rangeStart, rangeStart.getHours() - 1);
|
|
912
994
|
}
|
|
913
995
|
/**
|
|
914
996
|
* Gets a date an hour after the last task end with minutes, seconds, milliseconds cleared.
|
|
915
997
|
*/
|
|
916
998
|
getEndOffset(rangeEnd) {
|
|
917
|
-
return setTime(rangeEnd, rangeEnd.getHours() + 1);
|
|
999
|
+
return setTime$1(rangeEnd, rangeEnd.getHours() + 1);
|
|
918
1000
|
}
|
|
919
1001
|
/**
|
|
920
1002
|
*
|
|
@@ -2019,7 +2101,7 @@ GanttTaskComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
|
|
|
2019
2101
|
>
|
|
2020
2102
|
</div>
|
|
2021
2103
|
</ng-container>
|
|
2022
|
-
`, isInline: true, components: [{ type: i7.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type:
|
|
2104
|
+
`, isInline: true, components: [{ type: i7.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i17.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }] });
|
|
2023
2105
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GanttTaskComponent, decorators: [{
|
|
2024
2106
|
type: Component,
|
|
2025
2107
|
args: [{
|
|
@@ -2712,11 +2794,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
2712
2794
|
* @hidden
|
|
2713
2795
|
*/
|
|
2714
2796
|
class GanttTimelineComponent {
|
|
2715
|
-
constructor(scrollSyncService, dependencyDomService, renderer, zone) {
|
|
2797
|
+
constructor(scrollSyncService, dependencyDomService, renderer, zone, currentTimeMarkerService) {
|
|
2716
2798
|
this.scrollSyncService = scrollSyncService;
|
|
2717
2799
|
this.dependencyDomService = dependencyDomService;
|
|
2718
2800
|
this.renderer = renderer;
|
|
2719
2801
|
this.zone = zone;
|
|
2802
|
+
this.currentTimeMarkerService = currentTimeMarkerService;
|
|
2720
2803
|
this.hostClass = true;
|
|
2721
2804
|
this.dependencies = [];
|
|
2722
2805
|
// as all drag-and-drop operations are on the timeline container, use a single draggable instance
|
|
@@ -2730,7 +2813,16 @@ class GanttTimelineComponent {
|
|
|
2730
2813
|
.pipe(filter(args => isPresent(args.timelineRow)), switchMap(args => this.zone.onStable.pipe(take(1), map(() => args))) // ensure the content is rendered
|
|
2731
2814
|
)
|
|
2732
2815
|
.subscribe(({ timelineRow }) => {
|
|
2816
|
+
var _a;
|
|
2733
2817
|
const timelineRowHeight = isDocumentAvailable() ? timelineRow.getBoundingClientRect().height : 0;
|
|
2818
|
+
this.currentTimeMarkerService.rowHeight = timelineRowHeight;
|
|
2819
|
+
this.currentTimeMarkerService.currentTimeMarker = this.currentTimeMarker;
|
|
2820
|
+
this.currentTimeMarkerService.removeTimeMarker();
|
|
2821
|
+
if ((typeof this.currentTimeMarker === 'boolean' && this.currentTimeMarker) || ((_a = this.currentTimeMarker) === null || _a === void 0 ? void 0 : _a.enabled)) {
|
|
2822
|
+
this.zone.runOutsideAngular(() => {
|
|
2823
|
+
this.currentTimeMarkerService.createTimeMarker();
|
|
2824
|
+
});
|
|
2825
|
+
}
|
|
2734
2826
|
this.renderer.setStyle(this.timelineColumns.nativeElement, 'height', `${(this.rows || []).length * timelineRowHeight}px`);
|
|
2735
2827
|
}));
|
|
2736
2828
|
}
|
|
@@ -2741,6 +2833,9 @@ class GanttTimelineComponent {
|
|
|
2741
2833
|
return this.renderDependencyDragClues;
|
|
2742
2834
|
}
|
|
2743
2835
|
ngAfterViewInit() {
|
|
2836
|
+
this.currentTimeMarkerService.slots = this.slots;
|
|
2837
|
+
this.currentTimeMarkerService.rows = this.rows;
|
|
2838
|
+
this.currentTimeMarkerService.container = this.timelineContent;
|
|
2744
2839
|
const timelineHeader = this.timelineHeaderWrap.nativeElement;
|
|
2745
2840
|
const rightContainer = this.timelineContent.nativeElement;
|
|
2746
2841
|
this.scrollSyncService.registerElement(rightContainer, 'timeline');
|
|
@@ -2754,8 +2849,8 @@ class GanttTimelineComponent {
|
|
|
2754
2849
|
return item.hasOwnProperty('isWorking') && !item.isWorking;
|
|
2755
2850
|
}
|
|
2756
2851
|
}
|
|
2757
|
-
GanttTimelineComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GanttTimelineComponent, deps: [{ token: ScrollSyncService }, { token: DependencyDomService }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2758
|
-
GanttTimelineComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GanttTimelineComponent, selector: "kendo-gantt-timeline", inputs: { rows: "rows", slots: "slots", groupSlots: "groupSlots", tableWidth: "tableWidth", activeView: "activeView", taskContentTemplate: "taskContentTemplate", taskTemplate: "taskTemplate", summaryTaskTemplate: "summaryTaskTemplate", taskClass: "taskClass", renderDependencyDragClues: "renderDependencyDragClues", dragScrollSettings: "dragScrollSettings", selectable: "selectable", isTaskSelected: "isTaskSelected", isExpanded: "isExpanded", dependencies: "dependencies" }, outputs: { timelineContainerPress: "timelineContainerPress", timelineContainerDrag: "timelineContainerDrag", timelineContainerRelease: "timelineContainerRelease" }, host: { properties: { "class.k-gantt-timeline": "this.hostClass" } }, viewQueries: [{ propertyName: "timelineContent", first: true, predicate: ["timelineContent"], descendants: true, static: true }, { propertyName: "timelineColumns", first: true, predicate: ["timelineColumns"], descendants: true, static: true }, { propertyName: "timelineHeaderWrap", first: true, predicate: ["timelineHeaderWrap"], descendants: true, static: true }, { propertyName: "tasksContainer", first: true, predicate: ["tasksContainer"], descendants: true, static: true }, { propertyName: "dragPopupContainer", first: true, predicate: ["dragPopupContainer"], descendants: true, read: ViewContainerRef }, { propertyName: "dependencyDragCreatePolyline", first: true, predicate: ["dependencyDragCreatePolyline"], descendants: true }], ngImport: i0, template: `
|
|
2852
|
+
GanttTimelineComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GanttTimelineComponent, deps: [{ token: ScrollSyncService }, { token: DependencyDomService }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: CurrentTimeMarkerService }], target: i0.ɵɵFactoryTarget.Component });
|
|
2853
|
+
GanttTimelineComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GanttTimelineComponent, selector: "kendo-gantt-timeline", inputs: { rows: "rows", slots: "slots", groupSlots: "groupSlots", tableWidth: "tableWidth", activeView: "activeView", taskContentTemplate: "taskContentTemplate", taskTemplate: "taskTemplate", summaryTaskTemplate: "summaryTaskTemplate", taskClass: "taskClass", renderDependencyDragClues: "renderDependencyDragClues", dragScrollSettings: "dragScrollSettings", currentTimeMarker: "currentTimeMarker", selectable: "selectable", isTaskSelected: "isTaskSelected", isExpanded: "isExpanded", dependencies: "dependencies" }, outputs: { timelineContainerPress: "timelineContainerPress", timelineContainerDrag: "timelineContainerDrag", timelineContainerRelease: "timelineContainerRelease" }, host: { properties: { "class.k-gantt-timeline": "this.hostClass" } }, viewQueries: [{ propertyName: "timelineContent", first: true, predicate: ["timelineContent"], descendants: true, static: true }, { propertyName: "timelineColumns", first: true, predicate: ["timelineColumns"], descendants: true, static: true }, { propertyName: "timelineHeaderWrap", first: true, predicate: ["timelineHeaderWrap"], descendants: true, static: true }, { propertyName: "tasksContainer", first: true, predicate: ["tasksContainer"], descendants: true, static: true }, { propertyName: "dragPopupContainer", first: true, predicate: ["dragPopupContainer"], descendants: true, read: ViewContainerRef }, { propertyName: "dependencyDragCreatePolyline", first: true, predicate: ["dependencyDragCreatePolyline"], descendants: true }], ngImport: i0, template: `
|
|
2759
2854
|
<div class="k-timeline k-grid k-grid-md">
|
|
2760
2855
|
<div class="k-grid-header">
|
|
2761
2856
|
<div #timelineHeaderWrap class="k-grid-header-wrap">
|
|
@@ -2858,7 +2953,7 @@ GanttTimelineComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
|
|
|
2858
2953
|
<ng-container #dragPopupContainer></ng-container>
|
|
2859
2954
|
</div>
|
|
2860
2955
|
</div>
|
|
2861
|
-
`, isInline: true, components: [{ type: GanttHeaderTableBodyComponent, selector: "[kendoGanttHeaderTableBody]", inputs: ["groupSlots", "slots"] }, { type: GanttTasksTableBodyComponent, selector: "[kendoGanttTasksTableBody]", inputs: ["selectable", "rows", "activeView", "taskContentTemplate", "taskTemplate", "summaryTaskTemplate", "taskClass", "isExpanded", "isTaskSelected", "renderDependencyDragClues"] }], directives: [{ type: TimelineScrollableDirective, selector: "[kendoGanttTimelineScrollable]", inputs: ["scrollSettings"] }, { type:
|
|
2956
|
+
`, isInline: true, components: [{ type: GanttHeaderTableBodyComponent, selector: "[kendoGanttHeaderTableBody]", inputs: ["groupSlots", "slots"] }, { type: GanttTasksTableBodyComponent, selector: "[kendoGanttTasksTableBody]", inputs: ["selectable", "rows", "activeView", "taskContentTemplate", "taskTemplate", "summaryTaskTemplate", "taskClass", "isExpanded", "isTaskSelected", "renderDependencyDragClues"] }], directives: [{ type: TimelineScrollableDirective, selector: "[kendoGanttTimelineScrollable]", inputs: ["scrollSettings"] }, { type: i17.DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: GanttDependencyDirective, selector: "[kendoGanttDependency]", inputs: ["dependency"] }] });
|
|
2862
2957
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GanttTimelineComponent, decorators: [{
|
|
2863
2958
|
type: Component,
|
|
2864
2959
|
args: [{
|
|
@@ -2968,7 +3063,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
2968
3063
|
</div>
|
|
2969
3064
|
`
|
|
2970
3065
|
}]
|
|
2971
|
-
}], ctorParameters: function () { return [{ type: ScrollSyncService }, { type: DependencyDomService }, { type: i0.Renderer2 }, { type: i0.NgZone }]; }, propDecorators: { timelineContent: [{
|
|
3066
|
+
}], ctorParameters: function () { return [{ type: ScrollSyncService }, { type: DependencyDomService }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: CurrentTimeMarkerService }]; }, propDecorators: { timelineContent: [{
|
|
2972
3067
|
type: ViewChild,
|
|
2973
3068
|
args: ['timelineContent', { static: true }]
|
|
2974
3069
|
}], timelineColumns: [{
|
|
@@ -3011,6 +3106,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
3011
3106
|
type: Input
|
|
3012
3107
|
}], dragScrollSettings: [{
|
|
3013
3108
|
type: Input
|
|
3109
|
+
}], currentTimeMarker: [{
|
|
3110
|
+
type: Input
|
|
3014
3111
|
}], selectable: [{
|
|
3015
3112
|
type: Input
|
|
3016
3113
|
}], isTaskSelected: [{
|
|
@@ -3958,7 +4055,7 @@ class ViewBase {
|
|
|
3958
4055
|
}
|
|
3959
4056
|
}
|
|
3960
4057
|
ViewBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ViewBase, deps: [{ token: OptionChangesService }, { token: DependencyDomService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3961
|
-
ViewBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: ViewBase, selector: "kendo-gantt-view-base", inputs: { slotWidth: "slotWidth", timelineHeadersDateFormat: "timelineHeadersDateFormat" }, usesOnChanges: true, ngImport: i0 });
|
|
4058
|
+
ViewBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: ViewBase, selector: "kendo-gantt-view-base", inputs: { slotWidth: "slotWidth", timelineHeadersDateFormat: "timelineHeadersDateFormat", currentTimeMarker: "currentTimeMarker" }, usesOnChanges: true, ngImport: i0 });
|
|
3962
4059
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ViewBase, decorators: [{
|
|
3963
4060
|
type: Directive,
|
|
3964
4061
|
args: [{
|
|
@@ -3969,6 +4066,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
3969
4066
|
type: Input
|
|
3970
4067
|
}], timelineHeadersDateFormat: [{
|
|
3971
4068
|
type: Input
|
|
4069
|
+
}], currentTimeMarker: [{
|
|
4070
|
+
type: Input
|
|
3972
4071
|
}] } });
|
|
3973
4072
|
|
|
3974
4073
|
/**
|
|
@@ -4088,7 +4187,7 @@ GanttAddTaskComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
|
|
|
4088
4187
|
(open)="handleOpen($event)">
|
|
4089
4188
|
{{ getText('addTaskText') }}
|
|
4090
4189
|
</kendo-dropdownbutton>
|
|
4091
|
-
`, isInline: true, components: [{ type: i2.DropDownButtonComponent, selector: "kendo-dropdownbutton", inputs: ["icon", "svgIcon", "iconClass", "imageUrl", "textField", "data", "size", "rounded", "fillMode", "themeColor"], outputs: ["itemClick", "focus", "blur"], exportAs: ["kendoDropDownButton"] }], directives: [{ type:
|
|
4190
|
+
`, isInline: true, components: [{ type: i2.DropDownButtonComponent, selector: "kendo-dropdownbutton", inputs: ["icon", "svgIcon", "iconClass", "imageUrl", "textField", "data", "size", "rounded", "fillMode", "themeColor"], outputs: ["itemClick", "focus", "blur"], exportAs: ["kendoDropDownButton"] }], directives: [{ type: i17.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }] });
|
|
4092
4191
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GanttAddTaskComponent, decorators: [{
|
|
4093
4192
|
type: Component,
|
|
4094
4193
|
args: [{
|
|
@@ -4393,7 +4492,7 @@ TaskFieldsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
|
|
|
4393
4492
|
></kendo-numerictextbox>
|
|
4394
4493
|
</kendo-formfield>
|
|
4395
4494
|
</form>
|
|
4396
|
-
`, isInline: true, components: [{ type: i4.FormFieldComponent, selector: "kendo-formfield", inputs: ["showHints", "orientation", "showErrors"] }, { type: i5.LabelComponent, selector: "kendo-label", inputs: ["text", "for", "optional", "labelCssStyle", "labelCssClass"], exportAs: ["kendoLabel"] }, { type: i6$1.DateTimePickerComponent, selector: "kendo-datetimepicker", inputs: ["focusableId", "value", "format", "twoDigitYearMax", "tabindex", "disabledDates", "popupSettings", "title", "subtitle", "disabled", "readonly", "readOnlyInput", "cancelButton", "formatPlaceholder", "placeholder", "steps", "focusedDate", "calendarType", "animateCalendarNavigation", "weekNumber", "min", "max", "rangeValidation", "disabledDatesValidation", "incompleteDateValidation", "adaptiveMode", "defaultTab", "size", "rounded", "fillMode"], outputs: ["valueChange", "open", "close", "focus", "blur"], exportAs: ["kendo-datetimepicker"] }, { type:
|
|
4495
|
+
`, isInline: true, components: [{ type: i4.FormFieldComponent, selector: "kendo-formfield", inputs: ["showHints", "orientation", "showErrors"] }, { type: i5.LabelComponent, selector: "kendo-label", inputs: ["text", "for", "optional", "labelCssStyle", "labelCssClass"], exportAs: ["kendoLabel"] }, { type: i6$1.DateTimePickerComponent, selector: "kendo-datetimepicker", inputs: ["focusableId", "value", "format", "twoDigitYearMax", "tabindex", "disabledDates", "popupSettings", "title", "subtitle", "disabled", "readonly", "readOnlyInput", "cancelButton", "formatPlaceholder", "placeholder", "steps", "focusedDate", "calendarType", "animateCalendarNavigation", "weekNumber", "min", "max", "rangeValidation", "disabledDatesValidation", "incompleteDateValidation", "adaptiveMode", "defaultTab", "size", "rounded", "fillMode"], outputs: ["valueChange", "open", "close", "focus", "blur"], exportAs: ["kendo-datetimepicker"] }, { type: i12.TreeListSpacerComponent, selector: "kendo-treelist-spacer, kendo-treelist-pager-spacer", inputs: ["width"] }, { type: i4.NumericTextBoxComponent, selector: "kendo-numerictextbox", inputs: ["focusableId", "disabled", "readonly", "title", "autoCorrect", "format", "max", "min", "decimals", "placeholder", "step", "spinners", "rangeValidation", "tabindex", "tabIndex", "changeValueOnScroll", "selectOnFocus", "value", "maxlength", "size", "rounded", "fillMode"], outputs: ["valueChange", "focus", "blur"], exportAs: ["kendoNumericTextBox"] }], directives: [{ type: i8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i8.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.TextBoxDirective, selector: "input[kendoTextBox]", inputs: ["value"] }, { type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i8.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
4397
4496
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TaskFieldsComponent, decorators: [{
|
|
4398
4497
|
type: Component,
|
|
4399
4498
|
args: [{
|
|
@@ -4753,7 +4852,7 @@ EditDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
|
|
|
4753
4852
|
</button>
|
|
4754
4853
|
</kendo-dialog-actions>
|
|
4755
4854
|
</kendo-dialog>
|
|
4756
|
-
`, isInline: true, components: [{ type: i4$2.DialogComponent, selector: "kendo-dialog", inputs: ["actions", "actionsLayout", "autoFocusedElement", "title", "width", "minWidth", "maxWidth", "height", "minHeight", "maxHeight", "animation", "themeColor"], outputs: ["action", "close"], exportAs: ["kendoDialog"] }, { type: i5$1.TabStripComponent, selector: "kendo-tabstrip", inputs: ["height", "animate", "tabAlignment", "tabPosition", "keepTabContent", "closable", "scrollable", "closeIcon", "closeIconClass", "closeSVGIcon"], outputs: ["tabSelect", "tabClose", "tabScroll"], exportAs: ["kendoTabStrip"] }, { type: i5$1.TabStripTabComponent, selector: "kendo-tabstrip-tab", inputs: ["title", "disabled", "cssClass", "cssStyle", "selected", "closable", "closeIcon", "closeIconClass", "closeSVGIcon"], exportAs: ["kendoTabStripTab"] }, { type: TaskFieldsComponent, selector: "kendo-gantt-task-fields" }, { type: DependenciesTableComponent, selector: "kendo-gantt-dependencies-table", inputs: ["tasks", "dependencies", "dependencyType"], outputs: ["dependenciesChange"] }, { type: i4$2.DialogActionsComponent, selector: "kendo-dialog-actions", inputs: ["actions", "layout"], outputs: ["action"] }, { type: i2.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { type:
|
|
4855
|
+
`, isInline: true, components: [{ type: i4$2.DialogComponent, selector: "kendo-dialog", inputs: ["actions", "actionsLayout", "autoFocusedElement", "title", "width", "minWidth", "maxWidth", "height", "minHeight", "maxHeight", "animation", "themeColor"], outputs: ["action", "close"], exportAs: ["kendoDialog"] }, { type: i5$1.TabStripComponent, selector: "kendo-tabstrip", inputs: ["height", "animate", "tabAlignment", "tabPosition", "keepTabContent", "closable", "scrollable", "closeIcon", "closeIconClass", "closeSVGIcon"], outputs: ["tabSelect", "tabClose", "tabScroll"], exportAs: ["kendoTabStrip"] }, { type: i5$1.TabStripTabComponent, selector: "kendo-tabstrip-tab", inputs: ["title", "disabled", "cssClass", "cssStyle", "selected", "closable", "closeIcon", "closeIconClass", "closeSVGIcon"], exportAs: ["kendoTabStripTab"] }, { type: TaskFieldsComponent, selector: "kendo-gantt-task-fields" }, { type: DependenciesTableComponent, selector: "kendo-gantt-dependencies-table", inputs: ["tasks", "dependencies", "dependencyType"], outputs: ["dependenciesChange"] }, { type: i4$2.DialogActionsComponent, selector: "kendo-dialog-actions", inputs: ["actions", "layout"], outputs: ["action"] }, { type: i2.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { type: i12.TreeListSpacerComponent, selector: "kendo-treelist-spacer, kendo-treelist-pager-spacer", inputs: ["width"] }], directives: [{ type: i4$2.CustomMessagesComponent, selector: "kendo-dialog-messages, kendo-window-messages" }, { type: i5$1.TabContentDirective, selector: "[kendoTabContent]" }, { type: i17.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }] });
|
|
4757
4856
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: EditDialogComponent, decorators: [{
|
|
4758
4857
|
type: Component,
|
|
4759
4858
|
args: [{
|
|
@@ -5095,7 +5194,7 @@ const DEFAULT_DRAG_SCROLL_SETTINGS = {
|
|
|
5095
5194
|
* ```
|
|
5096
5195
|
*/
|
|
5097
5196
|
class GanttComponent {
|
|
5098
|
-
constructor(timelineViewService, scrollSyncService, renderer, mapper, optionChangesService, dependencyDomService, editService, localizationService, hostElement, zone, navigation) {
|
|
5197
|
+
constructor(timelineViewService, scrollSyncService, renderer, mapper, optionChangesService, dependencyDomService, editService, localizationService, hostElement, zone, navigation, currentTimeMarkerService) {
|
|
5099
5198
|
this.timelineViewService = timelineViewService;
|
|
5100
5199
|
this.scrollSyncService = scrollSyncService;
|
|
5101
5200
|
this.renderer = renderer;
|
|
@@ -5107,6 +5206,7 @@ class GanttComponent {
|
|
|
5107
5206
|
this.hostElement = hostElement;
|
|
5108
5207
|
this.zone = zone;
|
|
5109
5208
|
this.navigation = navigation;
|
|
5209
|
+
this.currentTimeMarkerService = currentTimeMarkerService;
|
|
5110
5210
|
/**
|
|
5111
5211
|
* @hidden
|
|
5112
5212
|
*/
|
|
@@ -5204,6 +5304,14 @@ class GanttComponent {
|
|
|
5204
5304
|
* @default false
|
|
5205
5305
|
*/
|
|
5206
5306
|
this.columnsAutoSize = false;
|
|
5307
|
+
/**
|
|
5308
|
+
* Specifies the Gantt current time marker settings.
|
|
5309
|
+
* The settings will be applied for all views.
|
|
5310
|
+
* If the `currentTimeMarker` is set for a view then it takes precedence.
|
|
5311
|
+
*
|
|
5312
|
+
* @default true
|
|
5313
|
+
*/
|
|
5314
|
+
this.currentTimeMarker = true;
|
|
5207
5315
|
/**
|
|
5208
5316
|
* Specifies if the column menu of the columns will be displayed.
|
|
5209
5317
|
*
|
|
@@ -5414,6 +5522,7 @@ class GanttComponent {
|
|
|
5414
5522
|
this.localizationSubscription = this.localizationService.changes.subscribe(({ rtl }) => {
|
|
5415
5523
|
this.rtl = rtl;
|
|
5416
5524
|
this.direction = this.rtl ? 'rtl' : 'ltr';
|
|
5525
|
+
this.currentTimeMarkerService.rtl = rtl;
|
|
5417
5526
|
});
|
|
5418
5527
|
}
|
|
5419
5528
|
get toolbarTemplate() {
|
|
@@ -5476,8 +5585,18 @@ class GanttComponent {
|
|
|
5476
5585
|
const view = this.views.find(view => view.type === this._activeView) ?
|
|
5477
5586
|
this._activeView :
|
|
5478
5587
|
this.views.first.type;
|
|
5588
|
+
this.currentTimeMarkerService.activeView = view;
|
|
5479
5589
|
return view;
|
|
5480
5590
|
}
|
|
5591
|
+
/**
|
|
5592
|
+
* @hidden
|
|
5593
|
+
*
|
|
5594
|
+
*/
|
|
5595
|
+
get activeViewCurrentTimeMarker() {
|
|
5596
|
+
var _a;
|
|
5597
|
+
const activeViewCurrentTimeMarker = (_a = this.views.find(view => view.type === this._activeView)) === null || _a === void 0 ? void 0 : _a.currentTimeMarker;
|
|
5598
|
+
return activeViewCurrentTimeMarker || this.currentTimeMarker;
|
|
5599
|
+
}
|
|
5481
5600
|
/**
|
|
5482
5601
|
* Gets or sets the data of the Gantt.
|
|
5483
5602
|
*
|
|
@@ -6039,6 +6158,9 @@ class GanttComponent {
|
|
|
6039
6158
|
this.loadTimelineData();
|
|
6040
6159
|
this.scrollSyncService.resetTimelineScrollLeft();
|
|
6041
6160
|
this.activeViewChange.emit(view);
|
|
6161
|
+
this.currentTimeMarkerService.slots = this.timelineSlots;
|
|
6162
|
+
this.currentTimeMarkerService.rows = this.viewItems;
|
|
6163
|
+
this.currentTimeMarkerService.activeView = view;
|
|
6042
6164
|
}
|
|
6043
6165
|
}
|
|
6044
6166
|
/**
|
|
@@ -6252,8 +6374,8 @@ class GanttComponent {
|
|
|
6252
6374
|
}
|
|
6253
6375
|
}
|
|
6254
6376
|
}
|
|
6255
|
-
GanttComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GanttComponent, deps: [{ token: TimelineViewService }, { token: ScrollSyncService }, { token: i0.Renderer2 }, { token: MappingService }, { token: OptionChangesService }, { token: DependencyDomService }, { token: EditService }, { token: i1$1.LocalizationService }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
6256
|
-
GanttComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GanttComponent, selector: "kendo-gantt", inputs: { roleDescription: ["aria-roledescription", "roleDescription"], role: "role", taskModelFields: "taskModelFields", dependencyModelFields: "dependencyModelFields", activeView: "activeView", data: "data", isSelected: "isSelected", validateNewDependency: "validateNewDependency", selectable: "selectable", toolbarSettings: "toolbarSettings", toolbarAriaLabel: "toolbarAriaLabel", fetchChildren: "fetchChildren", hasChildren: "hasChildren", dependencies: "dependencies", sortable: "sortable", sort: "sort", filterable: "filterable", filter: "filter", workDayStart: "workDayStart", workDayEnd: "workDayEnd", workWeekStart: "workWeekStart", workWeekEnd: "workWeekEnd", navigable: "navigable", timelinePaneOptions: "timelinePaneOptions", treeListPaneOptions: "treeListPaneOptions", taskClass: "taskClass", rowClass: "rowClass", isExpanded: "isExpanded", columnsAutoSize: "columnsAutoSize", columnMenu: "columnMenu", columnsReorderable: "columnsReorderable", columnsResizable: "columnsResizable", dragScrollSettings: "dragScrollSettings" }, outputs: { selectionChange: "selectionChange", rowExpand: "rowExpand", taskDblClick: "taskDblClick", cellDblClick: "cellDblClick", cellClose: "cellClose", taskDelete: "taskDelete", rowCollapse: "rowCollapse", remove: "remove", cancel: "cancel", save: "save", taskAdd: "taskAdd", dependencyAdd: "dependencyAdd", sortChange: "sortChange", filterChange: "filterChange", dataStateChange: "dataStateChange", treeListPaneCollapsedChange: "treeListPaneCollapsedChange", timelinePaneCollapsedChange: "timelinePaneCollapsedChange", timelinePaneSizeChange: "timelinePaneSizeChange", activeViewChange: "activeViewChange", columnResize: "columnResize", columnReorder: "columnReorder", columnVisibilityChange: "columnVisibilityChange", columnLockedChange: "columnLockedChange", cellClick: "cellClick", taskClick: "taskClick" }, host: { properties: { "attr.aria-roledescription": "this.hostRoleDescriptionAttr", "attr.role": "this.hostRoleAttr", "class.k-gantt": "this.hostClasses", "attr.dir": "this.dir" } }, providers: [
|
|
6377
|
+
GanttComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GanttComponent, deps: [{ token: TimelineViewService }, { token: ScrollSyncService }, { token: i0.Renderer2 }, { token: MappingService }, { token: OptionChangesService }, { token: DependencyDomService }, { token: EditService }, { token: i1$1.LocalizationService }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: NavigationService }, { token: CurrentTimeMarkerService }], target: i0.ɵɵFactoryTarget.Component });
|
|
6378
|
+
GanttComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GanttComponent, selector: "kendo-gantt", inputs: { roleDescription: ["aria-roledescription", "roleDescription"], role: "role", taskModelFields: "taskModelFields", dependencyModelFields: "dependencyModelFields", activeView: "activeView", data: "data", isSelected: "isSelected", validateNewDependency: "validateNewDependency", selectable: "selectable", toolbarSettings: "toolbarSettings", toolbarAriaLabel: "toolbarAriaLabel", fetchChildren: "fetchChildren", hasChildren: "hasChildren", dependencies: "dependencies", sortable: "sortable", sort: "sort", filterable: "filterable", filter: "filter", workDayStart: "workDayStart", workDayEnd: "workDayEnd", workWeekStart: "workWeekStart", workWeekEnd: "workWeekEnd", navigable: "navigable", timelinePaneOptions: "timelinePaneOptions", treeListPaneOptions: "treeListPaneOptions", taskClass: "taskClass", rowClass: "rowClass", isExpanded: "isExpanded", columnsAutoSize: "columnsAutoSize", currentTimeMarker: "currentTimeMarker", columnMenu: "columnMenu", columnsReorderable: "columnsReorderable", columnsResizable: "columnsResizable", dragScrollSettings: "dragScrollSettings" }, outputs: { selectionChange: "selectionChange", rowExpand: "rowExpand", taskDblClick: "taskDblClick", cellDblClick: "cellDblClick", cellClose: "cellClose", taskDelete: "taskDelete", rowCollapse: "rowCollapse", remove: "remove", cancel: "cancel", save: "save", taskAdd: "taskAdd", dependencyAdd: "dependencyAdd", sortChange: "sortChange", filterChange: "filterChange", dataStateChange: "dataStateChange", treeListPaneCollapsedChange: "treeListPaneCollapsedChange", timelinePaneCollapsedChange: "timelinePaneCollapsedChange", timelinePaneSizeChange: "timelinePaneSizeChange", activeViewChange: "activeViewChange", columnResize: "columnResize", columnReorder: "columnReorder", columnVisibilityChange: "columnVisibilityChange", columnLockedChange: "columnLockedChange", cellClick: "cellClick", taskClick: "taskClick" }, host: { properties: { "attr.aria-roledescription": "this.hostRoleDescriptionAttr", "attr.role": "this.hostRoleAttr", "class.k-gantt": "this.hostClasses", "attr.dir": "this.dir" } }, providers: [
|
|
6257
6379
|
GanttLocalizationService,
|
|
6258
6380
|
LocalizationService,
|
|
6259
6381
|
{
|
|
@@ -6275,7 +6397,8 @@ GanttComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version
|
|
|
6275
6397
|
OptionChangesService,
|
|
6276
6398
|
EditService,
|
|
6277
6399
|
TimelineScrollService,
|
|
6278
|
-
NavigationService
|
|
6400
|
+
NavigationService,
|
|
6401
|
+
CurrentTimeMarkerService
|
|
6279
6402
|
], queries: [{ propertyName: "taskContentTemplate", first: true, predicate: GanttTaskContentTemplateDirective, descendants: true }, { propertyName: "taskTemplate", first: true, predicate: GanttTaskTemplateDirective, descendants: true }, { propertyName: "summaryTaskTemplate", first: true, predicate: GanttSummaryTaskTemplateDirective, descendants: true }, { propertyName: "toolbarTemplateChildren", predicate: ToolbarTemplateDirective }, { propertyName: "columns", predicate: GanttColumnBase }, { propertyName: "views", predicate: ViewBase }], viewQueries: [{ propertyName: "treeList", first: true, predicate: TreeListComponent, descendants: true, static: true }, { propertyName: "timeline", first: true, predicate: GanttTimelineComponent, descendants: true }], exportAs: ["kendoGantt"], usesOnChanges: true, ngImport: i0, template: `
|
|
6280
6403
|
<ng-container kendoGanttLocalizedMessages
|
|
6281
6404
|
i18n-taskEditingGeneralTabTitle="kendo.gantt.taskEditingGeneralTabTitle|The title of the 'General' tab of the editing dialog TabStrip"
|
|
@@ -6594,6 +6717,7 @@ GanttComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version
|
|
|
6594
6717
|
[dragScrollSettings]="dragScrollSettings"
|
|
6595
6718
|
[rows]="viewItems"
|
|
6596
6719
|
[slots]="timelineSlots"
|
|
6720
|
+
[currentTimeMarker]="activeViewCurrentTimeMarker"
|
|
6597
6721
|
[groupSlots]="timelineGroupSlots"
|
|
6598
6722
|
[tableWidth]="tableWidth"
|
|
6599
6723
|
[activeView]="activeView"
|
|
@@ -6646,7 +6770,7 @@ GanttComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version
|
|
|
6646
6770
|
</kendo-dialog>
|
|
6647
6771
|
|
|
6648
6772
|
<div kendoWatermarkOverlay *ngIf="showLicenseWatermark"></div>
|
|
6649
|
-
`, isInline: true, components: [{ type: ToolbarComponent, selector: "kendo-gantt-toolbar", inputs: ["showAddTask", "showViewSelector", "views", "activeView", "toolbarTemplate", "navigable", "position"], outputs: ["activeViewChange"] }, { type: i5$1.SplitterComponent, selector: "kendo-splitter", inputs: ["orientation", "resizeStep"], outputs: ["layoutChange"], exportAs: ["kendoSplitter"] }, { type: i5$1.SplitterPaneComponent, selector: "kendo-splitter-pane", inputs: ["order", "size", "separatorLabel", "min", "max", "resizable", "collapsible", "scrollable", "collapsed", "orientation", "containsSplitter", "overlayContent"], outputs: ["sizeChange", "collapsedChange"], exportAs: ["kendoSplitterPane"] }, { type:
|
|
6773
|
+
`, isInline: true, components: [{ type: ToolbarComponent, selector: "kendo-gantt-toolbar", inputs: ["showAddTask", "showViewSelector", "views", "activeView", "toolbarTemplate", "navigable", "position"], outputs: ["activeViewChange"] }, { type: i5$1.SplitterComponent, selector: "kendo-splitter", inputs: ["orientation", "resizeStep"], outputs: ["layoutChange"], exportAs: ["kendoSplitter"] }, { type: i5$1.SplitterPaneComponent, selector: "kendo-splitter-pane", inputs: ["order", "size", "separatorLabel", "min", "max", "resizable", "collapsible", "scrollable", "collapsed", "orientation", "containsSplitter", "overlayContent"], outputs: ["sizeChange", "collapsedChange"], exportAs: ["kendoSplitterPane"] }, { type: i12.TreeListComponent, selector: "kendo-treelist", inputs: ["aria-label", "data", "pageSize", "height", "rowHeight", "skip", "scrollable", "sort", "trackBy", "filter", "virtualColumns", "filterable", "sortable", "pageable", "navigable", "navigatable", "autoSize", "rowClass", "resizable", "reorderable", "loading", "columnMenu", "hideHeader", "idField", "selectable", "isSelected", "rowReorderable", "columns", "fetchChildren", "hasChildren", "isExpanded"], outputs: ["selectionChange", "filterChange", "pageChange", "sortChange", "dataStateChange", "edit", "cancel", "save", "remove", "add", "cellClose", "cellClick", "pdfExport", "excelExport", "columnResize", "columnReorder", "columnVisibilityChange", "columnLockedChange", "scrollBottom", "contentScroll", "expand", "collapse", "expandStateChange", "rowReorder"], exportAs: ["kendoTreeList"] }, { type: i12.CustomMessagesComponent, selector: "kendo-treelist-messages" }, { type: GanttTimelineComponent, selector: "kendo-gantt-timeline", inputs: ["rows", "slots", "groupSlots", "tableWidth", "activeView", "taskContentTemplate", "taskTemplate", "summaryTaskTemplate", "taskClass", "renderDependencyDragClues", "dragScrollSettings", "currentTimeMarker", "selectable", "isTaskSelected", "isExpanded", "dependencies"], outputs: ["timelineContainerPress", "timelineContainerDrag", "timelineContainerRelease"] }, { type: EditDialogComponent, selector: "kendo-gantt-edit-dialog", inputs: ["data"] }, { type: i4$2.DialogComponent, selector: "kendo-dialog", inputs: ["actions", "actionsLayout", "autoFocusedElement", "title", "width", "minWidth", "maxWidth", "height", "minHeight", "maxHeight", "animation", "themeColor"], outputs: ["action", "close"], exportAs: ["kendoDialog"] }, { type: i4$2.DialogActionsComponent, selector: "kendo-dialog-actions", inputs: ["actions", "layout"], outputs: ["action"] }, { type: i12.TreeListSpacerComponent, selector: "kendo-treelist-spacer, kendo-treelist-pager-spacer", inputs: ["width"] }, { type: i2.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { type: i17.WatermarkOverlayComponent, selector: "div[kendoWatermarkOverlay]" }], directives: [{ type: LocalizedMessagesDirective, selector: "[kendoGanttLocalizedMessages]" }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i17.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }] });
|
|
6650
6774
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GanttComponent, decorators: [{
|
|
6651
6775
|
type: Component,
|
|
6652
6776
|
args: [{
|
|
@@ -6674,7 +6798,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
6674
6798
|
OptionChangesService,
|
|
6675
6799
|
EditService,
|
|
6676
6800
|
TimelineScrollService,
|
|
6677
|
-
NavigationService
|
|
6801
|
+
NavigationService,
|
|
6802
|
+
CurrentTimeMarkerService
|
|
6678
6803
|
],
|
|
6679
6804
|
template: `
|
|
6680
6805
|
<ng-container kendoGanttLocalizedMessages
|
|
@@ -6994,6 +7119,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
6994
7119
|
[dragScrollSettings]="dragScrollSettings"
|
|
6995
7120
|
[rows]="viewItems"
|
|
6996
7121
|
[slots]="timelineSlots"
|
|
7122
|
+
[currentTimeMarker]="activeViewCurrentTimeMarker"
|
|
6997
7123
|
[groupSlots]="timelineGroupSlots"
|
|
6998
7124
|
[tableWidth]="tableWidth"
|
|
6999
7125
|
[activeView]="activeView"
|
|
@@ -7048,7 +7174,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
7048
7174
|
<div kendoWatermarkOverlay *ngIf="showLicenseWatermark"></div>
|
|
7049
7175
|
`
|
|
7050
7176
|
}]
|
|
7051
|
-
}], ctorParameters: function () { return [{ type: TimelineViewService }, { type: ScrollSyncService }, { type: i0.Renderer2 }, { type: MappingService }, { type: OptionChangesService }, { type: DependencyDomService }, { type: EditService }, { type: i1$1.LocalizationService }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: NavigationService }]; }, propDecorators: { treeList: [{
|
|
7177
|
+
}], ctorParameters: function () { return [{ type: TimelineViewService }, { type: ScrollSyncService }, { type: i0.Renderer2 }, { type: MappingService }, { type: OptionChangesService }, { type: DependencyDomService }, { type: EditService }, { type: i1$1.LocalizationService }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: NavigationService }, { type: CurrentTimeMarkerService }]; }, propDecorators: { treeList: [{
|
|
7052
7178
|
type: ViewChild,
|
|
7053
7179
|
args: [TreeListComponent, { static: true }]
|
|
7054
7180
|
}], timeline: [{
|
|
@@ -7146,6 +7272,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
7146
7272
|
type: Input
|
|
7147
7273
|
}], columnsAutoSize: [{
|
|
7148
7274
|
type: Input
|
|
7275
|
+
}], currentTimeMarker: [{
|
|
7276
|
+
type: Input
|
|
7149
7277
|
}], columnMenu: [{
|
|
7150
7278
|
type: Input
|
|
7151
7279
|
}], columnsReorderable: [{
|