gantt-lib 0.25.1 → 0.26.0
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.d.mts +6 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.js +14 -8
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +14 -8
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -1891,11 +1891,13 @@ var useTaskDrag = (options) => {
|
|
|
1891
1891
|
disableConstraints = false,
|
|
1892
1892
|
onCascadeProgress,
|
|
1893
1893
|
onCascade,
|
|
1894
|
+
locked = false,
|
|
1895
|
+
disableTaskDrag = false,
|
|
1894
1896
|
businessDays = true,
|
|
1895
1897
|
weekendPredicate
|
|
1896
1898
|
} = options;
|
|
1897
1899
|
const isOwnerRef = useRef(false);
|
|
1898
|
-
const
|
|
1900
|
+
const effectiveLocked = locked || disableTaskDrag;
|
|
1899
1901
|
const [isDragging, setIsDragging] = useState(false);
|
|
1900
1902
|
const [dragMode, setDragMode] = useState(null);
|
|
1901
1903
|
const [currentLeft, setCurrentLeft] = useState(0);
|
|
@@ -2060,7 +2062,7 @@ var useTaskDrag = (options) => {
|
|
|
2060
2062
|
};
|
|
2061
2063
|
}, []);
|
|
2062
2064
|
const handleMouseDown = useCallback((e) => {
|
|
2063
|
-
if (
|
|
2065
|
+
if (effectiveLocked) return;
|
|
2064
2066
|
const target = e.currentTarget;
|
|
2065
2067
|
const edgeZone = detectEdgeZone(e.clientX, target, edgeZoneWidth);
|
|
2066
2068
|
let mode = null;
|
|
@@ -2138,14 +2140,15 @@ var useTaskDrag = (options) => {
|
|
|
2138
2140
|
businessDays,
|
|
2139
2141
|
weekendPredicate
|
|
2140
2142
|
};
|
|
2141
|
-
}, [edgeZoneWidth, currentLeft, currentWidth, dayWidth, monthStart, taskId, onDragStateChange, handleProgress, handleComplete, handleCancel, allTasks, disableConstraints, onCascadeProgress, onCascade,
|
|
2143
|
+
}, [edgeZoneWidth, currentLeft, currentWidth, dayWidth, monthStart, taskId, onDragStateChange, handleProgress, handleComplete, handleCancel, allTasks, disableConstraints, onCascadeProgress, onCascade, effectiveLocked]);
|
|
2142
2144
|
const getCursorStyle = useCallback(() => {
|
|
2145
|
+
if (disableTaskDrag) return "grab";
|
|
2143
2146
|
if (locked) return "not-allowed";
|
|
2144
2147
|
if (isDragging) {
|
|
2145
2148
|
return "grabbing";
|
|
2146
2149
|
}
|
|
2147
2150
|
return "grab";
|
|
2148
|
-
}, [locked, isDragging]);
|
|
2151
|
+
}, [disableTaskDrag, locked, isDragging]);
|
|
2149
2152
|
return {
|
|
2150
2153
|
isDragging,
|
|
2151
2154
|
dragMode,
|
|
@@ -2164,10 +2167,10 @@ var useTaskDrag = (options) => {
|
|
|
2164
2167
|
// src/components/TaskRow/TaskRow.tsx
|
|
2165
2168
|
import { jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
|
|
2166
2169
|
var arePropsEqual = (prevProps, nextProps) => {
|
|
2167
|
-
return prevProps.task.id === nextProps.task.id && prevProps.task.name === nextProps.task.name && prevProps.task.startDate === nextProps.task.startDate && prevProps.task.endDate === nextProps.task.endDate && prevProps.task.color === nextProps.task.color && prevProps.task.progress === nextProps.task.progress && prevProps.task.accepted === nextProps.task.accepted && prevProps.monthStart.getTime() === nextProps.monthStart.getTime() && prevProps.dayWidth === nextProps.dayWidth && prevProps.rowHeight === nextProps.rowHeight && prevProps.overridePosition?.left === nextProps.overridePosition?.left && prevProps.overridePosition?.width === nextProps.overridePosition?.width && prevProps.allTasks === nextProps.allTasks && prevProps.disableConstraints === nextProps.disableConstraints && prevProps.task.locked === nextProps.task.locked && prevProps.task.divider === nextProps.task.divider && prevProps.highlightExpiredTasks === nextProps.highlightExpiredTasks && prevProps.isFilterMatch === nextProps.isFilterMatch && prevProps.businessDays === nextProps.businessDays && prevProps.customDays === nextProps.customDays && prevProps.isWeekend === nextProps.isWeekend;
|
|
2170
|
+
return prevProps.task.id === nextProps.task.id && prevProps.task.name === nextProps.task.name && prevProps.task.startDate === nextProps.task.startDate && prevProps.task.endDate === nextProps.task.endDate && prevProps.task.color === nextProps.task.color && prevProps.task.progress === nextProps.task.progress && prevProps.task.accepted === nextProps.task.accepted && prevProps.monthStart.getTime() === nextProps.monthStart.getTime() && prevProps.dayWidth === nextProps.dayWidth && prevProps.rowHeight === nextProps.rowHeight && prevProps.overridePosition?.left === nextProps.overridePosition?.left && prevProps.overridePosition?.width === nextProps.overridePosition?.width && prevProps.allTasks === nextProps.allTasks && prevProps.disableConstraints === nextProps.disableConstraints && prevProps.task.locked === nextProps.task.locked && prevProps.task.divider === nextProps.task.divider && prevProps.highlightExpiredTasks === nextProps.highlightExpiredTasks && prevProps.isFilterMatch === nextProps.isFilterMatch && prevProps.businessDays === nextProps.businessDays && prevProps.customDays === nextProps.customDays && prevProps.isWeekend === nextProps.isWeekend && prevProps.disableTaskDrag === nextProps.disableTaskDrag;
|
|
2168
2171
|
};
|
|
2169
2172
|
var TaskRow = React2.memo(
|
|
2170
|
-
({ task, monthStart, dayWidth, rowHeight, onTasksChange, onDragStateChange, rowIndex, allTasks, enableAutoSchedule, disableConstraints, overridePosition, onCascadeProgress, onCascade, divider, highlightExpiredTasks, isFilterMatch = false, businessDays, customDays, isWeekend: isWeekend3 }) => {
|
|
2173
|
+
({ task, monthStart, dayWidth, rowHeight, onTasksChange, onDragStateChange, rowIndex, allTasks, enableAutoSchedule, disableConstraints, overridePosition, onCascadeProgress, onCascade, divider, highlightExpiredTasks, isFilterMatch = false, businessDays, customDays, isWeekend: isWeekend3, disableTaskDrag = false }) => {
|
|
2171
2174
|
const { divider: taskDivider } = task;
|
|
2172
2175
|
const taskStartDate = useMemo2(() => parseUTCDate(task.startDate), [task.startDate]);
|
|
2173
2176
|
const taskEndDate = useMemo2(() => parseUTCDate(task.endDate), [task.endDate]);
|
|
@@ -2247,6 +2250,7 @@ var TaskRow = React2.memo(
|
|
|
2247
2250
|
enableAutoSchedule,
|
|
2248
2251
|
disableConstraints,
|
|
2249
2252
|
locked: task.locked,
|
|
2253
|
+
disableTaskDrag,
|
|
2250
2254
|
onCascadeProgress,
|
|
2251
2255
|
onCascade,
|
|
2252
2256
|
businessDays,
|
|
@@ -5887,7 +5891,8 @@ var GanttChart = forwardRef(({
|
|
|
5887
5891
|
taskFilter,
|
|
5888
5892
|
collapsedParentIds: externalCollapsedParentIds,
|
|
5889
5893
|
onToggleCollapse: externalOnToggleCollapse,
|
|
5890
|
-
highlightedTaskIds
|
|
5894
|
+
highlightedTaskIds,
|
|
5895
|
+
disableTaskDrag = false
|
|
5891
5896
|
}, ref) => {
|
|
5892
5897
|
const scrollContainerRef = useRef7(null);
|
|
5893
5898
|
const [selectedTaskId, setSelectedTaskId] = useState7(null);
|
|
@@ -6435,7 +6440,8 @@ var GanttChart = forwardRef(({
|
|
|
6435
6440
|
isFilterMatch: matchedTaskIds.has(task.id),
|
|
6436
6441
|
businessDays,
|
|
6437
6442
|
customDays,
|
|
6438
|
-
isWeekend: isWeekend3
|
|
6443
|
+
isWeekend: isWeekend3,
|
|
6444
|
+
disableTaskDrag
|
|
6439
6445
|
},
|
|
6440
6446
|
task.id
|
|
6441
6447
|
))
|