react-native-reorderable-list 0.11.0 → 0.13.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/README.md +1 -1
- package/lib/commonjs/components/ReorderableListCell.js +2 -2
- package/lib/commonjs/components/ReorderableListCell.js.map +1 -1
- package/lib/commonjs/components/ReorderableListCore/ReorderableListCore.js +2 -2
- package/lib/commonjs/components/ReorderableListCore/ReorderableListCore.js.map +1 -1
- package/lib/commonjs/components/ReorderableListCore/useReorderableListCore.js +122 -63
- package/lib/commonjs/components/ReorderableListCore/useReorderableListCore.js.map +1 -1
- package/lib/module/components/ReorderableListCell.js +2 -2
- package/lib/module/components/ReorderableListCell.js.map +1 -1
- package/lib/module/components/ReorderableListCore/ReorderableListCore.js +2 -2
- package/lib/module/components/ReorderableListCore/ReorderableListCore.js.map +1 -1
- package/lib/module/components/ReorderableListCore/useReorderableListCore.js +122 -63
- package/lib/module/components/ReorderableListCore/useReorderableListCore.js.map +1 -1
- package/lib/typescript/components/ReorderableListCore/useReorderableListCore.d.ts +2 -2
- package/lib/typescript/components/ReorderableListCore/useReorderableListCore.d.ts.map +1 -1
- package/lib/typescript/types/props.d.ts +4 -3
- package/lib/typescript/types/props.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/ReorderableListCell.tsx +3 -3
- package/src/components/ReorderableListCore/ReorderableListCore.tsx +2 -2
- package/src/components/ReorderableListCore/useReorderableListCore.ts +196 -106
- package/src/types/props.ts +4 -3
package/README.md
CHANGED
|
@@ -62,7 +62,7 @@ This component uses a [FlatList](https://reactnative.dev/docs/flatlist) and it e
|
|
|
62
62
|
| autoscrollThresholdOffset | `{top?: number; bottom?: number}` | No | `{top: 0, bottom: 0}` | Amount by which the threshold is offset at the extremety of the list. For example, setting `{top: 50}` will make the autoscroll trigger 50 pixels earlier at the top. |
|
|
63
63
|
| autoscrollSpeedScale | `number` | No | `1` | Scales the autoscroll speed at which the list scrolls when an item is dragged to the scroll areas. |
|
|
64
64
|
| autoscrollDelay | `number` | No | `0` (Android), `100` (iOS) | Delay in between autoscroll triggers. Can be used to tune the autoscroll smoothness. Default values differ between platforms: `0` for Android and `100` for iOS. |
|
|
65
|
-
|
|
|
65
|
+
| autoscrollActivationDelta | `number` | No | `5` | Allows configuring the delta for autoscroll activation when dragging an item in the same direction as the autoscroll. This is particularly useful when an item is dragged within the autoscroll area to account for minor unintentional movements. |
|
|
66
66
|
| animationDuration | `number` | No | `200` | Duration of the animations in milliseconds. Users won't be able to drag a new item until the dragged item is released and its animation to its new position ends. |
|
|
67
67
|
| cellAnimations | `ReorderableListCellAnimations` | No | N/A | Allows passing an object with values and/or shared values that can animate a cell, for example by using the `onDragStart` and `onDragEnd` events. Supports view style properties. Override opacity and/or transform to disable the default animation, e.g. `{opacity: 1, transform: []}`. Check the [examples](https://github.com/omahili/react-native-reorderable-list/tree/master/example) for more details. |
|
|
68
68
|
| shouldUpdateActiveItem | boolean | No | `false` | Whether the active item should be updated. Enables usage of `useIsActive` hook. |
|
|
@@ -49,12 +49,12 @@ const ReorderableListCell = exports.ReorderableListCell = /*#__PURE__*/(0, _reac
|
|
|
49
49
|
});
|
|
50
50
|
(0, _reactNativeReanimated.useAnimatedReaction)(() => currentIndex.value, () => {
|
|
51
51
|
if (index !== draggedIndex.value && currentIndex.value >= 0 && draggedIndex.value >= 0) {
|
|
52
|
-
const
|
|
52
|
+
const moveUp = currentIndex.value > draggedIndex.value;
|
|
53
53
|
const startMove = Math.min(draggedIndex.value, currentIndex.value);
|
|
54
54
|
const endMove = Math.max(draggedIndex.value, currentIndex.value);
|
|
55
55
|
let newValue = 0;
|
|
56
56
|
if (index >= startMove && index <= endMove) {
|
|
57
|
-
newValue =
|
|
57
|
+
newValue = moveUp ? -draggedHeight.value : draggedHeight.value;
|
|
58
58
|
}
|
|
59
59
|
if (newValue !== itemTranslateY.value) {
|
|
60
60
|
itemTranslateY.value = (0, _reactNativeReanimated.withTiming)(newValue, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNativeReanimated","_contexts","_hooks","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ReorderableListCell","exports","memo","index","startDrag","children","onLayout","itemOffset","itemHeight","dragY","draggedIndex","animationDuration","currentIndex","draggedHeight","activeIndex","cellAnimations","useContext","ReorderableListContext","dragHandler","useCallback","runOnUI","isActive","contextValue","useMemo","itemTranslateY","useSharedValue","isActiveCell","useDerivedValue","value","useAnimatedReaction","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNativeReanimated","_contexts","_hooks","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ReorderableListCell","exports","memo","index","startDrag","children","onLayout","itemOffset","itemHeight","dragY","draggedIndex","animationDuration","currentIndex","draggedHeight","activeIndex","cellAnimations","useContext","ReorderableListContext","dragHandler","useCallback","runOnUI","isActive","contextValue","useMemo","itemTranslateY","useSharedValue","isActiveCell","useDerivedValue","value","useAnimatedReaction","moveUp","startMove","Math","min","endMove","max","newValue","withTiming","duration","easing","Easing","out","ease","animatedStyle","useAnimatedStyle","transform","translateY","Array","isArray","customTransform","map","x","applyAnimatedStyles","push","zIndex","handleLayout","y","height","nativeEvent","layout","createElement","ReorderableCellContext","Provider","View","style"],"sourceRoot":"../../../src","sources":["components/ReorderableListCell.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -21,8 +21,8 @@ const ReorderableListCore = ({
|
|
|
21
21
|
autoscrollThresholdOffset,
|
|
22
22
|
autoscrollSpeedScale = 1,
|
|
23
23
|
autoscrollDelay = _autoscrollConfig.AUTOSCROLL_CONFIG.delay,
|
|
24
|
+
autoscrollActivationDelta = 5,
|
|
24
25
|
animationDuration = 200,
|
|
25
|
-
dragReorderThreshold = 0.2,
|
|
26
26
|
onLayout,
|
|
27
27
|
onReorder,
|
|
28
28
|
onScroll,
|
|
@@ -60,8 +60,8 @@ const ReorderableListCore = ({
|
|
|
60
60
|
autoscrollThresholdOffset,
|
|
61
61
|
autoscrollSpeedScale,
|
|
62
62
|
autoscrollDelay,
|
|
63
|
+
autoscrollActivationDelta,
|
|
63
64
|
animationDuration,
|
|
64
|
-
dragReorderThreshold,
|
|
65
65
|
onLayout,
|
|
66
66
|
onReorder,
|
|
67
67
|
onDragStart,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeGestureHandler","_reactNativeReanimated","_autoscrollConfig","_useReorderableListCore","_contexts","_ReorderableListCell","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","AnimatedFlatList","Animated","createAnimatedComponent","FlatList","ReorderableListCore","autoscrollThreshold","autoscrollThresholdOffset","autoscrollSpeedScale","autoscrollDelay","AUTOSCROLL_CONFIG","delay","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeGestureHandler","_reactNativeReanimated","_autoscrollConfig","_useReorderableListCore","_contexts","_ReorderableListCell","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","AnimatedFlatList","Animated","createAnimatedComponent","FlatList","ReorderableListCore","autoscrollThreshold","autoscrollThresholdOffset","autoscrollSpeedScale","autoscrollDelay","AUTOSCROLL_CONFIG","delay","autoscrollActivationDelta","animationDuration","onLayout","onReorder","onScroll","onDragStart","onDragEnd","onIndexChange","scrollViewContainerRef","scrollViewHeightY","scrollViewScrollOffsetY","scrollViewScrollEnabled","initialScrollViewScrollEnabled","scrollable","outerScrollGesture","cellAnimations","shouldUpdateActiveItem","panEnabled","panActivateAfterLongPress","rest","ref","gestureHandler","handleScroll","handleFlatListLayout","handleRef","startDrag","listContextValue","itemOffset","itemHeight","dragY","draggedIndex","duration","useReorderableListCore","initialScrollEnabled","scrollEnabled","nestedScrollable","combinedGesture","useMemo","Platform","OS","Gesture","Simultaneous","composedScrollHandler","useComposedEventHandler","renderAnimatedCell","useCallback","cellKey","props","createElement","ReorderableListCell","key","index","ReorderableListContext","Provider","value","GestureDetector","gesture","CellRendererComponent","scrollEventThrottle","horizontal","removeClippedSubviews","numColumns","MemoizedReorderableListCore","exports","React","memo","forwardRef"],"sourceRoot":"../../../../src","sources":["components/ReorderableListCore/ReorderableListCore.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -21,8 +21,8 @@ const useReorderableListCore = ({
|
|
|
21
21
|
autoscrollThresholdOffset,
|
|
22
22
|
autoscrollSpeedScale,
|
|
23
23
|
autoscrollDelay,
|
|
24
|
+
autoscrollActivationDelta,
|
|
24
25
|
animationDuration,
|
|
25
|
-
dragReorderThreshold,
|
|
26
26
|
onReorder,
|
|
27
27
|
onDragStart,
|
|
28
28
|
onDragEnd,
|
|
@@ -46,22 +46,25 @@ const useReorderableListCore = ({
|
|
|
46
46
|
const gestureState = (0, _reactNativeReanimated.useSharedValue)(_reactNativeGestureHandler.State.UNDETERMINED);
|
|
47
47
|
const currentY = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
48
48
|
const currentTranslationY = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
49
|
+
const currentItemDragCenterY = (0, _reactNativeReanimated.useSharedValue)(null);
|
|
50
|
+
const startItemDragCenterY = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
49
51
|
const flatListScrollOffsetY = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
50
52
|
const flatListHeightY = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
51
53
|
const nestedFlatListPositionY = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
54
|
+
// The scroll y translation of the list since drag start
|
|
52
55
|
const dragScrollTranslationY = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
56
|
+
// The initial scroll offset y of the list on drag start
|
|
53
57
|
const dragInitialScrollOffsetY = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
58
|
+
// The scroll y translation of the ScrollViewContainer since drag start
|
|
54
59
|
const scrollViewDragScrollTranslationY = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
60
|
+
// The initial scroll offset y of the ScrollViewContainer on drag start
|
|
55
61
|
const scrollViewDragInitialScrollOffsetY = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
56
62
|
const draggedHeight = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
57
63
|
const itemOffset = (0, _reactNativeReanimated.useSharedValue)([]);
|
|
58
64
|
const itemHeight = (0, _reactNativeReanimated.useSharedValue)([]);
|
|
59
65
|
const autoscrollTrigger = (0, _reactNativeReanimated.useSharedValue)(-1);
|
|
60
66
|
const lastAutoscrollTrigger = (0, _reactNativeReanimated.useSharedValue)(-1);
|
|
61
|
-
const previousY = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
62
67
|
const dragY = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
63
|
-
const previousDirection = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
64
|
-
const previousIndex = (0, _reactNativeReanimated.useSharedValue)(-1);
|
|
65
68
|
const currentIndex = (0, _reactNativeReanimated.useSharedValue)(-1);
|
|
66
69
|
const draggedIndex = (0, _reactNativeReanimated.useSharedValue)(-1);
|
|
67
70
|
const state = (0, _reactNativeReanimated.useSharedValue)(_types.ReorderableListState.IDLE);
|
|
@@ -70,9 +73,13 @@ const useReorderableListCore = ({
|
|
|
70
73
|
const duration = (0, _reactNativeReanimated.useSharedValue)(animationDuration);
|
|
71
74
|
const scaleDefault = (0, _reactNativeReanimated.useSharedValue)(1);
|
|
72
75
|
const opacityDefault = (0, _reactNativeReanimated.useSharedValue)(1);
|
|
76
|
+
const dragDirection = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
77
|
+
const lastDragDirectionPivot = (0, _reactNativeReanimated.useSharedValue)(null);
|
|
78
|
+
const autoscrollDelta = (0, _reactNativeReanimated.useSharedValue)(autoscrollActivationDelta);
|
|
73
79
|
(0, _react.useEffect)(() => {
|
|
74
80
|
duration.value = animationDuration;
|
|
75
|
-
|
|
81
|
+
autoscrollDelta.value = autoscrollActivationDelta;
|
|
82
|
+
}, [duration, animationDuration, autoscrollDelta, autoscrollActivationDelta]);
|
|
76
83
|
const listContextValue = (0, _react.useMemo)(() => ({
|
|
77
84
|
draggedHeight,
|
|
78
85
|
currentIndex,
|
|
@@ -87,6 +94,43 @@ const useReorderableListCore = ({
|
|
|
87
94
|
opacity: cellAnimations && 'opacity' in cellAnimations ? cellAnimations.opacity : opacityDefault
|
|
88
95
|
}
|
|
89
96
|
}), [draggedHeight, currentIndex, draggedIndex, dragEndHandlers, activeIndex, cellAnimations, scaleDefault, opacityDefault]);
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Decides the intended drag direction of the user.
|
|
100
|
+
* This is used to to determine if the user intends to autoscroll
|
|
101
|
+
* when within the threshold area.
|
|
102
|
+
*
|
|
103
|
+
* @param e - The payload of the pan gesture update event.
|
|
104
|
+
*/
|
|
105
|
+
const setDragDirection = (0, _react.useCallback)(e => {
|
|
106
|
+
'worklet';
|
|
107
|
+
|
|
108
|
+
const direction = e.velocityY > 0 ? 1 : -1;
|
|
109
|
+
if (direction !== dragDirection.value) {
|
|
110
|
+
if (lastDragDirectionPivot.value === null) {
|
|
111
|
+
lastDragDirectionPivot.value = e.absoluteY;
|
|
112
|
+
} else if (Math.abs(e.absoluteY - lastDragDirectionPivot.value) >= autoscrollDelta.value) {
|
|
113
|
+
dragDirection.value = direction;
|
|
114
|
+
lastDragDirectionPivot.value = e.absoluteY;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}, [dragDirection, lastDragDirectionPivot, autoscrollDelta]);
|
|
118
|
+
const setCurrentItemDragCenterY = (0, _react.useCallback)(e => {
|
|
119
|
+
'worklet';
|
|
120
|
+
|
|
121
|
+
if (currentItemDragCenterY.value === null) {
|
|
122
|
+
if (currentIndex.value >= 0) {
|
|
123
|
+
const itemCenter = itemHeight.value[currentIndex.value] * 0.5;
|
|
124
|
+
// the y coordinate of the item relative to the list
|
|
125
|
+
const itemY = itemOffset.value[currentIndex.value] - (flatListScrollOffsetY.value + scrollViewDragScrollTranslationY.value);
|
|
126
|
+
const value = itemY + itemCenter + e.translationY;
|
|
127
|
+
startItemDragCenterY.value = value;
|
|
128
|
+
currentItemDragCenterY.value = value;
|
|
129
|
+
}
|
|
130
|
+
} else {
|
|
131
|
+
currentItemDragCenterY.value = startItemDragCenterY.value + e.translationY;
|
|
132
|
+
}
|
|
133
|
+
}, [currentItemDragCenterY, currentIndex, startItemDragCenterY, itemOffset, itemHeight, flatListScrollOffsetY, scrollViewDragScrollTranslationY]);
|
|
90
134
|
const panGestureHandler = (0, _react.useMemo)(() => _reactNativeGestureHandler.Gesture.Pan().onBegin(e => {
|
|
91
135
|
// prevent new dragging until item is completely released
|
|
92
136
|
if (state.value === _types.ReorderableListState.IDLE) {
|
|
@@ -97,13 +141,17 @@ const useReorderableListCore = ({
|
|
|
97
141
|
gestureState.value = e.state;
|
|
98
142
|
}
|
|
99
143
|
}).onUpdate(e => {
|
|
144
|
+
if (state.value === _types.ReorderableListState.DRAGGED) {
|
|
145
|
+
setDragDirection(e);
|
|
146
|
+
}
|
|
100
147
|
if (state.value !== _types.ReorderableListState.RELEASED) {
|
|
148
|
+
setCurrentItemDragCenterY(e);
|
|
101
149
|
currentY.value = startY.value + e.translationY;
|
|
102
150
|
currentTranslationY.value = e.translationY;
|
|
103
151
|
dragY.value = e.translationY + dragScrollTranslationY.value + scrollViewDragScrollTranslationY.value;
|
|
104
152
|
gestureState.value = e.state;
|
|
105
153
|
}
|
|
106
|
-
}).onEnd(e => gestureState.value = e.state).onFinalize(e => gestureState.value = e.state), [
|
|
154
|
+
}).onEnd(e => gestureState.value = e.state).onFinalize(e => gestureState.value = e.state), [state, startY, currentY, currentTranslationY, dragY, gestureState, dragScrollTranslationY, scrollViewDragScrollTranslationY, setDragDirection, setCurrentItemDragCenterY]);
|
|
107
155
|
const panGestureHandlerWithOptions = (0, _react.useMemo)(() => {
|
|
108
156
|
if (typeof panActivateAfterLongPress === 'number') {
|
|
109
157
|
panGestureHandler.activateAfterLongPress(panActivateAfterLongPress);
|
|
@@ -139,7 +187,10 @@ const useReorderableListCore = ({
|
|
|
139
187
|
dragY.value = 0;
|
|
140
188
|
dragScrollTranslationY.value = 0;
|
|
141
189
|
scrollViewDragScrollTranslationY.value = 0;
|
|
142
|
-
|
|
190
|
+
dragDirection.value = 0;
|
|
191
|
+
lastDragDirectionPivot.value = null;
|
|
192
|
+
currentItemDragCenterY.value = null;
|
|
193
|
+
}, [state, draggedIndex, dragY, dragScrollTranslationY, scrollViewDragScrollTranslationY, dragDirection, lastDragDirectionPivot, currentItemDragCenterY]);
|
|
143
194
|
const resetSharedValuesAfterAnimations = (0, _react.useCallback)(() => {
|
|
144
195
|
setTimeout((0, _reactNativeReanimated.runOnUI)(resetSharedValues), duration.value);
|
|
145
196
|
}, [resetSharedValues, duration]);
|
|
@@ -159,67 +210,72 @@ const useReorderableListCore = ({
|
|
|
159
210
|
}
|
|
160
211
|
}
|
|
161
212
|
};
|
|
162
|
-
const
|
|
213
|
+
const recomputeLayout = (0, _react.useCallback)((from, to) => {
|
|
163
214
|
'worklet';
|
|
164
215
|
|
|
165
|
-
const
|
|
166
|
-
const
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
216
|
+
const itemDirection = to > from;
|
|
217
|
+
const index1 = itemDirection ? from : to;
|
|
218
|
+
const index2 = itemDirection ? to : from;
|
|
219
|
+
const newOffset1 = itemOffset.value[index1];
|
|
220
|
+
const newHeight1 = itemHeight.value[index2];
|
|
221
|
+
const newOffset2 = itemOffset.value[index2] + itemHeight.value[index2] - itemHeight.value[index1];
|
|
222
|
+
const newHeight2 = itemHeight.value[index1];
|
|
223
|
+
itemOffset.value[index1] = newOffset1;
|
|
224
|
+
itemHeight.value[index1] = newHeight1;
|
|
225
|
+
itemOffset.value[index2] = newOffset2;
|
|
226
|
+
itemHeight.value[index2] = newHeight2;
|
|
227
|
+
}, [itemOffset, itemHeight]);
|
|
228
|
+
|
|
229
|
+
/**
|
|
230
|
+
* Computes a potential new drop container for the current dragged item and evaluates
|
|
231
|
+
* whether the dragged item center is nearer to the center of the current container or the new one.
|
|
232
|
+
*
|
|
233
|
+
* @returns The new index if the center of the dragged item is closer to the center of
|
|
234
|
+
* the new drop container or the current index if closer to the current drop container.
|
|
235
|
+
*/
|
|
236
|
+
const computeCurrentIndex = (0, _react.useCallback)(() => {
|
|
237
|
+
'worklet';
|
|
238
|
+
|
|
239
|
+
if (currentItemDragCenterY.value === null) {
|
|
240
|
+
return currentIndex.value;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
// apply scroll offset and scroll container translation
|
|
244
|
+
const relativeDragCenterY = flatListScrollOffsetY.value + scrollViewDragScrollTranslationY.value + currentItemDragCenterY.value;
|
|
245
|
+
const currentOffset = itemOffset.value[currentIndex.value];
|
|
246
|
+
const currentHeight = itemHeight.value[currentIndex.value];
|
|
247
|
+
const currentCenter = currentOffset + currentHeight * 0.5;
|
|
248
|
+
const max = itemOffset.value.length;
|
|
249
|
+
const possibleIndex = relativeDragCenterY < currentCenter ? Math.max(0, currentIndex.value - 1) : Math.min(max - 1, currentIndex.value + 1);
|
|
250
|
+
if (currentIndex.value !== possibleIndex) {
|
|
251
|
+
let possibleOffset = itemOffset.value[possibleIndex];
|
|
252
|
+
if (possibleIndex > currentIndex.value) {
|
|
253
|
+
possibleOffset += itemHeight.value[possibleIndex] - currentHeight;
|
|
180
254
|
}
|
|
255
|
+
const possibleCenter = possibleOffset + currentHeight * 0.5;
|
|
256
|
+
const distanceFromCurrent = Math.abs(relativeDragCenterY - currentCenter);
|
|
257
|
+
const distanceFromPossible = Math.abs(relativeDragCenterY - possibleCenter);
|
|
258
|
+
return distanceFromCurrent <= distanceFromPossible ? currentIndex.value : possibleIndex;
|
|
181
259
|
}
|
|
182
|
-
return
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
};
|
|
186
|
-
}, [dragReorderThreshold, currentIndex, flatListScrollOffsetY, previousDirection, itemOffset, itemHeight]);
|
|
187
|
-
const setCurrentIndex = (0, _react.useCallback)(y => {
|
|
260
|
+
return currentIndex.value;
|
|
261
|
+
}, [currentIndex, currentItemDragCenterY, itemOffset, itemHeight, flatListScrollOffsetY, scrollViewDragScrollTranslationY]);
|
|
262
|
+
const setCurrentIndex = (0, _react.useCallback)(() => {
|
|
188
263
|
'worklet';
|
|
189
264
|
|
|
190
|
-
const
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
} = getIndexFromY(y);
|
|
194
|
-
const delta = Math.abs(previousY.value - y);
|
|
195
|
-
if (currentIndex.value !== newIndex && (
|
|
196
|
-
// if the same two items re-swap index check delta and direction to avoid swap flickering
|
|
197
|
-
previousIndex.value !== newIndex || previousDirection.value !== newDirection && delta >= 5)) {
|
|
198
|
-
const itemDirection = newIndex > currentIndex.value;
|
|
199
|
-
const index1 = itemDirection ? currentIndex.value : newIndex;
|
|
200
|
-
const index2 = itemDirection ? newIndex : currentIndex.value;
|
|
201
|
-
const newOffset1 = itemOffset.value[index1];
|
|
202
|
-
const newHeight1 = itemHeight.value[index2];
|
|
203
|
-
const newOffset2 = itemOffset.value[index2] + (itemHeight.value[index2] - itemHeight.value[index1]);
|
|
204
|
-
const newHeight2 = itemHeight.value[index1];
|
|
205
|
-
itemOffset.value[index1] = newOffset1;
|
|
206
|
-
itemHeight.value[index1] = newHeight1;
|
|
207
|
-
itemOffset.value[index2] = newOffset2;
|
|
208
|
-
itemHeight.value[index2] = newHeight2;
|
|
209
|
-
previousY.value = y;
|
|
210
|
-
previousDirection.value = newDirection;
|
|
211
|
-
previousIndex.value = currentIndex.value;
|
|
265
|
+
const newIndex = computeCurrentIndex();
|
|
266
|
+
if (currentIndex.value !== newIndex) {
|
|
267
|
+
recomputeLayout(currentIndex.value, newIndex);
|
|
212
268
|
currentIndex.value = newIndex;
|
|
213
269
|
onIndexChange === null || onIndexChange === void 0 || onIndexChange({
|
|
214
270
|
index: newIndex
|
|
215
271
|
});
|
|
216
272
|
}
|
|
217
|
-
}, [currentIndex,
|
|
273
|
+
}, [currentIndex, computeCurrentIndex, recomputeLayout, onIndexChange]);
|
|
218
274
|
const runDefaultDragAnimations = (0, _react.useCallback)(type => {
|
|
219
275
|
'worklet';
|
|
220
276
|
|
|
221
277
|
// if no custom scale run default
|
|
222
|
-
if (!(cellAnimations && '
|
|
278
|
+
if (!(cellAnimations && 'transform' in cellAnimations)) {
|
|
223
279
|
const scaleConfig = _animationDefaults.SCALE_ANIMATION_CONFIG_DEFAULT[type];
|
|
224
280
|
scaleDefault.value = (0, _reactNativeReanimated.withTiming)(scaleConfig.toValue, scaleConfig);
|
|
225
281
|
}
|
|
@@ -359,13 +415,18 @@ const useReorderableListCore = ({
|
|
|
359
415
|
}, [nestedScrollable, shouldScrollParent, calculateHiddenArea, calculateThresholdArea, calculateThresholdAreaParent]);
|
|
360
416
|
(0, _reactNativeReanimated.useAnimatedReaction)(() => currentY.value + scrollViewDragScrollTranslationY.value, y => {
|
|
361
417
|
if (state.value === _types.ReorderableListState.DRAGGED || state.value === _types.ReorderableListState.AUTOSCROLL) {
|
|
362
|
-
setCurrentIndex(
|
|
363
|
-
|
|
418
|
+
setCurrentIndex();
|
|
419
|
+
|
|
420
|
+
// Trigger autoscroll when:
|
|
421
|
+
// 1. Within the threshold area (top or bottom of list)
|
|
422
|
+
// 2. Have dragged in the same direction as the scroll
|
|
423
|
+
// 3. Not already in autoscroll mode
|
|
424
|
+
if (dragDirection.value === scrollDirection(y)) {
|
|
425
|
+
// When the first two conditions are met and it's already in autoscroll mode, we let it continue (no-op)
|
|
364
426
|
if (state.value !== _types.ReorderableListState.AUTOSCROLL) {
|
|
365
|
-
|
|
427
|
+
state.value = _types.ReorderableListState.AUTOSCROLL;
|
|
366
428
|
lastAutoscrollTrigger.value = autoscrollTrigger.value;
|
|
367
429
|
autoscrollTrigger.value *= -1;
|
|
368
|
-
state.value = _types.ReorderableListState.AUTOSCROLL;
|
|
369
430
|
}
|
|
370
431
|
} else if (state.value === _types.ReorderableListState.AUTOSCROLL) {
|
|
371
432
|
state.value = _types.ReorderableListState.DRAGGED;
|
|
@@ -388,7 +449,7 @@ const useReorderableListCore = ({
|
|
|
388
449
|
|
|
389
450
|
// when autoscrolling user may not be moving his finger so we need
|
|
390
451
|
// to update the current position of the dragged item here
|
|
391
|
-
setCurrentIndex(
|
|
452
|
+
setCurrentIndex();
|
|
392
453
|
}
|
|
393
454
|
});
|
|
394
455
|
|
|
@@ -415,8 +476,7 @@ const useReorderableListCore = ({
|
|
|
415
476
|
(0, _reactNativeReanimated.useAnimatedReaction)(() => scrollViewScrollOffsetY === null || scrollViewScrollOffsetY === void 0 ? void 0 : scrollViewScrollOffsetY.value, value => {
|
|
416
477
|
if (value && scrollViewScrollEnabled) {
|
|
417
478
|
// checking if the list is not scrollable instead of the scrolling state
|
|
418
|
-
// fixes a bug on iOS where the item is shifted after autoscrolling and
|
|
419
|
-
// moving await from autoscroll area
|
|
479
|
+
// fixes a bug on iOS where the item is shifted after autoscrolling and moving away from the area
|
|
420
480
|
if (!scrollViewScrollEnabled.value) {
|
|
421
481
|
scrollViewDragScrollTranslationY.value = value - scrollViewDragInitialScrollOffsetY.value;
|
|
422
482
|
}
|
|
@@ -441,10 +501,9 @@ const useReorderableListCore = ({
|
|
|
441
501
|
(0, _reactNativeReanimated.runOnJS)(setActiveIndex)(index);
|
|
442
502
|
}
|
|
443
503
|
dragInitialScrollOffsetY.value = flatListScrollOffsetY.value;
|
|
444
|
-
scrollViewDragInitialScrollOffsetY.value = scrollViewScrollOffsetY ? scrollViewScrollOffsetY.value
|
|
504
|
+
scrollViewDragInitialScrollOffsetY.value = (scrollViewScrollOffsetY === null || scrollViewScrollOffsetY === void 0 ? void 0 : scrollViewScrollOffsetY.value) || 0;
|
|
445
505
|
draggedHeight.value = itemHeight.value[index];
|
|
446
506
|
draggedIndex.value = index;
|
|
447
|
-
previousIndex.value = -1;
|
|
448
507
|
currentIndex.value = index;
|
|
449
508
|
state.value = _types.ReorderableListState.DRAGGED;
|
|
450
509
|
(0, _reactNativeReanimated.runOnJS)(setScrollEnabled)(false);
|
|
@@ -455,7 +514,7 @@ const useReorderableListCore = ({
|
|
|
455
514
|
index
|
|
456
515
|
});
|
|
457
516
|
}
|
|
458
|
-
}, [resetSharedValues, shouldUpdateActiveItem, dragInitialScrollOffsetY, scrollViewScrollOffsetY, scrollViewDragInitialScrollOffsetY, setScrollEnabled, currentIndex,
|
|
517
|
+
}, [resetSharedValues, shouldUpdateActiveItem, dragInitialScrollOffsetY, scrollViewScrollOffsetY, scrollViewDragInitialScrollOffsetY, setScrollEnabled, currentIndex, draggedHeight, draggedIndex, state, flatListScrollOffsetY, itemHeight, onDragStart, runDefaultDragAnimations]);
|
|
459
518
|
const handleFlatListLayout = (0, _react.useCallback)(e => {
|
|
460
519
|
nestedFlatListPositionY.value = e.nativeEvent.layout.y;
|
|
461
520
|
flatListHeightY.value = e.nativeEvent.layout.height;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeGestureHandler","_reactNativeReanimated","_animationDefaults","_autoscrollConfig","_types","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","version","React","split","hasAutomaticBatching","length","parseInt","useReorderableListCore","ref","autoscrollThreshold","autoscrollThresholdOffset","autoscrollSpeedScale","autoscrollDelay","animationDuration","dragReorderThreshold","onReorder","onDragStart","onDragEnd","onLayout","onIndexChange","scrollViewContainerRef","scrollViewHeightY","scrollViewScrollOffsetY","scrollViewScrollEnabled","initialScrollEnabled","initialScrollViewScrollEnabled","nestedScrollable","cellAnimations","shouldUpdateActiveItem","panActivateAfterLongPress","panEnabled","flatListRef","useAnimatedRef","activeIndex","setActiveIndex","useState","scrollEnabled","useSharedValue","gestureState","State","UNDETERMINED","currentY","currentTranslationY","flatListScrollOffsetY","flatListHeightY","nestedFlatListPositionY","dragScrollTranslationY","dragInitialScrollOffsetY","scrollViewDragScrollTranslationY","scrollViewDragInitialScrollOffsetY","draggedHeight","itemOffset","itemHeight","autoscrollTrigger","lastAutoscrollTrigger","previousY","dragY","previousDirection","previousIndex","currentIndex","draggedIndex","state","ReorderableListState","IDLE","dragEndHandlers","startY","duration","scaleDefault","opacityDefault","useEffect","value","listContextValue","useMemo","transform","scale","opacity","panGestureHandler","Gesture","Pan","onBegin","y","translationY","onUpdate","RELEASED","onEnd","onFinalize","panGestureHandlerWithOptions","activateAfterLongPress","enabled","gestureHandler","Simultaneous","Native","setScrollEnabled","useCallback","_flatListRef$current","current","setNativeProps","_scrollViewContainerR","resetSharedValues","resetSharedValuesAfterAnimations","setTimeout","runOnUI","reorder","fromIndex","toIndex","updateState","from","to","unstable_batchedUpdates","getIndexFromY","relativeY","count","direction","threshold","Math","max","min","height","offset","index","setCurrentIndex","newIndex","newDirection","delta","abs","itemDirection","index1","index2","newOffset1","newHeight1","newOffset2","newHeight2","runDefaultDragAnimations","type","scaleConfig","SCALE_ANIMATION_CONFIG_DEFAULT","withTiming","toValue","opacityConfig","OPACITY_ANIMATION_CONFIG_DEFAULT","useAnimatedReaction","ACTIVE","BEGAN","DRAGGED","AUTOSCROLL","runOnJS","handlers","Array","isArray","forEach","fn","currentItemOffset","currentItemHeight","draggedItemOffset","draggedItemHeight","newTopPosition","easing","Easing","out","ease","calculateHiddenArea","top","bottom","calculateThresholdArea","hiddenArea","offsetTop","offsetBottom","visibleHeight","area","calculateThresholdAreaParent","shouldScrollParent","thresholdAreaParent","scrollDirection","thresholdArea","autoscrollIncrement","AUTOSCROLL_CONFIG","increment","scrollOffset","listRef","scrollTo","handleScroll","useAnimatedScrollHandler","contentOffset","withDelay","startDrag","handleFlatListLayout","nativeEvent","layout","handleRef","exports"],"sourceRoot":"../../../../src","sources":["components/ReorderableListCore/useReorderableListCore.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeGestureHandler","_reactNativeReanimated","_animationDefaults","_autoscrollConfig","_types","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","version","React","split","hasAutomaticBatching","length","parseInt","useReorderableListCore","ref","autoscrollThreshold","autoscrollThresholdOffset","autoscrollSpeedScale","autoscrollDelay","autoscrollActivationDelta","animationDuration","onReorder","onDragStart","onDragEnd","onLayout","onIndexChange","scrollViewContainerRef","scrollViewHeightY","scrollViewScrollOffsetY","scrollViewScrollEnabled","initialScrollEnabled","initialScrollViewScrollEnabled","nestedScrollable","cellAnimations","shouldUpdateActiveItem","panActivateAfterLongPress","panEnabled","flatListRef","useAnimatedRef","activeIndex","setActiveIndex","useState","scrollEnabled","useSharedValue","gestureState","State","UNDETERMINED","currentY","currentTranslationY","currentItemDragCenterY","startItemDragCenterY","flatListScrollOffsetY","flatListHeightY","nestedFlatListPositionY","dragScrollTranslationY","dragInitialScrollOffsetY","scrollViewDragScrollTranslationY","scrollViewDragInitialScrollOffsetY","draggedHeight","itemOffset","itemHeight","autoscrollTrigger","lastAutoscrollTrigger","dragY","currentIndex","draggedIndex","state","ReorderableListState","IDLE","dragEndHandlers","startY","duration","scaleDefault","opacityDefault","dragDirection","lastDragDirectionPivot","autoscrollDelta","useEffect","value","listContextValue","useMemo","transform","scale","opacity","setDragDirection","useCallback","direction","velocityY","absoluteY","Math","abs","setCurrentItemDragCenterY","itemCenter","itemY","translationY","panGestureHandler","Gesture","Pan","onBegin","y","onUpdate","DRAGGED","RELEASED","onEnd","onFinalize","panGestureHandlerWithOptions","activateAfterLongPress","enabled","gestureHandler","Simultaneous","Native","setScrollEnabled","_flatListRef$current","current","setNativeProps","_scrollViewContainerR","resetSharedValues","resetSharedValuesAfterAnimations","setTimeout","runOnUI","reorder","fromIndex","toIndex","updateState","from","to","unstable_batchedUpdates","recomputeLayout","itemDirection","index1","index2","newOffset1","newHeight1","newOffset2","newHeight2","computeCurrentIndex","relativeDragCenterY","currentOffset","currentHeight","currentCenter","max","possibleIndex","min","possibleOffset","possibleCenter","distanceFromCurrent","distanceFromPossible","setCurrentIndex","newIndex","index","runDefaultDragAnimations","type","scaleConfig","SCALE_ANIMATION_CONFIG_DEFAULT","withTiming","toValue","opacityConfig","OPACITY_ANIMATION_CONFIG_DEFAULT","useAnimatedReaction","ACTIVE","BEGAN","AUTOSCROLL","runOnJS","handlers","Array","isArray","forEach","fn","currentItemOffset","currentItemHeight","draggedItemOffset","draggedItemHeight","newTopPosition","easing","Easing","out","ease","calculateHiddenArea","top","bottom","calculateThresholdArea","hiddenArea","offsetTop","offsetBottom","threshold","visibleHeight","area","calculateThresholdAreaParent","shouldScrollParent","thresholdAreaParent","scrollDirection","thresholdArea","autoscrollIncrement","AUTOSCROLL_CONFIG","increment","scrollOffset","listRef","scrollTo","handleScroll","useAnimatedScrollHandler","contentOffset","withDelay","startDrag","handleFlatListLayout","nativeEvent","layout","height","handleRef","exports"],"sourceRoot":"../../../../src","sources":["components/ReorderableListCore/useReorderableListCore.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -41,12 +41,12 @@ export const ReorderableListCell = /*#__PURE__*/memo(({
|
|
|
41
41
|
});
|
|
42
42
|
useAnimatedReaction(() => currentIndex.value, () => {
|
|
43
43
|
if (index !== draggedIndex.value && currentIndex.value >= 0 && draggedIndex.value >= 0) {
|
|
44
|
-
const
|
|
44
|
+
const moveUp = currentIndex.value > draggedIndex.value;
|
|
45
45
|
const startMove = Math.min(draggedIndex.value, currentIndex.value);
|
|
46
46
|
const endMove = Math.max(draggedIndex.value, currentIndex.value);
|
|
47
47
|
let newValue = 0;
|
|
48
48
|
if (index >= startMove && index <= endMove) {
|
|
49
|
-
newValue =
|
|
49
|
+
newValue = moveUp ? -draggedHeight.value : draggedHeight.value;
|
|
50
50
|
}
|
|
51
51
|
if (newValue !== itemTranslateY.value) {
|
|
52
52
|
itemTranslateY.value = withTiming(newValue, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","memo","useCallback","useMemo","Animated","Easing","runOnUI","useAnimatedReaction","useAnimatedStyle","useDerivedValue","useSharedValue","withTiming","ReorderableCellContext","ReorderableListContext","useContext","applyAnimatedStyles","ReorderableListCell","index","startDrag","children","onLayout","itemOffset","itemHeight","dragY","draggedIndex","animationDuration","currentIndex","draggedHeight","activeIndex","cellAnimations","dragHandler","isActive","contextValue","itemTranslateY","isActiveCell","value","
|
|
1
|
+
{"version":3,"names":["React","memo","useCallback","useMemo","Animated","Easing","runOnUI","useAnimatedReaction","useAnimatedStyle","useDerivedValue","useSharedValue","withTiming","ReorderableCellContext","ReorderableListContext","useContext","applyAnimatedStyles","ReorderableListCell","index","startDrag","children","onLayout","itemOffset","itemHeight","dragY","draggedIndex","animationDuration","currentIndex","draggedHeight","activeIndex","cellAnimations","dragHandler","isActive","contextValue","itemTranslateY","isActiveCell","value","moveUp","startMove","Math","min","endMove","max","newValue","duration","easing","out","ease","animatedStyle","transform","translateY","Array","isArray","customTransform","map","x","push","zIndex","handleLayout","e","y","height","nativeEvent","layout","createElement","Provider","View","style"],"sourceRoot":"../../../src","sources":["components/ReorderableListCell.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -13,8 +13,8 @@ const ReorderableListCore = ({
|
|
|
13
13
|
autoscrollThresholdOffset,
|
|
14
14
|
autoscrollSpeedScale = 1,
|
|
15
15
|
autoscrollDelay = AUTOSCROLL_CONFIG.delay,
|
|
16
|
+
autoscrollActivationDelta = 5,
|
|
16
17
|
animationDuration = 200,
|
|
17
|
-
dragReorderThreshold = 0.2,
|
|
18
18
|
onLayout,
|
|
19
19
|
onReorder,
|
|
20
20
|
onScroll,
|
|
@@ -52,8 +52,8 @@ const ReorderableListCore = ({
|
|
|
52
52
|
autoscrollThresholdOffset,
|
|
53
53
|
autoscrollSpeedScale,
|
|
54
54
|
autoscrollDelay,
|
|
55
|
+
autoscrollActivationDelta,
|
|
55
56
|
animationDuration,
|
|
56
|
-
dragReorderThreshold,
|
|
57
57
|
onLayout,
|
|
58
58
|
onReorder,
|
|
59
59
|
onDragStart,
|