@tamagui/floating 2.7.7 → 3.0.0-beta.1097.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/Floating.cjs +9 -11
- package/dist/cjs/Floating.native.cjs +36 -0
- package/dist/cjs/Floating.native.js +19 -20
- package/dist/cjs/Floating.native.js.map +1 -1
- package/dist/cjs/index.cjs +44 -46
- package/dist/cjs/index.native.cjs +73 -0
- package/dist/cjs/index.native.js +44 -45
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/interactions/PopupTriggerMap.cjs +35 -39
- package/dist/cjs/interactions/PopupTriggerMap.native.cjs +95 -0
- package/dist/cjs/interactions/PopupTriggerMap.native.js +75 -75
- package/dist/cjs/interactions/PopupTriggerMap.native.js.map +1 -1
- package/dist/cjs/interactions/createFloatingEvents.cjs +35 -39
- package/dist/cjs/interactions/createFloatingEvents.native.cjs +51 -0
- package/dist/cjs/interactions/createFloatingEvents.native.js +38 -41
- package/dist/cjs/interactions/createFloatingEvents.native.js.map +1 -1
- package/dist/cjs/interactions/safePolygon.cjs +262 -252
- package/dist/cjs/interactions/safePolygon.native.cjs +293 -0
- package/dist/cjs/interactions/safePolygon.native.js +270 -259
- package/dist/cjs/interactions/safePolygon.native.js.map +1 -1
- package/dist/cjs/interactions/types.cjs +9 -11
- package/dist/cjs/interactions/types.native.cjs +18 -0
- package/dist/cjs/interactions/types.native.js +9 -10
- package/dist/cjs/interactions/types.native.js.map +1 -1
- package/dist/cjs/interactions/useClick.cjs +95 -105
- package/dist/cjs/interactions/useClick.native.cjs +121 -0
- package/dist/cjs/interactions/useClick.native.js +100 -109
- package/dist/cjs/interactions/useClick.native.js.map +1 -1
- package/dist/cjs/interactions/useDelayGroup.cjs +85 -91
- package/dist/cjs/interactions/useDelayGroup.native.cjs +118 -0
- package/dist/cjs/interactions/useDelayGroup.native.js +91 -96
- package/dist/cjs/interactions/useDelayGroup.native.js.map +1 -1
- package/dist/cjs/interactions/useFocus.cjs +107 -115
- package/dist/cjs/interactions/useFocus.native.cjs +130 -0
- package/dist/cjs/interactions/useFocus.native.js +113 -120
- package/dist/cjs/interactions/useFocus.native.js.map +1 -1
- package/dist/cjs/interactions/useHover.cjs +320 -335
- package/dist/cjs/interactions/useHover.native.cjs +356 -0
- package/dist/cjs/interactions/useHover.native.js +332 -347
- package/dist/cjs/interactions/useHover.native.js.map +1 -1
- package/dist/cjs/interactions/useInnerOffset.cjs +102 -111
- package/dist/cjs/interactions/useInnerOffset.native.cjs +131 -0
- package/dist/cjs/interactions/useInnerOffset.native.js +112 -120
- package/dist/cjs/interactions/useInnerOffset.native.js.map +1 -1
- package/dist/cjs/interactions/useInteractions.cjs +76 -92
- package/dist/cjs/interactions/useInteractions.native.cjs +199 -0
- package/dist/cjs/interactions/useInteractions.native.js +185 -200
- package/dist/cjs/interactions/useInteractions.native.js.map +1 -1
- package/dist/cjs/interactions/useListNavigation.cjs +404 -390
- package/dist/cjs/interactions/useListNavigation.native.cjs +446 -0
- package/dist/cjs/interactions/useListNavigation.native.js +416 -401
- package/dist/cjs/interactions/useListNavigation.native.js.map +1 -1
- package/dist/cjs/interactions/useRole.cjs +91 -106
- package/dist/cjs/interactions/useRole.native.cjs +120 -0
- package/dist/cjs/interactions/useRole.native.js +102 -116
- package/dist/cjs/interactions/useRole.native.js.map +1 -1
- package/dist/cjs/interactions/useTypeahead.cjs +114 -129
- package/dist/cjs/interactions/useTypeahead.native.cjs +143 -0
- package/dist/cjs/interactions/useTypeahead.native.js +127 -141
- package/dist/cjs/interactions/useTypeahead.native.js.map +1 -1
- package/dist/cjs/interactions/utils.cjs +125 -143
- package/dist/cjs/interactions/utils.native.cjs +201 -0
- package/dist/cjs/interactions/utils.native.js +132 -156
- package/dist/cjs/interactions/utils.native.js.map +1 -1
- package/dist/cjs/middleware/inner.cjs +73 -101
- package/dist/cjs/middleware/inner.native.cjs +101 -0
- package/dist/cjs/middleware/inner.native.js +82 -109
- package/dist/cjs/middleware/inner.native.js.map +1 -1
- package/dist/cjs/useFloating.cjs +33 -46
- package/dist/cjs/useFloating.native.cjs +55 -0
- package/dist/cjs/useFloating.native.js +36 -48
- package/dist/cjs/useFloating.native.js.map +1 -1
- package/dist/esm/Floating.mjs +1 -2
- package/dist/esm/Floating.native.js +6 -4
- package/dist/esm/Floating.native.js.map +1 -1
- package/dist/esm/index.js +4 -5
- package/dist/esm/index.mjs +4 -5
- package/dist/esm/index.native.js +4 -5
- package/dist/esm/interactions/PopupTriggerMap.mjs +23 -22
- package/dist/esm/interactions/PopupTriggerMap.mjs.map +1 -1
- package/dist/esm/interactions/PopupTriggerMap.native.js +62 -58
- package/dist/esm/interactions/PopupTriggerMap.native.js.map +1 -1
- package/dist/esm/interactions/createFloatingEvents.mjs +22 -21
- package/dist/esm/interactions/createFloatingEvents.mjs.map +1 -1
- package/dist/esm/interactions/createFloatingEvents.native.js +25 -24
- package/dist/esm/interactions/createFloatingEvents.native.js.map +1 -1
- package/dist/esm/interactions/safePolygon.mjs +250 -234
- package/dist/esm/interactions/safePolygon.mjs.map +1 -1
- package/dist/esm/interactions/safePolygon.native.js +258 -242
- package/dist/esm/interactions/safePolygon.native.js.map +1 -1
- package/dist/esm/interactions/types.mjs +0 -2
- package/dist/esm/interactions/types.native.js +0 -2
- package/dist/esm/interactions/useClick.mjs +83 -87
- package/dist/esm/interactions/useClick.mjs.map +1 -1
- package/dist/esm/interactions/useClick.native.js +88 -92
- package/dist/esm/interactions/useClick.native.js.map +1 -1
- package/dist/esm/interactions/useDelayGroup.mjs +68 -65
- package/dist/esm/interactions/useDelayGroup.mjs.map +1 -1
- package/dist/esm/interactions/useDelayGroup.native.js +74 -71
- package/dist/esm/interactions/useDelayGroup.native.js.map +1 -1
- package/dist/esm/interactions/useFocus.mjs +95 -97
- package/dist/esm/interactions/useFocus.mjs.map +1 -1
- package/dist/esm/interactions/useFocus.native.js +101 -103
- package/dist/esm/interactions/useFocus.native.js.map +1 -1
- package/dist/esm/interactions/useHover.mjs +304 -310
- package/dist/esm/interactions/useHover.mjs.map +1 -1
- package/dist/esm/interactions/useHover.native.js +316 -323
- package/dist/esm/interactions/useHover.native.js.map +1 -1
- package/dist/esm/interactions/useInnerOffset.mjs +87 -85
- package/dist/esm/interactions/useInnerOffset.mjs.map +1 -1
- package/dist/esm/interactions/useInnerOffset.native.js +97 -95
- package/dist/esm/interactions/useInnerOffset.native.js.map +1 -1
- package/dist/esm/interactions/useInteractions.mjs +65 -75
- package/dist/esm/interactions/useInteractions.mjs.map +1 -1
- package/dist/esm/interactions/useInteractions.native.js +172 -182
- package/dist/esm/interactions/useInteractions.native.js.map +1 -1
- package/dist/esm/interactions/useListNavigation.mjs +393 -373
- package/dist/esm/interactions/useListNavigation.mjs.map +1 -1
- package/dist/esm/interactions/useListNavigation.native.js +405 -385
- package/dist/esm/interactions/useListNavigation.native.js.map +1 -1
- package/dist/esm/interactions/useRole.mjs +76 -80
- package/dist/esm/interactions/useRole.mjs.map +1 -1
- package/dist/esm/interactions/useRole.native.js +87 -91
- package/dist/esm/interactions/useRole.native.js.map +1 -1
- package/dist/esm/interactions/useTypeahead.mjs +102 -111
- package/dist/esm/interactions/useTypeahead.mjs.map +1 -1
- package/dist/esm/interactions/useTypeahead.native.js +115 -124
- package/dist/esm/interactions/useTypeahead.native.js.map +1 -1
- package/dist/esm/interactions/utils.mjs +91 -106
- package/dist/esm/interactions/utils.mjs.map +1 -1
- package/dist/esm/interactions/utils.native.js +98 -120
- package/dist/esm/interactions/utils.native.js.map +1 -1
- package/dist/esm/middleware/inner.mjs +58 -75
- package/dist/esm/middleware/inner.mjs.map +1 -1
- package/dist/esm/middleware/inner.native.js +67 -84
- package/dist/esm/middleware/inner.native.js.map +1 -1
- package/dist/esm/useFloating.mjs +17 -21
- package/dist/esm/useFloating.mjs.map +1 -1
- package/dist/esm/useFloating.native.js +19 -23
- package/dist/esm/useFloating.native.js.map +1 -1
- package/package.json +8 -6
- package/src/interactions/useInteractions.ts +61 -59
- package/src/interactions/useListNavigation.ts +7 -2
- package/types/interactions/PopupTriggerMap.d.ts.map +1 -1
- package/types/interactions/useInteractions.d.ts +3 -3
- package/types/interactions/useInteractions.d.ts.map +1 -1
- package/types/interactions/useListNavigation.d.ts.map +1 -1
- package/types/middleware/inner.d.ts.map +1 -1
- package/types/useFloating.d.ts.map +1 -1
- package/dist/esm/Floating.mjs.map +0 -1
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/index.mjs.map +0 -1
- package/dist/esm/index.native.js.map +0 -1
- package/dist/esm/interactions/types.mjs.map +0 -1
- package/dist/esm/interactions/types.native.js.map +0 -1
|
@@ -1,80 +1,70 @@
|
|
|
1
|
+
import { useCallback, useMemo } from "react";
|
|
2
|
+
|
|
1
3
|
function useInteractions(propsList) {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
return {
|
|
20
|
-
getReferenceProps(userProps) {
|
|
21
|
-
return buildProps(referenceFns, referenceStatic, userProps);
|
|
22
|
-
},
|
|
23
|
-
getFloatingProps(userProps) {
|
|
24
|
-
return buildProps(floatingFns, floatingStatic, userProps);
|
|
25
|
-
},
|
|
26
|
-
getItemProps(userProps) {
|
|
27
|
-
return buildProps(itemFns, {}, userProps);
|
|
28
|
-
}
|
|
29
|
-
};
|
|
4
|
+
const referenceDeps = propsList.map((props) => props?.reference);
|
|
5
|
+
const floatingDeps = propsList.map((props) => props?.floating);
|
|
6
|
+
const itemDeps = propsList.map((props) => props?.item);
|
|
7
|
+
const getReferenceProps = useCallback((userProps) => mergeProps(referenceDeps, userProps), referenceDeps);
|
|
8
|
+
const getFloatingProps = useCallback((userProps) => mergeProps(floatingDeps, userProps), floatingDeps);
|
|
9
|
+
const getItemProps = useCallback((userProps) => mergeProps(itemDeps, userProps, true), itemDeps);
|
|
10
|
+
return useMemo(() => ({
|
|
11
|
+
getReferenceProps,
|
|
12
|
+
getFloatingProps,
|
|
13
|
+
getItemProps
|
|
14
|
+
}), [
|
|
15
|
+
getReferenceProps,
|
|
16
|
+
getFloatingProps,
|
|
17
|
+
getItemProps
|
|
18
|
+
]);
|
|
30
19
|
}
|
|
31
|
-
function
|
|
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
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
20
|
+
function mergeProps(list, userProps, objectsOnly = false) {
|
|
21
|
+
const fnMap = /* @__PURE__ */ new Map();
|
|
22
|
+
const result = {};
|
|
23
|
+
for (const props of list) {
|
|
24
|
+
if (!props || objectsOnly && typeof props !== "object") continue;
|
|
25
|
+
for (const key of Object.keys(props)) {
|
|
26
|
+
const value = props[key];
|
|
27
|
+
if (typeof value === "function") {
|
|
28
|
+
let arr = fnMap.get(key);
|
|
29
|
+
if (!arr) {
|
|
30
|
+
arr = [];
|
|
31
|
+
fnMap.set(key, arr);
|
|
32
|
+
}
|
|
33
|
+
arr.push(value);
|
|
34
|
+
} else {
|
|
35
|
+
result[key] = value;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
for (const [key, fns] of fnMap) {
|
|
40
|
+
result[key] = (...args) => {
|
|
41
|
+
for (const fn of fns) {
|
|
42
|
+
const out = fn(...args);
|
|
43
|
+
if (out !== void 0) return out;
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
if (userProps) {
|
|
48
|
+
for (const key of Object.keys(userProps)) {
|
|
49
|
+
if (key === "style") {
|
|
50
|
+
result.style = {
|
|
51
|
+
...result.style,
|
|
52
|
+
...userProps.style
|
|
53
|
+
};
|
|
54
|
+
} else if (typeof userProps[key] === "function" && result[key]) {
|
|
55
|
+
const hookFn = result[key];
|
|
56
|
+
const userFn = userProps[key];
|
|
57
|
+
result[key] = (...args) => {
|
|
58
|
+
userFn(...args);
|
|
59
|
+
hookFn(...args);
|
|
60
|
+
};
|
|
61
|
+
} else {
|
|
62
|
+
result[key] = userProps[key];
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
return result;
|
|
78
67
|
}
|
|
68
|
+
|
|
79
69
|
export { useInteractions };
|
|
80
70
|
//# sourceMappingURL=useInteractions.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"useInteractions.js","names":[],"sources":["esm/interactions/useInteractions.js"],"sourcesContent":["import { useCallback, useMemo } from \"react\";\nfunction useInteractions(propsList) {\n const referenceDeps = propsList.map((props) => props?.reference);\n const floatingDeps = propsList.map((props) => props?.floating);\n const itemDeps = propsList.map((props) => props?.item);\n const getReferenceProps = useCallback(\n (userProps) => mergeProps(referenceDeps, userProps),\n referenceDeps\n );\n const getFloatingProps = useCallback(\n (userProps) => mergeProps(floatingDeps, userProps),\n floatingDeps\n );\n const getItemProps = useCallback(\n (userProps) => mergeProps(itemDeps, userProps, true),\n itemDeps\n );\n return useMemo(\n () => ({\n getReferenceProps,\n getFloatingProps,\n getItemProps\n }),\n [getReferenceProps, getFloatingProps, getItemProps]\n );\n}\nfunction mergeProps(list, userProps, objectsOnly = false) {\n const fnMap = /* @__PURE__ */ new Map();\n const result = {};\n for (const props of list) {\n if (!props || objectsOnly && typeof props !== \"object\") continue;\n for (const key of Object.keys(props)) {\n const value = props[key];\n if (typeof value === \"function\") {\n let arr = fnMap.get(key);\n if (!arr) {\n arr = [];\n fnMap.set(key, arr);\n }\n arr.push(value);\n } else {\n result[key] = value;\n }\n }\n }\n for (const [key, fns] of fnMap) {\n result[key] = (...args) => {\n for (const fn of fns) {\n const out = fn(...args);\n if (out !== void 0) return out;\n }\n };\n }\n if (userProps) {\n for (const key of Object.keys(userProps)) {\n if (key === \"style\") {\n result.style = { ...result.style, ...userProps.style };\n } else if (typeof userProps[key] === \"function\" && result[key]) {\n const hookFn = result[key];\n const userFn = userProps[key];\n result[key] = (...args) => {\n userFn(...args);\n hookFn(...args);\n };\n } else {\n result[key] = userProps[key];\n }\n }\n }\n return result;\n}\nexport {\n useInteractions\n};\n//# sourceMappingURL=useInteractions.js.map\n"],"mappings":";;;AACA,SAAS,gBAAgB,WAAW;CAClC,MAAM,gBAAgB,UAAU,KAAK,UAAU,OAAO,SAAS;CAC/D,MAAM,eAAe,UAAU,KAAK,UAAU,OAAO,QAAQ;CAC7D,MAAM,WAAW,UAAU,KAAK,UAAU,OAAO,IAAI;CACrD,MAAM,oBAAoB,aACvB,cAAc,WAAW,eAAe,SAAS,GAClD,aACF;CACA,MAAM,mBAAmB,aACtB,cAAc,WAAW,cAAc,SAAS,GACjD,YACF;CACA,MAAM,eAAe,aAClB,cAAc,WAAW,UAAU,WAAW,IAAI,GACnD,QACF;CACA,OAAO,eACE;EACL;EACA;EACA;CACF,IACA;EAAC;EAAmB;EAAkB;CAAY,CACpD;AACF;AACA,SAAS,WAAW,MAAM,WAAW,cAAc,OAAO;CACxD,MAAM,wBAAwB,IAAI,IAAI;CACtC,MAAM,SAAS,CAAC;CAChB,KAAK,MAAM,SAAS,MAAM;EACxB,IAAI,CAAC,SAAS,eAAe,OAAO,UAAU,UAAU;EACxD,KAAK,MAAM,OAAO,OAAO,KAAK,KAAK,GAAG;GACpC,MAAM,QAAQ,MAAM;GACpB,IAAI,OAAO,UAAU,YAAY;IAC/B,IAAI,MAAM,MAAM,IAAI,GAAG;IACvB,IAAI,CAAC,KAAK;KACR,MAAM,CAAC;KACP,MAAM,IAAI,KAAK,GAAG;IACpB;IACA,IAAI,KAAK,KAAK;GAChB,OAAO;IACL,OAAO,OAAO;GAChB;EACF;CACF;CACA,KAAK,MAAM,CAAC,KAAK,QAAQ,OAAO;EAC9B,OAAO,QAAQ,GAAG,SAAS;GACzB,KAAK,MAAM,MAAM,KAAK;IACpB,MAAM,MAAM,GAAG,GAAG,IAAI;IACtB,IAAI,QAAQ,KAAK,GAAG,OAAO;GAC7B;EACF;CACF;CACA,IAAI,WAAW;EACb,KAAK,MAAM,OAAO,OAAO,KAAK,SAAS,GAAG;GACxC,IAAI,QAAQ,SAAS;IACnB,OAAO,QAAQ;KAAE,GAAG,OAAO;KAAO,GAAG,UAAU;IAAM;GACvD,OAAO,IAAI,OAAO,UAAU,SAAS,cAAc,OAAO,MAAM;IAC9D,MAAM,SAAS,OAAO;IACtB,MAAM,SAAS,UAAU;IACzB,OAAO,QAAQ,GAAG,SAAS;KACzB,OAAO,GAAG,IAAI;KACd,OAAO,GAAG,IAAI;IAChB;GACF,OAAO;IACL,OAAO,OAAO,UAAU;GAC1B;EACF;CACF;CACA,OAAO;AACT"}
|
|
@@ -1,188 +1,178 @@
|
|
|
1
|
-
|
|
2
|
-
"@swc/helpers - typeof";
|
|
1
|
+
import { useCallback, useMemo } from "react";
|
|
3
2
|
|
|
4
|
-
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
5
|
-
}
|
|
6
3
|
function useInteractions(propsList) {
|
|
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
|
-
} finally {
|
|
38
|
-
if (_didIteratorError) {
|
|
39
|
-
throw _iteratorError;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
return {
|
|
44
|
-
getReferenceProps(userProps) {
|
|
45
|
-
return buildProps(referenceFns, referenceStatic, userProps);
|
|
46
|
-
},
|
|
47
|
-
getFloatingProps(userProps) {
|
|
48
|
-
return buildProps(floatingFns, floatingStatic, userProps);
|
|
49
|
-
},
|
|
50
|
-
getItemProps(userProps) {
|
|
51
|
-
return buildProps(itemFns, {}, userProps);
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
|
-
function collectProps(props, fnMap, staticMap) {
|
|
56
|
-
var _iteratorNormalCompletion = true,
|
|
57
|
-
_didIteratorError = false,
|
|
58
|
-
_iteratorError = void 0;
|
|
59
|
-
try {
|
|
60
|
-
for (var _iterator = Object.keys(props)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
61
|
-
var key = _step.value;
|
|
62
|
-
if (typeof props[key] === "function") {
|
|
63
|
-
var arr = fnMap.get(key);
|
|
64
|
-
if (!arr) {
|
|
65
|
-
arr = [];
|
|
66
|
-
fnMap.set(key, arr);
|
|
67
|
-
}
|
|
68
|
-
arr.push(props[key]);
|
|
69
|
-
} else {
|
|
70
|
-
staticMap[key] = props[key];
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
} catch (err) {
|
|
74
|
-
_didIteratorError = true;
|
|
75
|
-
_iteratorError = err;
|
|
76
|
-
} finally {
|
|
77
|
-
try {
|
|
78
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
79
|
-
_iterator.return();
|
|
80
|
-
}
|
|
81
|
-
} finally {
|
|
82
|
-
if (_didIteratorError) {
|
|
83
|
-
throw _iteratorError;
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
}
|
|
4
|
+
var referenceDeps = propsList.map(function(props) {
|
|
5
|
+
return props === null || props === void 0 ? void 0 : props.reference;
|
|
6
|
+
});
|
|
7
|
+
var floatingDeps = propsList.map(function(props) {
|
|
8
|
+
return props === null || props === void 0 ? void 0 : props.floating;
|
|
9
|
+
});
|
|
10
|
+
var itemDeps = propsList.map(function(props) {
|
|
11
|
+
return props === null || props === void 0 ? void 0 : props.item;
|
|
12
|
+
});
|
|
13
|
+
var getReferenceProps = useCallback(function(userProps) {
|
|
14
|
+
return mergeProps(referenceDeps, userProps);
|
|
15
|
+
}, referenceDeps);
|
|
16
|
+
var getFloatingProps = useCallback(function(userProps) {
|
|
17
|
+
return mergeProps(floatingDeps, userProps);
|
|
18
|
+
}, floatingDeps);
|
|
19
|
+
var getItemProps = useCallback(function(userProps) {
|
|
20
|
+
return mergeProps(itemDeps, userProps, true);
|
|
21
|
+
}, itemDeps);
|
|
22
|
+
return useMemo(function() {
|
|
23
|
+
return {
|
|
24
|
+
getReferenceProps,
|
|
25
|
+
getFloatingProps,
|
|
26
|
+
getItemProps
|
|
27
|
+
};
|
|
28
|
+
}, [
|
|
29
|
+
getReferenceProps,
|
|
30
|
+
getFloatingProps,
|
|
31
|
+
getItemProps
|
|
32
|
+
]);
|
|
87
33
|
}
|
|
88
|
-
function
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
34
|
+
function mergeProps(list, userProps) {
|
|
35
|
+
var objectsOnly = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;
|
|
36
|
+
var fnMap = /* @__PURE__ */ new Map();
|
|
37
|
+
var result = {};
|
|
38
|
+
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
|
|
39
|
+
try {
|
|
40
|
+
for (var _iterator = list[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
41
|
+
var props = _step.value;
|
|
42
|
+
if (!props || objectsOnly && typeof props !== "object") continue;
|
|
43
|
+
var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;
|
|
44
|
+
try {
|
|
45
|
+
for (var _iterator1 = Object.keys(props)[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
|
|
46
|
+
var key = _step1.value;
|
|
47
|
+
var value = props[key];
|
|
48
|
+
if (typeof value === "function") {
|
|
49
|
+
var arr = fnMap.get(key);
|
|
50
|
+
if (!arr) {
|
|
51
|
+
arr = [];
|
|
52
|
+
fnMap.set(key, arr);
|
|
53
|
+
}
|
|
54
|
+
arr.push(value);
|
|
55
|
+
} else {
|
|
56
|
+
result[key] = value;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
} catch (err) {
|
|
60
|
+
_didIteratorError1 = true;
|
|
61
|
+
_iteratorError1 = err;
|
|
62
|
+
} finally {
|
|
63
|
+
try {
|
|
64
|
+
if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
|
|
65
|
+
_iterator1.return();
|
|
66
|
+
}
|
|
67
|
+
} finally {
|
|
68
|
+
if (_didIteratorError1) {
|
|
69
|
+
throw _iteratorError1;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
} catch (err) {
|
|
75
|
+
_didIteratorError = true;
|
|
76
|
+
_iteratorError = err;
|
|
77
|
+
} finally {
|
|
78
|
+
try {
|
|
79
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
80
|
+
_iterator.return();
|
|
81
|
+
}
|
|
82
|
+
} finally {
|
|
83
|
+
if (_didIteratorError) {
|
|
84
|
+
throw _iteratorError;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;
|
|
89
|
+
try {
|
|
90
|
+
var _loop = function() {
|
|
91
|
+
var [key2, fns] = _step2.value;
|
|
92
|
+
result[key2] = function() {
|
|
93
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
94
|
+
args[_key] = arguments[_key];
|
|
95
|
+
}
|
|
96
|
+
var _iteratorNormalCompletion4 = true, _didIteratorError4 = false, _iteratorError4 = void 0;
|
|
97
|
+
try {
|
|
98
|
+
for (var _iterator4 = fns[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {
|
|
99
|
+
var fn = _step4.value;
|
|
100
|
+
var out = fn(...args);
|
|
101
|
+
if (out !== void 0) return out;
|
|
102
|
+
}
|
|
103
|
+
} catch (err) {
|
|
104
|
+
_didIteratorError4 = true;
|
|
105
|
+
_iteratorError4 = err;
|
|
106
|
+
} finally {
|
|
107
|
+
try {
|
|
108
|
+
if (!_iteratorNormalCompletion4 && _iterator4.return != null) {
|
|
109
|
+
_iterator4.return();
|
|
110
|
+
}
|
|
111
|
+
} finally {
|
|
112
|
+
if (_didIteratorError4) {
|
|
113
|
+
throw _iteratorError4;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
};
|
|
119
|
+
for (var _iterator2 = fnMap[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) _loop();
|
|
120
|
+
} catch (err) {
|
|
121
|
+
_didIteratorError2 = true;
|
|
122
|
+
_iteratorError2 = err;
|
|
123
|
+
} finally {
|
|
124
|
+
try {
|
|
125
|
+
if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
|
|
126
|
+
_iterator2.return();
|
|
127
|
+
}
|
|
128
|
+
} finally {
|
|
129
|
+
if (_didIteratorError2) {
|
|
130
|
+
throw _iteratorError2;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
if (userProps) {
|
|
135
|
+
var _iteratorNormalCompletion3 = true, _didIteratorError3 = false, _iteratorError3 = void 0;
|
|
136
|
+
try {
|
|
137
|
+
var _loop1 = function() {
|
|
138
|
+
var key2 = _step3.value;
|
|
139
|
+
if (key2 === "style") {
|
|
140
|
+
result.style = {
|
|
141
|
+
...result.style,
|
|
142
|
+
...userProps.style
|
|
143
|
+
};
|
|
144
|
+
} else if (typeof userProps[key2] === "function" && result[key2]) {
|
|
145
|
+
var hookFn = result[key2];
|
|
146
|
+
var userFn = userProps[key2];
|
|
147
|
+
result[key2] = function() {
|
|
148
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
149
|
+
args[_key] = arguments[_key];
|
|
150
|
+
}
|
|
151
|
+
userFn(...args);
|
|
152
|
+
hookFn(...args);
|
|
153
|
+
};
|
|
154
|
+
} else {
|
|
155
|
+
result[key2] = userProps[key2];
|
|
156
|
+
}
|
|
157
|
+
};
|
|
158
|
+
for (var _iterator3 = Object.keys(userProps)[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) _loop1();
|
|
159
|
+
} catch (err) {
|
|
160
|
+
_didIteratorError3 = true;
|
|
161
|
+
_iteratorError3 = err;
|
|
162
|
+
} finally {
|
|
163
|
+
try {
|
|
164
|
+
if (!_iteratorNormalCompletion3 && _iterator3.return != null) {
|
|
165
|
+
_iterator3.return();
|
|
166
|
+
}
|
|
167
|
+
} finally {
|
|
168
|
+
if (_didIteratorError3) {
|
|
169
|
+
throw _iteratorError3;
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
return result;
|
|
186
175
|
}
|
|
176
|
+
|
|
187
177
|
export { useInteractions };
|
|
188
178
|
//# sourceMappingURL=useInteractions.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"useInteractions.native.js","names":[],"sources":["esm/interactions/useInteractions.native.js"],"sourcesContent":["import { useCallback, useMemo } from \"react\";\nfunction useInteractions(propsList) {\n var referenceDeps = propsList.map(function(props) {\n return props === null || props === void 0 ? void 0 : props.reference;\n });\n var floatingDeps = propsList.map(function(props) {\n return props === null || props === void 0 ? void 0 : props.floating;\n });\n var itemDeps = propsList.map(function(props) {\n return props === null || props === void 0 ? void 0 : props.item;\n });\n var getReferenceProps = useCallback(function(userProps) {\n return mergeProps(referenceDeps, userProps);\n }, referenceDeps);\n var getFloatingProps = useCallback(function(userProps) {\n return mergeProps(floatingDeps, userProps);\n }, floatingDeps);\n var getItemProps = useCallback(function(userProps) {\n return mergeProps(itemDeps, userProps, true);\n }, itemDeps);\n return useMemo(function() {\n return {\n getReferenceProps,\n getFloatingProps,\n getItemProps\n };\n }, [\n getReferenceProps,\n getFloatingProps,\n getItemProps\n ]);\n}\nfunction mergeProps(list, userProps) {\n var objectsOnly = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;\n var fnMap = /* @__PURE__ */ new Map();\n var result = {};\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = list[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var props = _step.value;\n if (!props || objectsOnly && typeof props !== \"object\") continue;\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = Object.keys(props)[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var key = _step1.value;\n var value = props[key];\n if (typeof value === \"function\") {\n var arr = fnMap.get(key);\n if (!arr) {\n arr = [];\n fnMap.set(key, arr);\n }\n arr.push(value);\n } else {\n result[key] = value;\n }\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n var _loop = function() {\n var [key2, fns] = _step2.value;\n result[key2] = function() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n var _iteratorNormalCompletion4 = true, _didIteratorError4 = false, _iteratorError4 = void 0;\n try {\n for (var _iterator4 = fns[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {\n var fn = _step4.value;\n var out = fn(...args);\n if (out !== void 0) return out;\n }\n } catch (err) {\n _didIteratorError4 = true;\n _iteratorError4 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion4 && _iterator4.return != null) {\n _iterator4.return();\n }\n } finally {\n if (_didIteratorError4) {\n throw _iteratorError4;\n }\n }\n }\n };\n };\n for (var _iterator2 = fnMap[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) _loop();\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n if (userProps) {\n var _iteratorNormalCompletion3 = true, _didIteratorError3 = false, _iteratorError3 = void 0;\n try {\n var _loop1 = function() {\n var key2 = _step3.value;\n if (key2 === \"style\") {\n result.style = {\n ...result.style,\n ...userProps.style\n };\n } else if (typeof userProps[key2] === \"function\" && result[key2]) {\n var hookFn = result[key2];\n var userFn = userProps[key2];\n result[key2] = function() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n userFn(...args);\n hookFn(...args);\n };\n } else {\n result[key2] = userProps[key2];\n }\n };\n for (var _iterator3 = Object.keys(userProps)[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) _loop1();\n } catch (err) {\n _didIteratorError3 = true;\n _iteratorError3 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion3 && _iterator3.return != null) {\n _iterator3.return();\n }\n } finally {\n if (_didIteratorError3) {\n throw _iteratorError3;\n }\n }\n }\n }\n return result;\n}\nexport {\n useInteractions\n};\n//# sourceMappingURL=useInteractions.js.map\n"],"mappings":"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"}
|