react-native-grab 0.0.3 → 0.0.4
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 -0
- package/dist/cjs/react-native/__tests__/dom-traversal.test.js +160 -0
- package/dist/cjs/react-native/__tests__/dom-traversal.test.js.map +1 -0
- package/dist/cjs/react-native/__tests__/mock-dom.js +65 -0
- package/dist/cjs/react-native/__tests__/mock-dom.js.map +1 -0
- package/dist/cjs/react-native/__tests__/setup.js +43 -0
- package/dist/cjs/react-native/__tests__/setup.js.map +1 -0
- package/dist/cjs/react-native/__tests__/z-index.test.js +106 -0
- package/dist/cjs/react-native/__tests__/z-index.test.js.map +1 -0
- package/dist/cjs/react-native/dom-traversal.js +39 -44
- package/dist/cjs/react-native/dom-traversal.js.map +1 -1
- package/dist/cjs/react-native/z-index.js +18 -8
- package/dist/cjs/react-native/z-index.js.map +1 -1
- package/dist/esm/react-native/__tests__/dom-traversal.test.js +158 -0
- package/dist/esm/react-native/__tests__/dom-traversal.test.js.map +1 -0
- package/dist/esm/react-native/__tests__/mock-dom.js +58 -0
- package/dist/esm/react-native/__tests__/mock-dom.js.map +1 -0
- package/dist/esm/react-native/__tests__/setup.js +41 -0
- package/dist/esm/react-native/__tests__/setup.js.map +1 -0
- package/dist/esm/react-native/__tests__/z-index.test.js +104 -0
- package/dist/esm/react-native/__tests__/z-index.test.js.map +1 -0
- package/dist/esm/react-native/dom-traversal.js +40 -45
- package/dist/esm/react-native/dom-traversal.js.map +1 -1
- package/dist/esm/react-native/z-index.js +18 -8
- package/dist/esm/react-native/z-index.js.map +1 -1
- package/dist/types/react-native/__tests__/dom-traversal.test.d.ts +2 -0
- package/dist/types/react-native/__tests__/dom-traversal.test.d.ts.map +1 -0
- package/dist/types/react-native/__tests__/mock-dom.d.ts +24 -0
- package/dist/types/react-native/__tests__/mock-dom.d.ts.map +1 -0
- package/dist/types/react-native/__tests__/setup.d.ts +2 -0
- package/dist/types/react-native/__tests__/setup.d.ts.map +1 -0
- package/dist/types/react-native/__tests__/z-index.test.d.ts +2 -0
- package/dist/types/react-native/__tests__/z-index.test.d.ts.map +1 -0
- package/dist/types/react-native/dom-traversal.d.ts.map +1 -1
- package/dist/types/react-native/z-index.d.ts.map +1 -1
- package/package.json +5 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dom-traversal.js","sourceRoot":"","sources":["../../../src/react-native/dom-traversal.ts"],"names":[],"mappings":"AAEA,OAAO,wBAAwB,MAAM,2DAA2D,CAAC;AACjG,OAAO,
|
|
1
|
+
{"version":3,"file":"dom-traversal.js","sourceRoot":"","sources":["../../../src/react-native/dom-traversal.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,9 +24,17 @@ const getNodeZIndex = (node) => {
|
|
|
24
24
|
}
|
|
25
25
|
return 0;
|
|
26
26
|
};
|
|
27
|
-
const
|
|
27
|
+
const getNodePositionType = (node) => {
|
|
28
28
|
const style = getNormalizedStyle(node);
|
|
29
|
-
|
|
29
|
+
const position = style?.position;
|
|
30
|
+
if (position === "static" || position === "relative" || position === "absolute") {
|
|
31
|
+
return position;
|
|
32
|
+
}
|
|
33
|
+
// Yoga defaults to relative positioning when `position` is not set.
|
|
34
|
+
return "relative";
|
|
35
|
+
};
|
|
36
|
+
const getNodeOrderIndex = (node) => {
|
|
37
|
+
return getNodePositionType(node) === "static" ? 0 : getNodeZIndex(node);
|
|
30
38
|
};
|
|
31
39
|
export const getChildrenInHitTestOrder = (node) => {
|
|
32
40
|
const children = Array.from(node.children ?? []);
|
|
@@ -34,16 +42,18 @@ export const getChildrenInHitTestOrder = (node) => {
|
|
|
34
42
|
.map((child, index) => ({
|
|
35
43
|
child,
|
|
36
44
|
index,
|
|
37
|
-
|
|
38
|
-
|
|
45
|
+
orderIndex: getNodeOrderIndex(child),
|
|
46
|
+
isStatic: getNodePositionType(child) === "static",
|
|
39
47
|
}))
|
|
40
48
|
.sort((a, b) => {
|
|
41
|
-
if (a.
|
|
42
|
-
return a.
|
|
49
|
+
if (a.orderIndex !== b.orderIndex) {
|
|
50
|
+
return a.orderIndex - b.orderIndex;
|
|
43
51
|
}
|
|
44
|
-
|
|
45
|
-
|
|
52
|
+
// RN keeps static siblings before non-static siblings for equal orderIndex.
|
|
53
|
+
if (a.isStatic !== b.isStatic) {
|
|
54
|
+
return a.isStatic ? -1 : 1;
|
|
46
55
|
}
|
|
56
|
+
// Preserve sibling insertion order for fully-equal ranking.
|
|
47
57
|
return a.index - b.index;
|
|
48
58
|
})
|
|
49
59
|
.map(({ child }) => child);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"z-index.js","sourceRoot":"","sources":["../../../src/react-native/z-index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAG/D,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAsB,EAAE;IACtD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5B,OAAO,MAAM,CAAC;QAChB,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,IAAgB,EAAU,EAAE;IACjD,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,eAAe,GAAG,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAChD,IAAI,eAAe,IAAI,IAAI,EAAE,CAAC;QAC5B,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,eAAe,GAAG,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAChD,IAAI,eAAe,IAAI,IAAI,EAAE,CAAC;QAC5B,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AAEF,MAAM,
|
|
1
|
+
{"version":3,"file":"z-index.js","sourceRoot":"","sources":["../../../src/react-native/z-index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dom-traversal.test.d.ts","sourceRoot":"","sources":["../../../../src/react-native/__tests__/dom-traversal.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { DOMElement, DOMRect } from "../types";
|
|
2
|
+
type MockNodeOptions = {
|
|
3
|
+
name: string;
|
|
4
|
+
rect: DOMRect;
|
|
5
|
+
style?: Record<string, unknown>;
|
|
6
|
+
pointerEvents?: "auto" | "box-none" | "box-only" | "none";
|
|
7
|
+
hasFiber?: boolean;
|
|
8
|
+
tagName?: string;
|
|
9
|
+
props?: Record<string, unknown>;
|
|
10
|
+
};
|
|
11
|
+
export type MockNode = DOMElement & {
|
|
12
|
+
name: string;
|
|
13
|
+
__rootView?: MockNode;
|
|
14
|
+
children: MockNode[];
|
|
15
|
+
};
|
|
16
|
+
export declare const createMockNode: ({ name, rect, style, pointerEvents, hasFiber, tagName, props, }: MockNodeOptions) => MockNode;
|
|
17
|
+
export declare const appendChild: (parent: MockNode, child: MockNode) => void;
|
|
18
|
+
export declare const createRoot: ({ name, rect, style, pointerEvents, props, }?: Partial<Omit<MockNodeOptions, "name" | "rect">> & {
|
|
19
|
+
name?: string;
|
|
20
|
+
rect?: DOMRect;
|
|
21
|
+
}) => MockNode;
|
|
22
|
+
export declare const finalizeTree: (root: MockNode) => void;
|
|
23
|
+
export {};
|
|
24
|
+
//# sourceMappingURL=mock-dom.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-dom.d.ts","sourceRoot":"","sources":["../../../../src/react-native/__tests__/mock-dom.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEpD,KAAK,eAAe,GAAG;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,MAAM,CAAC;IAC1D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,QAAQ,CAAC;IACtB,QAAQ,EAAE,QAAQ,EAAE,CAAC;CACtB,CAAC;AAqBF,eAAO,MAAM,cAAc,GAAI,iEAQ5B,eAAe,KAAG,QAmBpB,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,QAAQ,QAAQ,EAAE,OAAO,QAAQ,SAI5D,CAAC;AASF,eAAO,MAAM,UAAU,GAAI,+CAMxB,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC,GAAG;IACnD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;CACX,KAAG,QAOR,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,MAAM,QAAQ,SAE1C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../../../src/react-native/__tests__/setup.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"z-index.test.d.ts","sourceRoot":"","sources":["../../../../src/react-native/__tests__/z-index.test.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dom-traversal.d.ts","sourceRoot":"","sources":["../../../src/react-native/dom-traversal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"dom-traversal.d.ts","sourceRoot":"","sources":["../../../src/react-native/dom-traversal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,cAAc,CAAC;AAQzC,OAAO,KAAK,EAAE,UAAU,EAAW,kBAAkB,EAAE,MAAM,SAAS,CAAC;AASvE,MAAM,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,UAAU,KAAK,OAAO,CAAC;AAC1D,MAAM,MAAM,uBAAuB,GAAG;IACpC,SAAS,EAAE,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IAClC,QAAQ,EAAE,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;IACnC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,kBAAkB,KAAK,kBAAkB,GAAG,IAAI,CAAC;IAC1E,IAAI,EAAE,MAAM,IAAI,CAAC;CAClB,CAAC;AAoTF,eAAO,MAAM,YAAY,GAAI,iDAK1B,uBAAuB,KAAG,gBAgC5B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"z-index.d.ts","sourceRoot":"","sources":["../../../src/react-native/z-index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"z-index.d.ts","sourceRoot":"","sources":["../../../src/react-native/z-index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAgD1C,eAAO,MAAM,yBAAyB,GAAI,MAAM,UAAU,KAAG,UAAU,EAuBtE,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-grab",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.4",
|
|
4
4
|
"description": "React Native touch-to-find inspector.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"devtools",
|
|
@@ -46,6 +46,8 @@
|
|
|
46
46
|
"build:esm": "tsc -p tsconfig.build.esm.json",
|
|
47
47
|
"build:cjs": "tsc -p tsconfig.build.cjs.json",
|
|
48
48
|
"build": "npm run clean && npm run build:esm && npm run build:cjs",
|
|
49
|
+
"test": "vitest run",
|
|
50
|
+
"test:watch": "vitest",
|
|
49
51
|
"format": "oxfmt .",
|
|
50
52
|
"format:check": "oxfmt --check ."
|
|
51
53
|
},
|
|
@@ -56,7 +58,8 @@
|
|
|
56
58
|
"@types/node": "latest",
|
|
57
59
|
"@types/react": "latest",
|
|
58
60
|
"oxfmt": "latest",
|
|
59
|
-
"typescript": "latest"
|
|
61
|
+
"typescript": "latest",
|
|
62
|
+
"vitest": "^3.2.4"
|
|
60
63
|
},
|
|
61
64
|
"peerDependencies": {
|
|
62
65
|
"react": ">=19",
|