@tamagui/sheet 2.0.0 → 2.1.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.
Files changed (83) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/dist/cjs/SheetImplementationCustom.cjs +73 -24
  3. package/dist/cjs/SheetImplementationCustom.native.js +83 -28
  4. package/dist/cjs/SheetImplementationCustom.native.js.map +1 -1
  5. package/dist/cjs/SheetScrollView.cjs +18 -4
  6. package/dist/cjs/SheetScrollView.native.js +18 -4
  7. package/dist/cjs/SheetScrollView.native.js.map +1 -1
  8. package/dist/cjs/nativeSheet.cjs +3 -0
  9. package/dist/cjs/nativeSheet.native.js +3 -0
  10. package/dist/cjs/nativeSheet.native.js.map +1 -1
  11. package/dist/cjs/useKeyboardControllerSheet.cjs +62 -6
  12. package/dist/cjs/useSheetProviderProps.native.js.map +1 -1
  13. package/dist/cjs/useSheetScrollViewGestures.cjs +6 -1
  14. package/dist/cjs/webViewport.cjs +50 -0
  15. package/dist/cjs/webViewport.native.js +54 -0
  16. package/dist/cjs/webViewport.native.js.map +1 -0
  17. package/dist/esm/SheetImplementationCustom.mjs +73 -24
  18. package/dist/esm/SheetImplementationCustom.mjs.map +1 -1
  19. package/dist/esm/SheetImplementationCustom.native.js +83 -28
  20. package/dist/esm/SheetImplementationCustom.native.js.map +1 -1
  21. package/dist/esm/SheetScrollView.mjs +19 -5
  22. package/dist/esm/SheetScrollView.mjs.map +1 -1
  23. package/dist/esm/SheetScrollView.native.js +19 -5
  24. package/dist/esm/SheetScrollView.native.js.map +1 -1
  25. package/dist/esm/nativeSheet.mjs +3 -0
  26. package/dist/esm/nativeSheet.mjs.map +1 -1
  27. package/dist/esm/nativeSheet.native.js +3 -0
  28. package/dist/esm/nativeSheet.native.js.map +1 -1
  29. package/dist/esm/useKeyboardControllerSheet.mjs +63 -7
  30. package/dist/esm/useKeyboardControllerSheet.mjs.map +1 -1
  31. package/dist/esm/useSheetProviderProps.mjs.map +1 -1
  32. package/dist/esm/useSheetProviderProps.native.js.map +1 -1
  33. package/dist/esm/useSheetScrollViewGestures.mjs +6 -1
  34. package/dist/esm/useSheetScrollViewGestures.mjs.map +1 -1
  35. package/dist/esm/webViewport.mjs +22 -0
  36. package/dist/esm/webViewport.mjs.map +1 -0
  37. package/dist/esm/webViewport.native.js +23 -0
  38. package/dist/esm/webViewport.native.js.map +1 -0
  39. package/dist/jsx/SheetImplementationCustom.mjs +73 -24
  40. package/dist/jsx/SheetImplementationCustom.mjs.map +1 -1
  41. package/dist/jsx/SheetImplementationCustom.native.js +83 -28
  42. package/dist/jsx/SheetImplementationCustom.native.js.map +1 -1
  43. package/dist/jsx/SheetScrollView.mjs +19 -5
  44. package/dist/jsx/SheetScrollView.mjs.map +1 -1
  45. package/dist/jsx/SheetScrollView.native.js +18 -4
  46. package/dist/jsx/SheetScrollView.native.js.map +1 -1
  47. package/dist/jsx/nativeSheet.mjs +3 -0
  48. package/dist/jsx/nativeSheet.mjs.map +1 -1
  49. package/dist/jsx/nativeSheet.native.js +3 -0
  50. package/dist/jsx/nativeSheet.native.js.map +1 -1
  51. package/dist/jsx/useKeyboardControllerSheet.mjs +63 -7
  52. package/dist/jsx/useKeyboardControllerSheet.mjs.map +1 -1
  53. package/dist/jsx/useSheetProviderProps.mjs.map +1 -1
  54. package/dist/jsx/useSheetProviderProps.native.js.map +1 -1
  55. package/dist/jsx/useSheetScrollViewGestures.mjs +6 -1
  56. package/dist/jsx/useSheetScrollViewGestures.mjs.map +1 -1
  57. package/dist/jsx/webViewport.mjs +22 -0
  58. package/dist/jsx/webViewport.mjs.map +1 -0
  59. package/dist/jsx/webViewport.native.js +54 -0
  60. package/dist/jsx/webViewport.native.js.map +1 -0
  61. package/package.json +20 -20
  62. package/src/SheetImplementationCustom.tsx +300 -56
  63. package/src/SheetScrollView.tsx +48 -9
  64. package/src/nativeSheet.tsx +3 -0
  65. package/src/types.tsx +11 -1
  66. package/src/useKeyboardControllerSheet.ts +106 -10
  67. package/src/useSheetProviderProps.tsx +16 -0
  68. package/src/useSheetScrollViewGestures.ts +23 -2
  69. package/src/webViewport.ts +52 -0
  70. package/types/SheetContext.d.ts +3 -0
  71. package/types/SheetContext.d.ts.map +1 -1
  72. package/types/SheetImplementationCustom.d.ts.map +1 -1
  73. package/types/SheetScrollView.d.ts.map +1 -1
  74. package/types/nativeSheet.d.ts.map +1 -1
  75. package/types/types.d.ts +4 -1
  76. package/types/types.d.ts.map +1 -1
  77. package/types/useKeyboardControllerSheet.d.ts +14 -3
  78. package/types/useKeyboardControllerSheet.d.ts.map +1 -1
  79. package/types/useSheetProviderProps.d.ts +3 -0
  80. package/types/useSheetProviderProps.d.ts.map +1 -1
  81. package/types/useSheetScrollViewGestures.d.ts.map +1 -1
  82. package/types/webViewport.d.ts +30 -0
  83. package/types/webViewport.d.ts.map +1 -0
@@ -45,6 +45,7 @@ var import_GestureSheetContext = require("./GestureSheetContext.cjs");
45
45
  var import_gestureState = require("./gestureState.cjs");
46
46
  var import_SheetContext = require("./SheetContext.cjs");
47
47
  var import_useSheetScrollViewGestures = require("./useSheetScrollViewGestures.cjs");
48
+ var import_webViewport = require("./webViewport.cjs");
48
49
  var import_jsx_runtime = require("react/jsx-runtime");
49
50
  const SHEET_SCROLL_VIEW_NAME = "SheetScrollView";
50
51
  const SheetScrollView = import_react.default.forwardRef(({
@@ -63,6 +64,7 @@ const SheetScrollView = import_react.default.forwardRef(({
63
64
  screenSize
64
65
  } = context;
65
66
  const keyboardOccludedHeight = Math.max(0, context.keyboardOccludedHeight || 0);
67
+ const isKeyboardVisible = context.isKeyboardVisible === true || import_core.isWeb && (0, import_webViewport.getWebKeyboardHeight)() >= import_webViewport.MIN_KEYBOARD_HEIGHT;
66
68
  const [scrollEnabled] = (0, import_use_controllable_state.useControllableState)({
67
69
  prop: scrollEnabledProp,
68
70
  defaultProp: true
@@ -71,14 +73,21 @@ const SheetScrollView = import_react.default.forwardRef(({
71
73
  const [hasScrollableContent, setHasScrollableContent] = (0, import_react.useState)(true);
72
74
  const parentHeight = (0, import_react.useRef)(0);
73
75
  const contentHeight = (0, import_react.useRef)(0);
74
- const keyboardFrozenHeight = hasFit && keyboardOccludedHeight > 0 && parentHeight.current ? parentHeight.current : void 0;
76
+ const frozenFrameHeight = Math.max(0, context.keyboardStableFrameHeight || 0);
75
77
  const fitSizingStyle = hasFit ? {
76
78
  flex: void 0,
77
- height: keyboardFrozenHeight,
79
+ height: void 0,
78
80
  maxHeight: screenSize || void 0
79
81
  } : {
80
82
  flex: 1
81
83
  };
84
+ const isKeyboardSeeding = context.isKeyboardSeeding === true;
85
+ const keyboardFrozenOverride = hasFit && isKeyboardVisible && frozenFrameHeight > 0 ? isKeyboardSeeding ? {
86
+ maxHeight: frozenFrameHeight
87
+ } : {
88
+ height: frozenFrameHeight,
89
+ maxHeight: frozenFrameHeight
90
+ } : null;
82
91
  const panGestureRef = gestureContext?.panGestureRef;
83
92
  const {
84
93
  ScrollView: RNGHScrollView
@@ -125,6 +134,9 @@ const SheetScrollView = import_react.default.forwardRef(({
125
134
  setHasScrollableContent(contentHeight.current > parentHeight.current);
126
135
  }
127
136
  };
137
+ const recordFitHeight = height => {
138
+ parentHeight.current = height;
139
+ };
128
140
  (0, import_react.useEffect)(() => {
129
141
  scrollBridge.hasScrollableContent = hasScrollableContent;
130
142
  }, [hasScrollableContent]);
@@ -158,7 +170,7 @@ const SheetScrollView = import_react.default.forwardRef(({
158
170
  scrollEnabled,
159
171
  simultaneousHandlers: [panGestureRef],
160
172
  onLayout: e => {
161
- parentHeight.current = Math.ceil(e.nativeEvent.layout.height);
173
+ recordFitHeight(Math.ceil(e.nativeEvent.layout.height));
162
174
  updateScrollable();
163
175
  },
164
176
  onScroll: e => {
@@ -198,12 +210,13 @@ const SheetScrollView = import_react.default.forwardRef(({
198
210
  keyboardShouldPersistTaps: "always",
199
211
  keyboardDismissMode: "none",
200
212
  ...props,
213
+ ...keyboardFrozenOverride,
201
214
  children: contentWrapper
202
215
  });
203
216
  }
204
217
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_scroll_view.ScrollView, {
205
218
  onLayout: e => {
206
- parentHeight.current = Math.ceil(e.nativeEvent.layout.height);
219
+ recordFitHeight(Math.ceil(e.nativeEvent.layout.height));
207
220
  updateScrollable();
208
221
  },
209
222
  ref: (0, import_compose_refs.composeRefs)(scrollRef, ref),
@@ -224,6 +237,7 @@ const SheetScrollView = import_react.default.forwardRef(({
224
237
  },
225
238
  ...gestureProps,
226
239
  ...props,
240
+ ...keyboardFrozenOverride,
227
241
  children: contentWrapper
228
242
  });
229
243
  });
@@ -48,6 +48,7 @@ var import_GestureSheetContext = require("./GestureSheetContext.native.js");
48
48
  var import_gestureState = require("./gestureState.native.js");
49
49
  var import_SheetContext = require("./SheetContext.native.js");
50
50
  var import_useSheetScrollViewGestures = require("./useSheetScrollViewGestures.native.js");
51
+ var import_webViewport = require("./webViewport.native.js");
51
52
  var SHEET_SCROLL_VIEW_NAME = "SheetScrollView";
52
53
  var SheetScrollView = /* @__PURE__ */import_react.default.forwardRef(function (param, ref) {
53
54
  var {
@@ -66,6 +67,7 @@ var SheetScrollView = /* @__PURE__ */import_react.default.forwardRef(function (p
66
67
  screenSize
67
68
  } = context;
68
69
  var keyboardOccludedHeight = Math.max(0, context.keyboardOccludedHeight || 0);
70
+ var isKeyboardVisible = context.isKeyboardVisible === true || import_core.isWeb && (0, import_webViewport.getWebKeyboardHeight)() >= import_webViewport.MIN_KEYBOARD_HEIGHT;
69
71
  var [scrollEnabled] = (0, import_use_controllable_state.useControllableState)({
70
72
  prop: scrollEnabledProp,
71
73
  defaultProp: true
@@ -74,14 +76,21 @@ var SheetScrollView = /* @__PURE__ */import_react.default.forwardRef(function (p
74
76
  var [hasScrollableContent, setHasScrollableContent] = (0, import_react.useState)(true);
75
77
  var parentHeight = (0, import_react.useRef)(0);
76
78
  var contentHeight = (0, import_react.useRef)(0);
77
- var keyboardFrozenHeight = hasFit && keyboardOccludedHeight > 0 && parentHeight.current ? parentHeight.current : void 0;
79
+ var frozenFrameHeight = Math.max(0, context.keyboardStableFrameHeight || 0);
78
80
  var fitSizingStyle = hasFit ? {
79
81
  flex: void 0,
80
- height: keyboardFrozenHeight,
82
+ height: void 0,
81
83
  maxHeight: screenSize || void 0
82
84
  } : {
83
85
  flex: 1
84
86
  };
87
+ var isKeyboardSeeding = context.isKeyboardSeeding === true;
88
+ var keyboardFrozenOverride = hasFit && isKeyboardVisible && frozenFrameHeight > 0 ? isKeyboardSeeding ? {
89
+ maxHeight: frozenFrameHeight
90
+ } : {
91
+ height: frozenFrameHeight,
92
+ maxHeight: frozenFrameHeight
93
+ } : null;
85
94
  var panGestureRef = gestureContext === null || gestureContext === void 0 ? void 0 : gestureContext.panGestureRef;
86
95
  var {
87
96
  ScrollView: RNGHScrollView
@@ -130,6 +139,9 @@ var SheetScrollView = /* @__PURE__ */import_react.default.forwardRef(function (p
130
139
  setHasScrollableContent(contentHeight.current > parentHeight.current);
131
140
  }
132
141
  };
142
+ var recordFitHeight = function (height) {
143
+ parentHeight.current = height;
144
+ };
133
145
  (0, import_react.useEffect)(function () {
134
146
  scrollBridge.hasScrollableContent = hasScrollableContent;
135
147
  }, [hasScrollableContent]);
@@ -163,7 +175,7 @@ var SheetScrollView = /* @__PURE__ */import_react.default.forwardRef(function (p
163
175
  scrollEnabled,
164
176
  simultaneousHandlers: [panGestureRef],
165
177
  onLayout: function (e) {
166
- parentHeight.current = Math.ceil(e.nativeEvent.layout.height);
178
+ recordFitHeight(Math.ceil(e.nativeEvent.layout.height));
167
179
  updateScrollable();
168
180
  },
169
181
  onScroll: function (e) {
@@ -204,12 +216,13 @@ var SheetScrollView = /* @__PURE__ */import_react.default.forwardRef(function (p
204
216
  keyboardShouldPersistTaps: "always",
205
217
  keyboardDismissMode: "none",
206
218
  ...props,
219
+ ...keyboardFrozenOverride,
207
220
  children: contentWrapper
208
221
  });
209
222
  }
210
223
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_scroll_view.ScrollView, {
211
224
  onLayout: function (e) {
212
- parentHeight.current = Math.ceil(e.nativeEvent.layout.height);
225
+ recordFitHeight(Math.ceil(e.nativeEvent.layout.height));
213
226
  updateScrollable();
214
227
  },
215
228
  ref: (0, import_compose_refs.composeRefs)(scrollRef, ref),
@@ -230,6 +243,7 @@ var SheetScrollView = /* @__PURE__ */import_react.default.forwardRef(function (p
230
243
  },
231
244
  ...gestureProps,
232
245
  ...props,
246
+ ...keyboardFrozenOverride,
233
247
  children: contentWrapper
234
248
  });
235
249
  });
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","SheetScrollView_exports","__export","SheetScrollView","module","exports","import_jsx_runtime","require","import_compose_refs","import_core","import_scroll_view","import_use_controllable_state","import_react","__toESM","import_GestureSheetContext","import_gestureState","import_SheetContext","import_useSheetScrollViewGestures","SHEET_SCROLL_VIEW_NAME","default","forwardRef","param","ref","__scopeSheet","children","onScroll","scrollEnabled","scrollEnabledProp","props","context","useSheetContext","gestureContext","useGestureSheetContext","scrollBridge","setHasScrollView","hasFit","screenSize","keyboardOccludedHeight","Math","max","useControllableState","prop","defaultProp","scrollRef","useRef","hasScrollableContent","setHasScrollableContent","useState","parentHeight","contentHeight","keyboardFrozenHeight","current","fitSizingStyle","flex","height","maxHeight","panGestureRef","ScrollView","RNGHScrollView","getGestureHandlerState","useRNGHScrollView","isGestureHandlerEnabled","currentScrollOffset","lockedScrollY","setScrollEnabled","next","lockTo","_scrollRef_current_scrollTo","_scrollRef_current","lockY","scrollLockY","scrollTo","call","x","y","animated","forceScrollTo","useEffect","updateScrollable","gestureProps","useSheetScrollViewGestures","contentWrapper","jsxs","View","onLayout","e","floor","nativeEvent","layout","jsx","width","RNGHComponent","composeRefs","style","scrollEventThrottle","simultaneousHandlers","ceil","contentOffset","scrollStartY","contentContainerStyle","minHeight","bounces","keyboardShouldPersistTaps","keyboardDismissMode","className"],"sources":["../../src/SheetScrollView.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","SheetScrollView_exports","__export","SheetScrollView","module","exports","import_jsx_runtime","require","import_compose_refs","import_core","import_scroll_view","import_use_controllable_state","import_react","__toESM","import_GestureSheetContext","import_gestureState","import_SheetContext","import_useSheetScrollViewGestures","import_webViewport","SHEET_SCROLL_VIEW_NAME","default","forwardRef","param","ref","__scopeSheet","children","onScroll","scrollEnabled","scrollEnabledProp","props","context","useSheetContext","gestureContext","useGestureSheetContext","scrollBridge","setHasScrollView","hasFit","screenSize","keyboardOccludedHeight","Math","max","isKeyboardVisible","isWeb","getWebKeyboardHeight","MIN_KEYBOARD_HEIGHT","useControllableState","prop","defaultProp","scrollRef","useRef","hasScrollableContent","setHasScrollableContent","useState","parentHeight","contentHeight","frozenFrameHeight","keyboardStableFrameHeight","fitSizingStyle","flex","height","maxHeight","isKeyboardSeeding","keyboardFrozenOverride","panGestureRef","ScrollView","RNGHScrollView","getGestureHandlerState","useRNGHScrollView","isGestureHandlerEnabled","currentScrollOffset","lockedScrollY","setScrollEnabled","next","lockTo","_scrollRef_current_scrollTo","_scrollRef_current","lockY","current","scrollLockY","scrollTo","call","x","y","animated","forceScrollTo","useEffect","updateScrollable","recordFitHeight","gestureProps","useSheetScrollViewGestures","contentWrapper","jsxs","View","onLayout","e","floor","nativeEvent","layout","jsx","width","RNGHComponent","composeRefs","style","scrollEventThrottle","simultaneousHandlers","ceil","contentOffset","scrollStartY","contentContainerStyle","minHeight","bounces","keyboardShouldPersistTaps","keyboardDismissMode","className"],"sources":["../../src/SheetScrollView.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,uBAAA;AAAAC,QAAA,CAAAD,uBAAA;EAAAE,eAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAT,YAA4B,CAAAK,uBAAA;AAC5B,IAAAK,kBAAyC,GAAAC,OAAA;AAEzC,IAAAC,mBAAA,GAA2BD,OAAA;AAC3B,IAAAE,WAAA,GAAAF,OAAA,gBAAqC;AACrC,IAAAG,kBAAmD,GAAAH,OAAA;AAEnD,IAAAI,6BAAuC,GAAAJ,OAAA;AACvC,IAAAK,YAAA,GAAAC,OAAgE,CAAAN,OAAA;AAChE,IAAAO,0BAAgC,GAAAP,OAAA;AAEhC,IAAAQ,mBAAA,GAAAR,OAAA,2BAA2C;AAC3C,IAAAS,mBAAA,GAA0DT,OAAA;AAgJpD,IAAAU,iCAAA,GAAAV,OAAA;AA9IN,IAAAW,kBAAM,GAAAX,OAAyB;AAExB,IAAAY,sBAAwB,oBAAM;AAAA,IAKjChB,eAAA,kBAAAS,YAAA,CAAAQ,OAAA,CAAAC,UAAA,WAAAC,KAAA,EAAAC,GAAA;EAAA,IACE;IAAAC,YAAA;IAAAC,QAAA;IAAAC,QAAA;IAAAC,aAAA,EAAAC,iBAAA;IAAA,GAAAC;EAAA,IAAAP,KAAA;EAAA,IACAQ,OAAA,OAAAd,mBAAA,CAAAe,eAAA,EAAAZ,sBAAA,EAAAK,YAAA;EAAA,IACAQ,cAAA,OAAAlB,0BAAA,CAAAmB,sBAAA;EAAA,IACA;IAAAC,YAAe;IAAAC,gBAAA;IAAAC,MAAA;IAAAC;EAAA,IAAAP,OAAA;EAAA,IACfQ,sBAAG,GAAAC,IAAA,CAAAC,GAAA,IAAAV,OAAA,CAAAQ,sBAAA;EACL,IACAG,iBACG,GAAAX,OAAA,CAAAW,iBAAA,aAAAhC,WAAA,CAAAiC,KAAA,QAAAxB,kBAAA,CAAAyB,oBAAA,OAAAzB,kBAAA,CAAA0B,mBAAA;EACH,KAAAjB,aAAM,IAAU,IAAAhB,6BAAA,CAAAkC,oBAAgB;IAChCC,IAAA,EAAMlB,iBAAA;IACNmB,WAAQ;EACR;EAMA,IAAAC,SAAM,GAAApC,YACJ,CAAAQ,OAAQ,CAAA6B,MAAA;EAEV,KAAAC,oBAAoB,EAAAC,uBAAI,QAAAvC,YAAA,CAAAwC,QAAA,MAAqB;EAAA,IAC3CC,YAAM,OAAAzC,YAAA,CAAAqC,MAAA;EAAA,IACNK,aAAa,OAAA1C,YAAA,CAAAqC,MAAA;EAAA,IACdM,iBAAA,GAAAhB,IAAA,CAAAC,GAAA,IAAAV,OAAA,CAAA0B,yBAAA;EACD,IAAAC,cAAM,GAAYrB,MAAA;IAElBsB,IAAA,EAAM,KAAC;IACPC,MAAM;IACNC,SAAM,EAAAvB,UAAA,SAAgB;EAKtB;IAMAqB,IAAA,EAAM;EACF;EACQ,IACNG,iBAAQ,GAAA/B,OAAA,CAAA+B,iBAAA;EAAA,IACRC,sBAAW,GAAc1B,MAAA,IAAAK,iBAAA,IAAAc,iBAAA,OAAAM,iBAAA;IAC3BD,SACE,EAAAL;EAON;IAWAI,MAAM,EAAAJ,iBAAA;IAONK,SAAM,EAAAL;EACN,QAAM;EACN,IAAAQ,aAAM,GAAA/B,cAAoB,aAAAA,cAAA,mBAAwB,IAAKA,cAAA,CAAA+B,aAAkB;EAGzE;IAAAC,UAAM,EAAAC;EAAA,CAAsB,OAAAlD,mBAAQ,CAAAmD,sBAAA;EACpC,IAAAC,iBAAM,OAAgBpD,mBAAA,CAAAqD,uBAAQ,OAAAH,cAAA,IAAAF,aAAA;EAE9B,IAAAM,mBAAM,IAAmB,CAAC,EAAAzD,YAAe,CAAAqC,MAAoB;EAC3D,IAAAqB,aAAW,OAAA1D,YAAA,CAAAqC,MAAA;EACT,IAAAsB,gBAAc,YAAAA,CAAUC,IAAA,EAAAC,MAAA;IACxB,KAAAD,IAAA;MACA,IAAAE,2BAA2B,EAAAC,kBAAA;MAC3B,IAAAC,KAAA,GAAUH,MAAA,KAAS,QAAAA,MAAgB,KAAG,KAAG,IAAOA,MAAA,GAAUJ,mBAAO,CAAAQ,OAAA;MACnEP,aAAO,CAAAO,OAAA,GAAAD,KAAA;MACL1C,YAAA,CAAA4C,WAAc,GAAUF,KAAA;MACxB,CAAAD,kBAAa,GAAA3B,SAAc,CAAA6B,OAAA,cAAAF,kBAAA,wBAAAD,2BAAA,GAAAC,kBAAA,CAAAI,QAAA,cAAAL,2BAAA,uBAAAA,2BAAA,CAAAM,IAAA,CAAAL,kBAAA;QAC7BM,CAAA;QACFC,CAAA,EAAAN,KAAA;QAEAO,QAAM;MACJ;IACF;MAEAb,aAAA,CAAAO,OAAA,GAAAR,mBAAgB,CAAAQ,OAAA;MACd3C,YAAA,CAAA4C,WAAqB;IACrB;EACE;EACA,IAAAM,aAAA,GAAa,SAAAA,CAAAF,CAAA;IAAgB,IAC/BR,2BAAA,EAAAC,kBAAA;IACA,CAAAA,kBAAa,GAAA3B,SAAA,CAAA6B,OAAA,cAAAF,kBAAA,wBAAAD,2BAAA,GAAAC,kBAAA,CAAAI,QAAA,cAAAL,2BAAA,uBAAAA,2BAAA,CAAAM,IAAA,CAAAL,kBAAA;MACXM,CAAA;MACAC,CAAA;MACAC,QAAA;IAA6B,EAC/B;EAAA;EAGF,IAAAvE,YAAM,CAAAyE,SAAA,EAAmB,YAAM;IAC7BlD,gBAAI,KAAa;IACf,QAAApB,mBAAA,CAAwBqD,uBAAc,EAAU;MAClDlC,YAAA,CAAAqC,gBAAA,GAAAA,gBAAA;MACFrC,YAAA,CAAAkD,aAAA,GAAAA,aAAA;IAIA;IACE,mBAAa;MACfjD,gBAAA;MAEAD,YAAA,CAAAqC,gBAAU,GAAM;MACdrC,YAAA,CAAakD,aAAA;IACf;EAGA;EAAgD,IAC9CE,gBAAA,YAAAA,CAAA;IAAA,IACAjC,YAAA,CAAAwB,OAAA,IAAAvB,aAAA,CAAAuB,OAAA;MACA1B,uBAAA,CAAAG,aAAA,CAAAuB,OAAA,GAAAxB,YAAA,CAAAwB,OAAA;IAAA;EACA;EACA,IACDU,eAAA,YAAAA,CAAA5B,MAAA;IAGDN,YAAM,CAAAwB,OAAA,GACJlB,MAAA;EAAA;EAAC,IAAA/C,YAAA,CAAAyE,SAAA;IAAAnD,YACC,CAAAgB,oBAAiB,GAAAA,oBAAA;EACf,IACAA,oBAAI,CACF;EACA,IAAAsC,YAAA,OAAAvE,iCAAiB,CAAAwE,0BAAA;IAAAzC,SACnB;IAAAd,YACF;IAAAgB,oBAEC;IAAAvB,aAAA;IAAA4C;EAEC;EAAC,IAAAmB,cAAA,sBAAApF,kBAAA,CAAAqF,IAAA,EAAAlF,WAAA,CAAAmF,IAAA;IAAAC,QAAA,EACC,SAAAA,CAAAC,CAAA;MAA8B,IAAAnC,MAC9B,GAAApB,IAAQ,CAAAwD,KAAA,CAAAD,CAAA,CAAAE,WAAA,CAAAC,MAAA,CAAAtC,MAAA;MAAA,IAAAA,MACR,KAAML,aAAA,CAAAuB,OAAA;QAAAvB,aAAA,CAAAuB,OAAA,GAAAlB,MAAA;QAAA2B,gBACR;MAAA;IAAA;IAEJ7D,QAAA,GAIFA,QAAI,EACFa,sBAAsB,2BAAAhC,kBAAA,CAAA4F,GAAA,EAAAzF,WAAA,CAAAmF,IAAA;MACtB,gCACE;MAACjC,MAAA,EAAArB,sBAAA;MAAA6D,KAAA;IAAA;EAEQ;EACc,IAAAhC,iBACrB,IAAAF,cAAA,IAAAF,aAAA;IAAA,IAAAqC,aACA,GAAAnC,cAAuB;IAAa,OACpC,eAAsB,IAAA3D,kBAAA,CAAA4F,GAAA,EAAAE,aAAA;MACpB7E,GAAA,MAAAf,mBAAqB,CAAA6F,WAAO,EAAArD,SAAY,EAAOzB,GAAA;MAC/C+E,KAAA,EAAA7C,cAAA;MAAiB8C,mBACnB;MAAA5E,aACA;MACE6E,oBAAc,EAAE,CAChBzC,aAAA,CAEA;MACE8B,QAAA,WAAAA,CAAUC,CAAA;QACRP,eAAA,CAAAhD,IAAU,CAAAkE,IAAA,CAAAX,CAAS,CAAAE,WAAW,CAAAC,MAAA,CAAAtC,MAAA;QAAA2B,gBACzB;MAAA;MACa5D,QAAA,WAAAA,CAChBoE,CAAA,EAAU;QAAA;UAAAZ;QACZ,CAAC,GAAAY,CAAA,CAAAE,WAAA,CAAAU,aAAA;QAAArC,mBACH,CAAAQ,OAAA,GAAAK,CAAA;QACA,IAAAhD,YAAA,CAAA4C,WAAiB,UAAa;UAC9B,IAAAI,CAAA,KAAAhD,YAAW,CAAA4C,WAAA;YAAA,IACTJ,2BAAG,EAAAC,kBAAA;YAAA,CAAAA,kBACU,GAAA3B,SAAA,CAAA6B,OAAA,cAAAF,kBAAA,wBAAAD,2BAAA,GAAAC,kBAAA,CAAAI,QAAA,cAAAL,2BAAA,uBAAAA,2BAAA,CAAAM,IAAA,CAAAL,kBAAA;cAAAM,CAAA,GACX;cAAKC,CAAA,EAAAhD,YACL,CAAA4C,WAAe;cAAAK,QACb,EAAG;YAAc;UACD;UAClBjD,YACF,CAAAgD,CAAA,GAAAhD,YAAA,CAAA4C,WAAA;UAAApD,QACD,aAAAA,QAAA,uBAAAA,QAAA;YACD,GAAAoE,CAAA;YACFE,WAAA;cAEA,GAAAF,CAAA,CAAAE,WAAiB;cACjBU,aAAW;gBACX,GAAAZ,CAAA,CAAAE,WAAY,CAAAU,aAAA;gBACdxB,CAAA,EAAAhD,YAAA,CAAA4C;cACA;YACA;UACA;UACA;QAAoB;QAChB5C,YACA,CAAAgD,CAAA,GAAAA,CAAA;QAAA,IAEHA,CAAA,MAAAhD,YAAA,CAAAyE,YAAA;QAAAjF,QAAA,aAAAA,QAAA,uBAAAA,QAAA,CAAAoE,CAAA;MACH;MAEJc,qBAAA;QAGAC,SACE;MAAC;MAAAC,OAAA;MAAAC,yBACkB;MACfC,mBAAA,EAAgB,MAAK;MACrB,GAAAnF,KAAA;MAAiB,GACnBiC,sBAAA;MAAArC,QACA,EAAAiE;IAAsC;EAClC;EACiB,OACrB,eAAU,IAAApF,kBAAA,CAAA4F,GAAA,EAAAxF,kBAAA,CAAAsD,UAAA;IAAA6B,QACV,WAAAA,CAAAC,CAAA;MAAAP,eACW,CAAAhD,IAAM,CAAAkE,IAAA,CAAAX,CAAA,CAAAE,WAAA,CAAAC,MAAA,CAAAtC,MAAA;MACf2B,gBAAU,EAAI;IACd;IACA/D,GAAA,MAAAf,mBAAW,CAAA6F,WAAa,EAAArD,SAAe,EAAAzB,GAAA;IACvC,GAAAkC,cAAW;IAAC8C,mBACd;IAAAU,SACA;IAA2CtF,aACvC;IAAAD,QACA,WAAAA,CAAAoE,CAAA;MAAA,IACH;QAAGZ;MAAA,IAAAY,CAAA,CAAAE,WAAA,CAAAU,aAAA;MAAAxE,YAEH,CAAAgD,CAAA,GAAAA,CAAA;MAAA,IAAAA,CAAA,MAAAhD,YAAA,CAAAyE,YAAA;MACHjF,QAAA,aAAAA,QAAA,uBAAAA,QAAA,CAAAoE,CAAA;IAEJ;IACFc,qBAAA","ignoreList":[]}
@@ -68,6 +68,9 @@ function setupNativeSheet(platform, RNIOSModal) {
68
68
  children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_SheetContext.SheetProvider, {
69
69
  setHasScrollView: emptyFn,
70
70
  keyboardOccludedHeight: 0,
71
+ isKeyboardVisible: false,
72
+ keyboardStableFrameHeight: 0,
73
+ isKeyboardSeeding: false,
71
74
  ...providerProps,
72
75
  onlyShowFrame: true,
73
76
  children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(ModalSheetView, {
@@ -73,6 +73,9 @@ function setupNativeSheet(platform, RNIOSModal) {
73
73
  children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_SheetContext.SheetProvider, {
74
74
  setHasScrollView: emptyFn,
75
75
  keyboardOccludedHeight: 0,
76
+ isKeyboardVisible: false,
77
+ keyboardStableFrameHeight: 0,
78
+ isKeyboardSeeding: false,
76
79
  ...providerProps,
77
80
  onlyShowFrame: true,
78
81
  children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(ModalSheetView, {
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","nativeSheet_exports","__export","getNativeSheet","setupNativeSheet","module","exports","import_jsx_runtime","require","import_stacks","import_react","import_react_native","import_SheetContext","import_useSheetOpenState","import_useSheetProviderProps","nativeSheets","ios","platform","RNIOSModal","ModalSheetView","ModalSheetViewMainContent","props","state","useSheetOpenState","providerProps","useSheetProviderProps","open","setOpen","ref","useRef","useEffect","_ref_current","current","presentModal","_ref_current1","dismissModal","setOpenInternal","next","_props_onOpenChange","onOpenChange","call","jsx","Fragment","children","jsxs","SheetProvider","setHasScrollView","emptyFn","keyboardOccludedHeight","onlyShowFrame","onModalDidDismiss","View","style","flex"],"sources":["../../src/nativeSheet.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,mBAAA;AAAAC,QAAA,CAAAD,mBAAA;EAAAE,cAAA,EAAAA,CAAA,KAAAA,cAAA;EAAAC,gBAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAV,YAAuB,CAAAK,mBAAA;AAEvB,IAAAM,kBAAkC,GAAAC,OAAA;AAClC,IAAAC,aAAA,GAAAD,OAAqB;AACrB,IAAAE,YAAA,GAAAF,OAA8B;AAE9B,IAAAG,mBAAA,GAAAH,OAAkC;AAClC,IAAAI,mBAAA,GAAAJ,OAAA,2BAAsC;AAqD9B,IAAAK,wBAAA,GAAAL,OAAA;AA/CR,IAAAM,4BAAyF,GAAAN,OAAA;AAAA,IACvFO,YAAK;EACPC,GAAA;AAEO;AACL,SAAOb,cAAaA,CAAAc,QAAQ;EAC9B,OAAAF,YAAA,CAAAE,QAAA;AAEO;AAIL,SAAMb,gBAAEA,CAAgBa,QAAA,EAAAC,UAAA;EAExB,IAAI;IAAAC,cAAa;IAAAC;EAAO,IAAAF,UAAA;EACtB,IAAAD,QAAA,KAAa,OAAQ;IACnBF,YAAM,CAAAE,QAAQ,cAAAI,KAAA;MACd,IAAAC,KAAM,OAAAT,wBAAgB,CAAAU,iBAAA,EAAAF,KAAA;MAItB,IAAAG,aAAc,KAAQ,EAAAV,4BAAI,CAAAW,qBAAA,EAAAJ,KAAA,EAAAC,KAAA;MAC1B;QAAMI,IAAA;QAAAC;MAAM,IAAAL,KAAA;MAKZ,IAAAM,GAAA,OAAAlB,YAAA,CAAAmB,MAAU,EAAM;MACd,IAAAnB,YAAU,CAAAoB,SAAA;QACR,IAAAJ,IAAI;UACN,IAAAK,YAAO;UACL,CAAAA,YAAa,GAAAH,GAAA,CAAAI,OAAa,cAAAD,YAAA,uBAAAA,YAAA,CAAAE,YAAA;QAC5B;UACE,IAAIC,aAAC;UAET,CAAAA,aAAS,GAAAN,GAAA,CAAgBI,OAAe,cAAAE,aAAA,uBAAAA,aAAA,CAAAC,YAAA;QACtC;MACA,IACFT,IAAA,CAQA;MAEI,SAACU,gBAAAC,IAAA;QAAA,IAAAC,mBAAA;QAAA,CAAAA,mBACmB,GAAAjB,KAAA,CAAAkB,YAAA,cAAAD,mBAAA,uBAAAA,mBAAA,CAAAE,IAAA,CAAAnB,KAAA,EAAAK,IAAA;QAAAC,OAClB,CAAAU,IAAA;MAAwB;MACpB,OACJ,eAAa,IAAA9B,kBAAA,CAAAkC,GAAA,EAAAlC,kBAAA,CAAAmC,QAAA;QAAAC,QAEb,qBAAApC,kBAAA,CAAAqC,IAAA,EAAAhC,mBAAA,CAAAiC,aAAA;UAAAC,gBAAA,EAAAC,OAAA;UAIAC,sBAIA;UAAA,GAAAxB,aAAC;UAAAyB,aAAA;UAAAN,QACC,GAAS,eACA,IAAApC,kBAAA,CAAAkC,GAAA,EAAAtB,cAAA;YAAAS,GACT;YAAcsB,iBACP,WAAAA,CAAA;cACP,OAAAd,eAAQ;YAAA;YAEDO,QAAA,qBAAApC,kBAAA,CAAAkC,GAAA,EAAArB,yBAAA;cACTuB,QAAA,qBAAApC,kBAAA,CAAAkC,GAAA,EAAA9B,mBAAA,CAAAwC,IAAA;gBAAAC,KAAA;kBAAAC,IAAA;gBAEJ;gBAEJV,QAAA,EAAAtB,KAAA,CAAAsB;cACF;YACF;UAEM,IAEN","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","nativeSheet_exports","__export","getNativeSheet","setupNativeSheet","module","exports","import_jsx_runtime","require","import_stacks","import_react","import_react_native","import_SheetContext","import_useSheetOpenState","import_useSheetProviderProps","nativeSheets","ios","platform","RNIOSModal","ModalSheetView","ModalSheetViewMainContent","props","state","useSheetOpenState","providerProps","useSheetProviderProps","open","setOpen","ref","useRef","useEffect","_ref_current","current","presentModal","_ref_current1","dismissModal","setOpenInternal","next","_props_onOpenChange","onOpenChange","call","jsx","Fragment","children","jsxs","SheetProvider","setHasScrollView","emptyFn","keyboardOccludedHeight","isKeyboardVisible","keyboardStableFrameHeight","isKeyboardSeeding","onlyShowFrame","onModalDidDismiss","View","style","flex"],"sources":["../../src/nativeSheet.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,mBAAA;AAAAC,QAAA,CAAAD,mBAAA;EAAAE,cAAA,EAAAA,CAAA,KAAAA,cAAA;EAAAC,gBAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAV,YAAuB,CAAAK,mBAAA;AAEvB,IAAAM,kBAAkC,GAAAC,OAAA;AAClC,IAAAC,aAAA,GAAAD,OAAqB;AACrB,IAAAE,YAAA,GAAAF,OAA8B;AAE9B,IAAAG,mBAAA,GAAAH,OAAkC;AAClC,IAAAI,mBAAA,GAAAJ,OAAA,2BAAsC;AAqD9B,IAAAK,wBAAA,GAAAL,OAAA;AA/CR,IAAAM,4BAAyF,GAAAN,OAAA;AAAA,IACvFO,YAAK;EACPC,GAAA;AAEO;AACL,SAAOb,cAAaA,CAAAc,QAAQ;EAC9B,OAAAF,YAAA,CAAAE,QAAA;AAEO;AAIL,SAAMb,gBAAEA,CAAgBa,QAAA,EAAAC,UAAA;EAExB,IAAI;IAAAC,cAAa;IAAAC;EAAO,IAAAF,UAAA;EACtB,IAAAD,QAAA,KAAa,OAAQ;IACnBF,YAAM,CAAAE,QAAQ,cAAAI,KAAA;MACd,IAAAC,KAAM,OAAAT,wBAAgB,CAAAU,iBAAA,EAAAF,KAAA;MAItB,IAAAG,aAAc,KAAQ,EAAAV,4BAAI,CAAAW,qBAAA,EAAAJ,KAAA,EAAAC,KAAA;MAC1B;QAAMI,IAAA;QAAAC;MAAM,IAAAL,KAAA;MAKZ,IAAAM,GAAA,OAAAlB,YAAA,CAAAmB,MAAU,EAAM;MACd,IAAAnB,YAAU,CAAAoB,SAAA;QACR,IAAAJ,IAAI;UACN,IAAAK,YAAO;UACL,CAAAA,YAAa,GAAAH,GAAA,CAAAI,OAAa,cAAAD,YAAA,uBAAAA,YAAA,CAAAE,YAAA;QAC5B;UACE,IAAIC,aAAC;UAET,CAAAA,aAAS,GAAAN,GAAA,CAAgBI,OAAe,cAAAE,aAAA,uBAAAA,aAAA,CAAAC,YAAA;QACtC;MACA,IACFT,IAAA,CAQA;MAEI,SAACU,gBAAAC,IAAA;QAAA,IAAAC,mBAAA;QAAA,CAAAA,mBACmB,GAAAjB,KAAA,CAAAkB,YAAA,cAAAD,mBAAA,uBAAAA,mBAAA,CAAAE,IAAA,CAAAnB,KAAA,EAAAK,IAAA;QAAAC,OAClB,CAAAU,IAAA;MAAwB;MACL,OACnB,mBAAA9B,kBAA2B,CAAAkC,GAAA,EAAAlC,kBAAA,CAAAmC,QAAA;QAAAC,QAC3B,iBAAmB,IAAApC,kBAAA,CAAAqC,IAAA,EAAAhC,mBAAA,CAAAiC,aAAA;UAClBC,gBAAG,EAAAC,OAAA;UACJC,sBAAa;UAEbC,iBAAA;UAAAC,yBAAA;UAIAC,iBAIA;UAAA,GAAA3B,aAAC;UAAA4B,aAAA;UAAAT,QACC,GAAS,eACA,IAAApC,kBAAA,CAAAkC,GAAA,EAAAtB,cAAA;YAAAS,GACT;YAAcyB,iBACP,WAAAA,CAAA;cACP,OAAAjB,eAAQ;YAAA;YAEDO,QAAA,qBAAApC,kBAAA,CAAAkC,GAAA,EAAArB,yBAAA;cACTuB,QAAA,qBAAApC,kBAAA,CAAAkC,GAAA,EAAA9B,mBAAA,CAAA2C,IAAA;gBAAAC,KAAA;kBAAAC,IAAA;gBAEJ;gBAEJb,QAAA,EAAAtB,KAAA,CAAAsB;cACF;YACF;UAEM,IAEN","ignoreList":[]}
@@ -26,15 +26,71 @@ __export(useKeyboardControllerSheet_exports, {
26
26
  });
27
27
  module.exports = __toCommonJS(useKeyboardControllerSheet_exports);
28
28
  var import_react = require("react");
29
- const noop = () => {};
30
- function useKeyboardControllerSheet(_options) {
29
+ var import_constants = require("@tamagui/constants");
30
+ var import_webViewport = require("./webViewport.cjs");
31
+ function useKeyboardControllerSheet(options) {
32
+ const {
33
+ enabled
34
+ } = options;
35
+ const [keyboardHeight, setKeyboardHeight] = (0, import_react.useState)(0);
36
+ const [isKeyboardVisible, setIsKeyboardVisible] = (0, import_react.useState)(false);
31
37
  const pauseKeyboardHandler = (0, import_react.useRef)(false);
38
+ const pendingHide = (0, import_react.useRef)(false);
39
+ const isVisibleRef = (0, import_react.useRef)(false);
40
+ isVisibleRef.current = isKeyboardVisible;
41
+ const dismissKeyboard = (0, import_react.useCallback)(() => {
42
+ if (typeof document === "undefined") return;
43
+ const active = document.activeElement;
44
+ if ((0, import_webViewport.isEditableElement)(active)) {
45
+ active?.blur?.();
46
+ }
47
+ }, []);
48
+ const flushPendingHide = (0, import_react.useCallback)(() => {
49
+ if (pendingHide.current) {
50
+ pendingHide.current = false;
51
+ setIsKeyboardVisible(false);
52
+ setKeyboardHeight(0);
53
+ }
54
+ }, []);
55
+ (0, import_react.useEffect)(() => {
56
+ if (!import_constants.isWeb || !enabled) return;
57
+ if (typeof window === "undefined") return;
58
+ const vv = window.visualViewport;
59
+ if (!vv) return;
60
+ const update = () => {
61
+ const height = (0, import_webViewport.getWebKeyboardHeight)();
62
+ const tall = height >= import_webViewport.MIN_KEYBOARD_HEIGHT;
63
+ const editableFocused = (0, import_webViewport.isEditableElement)(document.activeElement);
64
+ const visible = tall && (editableFocused || isVisibleRef.current);
65
+ if (!visible) {
66
+ if (pauseKeyboardHandler.current && isVisibleRef.current) {
67
+ pendingHide.current = true;
68
+ return;
69
+ }
70
+ setIsKeyboardVisible(false);
71
+ setKeyboardHeight(0);
72
+ return;
73
+ }
74
+ pendingHide.current = false;
75
+ setIsKeyboardVisible(true);
76
+ setKeyboardHeight(prev => prev === height ? prev : height);
77
+ };
78
+ vv.addEventListener("resize", update);
79
+ window.addEventListener("focusin", update);
80
+ window.addEventListener("focusout", update);
81
+ update();
82
+ return () => {
83
+ vv.removeEventListener("resize", update);
84
+ window.removeEventListener("focusin", update);
85
+ window.removeEventListener("focusout", update);
86
+ };
87
+ }, [enabled]);
32
88
  return {
33
89
  keyboardControllerEnabled: false,
34
- keyboardHeight: 0,
35
- isKeyboardVisible: false,
36
- dismissKeyboard: noop,
90
+ keyboardHeight,
91
+ isKeyboardVisible,
92
+ dismissKeyboard,
37
93
  pauseKeyboardHandler,
38
- flushPendingHide: noop
94
+ flushPendingHide
39
95
  };
40
96
  }
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useSheetProviderProps_exports","__export","useSheetProviderProps","module","exports","import_react","__toESM","require","import_core","import_use_constant","import_use_controllable_state","props","state","options","arguments","length","handleRef","default","useRef","contentRef","frameSize","setFrameSize","useState","maxContentSize","setMaxContentSize","_props_snapPointsMode","snapPointsMode","_props_snapPoints","snapPointsProp","snapPoints","hasFit","useMemo","dismissOnSnapToBottom","JSON","stringify","position_","setPositionImmediate","useControllableState","prop","position","defaultProp","defaultPosition","open","onChange","onPositionChange","strategy","setPosition","useCallback","next","setOpen","process","env","NODE_ENV","some","p","endsWith","n","Number","slice","console","warn","indexOf","shouldSetPositionOpen","useEffect","animationDriver","useConfiguration","Error","scrollBridge","useConstant","parentDragListeners","Set","bridge","hasScrollableContent","enabled","y","paneY","paneMinY","scrollStartY","drag","release","scrollLock","isParentDragging","onParentDragging","cb","add","delete","setParentDragging","val","forEach","disableRemoveScroll","modal","forceRemoveScrollEnabled","maxSnapPoint","screenSize","_props_dismissOnOverlayPress","_props_dismissOnSnapToBottom","providerProps","hidden","isHidden","dismissOnOverlayPress"],"sources":["../../src/useSheetProviderProps.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useSheetProviderProps_exports","__export","useSheetProviderProps","module","exports","import_react","__toESM","require","import_core","import_use_constant","import_use_controllable_state","props","state","options","arguments","length","handleRef","default","useRef","contentRef","frameSize","setFrameSize","useState","maxContentSize","setMaxContentSize","_props_snapPointsMode","snapPointsMode","_props_snapPoints","snapPointsProp","snapPoints","hasFit","useMemo","dismissOnSnapToBottom","JSON","stringify","position_","setPositionImmediate","useControllableState","prop","position","defaultProp","defaultPosition","open","onChange","onPositionChange","strategy","setPosition","useCallback","next","setOpen","process","env","NODE_ENV","some","p","endsWith","n","Number","slice","console","warn","indexOf","shouldSetPositionOpen","useEffect","animationDriver","useConfiguration","Error","scrollBridge","useConstant","parentDragListeners","Set","bridge","hasScrollableContent","enabled","y","paneY","paneMinY","scrollStartY","drag","release","scrollLock","isParentDragging","onParentDragging","cb","add","delete","setParentDragging","val","forEach","disableRemoveScroll","modal","forceRemoveScrollEnabled","maxSnapPoint","screenSize","_props_dismissOnOverlayPress","_props_dismissOnSnapToBottom","providerProps","hidden","isHidden","dismissOnOverlayPress"],"sources":["../../src/useSheetProviderProps.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -68,6 +68,7 @@ function useSheetScrollViewGestures({
68
68
  scrollYAtGestureStart: currentScrollY
69
69
  };
70
70
  scrollBridge.scrollStartY = touch.pageY;
71
+ scrollBridge.scrollNodeTouched = true;
71
72
  };
72
73
  const handleTouchMove = e => {
73
74
  const touch = e.touches[0];
@@ -94,6 +95,7 @@ function useSheetScrollViewGestures({
94
95
  if (newOwner === "pan") {
95
96
  s.panDragOffset = 0;
96
97
  s.dys = [];
98
+ scrollBridge.startPanDrag?.();
97
99
  scrollBridge.setParentDragging(true);
98
100
  disableScroll();
99
101
  } else {
@@ -109,7 +111,7 @@ function useSheetScrollViewGestures({
109
111
  scrollBridge.drag(s.panDragOffset);
110
112
  s.dys.push(dy);
111
113
  if (s.dys.length > 100) s.dys = s.dys.slice(-10);
112
- } else if (s.owner === "scroll") {
114
+ } else if (s.owner === "scroll" && !e.isTrusted) {
113
115
  const scrollDelta = -dy;
114
116
  const maxScrollY = node.scrollHeight - node.clientHeight;
115
117
  const newScrollY = Math.max(0, Math.min(maxScrollY, currentScrollY + scrollDelta));
@@ -135,11 +137,14 @@ function useSheetScrollViewGestures({
135
137
  dragAt: s.panDragOffset,
136
138
  vy
137
139
  });
140
+ } else if (s.owner === "scroll") {
141
+ scrollBridge.snapToPosition?.(0);
138
142
  }
139
143
  enableScroll();
140
144
  s.owner = "none";
141
145
  s.panDragOffset = 0;
142
146
  s.dys = [];
147
+ scrollBridge.scrollNodeTouched = false;
143
148
  };
144
149
  node.addEventListener("touchstart", handleTouchStart, {
145
150
  signal: controller.signal,
@@ -0,0 +1,50 @@
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: true
9
+ });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
14
+ get: () => from[key],
15
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
16
+ });
17
+ }
18
+ return to;
19
+ };
20
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
+ value: true
22
+ }), mod);
23
+ var webViewport_exports = {};
24
+ __export(webViewport_exports, {
25
+ MIN_KEYBOARD_HEIGHT: () => MIN_KEYBOARD_HEIGHT,
26
+ getStableLayoutViewportHeight: () => getStableLayoutViewportHeight,
27
+ getWebKeyboardHeight: () => getWebKeyboardHeight,
28
+ isEditableElement: () => isEditableElement
29
+ });
30
+ module.exports = __toCommonJS(webViewport_exports);
31
+ const MIN_KEYBOARD_HEIGHT = 80;
32
+ function isEditableElement(el) {
33
+ if (!el) return false;
34
+ const tag = el.tagName;
35
+ if (tag === "INPUT" || tag === "TEXTAREA" || tag === "SELECT") return true;
36
+ if (el.isContentEditable) return true;
37
+ return false;
38
+ }
39
+ function getStableLayoutViewportHeight() {
40
+ if (typeof window === "undefined") return 0;
41
+ const ch = typeof document !== "undefined" ? document.documentElement?.clientHeight : 0;
42
+ if (ch && ch > 0) return ch;
43
+ return Math.max(window.innerHeight || 0, window.visualViewport?.height || 0);
44
+ }
45
+ function getWebKeyboardHeight() {
46
+ if (typeof window === "undefined") return 0;
47
+ const vv = window.visualViewport;
48
+ if (!vv) return 0;
49
+ return Math.max(0, Math.round(getStableLayoutViewportHeight() - vv.height));
50
+ }
@@ -0,0 +1,54 @@
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: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
+ get: () => from[key],
17
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
+ });
19
+ }
20
+ return to;
21
+ };
22
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
23
+ value: true
24
+ }), mod);
25
+ var webViewport_exports = {};
26
+ __export(webViewport_exports, {
27
+ MIN_KEYBOARD_HEIGHT: () => MIN_KEYBOARD_HEIGHT,
28
+ getStableLayoutViewportHeight: () => getStableLayoutViewportHeight,
29
+ getWebKeyboardHeight: () => getWebKeyboardHeight,
30
+ isEditableElement: () => isEditableElement
31
+ });
32
+ module.exports = __toCommonJS(webViewport_exports);
33
+ var MIN_KEYBOARD_HEIGHT = 80;
34
+ function isEditableElement(el) {
35
+ if (!el) return false;
36
+ var tag = el.tagName;
37
+ if (tag === "INPUT" || tag === "TEXTAREA" || tag === "SELECT") return true;
38
+ if (el.isContentEditable) return true;
39
+ return false;
40
+ }
41
+ function getStableLayoutViewportHeight() {
42
+ var _document_documentElement, _window_visualViewport;
43
+ if (typeof window === "undefined") return 0;
44
+ var ch = typeof document !== "undefined" ? (_document_documentElement = document.documentElement) === null || _document_documentElement === void 0 ? void 0 : _document_documentElement.clientHeight : 0;
45
+ if (ch && ch > 0) return ch;
46
+ return Math.max(window.innerHeight || 0, ((_window_visualViewport = window.visualViewport) === null || _window_visualViewport === void 0 ? void 0 : _window_visualViewport.height) || 0);
47
+ }
48
+ function getWebKeyboardHeight() {
49
+ if (typeof window === "undefined") return 0;
50
+ var vv = window.visualViewport;
51
+ if (!vv) return 0;
52
+ return Math.max(0, Math.round(getStableLayoutViewportHeight() - vv.height));
53
+ }
54
+ //# sourceMappingURL=webViewport.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","webViewport_exports","__export","MIN_KEYBOARD_HEIGHT","getStableLayoutViewportHeight","getWebKeyboardHeight","isEditableElement","module","exports","el","tag","tagName","isContentEditable","_document_documentElement","_window_visualViewport","window","ch","document","documentElement","clientHeight","Math","max","innerHeight","visualViewport","height","vv"],"sources":["../../src/webViewport.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,mBAAA;AAAAC,QAAA,CAAAD,mBAAA;EAAAE,mBAAA,EAAAA,CAAA,KAAAA,mBAAA;EAAAC,6BAAA,EAAAA,CAAA,KAAAA,6BAAA;EAAAC,oBAAA,EAAAA,CAAA,KAAAA,oBAAA;EAAAC,iBAAA,EAAAA,CAAA,KAAAA;AAAA;AAmBOC,MAAM,CAAAC,OAAA,GAAAZ,YAAsB,CAAAK,mBAAA;AAE5B,IAAAE,mBAAS,KAAkB;AAChC,SAAKG,iBAAWA,CAAAG,EAAA;EAChB,KAAAA,EAAM,SAAS;EACf,IAAIC,GAAA,GAAAD,EAAQ,CAAAE,OAAA;EACZ,IAAKD,GAAmB,gBAAAA,GAAmB,eAAO,IAAAA,GAAA;EAClD,IAAAD,EAAA,CAAOG,iBAAA;EACT;AAOO;AACL,SAAIR,6BAA+BA,CAAA;EACnC,IAAAS,yBAAkB,EAAaC,sBAAc;EAC7C,IAAI,OAAMC,MAAQ,gBAAO;EAEzB,IAAAC,EAAA,GAAO,OAASC,QAAO,gBAAe,GAAG,CAAAJ,yBAAuB,GAAAI,QAAW,CAAAC,eAAA,cAAAL,yBAAA,uBAAAA,yBAAA,CAAAM,YAAA;EAC7E,IAAAH,EAAA,IAAAA,EAAA,aAAAA,EAAA;EAMO,OAASI,IAAA,CAAAC,GAAA,CAAAN,MAAA,CAAAO,WAA+B,SAAAR,sBAAA,GAAAC,MAAA,CAAAQ,cAAA,cAAAT,sBAAA,uBAAAA,sBAAA,CAAAU,MAAA;AAC7C;AACA,SAAMnB,oBAAYA,CAAA;EAClB,IAAI,OAAKU,MAAO;EAChB,IAAAU,EAAA,GAAOV,MAAK,CAAIQ,cAAc;EAChC,KAAAE,EAAA","ignoreList":[]}