MaTeMaTuK / gantt-task-react

Gantt chart for React with Typescript
MIT License
912 stars 511 forks source link

[Bug] Typeerror: can't access property "getTime", dates[index] is undefined #255

Open cleiton-weef opened 4 months ago

cleiton-weef commented 4 months ago

Hi! 👋

Firstly, thanks for your work on this project! 🙂

Today I used patch-package to patch gantt-task-react@0.3.9 for the project I'm working on.

Sometimes, when I use ViewMode.Day, the following error happens:

image

Typeerror: can't access property "getTime", dates[index] is undefined

Here is the diff that solved my problem:

diff --git a/node_modules/gantt-task-react/dist/index.modern.js b/node_modules/gantt-task-react/dist/index.modern.js
index b372269..8d5d5d6 100644
--- a/node_modules/gantt-task-react/dist/index.modern.js
+++ b/node_modules/gantt-task-react/dist/index.modern.js
@@ -1208,9 +1208,10 @@ var convertToMilestone = function convertToMilestone(task, index, dates, columnW
 };

 var taskXCoordinate = function taskXCoordinate(xDate, dates, columnWidth) {
-  var index = dates.findIndex(function (d) {
+  var targetIndex = dates.findIndex(function (d) {
     return d.getTime() >= xDate.getTime();
-  }) - 1;
+  });
+  var index = targetIndex > 0 ? targetIndex - 1 : targetIndex;
   var remainderMillis = xDate.getTime() - dates[index].getTime();
   var percentOfInterval = remainderMillis / (dates[index + 1].getTime() - dates[index].getTime());
   var x = index * columnWidth + percentOfInterval * columnWidth;

This issue body was partially generated by patch-package.

DAIMENGEN4 commented 3 months ago

"New features are under continuous development." https://github.com/DAIMENGEN/full-flex-ui