@syncfusion/ej2-gantt 23.2.7 → 24.1.41
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/CHANGELOG.md +0 -10
- package/dist/ej2-gantt.min.js +2 -2
- package/dist/ej2-gantt.umd.min.js +2 -2
- package/dist/ej2-gantt.umd.min.js.map +1 -1
- package/dist/es6/ej2-gantt.es2015.js +2939 -324
- package/dist/es6/ej2-gantt.es2015.js.map +1 -1
- package/dist/es6/ej2-gantt.es5.js +2993 -358
- package/dist/es6/ej2-gantt.es5.js.map +1 -1
- package/dist/global/ej2-gantt.min.js +2 -2
- package/dist/global/ej2-gantt.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +21 -21
- package/src/gantt/actions/cell-edit.js +7 -3
- package/src/gantt/actions/chart-scroll.d.ts +9 -1
- package/src/gantt/actions/chart-scroll.js +111 -3
- package/src/gantt/actions/connector-line-edit.js +8 -1
- package/src/gantt/actions/context-menu.js +2 -2
- package/src/gantt/actions/day-markers.d.ts +2 -1
- package/src/gantt/actions/dependency.js +2 -2
- package/src/gantt/actions/dialog-edit.d.ts +24 -0
- package/src/gantt/actions/dialog-edit.js +383 -1
- package/src/gantt/actions/edit.js +68 -21
- package/src/gantt/actions/keyboard.js +5 -1
- package/src/gantt/actions/pdf-export.js +12 -4
- package/src/gantt/actions/rowdragdrop.js +20 -9
- package/src/gantt/actions/selection.js +6 -3
- package/src/gantt/actions/taskbar-edit.d.ts +14 -0
- package/src/gantt/actions/taskbar-edit.js +517 -82
- package/src/gantt/actions/toolbar.js +4 -1
- package/src/gantt/base/css-constants.d.ts +2 -0
- package/src/gantt/base/css-constants.js +2 -0
- package/src/gantt/base/enum.d.ts +22 -0
- package/src/gantt/base/gantt-chart.js +63 -21
- package/src/gantt/base/gantt-model.d.ts +9 -1
- package/src/gantt/base/gantt.d.ts +11 -1
- package/src/gantt/base/gantt.js +46 -18
- package/src/gantt/base/interface.d.ts +135 -3
- package/src/gantt/base/splitter.js +6 -0
- package/src/gantt/base/task-processor.d.ts +1 -1
- package/src/gantt/base/task-processor.js +37 -9
- package/src/gantt/export/export-helper.d.ts +12 -0
- package/src/gantt/export/export-helper.js +316 -9
- package/src/gantt/export/pdf-base/pdf-grid-table.js +14 -1
- package/src/gantt/export/pdf-base/pdf-style/gantt-theme.js +36 -0
- package/src/gantt/export/pdf-connector-line.js +137 -32
- package/src/gantt/export/pdf-event-marker.d.ts +10 -0
- package/src/gantt/export/pdf-event-marker.js +57 -0
- package/src/gantt/export/pdf-gantt.d.ts +2 -0
- package/src/gantt/export/pdf-gantt.js +30 -10
- package/src/gantt/export/pdf-taskbar.d.ts +23 -2
- package/src/gantt/export/pdf-taskbar.js +771 -43
- package/src/gantt/export/pdf-timeline.d.ts +9 -0
- package/src/gantt/export/pdf-timeline.js +98 -20
- package/src/gantt/models/column.d.ts +12 -0
- package/src/gantt/renderer/chart-rows.d.ts +1 -1
- package/src/gantt/renderer/chart-rows.js +29 -16
- package/src/gantt/renderer/connector-line.js +8 -5
- package/src/gantt/renderer/edit-tooltip.js +3 -0
- package/src/gantt/renderer/event-marker.js +4 -1
- package/src/gantt/renderer/nonworking-day.js +18 -5
- package/src/gantt/renderer/timeline.d.ts +9 -0
- package/src/gantt/renderer/timeline.js +164 -21
- package/styles/bootstrap-dark.css +77 -16
- package/styles/bootstrap.css +78 -17
- package/styles/bootstrap4.css +78 -17
- package/styles/bootstrap5-dark.css +78 -17
- package/styles/bootstrap5.css +78 -17
- package/styles/fabric-dark.css +78 -17
- package/styles/fabric.css +78 -17
- package/styles/fluent-dark.css +78 -17
- package/styles/fluent.css +78 -17
- package/styles/gantt/_bootstrap-dark-definition.scss +7 -2
- package/styles/gantt/_bootstrap-definition.scss +7 -2
- package/styles/gantt/_bootstrap4-definition.scss +7 -2
- package/styles/gantt/_bootstrap5-definition.scss +7 -2
- package/styles/gantt/_fabric-dark-definition.scss +7 -2
- package/styles/gantt/_fabric-definition.scss +7 -2
- package/styles/gantt/_fluent-definition.scss +7 -2
- package/styles/gantt/_fusionnew-definition.scss +6 -2
- package/styles/gantt/_highcontrast-definition.scss +7 -2
- package/styles/gantt/_highcontrast-light-definition.scss +7 -2
- package/styles/gantt/_layout.scss +92 -20
- package/styles/gantt/_material-dark-definition.scss +7 -2
- package/styles/gantt/_material-definition.scss +7 -2
- package/styles/gantt/_material3-definition.scss +7 -2
- package/styles/gantt/_tailwind-definition.scss +6 -1
- package/styles/gantt/_theme.scss +11 -0
- package/styles/gantt/bootstrap-dark.css +77 -16
- package/styles/gantt/bootstrap.css +78 -17
- package/styles/gantt/bootstrap4.css +78 -17
- package/styles/gantt/bootstrap5-dark.css +78 -17
- package/styles/gantt/bootstrap5.css +78 -17
- package/styles/gantt/fabric-dark.css +78 -17
- package/styles/gantt/fabric.css +78 -17
- package/styles/gantt/fluent-dark.css +78 -17
- package/styles/gantt/fluent.css +78 -17
- package/styles/gantt/highcontrast-light.css +78 -17
- package/styles/gantt/highcontrast.css +78 -17
- package/styles/gantt/material-dark.css +78 -17
- package/styles/gantt/material.css +78 -17
- package/styles/gantt/material3-dark.css +77 -16
- package/styles/gantt/material3.css +77 -16
- package/styles/gantt/tailwind-dark.css +78 -17
- package/styles/gantt/tailwind.css +78 -17
- package/styles/highcontrast-light.css +78 -17
- package/styles/highcontrast.css +78 -17
- package/styles/material-dark.css +78 -17
- package/styles/material.css +78 -17
- package/styles/material3-dark.css +77 -16
- package/styles/material3.css +77 -16
- package/styles/tailwind-dark.css +78 -17
- package/styles/tailwind.css +78 -17
|
@@ -22,6 +22,11 @@ var Timeline = /** @class */ (function () {
|
|
|
22
22
|
this.isZoomToFit = false;
|
|
23
23
|
this.topTierCollection = [];
|
|
24
24
|
this.bottomTierCollection = [];
|
|
25
|
+
this.pdfExportTopTierCollection = [];
|
|
26
|
+
this.pdfExportBottomTierCollection = [];
|
|
27
|
+
this.restrictRender = true;
|
|
28
|
+
this.performedTimeSpanAction = false;
|
|
29
|
+
this.isZoomedToFit = false;
|
|
25
30
|
this.parent = ganttObj;
|
|
26
31
|
this.initProperties();
|
|
27
32
|
}
|
|
@@ -102,6 +107,7 @@ var Timeline = /** @class */ (function () {
|
|
|
102
107
|
*/
|
|
103
108
|
Timeline.prototype.processZooming = function (isZoomIn) {
|
|
104
109
|
this.isZoomToFit = false;
|
|
110
|
+
this.isZoomedToFit = false;
|
|
105
111
|
if (!this.parent['isProjectDateUpdated']) {
|
|
106
112
|
this.parent.dateValidationModule.calculateProjectDates();
|
|
107
113
|
}
|
|
@@ -209,6 +215,13 @@ var Timeline = /** @class */ (function () {
|
|
|
209
215
|
this.parent.hideSpinner();
|
|
210
216
|
}
|
|
211
217
|
}
|
|
218
|
+
var tier = this.topTier === 'None' ? 'bottomTier' : 'topTier';
|
|
219
|
+
if (this.parent.enableTimelineVirtualization && (!this.parent.pdfExportModule || this.parent.pdfExportModule && !this.parent.pdfExportModule.isPdfExport)) {
|
|
220
|
+
this.wholeTimelineWidth = this.calculateWidthBetweenTwoDate(tier, this.parent.timelineModule.timelineStartDate, this.parent.timelineModule.timelineEndDate);
|
|
221
|
+
this.parent.element.querySelectorAll(".e-chart-scroll-container")[0].querySelector(".e-virtualtrack")['style'].width = this.wholeTimelineWidth + 'px';
|
|
222
|
+
this.parent.element.querySelectorAll(".e-timeline-header-container")[0].querySelector(".e-virtualtrack")['style'].width = this.wholeTimelineWidth + 'px';
|
|
223
|
+
this.parent.ganttChartModule.updateWidthAndHeight();
|
|
224
|
+
}
|
|
212
225
|
};
|
|
213
226
|
/**
|
|
214
227
|
* To perform the zoom to fit operation in Gantt.
|
|
@@ -219,6 +232,7 @@ var Timeline = /** @class */ (function () {
|
|
|
219
232
|
Timeline.prototype.processZoomToFit = function () {
|
|
220
233
|
this.isZoomToFit = true;
|
|
221
234
|
this.isZooming = false;
|
|
235
|
+
this.isZoomedToFit = true;
|
|
222
236
|
if (!this.parent.zoomingProjectStartDate) {
|
|
223
237
|
this.parent.zoomingProjectStartDate = this.parent.cloneProjectStartDate;
|
|
224
238
|
this.parent.zoomingProjectEndDate = this.parent.cloneProjectEndDate;
|
|
@@ -627,6 +641,28 @@ var Timeline = /** @class */ (function () {
|
|
|
627
641
|
this.parent.ganttChartModule.chartTimelineContainer.offsetHeight;
|
|
628
642
|
}
|
|
629
643
|
};
|
|
644
|
+
Timeline.prototype.dateByLeftValue = function (left, isMilestone, property) {
|
|
645
|
+
var pStartDate = new Date(this.parent.timelineModule.timelineStartDate.toString());
|
|
646
|
+
var milliSecondsPerPixel = (24 * 60 * 60 * 1000) / this.parent.perDayWidth;
|
|
647
|
+
pStartDate.setTime(pStartDate.getTime() + (left * milliSecondsPerPixel));
|
|
648
|
+
/* To render the milestone in proper date while editing */
|
|
649
|
+
if (isMilestone && !isNullOrUndefined(property.predecessorsName) && property.predecessorsName !== '') {
|
|
650
|
+
pStartDate.setDate(pStartDate.getDate() - 1);
|
|
651
|
+
this.parent.dateValidationModule.setTime(this.parent.defaultEndTime, pStartDate);
|
|
652
|
+
pStartDate = this.parent.dateValidationModule.checkStartDate(pStartDate, property, true);
|
|
653
|
+
}
|
|
654
|
+
var tierMode = this.parent.timelineModule.bottomTier !== 'None' ? this.parent.timelineModule.topTier :
|
|
655
|
+
this.parent.timelineModule.bottomTier;
|
|
656
|
+
if (tierMode !== 'Hour' && tierMode !== 'Minutes') {
|
|
657
|
+
if (this.parent.isInDst(new Date(this.parent.timelineModule.timelineStartDate.toString())) && !this.parent.isInDst(pStartDate)) {
|
|
658
|
+
pStartDate.setTime(pStartDate.getTime() + (60 * 60 * 1000));
|
|
659
|
+
}
|
|
660
|
+
else if (!this.parent.isInDst(new Date(this.parent.timelineModule.timelineStartDate.toString())) && this.parent.isInDst(pStartDate)) {
|
|
661
|
+
pStartDate.setTime(pStartDate.getTime() - (60 * 60 * 1000));
|
|
662
|
+
}
|
|
663
|
+
}
|
|
664
|
+
return pStartDate;
|
|
665
|
+
};
|
|
630
666
|
/**
|
|
631
667
|
* To create timeline header template.
|
|
632
668
|
*
|
|
@@ -639,32 +675,109 @@ var Timeline = /** @class */ (function () {
|
|
|
639
675
|
var div;
|
|
640
676
|
var table;
|
|
641
677
|
var thead;
|
|
678
|
+
var virtualTableDiv;
|
|
679
|
+
var virtualTrackDiv;
|
|
642
680
|
var loopCount = this.isSingleTier ? 1 : 2;
|
|
643
681
|
var tier = this.topTier === 'None' ? 'bottomTier' : 'topTier';
|
|
644
|
-
this.updateTimelineHeaderHeight();
|
|
645
682
|
this.topTierCollection = [];
|
|
646
683
|
this.bottomTierCollection = [];
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
684
|
+
if (this.restrictRender == true) {
|
|
685
|
+
this.updateTimelineHeaderHeight();
|
|
686
|
+
this.wholeTimelineWidth = this.calculateWidthBetweenTwoDate(tier, this.parent.timelineModule.timelineStartDate, this.parent.timelineModule.timelineEndDate);
|
|
687
|
+
}
|
|
688
|
+
if (this.parent.enableTimelineVirtualization && (this.wholeTimelineWidth > this.parent.element.offsetWidth * 3)) {
|
|
689
|
+
for (var count = 0; count < loopCount; count++) {
|
|
690
|
+
table = createElement('table', { className: cls.timelineHeaderTableContainer, styles: 'display: block;' });
|
|
691
|
+
table.setAttribute('role', 'presentation');
|
|
692
|
+
thead = createElement('thead', { className: cls.timelineHeaderTableBody, styles: 'display:block; border-collapse:collapse' });
|
|
693
|
+
tr = createElement('tr', { innerHTML: this.createTimelineTemplate(tier) });
|
|
694
|
+
td = createElement('td');
|
|
695
|
+
div = createElement('div', { styles: 'width: 20px' });
|
|
696
|
+
virtualTableDiv = createElement('div', { className: cls.virtualTable });
|
|
697
|
+
virtualTrackDiv = createElement('div', { className: cls.virtualTrack });
|
|
698
|
+
td.appendChild(div);
|
|
699
|
+
tr.appendChild(td);
|
|
700
|
+
virtualTableDiv.appendChild(tr);
|
|
701
|
+
thead.appendChild(virtualTableDiv);
|
|
702
|
+
thead.appendChild(virtualTrackDiv);
|
|
703
|
+
table.appendChild(thead);
|
|
704
|
+
this.parent.ganttChartModule.chartTimelineContainer.appendChild(table);
|
|
705
|
+
tier = 'bottomTier';
|
|
706
|
+
tr = null;
|
|
707
|
+
this.restrictRender = false;
|
|
708
|
+
}
|
|
709
|
+
if (this.parent.height === "Auto" || this.parent.timelineModule.isSingleTier) {
|
|
710
|
+
var timelineContainer = this.parent.element.getElementsByClassName('e-timeline-header-container')[0]['offsetHeight'];
|
|
711
|
+
this.parent.element.getElementsByClassName('e-chart-scroll-container e-content')[0]['style'].height = 'calc(100% - ' + timelineContainer + 'px)';
|
|
712
|
+
if (!isNullOrUndefined(this.parent.element.getElementsByClassName('e-gridcontent')[0])) {
|
|
713
|
+
this.parent.treeGrid.element.getElementsByClassName('e-gridcontent')[0]['style'].height = 'calc(100% - ' + timelineContainer + 'px)';
|
|
714
|
+
}
|
|
715
|
+
}
|
|
716
|
+
this.timelineVirtualizationStyles();
|
|
717
|
+
}
|
|
718
|
+
else {
|
|
719
|
+
for (var count = 0; count < loopCount; count++) {
|
|
720
|
+
table = createElement('table', { className: cls.timelineHeaderTableContainer, styles: 'display: block;' });
|
|
721
|
+
table.setAttribute('role', 'presentation');
|
|
722
|
+
thead = createElement('thead', { className: cls.timelineHeaderTableBody, styles: 'display:block; border-collapse:collapse' });
|
|
723
|
+
tr = createElement('tr', { innerHTML: this.createTimelineTemplate(tier) });
|
|
724
|
+
td = createElement('td');
|
|
653
725
|
div = createElement('div', { styles: 'width: 20px' });
|
|
654
726
|
td.appendChild(div);
|
|
655
727
|
tr.appendChild(td);
|
|
656
728
|
thead.appendChild(tr);
|
|
657
729
|
table.appendChild(thead);
|
|
658
730
|
this.parent.ganttChartModule.chartTimelineContainer.appendChild(table);
|
|
731
|
+
tier = 'bottomTier';
|
|
732
|
+
tr = null;
|
|
733
|
+
}
|
|
734
|
+
if (this.parent.height === "Auto" || this.parent.timelineModule.isSingleTier) {
|
|
735
|
+
var timelineContainer = this.parent.element.getElementsByClassName('e-timeline-header-container')[0]['offsetHeight'];
|
|
736
|
+
this.parent.element.getElementsByClassName('e-chart-scroll-container e-content')[0]['style'].height = 'calc(100% - ' + timelineContainer + 'px)';
|
|
737
|
+
if (!isNullOrUndefined(this.parent.element.getElementsByClassName('e-gridcontent')[0])) {
|
|
738
|
+
this.parent.treeGrid.element.getElementsByClassName('e-gridcontent')[0]['style'].height = 'calc(100% - ' + timelineContainer + 'px)';
|
|
739
|
+
}
|
|
659
740
|
}
|
|
660
|
-
tier = 'bottomTier';
|
|
661
|
-
tr = null;
|
|
662
741
|
}
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
742
|
+
};
|
|
743
|
+
Timeline.prototype.timelineVirtualizationStyles = function () {
|
|
744
|
+
var translateXValue = 0;
|
|
745
|
+
var translateYValue = 0;
|
|
746
|
+
var trackWidth = this.wholeTimelineWidth;
|
|
747
|
+
if (this.parent.enableTimelineVirtualization) {
|
|
748
|
+
//e-content styles updating
|
|
749
|
+
translateXValue = (this.parent.enableTimelineVirtualization && !isNullOrUndefined(this.parent.ganttChartModule.scrollObject.element.scrollLeft)
|
|
750
|
+
&& this.parent.ganttChartModule.scrollObject.element.scrollLeft != 0) ? this.parent.ganttChartModule.scrollObject.getTimelineLeft() : 0;
|
|
751
|
+
if (this.parent.enableRtl) {
|
|
752
|
+
translateXValue = -(translateXValue);
|
|
753
|
+
}
|
|
754
|
+
var contentVirtualTable = this.parent.element.querySelectorAll(".e-chart-scroll-container")[0].querySelector(".e-virtualtable");
|
|
755
|
+
contentVirtualTable.style.transform = "translate(" + translateXValue + "px, " + translateYValue + "px)";
|
|
756
|
+
var contentVirtualTrack = this.parent.element.querySelectorAll(".e-chart-scroll-container")[0].querySelector(".e-virtualtrack");
|
|
757
|
+
contentVirtualTrack.style.position = "relative";
|
|
758
|
+
contentVirtualTrack.style.width = trackWidth + 'px';
|
|
759
|
+
//timeline styles updating
|
|
760
|
+
if (this.parent.ganttChartModule.scrollObject['isSetScrollLeft']) {
|
|
761
|
+
var virtualTableStylesT = this.parent.element.querySelectorAll(".e-timeline-header-table-container")[0].querySelector(".e-virtualtable");
|
|
762
|
+
var virtualTableStylesB = this.parent.element.querySelectorAll(".e-timeline-header-table-container")[1].querySelector(".e-virtualtable");
|
|
763
|
+
virtualTableStylesT.style.transform = "translate(" + translateXValue + "px, " + translateYValue + "px)";
|
|
764
|
+
virtualTableStylesB.style.transform = "translate(" + translateXValue + "px, " + translateYValue + "px)";
|
|
765
|
+
}
|
|
766
|
+
var virtualTrackStylesT = this.parent.element.querySelectorAll(".e-timeline-header-table-container")[0].querySelector(".e-virtualtrack");
|
|
767
|
+
var virtualTrackStylesB = this.parent.element.querySelectorAll(".e-timeline-header-table-container")[1].querySelector(".e-virtualtrack");
|
|
768
|
+
virtualTrackStylesT.style.position = "relative";
|
|
769
|
+
virtualTrackStylesB.style.position = "relative";
|
|
770
|
+
virtualTrackStylesT.style.width = trackWidth + 'px';
|
|
771
|
+
virtualTrackStylesB.style.width = trackWidth + 'px';
|
|
772
|
+
//dependency viewer styles updating
|
|
773
|
+
var dependencyViewer = this.parent.connectorLineModule.svgObject;
|
|
774
|
+
dependencyViewer['style'].width = trackWidth + 'px';
|
|
775
|
+
// timeline header container width updating
|
|
776
|
+
var timelineHeader = this.parent.element.querySelector('.' + cls.timelineHeaderContainer);
|
|
777
|
+
timelineHeader['style'].width = 'calc(100% - ' + 17 + 'px)';
|
|
778
|
+
if (this.parent.timelineModule.isZooming || this.parent.timelineModule.isZoomToFit) {
|
|
779
|
+
this.parent.ganttChartModule.scrollElement.scrollLeft = 0;
|
|
780
|
+
this.parent.ganttChartModule.scrollObject.updateChartElementStyles();
|
|
668
781
|
}
|
|
669
782
|
}
|
|
670
783
|
};
|
|
@@ -874,7 +987,12 @@ var Timeline = /** @class */ (function () {
|
|
|
874
987
|
dateString = dateString.slice(1);
|
|
875
988
|
}
|
|
876
989
|
else {
|
|
877
|
-
|
|
990
|
+
if (this.parent.locale === 'ar') {
|
|
991
|
+
dateString = dateString;
|
|
992
|
+
}
|
|
993
|
+
else {
|
|
994
|
+
dateString = dateString.slice(0, 1);
|
|
995
|
+
}
|
|
878
996
|
}
|
|
879
997
|
}
|
|
880
998
|
else {
|
|
@@ -915,9 +1033,14 @@ var Timeline = /** @class */ (function () {
|
|
|
915
1033
|
parent.timelineModule.customTimelineSettings.bottomTier.count;
|
|
916
1034
|
var increment;
|
|
917
1035
|
var newTime;
|
|
918
|
-
var
|
|
1036
|
+
var leftValueForStartDate = (this.parent.enableTimelineVirtualization && this.parent.ganttChartModule.scrollObject.element.scrollLeft != 0)
|
|
1037
|
+
? this.parent.ganttChartModule.scrollObject.getTimelineLeft() : null;
|
|
1038
|
+
var startDate = (this.parent.enableTimelineVirtualization && !isNullOrUndefined(leftValueForStartDate))
|
|
1039
|
+
? new Date((this.dateByLeftValue(leftValueForStartDate)).toString()) : new Date(this.parent.timelineModule.timelineStartDate.toString());
|
|
919
1040
|
var endDate = new Date(this.timelineRoundOffEndDate.toString());
|
|
920
1041
|
var scheduleDateCollection = [];
|
|
1042
|
+
var width = 0;
|
|
1043
|
+
var WidthForVirtualTable = this.parent.element.offsetWidth * 3;
|
|
921
1044
|
do {
|
|
922
1045
|
// PDf export collection
|
|
923
1046
|
var timelineCell = {};
|
|
@@ -947,8 +1070,20 @@ var Timeline = /** @class */ (function () {
|
|
|
947
1070
|
parentTh = parentTh + parentTr;
|
|
948
1071
|
var tierCollection = tier === 'topTier' ? this.topTierCollection : this.bottomTierCollection;
|
|
949
1072
|
timelineCell.endDate = new Date(startDate.getTime());
|
|
950
|
-
|
|
951
|
-
|
|
1073
|
+
if (this.parent.pdfExportModule && this.parent.pdfExportModule.isPdfExport && this.parent.enableTimelineVirtualization) {
|
|
1074
|
+
if (tier == 'topTier') {
|
|
1075
|
+
this.pdfExportTopTierCollection.push(timelineCell);
|
|
1076
|
+
}
|
|
1077
|
+
else {
|
|
1078
|
+
this.pdfExportBottomTierCollection.push(timelineCell);
|
|
1079
|
+
}
|
|
1080
|
+
}
|
|
1081
|
+
else {
|
|
1082
|
+
tierCollection.push(timelineCell);
|
|
1083
|
+
}
|
|
1084
|
+
width += timelineCell.width;
|
|
1085
|
+
this.weekendEndDate = timelineCell.endDate >= endDate ? endDate : timelineCell.endDate;
|
|
1086
|
+
} while ((this.parent.enableTimelineVirtualization && (!this.parent.pdfExportModule || this.parent.pdfExportModule && !this.parent.pdfExportModule.isPdfExport)) ? (width < WidthForVirtualTable) && (startDate < endDate) : (startDate < endDate));
|
|
952
1087
|
return parentTh;
|
|
953
1088
|
};
|
|
954
1089
|
Timeline.prototype.updateTimelineAfterZooming = function (endDate, resized) {
|
|
@@ -1434,9 +1569,10 @@ var Timeline = /** @class */ (function () {
|
|
|
1434
1569
|
var validEndLeft = this.parent.dataOperation.getTaskLeft(validEndDate, false);
|
|
1435
1570
|
var isChanged = void 0;
|
|
1436
1571
|
var taskbarModule = this.parent.editModule.taskbarEditModule;
|
|
1437
|
-
if (!isNullOrUndefined(maxStartLeft) && ((!isNullOrUndefined(taskbarModule)) && (!isNullOrUndefined(taskbarModule.taskBarEditAction)
|
|
1572
|
+
if (!isNullOrUndefined(maxStartLeft) && (((!isNullOrUndefined(taskbarModule)) && (!isNullOrUndefined(taskbarModule.taskBarEditAction)
|
|
1438
1573
|
&& taskbarModule.taskBarEditAction !== 'ProgressResizing' &&
|
|
1439
|
-
taskbarModule.taskBarEditAction !== 'RightResizing' && taskbarModule.taskBarEditAction !== 'LeftResizing'))
|
|
1574
|
+
taskbarModule.taskBarEditAction !== 'RightResizing' && taskbarModule.taskBarEditAction !== 'LeftResizing')) || ((taskbarModule)
|
|
1575
|
+
&& isNullOrUndefined(taskbarModule.taskBarEditAction))) && (maxStartLeft < this.bottomTierCellWidth || maxStartLeft <= validStartLeft)) {
|
|
1440
1576
|
isChanged = 'prevTimeSpan';
|
|
1441
1577
|
minStartDate = minStartDate > this.timelineStartDate ? this.timelineStartDate : minStartDate;
|
|
1442
1578
|
}
|
|
@@ -1486,13 +1622,16 @@ var Timeline = /** @class */ (function () {
|
|
|
1486
1622
|
}
|
|
1487
1623
|
var args = this.timeSpanActionEvent('actionBegin', type, isFrom);
|
|
1488
1624
|
if (!args.cancel) {
|
|
1625
|
+
this.restrictRender = true;
|
|
1626
|
+
this.performedTimeSpanAction = true;
|
|
1627
|
+
var previousScrollLeft = this.parent.ganttChartModule.scrollElement.scrollLeft;
|
|
1489
1628
|
this.parent.updateProjectDates(args.projectStartDate, args.ProjectEndDate, args.isTimelineRoundOff, isFrom);
|
|
1490
1629
|
if (type === 'prevTimeSpan' && isFrom === 'publicMethod') {
|
|
1491
1630
|
this.parent.ganttChartModule.updateScrollLeft(0);
|
|
1492
1631
|
this.parent.timelineModule.isZoomToFit = false;
|
|
1493
1632
|
}
|
|
1494
1633
|
else if (type === 'nextTimeSpan' && isFrom === 'publicMethod') {
|
|
1495
|
-
this.parent.ganttChartModule.updateScrollLeft(this.parent.
|
|
1634
|
+
this.parent.ganttChartModule.updateScrollLeft(this.parent.enableTimelineVirtualization ? this.wholeTimelineWidth : this.totalTimelineWidth);
|
|
1496
1635
|
this.parent.timelineModule.isZoomToFit = false;
|
|
1497
1636
|
}
|
|
1498
1637
|
else if (type === 'nextTimeSpan' && isFrom === 'TaskbarEditing') {
|
|
@@ -1500,6 +1639,10 @@ var Timeline = /** @class */ (function () {
|
|
|
1500
1639
|
this.parent.element.querySelector('.e-timeline-header-container').scrollLeft = currentScrollLeft;
|
|
1501
1640
|
this.parent.timelineModule.isZoomToFit = false;
|
|
1502
1641
|
}
|
|
1642
|
+
if (isFrom === 'TaskbarEditing' && this.parent.enableTimelineVirtualization && this.wholeTimelineWidth > this.parent.element.offsetWidth * 3) {
|
|
1643
|
+
this.parent.ganttChartModule.scrollObject.setScrollLeft(previousScrollLeft);
|
|
1644
|
+
this.parent.ganttChartModule.scrollObject.updateContent();
|
|
1645
|
+
}
|
|
1503
1646
|
this.parent.timelineModule.timeSpanActionEvent('actionComplete', type, isFrom);
|
|
1504
1647
|
}
|
|
1505
1648
|
else {
|
|
@@ -264,6 +264,22 @@
|
|
|
264
264
|
content: "\e85f";
|
|
265
265
|
}
|
|
266
266
|
|
|
267
|
+
.e-bigger .e-gantt .e-gantt-chart .e-taskbar-left-resizer,
|
|
268
|
+
.e-bigger .e-gantt .e-gantt-chart .e-taskbar-right-resizer {
|
|
269
|
+
display: inline-block;
|
|
270
|
+
position: absolute;
|
|
271
|
+
top: 0;
|
|
272
|
+
width: 25px;
|
|
273
|
+
z-index: 4;
|
|
274
|
+
}
|
|
275
|
+
.e-bigger .e-gantt .e-gantt-chart .e-left-resize-gripper,
|
|
276
|
+
.e-bigger .e-gantt .e-gantt-chart .e-right-resize-gripper {
|
|
277
|
+
-ms-flex-align: center;
|
|
278
|
+
align-items: center;
|
|
279
|
+
cursor: ew-resize;
|
|
280
|
+
display: -ms-inline-flexbox;
|
|
281
|
+
display: inline-flex;
|
|
282
|
+
}
|
|
267
283
|
.e-bigger .e-gantt .e-gantt-chart .e-timeline-header-container {
|
|
268
284
|
height: 64px;
|
|
269
285
|
}
|
|
@@ -343,7 +359,8 @@
|
|
|
343
359
|
padding: 16px 4px 16px 16px !important; /* stylelint-disable-line declaration-no-important */
|
|
344
360
|
}
|
|
345
361
|
.e-bigger .e-gantt .e-dialog .e-dlg-header-content .e-btn.e-dlg-closeicon-btn {
|
|
346
|
-
left:
|
|
362
|
+
left: -11px;
|
|
363
|
+
top: 3px;
|
|
347
364
|
}
|
|
348
365
|
.e-bigger .e-gantt .e-dialog .e-btn .e-btn-icon.e-icon-dlg-close {
|
|
349
366
|
font-size: 12px !important;
|
|
@@ -355,8 +372,8 @@
|
|
|
355
372
|
.e-bigger .e-gantt .e-dialog .e-footer-content .e-btn {
|
|
356
373
|
margin-left: 12px;
|
|
357
374
|
}
|
|
358
|
-
.e-bigger .e-gantt .e-dialog .e-dlg-header {
|
|
359
|
-
line-height:
|
|
375
|
+
.e-bigger .e-gantt .e-dialog .e-dlg-header:not(.e-gantt-adaptive-dialog .e-dialog .e-dlg-header) {
|
|
376
|
+
line-height: 37px;
|
|
360
377
|
}
|
|
361
378
|
.e-bigger .e-gantt .e-grid .e-flmenu-valuediv {
|
|
362
379
|
padding: 16px 0 0 !important;
|
|
@@ -370,6 +387,7 @@
|
|
|
370
387
|
}
|
|
371
388
|
.e-bigger .e-gantt-dialog .e-dialog {
|
|
372
389
|
border-radius: 6px;
|
|
390
|
+
width: 556px !important;
|
|
373
391
|
}
|
|
374
392
|
.e-bigger .e-gantt-dialog .e-tab .e-tab-header .e-toolbar-item .e-tab-wrap {
|
|
375
393
|
padding: 0 16px !important; /* stylelint-disable-line declaration-no-important */
|
|
@@ -450,6 +468,16 @@
|
|
|
450
468
|
.e-bigger .e-gantt-dialog .e-input-group-icon.e-date-icon {
|
|
451
469
|
min-width: 36px !important; /* stylelint-disable-line declaration-no-important */
|
|
452
470
|
}
|
|
471
|
+
.e-bigger .e-gantt-dialog .e-gantt-adaptive-dialog .e-dialog {
|
|
472
|
+
position: absolute !important; /* stylelint-disable-line declaration-no-important */
|
|
473
|
+
left: 0 !important; /* stylelint-disable-line declaration-no-important */
|
|
474
|
+
}
|
|
475
|
+
.e-bigger .e-gantt-dialog .e-gantt-adaptive-dialog .e-dialog .e-dlg-header-content {
|
|
476
|
+
padding: 16px !important; /* stylelint-disable-line declaration-no-important */
|
|
477
|
+
}
|
|
478
|
+
.e-bigger .e-gantt-dialog .e-gantt-adaptive-dialog .e-dialog td {
|
|
479
|
+
width: 100% !important; /* stylelint-disable-line declaration-no-important */
|
|
480
|
+
}
|
|
453
481
|
.e-bigger .e-predecessor-tooltip .e-arrow-tip-outer.e-tip-bottom {
|
|
454
482
|
border-top: 8px solid #000;
|
|
455
483
|
}
|
|
@@ -675,9 +703,6 @@
|
|
|
675
703
|
.e-gantt .e-gantt-tree-grid-pane .e-gridcontent .e-content {
|
|
676
704
|
overflow-x: scroll !important; /* stylelint-disable-line declaration-no-important */
|
|
677
705
|
}
|
|
678
|
-
.e-gantt .e-gantt-tree-grid-pane .e-gridcontent .e-gantt-frozen {
|
|
679
|
-
overflow-x: hidden !important; /* stylelint-disable-line declaration-no-important */
|
|
680
|
-
}
|
|
681
706
|
.e-gantt .e-gantt-tree-grid-pane .e-gridcontent .e-content.e-gantt-scroll-padding {
|
|
682
707
|
width: calc(100% + 17px);
|
|
683
708
|
}
|
|
@@ -800,7 +825,7 @@
|
|
|
800
825
|
box-sizing: border-box;
|
|
801
826
|
}
|
|
802
827
|
.e-gantt .e-gantt-chart .e-zero-spacing {
|
|
803
|
-
border-spacing: 0;
|
|
828
|
+
border-spacing: 0.25px;
|
|
804
829
|
}
|
|
805
830
|
.e-gantt .e-gantt-chart .e-chart-row:first-child .e-chart-row-border {
|
|
806
831
|
border-top: 0;
|
|
@@ -830,9 +855,6 @@
|
|
|
830
855
|
vertical-align: middle;
|
|
831
856
|
z-index: 3;
|
|
832
857
|
}
|
|
833
|
-
.e-gantt .e-gantt-chart .e-taskbar-main-container:hover {
|
|
834
|
-
z-index: 4;
|
|
835
|
-
}
|
|
836
858
|
.e-gantt .e-gantt-chart .e-taskbar-main-container.e-gantt-multi-taskbar:hover {
|
|
837
859
|
z-index: 4;
|
|
838
860
|
}
|
|
@@ -1309,7 +1331,7 @@
|
|
|
1309
1331
|
border-spacing: 0;
|
|
1310
1332
|
}
|
|
1311
1333
|
.e-gantt-dialog .e-item {
|
|
1312
|
-
height:
|
|
1334
|
+
height: 100%;
|
|
1313
1335
|
}
|
|
1314
1336
|
.e-gantt-dialog .e-dependent-div {
|
|
1315
1337
|
border-bottom-width: 0px;
|
|
@@ -1368,6 +1390,9 @@
|
|
|
1368
1390
|
.e-gantt-dialog > .e-dlg-content {
|
|
1369
1391
|
padding: 0 !important; /* stylelint-disable-line declaration-no-important */
|
|
1370
1392
|
}
|
|
1393
|
+
.e-gantt-dialog .e-dlg-header {
|
|
1394
|
+
line-height: 30px;
|
|
1395
|
+
}
|
|
1371
1396
|
.e-gantt-dialog .e-dlg-header-content {
|
|
1372
1397
|
border-bottom: 0 !important; /* stylelint-disable-line declaration-no-important */
|
|
1373
1398
|
}
|
|
@@ -1375,6 +1400,10 @@
|
|
|
1375
1400
|
border-radius: 6px 6px 0px 0px;
|
|
1376
1401
|
padding-bottom: 20px;
|
|
1377
1402
|
}
|
|
1403
|
+
.e-gantt-dialog .e-dlg-header-content .e-btn.e-dlg-closeicon-btn {
|
|
1404
|
+
left: -11px;
|
|
1405
|
+
top: 2px !important;
|
|
1406
|
+
}
|
|
1378
1407
|
.e-gantt-dialog .e-dlg-header-content .e-btn.e-dlg-closeicon-btn {
|
|
1379
1408
|
border-radius: 50%;
|
|
1380
1409
|
height: auto !important; /* stylelint-disable-line declaration-no-important */
|
|
@@ -1440,13 +1469,14 @@
|
|
|
1440
1469
|
font-size: 14px;
|
|
1441
1470
|
}
|
|
1442
1471
|
|
|
1443
|
-
.e-bigger .e-
|
|
1444
|
-
|
|
1472
|
+
.e-bigger .e-filter-popup .e-control .e-dialog .e-lib .e-popup .e-popup-open .e-excelfilter .e-gantt,
|
|
1473
|
+
.e-bigger .e-gantt .e-excelfilter .e-dialog .e-dlg-content {
|
|
1474
|
+
padding: 0 18px 0 0 !important; /* stylelint-disable-line declaration-no-important */
|
|
1445
1475
|
}
|
|
1446
1476
|
|
|
1447
|
-
.e-bigger .e-
|
|
1448
|
-
|
|
1449
|
-
|
|
1477
|
+
.e-bigger .e-filter-popup .e-control .e-dialog .e-lib .e-popup .e-popup-open .e-excelfilter .e-gantt,
|
|
1478
|
+
.e-bigger .e-gantt .e-contextmenu-wrapper ul {
|
|
1479
|
+
padding: 0 !important; /* stylelint-disable-line declaration-no-important */
|
|
1450
1480
|
}
|
|
1451
1481
|
|
|
1452
1482
|
.e-gantt-tooltip-label {
|
|
@@ -1561,6 +1591,29 @@
|
|
|
1561
1591
|
z-index: 1;
|
|
1562
1592
|
}
|
|
1563
1593
|
|
|
1594
|
+
.e-gantt .e-gantt-chart .e-chart-root-container .e-content td.e-chart-row-cell.e-droptop {
|
|
1595
|
+
border-top: 1px solid #0070f0;
|
|
1596
|
+
border-width: 1px 0 0;
|
|
1597
|
+
}
|
|
1598
|
+
|
|
1599
|
+
.e-gantt .e-gantt-chart .e-chart-root-container .e-content td.e-chart-row-cell.e-dropbottom {
|
|
1600
|
+
border-bottom: 1px solid #0070f0;
|
|
1601
|
+
box-shadow: #0070f0;
|
|
1602
|
+
}
|
|
1603
|
+
|
|
1604
|
+
.e-gantt .e-gantt-chart .e-chart-root-container .e-content td.e-chart-row-cell.e-childborder {
|
|
1605
|
+
border-bottom: 1px solid #0070f0;
|
|
1606
|
+
border-top: 1px solid #0070f0;
|
|
1607
|
+
box-shadow: #0070f0;
|
|
1608
|
+
}
|
|
1609
|
+
|
|
1610
|
+
@media (max-width: 767px) {
|
|
1611
|
+
.e-bigger .e-gantt .e-dialog .e-edit-form-column:nth-child(odd), .e-bigger .e-gantt .e-dialog .e-edit-form-column:nth-child(even) {
|
|
1612
|
+
float: none;
|
|
1613
|
+
padding: 16px 12px 0 16px;
|
|
1614
|
+
width: 100%;
|
|
1615
|
+
}
|
|
1616
|
+
}
|
|
1564
1617
|
/*! Gantt theme */
|
|
1565
1618
|
.e-gantt .e-gantt-splitter {
|
|
1566
1619
|
border-color: #484848;
|
|
@@ -1613,6 +1666,13 @@
|
|
|
1613
1666
|
background: #484848;
|
|
1614
1667
|
opacity: 1;
|
|
1615
1668
|
}
|
|
1669
|
+
.e-gantt .e-gantt-tree-grid-pane .e-grid td.e-active.e-leftfreeze,
|
|
1670
|
+
.e-gantt .e-gantt-tree-grid-pane .e-grid td.e-active.e-unfreeze,
|
|
1671
|
+
.e-gantt .e-gantt-tree-grid-pane .e-grid td.e-active.e-rightfreeze,
|
|
1672
|
+
.e-gantt .e-gantt-tree-grid-pane .e-grid td.e-active.e-fixedfreeze {
|
|
1673
|
+
background: #484848;
|
|
1674
|
+
opacity: 1;
|
|
1675
|
+
}
|
|
1616
1676
|
.e-gantt .e-taskbar-resize-div {
|
|
1617
1677
|
border-color: #0070f0;
|
|
1618
1678
|
}
|
|
@@ -1929,6 +1989,7 @@
|
|
|
1929
1989
|
}
|
|
1930
1990
|
.e-gantt-dialog .e-dlg-header {
|
|
1931
1991
|
color: #fff;
|
|
1992
|
+
position: relative;
|
|
1932
1993
|
}
|
|
1933
1994
|
.e-gantt-dialog .e-dlg-header-content {
|
|
1934
1995
|
background: #0070f0;
|