mirror of
https://github.com/jeffvli/feishin.git
synced 2026-05-06 20:10:12 +02:00
fix table config drag and drop interaction on bottom edge
This commit is contained in:
@@ -87,27 +87,25 @@ export const dndUtils = {
|
||||
return list;
|
||||
}
|
||||
|
||||
// If dragging to the right, but is left edge, do nothing
|
||||
if (edge === 'left' && indexTo > indexFrom) {
|
||||
let newIndex: number;
|
||||
|
||||
if (edge === 'bottom') {
|
||||
newIndex = indexFrom > indexTo ? indexTo + 1 : indexTo;
|
||||
} else if (edge === 'top' || edge === null) {
|
||||
newIndex = indexTo;
|
||||
} else if (edge === 'left' && indexTo > indexFrom) {
|
||||
return list;
|
||||
} else if (edge === 'right' && indexTo < indexFrom) {
|
||||
return list;
|
||||
} else {
|
||||
newIndex = indexTo;
|
||||
}
|
||||
|
||||
if (newIndex === indexFrom) {
|
||||
return list;
|
||||
}
|
||||
|
||||
// If dragging to the left, but is right edge, do nothing
|
||||
if (edge === 'right' && indexTo < indexFrom) {
|
||||
return list;
|
||||
}
|
||||
|
||||
// If dragging to the top, but is bottom edge, do nothing
|
||||
if (edge === 'top' && indexTo > indexFrom) {
|
||||
return list;
|
||||
}
|
||||
|
||||
// If dragging to the bottom, but is top edge, do nothing
|
||||
if (edge === 'bottom' && indexTo < indexFrom) {
|
||||
return list;
|
||||
}
|
||||
|
||||
return dndUtils.reorderByIndex({ index: indexFrom, list, newIndex: indexTo });
|
||||
return dndUtils.reorderByIndex({ index: indexFrom, list, newIndex });
|
||||
},
|
||||
reorderByIndex: (args: { index: number; list: string[]; newIndex: number }) => {
|
||||
const { index, list, newIndex } = args;
|
||||
|
||||
Reference in New Issue
Block a user