@tamagui/native 2.0.0-1769256574467

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.
Files changed (135) hide show
  1. package/dist/cjs/components.cjs +66 -0
  2. package/dist/cjs/components.js +41 -0
  3. package/dist/cjs/components.js.map +6 -0
  4. package/dist/cjs/components.native.js +75 -0
  5. package/dist/cjs/components.native.js.map +1 -0
  6. package/dist/cjs/gestureState.cjs +47 -0
  7. package/dist/cjs/gestureState.js +42 -0
  8. package/dist/cjs/gestureState.js.map +6 -0
  9. package/dist/cjs/gestureState.native.js +50 -0
  10. package/dist/cjs/gestureState.native.js.map +1 -0
  11. package/dist/cjs/index.cjs +38 -0
  12. package/dist/cjs/index.js +30 -0
  13. package/dist/cjs/index.js.map +6 -0
  14. package/dist/cjs/index.native.js +41 -0
  15. package/dist/cjs/index.native.js.map +1 -0
  16. package/dist/cjs/portalState.cjs +36 -0
  17. package/dist/cjs/portalState.js +28 -0
  18. package/dist/cjs/portalState.js.map +6 -0
  19. package/dist/cjs/portalState.native.js +39 -0
  20. package/dist/cjs/portalState.native.js.map +1 -0
  21. package/dist/cjs/setup-gesture-handler.cjs +27 -0
  22. package/dist/cjs/setup-gesture-handler.js +24 -0
  23. package/dist/cjs/setup-gesture-handler.js.map +6 -0
  24. package/dist/cjs/setup-gesture-handler.native.js +30 -0
  25. package/dist/cjs/setup-gesture-handler.native.js.map +1 -0
  26. package/dist/cjs/setup-portal.cjs +66 -0
  27. package/dist/cjs/setup-portal.js +53 -0
  28. package/dist/cjs/setup-portal.js.map +6 -0
  29. package/dist/cjs/setup-portal.native.js +74 -0
  30. package/dist/cjs/setup-portal.native.js.map +1 -0
  31. package/dist/cjs/setup-worklets.cjs +18 -0
  32. package/dist/cjs/setup-worklets.js +20 -0
  33. package/dist/cjs/setup-worklets.js.map +6 -0
  34. package/dist/cjs/setup-worklets.native.js +21 -0
  35. package/dist/cjs/setup-worklets.native.js.map +1 -0
  36. package/dist/cjs/setup.cjs +64 -0
  37. package/dist/cjs/setup.js +50 -0
  38. package/dist/cjs/setup.js.map +6 -0
  39. package/dist/cjs/setup.native.js +72 -0
  40. package/dist/cjs/setup.native.js.map +1 -0
  41. package/dist/cjs/state.cjs +36 -0
  42. package/dist/cjs/state.js +28 -0
  43. package/dist/cjs/state.js.map +6 -0
  44. package/dist/cjs/state.native.js +39 -0
  45. package/dist/cjs/state.native.js.map +1 -0
  46. package/dist/cjs/workletsState.cjs +48 -0
  47. package/dist/cjs/workletsState.js +43 -0
  48. package/dist/cjs/workletsState.js.map +6 -0
  49. package/dist/cjs/workletsState.native.js +51 -0
  50. package/dist/cjs/workletsState.native.js.map +1 -0
  51. package/dist/esm/components.js +26 -0
  52. package/dist/esm/components.js.map +6 -0
  53. package/dist/esm/components.mjs +41 -0
  54. package/dist/esm/components.mjs.map +1 -0
  55. package/dist/esm/components.native.js +47 -0
  56. package/dist/esm/components.native.js.map +1 -0
  57. package/dist/esm/gestureState.js +26 -0
  58. package/dist/esm/gestureState.js.map +6 -0
  59. package/dist/esm/gestureState.mjs +22 -0
  60. package/dist/esm/gestureState.mjs.map +1 -0
  61. package/dist/esm/gestureState.native.js +22 -0
  62. package/dist/esm/gestureState.native.js.map +1 -0
  63. package/dist/esm/index.js +21 -0
  64. package/dist/esm/index.js.map +6 -0
  65. package/dist/esm/index.mjs +6 -0
  66. package/dist/esm/index.mjs.map +1 -0
  67. package/dist/esm/index.native.js +6 -0
  68. package/dist/esm/index.native.js.map +1 -0
  69. package/dist/esm/portalState.js +12 -0
  70. package/dist/esm/portalState.js.map +6 -0
  71. package/dist/esm/portalState.mjs +12 -0
  72. package/dist/esm/portalState.mjs.map +1 -0
  73. package/dist/esm/portalState.native.js +12 -0
  74. package/dist/esm/portalState.native.js.map +1 -0
  75. package/dist/esm/setup-gesture-handler.js +24 -0
  76. package/dist/esm/setup-gesture-handler.js.map +6 -0
  77. package/dist/esm/setup-gesture-handler.mjs +28 -0
  78. package/dist/esm/setup-gesture-handler.mjs.map +1 -0
  79. package/dist/esm/setup-gesture-handler.native.js +28 -0
  80. package/dist/esm/setup-gesture-handler.native.js.map +1 -0
  81. package/dist/esm/setup-portal.js +37 -0
  82. package/dist/esm/setup-portal.js.map +6 -0
  83. package/dist/esm/setup-portal.mjs +43 -0
  84. package/dist/esm/setup-portal.mjs.map +1 -0
  85. package/dist/esm/setup-portal.native.js +48 -0
  86. package/dist/esm/setup-portal.native.js.map +1 -0
  87. package/dist/esm/setup-worklets.js +20 -0
  88. package/dist/esm/setup-worklets.js.map +6 -0
  89. package/dist/esm/setup-worklets.mjs +19 -0
  90. package/dist/esm/setup-worklets.mjs.map +1 -0
  91. package/dist/esm/setup-worklets.native.js +19 -0
  92. package/dist/esm/setup-worklets.native.js.map +1 -0
  93. package/dist/esm/setup.js +34 -0
  94. package/dist/esm/setup.js.map +6 -0
  95. package/dist/esm/setup.mjs +41 -0
  96. package/dist/esm/setup.mjs.map +1 -0
  97. package/dist/esm/setup.native.js +46 -0
  98. package/dist/esm/setup.native.js.map +1 -0
  99. package/dist/esm/state.js +12 -0
  100. package/dist/esm/state.js.map +6 -0
  101. package/dist/esm/state.mjs +12 -0
  102. package/dist/esm/state.mjs.map +1 -0
  103. package/dist/esm/state.native.js +12 -0
  104. package/dist/esm/state.native.js.map +1 -0
  105. package/dist/esm/workletsState.js +27 -0
  106. package/dist/esm/workletsState.js.map +6 -0
  107. package/dist/esm/workletsState.mjs +23 -0
  108. package/dist/esm/workletsState.mjs.map +1 -0
  109. package/dist/esm/workletsState.native.js +23 -0
  110. package/dist/esm/workletsState.native.js.map +1 -0
  111. package/package.json +110 -0
  112. package/src/components.tsx +55 -0
  113. package/src/gestureState.ts +34 -0
  114. package/src/index.ts +39 -0
  115. package/src/portalState.ts +15 -0
  116. package/src/setup-gesture-handler.ts +51 -0
  117. package/src/setup-portal.ts +63 -0
  118. package/src/setup-worklets.ts +49 -0
  119. package/src/workletsState.ts +36 -0
  120. package/types/components.d.ts +28 -0
  121. package/types/components.d.ts.map +11 -0
  122. package/types/gestureState.d.ts +11 -0
  123. package/types/gestureState.d.ts.map +11 -0
  124. package/types/index.d.ts +26 -0
  125. package/types/index.d.ts.map +11 -0
  126. package/types/portalState.d.ts +8 -0
  127. package/types/portalState.d.ts.map +11 -0
  128. package/types/setup-gesture-handler.d.ts +3 -0
  129. package/types/setup-gesture-handler.d.ts.map +11 -0
  130. package/types/setup-portal.d.ts +3 -0
  131. package/types/setup-portal.d.ts.map +11 -0
  132. package/types/setup-worklets.d.ts +3 -0
  133. package/types/setup-worklets.d.ts.map +11 -0
  134. package/types/workletsState.d.ts +12 -0
  135. package/types/workletsState.d.ts.map +11 -0
@@ -0,0 +1,43 @@
1
+ import { setNativePortalState } from "./portalState.mjs";
2
+ const IS_FABRIC = typeof global < "u" && !!(global._IS_FABRIC ?? global.nativeFabricUIManager);
3
+ function setup() {
4
+ const g = globalThis;
5
+ if (!g.__tamagui_native_portal_setup) {
6
+ g.__tamagui_native_portal_setup = !0;
7
+ try {
8
+ const teleport = require("react-native-teleport");
9
+ if (teleport?.Portal && teleport?.PortalHost && teleport?.PortalProvider) {
10
+ g.__tamagui_teleport = teleport, setNativePortalState({
11
+ enabled: !0,
12
+ type: "teleport"
13
+ });
14
+ return;
15
+ }
16
+ } catch {}
17
+ if (IS_FABRIC) {
18
+ try {
19
+ const mod = require("react-native/Libraries/Renderer/shims/ReactFabric");
20
+ g.__tamagui_portal_create = mod?.default?.createPortal ?? mod.createPortal, setNativePortalState({
21
+ enabled: !0,
22
+ type: "legacy"
23
+ });
24
+ } catch (err) {
25
+ console.info("Note: error importing fabric portal, native portals disabled", err);
26
+ }
27
+ return;
28
+ }
29
+ try {
30
+ const mod = require("react-native/Libraries/Renderer/shims/ReactNative");
31
+ g.__tamagui_portal_create = mod?.default?.createPortal ?? mod.createPortal, setNativePortalState({
32
+ enabled: !0,
33
+ type: "legacy"
34
+ });
35
+ } catch (err) {
36
+ console.info("Note: error importing native portal, native portals disabled", err);
37
+ }
38
+ }
39
+ }
40
+ setup();
41
+ const setupNativePortal = setup;
42
+ export { setupNativePortal };
43
+ //# sourceMappingURL=setup-portal.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["setNativePortalState","IS_FABRIC","global","_IS_FABRIC","nativeFabricUIManager","setup","g","globalThis","__tamagui_native_portal_setup","teleport","require","Portal","PortalHost","PortalProvider","__tamagui_teleport","enabled","type","mod","__tamagui_portal_create","default","createPortal","err","console","info","setupNativePortal"],"sources":["../../src/setup-portal.ts"],"sourcesContent":[null],"mappings":"AAcA,SAASA,oBAAA,QAA4B;AAErC,MAAMC,SAAA,GACJ,OAAOC,MAAA,GAAW,OAClB,GAASA,MAAA,CAAeC,UAAA,IAAeD,MAAA,CAAeE,qBAAA;AAExD,SAASC,MAAA,EAAQ;EACf,MAAMC,CAAA,GAAIC,UAAA;EACV,IAAI,CAAAD,CAAA,CAAEE,6BAAA,EACN;IAAAF,CAAA,CAAEE,6BAAA,GAAgC;IAGlC,IAAI;MACF,MAAMC,QAAA,GAAWC,OAAA,CAAQ,uBAAuB;MAChD,IAAID,QAAA,EAAUE,MAAA,IAAUF,QAAA,EAAUG,UAAA,IAAcH,QAAA,EAAUI,cAAA,EAAgB;QACxEP,CAAA,CAAEQ,kBAAA,GAAqBL,QAAA,EACvBT,oBAAA,CAAqB;UAAEe,OAAA,EAAS;UAAMC,IAAA,EAAM;QAAW,CAAC;QACxD;MACF;IACF,QAAQ,CAER;IAGA,IAAIf,SAAA,EAAW;MACb,IAAI;QACF,MAAMgB,GAAA,GAAMP,OAAA,CAAQ,mDAAmD;QACvEJ,CAAA,CAAEY,uBAAA,GAA0BD,GAAA,EAAKE,OAAA,EAASC,YAAA,IAAgBH,GAAA,CAAIG,YAAA,EAC9DpB,oBAAA,CAAqB;UAAEe,OAAA,EAAS;UAAMC,IAAA,EAAM;QAAS,CAAC;MACxD,SAASK,GAAA,EAAK;QACZC,OAAA,CAAQC,IAAA,CAAK,gEAAgEF,GAAG;MAClF;MACA;IACF;IAEA,IAAI;MACF,MAAMJ,GAAA,GAAMP,OAAA,CAAQ,mDAAmD;MACvEJ,CAAA,CAAEY,uBAAA,GAA0BD,GAAA,EAAKE,OAAA,EAASC,YAAA,IAAgBH,GAAA,CAAIG,YAAA,EAC9DpB,oBAAA,CAAqB;QAAEe,OAAA,EAAS;QAAMC,IAAA,EAAM;MAAS,CAAC;IACxD,SAASK,GAAA,EAAK;MACZC,OAAA,CAAQC,IAAA,CAAK,gEAAgEF,GAAG;IAClF;EAAA;AACF;AAGAhB,KAAA,CAAM;AAGC,MAAMmB,iBAAA,GAAoBnB,KAAA","ignoreList":[]}
@@ -0,0 +1,48 @@
1
+ import { setNativePortalState } from "./portalState.native.js";
2
+ var _global__IS_FABRIC,
3
+ IS_FABRIC = typeof global < "u" && !!((_global__IS_FABRIC = global._IS_FABRIC) !== null && _global__IS_FABRIC !== void 0 ? _global__IS_FABRIC : global.nativeFabricUIManager);
4
+ function setup() {
5
+ var g = globalThis;
6
+ if (!g.__tamagui_native_portal_setup) {
7
+ g.__tamagui_native_portal_setup = !0;
8
+ try {
9
+ var teleport = require("react-native-teleport");
10
+ if (teleport?.Portal && teleport?.PortalHost && teleport?.PortalProvider) {
11
+ g.__tamagui_teleport = teleport, setNativePortalState({
12
+ enabled: !0,
13
+ type: "teleport"
14
+ });
15
+ return;
16
+ }
17
+ } catch {}
18
+ if (IS_FABRIC) {
19
+ try {
20
+ var _mod_default,
21
+ mod = require("react-native/Libraries/Renderer/shims/ReactFabric"),
22
+ _mod_default_createPortal;
23
+ g.__tamagui_portal_create = (_mod_default_createPortal = mod == null || (_mod_default = mod.default) === null || _mod_default === void 0 ? void 0 : _mod_default.createPortal) !== null && _mod_default_createPortal !== void 0 ? _mod_default_createPortal : mod.createPortal, setNativePortalState({
24
+ enabled: !0,
25
+ type: "legacy"
26
+ });
27
+ } catch (err) {
28
+ console.info("Note: error importing fabric portal, native portals disabled", err);
29
+ }
30
+ return;
31
+ }
32
+ try {
33
+ var _mod_default1,
34
+ mod1 = require("react-native/Libraries/Renderer/shims/ReactNative"),
35
+ _mod_default_createPortal1;
36
+ g.__tamagui_portal_create = (_mod_default_createPortal1 = mod1 == null || (_mod_default1 = mod1.default) === null || _mod_default1 === void 0 ? void 0 : _mod_default1.createPortal) !== null && _mod_default_createPortal1 !== void 0 ? _mod_default_createPortal1 : mod1.createPortal, setNativePortalState({
37
+ enabled: !0,
38
+ type: "legacy"
39
+ });
40
+ } catch (err) {
41
+ console.info("Note: error importing native portal, native portals disabled", err);
42
+ }
43
+ }
44
+ }
45
+ setup();
46
+ var setupNativePortal = setup;
47
+ export { setupNativePortal };
48
+ //# sourceMappingURL=setup-portal.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["setNativePortalState","_global__IS_FABRIC","IS_FABRIC","global","_IS_FABRIC","nativeFabricUIManager","setup","g","globalThis","__tamagui_native_portal_setup","teleport","require","Portal","PortalHost","PortalProvider","__tamagui_teleport","enabled","type","_mod_default","mod","_mod_default_createPortal","__tamagui_portal_create","default","createPortal","err","console","info","_mod_default1","mod1","_mod_default_createPortal1"],"sources":["../../src/setup-portal.ts"],"sourcesContent":[null],"mappings":"AAcA,SAASA,oBAAA,QAA4B;AAErC,IAAAC,kBACE;EAAAC,SAAO,GAAW,OAClBC,MAAS,GAAe,WAAAF,kBAA8B,GAAAE,MAAA,CAAAC,UAAA,cAAAH,kBAAA,cAAAA,kBAAA,GAAAE,MAAA,CAAAE,qBAAA;AAExD,SAASC,MAAA,EAAQ;EACf,IAAAC,CAAA,GAAMC,UAAI;EACV,IAAI,CAAAD,CAAA,CAAEE,6BAAA,EACN;IAAAF,CAAA,CAAEE,6BAAA,GAAgC;IAGlC,IAAI;MACF,IAAAC,QAAM,GAAAC,OAAW,wBAAQ;MACzB,IAAID,QAAA,EAAUE,MAAA,IAAUF,QAAA,EAAUG,UAAA,IAAcH,QAAA,EAAUI,cAAA,EAAgB;QACxEP,CAAA,CAAEQ,kBAAA,GAAqBL,QAAA,EACvBV,oBAAA,CAAqB;UACrBgB,OAAA;UACFC,IAAA;QACF;QAEA;MAGA;IACE,QAAI,CACF;IACA,IAAAf,SAAE;MAEJ;QACE,IAAAgB,YAAa;UAAAC,GAAA,GAAAR,OAAA,oDAAmE;UAAAS,yBAAA;QAClFb,CAAA,CAAAc,uBAAA,IAAAD,yBAAA,GAAAD,GAAA,aAAAD,YAAA,GAAAC,GAAA,CAAAG,OAAA,cAAAJ,YAAA,uBAAAA,YAAA,CAAAK,YAAA,cAAAH,yBAAA,cAAAA,yBAAA,GAAAD,GAAA,CAAAI,YAAA,EAAAvB,oBAAA;UACAgB,OAAA;UACFC,IAAA;QAEI;MACF,SAAMO,GAAM;QACVC,OAAA,CAAAC,IAAA,+DACF,EAAAF,GAAA;MACF;MACE;IACF;IAAA;MACF,IAAAG,aAAA;QAAAC,IAAA,GAAAjB,OAAA;QAAAkB,0BAAA;MAGMtB,CAAA,CAAAc,uBAAA,IAAAQ,0BAAA,GAAAD,IAAA,aAAAD,aAAA,GAAAC,IAAA,CAAAN,OAAA,cAAAK,aAAA,uBAAAA,aAAA,CAAAJ,YAAA,cAAAM,0BAAA,cAAAA,0BAAA,GAAAD,IAAA,CAAAL,YAAA,EAAAvB,oBAAA;QAGOgB,OAAA","ignoreList":[]}
@@ -0,0 +1,20 @@
1
+ import { setWorkletsState } from "./workletsState";
2
+ function setup() {
3
+ const g = globalThis;
4
+ if (!g.__tamagui_native_worklets_setup_complete) {
5
+ g.__tamagui_native_worklets_setup_complete = !0;
6
+ try {
7
+ const worklets = require("react-native-worklets-core");
8
+ worklets && setWorkletsState({
9
+ enabled: !0,
10
+ Worklets: worklets.Worklets,
11
+ useRunOnJS: worklets.useRunOnJS,
12
+ useWorklet: worklets.useWorklet,
13
+ createWorkletContextValue: worklets.createWorkletContextValue
14
+ });
15
+ } catch {
16
+ }
17
+ }
18
+ }
19
+ setup();
20
+ //# sourceMappingURL=setup-worklets.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/setup-worklets.ts"],
4
+ "mappings": "AAoBA,SAAS,wBAAwB;AAEjC,SAAS,QAAQ;AACf,QAAM,IAAI;AACV,MAAI,GAAE,0CAGN;AAAA,MAAE,2CAA2C;AAE7C,QAAI;AAEF,YAAM,WAAW,QAAQ,4BAA4B;AAErD,MAAI,YACF,iBAAiB;AAAA,QACf,SAAS;AAAA,QACT,UAAU,SAAS;AAAA,QACnB,YAAY,SAAS;AAAA,QACrB,YAAY,SAAS;AAAA,QACrB,2BAA2B,SAAS;AAAA,MACtC,CAAC;AAAA,IAEL,QAAQ;AAAA,IAER;AAAA;AACF;AAGA,MAAM;",
5
+ "names": []
6
+ }
@@ -0,0 +1,19 @@
1
+ import { setWorkletsState } from "./workletsState.mjs";
2
+ function setup() {
3
+ const g = globalThis;
4
+ if (!g.__tamagui_native_worklets_setup_complete) {
5
+ g.__tamagui_native_worklets_setup_complete = !0;
6
+ try {
7
+ const worklets = require("react-native-worklets-core");
8
+ worklets && setWorkletsState({
9
+ enabled: !0,
10
+ Worklets: worklets.Worklets,
11
+ useRunOnJS: worklets.useRunOnJS,
12
+ useWorklet: worklets.useWorklet,
13
+ createWorkletContextValue: worklets.createWorkletContextValue
14
+ });
15
+ } catch {}
16
+ }
17
+ }
18
+ setup();
19
+ //# sourceMappingURL=setup-worklets.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["setWorkletsState","setup","g","globalThis","__tamagui_native_worklets_setup_complete","worklets","require","enabled","Worklets","useRunOnJS","useWorklet","createWorkletContextValue"],"sources":["../../src/setup-worklets.ts"],"sourcesContent":[null],"mappings":"AAoBA,SAASA,gBAAA,QAAwB;AAEjC,SAASC,MAAA,EAAQ;EACf,MAAMC,CAAA,GAAIC,UAAA;EACV,IAAI,CAAAD,CAAA,CAAEE,wCAAA,EAGN;IAAAF,CAAA,CAAEE,wCAAA,GAA2C;IAE7C,IAAI;MAEF,MAAMC,QAAA,GAAWC,OAAA,CAAQ,4BAA4B;MAEjDD,QAAA,IACFL,gBAAA,CAAiB;QACfO,OAAA,EAAS;QACTC,QAAA,EAAUH,QAAA,CAASG,QAAA;QACnBC,UAAA,EAAYJ,QAAA,CAASI,UAAA;QACrBC,UAAA,EAAYL,QAAA,CAASK,UAAA;QACrBC,yBAAA,EAA2BN,QAAA,CAASM;MACtC,CAAC;IAEL,QAAQ,CAER;EAAA;AACF;AAGAV,KAAA,CAAM","ignoreList":[]}
@@ -0,0 +1,19 @@
1
+ import { setWorkletsState } from "./workletsState.native.js";
2
+ function setup() {
3
+ var g = globalThis;
4
+ if (!g.__tamagui_native_worklets_setup_complete) {
5
+ g.__tamagui_native_worklets_setup_complete = !0;
6
+ try {
7
+ var worklets = require("react-native-worklets-core");
8
+ worklets && setWorkletsState({
9
+ enabled: !0,
10
+ Worklets: worklets.Worklets,
11
+ useRunOnJS: worklets.useRunOnJS,
12
+ useWorklet: worklets.useWorklet,
13
+ createWorkletContextValue: worklets.createWorkletContextValue
14
+ });
15
+ } catch {}
16
+ }
17
+ }
18
+ setup();
19
+ //# sourceMappingURL=setup-worklets.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["setWorkletsState","setup","g","globalThis","__tamagui_native_worklets_setup_complete","worklets","require","enabled","Worklets","useRunOnJS","useWorklet","createWorkletContextValue"],"sources":["../../src/setup-worklets.ts"],"sourcesContent":[null],"mappings":"AAoBA,SAASA,gBAAA,QAAwB;AAEjC,SAASC,MAAA,EAAQ;EACf,IAAAC,CAAA,GAAMC,UAAI;EACV,IAAI,CAAAD,CAAA,CAAEE,wCAAA,EAGN;IAAAF,CAAA,CAAEE,wCAAA,GAA2C;IAE7C,IAAI;MAEF,IAAAC,QAAM,GAAAC,OAAW,6BAAQ;MAErBD,QAAA,IACFL,gBAAA,CAAiB;QACfO,OAAA,EAAS;QACTC,QAAA,EAAUH,QAAA,CAASG,QAAA;QACnBC,UAAA,EAAYJ,QAAA,CAASI,UAAA;QACrBC,UAAA,EAAYL,QAAA,CAASK,UAAA;QACrBC,yBAAA,EAA2BN,QAAA,CAASM;MACtC,CAAC;IAEL,QAAQ,CAER;EAAA;AACF;AAGAV,KAAA,CAAM","ignoreList":[]}
@@ -0,0 +1,34 @@
1
+ import { setNativePortalState } from "./state";
2
+ const IS_FABRIC = typeof global < "u" && !!(global._IS_FABRIC ?? global.nativeFabricUIManager), setupNativePortal = () => {
3
+ const g = globalThis;
4
+ if (!g.__tamagui_native_portal_setup) {
5
+ g.__tamagui_native_portal_setup = !0;
6
+ try {
7
+ const teleport = require("react-native-teleport");
8
+ if (teleport?.Portal && teleport?.PortalHost && teleport?.PortalProvider) {
9
+ g.__tamagui_teleport = teleport, setNativePortalState({ enabled: !0, type: "teleport" });
10
+ return;
11
+ }
12
+ } catch {
13
+ }
14
+ if (IS_FABRIC) {
15
+ try {
16
+ const mod = require("react-native/Libraries/Renderer/shims/ReactFabric");
17
+ g.__tamagui_portal_create = mod?.default?.createPortal ?? mod.createPortal, setNativePortalState({ enabled: !0, type: "legacy" });
18
+ } catch (err) {
19
+ console.info("Note: error importing fabric portal, native portals disabled", err);
20
+ }
21
+ return;
22
+ }
23
+ try {
24
+ const mod = require("react-native/Libraries/Renderer/shims/ReactNative");
25
+ g.__tamagui_portal_create = mod?.default?.createPortal ?? mod.createPortal, setNativePortalState({ enabled: !0, type: "legacy" });
26
+ } catch (err) {
27
+ console.info("Note: error importing native portal, native portals disabled", err);
28
+ }
29
+ }
30
+ };
31
+ export {
32
+ setupNativePortal
33
+ };
34
+ //# sourceMappingURL=setup.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/setup.ts"],
4
+ "mappings": "AAAA,SAAS,4BAA4B;AAErC,MAAM,YACJ,OAAO,SAAW,OAClB,GAAS,OAAe,cAAe,OAAe,wBAS3C,oBAAoB,MAAY;AAC3C,QAAM,IAAI;AACV,MAAI,GAAE,+BACN;AAAA,MAAE,gCAAgC;AAGlC,QAAI;AACF,YAAM,WAAW,QAAQ,uBAAuB;AAChD,UAAI,UAAU,UAAU,UAAU,cAAc,UAAU,gBAAgB;AACxE,UAAE,qBAAqB,UACvB,qBAAqB,EAAE,SAAS,IAAM,MAAM,WAAW,CAAC;AACxD;AAAA,MACF;AAAA,IACF,QAAQ;AAAA,IAER;AAGA,QAAI,WAAW;AACb,UAAI;AACF,cAAM,MAAM,QAAQ,mDAAmD;AACvE,UAAE,0BAA0B,KAAK,SAAS,gBAAgB,IAAI,cAC9D,qBAAqB,EAAE,SAAS,IAAM,MAAM,SAAS,CAAC;AAAA,MACxD,SAAS,KAAK;AACZ,gBAAQ,KAAK,gEAAgE,GAAG;AAAA,MAClF;AACA;AAAA,IACF;AAEA,QAAI;AACF,YAAM,MAAM,QAAQ,mDAAmD;AACvE,QAAE,0BAA0B,KAAK,SAAS,gBAAgB,IAAI,cAC9D,qBAAqB,EAAE,SAAS,IAAM,MAAM,SAAS,CAAC;AAAA,IACxD,SAAS,KAAK;AACZ,cAAQ,KAAK,gEAAgE,GAAG;AAAA,IAClF;AAAA;AACF;",
5
+ "names": []
6
+ }
@@ -0,0 +1,41 @@
1
+ import { setNativePortalState } from "./state.mjs";
2
+ const IS_FABRIC = typeof global < "u" && !!(global._IS_FABRIC ?? global.nativeFabricUIManager),
3
+ setupNativePortal = () => {
4
+ const g = globalThis;
5
+ if (!g.__tamagui_native_portal_setup) {
6
+ g.__tamagui_native_portal_setup = !0;
7
+ try {
8
+ const teleport = require("react-native-teleport");
9
+ if (teleport?.Portal && teleport?.PortalHost && teleport?.PortalProvider) {
10
+ g.__tamagui_teleport = teleport, setNativePortalState({
11
+ enabled: !0,
12
+ type: "teleport"
13
+ });
14
+ return;
15
+ }
16
+ } catch {}
17
+ if (IS_FABRIC) {
18
+ try {
19
+ const mod = require("react-native/Libraries/Renderer/shims/ReactFabric");
20
+ g.__tamagui_portal_create = mod?.default?.createPortal ?? mod.createPortal, setNativePortalState({
21
+ enabled: !0,
22
+ type: "legacy"
23
+ });
24
+ } catch (err) {
25
+ console.info("Note: error importing fabric portal, native portals disabled", err);
26
+ }
27
+ return;
28
+ }
29
+ try {
30
+ const mod = require("react-native/Libraries/Renderer/shims/ReactNative");
31
+ g.__tamagui_portal_create = mod?.default?.createPortal ?? mod.createPortal, setNativePortalState({
32
+ enabled: !0,
33
+ type: "legacy"
34
+ });
35
+ } catch (err) {
36
+ console.info("Note: error importing native portal, native portals disabled", err);
37
+ }
38
+ }
39
+ };
40
+ export { setupNativePortal };
41
+ //# sourceMappingURL=setup.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["setNativePortalState","IS_FABRIC","global","_IS_FABRIC","nativeFabricUIManager","setupNativePortal","g","globalThis","__tamagui_native_portal_setup","teleport","require","Portal","PortalHost","PortalProvider","__tamagui_teleport","enabled","type","mod","__tamagui_portal_create","default","createPortal","err","console","info"],"sources":["../../src/setup.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,oBAAA,QAA4B;AAErC,MAAMC,SAAA,GACJ,OAAOC,MAAA,GAAW,OAClB,GAASA,MAAA,CAAeC,UAAA,IAAeD,MAAA,CAAeE,qBAAA;EAS3CC,iBAAA,GAAoBA,CAAA,KAAY;IAC3C,MAAMC,CAAA,GAAIC,UAAA;IACV,IAAI,CAAAD,CAAA,CAAEE,6BAAA,EACN;MAAAF,CAAA,CAAEE,6BAAA,GAAgC;MAGlC,IAAI;QACF,MAAMC,QAAA,GAAWC,OAAA,CAAQ,uBAAuB;QAChD,IAAID,QAAA,EAAUE,MAAA,IAAUF,QAAA,EAAUG,UAAA,IAAcH,QAAA,EAAUI,cAAA,EAAgB;UACxEP,CAAA,CAAEQ,kBAAA,GAAqBL,QAAA,EACvBT,oBAAA,CAAqB;YAAEe,OAAA,EAAS;YAAMC,IAAA,EAAM;UAAW,CAAC;UACxD;QACF;MACF,QAAQ,CAER;MAGA,IAAIf,SAAA,EAAW;QACb,IAAI;UACF,MAAMgB,GAAA,GAAMP,OAAA,CAAQ,mDAAmD;UACvEJ,CAAA,CAAEY,uBAAA,GAA0BD,GAAA,EAAKE,OAAA,EAASC,YAAA,IAAgBH,GAAA,CAAIG,YAAA,EAC9DpB,oBAAA,CAAqB;YAAEe,OAAA,EAAS;YAAMC,IAAA,EAAM;UAAS,CAAC;QACxD,SAASK,GAAA,EAAK;UACZC,OAAA,CAAQC,IAAA,CAAK,gEAAgEF,GAAG;QAClF;QACA;MACF;MAEA,IAAI;QACF,MAAMJ,GAAA,GAAMP,OAAA,CAAQ,mDAAmD;QACvEJ,CAAA,CAAEY,uBAAA,GAA0BD,GAAA,EAAKE,OAAA,EAASC,YAAA,IAAgBH,GAAA,CAAIG,YAAA,EAC9DpB,oBAAA,CAAqB;UAAEe,OAAA,EAAS;UAAMC,IAAA,EAAM;QAAS,CAAC;MACxD,SAASK,GAAA,EAAK;QACZC,OAAA,CAAQC,IAAA,CAAK,gEAAgEF,GAAG;MAClF;IAAA;EACF","ignoreList":[]}
@@ -0,0 +1,46 @@
1
+ import { setNativePortalState } from "./state.native.js";
2
+ var _global__IS_FABRIC,
3
+ IS_FABRIC = typeof global < "u" && !!((_global__IS_FABRIC = global._IS_FABRIC) !== null && _global__IS_FABRIC !== void 0 ? _global__IS_FABRIC : global.nativeFabricUIManager),
4
+ setupNativePortal = function () {
5
+ var g = globalThis;
6
+ if (!g.__tamagui_native_portal_setup) {
7
+ g.__tamagui_native_portal_setup = !0;
8
+ try {
9
+ var teleport = require("react-native-teleport");
10
+ if (teleport?.Portal && teleport?.PortalHost && teleport?.PortalProvider) {
11
+ g.__tamagui_teleport = teleport, setNativePortalState({
12
+ enabled: !0,
13
+ type: "teleport"
14
+ });
15
+ return;
16
+ }
17
+ } catch {}
18
+ if (IS_FABRIC) {
19
+ try {
20
+ var _mod_default,
21
+ mod = require("react-native/Libraries/Renderer/shims/ReactFabric"),
22
+ _mod_default_createPortal;
23
+ g.__tamagui_portal_create = (_mod_default_createPortal = mod == null || (_mod_default = mod.default) === null || _mod_default === void 0 ? void 0 : _mod_default.createPortal) !== null && _mod_default_createPortal !== void 0 ? _mod_default_createPortal : mod.createPortal, setNativePortalState({
24
+ enabled: !0,
25
+ type: "legacy"
26
+ });
27
+ } catch (err) {
28
+ console.info("Note: error importing fabric portal, native portals disabled", err);
29
+ }
30
+ return;
31
+ }
32
+ try {
33
+ var _mod_default1,
34
+ mod1 = require("react-native/Libraries/Renderer/shims/ReactNative"),
35
+ _mod_default_createPortal1;
36
+ g.__tamagui_portal_create = (_mod_default_createPortal1 = mod1 == null || (_mod_default1 = mod1.default) === null || _mod_default1 === void 0 ? void 0 : _mod_default1.createPortal) !== null && _mod_default_createPortal1 !== void 0 ? _mod_default_createPortal1 : mod1.createPortal, setNativePortalState({
37
+ enabled: !0,
38
+ type: "legacy"
39
+ });
40
+ } catch (err) {
41
+ console.info("Note: error importing native portal, native portals disabled", err);
42
+ }
43
+ }
44
+ };
45
+ export { setupNativePortal };
46
+ //# sourceMappingURL=setup.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["setNativePortalState","_global__IS_FABRIC","IS_FABRIC","global","_IS_FABRIC","nativeFabricUIManager","setupNativePortal","g","globalThis","__tamagui_native_portal_setup","teleport","require","Portal","PortalHost","PortalProvider","__tamagui_teleport","enabled","type","_mod_default","mod","_mod_default_createPortal","__tamagui_portal_create","default","createPortal","err","console","info","_mod_default1","mod1","_mod_default_createPortal1"],"sources":["../../src/setup.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,oBAAA,QAA4B;AAErC,IAAAC,kBACE;EAAAC,SAAO,GAAW,OAClBC,MAAS,GAAe,WAAAF,kBAA8B,GAAAE,MAAA,CAAAC,UAS3C,cAAAH,kBAAgC,cAAAA,kBAAA,GAAAE,MAAA,CAAAE,qBAAA;EAAAC,iBAAA,YAAAA,CAAA;IAC3C,IAAAC,CAAA,GAAMC,UAAI;IACV,IAAI,CAAAD,CAAA,CAAEE,6BAAA,EACN;MAAAF,CAAA,CAAEE,6BAAA,GAAgC;MAGlC,IAAI;QACF,IAAAC,QAAM,GAAAC,OAAW,wBAAQ;QACzB,IAAID,QAAA,EAAUE,MAAA,IAAUF,QAAA,EAAUG,UAAA,IAAcH,QAAA,EAAUI,cAAA,EAAgB;UACxEP,CAAA,CAAEQ,kBAAA,GAAqBL,QAAA,EACvBV,oBAAA,CAAqB;YACrBgB,OAAA;YACFC,IAAA;UACF;UAEA;QAGA;MACE,QAAI,CACF;MACA,IAAAf,SAAE;QAEJ;UACE,IAAAgB,YAAa;YAAAC,GAAA,GAAAR,OAAA,oDAAmE;YAAAS,yBAAA;UAClFb,CAAA,CAAAc,uBAAA,IAAAD,yBAAA,GAAAD,GAAA,aAAAD,YAAA,GAAAC,GAAA,CAAAG,OAAA,cAAAJ,YAAA,uBAAAA,YAAA,CAAAK,YAAA,cAAAH,yBAAA,cAAAA,yBAAA,GAAAD,GAAA,CAAAI,YAAA,EAAAvB,oBAAA;YACAgB,OAAA;YACFC,IAAA;UAEI;QACF,SAAMO,GAAM;UACVC,OAAA,CAAAC,IAAA,+DACF,EAAAF,GAAA;QACF;QACE;MACF;MAAA;QACF,IAAAG,aAAA;UAAAC,IAAA,GAAAjB,OAAA;UAAAkB,0BAAA","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ let state = { enabled: !1, type: null };
2
+ function setNativePortalState(newState) {
3
+ state = newState;
4
+ }
5
+ function getNativePortalState() {
6
+ return state;
7
+ }
8
+ export {
9
+ getNativePortalState,
10
+ setNativePortalState
11
+ };
12
+ //# sourceMappingURL=state.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/state.ts"],
4
+ "mappings": "AAKA,IAAI,QAA2B,EAAE,SAAS,IAAO,MAAM,KAAK;AAErD,SAAS,qBAAqB,UAA6B;AAChE,UAAQ;AACV;AAEO,SAAS,uBAA0C;AACxD,SAAO;AACT;",
5
+ "names": []
6
+ }
@@ -0,0 +1,12 @@
1
+ let state = {
2
+ enabled: !1,
3
+ type: null
4
+ };
5
+ function setNativePortalState(newState) {
6
+ state = newState;
7
+ }
8
+ function getNativePortalState() {
9
+ return state;
10
+ }
11
+ export { getNativePortalState, setNativePortalState };
12
+ //# sourceMappingURL=state.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["state","enabled","type","setNativePortalState","newState","getNativePortalState"],"sources":["../../src/state.ts"],"sourcesContent":[null],"mappings":"AAKA,IAAIA,KAAA,GAA2B;EAAEC,OAAA,EAAS;EAAOC,IAAA,EAAM;AAAK;AAErD,SAASC,qBAAqBC,QAAA,EAA6B;EAChEJ,KAAA,GAAQI,QAAA;AACV;AAEO,SAASC,qBAAA,EAA0C;EACxD,OAAOL,KAAA;AACT","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ var state = {
2
+ enabled: !1,
3
+ type: null
4
+ };
5
+ function setNativePortalState(newState) {
6
+ state = newState;
7
+ }
8
+ function getNativePortalState() {
9
+ return state;
10
+ }
11
+ export { getNativePortalState, setNativePortalState };
12
+ //# sourceMappingURL=state.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["state","enabled","type","setNativePortalState","newState"],"sources":["../../src/state.ts"],"sourcesContent":[null],"mappings":"AAKA,IAAIA,KAAA,GAA2B;EAExBC,OAAS;EACdC,IAAA;AACF;AAEO,SAASC,qBAAAC,QAA0C;EACxDJ,KAAA,GAAOI,QAAA;AACT","ignoreList":[]}
@@ -0,0 +1,27 @@
1
+ const GLOBAL_KEY = "__tamagui_native_worklets_state__";
2
+ function getGlobalState() {
3
+ const g = globalThis;
4
+ return g[GLOBAL_KEY] || (g[GLOBAL_KEY] = {
5
+ enabled: !1,
6
+ Worklets: null,
7
+ useRunOnJS: null,
8
+ useWorklet: null,
9
+ createWorkletContextValue: null
10
+ }), g[GLOBAL_KEY];
11
+ }
12
+ function isWorkletsEnabled() {
13
+ return getGlobalState().enabled;
14
+ }
15
+ function getWorkletsState() {
16
+ return getGlobalState();
17
+ }
18
+ function setWorkletsState(updates) {
19
+ const state = getGlobalState();
20
+ Object.assign(state, updates);
21
+ }
22
+ export {
23
+ getWorkletsState,
24
+ isWorkletsEnabled,
25
+ setWorkletsState
26
+ };
27
+ //# sourceMappingURL=workletsState.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/workletsState.ts"],
4
+ "mappings": "AAAA,MAAM,aAAa;AAUnB,SAAS,iBAAgC;AACvC,QAAM,IAAI;AACV,SAAK,EAAE,UAAU,MACf,EAAE,UAAU,IAAI;AAAA,IACd,SAAS;AAAA,IACT,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,YAAY;AAAA,IACZ,2BAA2B;AAAA,EAC7B,IAEK,EAAE,UAAU;AACrB;AAEO,SAAS,oBAA6B;AAC3C,SAAO,eAAe,EAAE;AAC1B;AAEO,SAAS,mBAAkC;AAChD,SAAO,eAAe;AACxB;AAEO,SAAS,iBAAiB,SAAuC;AACtE,QAAM,QAAQ,eAAe;AAC7B,SAAO,OAAO,OAAO,OAAO;AAC9B;",
5
+ "names": []
6
+ }
@@ -0,0 +1,23 @@
1
+ const GLOBAL_KEY = "__tamagui_native_worklets_state__";
2
+ function getGlobalState() {
3
+ const g = globalThis;
4
+ return g[GLOBAL_KEY] || (g[GLOBAL_KEY] = {
5
+ enabled: !1,
6
+ Worklets: null,
7
+ useRunOnJS: null,
8
+ useWorklet: null,
9
+ createWorkletContextValue: null
10
+ }), g[GLOBAL_KEY];
11
+ }
12
+ function isWorkletsEnabled() {
13
+ return getGlobalState().enabled;
14
+ }
15
+ function getWorkletsState() {
16
+ return getGlobalState();
17
+ }
18
+ function setWorkletsState(updates) {
19
+ const state = getGlobalState();
20
+ Object.assign(state, updates);
21
+ }
22
+ export { getWorkletsState, isWorkletsEnabled, setWorkletsState };
23
+ //# sourceMappingURL=workletsState.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["GLOBAL_KEY","getGlobalState","g","globalThis","enabled","Worklets","useRunOnJS","useWorklet","createWorkletContextValue","isWorkletsEnabled","getWorkletsState","setWorkletsState","updates","state","Object","assign"],"sources":["../../src/workletsState.ts"],"sourcesContent":[null],"mappings":"AAAA,MAAMA,UAAA,GAAa;AAUnB,SAASC,eAAA,EAAgC;EACvC,MAAMC,CAAA,GAAIC,UAAA;EACV,OAAKD,CAAA,CAAEF,UAAU,MACfE,CAAA,CAAEF,UAAU,IAAI;IACdI,OAAA,EAAS;IACTC,QAAA,EAAU;IACVC,UAAA,EAAY;IACZC,UAAA,EAAY;IACZC,yBAAA,EAA2B;EAC7B,IAEKN,CAAA,CAAEF,UAAU;AACrB;AAEO,SAASS,kBAAA,EAA6B;EAC3C,OAAOR,cAAA,CAAe,EAAEG,OAAA;AAC1B;AAEO,SAASM,iBAAA,EAAkC;EAChD,OAAOT,cAAA,CAAe;AACxB;AAEO,SAASU,iBAAiBC,OAAA,EAAuC;EACtE,MAAMC,KAAA,GAAQZ,cAAA,CAAe;EAC7Ba,MAAA,CAAOC,MAAA,CAAOF,KAAA,EAAOD,OAAO;AAC9B","ignoreList":[]}
@@ -0,0 +1,23 @@
1
+ var GLOBAL_KEY = "__tamagui_native_worklets_state__";
2
+ function getGlobalState() {
3
+ var g = globalThis;
4
+ return g[GLOBAL_KEY] || (g[GLOBAL_KEY] = {
5
+ enabled: !1,
6
+ Worklets: null,
7
+ useRunOnJS: null,
8
+ useWorklet: null,
9
+ createWorkletContextValue: null
10
+ }), g[GLOBAL_KEY];
11
+ }
12
+ function isWorkletsEnabled() {
13
+ return getGlobalState().enabled;
14
+ }
15
+ function getWorkletsState() {
16
+ return getGlobalState();
17
+ }
18
+ function setWorkletsState(updates) {
19
+ var state = getGlobalState();
20
+ Object.assign(state, updates);
21
+ }
22
+ export { getWorkletsState, isWorkletsEnabled, setWorkletsState };
23
+ //# sourceMappingURL=workletsState.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["GLOBAL_KEY","getGlobalState","g","globalThis","enabled","Worklets","useRunOnJS","useWorklet","createWorkletContextValue","isWorkletsEnabled","getWorkletsState","setWorkletsState","updates","state","Object","assign"],"sources":["../../src/workletsState.ts"],"sourcesContent":[null],"mappings":"AAAA,IAAAA,UAAM,sCAAa;AAUnB,SAASC,eAAA,EAAgC;EACvC,IAAAC,CAAA,GAAMC,UAAI;EACV,OAAKD,CAAA,CAAEF,UAAU,MACfE,CAAA,CAAEF,UAAU,IAAI;IACdI,OAAA,EAAS;IACTC,QAAA,EAAU;IACVC,UAAA,EAAY;IACZC,UAAA,EAAY;IACZC,yBAAA,EAA2B;EAC7B,IAEKN,CAAA,CAAEF,UAAU;AACrB;AAEO,SAASS,kBAAA,EAA6B;EAC3C,OAAOR,cAAA,CAAe,EAAEG,OAAA;AAC1B;AAEO,SAASM,iBAAA,EAAkC;EAChD,OAAOT,cAAA,CAAe;AACxB;AAEO,SAASU,iBAAiBC,OAAA,EAAuC;EACtE,IAAAC,KAAM,GAAAZ,cAAQ;EACda,MAAA,CAAOC,MAAA,CAAOF,KAAA,EAAOD,OAAO;AAC9B","ignoreList":[]}
package/package.json ADDED
@@ -0,0 +1,110 @@
1
+ {
2
+ "name": "@tamagui/native",
3
+ "version": "2.0.0-1769256574467",
4
+ "description": "Native setup modules for Tamagui - portals, gesture handler, worklets, and more",
5
+ "type": "module",
6
+ "sideEffects": true,
7
+ "types": "./types/index.d.ts",
8
+ "main": "dist/cjs",
9
+ "module": "dist/esm",
10
+ "files": [
11
+ "src",
12
+ "types",
13
+ "dist"
14
+ ],
15
+ "scripts": {
16
+ "build": "tamagui-build",
17
+ "watch": "tamagui-build --watch",
18
+ "lint": "biome check src",
19
+ "lint:fix": "biome check --write src",
20
+ "clean": "tamagui-build clean",
21
+ "clean:build": "tamagui-build clean:build"
22
+ },
23
+ "typesVersions": {
24
+ "*": {
25
+ "setup-portal": [
26
+ "./types/setup-portal.d.ts"
27
+ ],
28
+ "setup-gesture-handler": [
29
+ "./types/setup-gesture-handler.d.ts"
30
+ ],
31
+ "setup-worklets": [
32
+ "./types/setup-worklets.d.ts"
33
+ ]
34
+ }
35
+ },
36
+ "exports": {
37
+ "./package.json": "./package.json",
38
+ ".": {
39
+ "types": "./types/index.d.ts",
40
+ "module": "./dist/esm/index.mjs",
41
+ "import": "./dist/esm/index.mjs",
42
+ "require": "./dist/cjs/index.cjs"
43
+ },
44
+ "./setup-portal": {
45
+ "react-native": {
46
+ "types": "./types/setup-portal.d.ts",
47
+ "module": "./dist/esm/setup-portal.native.js",
48
+ "import": "./dist/esm/setup-portal.native.js",
49
+ "require": "./dist/cjs/setup-portal.native.js"
50
+ },
51
+ "types": "./types/setup-portal.d.ts",
52
+ "module": "./dist/esm/setup-portal.mjs",
53
+ "import": "./dist/esm/setup-portal.mjs",
54
+ "require": "./dist/cjs/setup-portal.cjs"
55
+ },
56
+ "./setup-gesture-handler": {
57
+ "react-native": {
58
+ "types": "./types/setup-gesture-handler.d.ts",
59
+ "module": "./dist/esm/setup-gesture-handler.native.js",
60
+ "import": "./dist/esm/setup-gesture-handler.native.js",
61
+ "require": "./dist/cjs/setup-gesture-handler.native.js"
62
+ },
63
+ "types": "./types/setup-gesture-handler.d.ts",
64
+ "module": "./dist/esm/setup-gesture-handler.mjs",
65
+ "import": "./dist/esm/setup-gesture-handler.mjs",
66
+ "require": "./dist/cjs/setup-gesture-handler.cjs"
67
+ },
68
+ "./setup-worklets": {
69
+ "react-native": {
70
+ "types": "./types/setup-worklets.d.ts",
71
+ "module": "./dist/esm/setup-worklets.native.js",
72
+ "import": "./dist/esm/setup-worklets.native.js",
73
+ "require": "./dist/cjs/setup-worklets.native.js"
74
+ },
75
+ "types": "./types/setup-worklets.d.ts",
76
+ "module": "./dist/esm/setup-worklets.mjs",
77
+ "import": "./dist/esm/setup-worklets.mjs",
78
+ "require": "./dist/cjs/setup-worklets.cjs"
79
+ }
80
+ },
81
+ "devDependencies": {
82
+ "@tamagui/build": "2.0.0-1769256574467",
83
+ "react": "*",
84
+ "react-native": "0.81.5",
85
+ "react-native-gesture-handler": "~2.28.0",
86
+ "react-native-teleport": "^0.5.6",
87
+ "react-native-worklets-core": "^1.0.0"
88
+ },
89
+ "peerDependencies": {
90
+ "react": "*",
91
+ "react-native": "*",
92
+ "react-native-gesture-handler": ">=2.0.0",
93
+ "react-native-teleport": ">=0.5.0",
94
+ "react-native-worklets-core": ">=1.0.0"
95
+ },
96
+ "peerDependenciesMeta": {
97
+ "react-native-gesture-handler": {
98
+ "optional": true
99
+ },
100
+ "react-native-teleport": {
101
+ "optional": true
102
+ },
103
+ "react-native-worklets-core": {
104
+ "optional": true
105
+ }
106
+ },
107
+ "publishConfig": {
108
+ "access": "public"
109
+ }
110
+ }
@@ -0,0 +1,55 @@
1
+ import type { ReactNode } from 'react'
2
+ import { getNativePortalState } from './portalState'
3
+
4
+ // types matching react-native-teleport's API
5
+ export type NativePortalProps = {
6
+ hostName?: string
7
+ children: ReactNode
8
+ }
9
+
10
+ export type NativePortalHostProps = {
11
+ name: string
12
+ }
13
+
14
+ export type NativePortalProviderProps = {
15
+ children: ReactNode
16
+ }
17
+
18
+ /**
19
+ * Renders children into a teleport Portal when available.
20
+ * Returns null when teleport is not set up (allows fallback handling by caller).
21
+ */
22
+ export function NativePortal({
23
+ hostName = 'root',
24
+ children,
25
+ }: NativePortalProps): ReactNode {
26
+ const state = getNativePortalState()
27
+ if (state.type !== 'teleport') return null
28
+
29
+ const { Portal } = (globalThis as any).__tamagui_teleport
30
+ return <Portal hostName={hostName}>{children}</Portal>
31
+ }
32
+
33
+ /**
34
+ * Renders a teleport PortalHost when available.
35
+ * Returns null when teleport is not set up.
36
+ */
37
+ export function NativePortalHost({ name }: NativePortalHostProps): ReactNode {
38
+ const state = getNativePortalState()
39
+ if (state.type !== 'teleport') return null
40
+
41
+ const { PortalHost } = (globalThis as any).__tamagui_teleport
42
+ return <PortalHost name={name} />
43
+ }
44
+
45
+ /**
46
+ * Wraps children with teleport PortalProvider when available.
47
+ * Returns children as-is when teleport is not set up.
48
+ */
49
+ export function NativePortalProvider({ children }: NativePortalProviderProps): ReactNode {
50
+ const state = getNativePortalState()
51
+ if (state.type !== 'teleport') return <>{children}</>
52
+
53
+ const { PortalProvider } = (globalThis as any).__tamagui_teleport
54
+ return <PortalProvider>{children}</PortalProvider>
55
+ }