react-native-grab 1.1.0 → 1.1.1
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/cjs/react-native/__tests__/grab-context-description.test.js +81 -0
- package/dist/cjs/react-native/__tests__/grab-context-description.test.js.map +1 -1
- package/dist/cjs/react-native/containers.js +107 -25
- package/dist/cjs/react-native/containers.js.map +1 -1
- package/dist/cjs/react-native/context-menu.js +15 -23
- package/dist/cjs/react-native/context-menu.js.map +1 -1
- package/dist/cjs/react-native/description.js +31 -4
- package/dist/cjs/react-native/description.js.map +1 -1
- package/dist/cjs/react-native/grab-colors.js +7 -0
- package/dist/cjs/react-native/grab-colors.js.map +1 -0
- package/dist/cjs/react-native/grab-control-bar.js +9 -5
- package/dist/cjs/react-native/grab-control-bar.js.map +1 -1
- package/dist/cjs/react-native/grab-controller.js +105 -16
- package/dist/cjs/react-native/grab-controller.js.map +1 -1
- package/dist/cjs/react-native/grab-overlay.js +139 -170
- package/dist/cjs/react-native/grab-overlay.js.map +1 -1
- package/dist/cjs/react-native/grab-root-controls.js +89 -0
- package/dist/cjs/react-native/grab-root-controls.js.map +1 -0
- package/dist/cjs/react-native/grab-root.js +8 -2
- package/dist/cjs/react-native/grab-root.js.map +1 -1
- package/dist/cjs/react-native/grab-screen.js +18 -3
- package/dist/cjs/react-native/grab-screen.js.map +1 -1
- package/dist/cjs/react-native/index.js.map +1 -1
- package/dist/esm/react-native/__tests__/grab-context-description.test.js +83 -2
- package/dist/esm/react-native/__tests__/grab-context-description.test.js.map +1 -1
- package/dist/esm/react-native/containers.js +95 -20
- package/dist/esm/react-native/containers.js.map +1 -1
- package/dist/esm/react-native/context-menu.js +15 -23
- package/dist/esm/react-native/context-menu.js.map +1 -1
- package/dist/esm/react-native/description.js +28 -3
- package/dist/esm/react-native/description.js.map +1 -1
- package/dist/esm/react-native/grab-colors.js +4 -0
- package/dist/esm/react-native/grab-colors.js.map +1 -0
- package/dist/esm/react-native/grab-control-bar.js +9 -5
- package/dist/esm/react-native/grab-control-bar.js.map +1 -1
- package/dist/esm/react-native/grab-controller.js +97 -13
- package/dist/esm/react-native/grab-controller.js.map +1 -1
- package/dist/esm/react-native/grab-overlay.js +141 -172
- package/dist/esm/react-native/grab-overlay.js.map +1 -1
- package/dist/esm/react-native/grab-root-controls.js +85 -0
- package/dist/esm/react-native/grab-root-controls.js.map +1 -0
- package/dist/esm/react-native/grab-root.js +11 -5
- package/dist/esm/react-native/grab-root.js.map +1 -1
- package/dist/esm/react-native/grab-screen.js +21 -6
- package/dist/esm/react-native/grab-screen.js.map +1 -1
- package/dist/esm/react-native/index.js.map +1 -1
- package/dist/types/react-native/containers.d.ts +23 -4
- package/dist/types/react-native/containers.d.ts.map +1 -1
- package/dist/types/react-native/context-menu.d.ts +6 -1
- package/dist/types/react-native/context-menu.d.ts.map +1 -1
- package/dist/types/react-native/description.d.ts +5 -0
- package/dist/types/react-native/description.d.ts.map +1 -1
- package/dist/types/react-native/grab-colors.d.ts +4 -0
- package/dist/types/react-native/grab-colors.d.ts.map +1 -0
- package/dist/types/react-native/grab-control-bar.d.ts.map +1 -1
- package/dist/types/react-native/grab-controller.d.ts +17 -4
- package/dist/types/react-native/grab-controller.d.ts.map +1 -1
- package/dist/types/react-native/grab-overlay.d.ts +6 -1
- package/dist/types/react-native/grab-overlay.d.ts.map +1 -1
- package/dist/types/react-native/grab-root-controls.d.ts +2 -0
- package/dist/types/react-native/grab-root-controls.d.ts.map +1 -0
- package/dist/types/react-native/grab-root.d.ts.map +1 -1
- package/dist/types/react-native/grab-screen.d.ts +4 -2
- package/dist/types/react-native/grab-screen.d.ts.map +1 -1
- package/dist/types/react-native/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,30 +1,119 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.toggleGrabMenu = exports.enableGrabbing = exports.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
|
|
3
|
+
exports.toggleGrabMenu = exports.enableGrabbing = exports.clearGrabOwnerPresentation = exports.hideGrabSelectionMenu = exports.showGrabSelectionMenu = exports.setGrabSelectionSessionOwner = exports.useGrabControllerState = exports.unregisterLocalGrabSelectionController = exports.registerLocalGrabSelectionController = void 0;
|
|
4
|
+
const react_1 = require("react");
|
|
5
|
+
const containers_1 = require("./containers");
|
|
6
|
+
const localControllers = new Map();
|
|
7
|
+
const listeners = new Set();
|
|
8
|
+
let state = {
|
|
9
|
+
isMenuVisible: false,
|
|
10
|
+
selectedOwnerId: null,
|
|
11
|
+
selectionSessionOwnerId: null,
|
|
8
12
|
};
|
|
9
|
-
|
|
10
|
-
const
|
|
11
|
-
|
|
13
|
+
const notify = () => {
|
|
14
|
+
for (const listener of listeners) {
|
|
15
|
+
listener();
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
const subscribe = (listener) => {
|
|
19
|
+
listeners.add(listener);
|
|
20
|
+
return () => {
|
|
21
|
+
listeners.delete(listener);
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
const setState = (updater) => {
|
|
25
|
+
state = typeof updater === "function" ? updater(state) : updater;
|
|
26
|
+
notify();
|
|
27
|
+
};
|
|
28
|
+
const stopAllSelections = () => {
|
|
29
|
+
for (const controller of localControllers.values()) {
|
|
30
|
+
controller.stopSelection();
|
|
31
|
+
controller.closeSelectionMenu();
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
const registerLocalGrabSelectionController = (ownerId, controller) => {
|
|
35
|
+
localControllers.set(ownerId, controller);
|
|
36
|
+
};
|
|
37
|
+
exports.registerLocalGrabSelectionController = registerLocalGrabSelectionController;
|
|
38
|
+
const unregisterLocalGrabSelectionController = (ownerId) => {
|
|
39
|
+
localControllers.delete(ownerId);
|
|
40
|
+
setState((prevState) => ({
|
|
41
|
+
...prevState,
|
|
42
|
+
selectedOwnerId: prevState.selectedOwnerId === ownerId ? null : prevState.selectedOwnerId,
|
|
43
|
+
selectionSessionOwnerId: prevState.selectionSessionOwnerId === ownerId ? null : prevState.selectionSessionOwnerId,
|
|
44
|
+
}));
|
|
45
|
+
};
|
|
46
|
+
exports.unregisterLocalGrabSelectionController = unregisterLocalGrabSelectionController;
|
|
47
|
+
const useGrabControllerState = () => {
|
|
48
|
+
return (0, react_1.useSyncExternalStore)(subscribe, () => state, () => state);
|
|
12
49
|
};
|
|
13
|
-
exports.
|
|
50
|
+
exports.useGrabControllerState = useGrabControllerState;
|
|
51
|
+
const setGrabSelectionSessionOwner = (ownerId) => {
|
|
52
|
+
setState((prevState) => ({
|
|
53
|
+
...prevState,
|
|
54
|
+
selectionSessionOwnerId: ownerId,
|
|
55
|
+
}));
|
|
56
|
+
};
|
|
57
|
+
exports.setGrabSelectionSessionOwner = setGrabSelectionSessionOwner;
|
|
58
|
+
const showGrabSelectionMenu = (ownerId) => {
|
|
59
|
+
setState((prevState) => ({
|
|
60
|
+
...prevState,
|
|
61
|
+
selectedOwnerId: ownerId,
|
|
62
|
+
selectionSessionOwnerId: prevState.selectionSessionOwnerId === ownerId ? null : prevState.selectionSessionOwnerId,
|
|
63
|
+
}));
|
|
64
|
+
};
|
|
65
|
+
exports.showGrabSelectionMenu = showGrabSelectionMenu;
|
|
66
|
+
const hideGrabSelectionMenu = (ownerId) => {
|
|
67
|
+
setState((prevState) => ({
|
|
68
|
+
...prevState,
|
|
69
|
+
selectedOwnerId: prevState.selectedOwnerId === ownerId ? null : prevState.selectedOwnerId,
|
|
70
|
+
}));
|
|
71
|
+
};
|
|
72
|
+
exports.hideGrabSelectionMenu = hideGrabSelectionMenu;
|
|
73
|
+
const clearGrabOwnerPresentation = (ownerId) => {
|
|
74
|
+
setState((prevState) => ({
|
|
75
|
+
...prevState,
|
|
76
|
+
selectedOwnerId: prevState.selectedOwnerId === ownerId ? null : prevState.selectedOwnerId,
|
|
77
|
+
selectionSessionOwnerId: prevState.selectionSessionOwnerId === ownerId ? null : prevState.selectionSessionOwnerId,
|
|
78
|
+
}));
|
|
79
|
+
};
|
|
80
|
+
exports.clearGrabOwnerPresentation = clearGrabOwnerPresentation;
|
|
14
81
|
const enableGrabbing = () => {
|
|
15
|
-
|
|
82
|
+
const ownerId = (0, containers_1.getResolvedGrabSelectionOwnerId)();
|
|
83
|
+
if (!ownerId) {
|
|
16
84
|
console.error("[react-native-grab] Cannot enable grabbing. Ensure ReactNativeGrabRoot is mounted.");
|
|
17
85
|
return;
|
|
18
86
|
}
|
|
19
|
-
|
|
87
|
+
const controller = localControllers.get(ownerId);
|
|
88
|
+
if (!controller) {
|
|
89
|
+
console.error("[react-native-grab] Cannot enable grabbing. Ensure the focused ReactNativeGrabScreen is mounted.");
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
stopAllSelections();
|
|
93
|
+
setState((prevState) => ({
|
|
94
|
+
...prevState,
|
|
95
|
+
selectedOwnerId: null,
|
|
96
|
+
selectionSessionOwnerId: ownerId,
|
|
97
|
+
}));
|
|
98
|
+
controller.startSelection();
|
|
20
99
|
};
|
|
21
100
|
exports.enableGrabbing = enableGrabbing;
|
|
22
101
|
const toggleGrabMenu = () => {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
102
|
+
setState((prevState) => {
|
|
103
|
+
const isVisible = !prevState.isMenuVisible;
|
|
104
|
+
if (!isVisible) {
|
|
105
|
+
stopAllSelections();
|
|
106
|
+
return {
|
|
107
|
+
isMenuVisible: false,
|
|
108
|
+
selectedOwnerId: null,
|
|
109
|
+
selectionSessionOwnerId: null,
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
return {
|
|
113
|
+
...prevState,
|
|
114
|
+
isMenuVisible: true,
|
|
115
|
+
};
|
|
116
|
+
});
|
|
28
117
|
};
|
|
29
118
|
exports.toggleGrabMenu = toggleGrabMenu;
|
|
30
119
|
//# sourceMappingURL=grab-controller.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grab-controller.js","sourceRoot":"","sources":["../../../src/react-native/grab-controller.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"grab-controller.js","sourceRoot":"","sources":["../../../src/react-native/grab-controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,35 +5,20 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
5
5
|
const react_1 = require("react");
|
|
6
6
|
const react_native_1 = require("react-native");
|
|
7
7
|
const containers_1 = require("./containers");
|
|
8
|
-
const measure_1 = require("./measure");
|
|
9
|
-
const dev_menu_1 = require("./dev-menu");
|
|
10
|
-
const description_1 = require("./description");
|
|
11
8
|
const copy_1 = require("./copy");
|
|
12
|
-
const full_screen_overlay_1 = require("./full-screen-overlay");
|
|
13
|
-
const grab_controller_1 = require("./grab-controller");
|
|
14
|
-
const grab_control_bar_1 = require("./grab-control-bar");
|
|
15
9
|
const context_menu_1 = require("./context-menu");
|
|
10
|
+
const grab_colors_1 = require("./grab-colors");
|
|
11
|
+
const grab_controller_1 = require("./grab-controller");
|
|
12
|
+
const description_1 = require("./description");
|
|
16
13
|
const get_rendered_by_1 = require("./get-rendered-by");
|
|
14
|
+
const measure_1 = require("./measure");
|
|
17
15
|
const open_1 = require("./open");
|
|
18
16
|
const COPY_BADGE_DURATION_MS = 1600;
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
const BADGE_BACKGROUND = "rgba(130, 50, 255, 0.92)";
|
|
22
|
-
const BAR_HEIGHT = 36;
|
|
23
|
-
const BAR_WIDTH = 108;
|
|
24
|
-
const INITIAL_BAR_POSITION = {
|
|
25
|
-
x: (react_native_1.Dimensions.get("window").width - BAR_WIDTH) / 2,
|
|
26
|
-
y: 72,
|
|
27
|
-
};
|
|
28
|
-
const clamp = (value, min, max) => {
|
|
29
|
-
return Math.min(Math.max(value, min), max);
|
|
30
|
-
};
|
|
31
|
-
const ReactNativeGrabOverlay = () => {
|
|
17
|
+
const ReactNativeGrabOverlay = ({ ownerId, onPanHandlersChange, }) => {
|
|
18
|
+
const isResolvedSelectionOwner = (0, containers_1.useIsResolvedGrabSelectionOwner)(ownerId);
|
|
32
19
|
const copyBadgeTimeoutRef = (0, react_1.useRef)(null);
|
|
33
|
-
const
|
|
34
|
-
const shouldResetControlBarPositionRef = (0, react_1.useRef)(false);
|
|
20
|
+
const [bounds, setBounds] = (0, react_1.useState)({ width: 0, height: 0 });
|
|
35
21
|
const [state, setState] = (0, react_1.useState)({
|
|
36
|
-
isMenuVisible: false,
|
|
37
22
|
isSessionEnabled: false,
|
|
38
23
|
grabbedElement: null,
|
|
39
24
|
isCopyBadgeVisible: false,
|
|
@@ -51,20 +36,19 @@ const ReactNativeGrabOverlay = () => {
|
|
|
51
36
|
setState((prev) => ({
|
|
52
37
|
...prev,
|
|
53
38
|
isSessionEnabled: false,
|
|
39
|
+
grabbedElement: null,
|
|
54
40
|
}));
|
|
55
41
|
}, []);
|
|
56
|
-
const
|
|
42
|
+
const closeSelectedElementMenu = (0, react_1.useCallback)(() => {
|
|
43
|
+
(0, grab_controller_1.hideGrabSelectionMenu)(ownerId);
|
|
57
44
|
setState((prev) => {
|
|
58
|
-
shouldResetControlBarPositionRef.current = prev.isMenuVisible;
|
|
59
45
|
return {
|
|
60
46
|
...prev,
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
grabbedElement: !prev.isMenuVisible ? prev.grabbedElement : null,
|
|
64
|
-
selectedElement: !prev.isMenuVisible ? prev.selectedElement : null,
|
|
47
|
+
selectedElement: null,
|
|
48
|
+
grabbedElement: null,
|
|
65
49
|
};
|
|
66
50
|
});
|
|
67
|
-
}, []);
|
|
51
|
+
}, [ownerId]);
|
|
68
52
|
(0, react_1.useEffect)(() => {
|
|
69
53
|
return () => {
|
|
70
54
|
if (copyBadgeTimeoutRef.current) {
|
|
@@ -78,13 +62,6 @@ const ReactNativeGrabOverlay = () => {
|
|
|
78
62
|
grabbedElement,
|
|
79
63
|
}));
|
|
80
64
|
}, []);
|
|
81
|
-
const closeSelectedElementMenu = (0, react_1.useCallback)(() => {
|
|
82
|
-
setState((prev) => ({
|
|
83
|
-
...prev,
|
|
84
|
-
selectedElement: null,
|
|
85
|
-
grabbedElement: null,
|
|
86
|
-
}));
|
|
87
|
-
}, []);
|
|
88
65
|
const showCopiedBadge = (0, react_1.useCallback)(() => {
|
|
89
66
|
if (copyBadgeTimeoutRef.current) {
|
|
90
67
|
clearTimeout(copyBadgeTimeoutRef.current);
|
|
@@ -95,40 +72,39 @@ const ReactNativeGrabOverlay = () => {
|
|
|
95
72
|
copyBadgeTimeoutRef.current = null;
|
|
96
73
|
}, COPY_BADGE_DURATION_MS);
|
|
97
74
|
}, []);
|
|
98
|
-
|
|
99
|
-
if (
|
|
75
|
+
(0, react_1.useEffect)(() => {
|
|
76
|
+
if (isResolvedSelectionOwner) {
|
|
100
77
|
return;
|
|
101
78
|
}
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
const
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
let appRootHeight = appRootBoundingClientRect[3];
|
|
122
|
-
const offset = appRootHeight - focusedScreenHeight - focusedScreenOffsetY;
|
|
123
|
-
const pageX = nativePageX;
|
|
124
|
-
const pageY = nativePageY - (appRootHeight - focusedScreenHeight);
|
|
125
|
-
const internalNode = (0, measure_1.findNodeAtPoint)(focusedScreenShadowNode, pageX, pageY);
|
|
79
|
+
(0, grab_controller_1.clearGrabOwnerPresentation)(ownerId);
|
|
80
|
+
setState((prev) => {
|
|
81
|
+
if (!prev.isSessionEnabled && !prev.grabbedElement && !prev.selectedElement) {
|
|
82
|
+
return prev;
|
|
83
|
+
}
|
|
84
|
+
return {
|
|
85
|
+
...prev,
|
|
86
|
+
isSessionEnabled: false,
|
|
87
|
+
grabbedElement: null,
|
|
88
|
+
selectedElement: null,
|
|
89
|
+
};
|
|
90
|
+
});
|
|
91
|
+
}, [isResolvedSelectionOwner, ownerId]);
|
|
92
|
+
const getElementAtPoint = (pageX, pageY) => {
|
|
93
|
+
const owner = (0, containers_1.getGrabSelectionOwner)(ownerId);
|
|
94
|
+
if (!owner) {
|
|
95
|
+
return null;
|
|
96
|
+
}
|
|
97
|
+
const internalNode = (0, measure_1.findNodeAtPoint)(owner.shadowNode, pageX, pageY);
|
|
126
98
|
const shadowNode = internalNode?.stateNode?.node;
|
|
127
99
|
if (!shadowNode) {
|
|
128
100
|
return null;
|
|
129
101
|
}
|
|
102
|
+
const ownerRect = (0, measure_1.measureInWindow)(owner.shadowNode);
|
|
130
103
|
const rect = nativeFabricUIManager.getBoundingClientRect(shadowNode, true);
|
|
131
|
-
return {
|
|
104
|
+
return {
|
|
105
|
+
fiberNode: internalNode,
|
|
106
|
+
rect: [rect[0] - ownerRect[0], rect[1] - ownerRect[1], rect[2], rect[3]],
|
|
107
|
+
};
|
|
132
108
|
};
|
|
133
109
|
const handleTouch = (nativeEvent) => {
|
|
134
110
|
const result = getElementAtPoint(nativeEvent.pageX, nativeEvent.pageY);
|
|
@@ -138,14 +114,13 @@ const ReactNativeGrabOverlay = () => {
|
|
|
138
114
|
}
|
|
139
115
|
updateGrabbedElement(result);
|
|
140
116
|
};
|
|
141
|
-
const handleGrabbing = async (result) => {
|
|
117
|
+
const handleGrabbing = (0, react_1.useCallback)(async (result) => {
|
|
142
118
|
const [description, renderedBy] = await Promise.all([
|
|
143
119
|
(0, description_1.getDescription)(result.fiberNode),
|
|
144
120
|
(0, get_rendered_by_1.getRenderedBy)(result.fiberNode),
|
|
145
121
|
]);
|
|
146
122
|
const firstFrame = renderedBy.find((frame) => Boolean(frame.file)) ?? null;
|
|
147
|
-
const
|
|
148
|
-
const elementName = elementNameMatch?.[1] ?? firstFrame?.name ?? "Selected element";
|
|
123
|
+
const elementName = (0, description_1.getGrabSelectionTitle)(result.fiberNode, renderedBy);
|
|
149
124
|
setState((prev) => ({
|
|
150
125
|
...prev,
|
|
151
126
|
grabbedElement: result,
|
|
@@ -156,7 +131,53 @@ const ReactNativeGrabOverlay = () => {
|
|
|
156
131
|
result,
|
|
157
132
|
},
|
|
158
133
|
}));
|
|
159
|
-
|
|
134
|
+
(0, grab_controller_1.showGrabSelectionMenu)(ownerId);
|
|
135
|
+
}, [ownerId]);
|
|
136
|
+
(0, react_1.useEffect)(() => {
|
|
137
|
+
(0, grab_controller_1.registerLocalGrabSelectionController)(ownerId, {
|
|
138
|
+
closeSelectionMenu: () => {
|
|
139
|
+
closeSelectedElementMenu();
|
|
140
|
+
},
|
|
141
|
+
startSelection: startSession,
|
|
142
|
+
stopSelection: () => {
|
|
143
|
+
closeSelectedElementMenu();
|
|
144
|
+
stopSession();
|
|
145
|
+
},
|
|
146
|
+
});
|
|
147
|
+
return () => {
|
|
148
|
+
(0, grab_controller_1.unregisterLocalGrabSelectionController)(ownerId);
|
|
149
|
+
};
|
|
150
|
+
}, [closeSelectedElementMenu, ownerId, startSession, stopSession]);
|
|
151
|
+
const panResponder = (0, react_1.useRef)(react_native_1.PanResponder.create({
|
|
152
|
+
onStartShouldSetPanResponderCapture: () => true,
|
|
153
|
+
onMoveShouldSetPanResponderCapture: () => true,
|
|
154
|
+
onPanResponderGrant: (evt) => handleTouch(evt.nativeEvent),
|
|
155
|
+
onPanResponderMove: (evt) => handleTouch(evt.nativeEvent),
|
|
156
|
+
onPanResponderRelease: (evt) => {
|
|
157
|
+
void (async () => {
|
|
158
|
+
try {
|
|
159
|
+
const result = getElementAtPoint(evt.nativeEvent.pageX, evt.nativeEvent.pageY);
|
|
160
|
+
if (!result) {
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
163
|
+
await handleGrabbing(result);
|
|
164
|
+
}
|
|
165
|
+
catch {
|
|
166
|
+
console.error("[react-native-grab] Grabbing failed.");
|
|
167
|
+
}
|
|
168
|
+
finally {
|
|
169
|
+
(0, grab_controller_1.setGrabSelectionSessionOwner)(null);
|
|
170
|
+
stopSession();
|
|
171
|
+
}
|
|
172
|
+
})();
|
|
173
|
+
},
|
|
174
|
+
})).current;
|
|
175
|
+
(0, react_1.useEffect)(() => {
|
|
176
|
+
onPanHandlersChange?.(state.isSessionEnabled ? panResponder.panHandlers : null);
|
|
177
|
+
return () => {
|
|
178
|
+
onPanHandlersChange?.(null);
|
|
179
|
+
};
|
|
180
|
+
}, [onPanHandlersChange, panResponder.panHandlers, state.isSessionEnabled]);
|
|
160
181
|
const handleCopySelectedElement = (0, react_1.useCallback)(async () => {
|
|
161
182
|
const selectedElement = state.selectedElement;
|
|
162
183
|
if (!selectedElement) {
|
|
@@ -187,60 +208,6 @@ const ReactNativeGrabOverlay = () => {
|
|
|
187
208
|
console.error("[react-native-grab] Opening editor failed.");
|
|
188
209
|
}
|
|
189
210
|
}, [closeSelectedElementMenu, state.selectedElement]);
|
|
190
|
-
const panResponder = (0, react_1.useRef)(react_native_1.PanResponder.create({
|
|
191
|
-
onStartShouldSetPanResponderCapture: () => true,
|
|
192
|
-
onMoveShouldSetPanResponderCapture: () => true,
|
|
193
|
-
onPanResponderGrant: (evt) => handleTouch(evt.nativeEvent),
|
|
194
|
-
onPanResponderMove: (evt) => handleTouch(evt.nativeEvent),
|
|
195
|
-
onPanResponderRelease: (evt) => {
|
|
196
|
-
void (async () => {
|
|
197
|
-
try {
|
|
198
|
-
const result = getElementAtPoint(evt.nativeEvent.pageX, evt.nativeEvent.pageY);
|
|
199
|
-
if (!result) {
|
|
200
|
-
return;
|
|
201
|
-
}
|
|
202
|
-
await handleGrabbing(result);
|
|
203
|
-
}
|
|
204
|
-
catch {
|
|
205
|
-
console.error("[react-native-grab] Grabbing failed.");
|
|
206
|
-
}
|
|
207
|
-
finally {
|
|
208
|
-
stopSession();
|
|
209
|
-
}
|
|
210
|
-
})();
|
|
211
|
-
},
|
|
212
|
-
})).current;
|
|
213
|
-
const dragHandlePanResponder = (0, react_1.useRef)(react_native_1.PanResponder.create({
|
|
214
|
-
onStartShouldSetPanResponder: () => true,
|
|
215
|
-
onMoveShouldSetPanResponder: (_, gestureState) => Math.abs(gestureState.dx) > 2 || Math.abs(gestureState.dy) > 2,
|
|
216
|
-
onPanResponderGrant: () => {
|
|
217
|
-
controlBarPosition.stopAnimation((value) => {
|
|
218
|
-
controlBarPosition.setOffset(value);
|
|
219
|
-
controlBarPosition.setValue({ x: 0, y: 0 });
|
|
220
|
-
});
|
|
221
|
-
},
|
|
222
|
-
onPanResponderMove: react_native_1.Animated.event([null, { dx: controlBarPosition.x, dy: controlBarPosition.y }], { useNativeDriver: false }),
|
|
223
|
-
onPanResponderRelease: () => {
|
|
224
|
-
controlBarPosition.flattenOffset();
|
|
225
|
-
controlBarPosition.stopAnimation((value) => {
|
|
226
|
-
const { width, height } = react_native_1.Dimensions.get("window");
|
|
227
|
-
controlBarPosition.setValue({
|
|
228
|
-
x: clamp(value.x, 0, Math.max(0, width - BAR_WIDTH)),
|
|
229
|
-
y: clamp(value.y, 0, Math.max(0, height - BAR_HEIGHT)),
|
|
230
|
-
});
|
|
231
|
-
});
|
|
232
|
-
},
|
|
233
|
-
onPanResponderTerminate: () => {
|
|
234
|
-
controlBarPosition.flattenOffset();
|
|
235
|
-
controlBarPosition.stopAnimation((value) => {
|
|
236
|
-
const { width, height } = react_native_1.Dimensions.get("window");
|
|
237
|
-
controlBarPosition.setValue({
|
|
238
|
-
x: clamp(value.x, 0, Math.max(0, width - BAR_WIDTH)),
|
|
239
|
-
y: clamp(value.y, 0, Math.max(0, height - BAR_HEIGHT)),
|
|
240
|
-
});
|
|
241
|
-
});
|
|
242
|
-
},
|
|
243
|
-
})).current;
|
|
244
211
|
const selectedElementMenuAnchor = (0, react_1.useMemo)(() => {
|
|
245
212
|
if (!state.selectedElement) {
|
|
246
213
|
return null;
|
|
@@ -251,45 +218,48 @@ const ReactNativeGrabOverlay = () => {
|
|
|
251
218
|
y: rect[1] + rect[3],
|
|
252
219
|
};
|
|
253
220
|
}, [state.selectedElement]);
|
|
254
|
-
const
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
:
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
221
|
+
const highlightedElement = state.grabbedElement ?? state.selectedElement?.result ?? null;
|
|
222
|
+
if (!state.isSessionEnabled &&
|
|
223
|
+
!state.isCopyBadgeVisible &&
|
|
224
|
+
!state.grabbedElement &&
|
|
225
|
+
!state.selectedElement) {
|
|
226
|
+
return null;
|
|
227
|
+
}
|
|
228
|
+
return ((0, jsx_runtime_1.jsxs)(react_native_1.View, { pointerEvents: "box-none", style: styles.overlayRoot, onLayout: (event) => {
|
|
229
|
+
const { width, height } = event.nativeEvent.layout;
|
|
230
|
+
setBounds((prev) => {
|
|
231
|
+
if (prev.width === width && prev.height === height) {
|
|
232
|
+
return prev;
|
|
233
|
+
}
|
|
234
|
+
return { width, height };
|
|
235
|
+
});
|
|
236
|
+
}, children: [state.isSessionEnabled && ((0, jsx_runtime_1.jsx)(react_native_1.View, { pointerEvents: "none", style: styles.topBadge, children: (0, jsx_runtime_1.jsx)(react_native_1.Text, { style: styles.topBadgeText, children: "Touch and move around to grab" }) })), state.isCopyBadgeVisible && ((0, jsx_runtime_1.jsx)(react_native_1.View, { pointerEvents: "none", style: styles.topBadge, children: (0, jsx_runtime_1.jsx)(react_native_1.Text, { style: styles.topBadgeText, children: "Element copied" }) })), !!highlightedElement && ((0, jsx_runtime_1.jsx)(react_native_1.View, { pointerEvents: "none", style: [
|
|
237
|
+
styles.highlight,
|
|
238
|
+
{
|
|
239
|
+
left: highlightedElement.rect[0],
|
|
240
|
+
top: highlightedElement.rect[1],
|
|
241
|
+
width: highlightedElement.rect[2],
|
|
242
|
+
height: highlightedElement.rect[3],
|
|
243
|
+
},
|
|
244
|
+
] })), (0, jsx_runtime_1.jsxs)(context_menu_1.ContextMenu, { anchor: selectedElementMenuAnchor, bounds: bounds, cutout: state.selectedElement
|
|
245
|
+
? {
|
|
246
|
+
x: state.selectedElement.result.rect[0],
|
|
247
|
+
y: state.selectedElement.result.rect[1],
|
|
248
|
+
width: state.selectedElement.result.rect[2],
|
|
249
|
+
height: state.selectedElement.result.rect[3],
|
|
250
|
+
}
|
|
251
|
+
: null, horizontalAlignment: "center", offset: { x: 0, y: 8 }, onClose: closeSelectedElementMenu, visible: state.selectedElement !== null, children: [(0, jsx_runtime_1.jsx)(react_native_1.View, { style: styles.selectionMenuHeader, children: (0, jsx_runtime_1.jsx)(react_native_1.Text, { adjustsFontSizeToFit: true, minimumFontScale: 0.65, numberOfLines: 1, style: styles.selectionMenuTitle, children: state.selectedElement?.elementName }) }), (0, jsx_runtime_1.jsxs)(react_native_1.View, { style: styles.selectionMenuActions, children: [(0, jsx_runtime_1.jsx)(react_native_1.Pressable, { accessibilityRole: "button", onPress: () => void handleCopySelectedElement(), style: ({ pressed }) => [
|
|
252
|
+
styles.selectionMenuActionButton,
|
|
253
|
+
pressed && styles.selectionMenuActionButtonPressed,
|
|
254
|
+
], children: (0, jsx_runtime_1.jsx)(react_native_1.Text, { style: styles.selectionMenuActionText, children: "Copy" }) }), (0, jsx_runtime_1.jsx)(react_native_1.View, { style: styles.selectionMenuActionDivider }), (0, jsx_runtime_1.jsx)(react_native_1.Pressable, { accessibilityRole: "button", disabled: !state.selectedElement?.frame?.file, onPress: () => void handleOpenSelectedElement(), style: ({ pressed }) => [
|
|
255
|
+
styles.selectionMenuActionButton,
|
|
256
|
+
pressed &&
|
|
257
|
+
state.selectedElement?.frame?.file &&
|
|
258
|
+
styles.selectionMenuActionButtonPressed,
|
|
259
|
+
], children: (0, jsx_runtime_1.jsx)(react_native_1.Text, { style: [
|
|
260
|
+
styles.selectionMenuActionText,
|
|
261
|
+
!state.selectedElement?.frame?.file && styles.selectionMenuActionTextDisabled,
|
|
262
|
+
], children: "Open" }) })] })] })] }));
|
|
293
263
|
};
|
|
294
264
|
exports.ReactNativeGrabOverlay = ReactNativeGrabOverlay;
|
|
295
265
|
const styles = react_native_1.StyleSheet.create({
|
|
@@ -297,15 +267,6 @@ const styles = react_native_1.StyleSheet.create({
|
|
|
297
267
|
...react_native_1.StyleSheet.absoluteFillObject,
|
|
298
268
|
zIndex: 9999,
|
|
299
269
|
},
|
|
300
|
-
sessionCapture: {
|
|
301
|
-
zIndex: 1,
|
|
302
|
-
},
|
|
303
|
-
controlBar: {
|
|
304
|
-
position: "absolute",
|
|
305
|
-
top: 0,
|
|
306
|
-
left: 0,
|
|
307
|
-
zIndex: 2,
|
|
308
|
-
},
|
|
309
270
|
topBadge: {
|
|
310
271
|
position: "absolute",
|
|
311
272
|
top: 52,
|
|
@@ -313,18 +274,26 @@ const styles = react_native_1.StyleSheet.create({
|
|
|
313
274
|
borderRadius: 999,
|
|
314
275
|
paddingHorizontal: 14,
|
|
315
276
|
paddingVertical: 8,
|
|
316
|
-
backgroundColor:
|
|
277
|
+
backgroundColor: grab_colors_1.GRAB_BADGE_BACKGROUND,
|
|
317
278
|
},
|
|
318
279
|
topBadgeText: {
|
|
319
280
|
color: "#FFFFFF",
|
|
320
281
|
fontSize: 13,
|
|
321
282
|
fontWeight: "600",
|
|
322
283
|
},
|
|
284
|
+
highlight: {
|
|
285
|
+
position: "absolute",
|
|
286
|
+
backgroundColor: grab_colors_1.GRAB_HIGHLIGHT_FILL,
|
|
287
|
+
borderWidth: 1,
|
|
288
|
+
borderColor: grab_colors_1.GRAB_PRIMARY,
|
|
289
|
+
},
|
|
323
290
|
selectionMenuHeader: {
|
|
291
|
+
alignSelf: "stretch",
|
|
324
292
|
paddingHorizontal: 14,
|
|
325
293
|
paddingVertical: 12,
|
|
326
294
|
},
|
|
327
295
|
selectionMenuTitle: {
|
|
296
|
+
width: "100%",
|
|
328
297
|
color: "#111111",
|
|
329
298
|
fontSize: 14,
|
|
330
299
|
fontWeight: "600",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grab-overlay.js","sourceRoot":"","sources":["../../../src/react-native/grab-overlay.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"grab-overlay.js","sourceRoot":"","sources":["../../../src/react-native/grab-overlay.tsx"],"names":[],"mappings":"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"}
|