@syncfusion/ej2-gantt 19.4.54 → 20.1.47
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 +33 -0
- 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 +257 -140
- package/dist/es6/ej2-gantt.es2015.js.map +1 -1
- package/dist/es6/ej2-gantt.es5.js +279 -148
- 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 +18 -18
- package/src/gantt/actions/cell-edit.js +2 -1
- package/src/gantt/actions/dialog-edit.js +2 -1
- package/src/gantt/actions/edit.js +36 -9
- package/src/gantt/actions/rowdragdrop.js +37 -15
- package/src/gantt/actions/selection.js +3 -0
- package/src/gantt/base/date-processor.js +0 -1
- package/src/gantt/base/gantt-chart.js +36 -5
- package/src/gantt/base/gantt.js +15 -56
- package/src/gantt/base/splitter.js +1 -0
- package/src/gantt/base/tree-grid.js +3 -1
- package/src/gantt/renderer/chart-rows.js +59 -32
- package/src/gantt/renderer/connector-line.js +22 -18
- package/src/gantt/renderer/event-marker.js +1 -0
- package/src/gantt/renderer/nonworking-day.js +13 -6
- package/src/gantt/renderer/timeline.d.ts +1 -0
- package/src/gantt/renderer/timeline.js +40 -1
- package/src/gantt/renderer/tooltip.js +10 -3
- package/styles/bootstrap-dark.css +37 -10
- package/styles/bootstrap.css +37 -10
- package/styles/bootstrap4.css +37 -10
- package/styles/bootstrap5-dark.css +53 -19
- package/styles/bootstrap5.css +53 -19
- package/styles/fabric-dark.css +34 -7
- package/styles/fabric.css +37 -10
- package/styles/fluent-dark.css +1942 -0
- package/styles/fluent-dark.scss +1 -0
- package/styles/fluent.css +1942 -0
- package/styles/fluent.scss +1 -0
- package/styles/gantt/_bootstrap-dark-definition.scss +10 -2
- package/styles/gantt/_bootstrap-definition.scss +11 -3
- package/styles/gantt/_bootstrap4-definition.scss +10 -2
- package/styles/gantt/_bootstrap5-definition.scss +17 -9
- package/styles/gantt/_fabric-dark-definition.scss +8 -0
- package/styles/gantt/_fabric-definition.scss +10 -2
- package/styles/gantt/_fluent-dark-definition.scss +1 -0
- package/styles/gantt/_fluent-definition.scss +21 -13
- package/styles/gantt/_highcontrast-definition.scss +9 -1
- package/styles/gantt/_highcontrast-light-definition.scss +9 -1
- package/styles/gantt/_layout.scss +53 -2
- package/styles/gantt/_material-dark-definition.scss +9 -1
- package/styles/gantt/_material-definition.scss +10 -2
- package/styles/gantt/_tailwind-definition.scss +13 -5
- package/styles/gantt/_theme.scss +2 -5
- package/styles/gantt/bootstrap-dark.css +37 -10
- package/styles/gantt/bootstrap.css +37 -10
- package/styles/gantt/bootstrap4.css +37 -10
- package/styles/gantt/bootstrap5-dark.css +53 -19
- package/styles/gantt/bootstrap5.css +53 -19
- package/styles/gantt/fabric-dark.css +34 -7
- package/styles/gantt/fabric.css +37 -10
- package/styles/gantt/fluent-dark.css +1942 -0
- package/styles/gantt/fluent-dark.scss +22 -0
- package/styles/gantt/fluent.css +1942 -0
- package/styles/gantt/fluent.scss +22 -0
- package/styles/gantt/highcontrast-light.css +34 -7
- package/styles/gantt/highcontrast.css +34 -7
- package/styles/gantt/icons/_fluent-dark.scss +1 -0
- package/styles/gantt/icons/_fluent.scss +1 -1
- package/styles/gantt/icons/_tailwind-dark.scss +28 -29
- package/styles/gantt/icons/_tailwind.scss +26 -27
- package/styles/gantt/material-dark.css +37 -10
- package/styles/gantt/material.css +37 -10
- package/styles/gantt/tailwind-dark.css +70 -99
- package/styles/gantt/tailwind.css +70 -99
- package/styles/highcontrast-light.css +34 -7
- package/styles/highcontrast.css +34 -7
- package/styles/material-dark.css +37 -10
- package/styles/material.css +37 -10
- package/styles/tailwind-dark.css +70 -99
- package/styles/tailwind.css +70 -99
|
@@ -28,7 +28,7 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
28
28
|
_this.milestoneHeight = 0;
|
|
29
29
|
_this.milesStoneRadius = 0;
|
|
30
30
|
_this.baselineTop = 0;
|
|
31
|
-
_this.baselineHeight =
|
|
31
|
+
_this.baselineHeight = 8;
|
|
32
32
|
_this.touchLeftConnectorpoint = '';
|
|
33
33
|
_this.touchRightConnectorpoint = '';
|
|
34
34
|
_this.dropSplit = false;
|
|
@@ -111,7 +111,7 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
111
111
|
* @private
|
|
112
112
|
*/
|
|
113
113
|
ChartRows.prototype.getIndicatorNode = function (indicator) {
|
|
114
|
-
var templateString = '<label class="' + cls.label + ' ' + cls.taskIndicatorDiv + '"
|
|
114
|
+
var templateString = '<label class="' + cls.label + ' ' + cls.taskIndicatorDiv + '" role="LabelIndicator" style="line-height:'
|
|
115
115
|
+ (this.parent.rowHeight) + 'px;' +
|
|
116
116
|
'left:' + this.getIndicatorleft(indicator.date) + 'px;"><i class="' + indicator.iconClass + '"></i> </label>';
|
|
117
117
|
return this.createDivElement(templateString);
|
|
@@ -140,7 +140,7 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
140
140
|
var childTaskbarNode = null;
|
|
141
141
|
var data = this.templateData;
|
|
142
142
|
if (this.childTaskbarTemplateFunction) {
|
|
143
|
-
childTaskbarNode = this.childTaskbarTemplateFunction(extend({ index: i }, data), this.parent, 'TaskbarTemplate', this.getTemplateID('TaskbarTemplate'), false, undefined, rootElement[0]);
|
|
143
|
+
childTaskbarNode = this.childTaskbarTemplateFunction(extend({ index: i }, data), this.parent, 'TaskbarTemplate', this.getTemplateID('TaskbarTemplate'), false, undefined, rootElement[0], this.parent.treeGrid['root']);
|
|
144
144
|
}
|
|
145
145
|
else {
|
|
146
146
|
var labelString = '';
|
|
@@ -184,9 +184,9 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
184
184
|
}
|
|
185
185
|
else {
|
|
186
186
|
taskLabel = '<span class="' + cls.taskLabel + '" style="line-height:' +
|
|
187
|
-
(this.taskBarHeight - 1) + 'px;
|
|
188
|
-
|
|
189
|
-
|
|
187
|
+
(this.taskBarHeight - 1) + 'px;' + (this.parent.viewType === 'ResourceView' ? 'text-align: left;' : '') +
|
|
188
|
+
+(this.parent.viewType === 'ResourceView' ? 'display:inline-flex;' : '') +
|
|
189
|
+
+(this.parent.viewType === 'ResourceView' ? (data.ganttProperties.width - 10) : '') + 'px; height:' +
|
|
190
190
|
this.taskBarHeight + 'px;">' + labelString + '</span>';
|
|
191
191
|
}
|
|
192
192
|
}
|
|
@@ -579,7 +579,7 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
579
579
|
var milestoneNode = null;
|
|
580
580
|
var data = this.templateData;
|
|
581
581
|
if (this.milestoneTemplateFunction) {
|
|
582
|
-
milestoneNode = this.milestoneTemplateFunction(extend({ index: i }, data), this.parent, 'MilestoneTemplate', this.getTemplateID('MilestoneTemplate'), false, undefined, rootElement[0]);
|
|
582
|
+
milestoneNode = this.milestoneTemplateFunction(extend({ index: i }, data), this.parent, 'MilestoneTemplate', this.getTemplateID('MilestoneTemplate'), false, undefined, rootElement[0], this.parent.treeGrid['root']);
|
|
583
583
|
}
|
|
584
584
|
else {
|
|
585
585
|
var template = '<div class="' + cls.traceMilestone + '" style="position:absolute;">' +
|
|
@@ -603,7 +603,7 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
603
603
|
*/
|
|
604
604
|
ChartRows.prototype.getTaskBaselineNode = function () {
|
|
605
605
|
var data = this.templateData;
|
|
606
|
-
var template = '<div class="' + cls.baselineBar + ' ' + '" style="margin-top:' + this.baselineTop +
|
|
606
|
+
var template = '<div class="' + cls.baselineBar + ' ' + '" role="BaselineBar" style="margin-top:' + this.baselineTop +
|
|
607
607
|
'px;left:' + data.ganttProperties.baselineLeft + 'px;' +
|
|
608
608
|
'width:' + data.ganttProperties.baselineWidth + 'px;height:' +
|
|
609
609
|
this.baselineHeight + 'px;' + (this.baselineColor ? 'background-color: ' + this.baselineColor + ';' : '') + '"></div>';
|
|
@@ -617,9 +617,10 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
617
617
|
*/
|
|
618
618
|
ChartRows.prototype.getMilestoneBaselineNode = function () {
|
|
619
619
|
var data = this.templateData;
|
|
620
|
+
var baselineMilestoneHeight = this.parent.renderBaseline ? 5 : 2;
|
|
620
621
|
var template = '<div class="' + cls.baselineMilestoneContainer + ' ' + '" style="' +
|
|
621
622
|
'left:' + (data.ganttProperties.baselineLeft - this.milesStoneRadius) + 'px;' +
|
|
622
|
-
'margin-top:' + (-Math.floor(this.parent.rowHeight - this.milestoneMarginTop) +
|
|
623
|
+
'margin-top:' + (-Math.floor(this.parent.rowHeight - this.milestoneMarginTop) + baselineMilestoneHeight) +
|
|
623
624
|
'px">' + '<div class="' + cls.baselineMilestoneDiv + '">' + '<div class="' + cls.baselineMilestoneDiv +
|
|
624
625
|
' ' + cls.baselineMilestoneTop + '" ' +
|
|
625
626
|
'style="top:' + (-this.milestoneHeight) + 'px;border-right:' + this.milesStoneRadius +
|
|
@@ -647,10 +648,12 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
647
648
|
*/
|
|
648
649
|
ChartRows.prototype.getLeftLabelNode = function (i) {
|
|
649
650
|
var leftLabelNode = this.leftLabelContainer();
|
|
650
|
-
|
|
651
|
+
if (this.generateTaskLabelAriaLabel('left') !== "") {
|
|
652
|
+
leftLabelNode[0].setAttribute('aria-label', this.generateTaskLabelAriaLabel('left'));
|
|
653
|
+
}
|
|
651
654
|
var leftLabelTemplateNode = null;
|
|
652
655
|
if (this.leftTaskLabelTemplateFunction) {
|
|
653
|
-
leftLabelTemplateNode = this.leftTaskLabelTemplateFunction(extend({ index: i }, this.templateData), this.parent, 'LeftLabelTemplate', this.getTemplateID('LeftLabelTemplate'), false, undefined, leftLabelNode[0]);
|
|
656
|
+
leftLabelTemplateNode = this.leftTaskLabelTemplateFunction(extend({ index: i }, this.templateData), this.parent, 'LeftLabelTemplate', this.getTemplateID('LeftLabelTemplate'), false, undefined, leftLabelNode[0], this.parent.treeGrid['root']);
|
|
654
657
|
}
|
|
655
658
|
else {
|
|
656
659
|
var field = this.parent.labelSettings.leftLabel;
|
|
@@ -661,14 +664,18 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
661
664
|
}
|
|
662
665
|
}
|
|
663
666
|
if (leftLabelTemplateNode && leftLabelTemplateNode.length > 0) {
|
|
667
|
+
if (leftLabelTemplateNode[0]['data'] === 'null') {
|
|
668
|
+
leftLabelTemplateNode[0]['data'] = '';
|
|
669
|
+
}
|
|
664
670
|
leftLabelNode[0].appendChild([].slice.call(leftLabelTemplateNode)[0]);
|
|
665
671
|
}
|
|
666
672
|
return leftLabelNode;
|
|
667
673
|
};
|
|
668
674
|
ChartRows.prototype.getLableText = function (labelString, labelDiv) {
|
|
675
|
+
var leftLabelHeight = this.parent.renderBaseline ? ((this.parent.rowHeight - this.taskBarHeight) / 2) : this.taskBarMarginTop;
|
|
669
676
|
var templateString = createElement('div', {
|
|
670
677
|
className: labelDiv, styles: 'height:' + (this.taskBarHeight) + 'px;' +
|
|
671
|
-
'margin-top:' +
|
|
678
|
+
'margin-top:' + leftLabelHeight + 'px;'
|
|
672
679
|
});
|
|
673
680
|
var spanElem = createElement('span', { className: cls.label });
|
|
674
681
|
var property = this.parent.disableHtmlEncode ? 'textContent' : 'innerHTML';
|
|
@@ -687,10 +694,12 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
687
694
|
*/
|
|
688
695
|
ChartRows.prototype.getRightLabelNode = function (i) {
|
|
689
696
|
var rightLabelNode = this.rightLabelContainer();
|
|
690
|
-
|
|
697
|
+
if (this.generateTaskLabelAriaLabel('right') !== "") {
|
|
698
|
+
rightLabelNode[0].setAttribute('aria-label', this.generateTaskLabelAriaLabel('right'));
|
|
699
|
+
}
|
|
691
700
|
var rightLabelTemplateNode = null;
|
|
692
701
|
if (this.rightTaskLabelTemplateFunction) {
|
|
693
|
-
rightLabelTemplateNode = this.rightTaskLabelTemplateFunction(extend({ index: i }, this.templateData), this.parent, 'RightLabelTemplate', this.getTemplateID('RightLabelTemplate'), false, undefined, rightLabelNode[0]);
|
|
702
|
+
rightLabelTemplateNode = this.rightTaskLabelTemplateFunction(extend({ index: i }, this.templateData), this.parent, 'RightLabelTemplate', this.getTemplateID('RightLabelTemplate'), false, undefined, rightLabelNode[0], this.parent.treeGrid['root']);
|
|
694
703
|
}
|
|
695
704
|
else {
|
|
696
705
|
var field = this.parent.labelSettings.rightLabel;
|
|
@@ -701,6 +710,9 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
701
710
|
}
|
|
702
711
|
}
|
|
703
712
|
if (rightLabelTemplateNode && rightLabelTemplateNode.length > 0) {
|
|
713
|
+
if (rightLabelTemplateNode[0]['data'] === 'null') {
|
|
714
|
+
rightLabelTemplateNode[0]['data'] = '';
|
|
715
|
+
}
|
|
704
716
|
rightLabelNode[0].appendChild([].slice.call(rightLabelTemplateNode)[0]);
|
|
705
717
|
}
|
|
706
718
|
return rightLabelNode;
|
|
@@ -755,7 +767,7 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
755
767
|
var parentTaskbarNode = null;
|
|
756
768
|
var data = this.templateData;
|
|
757
769
|
if (this.parentTaskbarTemplateFunction) {
|
|
758
|
-
parentTaskbarNode = this.parentTaskbarTemplateFunction(extend({ index: i }, data), this.parent, 'ParentTaskbarTemplate', this.getTemplateID('ParentTaskbarTemplate'), false, undefined, rootElement[0]);
|
|
770
|
+
parentTaskbarNode = this.parentTaskbarTemplateFunction(extend({ index: i }, data), this.parent, 'ParentTaskbarTemplate', this.getTemplateID('ParentTaskbarTemplate'), false, undefined, rootElement[0], this.parent.treeGrid['root']);
|
|
759
771
|
}
|
|
760
772
|
else {
|
|
761
773
|
var labelString = '';
|
|
@@ -797,8 +809,10 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
797
809
|
else {
|
|
798
810
|
labelDiv = this.createDivElement('<span class="' +
|
|
799
811
|
cls.taskLabel + '" style="line-height:' +
|
|
800
|
-
(this.taskBarHeight - 1) + 'px;
|
|
801
|
-
(this.parent.viewType === 'ResourceView' ? (data.ganttProperties.width - 10) : '
|
|
812
|
+
(this.taskBarHeight - 1) + 'px;' + (this.parent.viewType === 'ResourceView' ? 'display:inline-flex;' : '') +
|
|
813
|
+
(this.parent.viewType === 'ResourceView' ? 'width:' + (data.ganttProperties.width - 10) : '') + 'px; height:' +
|
|
814
|
+
(this.taskBarHeight - 1) + 'px;' + (this.parent.viewType === 'ResourceView' ? 'display: inline-flex;' : '') +
|
|
815
|
+
(this.parent.viewType === 'ResourceView' ? 'width:' + (data.ganttProperties.width - 10) : '') + 'px; height:' +
|
|
802
816
|
this.taskBarHeight + 'px;">' + labelString + '</span>');
|
|
803
817
|
}
|
|
804
818
|
progressBarInnerDiv[0].appendChild([].slice.call(labelDiv)[0]);
|
|
@@ -827,10 +841,10 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
827
841
|
var className = (this.parent.gridLines === 'Horizontal' || this.parent.gridLines === 'Both') ?
|
|
828
842
|
'e-chart-row-border' : '';
|
|
829
843
|
table.innerHTML = '<tr class="' + this.getRowClassName(this.templateData) + ' ' + cls.chartRow + '"' +
|
|
830
|
-
'style="display:' + this.getExpandDisplayProp(this.templateData) + ';height:' +
|
|
844
|
+
'role="ChartRow" style="display:' + this.getExpandDisplayProp(this.templateData) + ';height:' +
|
|
831
845
|
this.parent.rowHeight + 'px;">' +
|
|
832
846
|
'<td class="' + cls.chartRowCell + ' ' + className
|
|
833
|
-
+ '" style="width:' + this.parent.timelineModule.totalTimelineWidth + 'px;"></td></tr>';
|
|
847
|
+
+ '" role="ChartCell" style="width:' + this.parent.timelineModule.totalTimelineWidth + 'px;"></td></tr>';
|
|
834
848
|
return table.childNodes;
|
|
835
849
|
};
|
|
836
850
|
/**
|
|
@@ -869,10 +883,19 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
869
883
|
};
|
|
870
884
|
ChartRows.prototype.isTemplate = function (template) {
|
|
871
885
|
var result = false;
|
|
886
|
+
for (var i = 0; i < this.parent.ganttColumns.length; i++) {
|
|
887
|
+
if (template === this.parent.ganttColumns[i].field) {
|
|
888
|
+
result = true;
|
|
889
|
+
break;
|
|
890
|
+
}
|
|
891
|
+
}
|
|
872
892
|
if (typeof template !== 'string' || template.indexOf('#') === 0 || template.indexOf('<') > -1
|
|
873
|
-
|| template.indexOf('$') > -1) {
|
|
893
|
+
|| template.indexOf('$') > -1 || !result) {
|
|
874
894
|
result = true;
|
|
875
895
|
}
|
|
896
|
+
else {
|
|
897
|
+
result = false;
|
|
898
|
+
}
|
|
876
899
|
return result;
|
|
877
900
|
};
|
|
878
901
|
/**
|
|
@@ -886,8 +909,8 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
886
909
|
};
|
|
887
910
|
ChartRows.prototype.leftLabelContainer = function () {
|
|
888
911
|
var template = '<div class="' + ((this.leftTaskLabelTemplateFunction) ? cls.leftLabelTempContainer :
|
|
889
|
-
cls.leftLabelContainer) + ' ' + '" tabindex="-1" style="height:' +
|
|
890
|
-
(this.parent.rowHeight -
|
|
912
|
+
cls.leftLabelContainer) + ' ' + '" tabindex="-1" role="LeftLabel" style="height:' +
|
|
913
|
+
(this.parent.rowHeight - 2) + 'px;width:' + this.taskNameWidth(this.templateData) + '"></div>';
|
|
891
914
|
return this.createDivElement(template);
|
|
892
915
|
};
|
|
893
916
|
ChartRows.prototype.taskbarContainer = function () {
|
|
@@ -898,7 +921,7 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
898
921
|
var template = '<div class="' + cls.taskBarMainContainer + ' ' +
|
|
899
922
|
this.parent.getUnscheduledTaskClass(data.ganttProperties) + ' ' +
|
|
900
923
|
((data.ganttProperties.cssClass) ? data.ganttProperties.cssClass : '') + '" ' +
|
|
901
|
-
' tabindex="-1" style="' + ((data.ganttProperties.isMilestone && !manualParent) ?
|
|
924
|
+
' tabindex="-1" role="TaskBar" style="' + ((data.ganttProperties.isMilestone && !manualParent) ?
|
|
902
925
|
('width:' + this.milestoneHeight + 'px;height:' +
|
|
903
926
|
this.milestoneHeight + 'px;margin-top:' + this.milestoneMarginTop + 'px;left:' + (data.ganttProperties.left -
|
|
904
927
|
(this.milestoneHeight / 2)) + 'px;') : ('width:' + data.ganttProperties.width +
|
|
@@ -909,26 +932,26 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
909
932
|
};
|
|
910
933
|
ChartRows.prototype.rightLabelContainer = function () {
|
|
911
934
|
var template = '<div class="' + ((this.rightTaskLabelTemplateFunction) ? cls.rightLabelTempContainer :
|
|
912
|
-
cls.rightLabelContainer) + '" ' + ' tabindex="-1" style="left:' + this.getRightLabelLeft(this.templateData) + 'px;height:'
|
|
913
|
-
+ (this.parent.rowHeight -
|
|
935
|
+
cls.rightLabelContainer) + '" ' + ' tabindex="-1" role="RightLabel" style="left:' + this.getRightLabelLeft(this.templateData) + 'px; height:'
|
|
936
|
+
+ (this.parent.rowHeight - 2) + 'px;"></div>';
|
|
914
937
|
return this.createDivElement(template);
|
|
915
938
|
};
|
|
916
939
|
ChartRows.prototype.childTaskbarLeftResizer = function () {
|
|
917
940
|
var lResizerLeft = -(this.parent.isAdaptive ? 12 : 2);
|
|
918
941
|
var template = '<div class="' + cls.taskBarLeftResizer + ' ' + cls.icon + '"' +
|
|
919
|
-
' style="left:' + lResizerLeft + 'px;height:' + (this.taskBarHeight) + 'px;"></div>';
|
|
942
|
+
' role="LeftResizer" style="left:' + lResizerLeft + 'px;height:' + (this.taskBarHeight) + 'px;"></div>';
|
|
920
943
|
return this.createDivElement(template);
|
|
921
944
|
};
|
|
922
945
|
ChartRows.prototype.childTaskbarRightResizer = function () {
|
|
923
946
|
var rResizerLeft = this.parent.isAdaptive ? -2 : -10;
|
|
924
947
|
var template = '<div class="' + cls.taskBarRightResizer + ' ' + cls.icon + '"' +
|
|
925
|
-
' style="left:' + (this.templateData.ganttProperties.width + rResizerLeft) + 'px;' +
|
|
948
|
+
' role="RightResizer" style="left:' + (this.templateData.ganttProperties.width + rResizerLeft) + 'px;' +
|
|
926
949
|
'height:' + (this.taskBarHeight) + 'px;"></div>';
|
|
927
950
|
return this.createDivElement(template);
|
|
928
951
|
};
|
|
929
952
|
ChartRows.prototype.childTaskbarProgressResizer = function () {
|
|
930
953
|
var template = '<div class="' + cls.childProgressResizer + '"' +
|
|
931
|
-
' style="left:' + (this.templateData.ganttProperties.progressWidth - 6) + 'px;margin-top:' +
|
|
954
|
+
' role="ProgressResizer" style="left:' + (this.templateData.ganttProperties.progressWidth - 6) + 'px;margin-top:' +
|
|
932
955
|
(this.taskBarHeight - 4) + 'px;"><div class="' + cls.progressBarHandler + '"' +
|
|
933
956
|
'><div class="' + cls.progressHandlerElement + '"></div>' +
|
|
934
957
|
'<div class="' + cls.progressBarHandlerAfter + '"></div></div>';
|
|
@@ -1126,10 +1149,13 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
1126
1149
|
* @private
|
|
1127
1150
|
*/
|
|
1128
1151
|
ChartRows.prototype.initChartHelperPrivateVariable = function () {
|
|
1152
|
+
var taskbarHeightValue = this.parent.renderBaseline ? 0.45 : 0.62;
|
|
1153
|
+
var taskBarMarginTopValue = this.parent.renderBaseline ? 4 : 2;
|
|
1154
|
+
var milestoneHeightValue = this.parent.renderBaseline ? 1.13 : 0.82;
|
|
1129
1155
|
this.baselineColor = !isNullOrUndefined(this.parent.baselineColor) &&
|
|
1130
1156
|
this.parent.baselineColor !== '' ? this.parent.baselineColor : null;
|
|
1131
1157
|
this.taskBarHeight = isNullOrUndefined(this.parent.taskbarHeight) || this.parent.taskbarHeight >= this.parent.rowHeight ?
|
|
1132
|
-
Math.floor(this.parent.rowHeight *
|
|
1158
|
+
Math.floor(this.parent.rowHeight * taskbarHeightValue) : this.parent.taskbarHeight; // 0.62 -- Standard Ratio.
|
|
1133
1159
|
if (this.parent.renderBaseline) {
|
|
1134
1160
|
var height = void 0;
|
|
1135
1161
|
if ((this.taskBarHeight + this.baselineHeight) <= this.parent.rowHeight) {
|
|
@@ -1140,11 +1166,11 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
1140
1166
|
}
|
|
1141
1167
|
this.taskBarHeight = height;
|
|
1142
1168
|
}
|
|
1143
|
-
this.milestoneHeight = Math.floor(this.taskBarHeight *
|
|
1144
|
-
this.taskBarMarginTop = Math.floor((this.parent.rowHeight - this.taskBarHeight) /
|
|
1169
|
+
this.milestoneHeight = Math.floor(this.taskBarHeight * milestoneHeightValue); // 0.82 -- Standard Ratio.
|
|
1170
|
+
this.taskBarMarginTop = Math.floor((this.parent.rowHeight - this.taskBarHeight) / taskBarMarginTopValue);
|
|
1145
1171
|
this.milestoneMarginTop = Math.floor((this.parent.rowHeight - this.milestoneHeight) / 2);
|
|
1146
1172
|
this.milesStoneRadius = Math.floor((this.milestoneHeight) / 2);
|
|
1147
|
-
this.baselineTop = -(Math.floor((this.parent.rowHeight - (this.taskBarHeight + this.taskBarMarginTop))) -
|
|
1173
|
+
this.baselineTop = -(Math.floor((this.parent.rowHeight - (this.taskBarHeight + this.taskBarMarginTop))) - 4);
|
|
1148
1174
|
this.connectorPointWidth = this.parent.isAdaptive ? Math.round(this.taskBarHeight / 2) : 8;
|
|
1149
1175
|
this.connectorPointMargin = Math.floor((this.taskBarHeight / 2) - (this.connectorPointWidth / 2));
|
|
1150
1176
|
};
|
|
@@ -1338,6 +1364,7 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
1338
1364
|
var indicators = this.templateData.ganttProperties.indicators;
|
|
1339
1365
|
for (var indicatorIndex = 0; indicatorIndex < indicators.length; indicatorIndex++) {
|
|
1340
1366
|
taskIndicatorNode = this.getIndicatorNode(indicators[indicatorIndex]);
|
|
1367
|
+
taskIndicatorNode[0].setAttribute('aria-label', indicators[indicatorIndex].name);
|
|
1341
1368
|
if (indicators[indicatorIndex].name.indexOf('$') > -1 || indicators[indicatorIndex].name.indexOf('#') > -1) {
|
|
1342
1369
|
taskIndicatorTextFunction = this.templateCompiler(indicators[indicatorIndex].name);
|
|
1343
1370
|
taskIndicatorTextNode = taskIndicatorTextFunction(extend({ index: i }, this.templateData), this.parent, 'indicatorLabelText');
|
|
@@ -115,7 +115,7 @@ var ConnectorLine = /** @class */ (function () {
|
|
|
115
115
|
for (var i = 0; i < childNodes.length; i++) {
|
|
116
116
|
var innerChild = childNodes[i].childNodes;
|
|
117
117
|
for (var j = 0; j < innerChild.length; j++) {
|
|
118
|
-
var ariaString = this.parent.connectorLineModule.generateAriaLabel(ariaConnector[i]);
|
|
118
|
+
var ariaString = 'Connector Line ' + this.parent.connectorLineModule.generateAriaLabel(ariaConnector[i]);
|
|
119
119
|
innerChild[j].setAttribute('aria-label', ariaString);
|
|
120
120
|
}
|
|
121
121
|
}
|
|
@@ -372,7 +372,11 @@ var ConnectorLine = /** @class */ (function () {
|
|
|
372
372
|
var connectorContainer = '';
|
|
373
373
|
var isVirtual = this.parent.virtualScrollModule && this.parent.enableVirtualization;
|
|
374
374
|
var connectorLine = this.getPosition(data, this.getParentPosition(data), height);
|
|
375
|
-
var
|
|
375
|
+
var isMilestoneValue = 0;
|
|
376
|
+
if (this.parent.renderBaseline) {
|
|
377
|
+
isMilestoneValue = (data.milestoneParent && data.milestoneChild) ? 0 : data.milestoneParent ? -5 : data.milestoneChild ? 5 : 0;
|
|
378
|
+
}
|
|
379
|
+
var heightValue = isVirtual ? connectorLine.height : (height + isMilestoneValue);
|
|
376
380
|
if (this.getParentPosition(data)) {
|
|
377
381
|
connectorContainer = '<div id="ConnectorLine' + data.connectorLineId + '" style="background-color:black">';
|
|
378
382
|
var div = '<div class="' + cls.connectorLineContainer +
|
|
@@ -400,7 +404,7 @@ var ConnectorLine = /** @class */ (function () {
|
|
|
400
404
|
this.getBorderStyles('top', this.lineStroke) + 'position:relative;"></div>';
|
|
401
405
|
if (this.getParentPosition(data) === 'FSType1') {
|
|
402
406
|
div = div + 'left:' + (data.parentLeft + data.parentWidth) + 'px;top:' + (isVirtual ? connectorLine.top :
|
|
403
|
-
((data.parentIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1))) + 'px;' +
|
|
407
|
+
((data.parentIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1) - isMilestoneValue)) + 'px;' +
|
|
404
408
|
'width:1px;height:' + heightValue + 'px;position:absolute" data-connectortype="FSType1">';
|
|
405
409
|
div = div + eLine;
|
|
406
410
|
div = div + 'left:' + (isMilestoneParent ? -1 : 0) + 'px;width:' + (isMilestoneParent ?
|
|
@@ -421,7 +425,7 @@ var ConnectorLine = /** @class */ (function () {
|
|
|
421
425
|
}
|
|
422
426
|
if (this.getParentPosition(data) === 'FSType2') {
|
|
423
427
|
div = div + 'left:' + data.parentLeft + 'px;top:' + (isVirtual ? connectorLine.top : ((data.parentIndex * data.rowHeight) +
|
|
424
|
-
this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1))) + 'px;' +
|
|
428
|
+
this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1) - isMilestoneValue)) + 'px;' +
|
|
425
429
|
'width:1px;height:' + heightValue + 'px;position:absolute" data-connectortype="FSType2">';
|
|
426
430
|
div = div + eLine;
|
|
427
431
|
div = div + 'left:' + (isMilestoneParent ? data.parentWidth - 1 : data.parentWidth) + 'px;width:' +
|
|
@@ -452,7 +456,7 @@ var ConnectorLine = /** @class */ (function () {
|
|
|
452
456
|
}
|
|
453
457
|
if (this.getParentPosition(data) === 'FSType3') {
|
|
454
458
|
div = div + 'left:' + (data.childLeft - 20) + 'px;top:' + (isVirtual ? connectorLine.top :
|
|
455
|
-
((data.childIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestoneParent) - (this.lineStroke - 1))) + 'px;' +
|
|
459
|
+
((data.childIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestoneParent) - (this.lineStroke - 1) - isMilestoneValue)) + 'px;' +
|
|
456
460
|
'width:1px;height:' + heightValue + 'px;position:absolute" data-connectortype="FSType3">';
|
|
457
461
|
div = div + rightArrow;
|
|
458
462
|
div = div + 'left:10px;' + this.getBorderStyles('left', 10) +
|
|
@@ -482,7 +486,7 @@ var ConnectorLine = /** @class */ (function () {
|
|
|
482
486
|
}
|
|
483
487
|
if (this.getParentPosition(data) === 'FSType4') {
|
|
484
488
|
div = div + 'left:' + (data.parentLeft + data.parentWidth) + 'px;top:' + (isVirtual ? connectorLine.top :
|
|
485
|
-
((data.childIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1))) + 'px;' +
|
|
489
|
+
((data.childIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1) - isMilestoneValue)) + 'px;' +
|
|
486
490
|
'width:1px;height:' + heightValue + 'px;position:absolute" data-connectortype="FSType4">';
|
|
487
491
|
div = div + rightArrow;
|
|
488
492
|
div = div + 'left:' + (data.childLeft - (data.parentLeft + data.parentWidth + 10)) + 'px;' +
|
|
@@ -508,7 +512,7 @@ var ConnectorLine = /** @class */ (function () {
|
|
|
508
512
|
}
|
|
509
513
|
if (this.getParentPosition(data) === 'SSType4') {
|
|
510
514
|
div = div + 'left:' + (data.parentLeft - 10) + 'px;top:' + (isVirtual ? connectorLine.top :
|
|
511
|
-
((data.childIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1))) + 'px;' +
|
|
515
|
+
((data.childIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1) - isMilestoneValue)) + 'px;' +
|
|
512
516
|
'width:1px;height:' + heightValue + 'px;position:absolute" data-connectortype="SSType4">';
|
|
513
517
|
div = div + rightArrow;
|
|
514
518
|
div = div + 'left:' + (data.childLeft - data.parentLeft) + 'px;' + duplicateStingTwo;
|
|
@@ -521,7 +525,7 @@ var ConnectorLine = /** @class */ (function () {
|
|
|
521
525
|
}
|
|
522
526
|
if (this.getParentPosition(data) === 'SSType3') {
|
|
523
527
|
div = div + 'left:' + (data.childLeft - 20) + 'px;top:' + (isVirtual ? connectorLine.top :
|
|
524
|
-
((data.childIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1))) + 'px;' +
|
|
528
|
+
((data.childIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1) - isMilestoneValue)) + 'px;' +
|
|
525
529
|
'width:1px;height:' + heightValue + 'px;position:absolute" data-connectortype="SSType3">';
|
|
526
530
|
div = div + rightArrow;
|
|
527
531
|
div = div + 'left:10px;' + duplicateStingTwo;
|
|
@@ -534,7 +538,7 @@ var ConnectorLine = /** @class */ (function () {
|
|
|
534
538
|
}
|
|
535
539
|
if (this.getParentPosition(data) === 'SSType2') {
|
|
536
540
|
div = div + 'left:' + setInnerElementLeftSSType2 + 'px;top:' + (isVirtual ? connectorLine.top :
|
|
537
|
-
((data.parentIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestoneParent) - (this.lineStroke - 1))) + 'px;' +
|
|
541
|
+
((data.parentIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestoneParent) - (this.lineStroke - 1) - isMilestoneValue)) + 'px;' +
|
|
538
542
|
'width:1px;height:' + heightValue + 'px;position:absolute" data-connectortype="SSType2">';
|
|
539
543
|
div = div + eLine;
|
|
540
544
|
div = div + 'width:' + (setInnerChildWidthSSType2 + 1) + 'px;' +
|
|
@@ -555,7 +559,7 @@ var ConnectorLine = /** @class */ (function () {
|
|
|
555
559
|
if (this.getParentPosition(data) === 'SSType1') {
|
|
556
560
|
div = div + 'left:' + (data.childLeft - 20) + 'px;top:' + (isVirtual ? connectorLine.top :
|
|
557
561
|
((data.parentIndex * data.rowHeight) +
|
|
558
|
-
this.getTaskbarMidpoint(isMilestoneParent) - (this.lineStroke - 1))) + 'px;' +
|
|
562
|
+
this.getTaskbarMidpoint(isMilestoneParent) - (this.lineStroke - 1) - isMilestoneValue)) + 'px;' +
|
|
559
563
|
'width:1px;height:' + heightValue + 'px;position:absolute" data-connectortype="SSType1">';
|
|
560
564
|
div = div + eLine;
|
|
561
565
|
div = div + 'width:' + (data.parentLeft - data.childLeft + 21) + 'px;' +
|
|
@@ -572,7 +576,7 @@ var ConnectorLine = /** @class */ (function () {
|
|
|
572
576
|
}
|
|
573
577
|
if (this.getParentPosition(data) === 'FFType1') {
|
|
574
578
|
div = div + 'left:' + (data.childLeft + data.childWidth) + 'px;top:' + (isVirtual ? connectorLine.top :
|
|
575
|
-
((data.parentIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestoneParent) - (this.lineStroke - 1))) + 'px;' +
|
|
579
|
+
((data.parentIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestoneParent) - (this.lineStroke - 1) - isMilestoneValue)) + 'px;' +
|
|
576
580
|
'width:1px;height:' + heightValue + 'px;position:absolute" data-connectortype="FFType1">';
|
|
577
581
|
div = div + eLine;
|
|
578
582
|
div = div + 'left:' + (isMilestoneParent ? (((data.parentLeft + data.parentWidth) -
|
|
@@ -596,7 +600,7 @@ var ConnectorLine = /** @class */ (function () {
|
|
|
596
600
|
}
|
|
597
601
|
if (this.getParentPosition(data) === 'FFType2') {
|
|
598
602
|
div = div + 'left:' + (data.parentLeft + data.parentWidth) + 'px;top:' + (isVirtual ? connectorLine.top :
|
|
599
|
-
((data.parentIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestoneParent) - (this.lineStroke - 1))) + 'px;' +
|
|
603
|
+
((data.parentIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestoneParent) - (this.lineStroke - 1) - isMilestoneValue)) + 'px;' +
|
|
600
604
|
'width:1px;height:' + heightValue + 'px;position:absolute" data-connectortype="FFType2">';
|
|
601
605
|
div = div + eLine;
|
|
602
606
|
div = div + (isMilestoneParent ? 'left:-1px;' : '') + 'width:' +
|
|
@@ -622,7 +626,7 @@ var ConnectorLine = /** @class */ (function () {
|
|
|
622
626
|
}
|
|
623
627
|
if (this.getParentPosition(data) === 'FFType3') {
|
|
624
628
|
div = div + 'left:' + (data.childLeft + data.childWidth) + 'px;top:' + (isVirtual ? connectorLine.top :
|
|
625
|
-
((data.childIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1))) + 'px;' +
|
|
629
|
+
((data.childIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1) - isMilestoneValue)) + 'px;' +
|
|
626
630
|
'width:1px;height:' + heightValue + 'px;position:absolute" data-connectortype="FFType3">';
|
|
627
631
|
div = div + duplicateStingOne;
|
|
628
632
|
div = div + eLine;
|
|
@@ -645,7 +649,7 @@ var ConnectorLine = /** @class */ (function () {
|
|
|
645
649
|
}
|
|
646
650
|
if (this.getParentPosition(data) === 'FFType4') {
|
|
647
651
|
div = div + 'left:' + (data.parentLeft + data.parentWidth) + 'px;top:' + (isVirtual ? connectorLine.top :
|
|
648
|
-
((data.childIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1))) + 'px;' +
|
|
652
|
+
((data.childIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1) - isMilestoneValue)) + 'px;' +
|
|
649
653
|
'width:1px;height:' + heightValue + 'px;position:absolute" data-connectortype="FFType4">';
|
|
650
654
|
div = div + leftArrow;
|
|
651
655
|
div = div + ('left:' + ((data.childLeft + data.childWidth) -
|
|
@@ -674,7 +678,7 @@ var ConnectorLine = /** @class */ (function () {
|
|
|
674
678
|
}
|
|
675
679
|
if (this.getParentPosition(data) === 'SFType4') {
|
|
676
680
|
div = div + 'left:' + (data.parentLeft - 10) + 'px;top:' + (isVirtual ? connectorLine.top :
|
|
677
|
-
((data.childIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1))) + 'px;width:1px;' +
|
|
681
|
+
((data.childIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1) - isMilestoneValue)) + 'px;width:1px;' +
|
|
678
682
|
'height:' + heightValue + 'px;position:absolute" data-connectortype="SFType4">';
|
|
679
683
|
div = div + duplicateStingFour + 'top:' + (-5 - this.lineStroke + (this.lineStroke - 1)) + 'px;' +
|
|
680
684
|
'border-bottom-width:' + (5 + this.lineStroke) +
|
|
@@ -702,7 +706,7 @@ var ConnectorLine = /** @class */ (function () {
|
|
|
702
706
|
}
|
|
703
707
|
if (this.getParentPosition(data) === 'SFType3') {
|
|
704
708
|
div = div + 'left:' + (data.childLeft + data.childWidth) + 'px;top:' + (isVirtual ? connectorLine.top :
|
|
705
|
-
((data.childIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1))) + 'px;' +
|
|
709
|
+
((data.childIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1) - isMilestoneValue)) + 'px;' +
|
|
706
710
|
'width:1px;height:' + heightValue + 'px;position:absolute" data-connectortype="SFType3">';
|
|
707
711
|
div = div + duplicateStingOne;
|
|
708
712
|
div = div + eLine;
|
|
@@ -720,7 +724,7 @@ var ConnectorLine = /** @class */ (function () {
|
|
|
720
724
|
}
|
|
721
725
|
if (this.getParentPosition(data) === 'SFType1') {
|
|
722
726
|
div = div + 'left:' + (data.parentLeft - 10) + 'px;top:' + (isVirtual ? connectorLine.top :
|
|
723
|
-
((data.parentIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1))) + 'px;' +
|
|
727
|
+
((data.parentIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestone) - (this.lineStroke - 1) - isMilestoneValue)) + 'px;' +
|
|
724
728
|
'width:1px;height:' + heightValue + 'px;position:absolute" data-connectortype="SFType1">';
|
|
725
729
|
div = div + eLine;
|
|
726
730
|
div = div + 'width:11px;' + this.getBorderStyles('top', this.lineStroke) + 'position:relative;"></div>';
|
|
@@ -745,7 +749,7 @@ var ConnectorLine = /** @class */ (function () {
|
|
|
745
749
|
}
|
|
746
750
|
if (this.getParentPosition(data) === 'SFType2') {
|
|
747
751
|
div = div + 'left:' + (data.childLeft + data.childWidth) + 'px;top:' + (isVirtual ? connectorLine.top :
|
|
748
|
-
((data.parentIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestoneParent) - (this.lineStroke - 1))) + 'px;' +
|
|
752
|
+
((data.parentIndex * data.rowHeight) + this.getTaskbarMidpoint(isMilestoneParent) - (this.lineStroke - 1) - isMilestoneValue)) + 'px;' +
|
|
749
753
|
'width:1px;height:' + heightValue + 'px;position:absolute" data-connectortype="SFType2">';
|
|
750
754
|
div = div + eLine;
|
|
751
755
|
div = div + 'left:' + (((data.parentLeft) - (data.childLeft + data.childWidth)) - 10) +
|
|
@@ -15,6 +15,7 @@ var EventMarker = /** @class */ (function () {
|
|
|
15
15
|
this.eventMarkersContainer = createElement('div', {
|
|
16
16
|
className: cls.eventMarkersContainer
|
|
17
17
|
});
|
|
18
|
+
this.eventMarkersContainer.setAttribute("role", "EventMarker");
|
|
18
19
|
this.parent.ganttChartModule.chartBodyContent.appendChild(this.eventMarkersContainer);
|
|
19
20
|
}
|
|
20
21
|
this.eventMarkersContainer.innerHTML = '';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createElement, formatUnit, remove } from '@syncfusion/ej2-base';
|
|
1
|
+
import { createElement, formatUnit, remove, isNullOrUndefined } from '@syncfusion/ej2-base';
|
|
2
2
|
import * as cls from '../base/css-constants';
|
|
3
3
|
var NonWorkingDay = /** @class */ (function () {
|
|
4
4
|
function NonWorkingDay(gantt) {
|
|
@@ -17,6 +17,7 @@ var NonWorkingDay = /** @class */ (function () {
|
|
|
17
17
|
this.nonworkingContainer = createElement('div', {
|
|
18
18
|
className: cls.nonworkingContainer
|
|
19
19
|
});
|
|
20
|
+
this.nonworkingContainer.setAttribute("role", "NonWorkingDays");
|
|
20
21
|
this.parent.ganttChartModule.chartBodyContent.appendChild(this.nonworkingContainer);
|
|
21
22
|
}
|
|
22
23
|
};
|
|
@@ -54,8 +55,11 @@ var NonWorkingDay = /** @class */ (function () {
|
|
|
54
55
|
var toDate;
|
|
55
56
|
var container = createElement('div');
|
|
56
57
|
var height = this.parent.contentHeight;
|
|
57
|
-
var
|
|
58
|
-
|
|
58
|
+
var toolbarHeight = 0;
|
|
59
|
+
if (!isNullOrUndefined(this.parent.toolbarModule)) {
|
|
60
|
+
toolbarHeight = this.parent.toolbarModule.element.offsetHeight;
|
|
61
|
+
}
|
|
62
|
+
var viewportHeight = this.parent.ganttHeight - toolbarHeight - this.parent.ganttChartModule.chartTimelineContainer.offsetHeight;
|
|
59
63
|
for (var i = 0; i < this.parent.holidays.length; i++) {
|
|
60
64
|
if (this.parent.holidays[i].from && this.parent.holidays[i].to) {
|
|
61
65
|
fromDate = this.parent.dateValidationModule.getDateFromFormat(this.parent.holidays[i].from);
|
|
@@ -148,9 +152,12 @@ var NonWorkingDay = /** @class */ (function () {
|
|
|
148
152
|
return container;
|
|
149
153
|
};
|
|
150
154
|
NonWorkingDay.prototype.updateHolidayLabelHeight = function () {
|
|
151
|
-
var height = this.parent.
|
|
152
|
-
var
|
|
153
|
-
|
|
155
|
+
var height = this.parent.getContentHeight();
|
|
156
|
+
var toolbarHeight = 0;
|
|
157
|
+
if (!isNullOrUndefined(this.parent.toolbarModule) && !isNullOrUndefined(this.parent.toolbarModule.element)) {
|
|
158
|
+
toolbarHeight = this.parent.toolbarModule.element.offsetHeight;
|
|
159
|
+
}
|
|
160
|
+
var viewportHeight = this.parent.ganttHeight - toolbarHeight - this.parent.ganttChartModule.chartTimelineContainer.offsetHeight;
|
|
154
161
|
var top = (viewportHeight < height) ? viewportHeight / 2 : height / 2;
|
|
155
162
|
var labels = this.holidayContainer.querySelectorAll('.' + cls.holidayLabel);
|
|
156
163
|
for (var i = 0; i < labels.length; i++) {
|
|
@@ -123,6 +123,9 @@ var Timeline = /** @class */ (function () {
|
|
|
123
123
|
}
|
|
124
124
|
}
|
|
125
125
|
}
|
|
126
|
+
currentLevel = this.parent.zoomingLevels.findIndex(function (tempLevel) {
|
|
127
|
+
return tempLevel.level === currentLevel;
|
|
128
|
+
});
|
|
126
129
|
var newTimeline = this.parent.zoomingLevels[currentLevel];
|
|
127
130
|
var args = {
|
|
128
131
|
requestType: isZoomIn ? 'beforeZoomIn' : 'beforeZoomOut',
|
|
@@ -840,6 +843,40 @@ var Timeline = /** @class */ (function () {
|
|
|
840
843
|
} while ((startDate < endDate));
|
|
841
844
|
return parentTh;
|
|
842
845
|
};
|
|
846
|
+
Timeline.prototype.updateTimelineAfterZooming = function (endDate, resized) {
|
|
847
|
+
var timeDiff;
|
|
848
|
+
var perDayWidth;
|
|
849
|
+
var totWidth;
|
|
850
|
+
var contentElement = document.getElementsByClassName('e-chart-scroll-container e-content')[0];
|
|
851
|
+
if (!isNullOrUndefined(contentElement)) {
|
|
852
|
+
var contentWidth = contentElement['offsetWidth'];
|
|
853
|
+
var contentHeight = contentElement['offsetHeight'];
|
|
854
|
+
var scrollHeight = document.getElementsByClassName('e-chart-rows-container')[0]['offsetHeight'];
|
|
855
|
+
timeDiff = Math.abs(this.timelineStartDate.getTime() - endDate.getTime());
|
|
856
|
+
timeDiff = timeDiff / (1000 * 3600 * 24);
|
|
857
|
+
if (this.bottomTier === 'None') {
|
|
858
|
+
perDayWidth = this.getPerDayWidth(this.customTimelineSettings.timelineUnitSize, this.customTimelineSettings.topTier.count, this.topTier);
|
|
859
|
+
}
|
|
860
|
+
else {
|
|
861
|
+
perDayWidth = this.getPerDayWidth(this.customTimelineSettings.timelineUnitSize, this.customTimelineSettings.bottomTier.count, this.bottomTier);
|
|
862
|
+
}
|
|
863
|
+
if (contentHeight < scrollHeight) {
|
|
864
|
+
totWidth = (perDayWidth * timeDiff) + 17;
|
|
865
|
+
}
|
|
866
|
+
else {
|
|
867
|
+
totWidth = (perDayWidth * timeDiff);
|
|
868
|
+
}
|
|
869
|
+
if (contentWidth >= totWidth) {
|
|
870
|
+
var widthDiff = contentWidth - totWidth;
|
|
871
|
+
widthDiff = Math.round(widthDiff / perDayWidth);
|
|
872
|
+
endDate.setDate(endDate.getDate() + widthDiff);
|
|
873
|
+
this.parent.timelineModule.timelineEndDate = endDate;
|
|
874
|
+
if (resized) {
|
|
875
|
+
this.parent.updateProjectDates(this.timelineStartDate, this.timelineEndDate, this.parent.isTimelineRoundOff);
|
|
876
|
+
}
|
|
877
|
+
}
|
|
878
|
+
}
|
|
879
|
+
};
|
|
843
880
|
Timeline.prototype.getTimelineRoundOffEndDate = function (date) {
|
|
844
881
|
var tierMode = this.topTier === 'None' ? this.bottomTier : this.topTier;
|
|
845
882
|
var endDate = new Date(date.toString());
|
|
@@ -854,6 +891,9 @@ var Timeline = /** @class */ (function () {
|
|
|
854
891
|
endDate.setHours(24, 0, 0, 0);
|
|
855
892
|
}
|
|
856
893
|
}
|
|
894
|
+
if (this.isZooming || this.parent.isLoad) {
|
|
895
|
+
this.updateTimelineAfterZooming(endDate, false);
|
|
896
|
+
}
|
|
857
897
|
return endDate;
|
|
858
898
|
};
|
|
859
899
|
/**
|
|
@@ -923,7 +963,6 @@ var Timeline = /** @class */ (function () {
|
|
|
923
963
|
}
|
|
924
964
|
return increment;
|
|
925
965
|
};
|
|
926
|
-
;
|
|
927
966
|
/**
|
|
928
967
|
* Method to find header cell was weekend or not
|
|
929
968
|
*
|
|
@@ -174,6 +174,7 @@ var Tooltip = /** @class */ (function () {
|
|
|
174
174
|
* @returns {void} .
|
|
175
175
|
*/
|
|
176
176
|
Tooltip.prototype.updateTooltipPosition = function (args) {
|
|
177
|
+
args.element.style.visibility = 'visible';
|
|
177
178
|
if (isNullOrUndefined(this.tooltipMouseEvent) || args.target.classList.contains('e-notes-info')) {
|
|
178
179
|
return;
|
|
179
180
|
}
|
|
@@ -203,7 +204,6 @@ var Tooltip = /** @class */ (function () {
|
|
|
203
204
|
tooltipPositionY = tooltipPositionY + 10;
|
|
204
205
|
}
|
|
205
206
|
args.element.style.top = tooltipPositionY + 'px';
|
|
206
|
-
args.element.style.visibility = 'visible';
|
|
207
207
|
};
|
|
208
208
|
/**
|
|
209
209
|
* Method to get mouse pointor position
|
|
@@ -245,9 +245,16 @@ var Tooltip = /** @class */ (function () {
|
|
|
245
245
|
switch (elementType) {
|
|
246
246
|
case 'milestone':
|
|
247
247
|
{
|
|
248
|
-
var
|
|
248
|
+
var milestoneStartDate = void 0;
|
|
249
|
+
if (args.target.className.includes('e-baseline-gantt-milestone') && !isNullOrUndefined(data.baselineStartDate)) {
|
|
250
|
+
milestoneStartDate = data.baselineStartDate;
|
|
251
|
+
}
|
|
252
|
+
else if (!isNullOrUndefined(data.startDate)) {
|
|
253
|
+
milestoneStartDate = data.startDate;
|
|
254
|
+
}
|
|
255
|
+
var sDate = !isNullOrUndefined(milestoneStartDate) ? '<tr><td class = "e-gantt-tooltip-label"> Date</td><td>:</td>' +
|
|
249
256
|
'<td class = "e-gantt-tooltip-value">' +
|
|
250
|
-
this.parent.getFormatedDate(
|
|
257
|
+
this.parent.getFormatedDate(milestoneStartDate, this.parent.getDateFormat()) + '</td></tr>' : '';
|
|
251
258
|
content = '<table class = "e-gantt-tooltiptable"><tbody>' +
|
|
252
259
|
taskName + sDate + '</tbody></table>';
|
|
253
260
|
break;
|