gantt-task-react-powern 0.6.23 → 0.6.25

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.
@@ -27,5 +27,6 @@ export declare type TaskGanttContentProps = {
27
27
  setFailedTask: (value: BarTask | null) => void;
28
28
  setSelectedTask: (taskId: string) => void;
29
29
  onBarTasksUpdate?: (task: BarTask) => void;
30
+ sliderTime?: number;
30
31
  } & EventOption;
31
32
  export declare const TaskGanttContent: React.FC<TaskGanttContentProps>;
package/dist/index.js CHANGED
@@ -3076,7 +3076,8 @@ var TaskGanttContent = function TaskGanttContent(_ref) {
3076
3076
  onCalendarError = _ref.onCalendarError,
3077
3077
  projectCalendar = _ref.projectCalendar,
3078
3078
  visibleStartY = _ref.visibleStartY,
3079
- visibleEndY = _ref.visibleEndY;
3079
+ visibleEndY = _ref.visibleEndY,
3080
+ sliderTime = _ref.sliderTime;
3080
3081
  var point = svg === null || svg === void 0 ? void 0 : (_svg$current = svg.current) === null || _svg$current === void 0 ? void 0 : _svg$current.createSVGPoint();
3081
3082
 
3082
3083
  var _useState = React.useState(0),
@@ -3533,9 +3534,32 @@ var TaskGanttContent = function TaskGanttContent(_ref) {
3533
3534
  });
3534
3535
  };
3535
3536
 
3537
+ var lineX = sliderTime !== undefined ? taskXCoordinate(new Date(sliderTime), dates, columnWidth) : null;
3538
+ var totalHeight = tasks.length * rowHeight;
3539
+ React.useEffect(function () {
3540
+ if (sliderTime !== undefined) {
3541
+ console.log('Vertical line debug:', {
3542
+ sliderTime: new Date(sliderTime).toLocaleString(),
3543
+ lineX: lineX,
3544
+ totalHeight: totalHeight,
3545
+ tasksCount: tasks.length,
3546
+ columnWidth: columnWidth,
3547
+ datesRange: dates.length > 0 ? dates[0].toLocaleString() + " - " + dates[dates.length - 1].toLocaleString() : 'empty'
3548
+ });
3549
+ }
3550
+ }, [sliderTime, lineX, totalHeight, tasks.length, dates, columnWidth]);
3536
3551
  return React__default.createElement("g", {
3537
3552
  className: "content"
3538
- }, React__default.createElement("g", {
3553
+ }, lineX !== null && lineX > 0 && React__default.createElement("line", {
3554
+ x1: lineX,
3555
+ y1: 0,
3556
+ x2: lineX,
3557
+ y2: totalHeight,
3558
+ stroke: "red",
3559
+ strokeWidth: 2,
3560
+ pointerEvents: "none",
3561
+ opacity: 0.8
3562
+ }), React__default.createElement("g", {
3539
3563
  className: "arrows"
3540
3564
  }, getArrows(false), getArrows(true, "secondary"), getArrows(true, "primary")), React__default.createElement("g", {
3541
3565
  className: "bar",
@@ -3791,7 +3815,8 @@ var Gantt = function Gantt(_ref) {
3791
3815
  _ref$shouldNotShowLoa = _ref.shouldNotShowLoadingOverlay,
3792
3816
  shouldNotShowLoadingOverlay = _ref$shouldNotShowLoa === void 0 ? true : _ref$shouldNotShowLoa,
3793
3817
  projectCalendar = _ref.projectCalendar,
3794
- onCalendarError = _ref.onCalendarError;
3818
+ onCalendarError = _ref.onCalendarError,
3819
+ sliderTime = _ref.sliderTime;
3795
3820
  var effectiveCalendar = (_tasks$find$calender = (_tasks$find = tasks.find(function (t) {
3796
3821
  return t.calender;
3797
3822
  })) === null || _tasks$find === void 0 ? void 0 : _tasks$find.calender) != null ? _tasks$find$calender : projectCalendar;
@@ -4329,7 +4354,8 @@ var Gantt = function Gantt(_ref) {
4329
4354
  onCalendarError: onCalendarError,
4330
4355
  projectCalendar: effectiveCalendar,
4331
4356
  visibleStartY: visibleStartY,
4332
- visibleEndY: visibleEndY
4357
+ visibleEndY: visibleEndY,
4358
+ sliderTime: sliderTime
4333
4359
  };
4334
4360
  var tableTasks = React.useMemo(function () {
4335
4361
  return ganttEvent.changedTask ? barTasks.map(function (t) {
@@ -4524,13 +4550,13 @@ function getCriticalPaths(leafTasks) {
4524
4550
  }
4525
4551
  }
4526
4552
 
4527
- for (var _i4 = sortedTaskList.length - 1; _i4 >= 0; _i4--) {
4553
+ for (var _i4 = (sortedTaskList === null || sortedTaskList === void 0 ? void 0 : sortedTaskList.length) - 1; _i4 >= 0; _i4--) {
4528
4554
  computeCriticalPath(sortedTaskList[_i4], taskMap);
4529
4555
  }
4530
4556
 
4531
4557
  var taskChainList = [];
4532
4558
 
4533
- for (var _i5 = 0; _i5 < sortedTaskList.length; _i5++) {
4559
+ for (var _i5 = 0; _i5 < (sortedTaskList === null || sortedTaskList === void 0 ? void 0 : sortedTaskList.length); _i5++) {
4534
4560
  for (var _j = 0; _j < taskMap[sortedTaskList[_i5]].paths.length; _j++) {
4535
4561
  taskChainList.push(taskMap[sortedTaskList[_i5]].paths[_j]);
4536
4562
  }
@@ -4620,6 +4646,8 @@ function computeCriticalPath(taskID, taskMap) {
4620
4646
  taskMap[taskID].paths = [];
4621
4647
 
4622
4648
  for (var j = 0; j < dependents.length; j++) {
4649
+ var _taskMap$dependents$j, _taskMap$dependents$j2, _taskMap$dependents$j3, _taskMap$dependents$j4;
4650
+
4623
4651
  var depStart = taskMap[dependents[j]].task.start.getTime();
4624
4652
  var depEnd = taskMap[dependents[j]].task.end.getTime();
4625
4653
  var depDuration = depEnd - depStart;
@@ -4627,33 +4655,33 @@ function computeCriticalPath(taskID, taskMap) {
4627
4655
  var endWeek = Math.floor((depEnd / 86400000 + 4) / 7);
4628
4656
  var offTime = 0;
4629
4657
 
4630
- 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++) {
4631
- var _taskMap$dependents$j, _taskMap$dependents$j2;
4658
+ if ((_taskMap$dependents$j = taskMap[dependents[j]].task.calendar) !== null && _taskMap$dependents$j !== void 0 && (_taskMap$dependents$j2 = _taskMap$dependents$j.off_days) !== null && _taskMap$dependents$j2 !== void 0 && _taskMap$dependents$j2.length) {
4659
+ for (var d = 0; d < taskMap[dependents[j]].task.calendar.off_days.length || 0; d++) {
4660
+ for (var w = startWeek; w <= endWeek; w++) {
4661
+ var dayOfTheWeek = taskMap[dependents[j]].task.calendar.off_days[d];
4662
+ var offDay = 86400000 * (7 * w - 4 + dayOfTheWeek);
4632
4663
 
4633
- for (var w = startWeek; w <= endWeek; w++) {
4634
- var dayOfTheWeek = taskMap[dependents[j]].task.calendar.off_days[d];
4635
- var offDay = 86400000 * (7 * w - 4 + dayOfTheWeek);
4636
-
4637
- if (offDay >= depStart && offDay <= depEnd && (offDay > taskMap[taskID].end || taskMap[taskID].task.calendar.off_days.includes(dayOfTheWeek))) {
4638
- offTime += 86400000;
4664
+ if (offDay >= depStart && offDay <= depEnd && (offDay > taskMap[taskID].end || taskMap[taskID].task.calendar.off_days.includes(dayOfTheWeek))) {
4665
+ offTime += 86400000;
4666
+ }
4639
4667
  }
4640
4668
  }
4641
4669
  }
4642
4670
 
4643
- 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++) {
4644
- var _taskMap$dependents$j3, _taskMap$dependents$j4;
4645
-
4646
- var holiday = taskMap[dependents[j]].task.calendar.holidays[h];
4671
+ if ((_taskMap$dependents$j3 = taskMap[dependents[j]].task.calendar) !== null && _taskMap$dependents$j3 !== void 0 && (_taskMap$dependents$j4 = _taskMap$dependents$j3.holidays) !== null && _taskMap$dependents$j4 !== void 0 && _taskMap$dependents$j4.length) {
4672
+ for (var h = 0; h < taskMap[dependents[j]].task.calendar.holidays.length || 0; h++) {
4673
+ var holiday = taskMap[dependents[j]].task.calendar.holidays[h];
4647
4674
 
4648
- if (holiday >= depStart && holiday <= depEnd) {
4649
- offTime += 86400000;
4675
+ if (holiday >= depStart && holiday <= depEnd) {
4676
+ offTime += 86400000;
4677
+ }
4650
4678
  }
4651
4679
  }
4652
4680
 
4653
4681
  var overlap = Math.max(taskMap[taskID].end - depStart, 0);
4654
4682
  var paths = taskMap[dependents[j]].paths;
4655
4683
 
4656
- for (var k = 0; k < paths.length; k++) {
4684
+ for (var k = 0; k < (paths === null || paths === void 0 ? void 0 : paths.length); k++) {
4657
4685
  var totalDuration = taskMap[taskID].end - taskMap[taskID].start - overlap - offTime + paths[k].duration;
4658
4686
 
4659
4687
  if (taskMap[taskID].paths.length < 2) {
@@ -4676,7 +4704,7 @@ function computeCriticalPath(taskID, taskMap) {
4676
4704
  }
4677
4705
  }
4678
4706
 
4679
- if (paths.length === 0) {
4707
+ if ((paths === null || paths === void 0 ? void 0 : paths.length) === 0) {
4680
4708
  var immediateChildDuration = taskMap[taskID].end - taskMap[taskID].start + depDuration - overlap - offTime;
4681
4709
 
4682
4710
  if (taskMap[taskID].paths.length < 2) {