gantt-task-react-powern 0.6.5 → 0.6.7

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.
package/dist/index.js CHANGED
@@ -3042,7 +3042,9 @@ var Gantt = function Gantt(_ref) {
3042
3042
  onSelect = _ref.onSelect,
3043
3043
  onExpanderClick = _ref.onExpanderClick,
3044
3044
  onMultiSelect = _ref.onMultiSelect,
3045
- taskLabelRenderer = _ref.taskLabelRenderer;
3045
+ taskLabelRenderer = _ref.taskLabelRenderer,
3046
+ _ref$delayToRender = _ref.delayToRender,
3047
+ delayToRender = _ref$delayToRender === void 0 ? 500 : _ref$delayToRender;
3046
3048
  var wrapperRef = React.useRef(null);
3047
3049
  var taskListRef = React.useRef(null);
3048
3050
 
@@ -3086,6 +3088,8 @@ var Gantt = function Gantt(_ref) {
3086
3088
  barTasks = _useState6[0],
3087
3089
  setBarTasks = _useState6[1];
3088
3090
 
3091
+ var debounceRef = React.useRef(null);
3092
+
3089
3093
  var _useState7 = React.useState({
3090
3094
  action: ""
3091
3095
  }),
@@ -3139,7 +3143,13 @@ var Gantt = function Gantt(_ref) {
3139
3143
  }
3140
3144
  }, [startDate, endDate]);
3141
3145
  React.useEffect(function () {
3142
- var timer = setTimeout(function () {
3146
+ console.debug("Tasks or view mode changed, recalculating bars...");
3147
+
3148
+ if (debounceRef.current) {
3149
+ clearTimeout(debounceRef.current);
3150
+ }
3151
+
3152
+ debounceRef.current = setTimeout(function () {
3143
3153
  var filteredTasks;
3144
3154
 
3145
3155
  if (onExpanderClick) {
@@ -3187,11 +3197,13 @@ var Gantt = function Gantt(_ref) {
3187
3197
  }
3188
3198
 
3189
3199
  setBarTasks(convertToBarTasks(filteredTasks, newDates, columnWidth, rowHeight, taskHeight, barCornerRadius, handleWidth, rtl, barProgressColor, barProgressSelectedColor, barBackgroundColor, barBackgroundSelectedColor, projectProgressColor, projectProgressSelectedColor, projectBackgroundColor, projectBackgroundSelectedColor, milestoneBackgroundColor, milestoneBackgroundSelectedColor));
3190
- }, 500);
3200
+ }, delayToRender);
3201
+ }, [tasks, viewMode, preStepsCount, rowHeight, barCornerRadius, columnWidth, taskHeight, handleWidth, barProgressColor, barProgressSelectedColor, barBackgroundColor, barBackgroundSelectedColor, projectProgressColor, projectProgressSelectedColor, projectBackgroundColor, projectBackgroundSelectedColor, milestoneBackgroundColor, milestoneBackgroundSelectedColor, rtl, onExpanderClick]);
3202
+ React.useEffect(function () {
3191
3203
  return function () {
3192
- return clearTimeout(timer);
3204
+ clearTimeout(debounceRef.current);
3193
3205
  };
3194
- }, [tasks, viewMode, preStepsCount, rowHeight, barCornerRadius, columnWidth, taskHeight, handleWidth, barProgressColor, barProgressSelectedColor, barBackgroundColor, barBackgroundSelectedColor, projectProgressColor, projectProgressSelectedColor, projectBackgroundColor, projectBackgroundSelectedColor, milestoneBackgroundColor, milestoneBackgroundSelectedColor, rtl, onExpanderClick]);
3206
+ }, []);
3195
3207
  React.useEffect(function () {
3196
3208
  if (viewMode === dateSetup.viewMode && (viewDate && !currentViewDate || viewDate && (currentViewDate === null || currentViewDate === void 0 ? void 0 : currentViewDate.valueOf()) !== viewDate.valueOf())) {
3197
3209
  var dates = dateSetup.dates;