@react-stately/dnd 3.0.0-alpha.2 → 3.0.0-alpha.3
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/main.js +130 -154
- package/dist/main.js.map +1 -1
- package/dist/module.js +117 -145
- package/dist/module.js.map +1 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +5 -5
package/dist/main.js
CHANGED
|
@@ -1,168 +1,144 @@
|
|
|
1
|
-
var
|
|
2
|
-
useState
|
|
3
|
-
} = require("react");
|
|
1
|
+
var $4zSno$react = require("react");
|
|
4
2
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
function useDraggableCollectionState(props) {
|
|
12
|
-
let [draggingKeys, setDraggingKeys] = useState(new Set());
|
|
13
|
-
|
|
14
|
-
let getKeys = key => {
|
|
15
|
-
// The clicked item is always added to the drag. If it is selected, then all of the
|
|
16
|
-
// other selected items are also dragged. If it is not selected, the only the clicked
|
|
17
|
-
// item is dragged. This matches native macOS behavior.
|
|
18
|
-
let keys = new Set(props.selectionManager.isSelected(key) ? props.selectionManager.selectedKeys : []);
|
|
19
|
-
keys.add(key);
|
|
20
|
-
return keys;
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
return {
|
|
24
|
-
collection: props.collection,
|
|
25
|
-
selectionManager: props.selectionManager,
|
|
26
|
-
|
|
27
|
-
isDragging(key) {
|
|
28
|
-
return draggingKeys.has(key);
|
|
29
|
-
},
|
|
30
|
-
|
|
31
|
-
getKeysForDrag: getKeys,
|
|
32
|
-
|
|
33
|
-
getItems(key) {
|
|
34
|
-
return props.getItems(getKeys(key));
|
|
35
|
-
},
|
|
36
|
-
|
|
37
|
-
renderPreview(key) {
|
|
38
|
-
if (typeof props.renderPreview === 'function') {
|
|
39
|
-
return props.renderPreview(getKeys(key), key);
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
return null;
|
|
43
|
-
},
|
|
44
|
-
|
|
45
|
-
startDrag(key, event) {
|
|
46
|
-
let keys = getKeys(key);
|
|
47
|
-
setDraggingKeys(keys);
|
|
48
|
-
|
|
49
|
-
if (typeof props.onDragStart === 'function') {
|
|
50
|
-
props.onDragStart(_babelRuntimeHelpersExtends({}, event, {
|
|
51
|
-
keys
|
|
52
|
-
}));
|
|
53
|
-
}
|
|
54
|
-
},
|
|
55
|
-
|
|
56
|
-
moveDrag(event) {
|
|
57
|
-
if (typeof props.onDragMove === 'function') {
|
|
58
|
-
props.onDragMove(_babelRuntimeHelpersExtends({}, event, {
|
|
59
|
-
keys: draggingKeys
|
|
60
|
-
}));
|
|
61
|
-
}
|
|
62
|
-
},
|
|
63
|
-
|
|
64
|
-
endDrag(event) {
|
|
65
|
-
if (typeof props.onDragEnd === 'function') {
|
|
66
|
-
props.onDragEnd(_babelRuntimeHelpersExtends({}, event, {
|
|
67
|
-
keys: draggingKeys
|
|
68
|
-
}));
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
setDraggingKeys(new Set());
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
};
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
exports.useDraggableCollectionState = useDraggableCollectionState;
|
|
78
|
-
|
|
79
|
-
function useDroppableCollectionState(props) {
|
|
80
|
-
let [target, setTarget] = useState(null);
|
|
81
|
-
|
|
82
|
-
let getOppositeTarget = target => {
|
|
83
|
-
if (target.dropPosition === 'before') {
|
|
84
|
-
let key = props.collection.getKeyBefore(target.key);
|
|
85
|
-
return key != null ? {
|
|
86
|
-
type: 'item',
|
|
87
|
-
key,
|
|
88
|
-
dropPosition: 'after'
|
|
89
|
-
} : null;
|
|
90
|
-
} else if (target.dropPosition === 'after') {
|
|
91
|
-
let key = props.collection.getKeyAfter(target.key);
|
|
92
|
-
return key != null ? {
|
|
93
|
-
type: 'item',
|
|
94
|
-
key,
|
|
95
|
-
dropPosition: 'before'
|
|
96
|
-
} : null;
|
|
3
|
+
function $parcel$exportWildcard(dest, source) {
|
|
4
|
+
Object.keys(source).forEach(function(key) {
|
|
5
|
+
if (key === 'default' || key === '__esModule' || dest.hasOwnProperty(key)) {
|
|
6
|
+
return;
|
|
97
7
|
}
|
|
98
|
-
};
|
|
99
|
-
|
|
100
|
-
return {
|
|
101
|
-
collection: props.collection,
|
|
102
|
-
selectionManager: props.selectionManager,
|
|
103
|
-
target,
|
|
104
|
-
|
|
105
|
-
setTarget(newTarget) {
|
|
106
|
-
if (this.isDropTarget(newTarget)) {
|
|
107
|
-
return;
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
if (target && typeof props.onDropExit === 'function') {
|
|
111
|
-
props.onDropExit({
|
|
112
|
-
type: 'dropexit',
|
|
113
|
-
x: 0,
|
|
114
|
-
// todo
|
|
115
|
-
y: 0,
|
|
116
|
-
target
|
|
117
|
-
});
|
|
118
|
-
}
|
|
119
8
|
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
// todo
|
|
125
|
-
y: 0,
|
|
126
|
-
target: newTarget
|
|
127
|
-
});
|
|
9
|
+
Object.defineProperty(dest, key, {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
get: function get() {
|
|
12
|
+
return source[key];
|
|
128
13
|
}
|
|
14
|
+
});
|
|
15
|
+
});
|
|
129
16
|
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
17
|
+
return dest;
|
|
18
|
+
}
|
|
19
|
+
function $parcel$export(e, n, v, s) {
|
|
20
|
+
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
|
|
21
|
+
}
|
|
22
|
+
var $97a0ee2d5f702098$exports = {};
|
|
23
|
+
|
|
24
|
+
$parcel$export($97a0ee2d5f702098$exports, "useDraggableCollectionState", () => $97a0ee2d5f702098$export$29efd034f1d79f81);
|
|
25
|
+
|
|
26
|
+
function $97a0ee2d5f702098$export$29efd034f1d79f81(props) {
|
|
27
|
+
let [draggingKeys, setDraggingKeys] = $4zSno$react.useState(new Set());
|
|
28
|
+
let getKeys = (key)=>{
|
|
29
|
+
// The clicked item is always added to the drag. If it is selected, then all of the
|
|
30
|
+
// other selected items are also dragged. If it is not selected, the only the clicked
|
|
31
|
+
// item is dragged. This matches native macOS behavior.
|
|
32
|
+
let keys = new Set(props.selectionManager.isSelected(key) ? props.selectionManager.selectedKeys : []);
|
|
33
|
+
keys.add(key);
|
|
34
|
+
return keys;
|
|
35
|
+
};
|
|
36
|
+
return {
|
|
37
|
+
collection: props.collection,
|
|
38
|
+
selectionManager: props.selectionManager,
|
|
39
|
+
isDragging (key) {
|
|
40
|
+
return draggingKeys.has(key);
|
|
41
|
+
},
|
|
42
|
+
getKeysForDrag: getKeys,
|
|
43
|
+
getItems (key) {
|
|
44
|
+
return props.getItems(getKeys(key));
|
|
45
|
+
},
|
|
46
|
+
renderPreview (key) {
|
|
47
|
+
if (typeof props.renderPreview === 'function') return props.renderPreview(getKeys(key), key);
|
|
48
|
+
return null;
|
|
49
|
+
},
|
|
50
|
+
startDrag (key, event) {
|
|
51
|
+
let keys = getKeys(key);
|
|
52
|
+
setDraggingKeys(keys);
|
|
53
|
+
if (typeof props.onDragStart === 'function') props.onDragStart({
|
|
54
|
+
...event,
|
|
55
|
+
keys: keys
|
|
56
|
+
});
|
|
57
|
+
},
|
|
58
|
+
moveDrag (event) {
|
|
59
|
+
if (typeof props.onDragMove === 'function') props.onDragMove({
|
|
60
|
+
...event,
|
|
61
|
+
keys: draggingKeys
|
|
62
|
+
});
|
|
63
|
+
},
|
|
64
|
+
endDrag (event) {
|
|
65
|
+
if (typeof props.onDragEnd === 'function') props.onDragEnd({
|
|
66
|
+
...event,
|
|
67
|
+
keys: draggingKeys
|
|
68
|
+
});
|
|
69
|
+
setDraggingKeys(new Set());
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
}
|
|
142
73
|
|
|
143
|
-
return false;
|
|
144
|
-
},
|
|
145
74
|
|
|
146
|
-
|
|
147
|
-
|
|
75
|
+
var $493c7e7e2c1a0cd7$exports = {};
|
|
76
|
+
|
|
77
|
+
$parcel$export($493c7e7e2c1a0cd7$exports, "useDroppableCollectionState", () => $493c7e7e2c1a0cd7$export$926850f6ecef79d0);
|
|
78
|
+
|
|
79
|
+
function $493c7e7e2c1a0cd7$export$926850f6ecef79d0(props) {
|
|
80
|
+
let [target1, setTarget] = $4zSno$react.useState(null);
|
|
81
|
+
let getOppositeTarget = (target)=>{
|
|
82
|
+
if (target.dropPosition === 'before') {
|
|
83
|
+
let key = props.collection.getKeyBefore(target.key);
|
|
84
|
+
return key != null ? {
|
|
85
|
+
type: 'item',
|
|
86
|
+
key: key,
|
|
87
|
+
dropPosition: 'after'
|
|
88
|
+
} : null;
|
|
89
|
+
} else if (target.dropPosition === 'after') {
|
|
90
|
+
let key = props.collection.getKeyAfter(target.key);
|
|
91
|
+
return key != null ? {
|
|
92
|
+
type: 'item',
|
|
93
|
+
key: key,
|
|
94
|
+
dropPosition: 'before'
|
|
95
|
+
} : null;
|
|
96
|
+
}
|
|
97
|
+
};
|
|
98
|
+
return {
|
|
99
|
+
collection: props.collection,
|
|
100
|
+
selectionManager: props.selectionManager,
|
|
101
|
+
target: target1,
|
|
102
|
+
setTarget (newTarget) {
|
|
103
|
+
if (this.isDropTarget(newTarget)) return;
|
|
104
|
+
if (target1 && typeof props.onDropExit === 'function') props.onDropExit({
|
|
105
|
+
type: 'dropexit',
|
|
106
|
+
x: 0,
|
|
107
|
+
y: 0,
|
|
108
|
+
target: target1
|
|
109
|
+
});
|
|
110
|
+
if (newTarget && typeof props.onDropEnter === 'function') props.onDropEnter({
|
|
111
|
+
type: 'dropenter',
|
|
112
|
+
x: 0,
|
|
113
|
+
y: 0,
|
|
114
|
+
target: newTarget
|
|
115
|
+
});
|
|
116
|
+
setTarget(newTarget);
|
|
117
|
+
},
|
|
118
|
+
isDropTarget (dropTarget) {
|
|
119
|
+
if ($493c7e7e2c1a0cd7$var$isEqualDropTarget(dropTarget, target1)) return true;
|
|
120
|
+
// Check if the targets point at the same point between two items, one referring before, and the other after.
|
|
121
|
+
if (dropTarget?.type === 'item' && target1?.type === 'item' && dropTarget.key !== target1.key && dropTarget.dropPosition !== target1.dropPosition && dropTarget.dropPosition !== 'on' && target1.dropPosition !== 'on') return $493c7e7e2c1a0cd7$var$isEqualDropTarget(getOppositeTarget(dropTarget), target1) || $493c7e7e2c1a0cd7$var$isEqualDropTarget(dropTarget, getOppositeTarget(target1));
|
|
122
|
+
return false;
|
|
123
|
+
},
|
|
124
|
+
getDropOperation (target, types, allowedOperations) {
|
|
125
|
+
return typeof props.getDropOperation === 'function' ? props.getDropOperation(target, types, allowedOperations) : allowedOperations[0];
|
|
126
|
+
}
|
|
127
|
+
};
|
|
128
|
+
}
|
|
129
|
+
function $493c7e7e2c1a0cd7$var$isEqualDropTarget(a, b) {
|
|
130
|
+
if (!a) return !b;
|
|
131
|
+
switch(a.type){
|
|
132
|
+
case 'root':
|
|
133
|
+
return b?.type === 'root';
|
|
134
|
+
case 'item':
|
|
135
|
+
return b?.type === 'item' && b?.key === a.key && b?.dropPosition === a.dropPosition;
|
|
148
136
|
}
|
|
149
|
-
|
|
150
|
-
};
|
|
151
137
|
}
|
|
152
138
|
|
|
153
|
-
exports.useDroppableCollectionState = useDroppableCollectionState;
|
|
154
139
|
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
return !b;
|
|
158
|
-
}
|
|
140
|
+
$parcel$exportWildcard(module.exports, $97a0ee2d5f702098$exports);
|
|
141
|
+
$parcel$exportWildcard(module.exports, $493c7e7e2c1a0cd7$exports);
|
|
159
142
|
|
|
160
|
-
switch (a.type) {
|
|
161
|
-
case 'root':
|
|
162
|
-
return (b == null ? void 0 : b.type) === 'root';
|
|
163
143
|
|
|
164
|
-
case 'item':
|
|
165
|
-
return (b == null ? void 0 : b.type) === 'item' && (b == null ? void 0 : b.key) === a.key && (b == null ? void 0 : b.dropPosition) === a.dropPosition;
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
144
|
//# sourceMappingURL=main.js.map
|
package/dist/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"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","sources":["./node_modules/@parcel/scope-hoisting/lib/helpers.js","./packages/@react-stately/dnd/src/useDraggableCollectionState.ts","./packages/@react-stately/dnd/src/useDroppableCollectionState.ts"],"sourcesContent":["function $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n\nfunction $parcel$defineInteropFlag(a) {\n Object.defineProperty(a, '__esModule', {value: true});\n}\n\nfunction $parcel$exportWildcard(dest, source) {\n Object.keys(source).forEach(function(key) {\n if (key === 'default' || key === '__esModule') {\n return;\n }\n\n Object.defineProperty(dest, key, {\n enumerable: true,\n get: function get() {\n return source[key];\n },\n });\n });\n\n return dest;\n}\n\nfunction $parcel$missingModule(name) {\n var err = new Error(\"Cannot find module '\" + name + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n}\n\nvar $parcel$global =\n typeof globalThis !== 'undefined'\n ? globalThis\n : typeof self !== 'undefined'\n ? self\n : typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {Collection, DragEndEvent, DraggableCollectionProps, DragItem, DragMoveEvent, DragStartEvent, Node} from '@react-types/shared';\nimport {Key, useState} from 'react';\nimport {MultipleSelectionManager} from '@react-stately/selection';\n\ninterface DraggableCollectionOptions extends DraggableCollectionProps {\n collection: Collection<Node<unknown>>,\n selectionManager: MultipleSelectionManager\n}\n\nexport interface DraggableCollectionState {\n collection: Collection<Node<unknown>>,\n selectionManager: MultipleSelectionManager,\n isDragging(key: Key): boolean,\n getKeysForDrag(key: Key): Set<Key>,\n getItems(key: Key): DragItem[],\n renderPreview(key: Key): JSX.Element,\n startDrag(key: Key, event: DragStartEvent): void,\n moveDrag(event: DragMoveEvent): void,\n endDrag(event: DragEndEvent): void\n}\n\nexport function useDraggableCollectionState(props: DraggableCollectionOptions): DraggableCollectionState {\n let [draggingKeys, setDraggingKeys] = useState(new Set<Key>());\n let getKeys = (key: Key) => {\n // The clicked item is always added to the drag. If it is selected, then all of the\n // other selected items are also dragged. If it is not selected, the only the clicked\n // item is dragged. This matches native macOS behavior.\n let keys = new Set(\n props.selectionManager.isSelected(key)\n ? props.selectionManager.selectedKeys\n : []\n );\n\n keys.add(key);\n return keys;\n };\n\n return {\n collection: props.collection,\n selectionManager: props.selectionManager,\n isDragging(key) {\n return draggingKeys.has(key);\n },\n getKeysForDrag: getKeys,\n getItems(key) {\n return props.getItems(getKeys(key));\n },\n renderPreview(key) {\n if (typeof props.renderPreview === 'function') {\n return props.renderPreview(getKeys(key), key);\n }\n\n return null;\n },\n startDrag(key, event) {\n let keys = getKeys(key);\n setDraggingKeys(keys);\n\n if (typeof props.onDragStart === 'function') {\n props.onDragStart({\n ...event,\n keys\n });\n }\n },\n moveDrag(event) {\n if (typeof props.onDragMove === 'function') {\n props.onDragMove({\n ...event,\n keys: draggingKeys\n });\n }\n },\n endDrag(event) {\n if (typeof props.onDragEnd === 'function') {\n props.onDragEnd({\n ...event,\n keys: draggingKeys\n });\n }\n\n setDraggingKeys(new Set());\n }\n };\n}\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {Collection, DragTypes, DropOperation, DroppableCollectionProps, DropTarget, ItemDropTarget, Node} from '@react-types/shared';\nimport {MultipleSelectionManager} from '@react-stately/selection';\nimport {useState} from 'react';\n\ninterface DroppableCollectionStateOptions extends DroppableCollectionProps {\n collection: Collection<Node<unknown>>,\n selectionManager: MultipleSelectionManager\n}\n\nexport interface DroppableCollectionState {\n collection: Collection<Node<unknown>>,\n selectionManager: MultipleSelectionManager,\n target: DropTarget,\n setTarget(target: DropTarget): void,\n isDropTarget(target: DropTarget): boolean,\n getDropOperation(target: DropTarget, types: DragTypes, allowedOperations: DropOperation[]): DropOperation\n}\n\nexport function useDroppableCollectionState(props: DroppableCollectionStateOptions): DroppableCollectionState {\n let [target, setTarget] = useState<DropTarget>(null);\n\n let getOppositeTarget = (target: ItemDropTarget): ItemDropTarget => {\n if (target.dropPosition === 'before') {\n let key = props.collection.getKeyBefore(target.key);\n return key != null ? {type: 'item', key, dropPosition: 'after'} : null;\n } else if (target.dropPosition === 'after') {\n let key = props.collection.getKeyAfter(target.key);\n return key != null ? {type: 'item', key, dropPosition: 'before'} : null;\n }\n };\n\n return {\n collection: props.collection,\n selectionManager: props.selectionManager,\n target,\n setTarget(newTarget) {\n if (this.isDropTarget(newTarget)) {\n return;\n }\n\n if (target && typeof props.onDropExit === 'function') {\n props.onDropExit({\n type: 'dropexit',\n x: 0, // todo\n y: 0,\n target\n });\n }\n\n if (newTarget && typeof props.onDropEnter === 'function') {\n props.onDropEnter({\n type: 'dropenter',\n x: 0, // todo\n y: 0,\n target: newTarget\n });\n }\n\n setTarget(newTarget);\n },\n isDropTarget(dropTarget) {\n if (isEqualDropTarget(dropTarget, target)) {\n return true;\n }\n\n // Check if the targets point at the same point between two items, one referring before, and the other after.\n if (\n dropTarget?.type === 'item' &&\n target?.type === 'item' &&\n dropTarget.key !== target.key &&\n dropTarget.dropPosition !== target.dropPosition &&\n dropTarget.dropPosition !== 'on' &&\n target.dropPosition !== 'on'\n ) {\n return isEqualDropTarget(getOppositeTarget(dropTarget), target) ||\n isEqualDropTarget(dropTarget, getOppositeTarget(target));\n }\n\n return false;\n },\n getDropOperation(target, types, allowedOperations) {\n return typeof props.getDropOperation === 'function'\n ? props.getDropOperation(target, types, allowedOperations)\n : allowedOperations[0];\n }\n };\n}\n\nfunction isEqualDropTarget(a: DropTarget, b: DropTarget) {\n if (!a) {\n return !b;\n }\n\n switch (a.type) {\n case 'root':\n return b?.type === 'root';\n case 'item':\n return b?.type === 'item' && b?.key === a.key && b?.dropPosition === a.dropPosition;\n }\n}\n"],"names":["$parcel$interopDefault","a","__esModule","default","useDraggableCollectionState","props","draggingKeys","setDraggingKeys","useState","Set","getKeys","key","keys","selectionManager","isSelected","selectedKeys","add","collection","isDragging","has","getKeysForDrag","getItems","renderPreview","startDrag","event","onDragStart","moveDrag","onDragMove","endDrag","onDragEnd","useDroppableCollectionState","target","setTarget","getOppositeTarget","dropPosition","getKeyBefore","type","getKeyAfter","newTarget","isDropTarget","onDropExit","x","y","onDropEnter","dropTarget","isEqualDropTarget","getDropOperation","types","allowedOperations","b"],"version":3,"file":"main.js.map"}
|
|
1
|
+
{"mappings":"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","sources":["packages/@react-stately/dnd/src/index.ts","packages/@react-stately/dnd/src/useDraggableCollectionState.ts","packages/@react-stately/dnd/src/useDroppableCollectionState.ts"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nexport * from './useDraggableCollectionState';\nexport * from './useDroppableCollectionState';\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {Collection, DragEndEvent, DraggableCollectionProps, DragItem, DragMoveEvent, DragStartEvent, Node} from '@react-types/shared';\nimport {Key, useState} from 'react';\nimport {MultipleSelectionManager} from '@react-stately/selection';\n\ninterface DraggableCollectionOptions extends DraggableCollectionProps {\n collection: Collection<Node<unknown>>,\n selectionManager: MultipleSelectionManager\n}\n\nexport interface DraggableCollectionState {\n collection: Collection<Node<unknown>>,\n selectionManager: MultipleSelectionManager,\n isDragging(key: Key): boolean,\n getKeysForDrag(key: Key): Set<Key>,\n getItems(key: Key): DragItem[],\n renderPreview(key: Key): JSX.Element,\n startDrag(key: Key, event: DragStartEvent): void,\n moveDrag(event: DragMoveEvent): void,\n endDrag(event: DragEndEvent): void\n}\n\nexport function useDraggableCollectionState(props: DraggableCollectionOptions): DraggableCollectionState {\n let [draggingKeys, setDraggingKeys] = useState(new Set<Key>());\n let getKeys = (key: Key) => {\n // The clicked item is always added to the drag. If it is selected, then all of the\n // other selected items are also dragged. If it is not selected, the only the clicked\n // item is dragged. This matches native macOS behavior.\n let keys = new Set(\n props.selectionManager.isSelected(key)\n ? props.selectionManager.selectedKeys\n : []\n );\n\n keys.add(key);\n return keys;\n };\n\n return {\n collection: props.collection,\n selectionManager: props.selectionManager,\n isDragging(key) {\n return draggingKeys.has(key);\n },\n getKeysForDrag: getKeys,\n getItems(key) {\n return props.getItems(getKeys(key));\n },\n renderPreview(key) {\n if (typeof props.renderPreview === 'function') {\n return props.renderPreview(getKeys(key), key);\n }\n\n return null;\n },\n startDrag(key, event) {\n let keys = getKeys(key);\n setDraggingKeys(keys);\n\n if (typeof props.onDragStart === 'function') {\n props.onDragStart({\n ...event,\n keys\n });\n }\n },\n moveDrag(event) {\n if (typeof props.onDragMove === 'function') {\n props.onDragMove({\n ...event,\n keys: draggingKeys\n });\n }\n },\n endDrag(event) {\n if (typeof props.onDragEnd === 'function') {\n props.onDragEnd({\n ...event,\n keys: draggingKeys\n });\n }\n\n setDraggingKeys(new Set());\n }\n };\n}\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {Collection, DragTypes, DropOperation, DroppableCollectionProps, DropTarget, ItemDropTarget, Node} from '@react-types/shared';\nimport {MultipleSelectionManager} from '@react-stately/selection';\nimport {useState} from 'react';\n\ninterface DroppableCollectionStateOptions extends DroppableCollectionProps {\n collection: Collection<Node<unknown>>,\n selectionManager: MultipleSelectionManager\n}\n\nexport interface DroppableCollectionState {\n collection: Collection<Node<unknown>>,\n selectionManager: MultipleSelectionManager,\n target: DropTarget,\n setTarget(target: DropTarget): void,\n isDropTarget(target: DropTarget): boolean,\n getDropOperation(target: DropTarget, types: DragTypes, allowedOperations: DropOperation[]): DropOperation\n}\n\nexport function useDroppableCollectionState(props: DroppableCollectionStateOptions): DroppableCollectionState {\n let [target, setTarget] = useState<DropTarget>(null);\n\n let getOppositeTarget = (target: ItemDropTarget): ItemDropTarget => {\n if (target.dropPosition === 'before') {\n let key = props.collection.getKeyBefore(target.key);\n return key != null ? {type: 'item', key, dropPosition: 'after'} : null;\n } else if (target.dropPosition === 'after') {\n let key = props.collection.getKeyAfter(target.key);\n return key != null ? {type: 'item', key, dropPosition: 'before'} : null;\n }\n };\n\n return {\n collection: props.collection,\n selectionManager: props.selectionManager,\n target,\n setTarget(newTarget) {\n if (this.isDropTarget(newTarget)) {\n return;\n }\n\n if (target && typeof props.onDropExit === 'function') {\n props.onDropExit({\n type: 'dropexit',\n x: 0, // todo\n y: 0,\n target\n });\n }\n\n if (newTarget && typeof props.onDropEnter === 'function') {\n props.onDropEnter({\n type: 'dropenter',\n x: 0, // todo\n y: 0,\n target: newTarget\n });\n }\n\n setTarget(newTarget);\n },\n isDropTarget(dropTarget) {\n if (isEqualDropTarget(dropTarget, target)) {\n return true;\n }\n\n // Check if the targets point at the same point between two items, one referring before, and the other after.\n if (\n dropTarget?.type === 'item' &&\n target?.type === 'item' &&\n dropTarget.key !== target.key &&\n dropTarget.dropPosition !== target.dropPosition &&\n dropTarget.dropPosition !== 'on' &&\n target.dropPosition !== 'on'\n ) {\n return isEqualDropTarget(getOppositeTarget(dropTarget), target) ||\n isEqualDropTarget(dropTarget, getOppositeTarget(target));\n }\n\n return false;\n },\n getDropOperation(target, types, allowedOperations) {\n return typeof props.getDropOperation === 'function'\n ? props.getDropOperation(target, types, allowedOperations)\n : allowedOperations[0];\n }\n };\n}\n\nfunction isEqualDropTarget(a: DropTarget, b: DropTarget) {\n if (!a) {\n return !b;\n }\n\n switch (a.type) {\n case 'root':\n return b?.type === 'root';\n case 'item':\n return b?.type === 'item' && b?.key === a.key && b?.dropPosition === a.dropPosition;\n }\n}\n"],"names":[],"version":3,"file":"main.js.map"}
|
package/dist/module.js
CHANGED
|
@@ -1,155 +1,127 @@
|
|
|
1
|
-
import { useState
|
|
2
|
-
import _babelRuntimeHelpersEsmExtends from "@babel/runtime/helpers/esm/extends";
|
|
3
|
-
export function useDraggableCollectionState(props) {
|
|
4
|
-
let [draggingKeys, setDraggingKeys] = useState(new Set());
|
|
1
|
+
import {useState as $gjNPF$useState} from "react";
|
|
5
2
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
keys: draggingKeys
|
|
60
|
-
}));
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
setDraggingKeys(new Set());
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
};
|
|
3
|
+
function $parcel$export(e, n, v, s) {
|
|
4
|
+
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
|
|
5
|
+
}
|
|
6
|
+
var $cfde1c3ca5456981$exports = {};
|
|
7
|
+
|
|
8
|
+
$parcel$export($cfde1c3ca5456981$exports, "useDraggableCollectionState", () => $cfde1c3ca5456981$export$29efd034f1d79f81);
|
|
9
|
+
|
|
10
|
+
function $cfde1c3ca5456981$export$29efd034f1d79f81(props) {
|
|
11
|
+
let [draggingKeys, setDraggingKeys] = $gjNPF$useState(new Set());
|
|
12
|
+
let getKeys = (key)=>{
|
|
13
|
+
// The clicked item is always added to the drag. If it is selected, then all of the
|
|
14
|
+
// other selected items are also dragged. If it is not selected, the only the clicked
|
|
15
|
+
// item is dragged. This matches native macOS behavior.
|
|
16
|
+
let keys = new Set(props.selectionManager.isSelected(key) ? props.selectionManager.selectedKeys : []);
|
|
17
|
+
keys.add(key);
|
|
18
|
+
return keys;
|
|
19
|
+
};
|
|
20
|
+
return {
|
|
21
|
+
collection: props.collection,
|
|
22
|
+
selectionManager: props.selectionManager,
|
|
23
|
+
isDragging (key) {
|
|
24
|
+
return draggingKeys.has(key);
|
|
25
|
+
},
|
|
26
|
+
getKeysForDrag: getKeys,
|
|
27
|
+
getItems (key) {
|
|
28
|
+
return props.getItems(getKeys(key));
|
|
29
|
+
},
|
|
30
|
+
renderPreview (key) {
|
|
31
|
+
if (typeof props.renderPreview === 'function') return props.renderPreview(getKeys(key), key);
|
|
32
|
+
return null;
|
|
33
|
+
},
|
|
34
|
+
startDrag (key, event) {
|
|
35
|
+
let keys = getKeys(key);
|
|
36
|
+
setDraggingKeys(keys);
|
|
37
|
+
if (typeof props.onDragStart === 'function') props.onDragStart({
|
|
38
|
+
...event,
|
|
39
|
+
keys: keys
|
|
40
|
+
});
|
|
41
|
+
},
|
|
42
|
+
moveDrag (event) {
|
|
43
|
+
if (typeof props.onDragMove === 'function') props.onDragMove({
|
|
44
|
+
...event,
|
|
45
|
+
keys: draggingKeys
|
|
46
|
+
});
|
|
47
|
+
},
|
|
48
|
+
endDrag (event) {
|
|
49
|
+
if (typeof props.onDragEnd === 'function') props.onDragEnd({
|
|
50
|
+
...event,
|
|
51
|
+
keys: draggingKeys
|
|
52
|
+
});
|
|
53
|
+
setDraggingKeys(new Set());
|
|
54
|
+
}
|
|
55
|
+
};
|
|
67
56
|
}
|
|
68
|
-
export function useDroppableCollectionState(props) {
|
|
69
|
-
let [target, setTarget] = useState(null);
|
|
70
|
-
|
|
71
|
-
let getOppositeTarget = target => {
|
|
72
|
-
if (target.dropPosition === 'before') {
|
|
73
|
-
let key = props.collection.getKeyBefore(target.key);
|
|
74
|
-
return key != null ? {
|
|
75
|
-
type: 'item',
|
|
76
|
-
key,
|
|
77
|
-
dropPosition: 'after'
|
|
78
|
-
} : null;
|
|
79
|
-
} else if (target.dropPosition === 'after') {
|
|
80
|
-
let key = props.collection.getKeyAfter(target.key);
|
|
81
|
-
return key != null ? {
|
|
82
|
-
type: 'item',
|
|
83
|
-
key,
|
|
84
|
-
dropPosition: 'before'
|
|
85
|
-
} : null;
|
|
86
|
-
}
|
|
87
|
-
};
|
|
88
|
-
|
|
89
|
-
return {
|
|
90
|
-
collection: props.collection,
|
|
91
|
-
selectionManager: props.selectionManager,
|
|
92
|
-
target,
|
|
93
|
-
|
|
94
|
-
setTarget(newTarget) {
|
|
95
|
-
if (this.isDropTarget(newTarget)) {
|
|
96
|
-
return;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
if (target && typeof props.onDropExit === 'function') {
|
|
100
|
-
props.onDropExit({
|
|
101
|
-
type: 'dropexit',
|
|
102
|
-
x: 0,
|
|
103
|
-
// todo
|
|
104
|
-
y: 0,
|
|
105
|
-
target
|
|
106
|
-
});
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
if (newTarget && typeof props.onDropEnter === 'function') {
|
|
110
|
-
props.onDropEnter({
|
|
111
|
-
type: 'dropenter',
|
|
112
|
-
x: 0,
|
|
113
|
-
// todo
|
|
114
|
-
y: 0,
|
|
115
|
-
target: newTarget
|
|
116
|
-
});
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
setTarget(newTarget);
|
|
120
|
-
},
|
|
121
|
-
|
|
122
|
-
isDropTarget(dropTarget) {
|
|
123
|
-
if ($dd31abc8396c596698a2b05e189ba$var$isEqualDropTarget(dropTarget, target)) {
|
|
124
|
-
return true;
|
|
125
|
-
} // Check if the targets point at the same point between two items, one referring before, and the other after.
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
if ((dropTarget == null ? void 0 : dropTarget.type) === 'item' && (target == null ? void 0 : target.type) === 'item' && dropTarget.key !== target.key && dropTarget.dropPosition !== target.dropPosition && dropTarget.dropPosition !== 'on' && target.dropPosition !== 'on') {
|
|
129
|
-
return $dd31abc8396c596698a2b05e189ba$var$isEqualDropTarget(getOppositeTarget(dropTarget), target) || $dd31abc8396c596698a2b05e189ba$var$isEqualDropTarget(dropTarget, getOppositeTarget(target));
|
|
130
|
-
}
|
|
131
57
|
|
|
132
|
-
return false;
|
|
133
|
-
},
|
|
134
58
|
|
|
135
|
-
|
|
136
|
-
|
|
59
|
+
var $dabc5ba65f76be17$exports = {};
|
|
60
|
+
|
|
61
|
+
$parcel$export($dabc5ba65f76be17$exports, "useDroppableCollectionState", () => $dabc5ba65f76be17$export$926850f6ecef79d0);
|
|
62
|
+
|
|
63
|
+
function $dabc5ba65f76be17$export$926850f6ecef79d0(props) {
|
|
64
|
+
let [target1, setTarget] = $gjNPF$useState(null);
|
|
65
|
+
let getOppositeTarget = (target)=>{
|
|
66
|
+
if (target.dropPosition === 'before') {
|
|
67
|
+
let key = props.collection.getKeyBefore(target.key);
|
|
68
|
+
return key != null ? {
|
|
69
|
+
type: 'item',
|
|
70
|
+
key: key,
|
|
71
|
+
dropPosition: 'after'
|
|
72
|
+
} : null;
|
|
73
|
+
} else if (target.dropPosition === 'after') {
|
|
74
|
+
let key = props.collection.getKeyAfter(target.key);
|
|
75
|
+
return key != null ? {
|
|
76
|
+
type: 'item',
|
|
77
|
+
key: key,
|
|
78
|
+
dropPosition: 'before'
|
|
79
|
+
} : null;
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
return {
|
|
83
|
+
collection: props.collection,
|
|
84
|
+
selectionManager: props.selectionManager,
|
|
85
|
+
target: target1,
|
|
86
|
+
setTarget (newTarget) {
|
|
87
|
+
if (this.isDropTarget(newTarget)) return;
|
|
88
|
+
if (target1 && typeof props.onDropExit === 'function') props.onDropExit({
|
|
89
|
+
type: 'dropexit',
|
|
90
|
+
x: 0,
|
|
91
|
+
y: 0,
|
|
92
|
+
target: target1
|
|
93
|
+
});
|
|
94
|
+
if (newTarget && typeof props.onDropEnter === 'function') props.onDropEnter({
|
|
95
|
+
type: 'dropenter',
|
|
96
|
+
x: 0,
|
|
97
|
+
y: 0,
|
|
98
|
+
target: newTarget
|
|
99
|
+
});
|
|
100
|
+
setTarget(newTarget);
|
|
101
|
+
},
|
|
102
|
+
isDropTarget (dropTarget) {
|
|
103
|
+
if ($dabc5ba65f76be17$var$isEqualDropTarget(dropTarget, target1)) return true;
|
|
104
|
+
// Check if the targets point at the same point between two items, one referring before, and the other after.
|
|
105
|
+
if (dropTarget?.type === 'item' && target1?.type === 'item' && dropTarget.key !== target1.key && dropTarget.dropPosition !== target1.dropPosition && dropTarget.dropPosition !== 'on' && target1.dropPosition !== 'on') return $dabc5ba65f76be17$var$isEqualDropTarget(getOppositeTarget(dropTarget), target1) || $dabc5ba65f76be17$var$isEqualDropTarget(dropTarget, getOppositeTarget(target1));
|
|
106
|
+
return false;
|
|
107
|
+
},
|
|
108
|
+
getDropOperation (target, types, allowedOperations) {
|
|
109
|
+
return typeof props.getDropOperation === 'function' ? props.getDropOperation(target, types, allowedOperations) : allowedOperations[0];
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
function $dabc5ba65f76be17$var$isEqualDropTarget(a, b) {
|
|
114
|
+
if (!a) return !b;
|
|
115
|
+
switch(a.type){
|
|
116
|
+
case 'root':
|
|
117
|
+
return b?.type === 'root';
|
|
118
|
+
case 'item':
|
|
119
|
+
return b?.type === 'item' && b?.key === a.key && b?.dropPosition === a.dropPosition;
|
|
137
120
|
}
|
|
138
|
-
|
|
139
|
-
};
|
|
140
121
|
}
|
|
141
122
|
|
|
142
|
-
function $dd31abc8396c596698a2b05e189ba$var$isEqualDropTarget(a, b) {
|
|
143
|
-
if (!a) {
|
|
144
|
-
return !b;
|
|
145
|
-
}
|
|
146
123
|
|
|
147
|
-
switch (a.type) {
|
|
148
|
-
case 'root':
|
|
149
|
-
return (b == null ? void 0 : b.type) === 'root';
|
|
150
124
|
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
}
|
|
154
|
-
}
|
|
125
|
+
|
|
126
|
+
export {$cfde1c3ca5456981$export$29efd034f1d79f81 as useDraggableCollectionState, $dabc5ba65f76be17$export$926850f6ecef79d0 as useDroppableCollectionState};
|
|
155
127
|
//# sourceMappingURL=module.js.map
|
package/dist/module.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"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","sources":["./packages/@react-stately/dnd/src/useDraggableCollectionState.ts","./packages/@react-stately/dnd/src/useDroppableCollectionState.ts"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {Collection, DragEndEvent, DraggableCollectionProps, DragItem, DragMoveEvent, DragStartEvent, Node} from '@react-types/shared';\nimport {Key, useState} from 'react';\nimport {MultipleSelectionManager} from '@react-stately/selection';\n\ninterface DraggableCollectionOptions extends DraggableCollectionProps {\n collection: Collection<Node<unknown>>,\n selectionManager: MultipleSelectionManager\n}\n\nexport interface DraggableCollectionState {\n collection: Collection<Node<unknown>>,\n selectionManager: MultipleSelectionManager,\n isDragging(key: Key): boolean,\n getKeysForDrag(key: Key): Set<Key>,\n getItems(key: Key): DragItem[],\n renderPreview(key: Key): JSX.Element,\n startDrag(key: Key, event: DragStartEvent): void,\n moveDrag(event: DragMoveEvent): void,\n endDrag(event: DragEndEvent): void\n}\n\nexport function useDraggableCollectionState(props: DraggableCollectionOptions): DraggableCollectionState {\n let [draggingKeys, setDraggingKeys] = useState(new Set<Key>());\n let getKeys = (key: Key) => {\n // The clicked item is always added to the drag. If it is selected, then all of the\n // other selected items are also dragged. If it is not selected, the only the clicked\n // item is dragged. This matches native macOS behavior.\n let keys = new Set(\n props.selectionManager.isSelected(key)\n ? props.selectionManager.selectedKeys\n : []\n );\n\n keys.add(key);\n return keys;\n };\n\n return {\n collection: props.collection,\n selectionManager: props.selectionManager,\n isDragging(key) {\n return draggingKeys.has(key);\n },\n getKeysForDrag: getKeys,\n getItems(key) {\n return props.getItems(getKeys(key));\n },\n renderPreview(key) {\n if (typeof props.renderPreview === 'function') {\n return props.renderPreview(getKeys(key), key);\n }\n\n return null;\n },\n startDrag(key, event) {\n let keys = getKeys(key);\n setDraggingKeys(keys);\n\n if (typeof props.onDragStart === 'function') {\n props.onDragStart({\n ...event,\n keys\n });\n }\n },\n moveDrag(event) {\n if (typeof props.onDragMove === 'function') {\n props.onDragMove({\n ...event,\n keys: draggingKeys\n });\n }\n },\n endDrag(event) {\n if (typeof props.onDragEnd === 'function') {\n props.onDragEnd({\n ...event,\n keys: draggingKeys\n });\n }\n\n setDraggingKeys(new Set());\n }\n };\n}\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {Collection, DragTypes, DropOperation, DroppableCollectionProps, DropTarget, ItemDropTarget, Node} from '@react-types/shared';\nimport {MultipleSelectionManager} from '@react-stately/selection';\nimport {useState} from 'react';\n\ninterface DroppableCollectionStateOptions extends DroppableCollectionProps {\n collection: Collection<Node<unknown>>,\n selectionManager: MultipleSelectionManager\n}\n\nexport interface DroppableCollectionState {\n collection: Collection<Node<unknown>>,\n selectionManager: MultipleSelectionManager,\n target: DropTarget,\n setTarget(target: DropTarget): void,\n isDropTarget(target: DropTarget): boolean,\n getDropOperation(target: DropTarget, types: DragTypes, allowedOperations: DropOperation[]): DropOperation\n}\n\nexport function useDroppableCollectionState(props: DroppableCollectionStateOptions): DroppableCollectionState {\n let [target, setTarget] = useState<DropTarget>(null);\n\n let getOppositeTarget = (target: ItemDropTarget): ItemDropTarget => {\n if (target.dropPosition === 'before') {\n let key = props.collection.getKeyBefore(target.key);\n return key != null ? {type: 'item', key, dropPosition: 'after'} : null;\n } else if (target.dropPosition === 'after') {\n let key = props.collection.getKeyAfter(target.key);\n return key != null ? {type: 'item', key, dropPosition: 'before'} : null;\n }\n };\n\n return {\n collection: props.collection,\n selectionManager: props.selectionManager,\n target,\n setTarget(newTarget) {\n if (this.isDropTarget(newTarget)) {\n return;\n }\n\n if (target && typeof props.onDropExit === 'function') {\n props.onDropExit({\n type: 'dropexit',\n x: 0, // todo\n y: 0,\n target\n });\n }\n\n if (newTarget && typeof props.onDropEnter === 'function') {\n props.onDropEnter({\n type: 'dropenter',\n x: 0, // todo\n y: 0,\n target: newTarget\n });\n }\n\n setTarget(newTarget);\n },\n isDropTarget(dropTarget) {\n if (isEqualDropTarget(dropTarget, target)) {\n return true;\n }\n\n // Check if the targets point at the same point between two items, one referring before, and the other after.\n if (\n dropTarget?.type === 'item' &&\n target?.type === 'item' &&\n dropTarget.key !== target.key &&\n dropTarget.dropPosition !== target.dropPosition &&\n dropTarget.dropPosition !== 'on' &&\n target.dropPosition !== 'on'\n ) {\n return isEqualDropTarget(getOppositeTarget(dropTarget), target) ||\n isEqualDropTarget(dropTarget, getOppositeTarget(target));\n }\n\n return false;\n },\n getDropOperation(target, types, allowedOperations) {\n return typeof props.getDropOperation === 'function'\n ? props.getDropOperation(target, types, allowedOperations)\n : allowedOperations[0];\n }\n };\n}\n\nfunction isEqualDropTarget(a: DropTarget, b: DropTarget) {\n if (!a) {\n return !b;\n }\n\n switch (a.type) {\n case 'root':\n return b?.type === 'root';\n case 'item':\n return b?.type === 'item' && b?.key === a.key && b?.dropPosition === a.dropPosition;\n }\n}\n"],"names":["useDraggableCollectionState","props","draggingKeys","setDraggingKeys","useState","Set","getKeys","key","keys","selectionManager","isSelected","selectedKeys","add","collection","isDragging","has","getKeysForDrag","getItems","renderPreview","startDrag","event","onDragStart","moveDrag","onDragMove","endDrag","onDragEnd","useDroppableCollectionState","target","setTarget","getOppositeTarget","dropPosition","getKeyBefore","type","getKeyAfter","newTarget","isDropTarget","onDropExit","x","y","onDropEnter","dropTarget","isEqualDropTarget","getDropOperation","types","allowedOperations","a","b"],"version":3,"file":"module.js.map"}
|
|
1
|
+
{"mappings":"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","sources":["packages/@react-stately/dnd/src/index.ts","packages/@react-stately/dnd/src/useDraggableCollectionState.ts","packages/@react-stately/dnd/src/useDroppableCollectionState.ts"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nexport * from './useDraggableCollectionState';\nexport * from './useDroppableCollectionState';\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {Collection, DragEndEvent, DraggableCollectionProps, DragItem, DragMoveEvent, DragStartEvent, Node} from '@react-types/shared';\nimport {Key, useState} from 'react';\nimport {MultipleSelectionManager} from '@react-stately/selection';\n\ninterface DraggableCollectionOptions extends DraggableCollectionProps {\n collection: Collection<Node<unknown>>,\n selectionManager: MultipleSelectionManager\n}\n\nexport interface DraggableCollectionState {\n collection: Collection<Node<unknown>>,\n selectionManager: MultipleSelectionManager,\n isDragging(key: Key): boolean,\n getKeysForDrag(key: Key): Set<Key>,\n getItems(key: Key): DragItem[],\n renderPreview(key: Key): JSX.Element,\n startDrag(key: Key, event: DragStartEvent): void,\n moveDrag(event: DragMoveEvent): void,\n endDrag(event: DragEndEvent): void\n}\n\nexport function useDraggableCollectionState(props: DraggableCollectionOptions): DraggableCollectionState {\n let [draggingKeys, setDraggingKeys] = useState(new Set<Key>());\n let getKeys = (key: Key) => {\n // The clicked item is always added to the drag. If it is selected, then all of the\n // other selected items are also dragged. If it is not selected, the only the clicked\n // item is dragged. This matches native macOS behavior.\n let keys = new Set(\n props.selectionManager.isSelected(key)\n ? props.selectionManager.selectedKeys\n : []\n );\n\n keys.add(key);\n return keys;\n };\n\n return {\n collection: props.collection,\n selectionManager: props.selectionManager,\n isDragging(key) {\n return draggingKeys.has(key);\n },\n getKeysForDrag: getKeys,\n getItems(key) {\n return props.getItems(getKeys(key));\n },\n renderPreview(key) {\n if (typeof props.renderPreview === 'function') {\n return props.renderPreview(getKeys(key), key);\n }\n\n return null;\n },\n startDrag(key, event) {\n let keys = getKeys(key);\n setDraggingKeys(keys);\n\n if (typeof props.onDragStart === 'function') {\n props.onDragStart({\n ...event,\n keys\n });\n }\n },\n moveDrag(event) {\n if (typeof props.onDragMove === 'function') {\n props.onDragMove({\n ...event,\n keys: draggingKeys\n });\n }\n },\n endDrag(event) {\n if (typeof props.onDragEnd === 'function') {\n props.onDragEnd({\n ...event,\n keys: draggingKeys\n });\n }\n\n setDraggingKeys(new Set());\n }\n };\n}\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {Collection, DragTypes, DropOperation, DroppableCollectionProps, DropTarget, ItemDropTarget, Node} from '@react-types/shared';\nimport {MultipleSelectionManager} from '@react-stately/selection';\nimport {useState} from 'react';\n\ninterface DroppableCollectionStateOptions extends DroppableCollectionProps {\n collection: Collection<Node<unknown>>,\n selectionManager: MultipleSelectionManager\n}\n\nexport interface DroppableCollectionState {\n collection: Collection<Node<unknown>>,\n selectionManager: MultipleSelectionManager,\n target: DropTarget,\n setTarget(target: DropTarget): void,\n isDropTarget(target: DropTarget): boolean,\n getDropOperation(target: DropTarget, types: DragTypes, allowedOperations: DropOperation[]): DropOperation\n}\n\nexport function useDroppableCollectionState(props: DroppableCollectionStateOptions): DroppableCollectionState {\n let [target, setTarget] = useState<DropTarget>(null);\n\n let getOppositeTarget = (target: ItemDropTarget): ItemDropTarget => {\n if (target.dropPosition === 'before') {\n let key = props.collection.getKeyBefore(target.key);\n return key != null ? {type: 'item', key, dropPosition: 'after'} : null;\n } else if (target.dropPosition === 'after') {\n let key = props.collection.getKeyAfter(target.key);\n return key != null ? {type: 'item', key, dropPosition: 'before'} : null;\n }\n };\n\n return {\n collection: props.collection,\n selectionManager: props.selectionManager,\n target,\n setTarget(newTarget) {\n if (this.isDropTarget(newTarget)) {\n return;\n }\n\n if (target && typeof props.onDropExit === 'function') {\n props.onDropExit({\n type: 'dropexit',\n x: 0, // todo\n y: 0,\n target\n });\n }\n\n if (newTarget && typeof props.onDropEnter === 'function') {\n props.onDropEnter({\n type: 'dropenter',\n x: 0, // todo\n y: 0,\n target: newTarget\n });\n }\n\n setTarget(newTarget);\n },\n isDropTarget(dropTarget) {\n if (isEqualDropTarget(dropTarget, target)) {\n return true;\n }\n\n // Check if the targets point at the same point between two items, one referring before, and the other after.\n if (\n dropTarget?.type === 'item' &&\n target?.type === 'item' &&\n dropTarget.key !== target.key &&\n dropTarget.dropPosition !== target.dropPosition &&\n dropTarget.dropPosition !== 'on' &&\n target.dropPosition !== 'on'\n ) {\n return isEqualDropTarget(getOppositeTarget(dropTarget), target) ||\n isEqualDropTarget(dropTarget, getOppositeTarget(target));\n }\n\n return false;\n },\n getDropOperation(target, types, allowedOperations) {\n return typeof props.getDropOperation === 'function'\n ? props.getDropOperation(target, types, allowedOperations)\n : allowedOperations[0];\n }\n };\n}\n\nfunction isEqualDropTarget(a: DropTarget, b: DropTarget) {\n if (!a) {\n return !b;\n }\n\n switch (a.type) {\n case 'root':\n return b?.type === 'root';\n case 'item':\n return b?.type === 'item' && b?.key === a.key && b?.dropPosition === a.dropPosition;\n }\n}\n"],"names":[],"version":3,"file":"module.js.map"}
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"
|
|
1
|
+
{"mappings":";;;AAgBA,oCAAqC,SAAQ,wBAAwB;IACnE,UAAU,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC;IACtC,gBAAgB,EAAE,wBAAwB,CAAA;CAC3C;AAED;IACE,UAAU,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC;IACtC,gBAAgB,EAAE,wBAAwB,CAAC;IAC3C,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC;IAC9B,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;IACnC,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,QAAQ,EAAE,CAAC;IAC/B,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,OAAO,CAAC;IACrC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IACjD,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC;IACrC,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAAA;CACnC;AAED,4CAA4C,KAAK,EAAE,0BAA0B,GAAG,wBAAwB,CA+DvG;AChFD,yCAA0C,SAAQ,wBAAwB;IACxE,UAAU,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC;IACtC,gBAAgB,EAAE,wBAAwB,CAAA;CAC3C;AAED;IACE,UAAU,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC;IACtC,gBAAgB,EAAE,wBAAwB,CAAC;IAC3C,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IACpC,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC;IAC1C,gBAAgB,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,aAAa,EAAE,GAAG,aAAa,CAAA;CAC1G;AAED,4CAA4C,KAAK,EAAE,+BAA+B,GAAG,wBAAwB,CAoE5G","sources":["packages/@react-stately/dnd/src/packages/@react-stately/dnd/src/useDraggableCollectionState.ts","packages/@react-stately/dnd/src/packages/@react-stately/dnd/src/useDroppableCollectionState.ts","packages/@react-stately/dnd/src/packages/@react-stately/dnd/src/index.ts","packages/@react-stately/dnd/src/index.ts"],"sourcesContent":[null,null,null,"/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nexport * from './useDraggableCollectionState';\nexport * from './useDroppableCollectionState';\n"],"names":[],"version":3,"file":"types.d.ts.map"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@react-stately/dnd",
|
|
3
|
-
"version": "3.0.0-alpha.
|
|
3
|
+
"version": "3.0.0-alpha.3",
|
|
4
4
|
"description": "Spectrum UI components in React",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"main": "dist/main.js",
|
|
@@ -18,9 +18,9 @@
|
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"@babel/runtime": "^7.6.2",
|
|
21
|
-
"@react-stately/selection": "^3.
|
|
22
|
-
"@react-stately/utils": "^3.
|
|
23
|
-
"@react-types/shared": "^3.
|
|
21
|
+
"@react-stately/selection": "^3.9.1",
|
|
22
|
+
"@react-stately/utils": "^3.4.0",
|
|
23
|
+
"@react-types/shared": "^3.11.0"
|
|
24
24
|
},
|
|
25
25
|
"peerDependencies": {
|
|
26
26
|
"react": "^16.8.0 || ^17.0.0-rc.1"
|
|
@@ -28,5 +28,5 @@
|
|
|
28
28
|
"publishConfig": {
|
|
29
29
|
"access": "public"
|
|
30
30
|
},
|
|
31
|
-
"gitHead": "
|
|
31
|
+
"gitHead": "54c2366c4f31bd4bf619126131cd583c12972acc"
|
|
32
32
|
}
|