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("
|
|
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
|
-
|
|
4631
|
-
var
|
|
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
|
-
|
|
4634
|
-
|
|
4635
|
-
|
|
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
|
-
|
|
4644
|
-
var
|
|
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
|
-
|
|
4649
|
-
|
|
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) {
|