@tamagui/core 1.61.3 → 1.62.0
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/getBaseViews.js +5 -9
- package/dist/cjs/getBaseViews.js.map +1 -1
- package/dist/cjs/getBaseViews.native.js +5 -8
- package/dist/cjs/getBaseViews.native.js.map +1 -1
- package/dist/cjs/helpers/getBoundingClientRect.js +7 -13
- package/dist/cjs/helpers/getBoundingClientRect.js.map +1 -1
- package/dist/cjs/helpers/getBoundingClientRect.native.js +29 -0
- package/dist/cjs/helpers/getBoundingClientRect.native.js.map +6 -0
- package/dist/cjs/helpers/getRect.js +5 -9
- package/dist/cjs/helpers/getRect.js.map +1 -1
- package/dist/cjs/helpers/getRect.native.js +33 -0
- package/dist/cjs/helpers/getRect.native.js.map +6 -0
- package/dist/cjs/hooks/useElementLayout.js +30 -46
- package/dist/cjs/hooks/useElementLayout.js.map +1 -1
- package/dist/cjs/hooks/useElementLayout.native.js +64 -0
- package/dist/cjs/hooks/useElementLayout.native.js.map +6 -0
- package/dist/cjs/hooks/usePlatformMethods.js +9 -21
- package/dist/cjs/hooks/usePlatformMethods.js.map +1 -1
- package/dist/cjs/hooks/usePlatformMethods.native.js +37 -0
- package/dist/cjs/hooks/usePlatformMethods.native.js.map +6 -0
- package/dist/cjs/index.js +11 -60
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/index.native.js +106 -0
- package/dist/cjs/index.native.js.map +6 -0
- package/dist/cjs/inject-styles.js +7 -15
- package/dist/cjs/inject-styles.js.map +1 -1
- package/dist/cjs/inject-styles.native.js +33 -0
- package/dist/cjs/inject-styles.native.js.map +6 -0
- package/dist/cjs/native.js +20 -0
- package/dist/cjs/native.js.map +6 -0
- package/dist/cjs/reactNativeTypes.js +3 -6
- package/dist/cjs/reactNativeTypes.js.map +1 -1
- package/dist/cjs/reactNativeTypes.native.js +15 -0
- package/dist/cjs/reactNativeTypes.native.js.map +6 -0
- package/dist/cjs/vendor/Pressability.js +6 -11
- package/dist/cjs/vendor/Pressability.js.map +1 -1
- package/dist/cjs/vendor/Pressability.native.js +6 -10
- package/dist/cjs/vendor/Pressability.native.js.map +1 -1
- package/dist/esm/helpers/getBoundingClientRect.js +2 -4
- package/dist/esm/helpers/getBoundingClientRect.js.map +1 -1
- package/dist/esm/hooks/useElementLayout.js +24 -34
- package/dist/esm/hooks/useElementLayout.js.map +1 -1
- package/dist/esm/hooks/usePlatformMethods.js +3 -9
- package/dist/esm/hooks/usePlatformMethods.js.map +1 -1
- package/dist/esm/index.js +5 -45
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/inject-styles.js +2 -6
- package/dist/esm/inject-styles.js.map +1 -1
- package/dist/esm/vendor/Pressability.js +1 -2
- package/dist/esm/vendor/Pressability.js.map +1 -1
- package/dist/native.js +6559 -0
- package/dist/native.js.map +6 -0
- package/package.json +14 -6
- package/src/native.ts +1 -0
- package/types/native.d.ts +2 -0
- package/types/native.d.ts.map +1 -0
- package/dist/esm/getBaseViews.native.js +0 -11
- package/dist/esm/getBaseViews.native.js.map +0 -6
- package/dist/esm/vendor/Pressability.native.js +0 -7
- package/dist/esm/vendor/Pressability.native.js.map +0 -6
|
@@ -4,18 +4,12 @@ import { measureLayout } from "./useElementLayout";
|
|
|
4
4
|
function usePlatformMethods(hostRef) {
|
|
5
5
|
useIsomorphicLayoutEffect(() => {
|
|
6
6
|
const node = hostRef.current;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
node.measure = (callback) => measureLayout(node, null, callback);
|
|
10
|
-
node.measureLayout = (relativeToNode, success) => measureLayout(node, relativeToNode, success);
|
|
11
|
-
node.measureInWindow = (callback) => {
|
|
12
|
-
if (!node)
|
|
13
|
-
return;
|
|
14
|
-
setTimeout(() => {
|
|
7
|
+
node && (node.measure = (callback) => measureLayout(node, null, callback), node.measureLayout = (relativeToNode, success) => measureLayout(node, relativeToNode, success), node.measureInWindow = (callback) => {
|
|
8
|
+
node && setTimeout(() => {
|
|
15
9
|
const { height, left, top, width } = getRect(node);
|
|
16
10
|
callback(left, top, width, height);
|
|
17
11
|
}, 0);
|
|
18
|
-
};
|
|
12
|
+
});
|
|
19
13
|
}, [hostRef]);
|
|
20
14
|
}
|
|
21
15
|
export {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/hooks/usePlatformMethods.ts"],
|
|
4
|
-
"mappings": "AAAA,SAAS,iCAAiC;AAG1C,SAAS,eAAe;AACxB,SAAS,qBAAqB;AAGvB,SAAS,mBAAmB,SAA6B;AAC9D,4BAA0B,MAAM;AAC9B,UAAM,OAAO,QAAQ;AACrB,
|
|
4
|
+
"mappings": "AAAA,SAAS,iCAAiC;AAG1C,SAAS,eAAe;AACxB,SAAS,qBAAqB;AAGvB,SAAS,mBAAmB,SAA6B;AAC9D,4BAA0B,MAAM;AAC9B,UAAM,OAAO,QAAQ;AACrB,IAAK,SAEL,KAAK,UAAU,CAAC,aAAa,cAAc,MAAM,MAAM,QAAQ,GAE/D,KAAK,gBAAgB,CAAC,gBAAgB,YACpC,cAAc,MAAqB,gBAAgB,OAAO,GAE5D,KAAK,kBAAkB,CAAC,aAAa;AACnC,MAAK,QACL,WAAW,MAAM;AACf,cAAM,EAAE,QAAQ,MAAM,KAAK,MAAM,IAAI,QAAQ,IAAmB;AAChE,iBAAS,MAAM,KAAK,OAAO,MAAM;AAAA,MACnC,GAAG,CAAC;AAAA,IACN;AAAA,EACF,GAAG,CAAC,OAAO,CAAC;AACd;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/esm/index.js
CHANGED
|
@@ -2,17 +2,15 @@ import { useResponderEvents } from "@tamagui/react-native-use-responder-events";
|
|
|
2
2
|
import {
|
|
3
3
|
Stack as WebStack,
|
|
4
4
|
Text as WebText,
|
|
5
|
-
composeEventHandlers,
|
|
6
5
|
setupHooks
|
|
7
6
|
} from "@tamagui/web";
|
|
8
7
|
import { getBaseViews } from "./getBaseViews";
|
|
9
8
|
import { useElementLayout } from "./hooks/useElementLayout";
|
|
10
9
|
import { usePlatformMethods } from "./hooks/usePlatformMethods";
|
|
11
|
-
import
|
|
10
|
+
import "./vendor/Pressability";
|
|
12
11
|
export * from "@tamagui/web";
|
|
13
12
|
export * from "./reactNativeTypes";
|
|
14
|
-
const Stack = WebStack;
|
|
15
|
-
const Text = WebText;
|
|
13
|
+
const Stack = WebStack, Text = WebText;
|
|
16
14
|
setupHooks({
|
|
17
15
|
getBaseViews,
|
|
18
16
|
usePropsTransform(elementType, propsIn, hostRef) {
|
|
@@ -44,9 +42,7 @@ setupHooks({
|
|
|
44
42
|
hrefAttrs,
|
|
45
43
|
...viewProps
|
|
46
44
|
} = propsIn;
|
|
47
|
-
usePlatformMethods(hostRef)
|
|
48
|
-
useElementLayout(hostRef, onLayout);
|
|
49
|
-
useResponderEvents(hostRef, {
|
|
45
|
+
if (usePlatformMethods(hostRef), useElementLayout(hostRef, onLayout), useResponderEvents(hostRef, {
|
|
50
46
|
onMoveShouldSetResponder,
|
|
51
47
|
onMoveShouldSetResponderCapture,
|
|
52
48
|
onResponderEnd,
|
|
@@ -63,51 +59,15 @@ setupHooks({
|
|
|
63
59
|
onSelectionChangeShouldSetResponderCapture,
|
|
64
60
|
onStartShouldSetResponder,
|
|
65
61
|
onStartShouldSetResponderCapture
|
|
66
|
-
})
|
|
67
|
-
if (viewProps.href !== void 0 && hrefAttrs !== void 0) {
|
|
62
|
+
}), viewProps.href !== void 0 && hrefAttrs !== void 0) {
|
|
68
63
|
const { download, rel, target } = hrefAttrs;
|
|
69
|
-
|
|
70
|
-
viewProps.download = download;
|
|
71
|
-
}
|
|
72
|
-
if (rel != null) {
|
|
73
|
-
viewProps.rel = rel;
|
|
74
|
-
}
|
|
75
|
-
if (typeof target === "string") {
|
|
76
|
-
viewProps.target = target.charAt(0) !== "_" ? `_${target}` : target;
|
|
77
|
-
}
|
|
64
|
+
download != null && (viewProps.download = download), rel != null && (viewProps.rel = rel), typeof target == "string" && (viewProps.target = target.charAt(0) !== "_" ? `_${target}` : target);
|
|
78
65
|
}
|
|
79
66
|
return viewProps;
|
|
80
67
|
},
|
|
81
68
|
useEvents(viewProps, events, { pseudos }, setStateShallow) {
|
|
82
|
-
if (process.env.TAMAGUI_TARGET === "native") {
|
|
83
|
-
const attachFocus = !!(pseudos == null ? void 0 : pseudos.focusStyle);
|
|
84
|
-
if (attachFocus) {
|
|
85
|
-
viewProps.onFocus = composeEventHandlers(viewProps.onFocus, () => {
|
|
86
|
-
setStateShallow({ focus: true });
|
|
87
|
-
});
|
|
88
|
-
viewProps.onBlur = composeEventHandlers(viewProps.onBlur, () => {
|
|
89
|
-
setStateShallow({ focus: false });
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
if (events && viewProps.hitSlop) {
|
|
93
|
-
events.hitSlop = viewProps.hitSlop;
|
|
94
|
-
}
|
|
95
|
-
const pressability = usePressability(events || null);
|
|
96
|
-
if (events) {
|
|
97
|
-
if (events.onPress) {
|
|
98
|
-
for (const key in pressability) {
|
|
99
|
-
const og = viewProps[key];
|
|
100
|
-
const val = pressability[key];
|
|
101
|
-
viewProps[key] = og && !dontComposePressabilityKeys[key] ? composeEventHandlers(og, val) : val;
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
69
|
}
|
|
107
70
|
});
|
|
108
|
-
const dontComposePressabilityKeys = {
|
|
109
|
-
onClick: true
|
|
110
|
-
};
|
|
111
71
|
export {
|
|
112
72
|
Stack,
|
|
113
73
|
Text
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/index.ts"],
|
|
4
|
-
"mappings": "AAAA,SAAS,0BAA0B;AAUnC;AAAA,EACE,SAAS;AAAA,EACT,QAAQ;AAAA,
|
|
4
|
+
"mappings": "AAAA,SAAS,0BAA0B;AAUnC;AAAA,EACE,SAAS;AAAA,EACT,QAAQ;AAAA,EAER;AAAA,OACK;AAGP,SAAS,oBAAoB;AAC7B,SAAS,wBAAwB;AACjC,SAAS,0BAA0B;AAEnC,OAAgC;AAGhC,cAAc;AAGd,cAAc;AAIP,MAAM,QAAQ,UAMR,OAAO;AAQpB,WAAW;AAAA,EACT;AAAA,EAEA,kBAAkB,aAAa,SAAS,SAAS;AAE/C,UAAM;AAAA;AAAA,MAEJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA,MAGA;AAAA,MACA;AAAA;AAAA,MAGA;AAAA,MACA;AAAA,MAEA;AAAA,MACA;AAAA,MAEA,GAAG;AAAA,IACL,IAAI;AAyBJ,QAvBA,mBAAmB,OAA6B,GAChD,iBAAiB,SAA+B,QAAe,GAC/D,mBAAmB,SAAS;AAAA,MAC1B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAQ,GAIJ,UAAU,SAAS,UAAa,cAAc,QAAW;AAC3D,YAAM,EAAE,UAAU,KAAK,OAAO,IAAI;AAClC,MAAI,YAAY,SACd,UAAU,WAAW,WAEnB,OAAO,SACT,UAAU,MAAM,MAEd,OAAO,UAAW,aACpB,UAAU,SAAS,OAAO,OAAO,CAAC,MAAM,MAAM,IAAI,MAAM,KAAK;AAAA,IAEjE;AAEA,WAAO;AAAA,EACT;AAAA,EAEA,UAAU,WAAW,QAAQ,EAAE,QAAQ,GAAG,iBAAiB;AAAA,EAiC3D;AACF,CAAC;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1,12 +1,8 @@
|
|
|
1
|
-
const stylesheets = {}
|
|
2
|
-
const injectStyles = ({ filePath, css }) => {
|
|
1
|
+
const stylesheets = {}, injectStyles = ({ filePath, css }) => {
|
|
3
2
|
let stylesheet = stylesheets[filePath];
|
|
4
3
|
if (!stylesheet) {
|
|
5
4
|
const styleEl = document.createElement("style");
|
|
6
|
-
styleEl.setAttribute("data-file", filePath);
|
|
7
|
-
styleEl.setAttribute("type", "text/css");
|
|
8
|
-
stylesheet = stylesheets[filePath] = styleEl;
|
|
9
|
-
document.head.appendChild(styleEl);
|
|
5
|
+
styleEl.setAttribute("data-file", filePath), styleEl.setAttribute("type", "text/css"), stylesheet = stylesheets[filePath] = styleEl, document.head.appendChild(styleEl);
|
|
10
6
|
}
|
|
11
7
|
stylesheet.innerHTML = css;
|
|
12
8
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/inject-styles.ts"],
|
|
4
|
-
"mappings": "AAEA,MAAM,cAA2C,CAAC
|
|
4
|
+
"mappings": "AAEA,MAAM,cAA2C,CAAC,GAOrC,eAAe,CAAC,EAAE,UAAU,IAAI,MAA2B;AACtE,MAAI,aAAa,YAAY,QAAQ;AACrC,MAAI,CAAC,YAAY;AACf,UAAM,UAAU,SAAS,cAAc,OAAO;AAC9C,YAAQ,aAAa,aAAa,QAAQ,GAC1C,QAAQ,aAAa,QAAQ,UAAU,GACvC,aAAa,YAAY,QAAQ,IAAI,SACrC,SAAS,KAAK,YAAY,OAAO;AAAA,EACnC;AACA,aAAW,YAAY;AACzB;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|