@os-design/drag-sort 1.0.47 → 1.0.48
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/Droppable.d.ts.map +1 -1
- package/dist/Droppable.js +10 -8
- package/package.json +2 -2
- package/src/Droppable.tsx +20 -9
package/dist/Droppable.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Droppable.d.ts","sourceRoot":"","sources":["../src/Droppable.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAEZ,KAAK,SAAS,
|
|
1
|
+
{"version":3,"file":"Droppable.d.ts","sourceRoot":"","sources":["../src/Droppable.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAEZ,KAAK,SAAS,EAMf,MAAM,OAAO,CAAC;AACf,OAAiB,EAGf,KAAK,iBAAiB,EACvB,MAAM,qBAAqB,CAAC;AAK7B,MAAM,WAAW,sBAAsB;IACrC;;;OAGG;IACH,GAAG,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACtC;;;OAGG;IACH,QAAQ,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,iBAAiB,EAAE,iBAAiB,CAAC;IACrC;;;;OAIG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,QAAQ,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,KAAK,CAAC,SAAS,CAAC;CAC9D;AAED,QAAA,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAwFvC,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
package/dist/Droppable.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import useMemoObject from '@os-design/use-memo-object';
|
|
2
|
-
import React, { useEffect, useMemo, useRef } from 'react';
|
|
2
|
+
import React, { useCallback, useEffect, useMemo, useRef } from 'react';
|
|
3
3
|
import NodeList from './utils/NodeList.js';
|
|
4
4
|
import useDragAndDrop from './utils/useDragAndDrop.js';
|
|
5
5
|
import { DroppableContext } from './utils/useDroppable.js';
|
|
@@ -55,18 +55,20 @@ const Droppable = ({
|
|
|
55
55
|
const listId = listRef.current.id;
|
|
56
56
|
return () => deregisterList(listId);
|
|
57
57
|
}, [deregisterList, registerList]);
|
|
58
|
-
|
|
59
|
-
|
|
58
|
+
|
|
59
|
+
/* eslint-disable react-hooks/preserve-manual-memoization */
|
|
60
|
+
const registerNode = useCallback(props => listRef.current.add(props), []);
|
|
61
|
+
const deregisterNode = useCallback(node => {
|
|
60
62
|
listRef.current.remove(node);
|
|
61
|
-
};
|
|
63
|
+
}, []);
|
|
62
64
|
|
|
63
65
|
// Handlers that determine whether a user clicks on the node
|
|
64
|
-
const mouseDownHandler = (e, node) => {
|
|
66
|
+
const mouseDownHandler = useCallback((e, node) => {
|
|
65
67
|
onMouseDown(e, listRef.current, node);
|
|
66
|
-
};
|
|
67
|
-
const touchStartHandler = (e, node) => {
|
|
68
|
+
}, [onMouseDown]);
|
|
69
|
+
const touchStartHandler = useCallback((e, node) => {
|
|
68
70
|
onTouchStart(e, listRef.current, node);
|
|
69
|
-
};
|
|
71
|
+
}, [onTouchStart]);
|
|
70
72
|
const droppableContext = useMemoObject({
|
|
71
73
|
registerNode,
|
|
72
74
|
deregisterNode,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@os-design/drag-sort",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.48",
|
|
4
4
|
"license": "UNLICENSED",
|
|
5
5
|
"repository": "git@gitlab.com:os-team/libs/os-design.git",
|
|
6
6
|
"type": "module",
|
|
@@ -46,5 +46,5 @@
|
|
|
46
46
|
"react": "19",
|
|
47
47
|
"react-dom": "19"
|
|
48
48
|
},
|
|
49
|
-
"gitHead": "
|
|
49
|
+
"gitHead": "4a7b019591e2ff76adb0452f2a850a35ee785d38"
|
|
50
50
|
}
|
package/src/Droppable.tsx
CHANGED
|
@@ -3,6 +3,7 @@ import React, {
|
|
|
3
3
|
type MouseEvent,
|
|
4
4
|
type RefObject,
|
|
5
5
|
type TouchEvent,
|
|
6
|
+
useCallback,
|
|
6
7
|
useEffect,
|
|
7
8
|
useMemo,
|
|
8
9
|
useRef,
|
|
@@ -101,18 +102,28 @@ const Droppable: React.FC<DroppableProps> = ({
|
|
|
101
102
|
return () => deregisterList(listId);
|
|
102
103
|
}, [deregisterList, registerList]);
|
|
103
104
|
|
|
104
|
-
|
|
105
|
-
const
|
|
105
|
+
/* eslint-disable react-hooks/preserve-manual-memoization */
|
|
106
|
+
const registerNode = useCallback(
|
|
107
|
+
(props: NodeProps) => listRef.current.add(props),
|
|
108
|
+
[]
|
|
109
|
+
);
|
|
110
|
+
const deregisterNode = useCallback((node: ExistingNode) => {
|
|
106
111
|
listRef.current.remove(node);
|
|
107
|
-
};
|
|
112
|
+
}, []);
|
|
108
113
|
|
|
109
114
|
// Handlers that determine whether a user clicks on the node
|
|
110
|
-
const mouseDownHandler = (
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
115
|
+
const mouseDownHandler = useCallback(
|
|
116
|
+
(e: MouseEvent, node: ExistingNode) => {
|
|
117
|
+
onMouseDown(e, listRef.current, node);
|
|
118
|
+
},
|
|
119
|
+
[onMouseDown]
|
|
120
|
+
);
|
|
121
|
+
const touchStartHandler = useCallback(
|
|
122
|
+
(e: TouchEvent, node: ExistingNode) => {
|
|
123
|
+
onTouchStart(e, listRef.current, node);
|
|
124
|
+
},
|
|
125
|
+
[onTouchStart]
|
|
126
|
+
);
|
|
116
127
|
|
|
117
128
|
const droppableContext = useMemoObject({
|
|
118
129
|
registerNode,
|