@tamagui/sheet 2.0.0-1769233344020 → 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 (150) hide show
  1. package/dist/cjs/GestureDetectorWrapper.cjs +48 -0
  2. package/dist/cjs/GestureDetectorWrapper.js +29 -0
  3. package/dist/cjs/GestureDetectorWrapper.js.map +6 -0
  4. package/dist/cjs/GestureDetectorWrapper.native.js +53 -0
  5. package/dist/cjs/GestureDetectorWrapper.native.js.map +1 -0
  6. package/dist/cjs/GestureSheetContext.cjs +52 -0
  7. package/dist/cjs/GestureSheetContext.js +43 -0
  8. package/dist/cjs/GestureSheetContext.js.map +6 -0
  9. package/dist/cjs/GestureSheetContext.native.js +56 -0
  10. package/dist/cjs/GestureSheetContext.native.js.map +1 -0
  11. package/dist/cjs/SheetImplementationCustom.cjs +85 -40
  12. package/dist/cjs/SheetImplementationCustom.js +81 -58
  13. package/dist/cjs/SheetImplementationCustom.js.map +1 -1
  14. package/dist/cjs/SheetImplementationCustom.native.js +105 -50
  15. package/dist/cjs/SheetImplementationCustom.native.js.map +1 -1
  16. package/dist/cjs/SheetScrollView.cjs +80 -8
  17. package/dist/cjs/SheetScrollView.js +76 -10
  18. package/dist/cjs/SheetScrollView.js.map +1 -1
  19. package/dist/cjs/SheetScrollView.native.js +94 -10
  20. package/dist/cjs/SheetScrollView.native.js.map +1 -1
  21. package/dist/cjs/gestureState.cjs +31 -0
  22. package/dist/cjs/gestureState.js +24 -0
  23. package/dist/cjs/gestureState.js.map +6 -0
  24. package/dist/cjs/gestureState.native.js +34 -0
  25. package/dist/cjs/gestureState.native.js.map +1 -0
  26. package/dist/cjs/setupGestureHandler.cjs +43 -0
  27. package/dist/cjs/setupGestureHandler.js +35 -0
  28. package/dist/cjs/setupGestureHandler.js.map +6 -0
  29. package/dist/cjs/setupGestureHandler.native.js +47 -0
  30. package/dist/cjs/setupGestureHandler.native.js.map +1 -0
  31. package/dist/cjs/useGestureHandlerPan.cjs +125 -0
  32. package/dist/cjs/useGestureHandlerPan.js +116 -0
  33. package/dist/cjs/useGestureHandlerPan.js.map +6 -0
  34. package/dist/cjs/useGestureHandlerPan.native.js +134 -0
  35. package/dist/cjs/useGestureHandlerPan.native.js.map +1 -0
  36. package/dist/esm/GestureDetectorWrapper.js +15 -0
  37. package/dist/esm/GestureDetectorWrapper.js.map +6 -0
  38. package/dist/esm/GestureDetectorWrapper.mjs +25 -0
  39. package/dist/esm/GestureDetectorWrapper.mjs.map +1 -0
  40. package/dist/esm/GestureDetectorWrapper.native.js +27 -0
  41. package/dist/esm/GestureDetectorWrapper.native.js.map +1 -0
  42. package/dist/esm/GestureSheetContext.js +28 -0
  43. package/dist/esm/GestureSheetContext.js.map +6 -0
  44. package/dist/esm/GestureSheetContext.mjs +28 -0
  45. package/dist/esm/GestureSheetContext.mjs.map +1 -0
  46. package/dist/esm/GestureSheetContext.native.js +29 -0
  47. package/dist/esm/GestureSheetContext.native.js.map +1 -0
  48. package/dist/esm/SheetImplementationCustom.js +83 -57
  49. package/dist/esm/SheetImplementationCustom.js.map +1 -1
  50. package/dist/esm/SheetImplementationCustom.mjs +85 -40
  51. package/dist/esm/SheetImplementationCustom.mjs.map +1 -1
  52. package/dist/esm/SheetImplementationCustom.native.js +105 -50
  53. package/dist/esm/SheetImplementationCustom.native.js.map +1 -1
  54. package/dist/esm/SheetScrollView.js +77 -9
  55. package/dist/esm/SheetScrollView.js.map +1 -1
  56. package/dist/esm/SheetScrollView.mjs +80 -8
  57. package/dist/esm/SheetScrollView.mjs.map +1 -1
  58. package/dist/esm/SheetScrollView.native.js +94 -10
  59. package/dist/esm/SheetScrollView.native.js.map +1 -1
  60. package/dist/esm/gestureState.js +13 -0
  61. package/dist/esm/gestureState.js.map +6 -0
  62. package/dist/esm/gestureState.mjs +5 -0
  63. package/dist/esm/gestureState.mjs.map +1 -0
  64. package/dist/esm/gestureState.native.js +5 -0
  65. package/dist/esm/gestureState.native.js.map +1 -0
  66. package/dist/esm/setupGestureHandler.js +19 -0
  67. package/dist/esm/setupGestureHandler.js.map +6 -0
  68. package/dist/esm/setupGestureHandler.mjs +19 -0
  69. package/dist/esm/setupGestureHandler.mjs.map +1 -0
  70. package/dist/esm/setupGestureHandler.native.js +20 -0
  71. package/dist/esm/setupGestureHandler.native.js.map +1 -0
  72. package/dist/esm/useGestureHandlerPan.js +101 -0
  73. package/dist/esm/useGestureHandlerPan.js.map +6 -0
  74. package/dist/esm/useGestureHandlerPan.mjs +102 -0
  75. package/dist/esm/useGestureHandlerPan.mjs.map +1 -0
  76. package/dist/esm/useGestureHandlerPan.native.js +108 -0
  77. package/dist/esm/useGestureHandlerPan.native.js.map +1 -0
  78. package/dist/jsx/GestureDetectorWrapper.js +15 -0
  79. package/dist/jsx/GestureDetectorWrapper.js.map +6 -0
  80. package/dist/jsx/GestureDetectorWrapper.mjs +25 -0
  81. package/dist/jsx/GestureDetectorWrapper.mjs.map +1 -0
  82. package/dist/jsx/GestureDetectorWrapper.native.js +53 -0
  83. package/dist/jsx/GestureDetectorWrapper.native.js.map +1 -0
  84. package/dist/jsx/GestureSheetContext.js +28 -0
  85. package/dist/jsx/GestureSheetContext.js.map +6 -0
  86. package/dist/jsx/GestureSheetContext.mjs +28 -0
  87. package/dist/jsx/GestureSheetContext.mjs.map +1 -0
  88. package/dist/jsx/GestureSheetContext.native.js +56 -0
  89. package/dist/jsx/GestureSheetContext.native.js.map +1 -0
  90. package/dist/jsx/SheetImplementationCustom.js +83 -57
  91. package/dist/jsx/SheetImplementationCustom.js.map +1 -1
  92. package/dist/jsx/SheetImplementationCustom.mjs +85 -40
  93. package/dist/jsx/SheetImplementationCustom.mjs.map +1 -1
  94. package/dist/jsx/SheetImplementationCustom.native.js +105 -50
  95. package/dist/jsx/SheetImplementationCustom.native.js.map +1 -1
  96. package/dist/jsx/SheetScrollView.js +77 -9
  97. package/dist/jsx/SheetScrollView.js.map +1 -1
  98. package/dist/jsx/SheetScrollView.mjs +80 -8
  99. package/dist/jsx/SheetScrollView.mjs.map +1 -1
  100. package/dist/jsx/SheetScrollView.native.js +94 -10
  101. package/dist/jsx/SheetScrollView.native.js.map +1 -1
  102. package/dist/jsx/gestureState.js +13 -0
  103. package/dist/jsx/gestureState.js.map +6 -0
  104. package/dist/jsx/gestureState.mjs +5 -0
  105. package/dist/jsx/gestureState.mjs.map +1 -0
  106. package/dist/jsx/gestureState.native.js +34 -0
  107. package/dist/jsx/gestureState.native.js.map +1 -0
  108. package/dist/jsx/setupGestureHandler.js +19 -0
  109. package/dist/jsx/setupGestureHandler.js.map +6 -0
  110. package/dist/jsx/setupGestureHandler.mjs +19 -0
  111. package/dist/jsx/setupGestureHandler.mjs.map +1 -0
  112. package/dist/jsx/setupGestureHandler.native.js +47 -0
  113. package/dist/jsx/setupGestureHandler.native.js.map +1 -0
  114. package/dist/jsx/useGestureHandlerPan.js +101 -0
  115. package/dist/jsx/useGestureHandlerPan.js.map +6 -0
  116. package/dist/jsx/useGestureHandlerPan.mjs +102 -0
  117. package/dist/jsx/useGestureHandlerPan.mjs.map +1 -0
  118. package/dist/jsx/useGestureHandlerPan.native.js +134 -0
  119. package/dist/jsx/useGestureHandlerPan.native.js.map +1 -0
  120. package/package.json +48 -21
  121. package/src/GestureDetectorWrapper.tsx +41 -0
  122. package/src/GestureSheetContext.tsx +62 -0
  123. package/src/SheetImplementationCustom.tsx +124 -57
  124. package/src/SheetScrollView.tsx +157 -8
  125. package/src/gestureState.ts +17 -0
  126. package/src/setupGestureHandler.ts +32 -0
  127. package/src/types.tsx +15 -0
  128. package/src/useGestureHandlerPan.tsx +299 -0
  129. package/types/GestureDetectorWrapper.d.ts +14 -0
  130. package/types/GestureDetectorWrapper.d.ts.map +1 -0
  131. package/types/GestureDetectorWrapper.native.d.ts +14 -0
  132. package/types/GestureDetectorWrapper.native.d.ts.map +1 -0
  133. package/types/GestureSheetContext.d.ts +36 -0
  134. package/types/GestureSheetContext.d.ts.map +1 -0
  135. package/types/SheetImplementationCustom.d.ts.map +1 -1
  136. package/types/SheetScrollView.d.ts.map +1 -1
  137. package/types/gestureState.d.ts +9 -0
  138. package/types/gestureState.d.ts.map +1 -0
  139. package/types/gestureState.native.d.ts +12 -0
  140. package/types/gestureState.native.d.ts.map +1 -0
  141. package/types/setupGestureHandler.d.ts +12 -0
  142. package/types/setupGestureHandler.d.ts.map +1 -0
  143. package/types/setupGestureHandler.native.d.ts +41 -0
  144. package/types/setupGestureHandler.native.d.ts.map +1 -0
  145. package/types/types.d.ts +8 -0
  146. package/types/types.d.ts.map +1 -1
  147. package/types/useGestureHandlerPan.d.ts +43 -0
  148. package/types/useGestureHandlerPan.d.ts.map +1 -0
  149. package/types/useGestureHandlerPan.native.d.ts +33 -0
  150. package/types/useGestureHandlerPan.native.d.ts.map +1 -0
@@ -0,0 +1,48 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: !0
9
+ });
10
+ },
11
+ __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
13
+ get: () => from[key],
14
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
15
+ });
16
+ return to;
17
+ };
18
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
19
+ value: !0
20
+ }), mod);
21
+ var GestureDetectorWrapper_exports = {};
22
+ __export(GestureDetectorWrapper_exports, {
23
+ GestureDetectorWrapper: () => GestureDetectorWrapper
24
+ });
25
+ module.exports = __toCommonJS(GestureDetectorWrapper_exports);
26
+ var import_react_native = require("react-native-web"),
27
+ import_gestureState = require("./gestureState.cjs"),
28
+ import_jsx_runtime = require("react/jsx-runtime");
29
+ function GestureDetectorWrapper({
30
+ gesture,
31
+ children,
32
+ style
33
+ }) {
34
+ const {
35
+ GestureDetector
36
+ } = (0, import_gestureState.getGestureHandlerState)();
37
+ return (0, import_gestureState.isGestureHandlerEnabled)() && GestureDetector && gesture ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(GestureDetector, {
38
+ gesture,
39
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react_native.View, {
40
+ style,
41
+ collapsable: !1,
42
+ children
43
+ })
44
+ }) : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react_native.View, {
45
+ style,
46
+ children
47
+ });
48
+ }
@@ -0,0 +1,29 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: !0 });
8
+ }, __copyProps = (to, from, except, desc) => {
9
+ if (from && typeof from == "object" || typeof from == "function")
10
+ for (let key of __getOwnPropNames(from))
11
+ !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
15
+ var GestureDetectorWrapper_exports = {};
16
+ __export(GestureDetectorWrapper_exports, {
17
+ GestureDetectorWrapper: () => GestureDetectorWrapper
18
+ });
19
+ module.exports = __toCommonJS(GestureDetectorWrapper_exports);
20
+ var import_react_native = require("react-native-web"), import_gestureState = require("./gestureState"), import_jsx_runtime = require("react/jsx-runtime");
21
+ function GestureDetectorWrapper({
22
+ gesture,
23
+ children,
24
+ style
25
+ }) {
26
+ const { GestureDetector } = (0, import_gestureState.getGestureHandlerState)();
27
+ return (0, import_gestureState.isGestureHandlerEnabled)() && GestureDetector && gesture ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(GestureDetector, { gesture, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_native.View, { style, collapsable: !1, children }) }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_native.View, { style, children });
28
+ }
29
+ //# sourceMappingURL=GestureDetectorWrapper.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/GestureDetectorWrapper.tsx"],
4
+ "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,0BAAqC,yBACrC,sBAAgE,2BA6BxD;AAjBD,SAAS,uBAAuB;AAAA,EACrC;AAAA,EACA;AAAA,EACA;AACF,GAAgC;AAC9B,QAAM,EAAE,gBAAgB,QAAI,4CAAuB;AAMnD,aALgB,6CAAwB,KAKzB,mBAAmB,UAK9B,4CAAC,mBAAgB,SACf,sDAAC,4BAAK,OAAc,aAAa,IAC9B,UACH,GACF,IAKG,4CAAC,4BAAK,OAAe,UAAS;AACvC;",
5
+ "names": []
6
+ }
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: !0
11
+ });
12
+ },
13
+ __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
15
+ get: () => from[key],
16
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
+ });
18
+ return to;
19
+ };
20
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
+ value: !0
22
+ }), mod);
23
+ var GestureDetectorWrapper_exports = {};
24
+ __export(GestureDetectorWrapper_exports, {
25
+ GestureDetectorWrapper: () => GestureDetectorWrapper
26
+ });
27
+ module.exports = __toCommonJS(GestureDetectorWrapper_exports);
28
+ var import_jsx_runtime = require("react/jsx-runtime"),
29
+ import_react_native = require("react-native"),
30
+ import_gestureState = require("./gestureState.native.js");
31
+ function GestureDetectorWrapper(param) {
32
+ var {
33
+ gesture,
34
+ children,
35
+ style
36
+ } = param,
37
+ {
38
+ GestureDetector
39
+ } = (0, import_gestureState.getGestureHandlerState)(),
40
+ enabled = (0, import_gestureState.isGestureHandlerEnabled)();
41
+ return enabled && GestureDetector && gesture ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(GestureDetector, {
42
+ gesture,
43
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react_native.View, {
44
+ style,
45
+ collapsable: !1,
46
+ children
47
+ })
48
+ }) : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react_native.View, {
49
+ style,
50
+ children
51
+ });
52
+ }
53
+ //# sourceMappingURL=GestureDetectorWrapper.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","GestureDetectorWrapper_exports","__export","GestureDetectorWrapper","module","exports","import_jsx_runtime","require","import_react_native","import_gestureState","param","gesture","children","style","GestureDetector","getGestureHandlerState","enabled","isGestureHandlerEnabled","jsx","View","collapsable"],"sources":["../../src/GestureDetectorWrapper.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,8BAAA;AAAAC,QAAA,CAAAD,8BAAA;EAAAE,sBAAA,EAAAA,CAAA,KAAAA;AAAA;AACAC,MAAA,CAAAC,OAAA,GAAAT,YAAqC,CAAAK,8BACrC;AAYO,IAAAK,kBAAS,GAAAC,OAAuB;EAAAC,mBAAA,GAAAD,OAAA;EAAAE,mBAAA,GAAAF,OAAA;AAAA,SACrCJ,uBAAAO,KAAA;EACA;MAAAC,OAAA;MAAAC,QAAA;MAAAC;IAAA,IAAAH,KAAA;IAAA;MAAAI;IAAA,QAAAL,mBAAA,CAAAM,sBAAA;IAAAC,OAAA,OAAAP,mBAAA,CAAAQ,uBAAA;EACA,OAAAD,OAAA,IAAAF,eAAA,IAAAH,OAAA,sBAAAL,kBAAA,CAAAY,GAAA,EAAAJ,eAAA;IAC8BH,OAAA;IAC9BC,QAAQ,iBAAgB,IAAIN,kBAAA,CAAAY,GAAA,EAAAV,mBAAA,CAAuBW,IAAA;MAMnDN,KAAA;MAeFO,WAAA","ignoreList":[]}
@@ -0,0 +1,52 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: !0
9
+ });
10
+ },
11
+ __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
13
+ get: () => from[key],
14
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
15
+ });
16
+ return to;
17
+ };
18
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
19
+ value: !0
20
+ }), mod);
21
+ var GestureSheetContext_exports = {};
22
+ __export(GestureSheetContext_exports, {
23
+ GestureSheetProvider: () => GestureSheetProvider,
24
+ useGestureSheetContext: () => useGestureSheetContext
25
+ });
26
+ module.exports = __toCommonJS(GestureSheetContext_exports);
27
+ var import_react = require("react"),
28
+ import_jsx_runtime = require("react/jsx-runtime");
29
+ const GestureSheetContext = (0, import_react.createContext)(null);
30
+ function useGestureSheetContext() {
31
+ return (0, import_react.useContext)(GestureSheetContext);
32
+ }
33
+ function GestureSheetProvider({
34
+ children,
35
+ isDragging,
36
+ blockPan,
37
+ setBlockPan,
38
+ panGesture,
39
+ panGestureRef
40
+ }) {
41
+ const value = {
42
+ panGesture,
43
+ panGestureRef,
44
+ isDragging,
45
+ blockPan,
46
+ setBlockPan
47
+ };
48
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(GestureSheetContext.Provider, {
49
+ value,
50
+ children
51
+ });
52
+ }
@@ -0,0 +1,43 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: !0 });
8
+ }, __copyProps = (to, from, except, desc) => {
9
+ if (from && typeof from == "object" || typeof from == "function")
10
+ for (let key of __getOwnPropNames(from))
11
+ !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
15
+ var GestureSheetContext_exports = {};
16
+ __export(GestureSheetContext_exports, {
17
+ GestureSheetProvider: () => GestureSheetProvider,
18
+ useGestureSheetContext: () => useGestureSheetContext
19
+ });
20
+ module.exports = __toCommonJS(GestureSheetContext_exports);
21
+ var import_react = require("react"), import_jsx_runtime = require("react/jsx-runtime");
22
+ const GestureSheetContext = (0, import_react.createContext)(null);
23
+ function useGestureSheetContext() {
24
+ return (0, import_react.useContext)(GestureSheetContext);
25
+ }
26
+ function GestureSheetProvider({
27
+ children,
28
+ isDragging,
29
+ blockPan,
30
+ setBlockPan,
31
+ panGesture,
32
+ panGestureRef
33
+ }) {
34
+ const value = {
35
+ panGesture,
36
+ panGestureRef,
37
+ isDragging,
38
+ blockPan,
39
+ setBlockPan
40
+ };
41
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(GestureSheetContext.Provider, { value, children });
42
+ }
43
+ //# sourceMappingURL=GestureSheetContext.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/GestureSheetContext.tsx"],
4
+ "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,mBAA0D,kBA0DtD;AAhCJ,MAAM,0BAAsB,4BAA+C,IAAI;AAExE,SAAS,yBAA0D;AACxE,aAAO,yBAAW,mBAAmB;AACvC;AAWO,SAAS,qBAAqB;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA8B;AAC5B,QAAM,QAAkC;AAAA,IACtC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAEA,SACE,4CAAC,oBAAoB,UAApB,EAA6B,OAAe,UAAS;AAE1D;",
5
+ "names": []
6
+ }
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: !0
11
+ });
12
+ },
13
+ __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
15
+ get: () => from[key],
16
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
+ });
18
+ return to;
19
+ };
20
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
+ value: !0
22
+ }), mod);
23
+ var GestureSheetContext_exports = {};
24
+ __export(GestureSheetContext_exports, {
25
+ GestureSheetProvider: () => GestureSheetProvider,
26
+ useGestureSheetContext: () => useGestureSheetContext
27
+ });
28
+ module.exports = __toCommonJS(GestureSheetContext_exports);
29
+ var import_jsx_runtime = require("react/jsx-runtime"),
30
+ import_react = require("react"),
31
+ GestureSheetContext = /* @__PURE__ */(0, import_react.createContext)(null);
32
+ function useGestureSheetContext() {
33
+ return (0, import_react.useContext)(GestureSheetContext);
34
+ }
35
+ function GestureSheetProvider(param) {
36
+ var {
37
+ children,
38
+ isDragging,
39
+ blockPan,
40
+ setBlockPan,
41
+ panGesture,
42
+ panGestureRef
43
+ } = param,
44
+ value = {
45
+ panGesture,
46
+ panGestureRef,
47
+ isDragging,
48
+ blockPan,
49
+ setBlockPan
50
+ };
51
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(GestureSheetContext.Provider, {
52
+ value,
53
+ children
54
+ });
55
+ }
56
+ //# sourceMappingURL=GestureSheetContext.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","GestureSheetContext_exports","__export","GestureSheetProvider","useGestureSheetContext","module","exports","import_jsx_runtime","require","import_react","GestureSheetContext","createContext","useContext","param","children","isDragging","blockPan","setBlockPan","panGesture","panGestureRef","jsx","Provider"],"sources":["../../src/GestureSheetContext.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,2BAAA;AAAAC,QAAA,CAAAD,2BAAA;EAAAE,oBAAA,EAAAA,CAAA,KAAAA,oBAAA;EAAAC,sBAAA,EAAAA,CAAA,KAAAA;AAAA;AACAC,MAAA,CAAAC,OAAA,GAAAV,YAA0D,CAAAK,2BA0DtD;AAhCJ,IAAAM,kBAAM,GAAAC,OAAsB;EAAAC,YAAmD,GAAAD,OAAA;EAAAE,mBAAA,sBAAAD,YAAA,CAAAE,aAAA;AAExE,SAASP,uBAAA,EAA0D;EACxE,WAAOK,YAAA,CAAAG,UAAA,EAAWF,mBAAmB;AACvC;AAWO,SAASP,qBAAqBU,KAAA;EACnC;MAAAC,QAAA;MAAAC,UAAA;MAAAC,QAAA;MAAAC,WAAA;MAAAC,UAAA;MAAAC;IAAA,IAAAN,KAAA;IAAAb,KAAA;MACAkB,UAAA;MACAC,aAAA;MACAJ,UAAA;MACAC,QAAA;MACAC;IACF,CAA8B;EAC5B,OAAM,eAAkC,IAAAV,kBAAA,CAAAa,GAAA,EAAAV,mBAAA,CAAAW,QAAA;IACtCrB,KAAA;IACAc;EAAA,EACA;AAAA","ignoreList":[]}
@@ -43,8 +43,11 @@ var import_adapt = require("@tamagui/adapt"),
43
43
  import_react = __toESM(require("react"), 1),
44
44
  import_react_native = require("react-native-web"),
45
45
  import_contexts = require("./contexts.cjs"),
46
+ import_GestureDetectorWrapper = require("./GestureDetectorWrapper.cjs"),
47
+ import_GestureSheetContext = require("./GestureSheetContext.cjs"),
46
48
  import_helpers = require("./helpers.cjs"),
47
49
  import_SheetContext = require("./SheetContext.cjs"),
50
+ import_useGestureHandlerPan = require("./useGestureHandlerPan.cjs"),
48
51
  import_useSheetOpenState = require("./useSheetOpenState.cjs"),
49
52
  import_useSheetProviderProps = require("./useSheetProviderProps.cjs"),
50
53
  import_jsx_runtime = require("react/jsx-runtime");
@@ -110,9 +113,8 @@ const relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
110
113
  import_react.default.useEffect(() => {
111
114
  open && frameSize && (stableFrameSize.current = frameSize);
112
115
  }, [open, frameSize]);
113
- const positions = import_react.default.useMemo(() => snapPoints.map(point =>
114
- // FIX: Use stable frameSize when closing to prevent position jumps
115
- getYPositions(snapPointsMode, point, screenSize, open ? frameSize : stableFrameSize.current)), [screenSize, frameSize, snapPoints, snapPointsMode, open]),
116
+ const effectiveFrameSize = open ? frameSize : stableFrameSize.current || frameSize,
117
+ positions = import_react.default.useMemo(() => snapPoints.map(point => getYPositions(snapPointsMode, point, screenSize, effectiveFrameSize)), [screenSize, effectiveFrameSize, snapPoints, snapPointsMode]),
116
118
  {
117
119
  useAnimatedNumber,
118
120
  useAnimatedNumberStyle,
@@ -138,7 +140,11 @@ const relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
138
140
  hostRef: sheetRef
139
141
  }, import_react.default.useCallback(value => {
140
142
  at.current = value, scrollBridge.paneY = value;
141
- }, [animationDriver]));
143
+ const minY = positions[0],
144
+ wasAtTop = scrollBridge.isAtTop,
145
+ nowAtTop = value <= minY + 5;
146
+ wasAtTop !== nowAtTop && (scrollBridge.isAtTop = nowAtTop, nowAtTop ? (scrollBridge.scrollLockY = void 0, scrollBridge.setScrollEnabled?.(!0)) : (scrollBridge.scrollLockY = 0, scrollBridge.setScrollEnabled?.(!1)));
147
+ }, [animationDriver, positions]));
142
148
  function stopSpring() {
143
149
  animatedNumber.stop(), scrollBridge.onFinishAnimate && (scrollBridge.onFinishAnimate(), scrollBridge.onFinishAnimate = void 0);
144
150
  }
@@ -162,11 +168,15 @@ const relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
162
168
  });
163
169
  return;
164
170
  }
165
- disableAnimation || !frameSize || !screenSize || isHidden || hasntMeasured && !open || (animateTo(position), position === -1 && (scrollBridge.scrollLock = !1, scrollBridge.scrollStartY = -1));
171
+ if (!disableAnimation && !(!frameSize || !screenSize || isHidden || hasntMeasured && !open) && (animateTo(position), position === -1 && (scrollBridge.scrollLock = !1, scrollBridge.scrollStartY = -1), open && position >= 0)) {
172
+ const isTopPosition = position === 0;
173
+ scrollBridge.isAtTop = isTopPosition, isTopPosition ? (scrollBridge.scrollLockY = void 0, scrollBridge.setScrollEnabled?.(!0)) : (scrollBridge.scrollLockY = 0, scrollBridge.setScrollEnabled?.(!1));
174
+ }
166
175
  }, [hasntMeasured, disableAnimation, isHidden, frameSize, screenSize, open, position]);
167
176
  const disableDrag = props.disableDrag ?? controller?.disableDrag,
168
177
  themeName = (0, import_core.useThemeName)(),
169
178
  [isDragging, setIsDragging] = import_react.default.useState(!1),
179
+ [blockPan, setBlockPan] = import_react.default.useState(!1),
170
180
  panResponder = import_react.default.useMemo(() => {
171
181
  if (disableDrag || !frameSize || isShowingInnerSheet) return;
172
182
  const minY = positions[0];
@@ -243,6 +253,28 @@ const relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
243
253
  onPanResponderRelease: finish
244
254
  });
245
255
  }, [disableDrag, isShowingInnerSheet, animateTo, frameSize, positions, setPosition]),
256
+ {
257
+ panGesture,
258
+ panGestureRef,
259
+ gestureHandlerEnabled
260
+ } = (0, import_useGestureHandlerPan.useGestureHandlerPan)({
261
+ positions,
262
+ frameSize,
263
+ setPosition,
264
+ animateTo,
265
+ stopSpring,
266
+ scrollBridge,
267
+ setIsDragging,
268
+ getCurrentPosition: () => at.current,
269
+ resisted: import_helpers.resisted,
270
+ disableDrag,
271
+ isShowingInnerSheet,
272
+ setAnimatedPosition: val => {
273
+ animatedNumber.setValue(val, {
274
+ type: "direct"
275
+ });
276
+ }
277
+ }),
246
278
  handleAnimationViewLayout = import_react.default.useCallback(e => {
247
279
  if (!open && stableFrameSize.current !== 0) return;
248
280
  const layoutHeight = e.nativeEvent?.layout.height,
@@ -302,44 +334,57 @@ const relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
302
334
  disable: !open,
303
335
  children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_contexts.ParentSheetContext.Provider, {
304
336
  value: nextParentContext,
305
- children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_SheetContext.SheetProvider, {
337
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_SheetContext.SheetProvider, {
306
338
  ...providerProps,
307
339
  setHasScrollView,
308
- children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_animate_presence.AnimatePresence, {
309
- custom: {
310
- open
311
- },
312
- children: shouldHideParentSheet || !open ? null : overlayComponent
313
- }), snapPointsMode !== "percent" && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react_native.View, {
314
- style: {
315
- opacity: 0,
316
- position: "absolute",
317
- top: 0,
318
- left: 0,
319
- right: 0,
320
- bottom: 0,
321
- pointerEvents: "none"
322
- },
323
- onLayout: handleMaxContentViewLayout
324
- }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(AnimatedView, {
325
- ref,
326
- ...panResponder?.panHandlers,
327
- onLayout: handleAnimationViewLayout,
328
- transition: isDragging || disableAnimation ? null : transition,
329
- disableClassName: !0,
330
- style: [{
331
- position: "absolute",
332
- zIndex,
333
- width: "100%",
334
- height: forcedContentHeight,
335
- minHeight: forcedContentHeight,
336
- opacity: shouldHideParentSheet ? 0 : opacity,
337
- ...((shouldHideParentSheet || !open) && {
340
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_GestureSheetContext.GestureSheetProvider, {
341
+ isDragging,
342
+ blockPan,
343
+ setBlockPan,
344
+ panGesture,
345
+ panGestureRef,
346
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_animate_presence.AnimatePresence, {
347
+ custom: {
348
+ open
349
+ },
350
+ children: shouldHideParentSheet || !open ? null : overlayComponent
351
+ }), snapPointsMode !== "percent" && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react_native.View, {
352
+ style: {
353
+ opacity: 0,
354
+ position: "absolute",
355
+ top: 0,
356
+ left: 0,
357
+ right: 0,
358
+ bottom: 0,
338
359
  pointerEvents: "none"
339
- })
340
- }, animatedStyle],
341
- children: props.children
342
- })]
360
+ },
361
+ onLayout: handleMaxContentViewLayout
362
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(AnimatedView, {
363
+ ref,
364
+ ...(!gestureHandlerEnabled && panResponder?.panHandlers),
365
+ onLayout: handleAnimationViewLayout,
366
+ transition: isDragging || disableAnimation ? null : transition,
367
+ disableClassName: !0,
368
+ style: [{
369
+ position: "absolute",
370
+ zIndex,
371
+ width: "100%",
372
+ height: forcedContentHeight,
373
+ minHeight: forcedContentHeight,
374
+ opacity: shouldHideParentSheet ? 0 : opacity,
375
+ ...((shouldHideParentSheet || !open) && {
376
+ pointerEvents: "none"
377
+ })
378
+ }, animatedStyle],
379
+ children: gestureHandlerEnabled && panGesture ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_GestureDetectorWrapper.GestureDetectorWrapper, {
380
+ gesture: panGesture,
381
+ style: {
382
+ flex: 1
383
+ },
384
+ children: props.children
385
+ }) : props.children
386
+ })]
387
+ })
343
388
  })
344
389
  })
345
390
  });