gantt-task-react-powern 0.6.43 → 0.6.45

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.
@@ -268,6 +268,9 @@ var getMonday = function getMonday(date) {
268
268
  var diff = date.getDate() - day + (day === 0 ? -6 : 1);
269
269
  return new Date(date.setDate(diff));
270
270
  };
271
+ var viewShowsOffDays = function viewShowsOffDays(viewMode) {
272
+ return viewMode !== ViewMode.Month && viewMode !== ViewMode.Quarter;
273
+ };
271
274
 
272
275
  var styles = {"ganttTable":"_3_ygE","ganttTable_Header":"_1nBOt","ganttTable_HeaderSeparator":"_2eZzQ","ganttTable_HeaderResizeHandle":"_ddPJg","ganttTable_HeaderItem":"_WuQ0f","ganttTable_HeaderItemText":"_2X3fk"};
273
276
 
@@ -401,7 +404,7 @@ function isHoliday(date, cal) {
401
404
  }
402
405
  function isOffDay(date, cal) {
403
406
  if (cal.off_days && cal.off_days.length > 0) {
404
- return cal.off_days.includes(date.getUTCDay()) || isHoliday(date, cal);
407
+ return cal.off_days.includes(date.getDay()) || isHoliday(date, cal);
405
408
  } else {
406
409
  return false;
407
410
  }
@@ -1473,7 +1476,7 @@ var GridBody = function GridBody(_ref) {
1473
1476
  }));
1474
1477
  }
1475
1478
 
1476
- if (viewMode !== ViewMode.Month && viewMode !== ViewMode.Quarter) {
1479
+ if (viewShowsOffDays(viewMode)) {
1477
1480
  var _dates;
1478
1481
 
1479
1482
  var pEnd = (_dates = dates[i + 1]) != null ? _dates : addToDate(dates[i], 1, "day");
@@ -1540,7 +1543,7 @@ var GridBody = function GridBody(_ref) {
1540
1543
  y2: visibleStartY,
1541
1544
  className: styles$5.gridRowLine
1542
1545
  }));
1543
- var showPerRowOffDays = viewMode !== ViewMode.Month && viewMode !== ViewMode.Quarter;
1546
+ var showPerRowOffDays = viewShowsOffDays(viewMode);
1544
1547
 
1545
1548
  for (var _iterator = _createForOfIteratorHelperLoose(items), _step; !(_step = _iterator()).done;) {
1546
1549
  var vi = _step.value;
@@ -1676,6 +1679,7 @@ var TopPartOfCalendar = function TopPartOfCalendar(_ref) {
1676
1679
  }, value));
1677
1680
  };
1678
1681
 
1682
+ var MONTH_LABEL_HALF_WIDTH = 32;
1679
1683
  var Calendar = function Calendar(_ref) {
1680
1684
  var dateSetup = _ref.dateSetup,
1681
1685
  locale = _ref.locale,
@@ -1937,6 +1941,8 @@ var Calendar = function Calendar(_ref) {
1937
1941
  var topDefaultHeight = headerHeight * 0.5;
1938
1942
  var dates = dateSetup.dates;
1939
1943
  var weekStartDay = (_projectCalendar$week = projectCalendar === null || projectCalendar === void 0 ? void 0 : projectCalendar.week_start) != null ? _projectCalendar$week : 1;
1944
+ var chartWidth = columnWidth * dates.length;
1945
+ var monthStartIndex = 0;
1940
1946
 
1941
1947
  for (var i = 0; i < dates.length; i++) {
1942
1948
  var date = dates[i];
@@ -1968,32 +1974,23 @@ var Calendar = function Calendar(_ref) {
1968
1974
  x: columnWidth * i + columnWidth * 0.5,
1969
1975
  className: styles$6.calendarTopText + " " + styles$6.textAnchorMiddle
1970
1976
  }, bottomValue));
1977
+ var isMonthEnd = i + 1 === dates.length || date.getMonth() !== dates[i + 1].getMonth();
1971
1978
 
1972
- if (i + 1 !== dates.length && date.getMonth() !== dates[i + 1].getMonth()) {
1979
+ if (isMonthEnd) {
1973
1980
  var topValue = shortMonth(date) + " " + date.getFullYear();
1981
+ var segmentStart = columnWidth * monthStartIndex;
1982
+ var segmentEnd = columnWidth * (i + 1);
1983
+ var xText = Math.min(Math.max((segmentStart + segmentEnd) / 2, MONTH_LABEL_HALF_WIDTH), chartWidth - MONTH_LABEL_HALF_WIDTH);
1974
1984
  topValues.push(React.createElement(TopPartOfCalendar, {
1975
1985
  key: topValue + i,
1976
1986
  value: topValue,
1977
- x1Line: columnWidth * (i + 1),
1987
+ x1Line: segmentEnd,
1978
1988
  y1Line: 0,
1979
1989
  y2Line: topDefaultHeight,
1980
- xText: topValues.length === 0 ? columnWidth * (i + 1) * 0.5 : columnWidth * (i + 1) - date.getDate() * columnWidth * 0.5,
1981
- yText: topDefaultHeight * 0.9
1982
- }));
1983
- }
1984
-
1985
- if (i + 1 === dates.length) {
1986
- var _topValue = shortMonth(date) + " " + date.getFullYear();
1987
-
1988
- topValues.push(React.createElement(TopPartOfCalendar, {
1989
- key: _topValue + "last",
1990
- value: _topValue,
1991
- x1Line: columnWidth * (i + 1),
1992
- y1Line: 0,
1993
- y2Line: topDefaultHeight,
1994
- xText: columnWidth * (i + 1) - date.getDate() * columnWidth * 0.5,
1990
+ xText: xText,
1995
1991
  yText: topDefaultHeight * 0.9
1996
1992
  }));
1993
+ monthStartIndex = i + 1;
1997
1994
  }
1998
1995
  }
1999
1996
 
@@ -2294,9 +2291,13 @@ var drawPathAndTriangle = function drawPathAndTriangle(taskFrom, taskTo, rowHeig
2294
2291
  return [path, trianglePoints];
2295
2292
  };
2296
2293
 
2297
- var convertToBarTasks = function convertToBarTasks(tasks, dates, columnWidth, rowHeight, taskHeight, barCornerRadius, handleWidth, rtl, barProgressColor, barProgressSelectedColor, barBackgroundColor, barBackgroundSelectedColor, projectProgressColor, projectProgressSelectedColor, projectBackgroundColor, projectBackgroundSelectedColor, milestoneBackgroundColor, milestoneBackgroundSelectedColor) {
2294
+ var convertToBarTasks = function convertToBarTasks(tasks, dates, columnWidth, rowHeight, taskHeight, barCornerRadius, handleWidth, rtl, barProgressColor, barProgressSelectedColor, barBackgroundColor, barBackgroundSelectedColor, projectProgressColor, projectProgressSelectedColor, projectBackgroundColor, projectBackgroundSelectedColor, milestoneBackgroundColor, milestoneBackgroundSelectedColor, segmentBars) {
2295
+ if (segmentBars === void 0) {
2296
+ segmentBars = true;
2297
+ }
2298
+
2298
2299
  var barTasks = tasks.map(function (t, i) {
2299
- return convertToBarTask(t, i, dates, columnWidth, rowHeight, taskHeight, barCornerRadius, handleWidth, rtl, barProgressColor, barProgressSelectedColor, barBackgroundColor, barBackgroundSelectedColor, projectProgressColor, projectProgressSelectedColor, projectBackgroundColor, projectBackgroundSelectedColor, milestoneBackgroundColor, milestoneBackgroundSelectedColor);
2300
+ return convertToBarTask(t, i, dates, columnWidth, rowHeight, taskHeight, barCornerRadius, handleWidth, rtl, barProgressColor, barProgressSelectedColor, barBackgroundColor, barBackgroundSelectedColor, projectProgressColor, projectProgressSelectedColor, projectBackgroundColor, projectBackgroundSelectedColor, milestoneBackgroundColor, milestoneBackgroundSelectedColor, segmentBars);
2300
2301
  });
2301
2302
  var indexById = new Map();
2302
2303
 
@@ -2324,7 +2325,7 @@ var convertToBarTasks = function convertToBarTasks(tasks, dates, columnWidth, ro
2324
2325
  return barTasks;
2325
2326
  };
2326
2327
 
2327
- var convertToBarTask = function convertToBarTask(task, index, dates, columnWidth, rowHeight, taskHeight, barCornerRadius, handleWidth, rtl, barProgressColor, barProgressSelectedColor, barBackgroundColor, barBackgroundSelectedColor, projectProgressColor, projectProgressSelectedColor, projectBackgroundColor, projectBackgroundSelectedColor, milestoneBackgroundColor, milestoneBackgroundSelectedColor) {
2328
+ var convertToBarTask = function convertToBarTask(task, index, dates, columnWidth, rowHeight, taskHeight, barCornerRadius, handleWidth, rtl, barProgressColor, barProgressSelectedColor, barBackgroundColor, barBackgroundSelectedColor, projectProgressColor, projectProgressSelectedColor, projectBackgroundColor, projectBackgroundSelectedColor, milestoneBackgroundColor, milestoneBackgroundSelectedColor, segmentBars) {
2328
2329
  var barTask;
2329
2330
 
2330
2331
  switch (task.type) {
@@ -2333,18 +2334,18 @@ var convertToBarTask = function convertToBarTask(task, index, dates, columnWidth
2333
2334
  break;
2334
2335
 
2335
2336
  case "project":
2336
- barTask = convertToBar(task, index, dates, columnWidth, rowHeight, taskHeight, barCornerRadius, handleWidth, rtl, projectProgressColor, projectProgressSelectedColor, projectBackgroundColor, projectBackgroundSelectedColor);
2337
+ barTask = convertToBar(task, index, dates, columnWidth, rowHeight, taskHeight, barCornerRadius, handleWidth, rtl, projectProgressColor, projectProgressSelectedColor, projectBackgroundColor, projectBackgroundSelectedColor, segmentBars);
2337
2338
  break;
2338
2339
 
2339
2340
  default:
2340
- barTask = convertToBar(task, index, dates, columnWidth, rowHeight, taskHeight, barCornerRadius, handleWidth, rtl, barProgressColor, barProgressSelectedColor, barBackgroundColor, barBackgroundSelectedColor);
2341
+ barTask = convertToBar(task, index, dates, columnWidth, rowHeight, taskHeight, barCornerRadius, handleWidth, rtl, barProgressColor, barProgressSelectedColor, barBackgroundColor, barBackgroundSelectedColor, segmentBars);
2341
2342
  break;
2342
2343
  }
2343
2344
 
2344
2345
  return barTask;
2345
2346
  };
2346
2347
 
2347
- var convertToBar = function convertToBar(task, index, dates, columnWidth, rowHeight, taskHeight, barCornerRadius, handleWidth, rtl, barProgressColor, barProgressSelectedColor, barBackgroundColor, barBackgroundSelectedColor) {
2348
+ var convertToBar = function convertToBar(task, index, dates, columnWidth, rowHeight, taskHeight, barCornerRadius, handleWidth, rtl, barProgressColor, barProgressSelectedColor, barBackgroundColor, barBackgroundSelectedColor, segmentBars) {
2348
2349
  var x1;
2349
2350
  var x2;
2350
2351
  var actualx1;
@@ -2377,35 +2378,12 @@ var convertToBar = function convertToBar(task, index, dates, columnWidth, rowHei
2377
2378
  var plannedSegments;
2378
2379
  var actualSegments;
2379
2380
 
2380
- if (task.calendar && task.start && task.end && task.start.getTime() > 0) {
2381
- var planEnd = addToDate(startOfDate(task.end, "day"), 1, "day");
2382
- var intervals = getWorkingIntervals(task.start, planEnd, task.calendar);
2383
- var segs = intervals.map(function (iv) {
2384
- return {
2385
- x1: taskXCoordinate(iv.start, dates, columnWidth),
2386
- x2: taskXCoordinate(iv.end, dates, columnWidth)
2387
- };
2388
- }).filter(function (s) {
2389
- return s.x2 > s.x1;
2390
- });
2391
- if (segs.length > 0) plannedSegments = segs;
2381
+ if (segmentBars && task.calendar && task.start && task.end && task.start.getTime() > 0) {
2382
+ plannedSegments = getWorkingSegments(task.start, task.end, task.calendar, dates, columnWidth);
2392
2383
  }
2393
2384
 
2394
- if (task.calendar && task.actualStart && task.actualEnd && task.actualStart.getTime() > 0) {
2395
- var actEnd = addToDate(startOfDate(task.actualEnd, "day"), 1, "day");
2396
-
2397
- var _intervals = getWorkingIntervals(task.actualStart, actEnd, task.calendar);
2398
-
2399
- var _segs = _intervals.map(function (iv) {
2400
- return {
2401
- x1: taskXCoordinate(iv.start, dates, columnWidth),
2402
- x2: taskXCoordinate(iv.end, dates, columnWidth)
2403
- };
2404
- }).filter(function (s) {
2405
- return s.x2 > s.x1;
2406
- });
2407
-
2408
- if (_segs.length > 0) actualSegments = _segs;
2385
+ if (segmentBars && task.calendar && task.actualStart && task.actualEnd && task.actualStart.getTime() > 0) {
2386
+ actualSegments = getWorkingSegments(task.actualStart, task.actualEnd, task.calendar, dates, columnWidth);
2409
2387
  }
2410
2388
 
2411
2389
  var styles = _extends({
@@ -2438,6 +2416,18 @@ var convertToBar = function convertToBar(task, index, dates, columnWidth, rowHei
2438
2416
  });
2439
2417
  };
2440
2418
 
2419
+ var getWorkingSegments = function getWorkingSegments(start, end, calendar, dates, columnWidth) {
2420
+ var segs = getWorkingIntervals(start, addToDate(startOfDate(end, "day"), 1, "day"), calendar).map(function (iv) {
2421
+ return {
2422
+ x1: taskXCoordinate(iv.start, dates, columnWidth),
2423
+ x2: taskXCoordinate(iv.end, dates, columnWidth)
2424
+ };
2425
+ }).filter(function (s) {
2426
+ return s.x2 > s.x1;
2427
+ });
2428
+ return segs.length > 0 ? segs : undefined;
2429
+ };
2430
+
2441
2431
  var convertToMilestone = function convertToMilestone(task, index, dates, columnWidth, rowHeight, taskHeight, barCornerRadius, handleWidth, milestoneBackgroundColor, milestoneBackgroundSelectedColor) {
2442
2432
  var x = task.start && task.end ? taskXCoordinate(task.end, dates, columnWidth) : 0;
2443
2433
  var y = taskYCoordinate(index, rowHeight, taskHeight);
@@ -3331,6 +3321,7 @@ var TaskItem = function TaskItem(props) {
3331
3321
  }, taskItem[1]));
3332
3322
  };
3333
3323
 
3324
+ var HIDDEN_ACTUAL_COLOR = "rgba(0, 0, 0, 0)";
3334
3325
  var TaskGanttContent = function TaskGanttContent(_ref) {
3335
3326
  var _svg$current;
3336
3327
 
@@ -3362,7 +3353,12 @@ var TaskGanttContent = function TaskGanttContent(_ref) {
3362
3353
  projectCalendar = _ref.projectCalendar,
3363
3354
  visibleStartY = _ref.visibleStartY,
3364
3355
  visibleEndY = _ref.visibleEndY,
3365
- sliderTime = _ref.sliderTime;
3356
+ sliderTime = _ref.sliderTime,
3357
+ _ref$hideActualBefore = _ref.hideActualBeforeSlider,
3358
+ hideActualBeforeSlider = _ref$hideActualBefore === void 0 ? false : _ref$hideActualBefore,
3359
+ plannedInProgressColor = _ref.plannedInProgressColor,
3360
+ _ref$segmentBars = _ref.segmentBars,
3361
+ segmentBars = _ref$segmentBars === void 0 ? true : _ref$segmentBars;
3366
3362
  var point = svg === null || svg === void 0 ? void 0 : (_svg$current = svg.current) === null || _svg$current === void 0 ? void 0 : _svg$current.createSVGPoint();
3367
3363
 
3368
3364
  var _useState = useState(0),
@@ -3429,17 +3425,7 @@ var TaskGanttContent = function TaskGanttContent(_ref) {
3429
3425
  finalTask.actualx2 = taskXCoordinate(finalTask.actualEnd, dates, columnWidth);
3430
3426
  }
3431
3427
 
3432
- var actEnd = addToDate(startOfDate(finalTask.actualEnd, "day"), 1, "day");
3433
- var actIntervals = getWorkingIntervals(finalTask.actualStart, actEnd, cal);
3434
- var actSegs = actIntervals.map(function (iv) {
3435
- return {
3436
- x1: taskXCoordinate(iv.start, dates, columnWidth),
3437
- x2: taskXCoordinate(iv.end, dates, columnWidth)
3438
- };
3439
- }).filter(function (s) {
3440
- return s.x2 > s.x1;
3441
- });
3442
- finalTask.actualSegments = actSegs.length > 0 ? actSegs : undefined;
3428
+ finalTask.actualSegments = segmentBars ? getWorkingSegments(finalTask.actualStart, finalTask.actualEnd, cal, dates, columnWidth) : undefined;
3443
3429
  var offTimeDays = finalTask.calendar ? getOffDays(finalTask.calendar, finalTask.actualStart, finalTask.actualEnd) : [];
3444
3430
  var actDays = Math.max(1, Math.round((finalTask.actualEnd.getTime() - finalTask.actualStart.getTime()) / (1000 * 60 * 60 * 24)) - offTimeDays.length);
3445
3431
  finalTask.actualDuration = actDays;
@@ -3465,17 +3451,7 @@ var TaskGanttContent = function TaskGanttContent(_ref) {
3465
3451
  finalTask.x2 = taskXCoordinate(finalTask.end, dates, columnWidth);
3466
3452
  }
3467
3453
 
3468
- var planEnd = addToDate(startOfDate(finalTask.end, "day"), 1, "day");
3469
- var planIntervals = getWorkingIntervals(finalTask.start, planEnd, cal);
3470
- var planSegs = planIntervals.map(function (iv) {
3471
- return {
3472
- x1: taskXCoordinate(iv.start, dates, columnWidth),
3473
- x2: taskXCoordinate(iv.end, dates, columnWidth)
3474
- };
3475
- }).filter(function (s) {
3476
- return s.x2 > s.x1;
3477
- });
3478
- finalTask.plannedSegments = planSegs.length > 0 ? planSegs : undefined;
3454
+ finalTask.plannedSegments = segmentBars ? getWorkingSegments(finalTask.start, finalTask.end, cal, dates, columnWidth) : undefined;
3479
3455
 
3480
3456
  var _offTimeDays = finalTask.calendar ? getOffDays(finalTask.calendar, finalTask.start, finalTask.end) : [];
3481
3457
 
@@ -3567,17 +3543,7 @@ var TaskGanttContent = function TaskGanttContent(_ref) {
3567
3543
  newChangedTask.actualx2 = taskXCoordinate(newChangedTask.actualEnd, dates, columnWidth);
3568
3544
  }
3569
3545
 
3570
- var actEnd = addToDate(startOfDate(newChangedTask.actualEnd, "day"), 1, "day");
3571
- var actIntervals = getWorkingIntervals(newChangedTask.actualStart, actEnd, cal);
3572
- var actSegs = actIntervals.map(function (iv) {
3573
- return {
3574
- x1: taskXCoordinate(iv.start, dates, columnWidth),
3575
- x2: taskXCoordinate(iv.end, dates, columnWidth)
3576
- };
3577
- }).filter(function (s) {
3578
- return s.x2 > s.x1;
3579
- });
3580
- newChangedTask.actualSegments = actSegs.length > 0 ? actSegs : undefined;
3546
+ newChangedTask.actualSegments = segmentBars ? getWorkingSegments(newChangedTask.actualStart, newChangedTask.actualEnd, cal, dates, columnWidth) : undefined;
3581
3547
  var offTimeDays = newChangedTask.calendar ? getOffDays(newChangedTask.calendar, newChangedTask.actualStart, newChangedTask.actualEnd) : [];
3582
3548
  var actDays = Math.max(1, Math.round((newChangedTask.actualEnd.getTime() - newChangedTask.actualStart.getTime()) / (1000 * 60 * 60 * 24)) - offTimeDays.length);
3583
3549
  newChangedTask.actualDuration = actDays;
@@ -3615,17 +3581,7 @@ var TaskGanttContent = function TaskGanttContent(_ref) {
3615
3581
  newChangedTask.x2 = taskXCoordinate(newChangedTask.end, dates, columnWidth);
3616
3582
  }
3617
3583
 
3618
- var planEnd = addToDate(startOfDate(newChangedTask.end, "day"), 1, "day");
3619
- var planIntervals = getWorkingIntervals(newChangedTask.start, planEnd, cal);
3620
- var planSegs = planIntervals.map(function (iv) {
3621
- return {
3622
- x1: taskXCoordinate(iv.start, dates, columnWidth),
3623
- x2: taskXCoordinate(iv.end, dates, columnWidth)
3624
- };
3625
- }).filter(function (s) {
3626
- return s.x2 > s.x1;
3627
- });
3628
- newChangedTask.plannedSegments = planSegs.length > 0 ? planSegs : undefined;
3584
+ newChangedTask.plannedSegments = segmentBars ? getWorkingSegments(newChangedTask.start, newChangedTask.end, cal, dates, columnWidth) : undefined;
3629
3585
 
3630
3586
  var _offTimeDays2 = newChangedTask.calendar ? getOffDays(newChangedTask.calendar, newChangedTask.start, newChangedTask.end) : [];
3631
3587
 
@@ -3702,7 +3658,7 @@ var TaskGanttContent = function TaskGanttContent(_ref) {
3702
3658
  svg.current.addEventListener("mouseup", handleMouseUp);
3703
3659
  setIsMoving(true);
3704
3660
  }
3705
- }, [ganttEvent, xStep, initEventX1Delta, onProgressChange, timeStep, onDateChange, onCalendarError, projectCalendar, svg, isMoving, point, rtl, setFailedTask, setGanttEvent, onBarTasksUpdate, dates, columnWidth]);
3661
+ }, [ganttEvent, xStep, initEventX1Delta, onProgressChange, timeStep, onDateChange, onCalendarError, projectCalendar, svg, isMoving, point, rtl, segmentBars, setFailedTask, setGanttEvent, onBarTasksUpdate, dates, columnWidth]);
3706
3662
 
3707
3663
  var handleBarEventStart = function handleBarEventStart(action, task, event, type) {
3708
3664
  try {
@@ -3857,6 +3813,17 @@ var TaskGanttContent = function TaskGanttContent(_ref) {
3857
3813
 
3858
3814
  var lineX = sliderTime !== undefined ? taskXCoordinate(new Date(sliderTime), dates, columnWidth) : null;
3859
3815
  var totalHeight = tasks.length * rowHeight;
3816
+ var sliderDate = sliderTime != null ? new Date(sliderTime) : null;
3817
+
3818
+ var isActualBeforeSlider = function isActualBeforeSlider(task) {
3819
+ return hideActualBeforeSlider && !!sliderDate && !!task.actualStart && startOfDate(task.actualStart, "day") > sliderDate;
3820
+ };
3821
+
3822
+ var isInProgressAtSlider = function isInProgressAtSlider(_ref2) {
3823
+ var w = _ref2.inProgressWindow;
3824
+ return !!plannedInProgressColor && !!sliderDate && !!w && startOfDate(w.start, "day") <= sliderDate && (!w.end || addToDate(startOfDate(w.end, "day"), 1, "day") > sliderDate);
3825
+ };
3826
+
3860
3827
  return React.createElement("g", {
3861
3828
  className: "content"
3862
3829
  }, lineX !== null && lineX > 0 && React.createElement("line", {
@@ -3882,6 +3849,19 @@ var TaskGanttContent = function TaskGanttContent(_ref) {
3882
3849
  y: 0
3883
3850
  });
3884
3851
 
3852
+ if (isActualBeforeSlider(task)) {
3853
+ task.styles = _extends({}, task.styles, {
3854
+ taskProgressColor: HIDDEN_ACTUAL_COLOR
3855
+ });
3856
+ }
3857
+
3858
+ if (isInProgressAtSlider(task)) {
3859
+ task.styles = _extends({}, task.styles, {
3860
+ backgroundColor: plannedInProgressColor,
3861
+ backgroundSelectedColor: plannedInProgressColor
3862
+ });
3863
+ }
3864
+
3885
3865
  if (!task && _task.typeInternal === "milestone") {
3886
3866
  return React.createElement("g", {
3887
3867
  key: _task.id,
@@ -4034,6 +4014,8 @@ var HorizontalScroll = function HorizontalScroll(_ref) {
4034
4014
  };
4035
4015
 
4036
4016
  var GANTT_MIN_WIDTH_RATIO = 0.4;
4017
+ var PRIMARY_PATH_COLOR = "#AA00FF";
4018
+ var SECONDARY_PATH_COLOR = "#ff82e4";
4037
4019
  var TABLE_GANTT_DIVIDER_WIDTH = 20;
4038
4020
  var Gantt = function Gantt(_ref) {
4039
4021
  var _ref3;
@@ -4128,7 +4110,10 @@ var Gantt = function Gantt(_ref) {
4128
4110
  shouldNotShowLoadingOverlay = _ref$shouldNotShowLoa === void 0 ? true : _ref$shouldNotShowLoa,
4129
4111
  projectCalendar = _ref.projectCalendar,
4130
4112
  onCalendarError = _ref.onCalendarError,
4131
- sliderTime = _ref.sliderTime;
4113
+ sliderTime = _ref.sliderTime,
4114
+ _ref$hideActualBefore = _ref.hideActualBeforeSlider,
4115
+ hideActualBeforeSlider = _ref$hideActualBefore === void 0 ? false : _ref$hideActualBefore,
4116
+ plannedInProgressColor = _ref.plannedInProgressColor;
4132
4117
  var wrapperRef = useRef(null);
4133
4118
  var taskListRef = useRef(null);
4134
4119
  var isDraggingTable = useRef(false);
@@ -4404,11 +4389,11 @@ var Gantt = function Gantt(_ref) {
4404
4389
  uncolorAll(tasks);
4405
4390
 
4406
4391
  if (scheduleType !== "lookAhead") {
4407
- colorPath(secondaryPath, "#00ff00", tasks, "secondary");
4408
- colorPath(primaryPath, "#ff0000", tasks, "primary");
4392
+ colorPath(secondaryPath, SECONDARY_PATH_COLOR, tasks, "secondary");
4393
+ colorPath(primaryPath, PRIMARY_PATH_COLOR, tasks, "primary");
4409
4394
  }
4410
4395
 
4411
- setBarTasks(convertToBarTasks(filteredTasks, newDates, effectiveColumnWidth, rowHeight, taskHeight, barCornerRadius, handleWidth, rtl, barProgressColor, barProgressSelectedColor, barBackgroundColor, barBackgroundSelectedColor, projectProgressColor, projectProgressSelectedColor, projectBackgroundColor, projectBackgroundSelectedColor, milestoneBackgroundColor, milestoneBackgroundSelectedColor));
4396
+ setBarTasks(convertToBarTasks(filteredTasks, newDates, effectiveColumnWidth, rowHeight, taskHeight, barCornerRadius, handleWidth, rtl, barProgressColor, barProgressSelectedColor, barBackgroundColor, barBackgroundSelectedColor, projectProgressColor, projectProgressSelectedColor, projectBackgroundColor, projectBackgroundSelectedColor, milestoneBackgroundColor, milestoneBackgroundSelectedColor, viewShowsOffDays(viewMode)));
4412
4397
  setIsProcessing(false);
4413
4398
  }, delayToRender);
4414
4399
  }, [tasks, viewMode, preStepsCount, rowHeight, barCornerRadius, taskHeight, handleWidth, barProgressColor, barProgressSelectedColor, barBackgroundColor, barBackgroundSelectedColor, projectProgressColor, projectProgressSelectedColor, projectBackgroundColor, projectBackgroundSelectedColor, milestoneBackgroundColor, milestoneBackgroundSelectedColor, rtl, shouldNotShowLoadingOverlay, effectiveColumnWidth, projectCalendar]);
@@ -4763,7 +4748,10 @@ var Gantt = function Gantt(_ref) {
4763
4748
  projectCalendar: projectCalendar,
4764
4749
  visibleStartY: visibleStartY,
4765
4750
  visibleEndY: visibleEndY,
4766
- sliderTime: sliderTime
4751
+ sliderTime: sliderTime,
4752
+ hideActualBeforeSlider: hideActualBeforeSlider,
4753
+ plannedInProgressColor: plannedInProgressColor,
4754
+ segmentBars: viewShowsOffDays(viewMode)
4767
4755
  };
4768
4756
  var tableTasks = useMemo(function () {
4769
4757
  return ganttEvent.changedTask ? barTasks.map(function (t) {