gantt-task-react-powern 0.6.20 → 0.6.21

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.
@@ -821,7 +821,7 @@ var StandardTooltipContent = function StandardTooltipContent(_ref2) {
821
821
  }
822
822
  }, task.name + ": Planned dates: "), React.createElement("b", null, task.start.getMonth() + 1 + "/" + task.start.getDate() + "/" + task.start.getFullYear() + " - " + (task.end.getMonth() + 1) + "/" + task.end.getDate() + "/" + task.end.getFullYear()), task.end.getTime() - task.start.getTime() !== 0 && React.createElement("p", {
823
823
  className: styles$2.tooltipDefaultContainerParagraph
824
- }, "Duration: " + ~~Math.round((task.end.getTime() - task.start.getTime()) / (1000 * 60 * 60 * 24)) + " day(s)"), React.createElement("p", {
824
+ }, "Duration: " + task.plannedDuration + " day(s)"), React.createElement("p", {
825
825
  className: styles$2.tooltipDefaultContainerParagraph
826
826
  }, !!task.progress && "Progress: " + task.progress + " %"));else return React.createElement("div", {
827
827
  className: styles$2.tooltipDefaultContainer,
@@ -832,7 +832,7 @@ var StandardTooltipContent = function StandardTooltipContent(_ref2) {
832
832
  }
833
833
  }, task.name + ": Actual dates: "), React.createElement("b", null, task.actualStart.getMonth() + 1 + "/" + task.actualStart.getDate() + "/" + task.actualStart.getFullYear() + " - " + (task.actualEnd.getMonth() + 1) + "/" + task.actualEnd.getDate() + "/" + task.actualEnd.getFullYear()), task.actualEnd.getTime() - task.actualStart.getTime() !== 0 && React.createElement("p", {
834
834
  className: styles$2.tooltipDefaultContainerParagraph
835
- }, "Duration: " + ~~Math.round((task.actualEnd.getTime() - task.actualStart.getTime()) / (1000 * 60 * 60 * 24)) + " day(s)"), React.createElement("p", {
835
+ }, "Duration: " + task.actualDuration + " day(s)"), React.createElement("p", {
836
836
  className: styles$2.tooltipDefaultContainerParagraph
837
837
  }, !!task.progress && "Progress: " + task.progress + " %"));
838
838
  };
@@ -3990,12 +3990,41 @@ function computeCriticalPath(taskID, taskMap) {
3990
3990
  taskMap[taskID].paths = [];
3991
3991
 
3992
3992
  for (var j = 0; j < dependents.length; j++) {
3993
- var depDuration = taskMap[dependents[j]].task.end.getTime() - taskMap[dependents[j]].task.start.getTime();
3994
- var overlap = Math.max(taskMap[taskID].end - taskMap[dependents[j]].task.start.getTime(), 0);
3993
+ var depStart = taskMap[dependents[j]].task.start.getTime();
3994
+ var depEnd = taskMap[dependents[j]].task.end.getTime();
3995
+ var depDuration = depEnd - depStart;
3996
+ var startWeek = Math.floor((depStart / 86400000 + 4) / 7);
3997
+ var endWeek = Math.floor((depEnd / 86400000 + 4) / 7);
3998
+ var offTime = 0;
3999
+
4000
+ for (var d = 0; d < ((_taskMap$dependents$j = taskMap[dependents[j]].task.calendar) === null || _taskMap$dependents$j === void 0 ? void 0 : (_taskMap$dependents$j2 = _taskMap$dependents$j.off_days) === null || _taskMap$dependents$j2 === void 0 ? void 0 : _taskMap$dependents$j2.length) || 0; d++) {
4001
+ var _taskMap$dependents$j, _taskMap$dependents$j2;
4002
+
4003
+ for (var w = startWeek; w <= endWeek; w++) {
4004
+ var dayOfTheWeek = taskMap[dependents[j]].task.calendar.off_days[d];
4005
+ var offDay = 86400000 * (7 * w - 4 + dayOfTheWeek);
4006
+
4007
+ if (offDay >= depStart && offDay <= depEnd && (offDay > taskMap[taskID].end || taskMap[taskID].task.calendar.off_days.includes(dayOfTheWeek))) {
4008
+ offTime += 86400000;
4009
+ }
4010
+ }
4011
+ }
4012
+
4013
+ for (var h = 0; h < ((_taskMap$dependents$j3 = taskMap[dependents[j]].task.calendar) === null || _taskMap$dependents$j3 === void 0 ? void 0 : (_taskMap$dependents$j4 = _taskMap$dependents$j3.holidays) === null || _taskMap$dependents$j4 === void 0 ? void 0 : _taskMap$dependents$j4.length) || 0; h++) {
4014
+ var _taskMap$dependents$j3, _taskMap$dependents$j4;
4015
+
4016
+ var holiday = taskMap[dependents[j]].task.calendar.holidays[h];
4017
+
4018
+ if (holiday >= depStart && holiday <= depEnd) {
4019
+ offTime += 86400000;
4020
+ }
4021
+ }
4022
+
4023
+ var overlap = Math.max(taskMap[taskID].end - depStart, 0);
3995
4024
  var paths = taskMap[dependents[j]].paths;
3996
4025
 
3997
4026
  for (var k = 0; k < paths.length; k++) {
3998
- var totalDuration = taskMap[taskID].end - taskMap[taskID].start - overlap + paths[k].duration;
4027
+ var totalDuration = taskMap[taskID].end - taskMap[taskID].start - overlap - offTime + paths[k].duration;
3999
4028
 
4000
4029
  if (taskMap[taskID].paths.length < 2) {
4001
4030
  taskMap[taskID].paths.push({
@@ -4018,7 +4047,7 @@ function computeCriticalPath(taskID, taskMap) {
4018
4047
  }
4019
4048
 
4020
4049
  if (paths.length === 0) {
4021
- var immediateChildDuration = taskMap[taskID].end - taskMap[taskID].start + depDuration - overlap;
4050
+ var immediateChildDuration = taskMap[taskID].end - taskMap[taskID].start + depDuration - overlap - offTime;
4022
4051
 
4023
4052
  if (taskMap[taskID].paths.length < 2) {
4024
4053
  taskMap[taskID].paths.push({