@syncfusion/ej2-gantt 21.1.38 → 21.2.3
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 +24 -0
- 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 +67 -24
- package/dist/es6/ej2-gantt.es2015.js.map +1 -1
- package/dist/es6/ej2-gantt.es5.js +68 -24
- 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 +20 -23
- package/src/gantt/actions/context-menu.js +1 -1
- package/src/gantt/actions/dependency.js +1 -1
- package/src/gantt/actions/dialog-edit.js +1 -0
- package/src/gantt/actions/edit.js +8 -2
- package/src/gantt/actions/taskbar-edit.d.ts +1 -1
- package/src/gantt/actions/taskbar-edit.js +2 -2
- package/src/gantt/base/date-processor.js +2 -2
- package/src/gantt/base/gantt.d.ts +1 -0
- package/src/gantt/base/gantt.js +3 -1
- package/src/gantt/base/task-processor.d.ts +1 -1
- package/src/gantt/base/task-processor.js +31 -6
- package/src/gantt/renderer/chart-rows.js +16 -8
- package/src/gantt/renderer/nonworking-day.js +3 -1
- package/styles/bootstrap-dark.css +4 -0
- package/styles/bootstrap.css +4 -0
- package/styles/bootstrap4.css +4 -0
- package/styles/bootstrap5-dark.css +4 -0
- package/styles/bootstrap5.css +4 -0
- package/styles/fabric-dark.css +4 -0
- package/styles/fabric.css +4 -0
- package/styles/fluent-dark.css +3 -3
- package/styles/fluent.css +3 -3
- package/styles/gantt/_layout.scss +0 -8
- package/styles/gantt/_theme.scss +4 -0
- package/styles/gantt/bootstrap-dark.css +4 -0
- package/styles/gantt/bootstrap.css +4 -0
- package/styles/gantt/bootstrap4.css +4 -0
- package/styles/gantt/bootstrap5-dark.css +4 -0
- package/styles/gantt/bootstrap5.css +4 -0
- package/styles/gantt/fabric-dark.css +4 -0
- package/styles/gantt/fabric.css +4 -0
- package/styles/gantt/fluent-dark.css +3 -3
- package/styles/gantt/fluent.css +3 -3
- package/styles/gantt/highcontrast-light.css +4 -0
- package/styles/gantt/highcontrast.css +4 -0
- package/styles/gantt/material-dark.css +4 -0
- package/styles/gantt/material.css +4 -0
- package/styles/gantt/tailwind-dark.css +4 -0
- package/styles/gantt/tailwind.css +4 -0
- package/styles/highcontrast-light.css +4 -0
- package/styles/highcontrast.css +4 -0
- package/styles/material-dark.css +4 -0
- package/styles/material.css +4 -0
- package/styles/tailwind-dark.css +4 -0
- package/styles/tailwind.css +4 -0
package/dist/global/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* filename: index.d.ts
|
|
3
|
-
* version : 21.
|
|
3
|
+
* version : 21.2.3
|
|
4
4
|
* Copyright Syncfusion Inc. 2001 - 2020. All rights reserved.
|
|
5
5
|
* Use of this code is subject to the terms of our license.
|
|
6
6
|
* A copy of the current license can be obtained at any time by e-mailing
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"_from": "@syncfusion/ej2-gantt@*",
|
|
3
|
-
"_id": "@syncfusion/ej2-gantt@21.1.
|
|
3
|
+
"_id": "@syncfusion/ej2-gantt@21.1.41",
|
|
4
4
|
"_inBundle": false,
|
|
5
|
-
"_integrity": "sha512-
|
|
5
|
+
"_integrity": "sha512-HqNK10wkFFpZ17YU9HVZPZmaEL+xsJRC8P6Kr0FepcgNxQcy8FNQqIDPL4KsvjICXh4IMuwyyFdljZtV4TJFfA==",
|
|
6
6
|
"_location": "/@syncfusion/ej2-gantt",
|
|
7
7
|
"_phantomChildren": {},
|
|
8
8
|
"_requested": {
|
|
@@ -18,13 +18,10 @@
|
|
|
18
18
|
},
|
|
19
19
|
"_requiredBy": [
|
|
20
20
|
"/",
|
|
21
|
-
"/@syncfusion/ej2"
|
|
22
|
-
"/@syncfusion/ej2-angular-gantt",
|
|
23
|
-
"/@syncfusion/ej2-react-gantt",
|
|
24
|
-
"/@syncfusion/ej2-vue-gantt"
|
|
21
|
+
"/@syncfusion/ej2"
|
|
25
22
|
],
|
|
26
|
-
"_resolved": "https://nexus.syncfusion.com/repository/ej2-hotfix-new/@syncfusion/ej2-gantt/-/ej2-gantt-21.1.
|
|
27
|
-
"_shasum": "
|
|
23
|
+
"_resolved": "https://nexus.syncfusion.com/repository/ej2-hotfix-new/@syncfusion/ej2-gantt/-/ej2-gantt-21.1.41.tgz",
|
|
24
|
+
"_shasum": "047e11b79fe94cc870713b4526282ab7a50f3d5e",
|
|
28
25
|
"_spec": "@syncfusion/ej2-gantt@*",
|
|
29
26
|
"_where": "/jenkins/workspace/elease-automation_release_21.1.1/packages/included",
|
|
30
27
|
"author": {
|
|
@@ -35,20 +32,20 @@
|
|
|
35
32
|
},
|
|
36
33
|
"bundleDependencies": false,
|
|
37
34
|
"dependencies": {
|
|
38
|
-
"@syncfusion/ej2-base": "~21.
|
|
39
|
-
"@syncfusion/ej2-buttons": "~21.
|
|
40
|
-
"@syncfusion/ej2-calendars": "~21.
|
|
41
|
-
"@syncfusion/ej2-data": "~21.
|
|
42
|
-
"@syncfusion/ej2-dropdowns": "~21.
|
|
43
|
-
"@syncfusion/ej2-grids": "~21.
|
|
44
|
-
"@syncfusion/ej2-inputs": "~21.
|
|
45
|
-
"@syncfusion/ej2-layouts": "~21.
|
|
46
|
-
"@syncfusion/ej2-lists": "~21.
|
|
47
|
-
"@syncfusion/ej2-navigations": "~21.
|
|
48
|
-
"@syncfusion/ej2-notifications": "~21.
|
|
49
|
-
"@syncfusion/ej2-popups": "~21.
|
|
50
|
-
"@syncfusion/ej2-richtexteditor": "~21.
|
|
51
|
-
"@syncfusion/ej2-treegrid": "~21.
|
|
35
|
+
"@syncfusion/ej2-base": "~21.2.3",
|
|
36
|
+
"@syncfusion/ej2-buttons": "~21.2.3",
|
|
37
|
+
"@syncfusion/ej2-calendars": "~21.2.3",
|
|
38
|
+
"@syncfusion/ej2-data": "~21.2.3",
|
|
39
|
+
"@syncfusion/ej2-dropdowns": "~21.2.3",
|
|
40
|
+
"@syncfusion/ej2-grids": "~21.2.3",
|
|
41
|
+
"@syncfusion/ej2-inputs": "~21.2.3",
|
|
42
|
+
"@syncfusion/ej2-layouts": "~21.2.3",
|
|
43
|
+
"@syncfusion/ej2-lists": "~21.2.3",
|
|
44
|
+
"@syncfusion/ej2-navigations": "~21.2.3",
|
|
45
|
+
"@syncfusion/ej2-notifications": "~21.2.3",
|
|
46
|
+
"@syncfusion/ej2-popups": "~21.2.3",
|
|
47
|
+
"@syncfusion/ej2-richtexteditor": "~21.2.3",
|
|
48
|
+
"@syncfusion/ej2-treegrid": "~21.2.3"
|
|
52
49
|
},
|
|
53
50
|
"deprecated": false,
|
|
54
51
|
"description": "Essential JS 2 Gantt Component",
|
|
@@ -73,6 +70,6 @@
|
|
|
73
70
|
"url": "git+https://github.com/syncfusion/ej2-gantt.git"
|
|
74
71
|
},
|
|
75
72
|
"typings": "index.d.ts",
|
|
76
|
-
"version": "21.
|
|
73
|
+
"version": "21.2.3",
|
|
77
74
|
"sideEffects": false
|
|
78
75
|
}
|
|
@@ -281,7 +281,7 @@ var ContextMenu = /** @class */ (function () {
|
|
|
281
281
|
splitTaskDuration = Math.ceil(currentTaskDifference / this.parent.timelineSettings.timelineUnitSize);
|
|
282
282
|
splitTaskDuration -= 1;
|
|
283
283
|
}
|
|
284
|
-
var contextMenuClickDate = this.parent.dataOperation.getEndDate(startDate, splitTaskDuration, this.
|
|
284
|
+
var contextMenuClickDate = this.parent.dataOperation.getEndDate(startDate, splitTaskDuration, (this.parent.timelineSettings.bottomTier.unit !== "None") ? this.parent.timelineSettings.bottomTier.unit.toLocaleLowerCase() : this.parent.timelineSettings.topTier.unit.toLocaleLowerCase(), this.rowData, false);
|
|
285
285
|
return contextMenuClickDate;
|
|
286
286
|
};
|
|
287
287
|
ContextMenu.prototype.contextMenuBeforeOpen = function (args) {
|
|
@@ -477,7 +477,7 @@ var Dependency = /** @class */ (function () {
|
|
|
477
477
|
this.dateValidateModule.calculateEndDate(childGanttRecord);
|
|
478
478
|
}
|
|
479
479
|
this.parent.dataOperation.updateWidthLeft(childGanttRecord);
|
|
480
|
-
if (!this.parent.isLoad && childGanttRecord.parentItem && this.parent.isInPredecessorValidation &&
|
|
480
|
+
if (!this.parent.isLoad && !this.parent.isFromOnPropertyChange && childGanttRecord.parentItem && this.parent.isInPredecessorValidation &&
|
|
481
481
|
this.parent.getParentTask(childGanttRecord.parentItem).ganttProperties.isAutoSchedule) {
|
|
482
482
|
if (this.parentIds.indexOf(childGanttRecord.parentItem.uniqueID) === -1) {
|
|
483
483
|
this.parentIds.push(childGanttRecord.parentItem.uniqueID);
|
|
@@ -1860,6 +1860,7 @@ var DialogEdit = /** @class */ (function () {
|
|
|
1860
1860
|
DialogEdit.prototype.renderNotesTab = function (itemName) {
|
|
1861
1861
|
var ganttObj = this.parent;
|
|
1862
1862
|
var inputModel = this.beforeOpenArgs[itemName];
|
|
1863
|
+
inputModel.enableHtmlSanitizer = this.parent.enableHtmlSanitizer;
|
|
1863
1864
|
var ganttProp = this.editedRecord.ganttProperties;
|
|
1864
1865
|
var divElement = this.createDivElement('', ganttObj.element.id + '' + itemName + 'TabContainer');
|
|
1865
1866
|
RichTextEditor.Inject(RTEToolbar, Link, HtmlEditor, QuickToolbar, Count);
|
|
@@ -850,7 +850,7 @@ var Edit = /** @class */ (function () {
|
|
|
850
850
|
this.parent.predecessorModule.isValidatedParentTaskID = '';
|
|
851
851
|
}
|
|
852
852
|
if (this.parent.allowParentDependency && ganttRecord.hasChildRecords && this.parent.previousRecords[ganttRecord.uniqueID].ganttProperties.startDate &&
|
|
853
|
-
(args.action === "DrawConnectorLine")) {
|
|
853
|
+
(args.action === "DrawConnectorLine") || (args.action === "DialogEditing")) {
|
|
854
854
|
this.updateChildItems(ganttRecord);
|
|
855
855
|
}
|
|
856
856
|
this.updateParentItemOnEditing();
|
|
@@ -1124,7 +1124,13 @@ var Edit = /** @class */ (function () {
|
|
|
1124
1124
|
}
|
|
1125
1125
|
else if (isNullOrUndefined(previousData)) {
|
|
1126
1126
|
calcEndDate = previousStartDate;
|
|
1127
|
-
this.
|
|
1127
|
+
var initialData = this.parent.initialLoadData[childRecords[i].index];
|
|
1128
|
+
if (this.parent.isLoad) {
|
|
1129
|
+
this.calculateDateByRoundOffDuration(initialData, calcEndDate);
|
|
1130
|
+
}
|
|
1131
|
+
else {
|
|
1132
|
+
this.calculateDateByRoundOffDuration(childRecords[i], calcEndDate);
|
|
1133
|
+
}
|
|
1128
1134
|
if (this.parent.isOnEdit && this.validatedChildItems.indexOf(childRecords[i]) === -1) {
|
|
1129
1135
|
this.validatedChildItems.push(childRecords[i]);
|
|
1130
1136
|
}
|
|
@@ -228,7 +228,7 @@ export declare class TaskbarEdit extends DateProcessor {
|
|
|
228
228
|
* @returns {Date} .
|
|
229
229
|
* @private
|
|
230
230
|
*/
|
|
231
|
-
getDateByLeft(left: number, isMilestone?: boolean, property?:
|
|
231
|
+
getDateByLeft(left: number, isMilestone?: boolean, property?: ITaskData): Date;
|
|
232
232
|
/**
|
|
233
233
|
* To set item position.
|
|
234
234
|
*
|
|
@@ -1370,7 +1370,7 @@ var TaskbarEdit = /** @class */ (function (_super) {
|
|
|
1370
1370
|
: ganttRecord.left;
|
|
1371
1371
|
var tierMode = this.parent.timelineModule.bottomTier !== 'None' ? this.parent.timelineModule.bottomTier :
|
|
1372
1372
|
this.parent.timelineModule.topTier;
|
|
1373
|
-
var remainingContribution = (1 / (this.parent.timelineModule.getIncrement(this.getDateByLeft(left), 1, 'Day') / (1000 * 60 * 60 * 24)));
|
|
1373
|
+
var remainingContribution = (1 / (this.parent.timelineModule.getIncrement(this.getDateByLeft(left, isNullOrUndefined(ganttRecord) ? ganttRecord.isMilestone : null, ganttRecord), 1, 'Day') / (1000 * 60 * 60 * 24)));
|
|
1374
1374
|
var remainDays = this.parent.perDayWidth - (this.parent.perDayWidth / remainingContribution);
|
|
1375
1375
|
var remainDaysInDecimal = remainDays / this.parent.perDayWidth;
|
|
1376
1376
|
if (isRoundOff === undefined) {
|
|
@@ -1418,7 +1418,7 @@ var TaskbarEdit = /** @class */ (function (_super) {
|
|
|
1418
1418
|
var milliSecondsPerPixel = (24 * 60 * 60 * 1000) / this.parent.perDayWidth;
|
|
1419
1419
|
pStartDate.setTime(pStartDate.getTime() + (left * milliSecondsPerPixel));
|
|
1420
1420
|
/* To render the milestone in proper date while editing */
|
|
1421
|
-
if (isMilestone) {
|
|
1421
|
+
if (isMilestone && !isNullOrUndefined(property.predecessor) && property.predecessor.length > 0) {
|
|
1422
1422
|
pStartDate.setDate(pStartDate.getDate() - 1);
|
|
1423
1423
|
this.parent.dateValidationModule.setTime(this.parent.defaultEndTime, pStartDate);
|
|
1424
1424
|
pStartDate = this.parent.dateValidationModule.checkStartDate(pStartDate, property, true);
|
|
@@ -400,10 +400,10 @@ var DateProcessor = /** @class */ (function () {
|
|
|
400
400
|
*/
|
|
401
401
|
DateProcessor.prototype.getDurationAsSeconds = function (duration, durationUnit) {
|
|
402
402
|
var value = 0;
|
|
403
|
-
if (!durationUnit || durationUnit === 'day') {
|
|
403
|
+
if (!durationUnit || durationUnit.toLocaleLowerCase() === 'day') {
|
|
404
404
|
value = this.parent.secondsPerDay * duration;
|
|
405
405
|
}
|
|
406
|
-
else if (durationUnit === 'hour') {
|
|
406
|
+
else if (durationUnit.toLocaleLowerCase() === 'hour') {
|
|
407
407
|
value = duration * 3600;
|
|
408
408
|
}
|
|
409
409
|
else {
|
|
@@ -93,6 +93,7 @@ export declare class Gantt extends Component<HTMLElement> implements INotifyProp
|
|
|
93
93
|
scrollLeftValue: any;
|
|
94
94
|
isToolBarClick: any;
|
|
95
95
|
isLocaleChanged: boolean;
|
|
96
|
+
initialLoadData: Object;
|
|
96
97
|
previousGanttColumns: ColumnModel[];
|
|
97
98
|
/** @hidden */
|
|
98
99
|
topBottomHeader: any;
|
package/src/gantt/base/gantt.js
CHANGED
|
@@ -728,6 +728,9 @@ var Gantt = /** @class */ (function (_super) {
|
|
|
728
728
|
* @private
|
|
729
729
|
*/
|
|
730
730
|
Gantt.prototype.renderGantt = function (isChange) {
|
|
731
|
+
if (isChange) {
|
|
732
|
+
this.isFromOnPropertyChange = isChange;
|
|
733
|
+
}
|
|
731
734
|
// predecessor calculation
|
|
732
735
|
if (this.predecessorModule && this.taskFields.dependency) {
|
|
733
736
|
this.predecessorModule['parentIds'] = [];
|
|
@@ -742,7 +745,6 @@ var Gantt = /** @class */ (function (_super) {
|
|
|
742
745
|
this.timelineModule.validateTimelineProp();
|
|
743
746
|
}
|
|
744
747
|
if (isChange) {
|
|
745
|
-
this.isFromOnPropertyChange = isChange;
|
|
746
748
|
if (this.enableValidation) {
|
|
747
749
|
this.dataOperation.updateGanttData();
|
|
748
750
|
}
|
|
@@ -187,7 +187,7 @@ export declare class TaskProcessor extends DateProcessor {
|
|
|
187
187
|
* @returns {number} .
|
|
188
188
|
* @private
|
|
189
189
|
*/
|
|
190
|
-
getTaskWidth(startDate: Date, endDate: Date): number;
|
|
190
|
+
getTaskWidth(startDate: Date, endDate: Date, ganttData?: ITaskData): number;
|
|
191
191
|
/**
|
|
192
192
|
* Get task left value
|
|
193
193
|
*
|
|
@@ -213,6 +213,7 @@ var TaskProcessor = /** @class */ (function (_super) {
|
|
|
213
213
|
*/
|
|
214
214
|
TaskProcessor.prototype.prepareDataSource = function (data) {
|
|
215
215
|
this.prepareRecordCollection(data, 0);
|
|
216
|
+
this.parent.initialLoadData = extend({}, {}, this.parent.flatData, true);
|
|
216
217
|
// Method to maintain the shared task uniqueIds
|
|
217
218
|
if (this.parent.viewType === 'ResourceView') {
|
|
218
219
|
this.calculateSharedTaskUniqueIds();
|
|
@@ -1041,7 +1042,7 @@ var TaskProcessor = /** @class */ (function (_super) {
|
|
|
1041
1042
|
return 0;
|
|
1042
1043
|
}
|
|
1043
1044
|
else {
|
|
1044
|
-
return this.getTaskWidth(sDate, eDate);
|
|
1045
|
+
return this.getTaskWidth(sDate, eDate, ganttProp);
|
|
1045
1046
|
}
|
|
1046
1047
|
};
|
|
1047
1048
|
TaskProcessor.prototype.getTaskbarHeight = function () {
|
|
@@ -1155,13 +1156,29 @@ var TaskProcessor = /** @class */ (function (_super) {
|
|
|
1155
1156
|
* @returns {number} .
|
|
1156
1157
|
* @private
|
|
1157
1158
|
*/
|
|
1158
|
-
TaskProcessor.prototype.getTaskWidth = function (startDate, endDate) {
|
|
1159
|
+
TaskProcessor.prototype.getTaskWidth = function (startDate, endDate, ganttData) {
|
|
1159
1160
|
var sDate = new Date(startDate.getTime());
|
|
1160
1161
|
var eDate = new Date(endDate.getTime());
|
|
1161
1162
|
var tierMode = this.parent.timelineModule.bottomTier !== 'None' ? this.parent.timelineModule.bottomTier :
|
|
1162
1163
|
this.parent.timelineModule.topTier;
|
|
1164
|
+
var isValid = false;
|
|
1165
|
+
var modifiedsDate = new Date(startDate.getTime());
|
|
1166
|
+
var hour = 0;
|
|
1167
|
+
if (ganttData && ganttData.durationUnit == 'hour') {
|
|
1168
|
+
modifiedsDate = new Date(modifiedsDate.getTime() + ganttData.duration * 60 * 60 * 1000);
|
|
1169
|
+
}
|
|
1170
|
+
if (ganttData && ganttData.durationUnit == 'minute') {
|
|
1171
|
+
modifiedsDate = new Date(modifiedsDate.getTime() + ganttData.duration * 60 * 60 * 60 * 1000);
|
|
1172
|
+
}
|
|
1173
|
+
for (var i = 0; i < this.parent.dayWorkingTime.length; i++) {
|
|
1174
|
+
hour = hour + this.parent.dayWorkingTime[i].to - this.parent.dayWorkingTime[i].from;
|
|
1175
|
+
}
|
|
1176
|
+
var dateDiff = modifiedsDate.getTime() - sDate.getTime();
|
|
1163
1177
|
if (tierMode === 'Day') {
|
|
1164
|
-
if (
|
|
1178
|
+
if ((Math.floor((dateDiff / (1000 * 60 * 60)) % 24) >= hour || dateDiff === 0)) {
|
|
1179
|
+
isValid = true;
|
|
1180
|
+
}
|
|
1181
|
+
if (this.getSecondsInDecimal(sDate) === this.parent.defaultStartTime && isValid) {
|
|
1165
1182
|
sDate.setHours(0, 0, 0, 0);
|
|
1166
1183
|
}
|
|
1167
1184
|
if (this.getSecondsInDecimal(eDate) === this.parent.defaultEndTime) {
|
|
@@ -1171,11 +1188,19 @@ var TaskProcessor = /** @class */ (function (_super) {
|
|
|
1171
1188
|
eDate.setHours(0, 0, 0, 0);
|
|
1172
1189
|
}
|
|
1173
1190
|
}
|
|
1191
|
+
else {
|
|
1192
|
+
isValid = true;
|
|
1193
|
+
}
|
|
1174
1194
|
if ((sDate).getTime() === (eDate).getTime()) {
|
|
1175
1195
|
return (this.parent.perDayWidth);
|
|
1176
1196
|
}
|
|
1177
1197
|
else {
|
|
1178
|
-
|
|
1198
|
+
if (isValid) {
|
|
1199
|
+
return ((this.getTimeDifference(sDate, eDate) / (1000 * 60 * 60 * 24)) * this.parent.perDayWidth);
|
|
1200
|
+
}
|
|
1201
|
+
else {
|
|
1202
|
+
return ((this.getTimeDifference(sDate, eDate) / (1000 * 60 * 60 * hour)) * this.parent.perDayWidth);
|
|
1203
|
+
}
|
|
1179
1204
|
}
|
|
1180
1205
|
};
|
|
1181
1206
|
/**
|
|
@@ -2325,13 +2350,13 @@ var TaskProcessor = /** @class */ (function (_super) {
|
|
|
2325
2350
|
minStartDate.getTime() === maxEndDate.getTime() ? true : false;
|
|
2326
2351
|
if (this.compareDates(previousStartDate, minStartDate) !== 0) {
|
|
2327
2352
|
this.parent.setRecordValue(ganttProp.isAutoSchedule ? 'startDate' : 'autoStartDate', minStartDate, parentData.ganttProperties, true);
|
|
2328
|
-
if ((((!isNullOrUndefined(ganttProp.autoDuration)) ? ganttProp.autoDuration === 0 : ganttProp.duration === 0)) && parentData['isManual'] && milestone) {
|
|
2353
|
+
if ((((!isNullOrUndefined(ganttProp.autoDuration)) ? ganttProp.autoDuration === 0 : ganttProp.duration === 0)) && parentData['isManual'] && milestone && (parentData.hasChildRecords && parentData.ganttProperties.isAutoSchedule && this.parent.editModule.taskbarEditModule.taskbarEditedArgs.action !== "TaskbarEditing")) {
|
|
2329
2354
|
this.parent.setRecordValue('startDate', minStartDate, parentData.ganttProperties, true);
|
|
2330
2355
|
}
|
|
2331
2356
|
}
|
|
2332
2357
|
if (this.compareDates(previousEndDate, maxEndDate) !== 0) {
|
|
2333
2358
|
this.parent.setRecordValue(ganttProp.isAutoSchedule ? 'endDate' : 'autoEndDate', maxEndDate, parentData.ganttProperties, true);
|
|
2334
|
-
if ((((!isNullOrUndefined(ganttProp.autoDuration)) ? ganttProp.autoDuration === 0 : ganttProp.duration === 0)) && parentData['isManual'] && milestone) {
|
|
2359
|
+
if ((((!isNullOrUndefined(ganttProp.autoDuration)) ? ganttProp.autoDuration === 0 : ganttProp.duration === 0)) && parentData['isManual'] && milestone && (parentData.hasChildRecords && parentData.ganttProperties.isAutoSchedule && this.parent.editModule.taskbarEditModule.taskbarEditedArgs.action !== "TaskbarEditing")) {
|
|
2335
2360
|
this.parent.setRecordValue('endDate', maxEndDate, parentData.ganttProperties, true);
|
|
2336
2361
|
}
|
|
2337
2362
|
}
|
|
@@ -823,7 +823,7 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
823
823
|
'<div class="' + cls.manualParentMilestoneBottom + '" style="top:' +
|
|
824
824
|
(this.milesStoneRadius) + 'px;border-right-width:' + this.milesStoneRadius + 'px; border-left-width:' +
|
|
825
825
|
this.milesStoneRadius + 'px; border-top-width:' + this.milesStoneRadius + 'px;"></div></div>';
|
|
826
|
-
return this.createDivElement(data.ganttProperties.
|
|
826
|
+
return this.createDivElement(data.ganttProperties.duration !== 0 ? template : milestoneTemplate);
|
|
827
827
|
};
|
|
828
828
|
/**
|
|
829
829
|
* To get parent taskbar node.
|
|
@@ -1019,7 +1019,7 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
1019
1019
|
var template = '<div class="' + cls.taskBarMainContainer + ' ' +
|
|
1020
1020
|
this.parent.getUnscheduledTaskClass(data.ganttProperties) + ' ' +
|
|
1021
1021
|
((data.ganttProperties.cssClass) ? data.ganttProperties.cssClass : '') + '" ' +
|
|
1022
|
-
' tabindex="-1" role="term" style="' + ((data.ganttProperties.isMilestone && !manualParent) ?
|
|
1022
|
+
' tabindex="-1" role="term" style="' + ((data.ganttProperties.isMilestone && !manualParent && !(data.hasChildRecords && !data.ganttProperties.isAutoSchedule)) ?
|
|
1023
1023
|
('width:' + this.milestoneHeight + 'px;height:' +
|
|
1024
1024
|
this.milestoneHeight + 'px;margin-top:' + this.milestoneMarginTop + 'px;' + (this.parent.enableRtl ? 'right:' : 'left:') + (data.ganttProperties.left -
|
|
1025
1025
|
(this.milestoneHeight / 2)) + 'px;') : ('width:' + data.ganttProperties.width +
|
|
@@ -1314,6 +1314,7 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
1314
1314
|
* @private
|
|
1315
1315
|
*/
|
|
1316
1316
|
ChartRows.prototype.createTaskbarTemplate = function () {
|
|
1317
|
+
var _a;
|
|
1317
1318
|
var trs = [].slice.call(this.ganttChartTableBody.querySelectorAll('tr'));
|
|
1318
1319
|
this.ganttChartTableBody.innerHTML = '';
|
|
1319
1320
|
var collapsedResourceRecord = [];
|
|
@@ -1344,6 +1345,10 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
1344
1345
|
}
|
|
1345
1346
|
}
|
|
1346
1347
|
else {
|
|
1348
|
+
var dupChartBody = void 0;
|
|
1349
|
+
dupChartBody = createElement('tbody', {
|
|
1350
|
+
id: this.parent.element.id + 'GanttTaskTableBody'
|
|
1351
|
+
});
|
|
1347
1352
|
for (var i = 0; i < this.parent.currentViewData.length; i++) {
|
|
1348
1353
|
var tempTemplateData = this.parent.currentViewData[i];
|
|
1349
1354
|
if (this.parent.viewType === 'ResourceView') {
|
|
@@ -1356,9 +1361,9 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
1356
1361
|
}
|
|
1357
1362
|
}
|
|
1358
1363
|
var tRow = this.getGanttChartRow(i, tempTemplateData);
|
|
1359
|
-
|
|
1364
|
+
dupChartBody.appendChild(tRow);
|
|
1360
1365
|
if (this.parent.enableImmutableMode) {
|
|
1361
|
-
this.refreshedTr.push(
|
|
1366
|
+
this.refreshedTr.push(dupChartBody.querySelectorAll('tr')[i]);
|
|
1362
1367
|
this.refreshedData.push(this.parent.currentViewData[i]);
|
|
1363
1368
|
}
|
|
1364
1369
|
// To maintain selection when virtualization is enabled
|
|
@@ -1366,6 +1371,7 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
1366
1371
|
this.parent.selectionModule.maintainSelectedRecords(parseInt(tRow.getAttribute('aria-rowindex'), 10));
|
|
1367
1372
|
}
|
|
1368
1373
|
}
|
|
1374
|
+
(_a = this.ganttChartTableBody).replaceChildren.apply(_a, dupChartBody.childNodes);
|
|
1369
1375
|
}
|
|
1370
1376
|
this.parent.renderTemplates();
|
|
1371
1377
|
this.triggerQueryTaskbarInfo();
|
|
@@ -1412,7 +1418,6 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
1412
1418
|
}
|
|
1413
1419
|
if (this.templateData.hasChildRecords) {
|
|
1414
1420
|
var parentTaskbarTemplateNode = this.getParentTaskbarNode(i, taskbarContainerNode);
|
|
1415
|
-
var milestoneTemplateNode = this.getMilestoneNode(i, taskbarContainerNode);
|
|
1416
1421
|
if (!this.templateData.ganttProperties.isAutoSchedule) {
|
|
1417
1422
|
var manualTaskbar = this.getManualTaskbar();
|
|
1418
1423
|
if (!isNullOrUndefined(manualTaskbar[0])) {
|
|
@@ -1424,11 +1429,14 @@ var ChartRows = /** @class */ (function (_super) {
|
|
|
1424
1429
|
taskbarContainerNode[0].appendChild([].slice.call(manualTaskbar)[0]);
|
|
1425
1430
|
}
|
|
1426
1431
|
}
|
|
1427
|
-
if (parentTaskbarTemplateNode && parentTaskbarTemplateNode.length > 0) {
|
|
1432
|
+
if ((this.templateData.ganttProperties.autoDuration !== 0) && !this.templateData.ganttProperties.isMilestone && parentTaskbarTemplateNode && parentTaskbarTemplateNode.length > 0) {
|
|
1428
1433
|
taskbarContainerNode[0].appendChild([].slice.call(parentTaskbarTemplateNode)[0]);
|
|
1429
1434
|
}
|
|
1430
|
-
else if (
|
|
1431
|
-
|
|
1435
|
+
else if ((this.templateData.ganttProperties.duration === 0 && this.templateData.ganttProperties.isMilestone && this.templateData.ganttProperties.isAutoSchedule)) {
|
|
1436
|
+
var milestoneTemplateNode = this.getMilestoneNode(i, taskbarContainerNode);
|
|
1437
|
+
if (milestoneTemplateNode && milestoneTemplateNode.length > 0) {
|
|
1438
|
+
taskbarContainerNode[0].appendChild([].slice.call(milestoneTemplateNode)[0]);
|
|
1439
|
+
}
|
|
1432
1440
|
}
|
|
1433
1441
|
if (this.parent.renderBaseline && this.templateData.ganttProperties.baselineStartDate &&
|
|
1434
1442
|
this.templateData.ganttProperties.baselineEndDate) {
|
|
@@ -168,12 +168,14 @@ var NonWorkingDay = /** @class */ (function () {
|
|
|
168
168
|
};
|
|
169
169
|
NonWorkingDay.prototype.updateHolidayLabelHeight = function () {
|
|
170
170
|
var height = this.parent.getContentHeight();
|
|
171
|
+
var gantttable = document.getElementById("ganttContainer");
|
|
171
172
|
// eslint-disable-next-line
|
|
172
173
|
var toolbarHeight = 0;
|
|
173
174
|
if (!isNullOrUndefined(this.parent.toolbarModule) && !isNullOrUndefined(this.parent.toolbarModule.element)) {
|
|
174
175
|
toolbarHeight = this.parent.toolbarModule.element.offsetHeight;
|
|
175
176
|
}
|
|
176
|
-
var viewportHeight = this.parent.
|
|
177
|
+
var viewportHeight = (this.parent.height === 'auto') ? gantttable.offsetHeight - toolbarHeight - this.parent.ganttChartModule.chartTimelineContainer.offsetHeight :
|
|
178
|
+
this.parent.ganttHeight - toolbarHeight - this.parent.ganttChartModule.chartTimelineContainer.offsetHeight;
|
|
177
179
|
var top = (viewportHeight < height) ? viewportHeight / 2 : height / 2;
|
|
178
180
|
var labels = this.holidayContainer.querySelectorAll('.' + cls.holidayLabel);
|
|
179
181
|
for (var i = 0; i < labels.length; i++) {
|
|
@@ -1275,6 +1275,7 @@
|
|
|
1275
1275
|
outline: 1px solid;
|
|
1276
1276
|
outline-offset: 2px;
|
|
1277
1277
|
}
|
|
1278
|
+
|
|
1278
1279
|
.e-gantt-dialog .e-tab .e-tab-header {
|
|
1279
1280
|
padding-left: 12px;
|
|
1280
1281
|
}
|
|
@@ -1553,6 +1554,9 @@
|
|
|
1553
1554
|
border-color: #484848;
|
|
1554
1555
|
border-radius: 4px;
|
|
1555
1556
|
}
|
|
1557
|
+
.e-gantt .e-grid .e-spinner-pane {
|
|
1558
|
+
display: none;
|
|
1559
|
+
}
|
|
1556
1560
|
.e-gantt .e-cloneproperties.e-draganddrop {
|
|
1557
1561
|
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
|
|
1558
1562
|
opacity: 0.95;
|
package/styles/bootstrap.css
CHANGED
|
@@ -1418,6 +1418,7 @@
|
|
|
1418
1418
|
outline: 1px solid;
|
|
1419
1419
|
outline-offset: 2px;
|
|
1420
1420
|
}
|
|
1421
|
+
|
|
1421
1422
|
.e-gantt-dialog .e-tab .e-tab-header {
|
|
1422
1423
|
padding-left: 12px;
|
|
1423
1424
|
}
|
|
@@ -1695,6 +1696,9 @@
|
|
|
1695
1696
|
border-color: #ddd;
|
|
1696
1697
|
border-radius: 4px;
|
|
1697
1698
|
}
|
|
1699
|
+
.e-gantt .e-grid .e-spinner-pane {
|
|
1700
|
+
display: none;
|
|
1701
|
+
}
|
|
1698
1702
|
.e-gantt .e-cloneproperties.e-draganddrop {
|
|
1699
1703
|
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
|
|
1700
1704
|
opacity: 0.95;
|
package/styles/bootstrap4.css
CHANGED
|
@@ -1602,6 +1602,7 @@
|
|
|
1602
1602
|
outline: 1px solid;
|
|
1603
1603
|
outline-offset: 2px;
|
|
1604
1604
|
}
|
|
1605
|
+
|
|
1605
1606
|
.e-gantt-dialog .e-tab .e-tab-header {
|
|
1606
1607
|
padding-left: 12px;
|
|
1607
1608
|
}
|
|
@@ -1879,6 +1880,9 @@
|
|
|
1879
1880
|
border-color: #dee2e6;
|
|
1880
1881
|
border-radius: 0px;
|
|
1881
1882
|
}
|
|
1883
|
+
.e-gantt .e-grid .e-spinner-pane {
|
|
1884
|
+
display: none;
|
|
1885
|
+
}
|
|
1882
1886
|
.e-gantt .e-cloneproperties.e-draganddrop {
|
|
1883
1887
|
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
|
|
1884
1888
|
opacity: 0.95;
|
|
@@ -1318,6 +1318,7 @@
|
|
|
1318
1318
|
outline: 1px solid;
|
|
1319
1319
|
outline-offset: 2px;
|
|
1320
1320
|
}
|
|
1321
|
+
|
|
1321
1322
|
.e-gantt-dialog .e-tab .e-tab-header {
|
|
1322
1323
|
padding-left: 12px;
|
|
1323
1324
|
}
|
|
@@ -1595,6 +1596,9 @@
|
|
|
1595
1596
|
border-color: #444c54;
|
|
1596
1597
|
border-radius: 0px;
|
|
1597
1598
|
}
|
|
1599
|
+
.e-gantt .e-grid .e-spinner-pane {
|
|
1600
|
+
display: none;
|
|
1601
|
+
}
|
|
1598
1602
|
.e-gantt .e-cloneproperties.e-draganddrop {
|
|
1599
1603
|
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
|
|
1600
1604
|
opacity: 0.95;
|
package/styles/bootstrap5.css
CHANGED
|
@@ -1318,6 +1318,7 @@
|
|
|
1318
1318
|
outline: 1px solid;
|
|
1319
1319
|
outline-offset: 2px;
|
|
1320
1320
|
}
|
|
1321
|
+
|
|
1321
1322
|
.e-gantt-dialog .e-tab .e-tab-header {
|
|
1322
1323
|
padding-left: 12px;
|
|
1323
1324
|
}
|
|
@@ -1595,6 +1596,9 @@
|
|
|
1595
1596
|
border-color: #dee2e6;
|
|
1596
1597
|
border-radius: 0px;
|
|
1597
1598
|
}
|
|
1599
|
+
.e-gantt .e-grid .e-spinner-pane {
|
|
1600
|
+
display: none;
|
|
1601
|
+
}
|
|
1598
1602
|
.e-gantt .e-cloneproperties.e-draganddrop {
|
|
1599
1603
|
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
|
|
1600
1604
|
opacity: 0.95;
|
package/styles/fabric-dark.css
CHANGED
|
@@ -1230,6 +1230,7 @@
|
|
|
1230
1230
|
outline: 1px solid;
|
|
1231
1231
|
outline-offset: 2px;
|
|
1232
1232
|
}
|
|
1233
|
+
|
|
1233
1234
|
.e-gantt-dialog .e-tab .e-tab-header {
|
|
1234
1235
|
padding-left: 13px;
|
|
1235
1236
|
}
|
|
@@ -1507,6 +1508,9 @@
|
|
|
1507
1508
|
border-color: #414040;
|
|
1508
1509
|
border-radius: 0px;
|
|
1509
1510
|
}
|
|
1511
|
+
.e-gantt .e-grid .e-spinner-pane {
|
|
1512
|
+
display: none;
|
|
1513
|
+
}
|
|
1510
1514
|
.e-gantt .e-cloneproperties.e-draganddrop {
|
|
1511
1515
|
box-shadow: 0 3px 8px rgba(0, 0, 0, 0.26);
|
|
1512
1516
|
opacity: 0.95;
|
package/styles/fabric.css
CHANGED
|
@@ -1228,6 +1228,7 @@
|
|
|
1228
1228
|
outline: 1px solid;
|
|
1229
1229
|
outline-offset: 2px;
|
|
1230
1230
|
}
|
|
1231
|
+
|
|
1231
1232
|
.e-gantt-dialog .e-tab .e-tab-header {
|
|
1232
1233
|
padding-left: 13px;
|
|
1233
1234
|
}
|
|
@@ -1505,6 +1506,9 @@
|
|
|
1505
1506
|
border-color: #eaeaea;
|
|
1506
1507
|
border-radius: 0px;
|
|
1507
1508
|
}
|
|
1509
|
+
.e-gantt .e-grid .e-spinner-pane {
|
|
1510
|
+
display: none;
|
|
1511
|
+
}
|
|
1508
1512
|
.e-gantt .e-cloneproperties.e-draganddrop {
|
|
1509
1513
|
box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
|
|
1510
1514
|
opacity: 0.95;
|
package/styles/fluent-dark.css
CHANGED
|
@@ -1301,9 +1301,6 @@
|
|
|
1301
1301
|
outline: 1px solid;
|
|
1302
1302
|
outline-offset: 2px;
|
|
1303
1303
|
}
|
|
1304
|
-
.e-gantt .e-dialog.e-filter-popup .e-footer-content {
|
|
1305
|
-
padding-top: 0;
|
|
1306
|
-
}
|
|
1307
1304
|
|
|
1308
1305
|
.e-gantt-dialog .e-tab .e-tab-header {
|
|
1309
1306
|
padding-left: 0px;
|
|
@@ -1586,6 +1583,9 @@
|
|
|
1586
1583
|
border-color: #292827;
|
|
1587
1584
|
border-radius: 0px;
|
|
1588
1585
|
}
|
|
1586
|
+
.e-gantt .e-grid .e-spinner-pane {
|
|
1587
|
+
display: none;
|
|
1588
|
+
}
|
|
1589
1589
|
.e-gantt .e-cloneproperties.e-draganddrop {
|
|
1590
1590
|
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
|
|
1591
1591
|
opacity: 0.95;
|
package/styles/fluent.css
CHANGED
|
@@ -1301,9 +1301,6 @@
|
|
|
1301
1301
|
outline: 1px solid;
|
|
1302
1302
|
outline-offset: 2px;
|
|
1303
1303
|
}
|
|
1304
|
-
.e-gantt .e-dialog.e-filter-popup .e-footer-content {
|
|
1305
|
-
padding-top: 0;
|
|
1306
|
-
}
|
|
1307
1304
|
|
|
1308
1305
|
.e-gantt-dialog .e-tab .e-tab-header {
|
|
1309
1306
|
padding-left: 0px;
|
|
@@ -1586,6 +1583,9 @@
|
|
|
1586
1583
|
border-color: #edebe9;
|
|
1587
1584
|
border-radius: 0px;
|
|
1588
1585
|
}
|
|
1586
|
+
.e-gantt .e-grid .e-spinner-pane {
|
|
1587
|
+
display: none;
|
|
1588
|
+
}
|
|
1589
1589
|
.e-gantt .e-cloneproperties.e-draganddrop {
|
|
1590
1590
|
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
|
|
1591
1591
|
opacity: 0.95;
|
|
@@ -1320,14 +1320,6 @@
|
|
|
1320
1320
|
outline-offset: 2px;
|
|
1321
1321
|
}
|
|
1322
1322
|
}
|
|
1323
|
-
.e-dialog.e-filter-popup {
|
|
1324
|
-
.e-footer-content {
|
|
1325
|
-
|
|
1326
|
-
@if ($skin-name =='FluentUI') {
|
|
1327
|
-
padding-top: 0;
|
|
1328
|
-
}
|
|
1329
|
-
}
|
|
1330
|
-
}
|
|
1331
1323
|
}
|
|
1332
1324
|
|
|
1333
1325
|
.e-gantt-dialog .e-tab .e-tab-header {
|
package/styles/gantt/_theme.scss
CHANGED
|
@@ -1275,6 +1275,7 @@
|
|
|
1275
1275
|
outline: 1px solid;
|
|
1276
1276
|
outline-offset: 2px;
|
|
1277
1277
|
}
|
|
1278
|
+
|
|
1278
1279
|
.e-gantt-dialog .e-tab .e-tab-header {
|
|
1279
1280
|
padding-left: 12px;
|
|
1280
1281
|
}
|
|
@@ -1553,6 +1554,9 @@
|
|
|
1553
1554
|
border-color: #484848;
|
|
1554
1555
|
border-radius: 4px;
|
|
1555
1556
|
}
|
|
1557
|
+
.e-gantt .e-grid .e-spinner-pane {
|
|
1558
|
+
display: none;
|
|
1559
|
+
}
|
|
1556
1560
|
.e-gantt .e-cloneproperties.e-draganddrop {
|
|
1557
1561
|
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
|
|
1558
1562
|
opacity: 0.95;
|
|
@@ -1418,6 +1418,7 @@
|
|
|
1418
1418
|
outline: 1px solid;
|
|
1419
1419
|
outline-offset: 2px;
|
|
1420
1420
|
}
|
|
1421
|
+
|
|
1421
1422
|
.e-gantt-dialog .e-tab .e-tab-header {
|
|
1422
1423
|
padding-left: 12px;
|
|
1423
1424
|
}
|
|
@@ -1695,6 +1696,9 @@
|
|
|
1695
1696
|
border-color: #ddd;
|
|
1696
1697
|
border-radius: 4px;
|
|
1697
1698
|
}
|
|
1699
|
+
.e-gantt .e-grid .e-spinner-pane {
|
|
1700
|
+
display: none;
|
|
1701
|
+
}
|
|
1698
1702
|
.e-gantt .e-cloneproperties.e-draganddrop {
|
|
1699
1703
|
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
|
|
1700
1704
|
opacity: 0.95;
|