@tamagui/sheet 2.0.0-rc.3 → 2.0.0-rc.30

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 (206) hide show
  1. package/.turbo/turbo-build.log +2 -0
  2. package/controller/index.cjs +2 -0
  3. package/controller/index.js +2 -0
  4. package/controller/index.native.cjs +2 -0
  5. package/controller/index.native.js +2 -0
  6. package/dist/cjs/SheetImplementationCustom.cjs +32 -33
  7. package/dist/cjs/SheetImplementationCustom.native.js +28 -24
  8. package/dist/cjs/SheetImplementationCustom.native.js.map +1 -1
  9. package/dist/cjs/index.js +21 -18
  10. package/dist/cjs/useGestureHandlerPan.cjs +1 -1
  11. package/dist/cjs/useGestureHandlerPan.native.js +1 -1
  12. package/dist/cjs/useGestureHandlerPan.native.js.map +1 -1
  13. package/dist/esm/SheetImplementationCustom.mjs +33 -34
  14. package/dist/esm/SheetImplementationCustom.mjs.map +1 -1
  15. package/dist/esm/SheetImplementationCustom.native.js +29 -25
  16. package/dist/esm/SheetImplementationCustom.native.js.map +1 -1
  17. package/dist/esm/index.js +11 -11
  18. package/dist/esm/index.js.map +1 -6
  19. package/dist/esm/useGestureHandlerPan.mjs +1 -1
  20. package/dist/esm/useGestureHandlerPan.mjs.map +1 -1
  21. package/dist/esm/useGestureHandlerPan.native.js +1 -1
  22. package/dist/esm/useGestureHandlerPan.native.js.map +1 -1
  23. package/dist/jsx/SheetImplementationCustom.mjs +33 -34
  24. package/dist/jsx/SheetImplementationCustom.mjs.map +1 -1
  25. package/dist/jsx/SheetImplementationCustom.native.js +28 -24
  26. package/dist/jsx/SheetImplementationCustom.native.js.map +1 -1
  27. package/dist/jsx/index.js +11 -11
  28. package/dist/jsx/index.js.map +1 -6
  29. package/dist/jsx/useGestureHandlerPan.mjs +1 -1
  30. package/dist/jsx/useGestureHandlerPan.mjs.map +1 -1
  31. package/dist/jsx/useGestureHandlerPan.native.js +1 -1
  32. package/dist/jsx/useGestureHandlerPan.native.js.map +1 -1
  33. package/next.md +78 -0
  34. package/package.json +31 -46
  35. package/setup-gesture-handler/index.cjs +2 -0
  36. package/setup-gesture-handler/index.js +2 -0
  37. package/setup-gesture-handler/index.native.cjs +2 -0
  38. package/setup-gesture-handler/index.native.js +2 -0
  39. package/setup-gesture-handler.cjs +1 -0
  40. package/src/SheetImplementationCustom.tsx +69 -38
  41. package/src/types.tsx +5 -0
  42. package/src/useGestureHandlerPan.tsx +5 -3
  43. package/tsconfig.json +56 -0
  44. package/types/Sheet.d.ts +3 -0
  45. package/types/Sheet.d.ts.map +1 -1
  46. package/types/SheetImplementationCustom.d.ts +3 -0
  47. package/types/SheetImplementationCustom.d.ts.map +1 -1
  48. package/types/createSheet.d.ts +3 -0
  49. package/types/createSheet.d.ts.map +1 -1
  50. package/types/types.d.ts +6 -0
  51. package/types/types.d.ts.map +1 -1
  52. package/types/useGestureHandlerPan.d.ts.map +1 -1
  53. package/dist/cjs/GestureDetectorWrapper.js +0 -29
  54. package/dist/cjs/GestureDetectorWrapper.js.map +0 -6
  55. package/dist/cjs/GestureSheetContext.js +0 -43
  56. package/dist/cjs/GestureSheetContext.js.map +0 -6
  57. package/dist/cjs/Sheet.js +0 -104
  58. package/dist/cjs/Sheet.js.map +0 -6
  59. package/dist/cjs/SheetContext.js +0 -28
  60. package/dist/cjs/SheetContext.js.map +0 -6
  61. package/dist/cjs/SheetController.js +0 -52
  62. package/dist/cjs/SheetController.js.map +0 -6
  63. package/dist/cjs/SheetImplementationCustom.js +0 -393
  64. package/dist/cjs/SheetImplementationCustom.js.map +0 -6
  65. package/dist/cjs/SheetScrollView.js +0 -137
  66. package/dist/cjs/SheetScrollView.js.map +0 -6
  67. package/dist/cjs/constants.js +0 -24
  68. package/dist/cjs/constants.js.map +0 -6
  69. package/dist/cjs/contexts.js +0 -33
  70. package/dist/cjs/contexts.js.map +0 -6
  71. package/dist/cjs/controller.js +0 -23
  72. package/dist/cjs/controller.js.map +0 -6
  73. package/dist/cjs/createSheet.js +0 -152
  74. package/dist/cjs/createSheet.js.map +0 -6
  75. package/dist/cjs/gestureState.js +0 -34
  76. package/dist/cjs/gestureState.js.map +0 -6
  77. package/dist/cjs/helpers.js +0 -26
  78. package/dist/cjs/helpers.js.map +0 -6
  79. package/dist/cjs/nativeSheet.js +0 -56
  80. package/dist/cjs/nativeSheet.js.map +0 -6
  81. package/dist/cjs/setupGestureHandler.js +0 -38
  82. package/dist/cjs/setupGestureHandler.js.map +0 -6
  83. package/dist/cjs/types.js +0 -14
  84. package/dist/cjs/types.js.map +0 -6
  85. package/dist/cjs/useGestureHandlerPan.js +0 -126
  86. package/dist/cjs/useGestureHandlerPan.js.map +0 -6
  87. package/dist/cjs/useKeyboardControllerSheet.js +0 -34
  88. package/dist/cjs/useKeyboardControllerSheet.js.map +0 -6
  89. package/dist/cjs/useSheet.js +0 -22
  90. package/dist/cjs/useSheet.js.map +0 -6
  91. package/dist/cjs/useSheetController.js +0 -39
  92. package/dist/cjs/useSheetController.js.map +0 -6
  93. package/dist/cjs/useSheetOffscreenSize.js +0 -43
  94. package/dist/cjs/useSheetOffscreenSize.js.map +0 -6
  95. package/dist/cjs/useSheetOpenState.js +0 -37
  96. package/dist/cjs/useSheetOpenState.js.map +0 -6
  97. package/dist/cjs/useSheetProviderProps.js +0 -130
  98. package/dist/cjs/useSheetProviderProps.js.map +0 -6
  99. package/dist/cjs/useSheetScrollViewGestures.js +0 -102
  100. package/dist/cjs/useSheetScrollViewGestures.js.map +0 -6
  101. package/dist/esm/GestureDetectorWrapper.js +0 -15
  102. package/dist/esm/GestureDetectorWrapper.js.map +0 -6
  103. package/dist/esm/GestureSheetContext.js +0 -28
  104. package/dist/esm/GestureSheetContext.js.map +0 -6
  105. package/dist/esm/Sheet.js +0 -92
  106. package/dist/esm/Sheet.js.map +0 -6
  107. package/dist/esm/SheetContext.js +0 -13
  108. package/dist/esm/SheetContext.js.map +0 -6
  109. package/dist/esm/SheetController.js +0 -31
  110. package/dist/esm/SheetController.js.map +0 -6
  111. package/dist/esm/SheetImplementationCustom.js +0 -395
  112. package/dist/esm/SheetImplementationCustom.js.map +0 -6
  113. package/dist/esm/SheetScrollView.js +0 -122
  114. package/dist/esm/SheetScrollView.js.map +0 -6
  115. package/dist/esm/constants.js +0 -8
  116. package/dist/esm/constants.js.map +0 -6
  117. package/dist/esm/contexts.js +0 -9
  118. package/dist/esm/contexts.js.map +0 -6
  119. package/dist/esm/controller.js +0 -11
  120. package/dist/esm/controller.js.map +0 -6
  121. package/dist/esm/createSheet.js +0 -153
  122. package/dist/esm/createSheet.js.map +0 -6
  123. package/dist/esm/gestureState.js +0 -18
  124. package/dist/esm/gestureState.js.map +0 -6
  125. package/dist/esm/helpers.js +0 -10
  126. package/dist/esm/helpers.js.map +0 -6
  127. package/dist/esm/nativeSheet.js +0 -46
  128. package/dist/esm/nativeSheet.js.map +0 -6
  129. package/dist/esm/setupGestureHandler.js +0 -22
  130. package/dist/esm/setupGestureHandler.js.map +0 -6
  131. package/dist/esm/types.js +0 -1
  132. package/dist/esm/types.js.map +0 -6
  133. package/dist/esm/useGestureHandlerPan.js +0 -111
  134. package/dist/esm/useGestureHandlerPan.js.map +0 -6
  135. package/dist/esm/useKeyboardControllerSheet.js +0 -18
  136. package/dist/esm/useKeyboardControllerSheet.js.map +0 -6
  137. package/dist/esm/useSheet.js +0 -6
  138. package/dist/esm/useSheet.js.map +0 -6
  139. package/dist/esm/useSheetController.js +0 -15
  140. package/dist/esm/useSheetController.js.map +0 -6
  141. package/dist/esm/useSheetOffscreenSize.js +0 -27
  142. package/dist/esm/useSheetOffscreenSize.js.map +0 -6
  143. package/dist/esm/useSheetOpenState.js +0 -22
  144. package/dist/esm/useSheetOpenState.js.map +0 -6
  145. package/dist/esm/useSheetProviderProps.js +0 -109
  146. package/dist/esm/useSheetProviderProps.js.map +0 -6
  147. package/dist/esm/useSheetScrollViewGestures.js +0 -86
  148. package/dist/esm/useSheetScrollViewGestures.js.map +0 -6
  149. package/dist/jsx/GestureDetectorWrapper.js +0 -15
  150. package/dist/jsx/GestureDetectorWrapper.js.map +0 -6
  151. package/dist/jsx/GestureSheetContext.js +0 -28
  152. package/dist/jsx/GestureSheetContext.js.map +0 -6
  153. package/dist/jsx/Sheet.js +0 -92
  154. package/dist/jsx/Sheet.js.map +0 -6
  155. package/dist/jsx/SheetContext.js +0 -13
  156. package/dist/jsx/SheetContext.js.map +0 -6
  157. package/dist/jsx/SheetController.js +0 -31
  158. package/dist/jsx/SheetController.js.map +0 -6
  159. package/dist/jsx/SheetImplementationCustom.js +0 -395
  160. package/dist/jsx/SheetImplementationCustom.js.map +0 -6
  161. package/dist/jsx/SheetScrollView.js +0 -122
  162. package/dist/jsx/SheetScrollView.js.map +0 -6
  163. package/dist/jsx/constants.js +0 -8
  164. package/dist/jsx/constants.js.map +0 -6
  165. package/dist/jsx/contexts.js +0 -9
  166. package/dist/jsx/contexts.js.map +0 -6
  167. package/dist/jsx/controller.js +0 -11
  168. package/dist/jsx/controller.js.map +0 -6
  169. package/dist/jsx/createSheet.js +0 -153
  170. package/dist/jsx/createSheet.js.map +0 -6
  171. package/dist/jsx/gestureState.js +0 -18
  172. package/dist/jsx/gestureState.js.map +0 -6
  173. package/dist/jsx/helpers.js +0 -10
  174. package/dist/jsx/helpers.js.map +0 -6
  175. package/dist/jsx/nativeSheet.js +0 -46
  176. package/dist/jsx/nativeSheet.js.map +0 -6
  177. package/dist/jsx/setupGestureHandler.js +0 -22
  178. package/dist/jsx/setupGestureHandler.js.map +0 -6
  179. package/dist/jsx/types.js +0 -1
  180. package/dist/jsx/types.js.map +0 -6
  181. package/dist/jsx/useGestureHandlerPan.js +0 -111
  182. package/dist/jsx/useGestureHandlerPan.js.map +0 -6
  183. package/dist/jsx/useKeyboardControllerSheet.js +0 -18
  184. package/dist/jsx/useKeyboardControllerSheet.js.map +0 -6
  185. package/dist/jsx/useSheet.js +0 -6
  186. package/dist/jsx/useSheet.js.map +0 -6
  187. package/dist/jsx/useSheetController.js +0 -15
  188. package/dist/jsx/useSheetController.js.map +0 -6
  189. package/dist/jsx/useSheetOffscreenSize.js +0 -27
  190. package/dist/jsx/useSheetOffscreenSize.js.map +0 -6
  191. package/dist/jsx/useSheetOpenState.js +0 -22
  192. package/dist/jsx/useSheetOpenState.js.map +0 -6
  193. package/dist/jsx/useSheetProviderProps.js +0 -109
  194. package/dist/jsx/useSheetProviderProps.js.map +0 -6
  195. package/dist/jsx/useSheetScrollViewGestures.js +0 -86
  196. package/dist/jsx/useSheetScrollViewGestures.js.map +0 -6
  197. package/types/GestureDetectorWrapper.native.d.ts +0 -14
  198. package/types/GestureDetectorWrapper.native.d.ts.map +0 -1
  199. package/types/gestureState.native.d.ts +0 -12
  200. package/types/gestureState.native.d.ts.map +0 -1
  201. package/types/setupGestureHandler.native.d.ts +0 -41
  202. package/types/setupGestureHandler.native.d.ts.map +0 -1
  203. package/types/useGestureHandlerPan.native.d.ts +0 -33
  204. package/types/useGestureHandlerPan.native.d.ts.map +0 -1
  205. package/types/useSheetScrollViewGestures.web.d.ts +0 -15
  206. package/types/useSheetScrollViewGestures.web.d.ts.map +0 -1
@@ -0,0 +1,2 @@
1
+ $ tamagui-build
2
+ built @tamagui/sheet in 10054 ms
@@ -0,0 +1,2 @@
1
+ // compat with tamagui static compiler
2
+ Object.assign(module.exports, require('../dist/cjs/controller.native.js'))
@@ -0,0 +1,2 @@
1
+ // compat with metro without package exports
2
+ Object.assign(module.exports, require('../dist/cjs/controller.native.js'))
@@ -0,0 +1,2 @@
1
+ // compat with tamagui static compiler
2
+ Object.assign(module.exports, require('../dist/cjs/controller.native.js'))
@@ -0,0 +1,2 @@
1
+ // compat with metro without package exports
2
+ Object.assign(module.exports, require('../dist/cjs/controller.native.js'))
@@ -70,7 +70,8 @@ const relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
70
70
  moveOnKeyboardChange = !1,
71
71
  unmountChildrenWhenHidden = !1,
72
72
  portalProps,
73
- containerComponent: ContainerComponent = import_react.default.Fragment
73
+ containerComponent: ContainerComponent = import_react.default.Fragment,
74
+ onAnimationComplete
74
75
  } = props,
75
76
  state = (0, import_useSheetOpenState.useSheetOpenState)(props),
76
77
  [overlayComponent, setOverlayComponent] = import_react.default.useState(null),
@@ -95,7 +96,9 @@ const relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
95
96
  controller,
96
97
  isHidden
97
98
  } = state,
98
- sheetRef = import_react.default.useRef(void 0),
99
+ openRef = import_react.default.useRef(open);
100
+ openRef.current = open;
101
+ const sheetRef = import_react.default.useRef(void 0),
99
102
  ref = (0, import_compose_refs.useComposedRefs)(forwardedRef, sheetRef, providerProps.contentRef),
100
103
  {
101
104
  animationDriver
@@ -166,7 +169,8 @@ const relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
166
169
  [disableAnimation, setDisableAnimation] = (0, import_react.useState)(hasntMeasured),
167
170
  skipAdaptAnimation = import_react.default.useRef(!1);
168
171
  controller?.skipNextAnimation && (skipAdaptAnimation.current = !0);
169
- const hasScrollView = import_react.default.useRef(!1);
172
+ const hasScrollView = import_react.default.useRef(!1),
173
+ opacityFallbackTimer = import_react.default.useRef(null);
170
174
  useAnimatedNumberReaction({
171
175
  value: animatedNumber,
172
176
  hostRef: sheetRef
@@ -175,7 +179,7 @@ const relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
175
179
  const minY = activePositions[0],
176
180
  wasAtTop = scrollBridge.isAtTop,
177
181
  nowAtTop = value <= minY + 5;
178
- wasAtTop !== nowAtTop && (scrollBridge.isAtTop = nowAtTop, nowAtTop ? (scrollBridge.scrollLockY = void 0, scrollBridge.setScrollEnabled?.(!0)) : (scrollBridge.scrollLockY = 0, scrollBridge.setScrollEnabled?.(!1)));
182
+ wasAtTop !== nowAtTop && (scrollBridge.isAtTop = nowAtTop, nowAtTop ? (scrollBridge.y > 0 && (scrollBridge.forceScrollTo?.(0), scrollBridge.y = 0), scrollBridge.scrollLockY = void 0, scrollBridge.setScrollEnabled?.(!0)) : (scrollBridge.scrollLockY = 0, scrollBridge.setScrollEnabled?.(!1)));
179
183
  }, [animationDriver, activePositions]));
180
184
  function stopSpring() {
181
185
  animatedNumber.stop(), scrollBridge.onFinishAnimate && (scrollBridge.onFinishAnimate(), scrollBridge.onFinishAnimate = void 0);
@@ -183,19 +187,28 @@ const relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
183
187
  const animateTo = (0, import_core.useEvent)((position2, animationOverride) => {
184
188
  if (frameSize === 0) return;
185
189
  let toValue = isHidden || position2 === -1 ? screenSize : activePositions[position2];
186
- if (at.current !== toValue) {
187
- if (at.current = toValue, stopSpring(), skipAdaptAnimation.current) {
188
- skipAdaptAnimation.current = !1, animatedNumber.setValue(toValue, {
189
- type: "timing",
190
- duration: 0
191
- });
192
- return;
193
- }
194
- animatedNumber.setValue(toValue, animationOverride || {
195
- type: "spring",
196
- ...transitionConfig
190
+ if (at.current === toValue) return;
191
+ at.current = toValue, stopSpring();
192
+ const isOpenAnimation = position2 !== -1 && !isHidden;
193
+ opacityFallbackTimer.current && (clearTimeout(opacityFallbackTimer.current), opacityFallbackTimer.current = null);
194
+ const animationCompleteCallback = () => {
195
+ opacityFallbackTimer.current && (clearTimeout(opacityFallbackTimer.current), opacityFallbackTimer.current = null), !isOpenAnimation && !open && setOpacity(0), onAnimationComplete?.({
196
+ open: isOpenAnimation
197
197
  });
198
+ };
199
+ if (isOpenAnimation || (opacityFallbackTimer.current = setTimeout(() => {
200
+ opacityFallbackTimer.current = null, openRef.current || setOpacity(0);
201
+ }, 1e3)), skipAdaptAnimation.current) {
202
+ skipAdaptAnimation.current = !1, animatedNumber.setValue(toValue, {
203
+ type: "timing",
204
+ duration: 0
205
+ }, animationCompleteCallback);
206
+ return;
198
207
  }
208
+ animatedNumber.setValue(toValue, animationOverride || {
209
+ type: "spring",
210
+ ...transitionConfig
211
+ }, animationCompleteCallback);
199
212
  });
200
213
  (0, import_constants.useIsomorphicLayoutEffect)(() => {
201
214
  if (hasntMeasured && screenSize && frameSize) {
@@ -333,12 +346,12 @@ const relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
333
346
  },
334
347
  pauseKeyboardHandler
335
348
  }),
336
- handleAnimationViewLayout = import_react.default.useCallback(e => {
349
+ handleAnimationViewLayout = (0, import_core.useEvent)(e => {
337
350
  if (!open && stableFrameSize.current !== 0) return;
338
351
  const layoutHeight = e.nativeEvent?.layout.height,
339
352
  next = modal ? Math.min(layoutHeight, import_react_native.Dimensions.get(relativeDimensionTo).height) : layoutHeight;
340
353
  next && setFrameSize(next);
341
- }, [open, modal]),
354
+ }),
342
355
  handleMaxContentViewLayout = import_react.default.useCallback(e => {
343
356
  const next = Math.min(e.nativeEvent?.layout.height, import_react_native.Dimensions.get(relativeDimensionTo).height);
344
357
  next && setMaxContentSize(next);
@@ -353,16 +366,7 @@ const relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
353
366
  };
354
367
  }),
355
368
  [opacity, setOpacity] = import_react.default.useState(open ? 1 : 0);
356
- open && opacity === 0 && setOpacity(1), import_react.default.useEffect(() => {
357
- if (!open) {
358
- const tm = setTimeout(() => {
359
- setOpacity(0);
360
- }, 400);
361
- return () => {
362
- clearTimeout(tm);
363
- };
364
- }
365
- }, [open]);
369
+ open && opacity === 0 && (setOpacity(1), opacityFallbackTimer.current && (clearTimeout(opacityFallbackTimer.current), opacityFallbackTimer.current = null));
366
370
  const forcedContentHeight = hasFit ? void 0 : snapPointsMode === "percent" ?
367
371
  // Use dvh for modal (viewport-relative), % for inline (container-relative)
368
372
  `${maxSnapPoint}${import_constants.isWeb && modal ? "dvh" : "%"}` : maxSnapPoint,
@@ -440,12 +444,7 @@ const relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
440
444
  stackZIndex: zIndex,
441
445
  ...portalProps,
442
446
  children: shouldMountChildren && /* @__PURE__ */(0, import_jsx_runtime.jsx)(ContainerComponent, {
443
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_core.Theme, {
444
- contain: !0,
445
- forceClassName: !0,
446
- name: themeName,
447
- children: contents
448
- })
447
+ children: contents
449
448
  })
450
449
  });
451
450
  return import_constants.isWeb ? modalContents : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_contexts.SheetInsideSheetContext.Provider, {
@@ -71,7 +71,8 @@ var relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
71
71
  moveOnKeyboardChange = !1,
72
72
  unmountChildrenWhenHidden = !1,
73
73
  portalProps,
74
- containerComponent: ContainerComponent = import_react.default.Fragment
74
+ containerComponent: ContainerComponent = import_react.default.Fragment,
75
+ onAnimationComplete
75
76
  } = props,
76
77
  state = (0, import_useSheetOpenState.useSheetOpenState)(props),
77
78
  [overlayComponent, setOverlayComponent] = import_react.default.useState(null),
@@ -96,7 +97,9 @@ var relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
96
97
  controller,
97
98
  isHidden
98
99
  } = state,
99
- sheetRef = import_react.default.useRef(void 0),
100
+ openRef = import_react.default.useRef(open);
101
+ openRef.current = open;
102
+ var sheetRef = import_react.default.useRef(void 0),
100
103
  ref = (0, import_compose_refs.useComposedRefs)(forwardedRef, sheetRef, providerProps.contentRef),
101
104
  {
102
105
  animationDriver
@@ -178,7 +181,8 @@ var relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
178
181
  [disableAnimation, setDisableAnimation] = (0, import_react.useState)(hasntMeasured),
179
182
  skipAdaptAnimation = import_react.default.useRef(!1);
180
183
  controller?.skipNextAnimation && (skipAdaptAnimation.current = !0);
181
- var hasScrollView = import_react.default.useRef(!1);
184
+ var hasScrollView = import_react.default.useRef(!1),
185
+ opacityFallbackTimer = import_react.default.useRef(null);
182
186
  useAnimatedNumberReaction({
183
187
  value: animatedNumber,
184
188
  hostRef: sheetRef
@@ -189,6 +193,10 @@ var relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
189
193
  nowAtTop = value <= minY + 5;
190
194
  if (wasAtTop !== nowAtTop) if (scrollBridge.isAtTop = nowAtTop, nowAtTop) {
191
195
  var _scrollBridge_setScrollEnabled;
196
+ if (scrollBridge.y > 0) {
197
+ var _scrollBridge_forceScrollTo;
198
+ (_scrollBridge_forceScrollTo = scrollBridge.forceScrollTo) === null || _scrollBridge_forceScrollTo === void 0 || _scrollBridge_forceScrollTo.call(scrollBridge, 0), scrollBridge.y = 0;
199
+ }
192
200
  scrollBridge.scrollLockY = void 0, (_scrollBridge_setScrollEnabled = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled === void 0 || _scrollBridge_setScrollEnabled.call(scrollBridge, !0);
193
201
  } else {
194
202
  var _scrollBridge_setScrollEnabled1;
@@ -202,17 +210,27 @@ var relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
202
210
  if (frameSize !== 0) {
203
211
  var toValue = isHidden || position2 === -1 ? screenSize : activePositions[position2];
204
212
  if (at.current !== toValue) {
205
- if (at.current = toValue, stopSpring(), skipAdaptAnimation.current) {
213
+ at.current = toValue, stopSpring();
214
+ var isOpenAnimation = position2 !== -1 && !isHidden;
215
+ opacityFallbackTimer.current && (clearTimeout(opacityFallbackTimer.current), opacityFallbackTimer.current = null);
216
+ var animationCompleteCallback = function () {
217
+ opacityFallbackTimer.current && (clearTimeout(opacityFallbackTimer.current), opacityFallbackTimer.current = null), !isOpenAnimation && !open && setOpacity(0), onAnimationComplete?.({
218
+ open: isOpenAnimation
219
+ });
220
+ };
221
+ if (isOpenAnimation || (opacityFallbackTimer.current = setTimeout(function () {
222
+ opacityFallbackTimer.current = null, openRef.current || setOpacity(0);
223
+ }, 1e3)), skipAdaptAnimation.current) {
206
224
  skipAdaptAnimation.current = !1, animatedNumber.setValue(toValue, {
207
225
  type: "timing",
208
226
  duration: 0
209
- });
227
+ }, animationCompleteCallback);
210
228
  return;
211
229
  }
212
230
  animatedNumber.setValue(toValue, animationOverride || {
213
231
  type: "spring",
214
232
  ...transitionConfig
215
- });
233
+ }, animationCompleteCallback);
216
234
  }
217
235
  }
218
236
  });
@@ -363,14 +381,14 @@ var relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
363
381
  },
364
382
  pauseKeyboardHandler
365
383
  }),
366
- handleAnimationViewLayout = import_react.default.useCallback(function (e) {
384
+ handleAnimationViewLayout = (0, import_core.useEvent)(function (e) {
367
385
  var _e_nativeEvent;
368
386
  if (!(!open && stableFrameSize.current !== 0)) {
369
387
  var layoutHeight = (_e_nativeEvent = e.nativeEvent) === null || _e_nativeEvent === void 0 ? void 0 : _e_nativeEvent.layout.height,
370
388
  next = modal ? Math.min(layoutHeight, import_react_native.Dimensions.get(relativeDimensionTo).height) : layoutHeight;
371
389
  next && setFrameSize(next);
372
390
  }
373
- }, [open, modal]),
391
+ }),
374
392
  handleMaxContentViewLayout = import_react.default.useCallback(function (e) {
375
393
  var _e_nativeEvent,
376
394
  next = Math.min((_e_nativeEvent = e.nativeEvent) === null || _e_nativeEvent === void 0 ? void 0 : _e_nativeEvent.layout.height, import_react_native.Dimensions.get(relativeDimensionTo).height);
@@ -387,16 +405,7 @@ var relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
387
405
  };
388
406
  }),
389
407
  [opacity, setOpacity] = import_react.default.useState(open ? 1 : 0);
390
- open && opacity === 0 && setOpacity(1), import_react.default.useEffect(function () {
391
- if (!open) {
392
- var tm = setTimeout(function () {
393
- setOpacity(0);
394
- }, 400);
395
- return function () {
396
- clearTimeout(tm);
397
- };
398
- }
399
- }, [open]);
408
+ open && opacity === 0 && (setOpacity(1), opacityFallbackTimer.current && (clearTimeout(opacityFallbackTimer.current), opacityFallbackTimer.current = null));
400
409
  var forcedContentHeight = hasFit ? void 0 : snapPointsMode === "percent" ?
401
410
  // Use dvh for modal (viewport-relative), % for inline (container-relative)
402
411
  `${maxSnapPoint}${import_constants.isWeb && modal ? "dvh" : "%"}` : maxSnapPoint,
@@ -486,12 +495,7 @@ var relativeDimensionTo = import_constants.isWeb ? "window" : "screen",
486
495
  stackZIndex: zIndex,
487
496
  ...portalProps,
488
497
  children: shouldMountChildren && /* @__PURE__ */(0, import_jsx_runtime.jsx)(ContainerComponent, {
489
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_core.Theme, {
490
- contain: !0,
491
- forceClassName: !0,
492
- name: themeName,
493
- children: contents
494
- })
498
+ children: contents
495
499
  })
496
500
  });
497
501
  return import_constants.isWeb ? modalContents : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_contexts.SheetInsideSheetContext.Provider, {
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","SheetImplementationCustom_exports","__export","SheetImplementationCustom","module","exports","import_jsx_runtime","require","import_adapt","import_animate_presence","import_compose_refs","import_constants","import_core","import_native","import_portal","import_react","__toESM","import_react_native","import_contexts","import_GestureDetectorWrapper","import_GestureSheetContext","import_helpers","import_SheetContext","import_useGestureHandlerPan","import_useKeyboardControllerSheet","import_useSheetOpenState","import_useSheetProviderProps","hiddenSize","_cachedSafeAreaTop","getSafeAreaTopInset","getSafeArea","getInsets","top","relativeDimensionTo","isWeb","default","forwardRef","props","forwardedRef","parentSheet","useContext","ParentSheetContext","transition","transitionConfig","transitionConfigProp","modal","zIndex","moveOnKeyboardChange","unmountChildrenWhenHidden","portalProps","containerComponent","ContainerComponent","Fragment","state","useSheetOpenState","overlayComponent","setOverlayComponent","useState","providerProps","useSheetProviderProps","onOverlayComponent","frameSize","setFrameSize","snapPoints","snapPointsMode","hasFit","position","setPosition","scrollBridge","screenSize","setMaxContentSize","maxSnapPoint","open","controller","isHidden","sheetRef","useRef","ref","useComposedRefs","contentRef","animationDriver","useConfiguration","Error","_animationDriver_animations","animationProp","animationPropConfig","Array","isArray","animations","isShowingInnerSheet","setIsShowingInnerSheet","shouldHideParentSheet","needsPortalRepropagation","sheetInsideSheet","SheetInsideSheetContext","onInnerSheet","useCallback","hasChild","stableFrameSize","useEffect","current","effectiveFrameSize","positions","useMemo","map","point","getYPositions","keyboardHeight","isKeyboardVisible","dismissKeyboard","pauseKeyboardHandler","flushPendingHide","useKeyboardControllerSheet","enabled","isDragging","setIsDragging_","isDraggingRef","setIsDragging","val","activePositionsRef","activePositions","result","safeAreaTop","p","Math","max","useAnimatedNumber","useAnimatedNumberStyle","useAnimatedNumberReaction","_animationDriver_View","AnimatedView","View","useIsomorphicLayoutEffect","nextParentContext","isMounted","useDidFinishSSR","startPosition","animatedNumber","at","hasntMeasured","disableAnimation","setDisableAnimation","skipAdaptAnimation","skipNextAnimation","hasScrollView","hostRef","paneY","minY","wasAtTop","isAtTop","nowAtTop","_scrollBridge_setScrollEnabled","scrollLockY","setScrollEnabled","call","_scrollBridge_setScrollEnabled1","stopSpring","stop","onFinishAnimate","animateTo","useEvent","position2","animationOverride","toValue","setValue","type","duration","setTimeout","scrollLock","scrollStartY","isTopPosition","_props_disableDrag","disableDrag","themeName","useThemeName","blockPan","setBlockPan","panResponder","paneMinY","startY","setPanning","release","param","vy","setParentDragging","isExternalDrag","previouslyScrolling","currentPos","end","closestPoint","dist","Number","POSITIVE_INFINITY","i","length","curDist","finish","_e","state2","dragAt","dy","onMoveShouldSet","e","getShouldSet","target","handleRef","hasScrollableContent","isScrolled","y","isDraggingUp","isNearTop","abs","granted","grant","drag","to","resisted","snapToPosition","positionIndex","PanResponder","create","onMoveShouldSetPanResponder","onPanResponderGrant","onPanResponderMove","toFull","onPanResponderEnd","onPanResponderTerminate","onPanResponderRelease","wasDragging","panGesture","panGestureRef","gestureHandlerEnabled","useGestureHandlerPan","getCurrentPosition","setAnimatedPosition","handleAnimationViewLayout","_e_nativeEvent","layoutHeight","nativeEvent","layout","height","next","min","Dimensions","get","handleMaxContentViewLayout","animatedStyle","translateY","transform","opacity","setOpacity","tm","clearTimeout","forcedContentHeight","setHasScrollView","contents","jsx","LayoutMeasurementController","disable","children","Provider","SheetProvider","jsxs","GestureSheetProvider","AnimatePresence","custom","style","left","right","bottom","pointerEvents","onLayout","disableClassName","width","minHeight"],"sources":["../../src/SheetImplementationCustom.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","SheetImplementationCustom_exports","__export","SheetImplementationCustom","module","exports","import_jsx_runtime","require","import_adapt","import_animate_presence","import_compose_refs","import_constants","import_core","import_native","import_portal","import_react","__toESM","import_react_native","import_contexts","import_GestureDetectorWrapper","import_GestureSheetContext","import_helpers","import_SheetContext","import_useGestureHandlerPan","import_useKeyboardControllerSheet","import_useSheetOpenState","import_useSheetProviderProps","hiddenSize","_cachedSafeAreaTop","getSafeAreaTopInset","getSafeArea","getInsets","top","relativeDimensionTo","isWeb","default","forwardRef","props","forwardedRef","parentSheet","useContext","ParentSheetContext","transition","transitionConfig","transitionConfigProp","modal","zIndex","moveOnKeyboardChange","unmountChildrenWhenHidden","portalProps","containerComponent","ContainerComponent","Fragment","onAnimationComplete","state","useSheetOpenState","overlayComponent","setOverlayComponent","useState","providerProps","useSheetProviderProps","onOverlayComponent","frameSize","setFrameSize","snapPoints","snapPointsMode","hasFit","position","setPosition","scrollBridge","screenSize","setMaxContentSize","maxSnapPoint","open","controller","isHidden","openRef","useRef","current","sheetRef","ref","useComposedRefs","contentRef","animationDriver","useConfiguration","Error","_animationDriver_animations","animationProp","animationPropConfig","Array","isArray","animations","isShowingInnerSheet","setIsShowingInnerSheet","shouldHideParentSheet","needsPortalRepropagation","sheetInsideSheet","SheetInsideSheetContext","onInnerSheet","useCallback","hasChild","stableFrameSize","useEffect","effectiveFrameSize","positions","useMemo","map","point","getYPositions","keyboardHeight","isKeyboardVisible","dismissKeyboard","pauseKeyboardHandler","flushPendingHide","useKeyboardControllerSheet","enabled","isDragging","setIsDragging_","isDraggingRef","setIsDragging","val","activePositionsRef","activePositions","result","safeAreaTop","p","Math","max","useAnimatedNumber","useAnimatedNumberStyle","useAnimatedNumberReaction","_animationDriver_View","AnimatedView","View","useIsomorphicLayoutEffect","nextParentContext","isMounted","useDidFinishSSR","startPosition","animatedNumber","at","hasntMeasured","disableAnimation","setDisableAnimation","skipAdaptAnimation","skipNextAnimation","hasScrollView","opacityFallbackTimer","hostRef","paneY","minY","wasAtTop","isAtTop","nowAtTop","_scrollBridge_setScrollEnabled","y","_scrollBridge_forceScrollTo","forceScrollTo","call","scrollLockY","setScrollEnabled","_scrollBridge_setScrollEnabled1","stopSpring","stop","onFinishAnimate","animateTo","useEvent","position2","animationOverride","toValue","isOpenAnimation","clearTimeout","animationCompleteCallback","setOpacity","setTimeout","setValue","type","duration","scrollLock","scrollStartY","isTopPosition","_props_disableDrag","disableDrag","themeName","useThemeName","blockPan","setBlockPan","panResponder","paneMinY","startY","setPanning","release","param","vy","setParentDragging","isExternalDrag","previouslyScrolling","currentPos","end","closestPoint","dist","Number","POSITIVE_INFINITY","i","length","curDist","finish","_e","state2","dragAt","dy","onMoveShouldSet","e","getShouldSet","target","handleRef","hasScrollableContent","isScrolled","isDraggingUp","isNearTop","abs","granted","grant","drag","to","resisted","snapToPosition","positionIndex","PanResponder","create","onMoveShouldSetPanResponder","onPanResponderGrant","onPanResponderMove","toFull","onPanResponderEnd","onPanResponderTerminate","onPanResponderRelease","wasDragging","panGesture","panGestureRef","gestureHandlerEnabled","useGestureHandlerPan","getCurrentPosition","setAnimatedPosition","handleAnimationViewLayout","_e_nativeEvent","layoutHeight","nativeEvent","layout","height","next","min","Dimensions","get","handleMaxContentViewLayout","animatedStyle","translateY","transform","opacity","forcedContentHeight","setHasScrollView","contents","jsx","LayoutMeasurementController","disable","children","Provider","SheetProvider","jsxs","GestureSheetProvider","AnimatePresence","custom","style","left","right","bottom","pointerEvents","onLayout","disableClassName","width","minHeight"],"sources":["../../src/SheetImplementationCustom.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAA;EAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;IAAAC,KAAA;EAAA,IAAAH,GAAA;AAAA,IAAAI,iCAAA;AAAAC,QAAA,CAAAD,iCAAA;EAAAE,yBAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAT,YAAqD,CAAAK,iCACrD;AAgCA,IAAAK,kBAAmB,GAAAC,OAAA;EAAAC,YAAA,GAAAD,OAAA;EAAAE,uBAAA,GAAAF,OAAA;EAAAG,mBAAA,GAAAH,OAAA;EAAAI,gBAAA,GAAAJ,OAAA;EAAAK,WAAA,GAAAL,OAAA;EAAAM,aAAA,GAAAN,OAAA;EAAAO,aAAA,GAAAP,OAAA;EAAAQ,YAAA,GAAAC,OAAA,CAAAT,OAAA;EAAAU,mBAAA,GAAAV,OAAA;EAAAW,eAAA,GAAAX,OAAA;EAAAY,6BAAA,GAAAZ,OAAA;EAAAa,0BAAA,GAAAb,OAAA;EAAAc,cAAA,GAAAd,OAAA;EAAAe,mBAAA,GAAAf,OAAA;EAAAgB,2BAAA,GAAAhB,OAAA;EAAAiB,iCAAA,GAAAjB,OAAA;EAAAkB,wBAAA,GAAAlB,OAAA;EAAAmB,4BAAA,GAAAnB,OAAA;EAAAoB,UAAA;EAAAC,kBAAA;AAGnB,SAAIC,oBAAA;EACJ,OAASD,kBAAA,KAA8B,WAAAA,kBAAA,OAAAf,aAAA,CAAAiB,WAAA,IAAAC,SAAA,GAAAC,GAAA,GAAAJ,kBAAA;AACrC;AAIF,IAAAK,mBAAA,GAAAtB,gBAAA,CAAAuB,KAAA;EAAA/B,yBAAA,kBAAAY,YAAA,CAAAoB,OAAA,CAAAC,UAAA,WAAAC,KAAA,EAAAC,YAAA;IAEA,IAAIC,WAAA,GAAAxB,YAAiD,CAAAoB,OAAA,CAAAK,UAAA,CAAAtB,eAAA,CAAAuB,kBAAA;MAAA;QAAAC,UAAA;QAAAC,gBAAA,EAAAC,oBAAA;QAAAC,KAAA;QAAAC,MAAA,GAAAP,WAAA,CAAAO,MAAA;QAAAC,oBAAA;QAAAC,yBAAA;QAAAC,WAAA;QAAAC,kBAAA,EAAAC,kBAAA,GAAApC,YAAA,CAAAoB,OAAA,CAAAiB,QAAA;QAAAC;MAAA,IAAAhB,KAAA;MAAAiB,KAAA,OAAA7B,wBAAA,CAAA8B,iBAAA,EAAAlB,KAAA;MAAA,CAAAmB,gBAAA,EAAAC,mBAAA,IAAA1C,YAAA,CAAAoB,OAAA,CAAAuB,QAAA;MAAAC,aAAA,OAAAjC,4BAAA,CAAAkC,qBAAA,EAAAvB,KAAA,EAAAiB,KAAA;QAGrDO,kBAAM,EAAAJ;MAGJ;MAAA;QAAAK,SAAmC;QAAOC,YAAA;QAAcC,UAAA;QAAAC,cAAA;QAAAC,MAAA;QAAAC,QAAA;QAAAC,WAAA;QAAAC,YAAA;QAAAC,UAAA;QAAAC,iBAAA;QAAAC;MAAA,IAAAb,aAAA;MAAA;QAAAc,IAAA;QAAAC,UAAA;QAAAC;MAAA,IAAArB,KAAA;MAAAsB,OAAA,GAAA7D,YAAA,CAAAoB,OAAA,CAAA0C,MAAA,CAAAJ,IAAA;IACtDG,OAAA,CAAME,OAAA,GAAAL,IAAc;IAEd,IACJM,QAAA,GAAAhE,YAAA,CAAAoB,OAAA,CAAA0C,MAAA;MAAAG,GAAA,OAAAtE,mBAAA,CAAAuE,eAAA,EAAA3C,YAAA,EAAAyC,QAAA,EAAApB,aAAA,CAAAuB,UAAA;MAAA;QAAAC;MAAA,QAAAvE,WAAA,CAAAwE,gBAAA;IAAA,IACA,CAAAD,eAAA,EAAkB,MAClB,IAAQE,KAAA;IAAA,IACR1C,gBAAS,eAAqB;QAAA,IAC9B2C,2BAAuB;QAAA,IACvB1C,oBAAA,EACA,OAAAA,oBAAA;QAAA,IACA,CAAA2C,aAAA,EAAAC,mBAAoB,IAAqB9C,UAAA,GAAA+C,KAAA,CAAAC,OAAM,CAAAhD,UAAA,IAAAA,UAAA,IAC/CA,UAAA,CACF,GAAI;QAKsD,OACxD6C,aAAA,IAAoB,GAAAD,2BAAA,GAAAH,eAAA,CAAAQ,UAAA,cAAAL,2BAAA,gBAAAA,2BAAA,CAAAC,aAAA;UACrB,GACKJ,eAAA,CAAAQ,UAAA,CAAAJ,aAAA;UACJ,GAAAC;QAAA,IACA;MAAA,GACA;MAAA,CAAAI,mBAAA,EAAAC,sBAAA,IAAA9E,YAAA,CAAAoB,OAAA,CAAAuB,QAAA;MAAAoC,qBAAA,IAAAnF,gBAAA,CAAAuB,KAAA,IAAAW,KAAA,IAAA+C,mBAAA,QAAA9E,aAAA,CAAAiF,wBAAA;MAAAC,gBAAA,GAAAjF,YAAA,CAAAoB,OAAA,CAAAK,UAAA,CAAAtB,eAAA,CAAA+E,uBAAA;MAAAC,YAAA,GAAAnF,YAAA,CAAAoB,OAAA,CAAAgE,WAAA,WAAAC,QAAA;QAAAP,sBACA,CAAAO,QAAA;MAAA,KACA;MAAAC,eAAA,GAAAtF,YAAA,CAAAoB,OAAA,CAAA0C,MAAA,CAAAf,SAAA;IAAA/C,YACA,CAAAoB,OAAA,CAAAmE,SAAA;MAAA7B,IACA,IAAAX,SAAA,KAAAuC,eAAA,CAAAvB,OAAA,GAAAhB,SAAA;IAAA,IACAW,IACA,EAAAX,SACA;IACA,IACFyC,kBACM,GAAE9B,IAAM,GAAAX,SAAY,GAAAuC,eAAa,CAAAvB,OACjC,IAAUhB,SAAA;MAAA0C,SAAA,GAAMzF,YAAW,CAAAoB,OAAA,CAAAsE,OAAA;QACjC,OAAAzC,UAAQ,CAAU0C,GAAA,WAAAC,KAAA;UAElB,OAAMC,aAAW,CAAA3C,cAAA,EAAM0C,KAAA,EAAarC,UAC9B,EAAAiC,kBAAM;QAKZ;MACE,IAGFjC,UAAM,EAEJiC,kBAAI,EACFvC,UAAA,EAGFC,cAAO,CAOP;MAAA;QAAA4C,cAAI;QAAAC,iBAAiB;QAAAC,eAAgB;QAAaC,oBACzC;QAAAC;MAAA,QAAAzF,iCAAA,CAAA0F,0BAAA;QAAAC,OACF,GAAAxG,gBAAgB,CAAAuB,KAAA,IAAW,EAAAa;MAAuB;MAAA,CAAAqE,UAClD,EAAAC,cAAA,IAAAtG,YAAA,CAAAoB,OAAA,CAAAuB,QAAA;MAAA4D,aAAA,GAAAvG,YAAA,CAAAoB,OAAA,CAAA0C,MAAA;MAAA0C,aAAA,GAAAxG,YAAA,CAAAoB,OAAA,CAAAgE,WAAA,WAAAqB,GAAA;QAAAF,aAIA,CAAAxC,OAAA,GAAA0C,GAAA,EAAAR,oBAAA,CAAAlC,OAAA,GAAA0C,GAAA,EAAAH,cAAA,CAAAG,GAAA,GAAAA,GAAA,IAAAP,gBAAA;MAAA,GACT,CAYED,oBAAA,EACFC,gBAGM,CAEN;MAAAQ,kBAAA,GAAM1G,YAAU,CAAAoB,OAAM,CAAA0C,MAAA,CAAA2B,SAAA;MAAAkB,eAAA,GAAA3G,YAAA,CAAAoB,OAAA,CAAAsE,OAAA;QAEpB,IAAIW,UAAQ,IAAAE,aACV,CAAAxC,OAAA,EAAgB,OAAA2C,kBAAU,CAAA3C,OAAA;QAE9B,IAAI6C,MAAM;QAIV,KAAAb,iBAAM,IAAAD,cAA4B,OAGhCc,MACE,GAAAnB,SAAW,MAAK;UAEhB,IAAAoB,WAAA,GAAAjH,gBAAA,CAAAuB,KAAA,OAAAL,mBAAA;UACF8F,MAAC,GAAAnB,SAAY,CAAAE,GAAA,WAAAmB,CAAoB;YAM7B,OAAAvD,UAAA,IAAAuD,CAAA,IAAAvD,UAAA,GAAAuD,CAAA,GAAAC,IAAA,CAAAC,GAAA,CAAAH,WAAA,EAAAC,CAAA,GAAAhB,cAAA;UACJ;QAAA;QACA,OACAY,kBAAA,CAAA3C,OAAA,GAAA6C,MAAA,EAAAA,MAAA;MAAA,IACAnB,SACA,EACFM,iBAAI,EAA2BD,cACnB,EACZvC,UAEO,EAOqB8C,UACzB,CACC;MAAA;QAAAY,iBAAc;QAAAC,sBACd;QAAAC;MACA,IAAA/C,eAGK;MAAAgD,qBACc;MAAAC,YAAA,IAAAD,qBAAA,GAAAhD,eAAA,CAAAkD,IAAA,cAAAF,qBAAA,cAAAA,qBAAA,GAAAvH,WAAA,CAAAyH,IAAA;IAAA,IAErB1H,gBAAA,CAAA2H,yBAAA;MAAA,IACCtC,gBAAA,IAAAvB,IAAsB,EACzB,OAYMuB,gBAAqB;QAKzBA,gBAAkB;MAElB;IACA,IACEA,gBAAS,EAAAvB,IAAA,CAET;IACA,IAAA8D,iBAAS,GAAAxH,YAIH,CAAAoB,OAAA,CAAAsE,OAAc,aAAK;QAExB,OACH;UACA3D;QAEF;MAMA,IACEA,MAAM,CACN;MAAA0F,SAAA,OAAA5H,WAAiB,CAAI6H,eACR;MAAAC,aAAA,GAAAF,SAAA,IAAAlE,UAAA,GAAAA,UAAA,GAAA3C,UAAA;MAAAgH,cAAA,GAAAX,iBAAA,CAAAU,aAAA;MAAAE,EAAA,GAAA7H,YAAA,CAAAoB,OAAA,CAAA0C,MAAA,CAAA6D,aAAA;MAAAG,aAAA,GAAAD,EAAA,CAAA9D,OAAA,KAAAnD,UAAA;MAAA,CAAAmH,gBAAA,EAAAC,mBAAA,QAAAhI,YAAA,CAAA2C,QAAA,EAAAmF,aAAA;MAAAG,kBAAA,GAAAjI,YAAA,CAAAoB,OAAA,CAAA0C,MAAA;IACXH,UAAA,EAAAuE,iBAAsB,KAAAD,kBAAA,CAAAlE,OAAA;IAAA,IAAAoE,aACxB,GAAAnI,YAAA,CAAAoB,OAAA,CAAA0C,MAAA;MAAAsE,oBAAA,GAAApI,YAAA,CAAAoB,OAAA,CAAA0C,MAAA;IAAAqD,yBACoB;MAEtBlI,KAAA,EAAM2I,cAAA;MAA0BS,OAC9B,EAAOrE;IAAA,GAAAhE,YACL,CAAAoB,OAAA,CAAAgE,WAAA,WAAAnG,KAAA;MAAA4I,EACF,CAAA9D,OAAA,GAAA9E,KAAA,EAAAqE,YAAA,CAAAgF,KAAA,GAAArJ,KAAA;MAAA,IACCsJ,IAAA,GAAM5B,eAAA;QAAA6B,QAAA,GAAAlF,YAAA,CAAAmF,OAAA;QAAAC,QAAA,GAAAzJ,KAAA,IAAAsJ,IAAA;MACT,IAGMC,QAAA,KAAAE,QADY,EASd,IAAApF,YAAY,CAAAmF,OAAA,GAAAC,QACd,EAAAA,QAAA;QAGF,IAAMC,8BAAgB;QAKtB,IAAArF,YAAA,CAAAsF,CAAA;UACE,IAAAC,2BAAA;UACE,CAAAA,2BAAO,GAAAvF,YAAA,CAAAwF,aAAA,cAAAD,2BAAA,eAAAA,2BAAA,CAAAE,IAAA,CAAAzF,YAAA,MAAAA,YAAA,CAAAsF,CAAA;QACP;QACFtF,YAAA,CAAA0F,WAAA,YAAAL,8BAAA,GAAArF,YAAA,CAAA2F,gBAAA,cAAAN,8BAAA,eAAAA,8BAAA,CAAAI,IAAA,CAAAzF,YAAA;MACA;QACE,IAAC4F,+BAAU;QACT5F,YAAG,CAAA0F,WACH,OAAAE,+BAAqB,GAAA5F,YAAA,CAAA2F,gBAAA,cAAAC,+BAAA,eAAAA,+BAAA,CAAAH,IAAA,CAAAzF,YAAA;MAGrB;IAGA,IAeyCc,eAG3C,EAAAuC,eACC,CAAgC;IACnC,SACFwC,WAAA;MAEAvB,cAAS,CAAAwB,IAAA,IAAa9F,YAAA,CAAA+F,eAAA,KAAA/F,YAAA,CAAA+F,eAAA,IAAA/F,YAAA,CAAA+F,eAAA;IACpB;IAGiC,IAEnCC,SAAA,OAAAzJ,WAAA,CAAA0J,QAAA,YAAAC,SAAA,EAAAC,iBAAA;MAEA,IAAA1G,SAAM;QACJ,IAAI2G,OAAA,GAAA9F,QAAiB,IAAA4F,SAAA,UAAAjG,UAAA,GAAAoD,eAAA,CAAA6C,SAAA;QAErB,IAAI3B,EAAA,CAAA9D,OAAU,KAAA2F,OAAY;UAE1B7B,EAAI,CAAA9D,OAAG,GAAA2F,OAAY,EAAAP,UAAS;UAE5B,IAAGQ,eAAU,GACbH,SAAW,YAAA5F,QAAA;UAEXwE,oBAAM,CAAArE,OAAkB,KAAA6F,YAAoB,CAAAxB,oBAAA,CAAArE,OAAA,GAAAqE,oBAAA,CAAArE,OAAA;UAGxC,IAAA8F,yBAAqB,GACvB,SAAAA,CAAA;YAIFzB,oBAAM,CAAArE,OAAA,KAA4B6F,YAAM,CAAAxB,oBAAA,CAAArE,OAAA,GAAAqE,oBAAA,CAAArE,OAAA,WAAA4F,eAAA,KAAAjG,IAAA,IAAAoG,UAAA,KAAAxH,mBAAA;cAClCoB,IAAA,EAAAiG;YAQN;UAcA;UATI,IAAAA,eAAA,KAAqBvB,oBAEhB,CAAQrE,OAAA,GAAAgG,UACX,aAAY;YAEb3B,oBAID,CAAArE,OAAmB,OAAS,EAAAF,OAAA,CAAAE,OAAA,IAAA+F,UAAA;UAC9B,UAAA7B,kBAAmB,CAAUlE,OAC7B;YACEkE,kBAAA,CAAAlE,OAAA,OAAA6D,cAAA,CAAAoC,QAAA,CAAAN,OAAA;cACEO,IAAA,EAAM;cACRC,QAAA;YACF,GAAAL,yBAAA;YACA;UACF;UAEAjC,cAAe,CAAAoC,QAAA,CAAAN,OAAA,EAAAD,iBAAA;YACbQ,IAAA;YACA,GAAArI;UAAqB,GACnBiI,yBAAM;QAAA;MACH;IACL;IACA,IACFjK,gBAAA,CAAA2H,yBAAA;MACF,IAACO,aAAA,IAAAvE,UAAA,IAAAR,SAAA;QAED8E,EAAA,CAAA9D,OAAA,GAAAR,UAAA,EAAAqE,cAAA,CAAAoC,QAA0B,CAAAzG,UAAM;UAM9B0G,IAAI;UACFC,QAAG;QACY,eACb;UAAAH,UACA;YAAA/B,mBACQ;UAAA,KACN;QAAU;QACZ;MAGE;MACE,KAAAD,gBAAA,OAAAhF,SAAyB,KAAAQ,UAAA,IAAAK,QAAA,IAAAkE,aAAA,KAAApE,IAAA,MAAA4F,SAAA,CAAAlG,QAAA,GAAAA,QAAA,YAAAE,YAAA,CAAA6G,UAAA,OAAA7G,YAAA,CAAA8G,YAAA,QAAA1G,IAAA,IAAAN,QAAA;QAAA,IAAAiH,aACtB,GAAAjH,QAAA;QAAA,IACPE,YAAA,CAAAmF,OAAA,GAAA4B,aAAA,EAAAA,aAAA;UACF,IAAA1B,8BAAA;UACArF,YAAA,CAAA0F,WAAA,YAAAL,8BAAA,GAAArF,YAAA,CAAA2F,gBAAA,cAAAN,8BAAA,eAAAA,8BAAA,CAAAI,IAAA,CAAAzF,YAAA;QACF;UAEA,IAAI4F,+BAIC;UAgBH5F,YAAM,CAAA0F,WAAgB,OAAAE,+BAAa,GAAA5F,YAAA,CAAA2F,gBAAA,cAAAC,+BAAA,eAAAA,+BAAA,CAAAH,IAAA,CAAAzF,YAAA;QACnC;MAMuC;IAEzC,GACF,CAEAwE,aAAM,EAOJC,gBAFI,EAIJnE,QAAM,EACNb,SAAA,EACAQ,UAAI,EAEJG,IAAA,EACEN,QAAA,CAWsC;IAQxC,IAAAkH,kBAAiB;MAAEC,WAAyC,IAAAD,kBAAA,GAAAhJ,KAAA,CAAAiJ,WAAA,cAAAD,kBAAA,cAAAA,kBAAA,GAAA3G,UAAA,EAAA4G,WAAA;MAAAC,SAAA,OAAA3K,WAAA,CAAA4K,YAAA;MAAA,CAAAC,QAAA,EAAAC,WAAA,IAAA3K,YAAA,CAAAoB,OAAA,CAAAuB,QAAA;MAAAiI,YAAA,GAAA5K,YAAA,CAAAoB,OAAA,CAAAsE,OAAA;QAE1D,IAAA6E,WADA,KAAAxH,SAAa,IAAA8B,mBACT;QACF,IAAA0D,IAAA,GAAA9C,SAAA;QAGFnC,YAAA,CAAAuH,QAAiB,GAAAtC,IACjB;QAOA,IAAAuC,MAAM,GAAAjD,EAAA,CAFa9D,OAAG;QAItB,SAAIgH,WAAAtE,GAAe;UAGnBD,aAAS,CAAAC,GAAI,CAAG;QACd;QAEA,IAAAuE,OAAI,YAAAA,CAAUC,KACZ;YACe,IAEnB;cAAAC;YAAA,IAAAD,KAAA;YAGA,IAAA3H,YAAY,CAAA6H,iBACZ,MAAU,CAAA7H,YAAY,CAAA6G,UAAA;cACxBiB,cAEgB,GAA2B,IAAAC,mBAAoC,OAAAN,UAAA;cAC7E,SAAQO,UAAA,GAAAzD,EAAA,CAAA9D,OAAA,EAAAwH,GAAA,GAAAD,UAAA,GAAAvI,SAAA,GAAAmI,EAAA,QAAAM,YAAA,MAAAC,IAAA,GAAAC,MAAA,CAAAC,iBAAA,EAAAC,CAAA,MAAAA,CAAA,GAAAnG,SAAA,CAAAoG,MAAA,EAAAD,CAAA;gBACN,IAAIpC,SAAM,GAAA/D,SAAA,CAAAmG,CAAA;kBAAAE,OAAA,GAAAP,GAAA,GAAA/B,SAAA,GAAA+B,GAAA,GAAA/B,SAAA,GAAAA,SAAA,GAAA+B,GAAA;gBACVO,OAAA,GAAQL,IAAA,KAAMA,IAAA,GAAAK,OAAA,EAAAN,YAAA,GAAAI,CAAA;cAChB;cACFvI,WAAA,CAAAmI,YAAA,GAAAlC,SAAA,CAAAkC,YAAA;YAEA;UAEA;UAAAO,MAAM,YAAAA,CAAAC,EAAA,EAAAC,MAEJ,EAAE;YAEFjB,OAAA;cAEEE,EAAA,EAAAe,MAAM,CAAAf,EAAA;cACJgB,MAAA,EAAAD,MAAO,CAAAE;YAGT;UACE;UAAAd,mBAAI,GAAa;UAAAe,eAAA,YAAAA,CAAAC,CAAA,EAAApB,KAAA;YACf;cAAAkB;YAAA,IAAAlB,KAAO;YAGT,SAAAqB,YAAMA,CAAA;cAON,IAAAD,CAAA,CAAAE,MAAI,KAAA3J,aAAA,CAAA4J,SAAA,CAAAzI,OAAA,EACF;cAIF,IAAAT,YAAI,CAAAmJ,oBACgB,SAAW;gBAC3B,IAAAnJ,YAAO,CAAA6G,UAAA,EAGb;gBAGA,IAAAuC,UAAY,GAAIpJ,YAAM,CAAAsF,CAAA;kBAAA+D,YAAA,GAAAR,EAAA;kBAAAS,SAAA,GAAAtJ,YAAA,CAAAgF,KAAA,QAAAhF,YAAA,CAAAuH,QAAA;gBACxB,IAAA6B,UAAA,EAEA,OAAMrB,mBAAuB;gBAE7B,IAAAuB,SAAI,IACFzE,aAAa,CAAApE,OAAA,IAAA4I,YAGR,EAGH,OAAQ;cACZ;cAGF,OAAA5F,IAAA,CAAA8F,GAAA,CAAAV,EAAA;YAEA;YAEA,IAAAW,OAAA,GAAAR,YAAa,CAAO,CAAC;YACnB,OAAKQ,OAAA,IAAAxJ,YACH,CAAA6H,iBACM,MAAA2B,OAAA;UAER;UAAAC,KAAA,GAAM,SAAAA,CAAA,EAAU;YAChBhC,UAAA,MAAA5B,UAAe,IAAS2B,MAAA,GAAAjD,EAAA,CAAA9D,OAAA;UAAsC;UAChEqH,cAEA,GAAa;QAIX,OAAA9H,YAAA,CAAA0J,IAAiB,GACjB,UAAAb,EAAA;UAIFf,cAEO,KAAAA,cAAA,GAAa,IAAA2B,KAAO;UAAA,IACzBE,EAAA,GAAAd,EAAA,GAAArB,MAAA;UAA6BlD,cAC7B,CAAAoC,QAAqB,KAAA1J,cAAA,CAAA4M,QAAA,EAAAD,EAAA,EAAA1E,IAAA;YACrB0B,IAAA;UACE;QAKA,GAAA3G,YADsB,CAAA0H,OAEpB,GAAAA,OAAa,EAAA1H,YAAA,CAAA6J,cAEb,aAAaC,aAAkB,EAAI;UAGShC,cAChD,OAAAC,mBAAA,OAAAN,UAAA,MAAA1H,WAAA,CAAA+J,aAAA,GAAA9D,SAAA,CAAA8D,aAAA;QAAA,GAAAlN,mBACA,CAAmBmN,YAAA,CAAAC,MAAA;UAAAC,2BACM,EAAAnB,eAAA;UAAAoB,mBACzB,EAAAT,KAAuB;UACzBU,kBAAC,WAAAA,CAAAzB,EAAA,EAAAf,KAAA;YACC;gBAAAkB;cAAA,IAAalB,KAAA;cAAAyC,MAAA,GAAAvB,EAAA,GAAqBrB,MAAA;cAAAmC,EAAA,GAAW,IAAA3M,cAAW,CAAA4M,QAAW,EAAAQ,MAAY,EAAAnF,IAAA;cAAAE,OAAA,GAAAwE,EAAA,IAAA1E,IAAA;YAGnFE,OAAA,GAAAnF,YAAM,CAAA6H,iBAAgB,OAAA7H,YAAA,CAAA6H,iBAAA,MAAAvD,cAAA,CAAAoC,QAAA,CAAAiD,EAAA;cAChBhD,IAAA;YAIF;UAMJ;UACA0D,iBAAA,EAAM5B,MAAA;UACJ6B,uBAAgB,EAAA7B,MAAA;UACd8B,qBAAY,EAAA9B;QACZ;MAAA,IAEFxB,WAAK,EAKP1F,mBAGA,EACEyE,SAAK,EAGPvG,SAAS,EAGT0C,SAAQ,EAA0EpC,WAChF,CAAW;IACXrD,YACA,CAAAoB,OAAA,CAAAmE,SAAA;MAAAc,UACA,IAAAzC,QAAA,KAAAF,IAAA,IAAAqE,gBAAA,KAAAhF,SAAA,KAAAQ,UAAA,IAAA+F,SAAA,CAAAlG,QAAA;QACA6G,IAAA;QACAC,QAAA;MAAA,EACA;IAAA,IAC6BnE,iBAC7B,EAAAD,cACA;IACA,IACAgI,WAAA,GAAA9N,YAAsB,CAAAoB,OAAgB,CAAA0C,MAAA;IAEpC9D,YAAG,CAAAoB,OAAU,CAAAmE,SACb,aAAe;MAAgC,IACjDc,UAAA;QACAyH,WAAA,CAAA/J,OAAA;QACD;MAIC;MACE+J,WAAA,CAAA/J,OAAA,KAAA+J,WAAA,CAAA/J,OAAA,UAAAhB,SAAA,KAAAQ,UAAA,IAAAK,QAAA,KAAAF,IAAA,KAAA4F,SAAA,CAAAlG,QAAA;IAKF,IAIAiD,UACA,CAAiB,CACnB,EAACrG,YAEK,CAAAoB,OAAA,CAAAmE,SAAA,CAA6B;MAEjC,CAAA7B,IAAA,IAAMqC,iBAAY,IAAAC,eAAA;IAAA,IACMtC,IACtB,CAAoC;IAEtC,IAAK;QAAAqK,UACL;QAAAC,aAAkB;QAAAC;MAAI,QAAAzN,2BAAA,CAAA0N,oBAAA;QACxBzI,SAEM,EAAAkB,eAAgB;QACpB5D,SAAA;QAGAM,WAAO;QAAAiG,SACL;QAA0BH,UAC5B;QACF7F,YAIO;QACHkD,aAAQ;QASZ2H,kBAAM,WAAAA,CAAA,EAAsB;UAEL,OAAAtG,EAAA,CAAA9D,OAAA;QAAA;QAEoCmJ,QACrD,EAAA5M,cAEA,CAAA4M,QAAA;QACJ3C,WAAA;QACF1F,mBAAK;QAOLuJ,mBACE,WAAAA,CAAA3H,GAAA;UAGOoB,EAAA,CAAA9D,OAAA,GAAA0C,GAAA,EAAAmB,cAAA,CAAAoC,QAAA,CAAAvD,GAAA;YAAAwD,IAAA;UAAA,EACC;QAAA;QACAhE;MACA;MAAAoI,yBACA,OAAAxO,WAAA,CAAA0J,QAAA,YAAA8C,CAAA;QAAA,IACAiC,cAAA;QAAA,IAEA,GAAA5K,IAAA,IAAA4B,eAAA,CAAAvB,OAAA;UAAA,IAAAwK,YAAA,IAAAD,cAAA,GAAAjC,CAAA,CAAAmC,WAAC,cAAAF,cAAA,cAAgB,SAAUA,cACxB,CAAAG,MAAA,CAAAC,MAAA;YAAAC,IAAA,GAAA7M,KAAA,GAA0BiF,IAAA,CAAA6H,GAAO,CAAAL,YAAO,EAAArO,mBAC3C,CAAA2O,UAAA,CAAAC,GAAA,CAAA5N,mBAAA,EAAAwN,MAAA,IAAAH,YAAA;UAAAI,IAEC,IAAA3L,YAAA,CAAA2L,IAAmB;QAClB;MAAC;MAAAI,0BAAA,GAAA/O,YAAA,CAAAoB,OAAA,CAAAgE,WAAA,WAAAiH,CAAA;QAAA,IAAAiC,cACQ;UAAAK,IAAA,GAAA5H,IAAA,CAAA6H,GAAA,EAAAN,cAAA,GAAAjC,CAAA,CAAAmC,WAAA,cAAAF,cAAA,uBAAAA,cAAA,CAAAG,MAAA,CAAAC,MAAA,EAAAxO,mBAAA,CAAA2O,UAAA,CAAAC,GAAA,CAAA5N,mBAAA,EAAAwN,MAAA;QAAAC,IAAA,IAAAnL,iBACI,CAAAmL,IAAA;MAAA;MAAAK,aACT,GAAU9H,sBAAA,CAAAU,cAAA,YAAAnB,GAAA;QAAA;;QACL,IAAAwI,UACL,GAAAlM,SAAM,SAAAnC,UAAA,GAAA6F,GAAA;QAAA;UACCyI,SAAA,EACP,CAAQ;YACOD;UACjB;QACU;MACZ;MAAA,CAAAE,OAGF,EAAArF,UAAA,IAAA9J,YAAA,CAAAoB,OAAA,CAAAuB,QAAA,CAAAe,IAAA;IAAAA,IAAA,IAAAyL,OAAC,WAAArF,UAAA,KAAA1B,oBAAA,CAAArE,OAAA,KAAA6F,YAAA,CAAAxB,oBAAA,CAAArE,OAAA,GAAAqE,oBAAA,CAAArE,OAAA;IAAA,IAAAqL,mBAAA,GAAAjM,MAAA,YAAAD,cAAA;MAAA;MACC,GAAAO,YACA,GAAA7D,gBAAU,CAAAuB,KAAA,IAAAW,KAAA,mBAAA2B,YAGV;MAAA4L,gBAAY,GAAArP,YAAc,CAAAoB,OAAmB,CAAAgE,WAAO,WAAAqB,GAAA;QAAA0B,aAEpD,CAAApE,OAAA,GAAA0C,GAAA;MAAgB;MAAA6I,QAChB,GAAO,mBAAA/P,kBAAA,CAAAgQ,GAAA,EAAA1P,WAAA,CAAA2P,2BAAA;QAAAC,OAAA,GAAA/L,IACL;QAAAgM,QAAA,iBACY,IAAAnQ,kBAAA,CAAAgQ,GAAA,EAAApP,eAAA,CAAAuB,kBAAA,CAAAiO,QAAA;UAAA1Q,KAAA,EAAAuI,iBACV;UAAAkI,QAAA,iBACO,IAAAnQ,kBAAA,CAAAgQ,GAAA,EAAAhP,mBAAA,CAAAqP,aAAA;YAAA,GAAAhN,aACP;YAAQyM,gBACR;YAAWK,QAAA,EACX,eAAU,IAAAnQ,kBAAwB,CAAAsQ,IAAA,EAAAxP,0BAAA,CAAAyP,oBAAA;cAAAzJ,UAClC;cAAwCqE,QAAA;cACvBC,WACjB;cAAAoD,UACF;cAAAC,aACA;cAAA0B,QACF,kBAGC,IAAAnQ,kBAAyB,CAAAgQ,GAAA,EAAA7P,uBACxB,CAAAqQ,eAAA;gBAIAC,MAAC;kBAAAtM;gBAAA;gBACmBgM,QAClB,EAAA3K,qBAAyB,KAAArB,IAAQ,OAAQ,GAAAjB;cAAO,IAEzCS,cAAA,qCAAA3D,kBAAA,CAAAgQ,GAAA,EAAArP,mBAAA,CAAAoH,IAAA;gBACT2I,KAAA;kBAAAd,OAAA;kBAEJ/L,QAAA;kBAAAnC,GAAA;kBAAAiP,IAAA;kBAIRC,KAAA;kBAeIC,MAAA;kBAEKC,aAAA;gBACH;gBAMFC,QAAA,EAAAvB;cAUN,IAEO,mBAAAxP,kBAAA,CAAAgQ,GAAA,EAAAlI,YAAA;gBACTpD,GAAA;gBACFqM,QAAA,EAAAjC,yBAAA;gBAES;gBAMF;gBACI1M,UAAA,EAAA0E,UAAA,IAAA0B,gBAAA,UAAApG,UAAA;gBAGL;gBACE4O,gBAAiB;gBACZN,KAAA,GAEL;kBACK7M,QAAa,YAAS;kBAErBrB,MAAS;kBACXyO,KAAM,EAAK,MAAI;kBACjB9B,MAAO,EAAMU,mBACP;kBAIZqB,SAAA,EAAArB,mBAAA;kBACAD,OAAa,EAAApK,qBAAA,OAAAoK,OACN;kBACT,KAAApK,qBAAA,KAAArB,IAAA;oBAEa2M,aAAA;kBACP;gBAIO,GACJrB,aAAkB,CAGf;gBACRU,QAAa,GAMnB","ignoreList":[]}
package/dist/cjs/index.js CHANGED
@@ -3,23 +3,26 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
4
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
5
5
  var __copyProps = (to, from, except, desc) => {
6
- if (from && typeof from == "object" || typeof from == "function")
7
- for (let key of __getOwnPropNames(from))
8
- !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
9
- return to;
10
- }, __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
11
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
6
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
7
+ get: () => from[key],
8
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
9
+ });
10
+ return to;
11
+ },
12
+ __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
13
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
14
+ value: !0
15
+ }), mod);
12
16
  var index_exports = {};
13
17
  module.exports = __toCommonJS(index_exports);
14
- __reExport(index_exports, require("./Sheet"), module.exports);
15
- __reExport(index_exports, require("./useSheet"), module.exports);
16
- __reExport(index_exports, require("./createSheet"), module.exports);
17
- __reExport(index_exports, require("./SheetController"), module.exports);
18
- __reExport(index_exports, require("./useSheetController"), module.exports);
19
- __reExport(index_exports, require("./useSheetOpenState"), module.exports);
20
- __reExport(index_exports, require("./useSheetOffscreenSize"), module.exports);
21
- __reExport(index_exports, require("./SheetScrollView"), module.exports);
22
- __reExport(index_exports, require("./nativeSheet"), module.exports);
23
- __reExport(index_exports, require("./types"), module.exports);
24
- __reExport(index_exports, require("./contexts"), module.exports);
25
- //# sourceMappingURL=index.js.map
18
+ __reExport(index_exports, require("./Sheet.cjs"), module.exports);
19
+ __reExport(index_exports, require("./useSheet.cjs"), module.exports);
20
+ __reExport(index_exports, require("./createSheet.cjs"), module.exports);
21
+ __reExport(index_exports, require("./SheetController.cjs"), module.exports);
22
+ __reExport(index_exports, require("./useSheetController.cjs"), module.exports);
23
+ __reExport(index_exports, require("./useSheetOpenState.cjs"), module.exports);
24
+ __reExport(index_exports, require("./useSheetOffscreenSize.cjs"), module.exports);
25
+ __reExport(index_exports, require("./SheetScrollView.cjs"), module.exports);
26
+ __reExport(index_exports, require("./nativeSheet.cjs"), module.exports);
27
+ __reExport(index_exports, require("./types.cjs"), module.exports);
28
+ __reExport(index_exports, require("./contexts.cjs"), module.exports);
@@ -98,7 +98,7 @@ function useGestureHandlerPan(config) {
98
98
  let panHandles = !1;
99
99
  const hasScrollableContent = scrollBridge.hasScrollableContent !== !1;
100
100
  if (isCurrentlyAtTop ? isSwipingDown ? nodeIsScrolling && hasScrollableContent ? panHandles = !1 : (gs.scrollEngaged, panHandles = !0) : hasScrollableContent ? panHandles = !1 : panHandles = !0 : isSwipingDown ? panHandles = !nodeIsScrolling || !hasScrollableContent : panHandles = !0, panHandles) {
101
- const lockTo = isCurrentlyAtTop ? void 0 : 0;
101
+ const lockTo = isCurrentlyAtTop && isSwipingDown && gs.scrollEngaged ? void 0 : 0;
102
102
  scrollBridge.setScrollEnabled?.(!1, lockTo), gs.accumulatedOffset += deltaY;
103
103
  const newPosition = resisted(gs.startY + gs.accumulatedOffset, minY);
104
104
  scrollBridge.paneY = newPosition, setAnimatedPosition(newPosition), scrollBridge.setParentDragging(newPosition > minY);
@@ -105,7 +105,7 @@ function useGestureHandlerPan(config) {
105
105
  hasScrollableContent = scrollBridge.hasScrollableContent !== !1;
106
106
  if (isCurrentlyAtTop ? isSwipingDown ? nodeIsScrolling && hasScrollableContent ? panHandles = !1 : (gs.scrollEngaged, panHandles = !0) : hasScrollableContent ? panHandles = !1 : panHandles = !0 : isSwipingDown ? panHandles = !nodeIsScrolling || !hasScrollableContent : panHandles = !0, panHandles) {
107
107
  var _scrollBridge_setScrollEnabled,
108
- lockTo = isCurrentlyAtTop ? void 0 : 0;
108
+ lockTo = isCurrentlyAtTop && isSwipingDown && gs.scrollEngaged ? void 0 : 0;
109
109
  (_scrollBridge_setScrollEnabled = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled === void 0 || _scrollBridge_setScrollEnabled.call(scrollBridge, !1, lockTo), gs.accumulatedOffset += deltaY;
110
110
  var newPosition = resisted(gs.startY + gs.accumulatedOffset, minY);
111
111
  scrollBridge.paneY = newPosition, setAnimatedPosition(newPosition), scrollBridge.setParentDragging(newPosition > minY);
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useGestureHandlerPan_exports","__export","useGestureHandlerPan","module","exports","import_react","require","import_gestureState","AT_TOP_THRESHOLD","config","positions","frameSize","setPosition","animateTo","stopSpring","scrollBridge","setIsDragging","getCurrentPosition","resisted","disableDrag","isShowingInnerSheet","setAnimatedPosition","scrollGestureRef","gestureHandlerEnabled","isGestureHandlerEnabled","panGestureRef","useRef","gestureStateRef","startY","lastPanTranslationY","accumulatedOffset","prevTranslationY","scrollEngaged","frozenPositions","frozenMinY","panStarted","onStart","useCallback","onEnd","closestPoint","animationOverride","_scrollBridge_setScrollEnabled","setParentDragging","setScrollEnabled","call","panGesture","useMemo","Gesture","getGestureHandlerState","minY","gs","current","gesture","Pan","withRef","activeOffsetY","failOffsetX","shouldCancelWhenOutside","onBegin","pauseKeyboardHandler","pos","atTop","currentScrollY","y","initialPosition","onChange","event","translationY","isSwipingDown","deltaY","scrollY","currentPos","isCurrentlyAtTop","nodeIsScrolling","panHandles","hasScrollableContent","lockTo","newPosition","paneY","_scrollBridge_setScrollEnabled1","velocityY","scrollLockY","snapPositions","length","snapMinY","velocity","projectedEnd","minDist","Number","POSITIVE_INFINITY","i","dist","Math","abs","onFinalize","runOnJS","simultaneousWithExternalGesture"],"sources":["../../src/useGestureHandlerPan.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useGestureHandlerPan_exports","__export","useGestureHandlerPan","module","exports","import_react","require","import_gestureState","AT_TOP_THRESHOLD","config","positions","frameSize","setPosition","animateTo","stopSpring","scrollBridge","setIsDragging","getCurrentPosition","resisted","disableDrag","isShowingInnerSheet","setAnimatedPosition","scrollGestureRef","gestureHandlerEnabled","isGestureHandlerEnabled","panGestureRef","useRef","gestureStateRef","startY","lastPanTranslationY","accumulatedOffset","prevTranslationY","scrollEngaged","frozenPositions","frozenMinY","panStarted","onStart","useCallback","onEnd","closestPoint","animationOverride","_scrollBridge_setScrollEnabled","setParentDragging","setScrollEnabled","call","panGesture","useMemo","Gesture","getGestureHandlerState","minY","gs","current","gesture","Pan","withRef","activeOffsetY","failOffsetX","shouldCancelWhenOutside","onBegin","pauseKeyboardHandler","pos","atTop","currentScrollY","y","initialPosition","onChange","event","translationY","isSwipingDown","deltaY","scrollY","currentPos","isCurrentlyAtTop","nodeIsScrolling","panHandles","hasScrollableContent","lockTo","newPosition","paneY","_scrollBridge_setScrollEnabled1","velocityY","scrollLockY","snapPositions","length","snapMinY","velocity","projectedEnd","minDist","Number","POSITIVE_INFINITY","i","dist","Math","abs","onFinalize","runOnJS","simultaneousWithExternalGesture"],"sources":["../../src/useGestureHandlerPan.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  import { AnimatePresence } from "@tamagui/animate-presence";
2
2
  import { useComposedRefs } from "@tamagui/compose-refs";
3
3
  import { isWeb, useIsomorphicLayoutEffect } from "@tamagui/constants";
4
- import { LayoutMeasurementController, View as TamaguiView, Theme, useConfiguration, useDidFinishSSR, useEvent, useThemeName } from "@tamagui/core";
4
+ import { LayoutMeasurementController, View as TamaguiView, useConfiguration, useDidFinishSSR, useEvent, useThemeName } from "@tamagui/core";
5
5
  import { getSafeArea } from "@tamagui/native";
6
6
  import { needsPortalRepropagation, Portal } from "@tamagui/portal";
7
7
  import React, { useState } from "react";
@@ -33,7 +33,8 @@ const relativeDimensionTo = isWeb ? "window" : "screen",
33
33
  moveOnKeyboardChange = !1,
34
34
  unmountChildrenWhenHidden = !1,
35
35
  portalProps,
36
- containerComponent: ContainerComponent = React.Fragment
36
+ containerComponent: ContainerComponent = React.Fragment,
37
+ onAnimationComplete
37
38
  } = props,
38
39
  state = useSheetOpenState(props),
39
40
  [overlayComponent, setOverlayComponent] = React.useState(null),
@@ -58,7 +59,9 @@ const relativeDimensionTo = isWeb ? "window" : "screen",
58
59
  controller,
59
60
  isHidden
60
61
  } = state,
61
- sheetRef = React.useRef(void 0),
62
+ openRef = React.useRef(open);
63
+ openRef.current = open;
64
+ const sheetRef = React.useRef(void 0),
62
65
  ref = useComposedRefs(forwardedRef, sheetRef, providerProps.contentRef),
63
66
  {
64
67
  animationDriver
@@ -129,7 +132,8 @@ const relativeDimensionTo = isWeb ? "window" : "screen",
129
132
  [disableAnimation, setDisableAnimation] = useState(hasntMeasured),
130
133
  skipAdaptAnimation = React.useRef(!1);
131
134
  controller?.skipNextAnimation && (skipAdaptAnimation.current = !0);
132
- const hasScrollView = React.useRef(!1);
135
+ const hasScrollView = React.useRef(!1),
136
+ opacityFallbackTimer = React.useRef(null);
133
137
  useAnimatedNumberReaction({
134
138
  value: animatedNumber,
135
139
  hostRef: sheetRef
@@ -138,7 +142,7 @@ const relativeDimensionTo = isWeb ? "window" : "screen",
138
142
  const minY = activePositions[0],
139
143
  wasAtTop = scrollBridge.isAtTop,
140
144
  nowAtTop = value <= minY + 5;
141
- wasAtTop !== nowAtTop && (scrollBridge.isAtTop = nowAtTop, nowAtTop ? (scrollBridge.scrollLockY = void 0, scrollBridge.setScrollEnabled?.(!0)) : (scrollBridge.scrollLockY = 0, scrollBridge.setScrollEnabled?.(!1)));
145
+ wasAtTop !== nowAtTop && (scrollBridge.isAtTop = nowAtTop, nowAtTop ? (scrollBridge.y > 0 && (scrollBridge.forceScrollTo?.(0), scrollBridge.y = 0), scrollBridge.scrollLockY = void 0, scrollBridge.setScrollEnabled?.(!0)) : (scrollBridge.scrollLockY = 0, scrollBridge.setScrollEnabled?.(!1)));
142
146
  }, [animationDriver, activePositions]));
143
147
  function stopSpring() {
144
148
  animatedNumber.stop(), scrollBridge.onFinishAnimate && (scrollBridge.onFinishAnimate(), scrollBridge.onFinishAnimate = void 0);
@@ -146,19 +150,28 @@ const relativeDimensionTo = isWeb ? "window" : "screen",
146
150
  const animateTo = useEvent((position2, animationOverride) => {
147
151
  if (frameSize === 0) return;
148
152
  let toValue = isHidden || position2 === -1 ? screenSize : activePositions[position2];
149
- if (at.current !== toValue) {
150
- if (at.current = toValue, stopSpring(), skipAdaptAnimation.current) {
151
- skipAdaptAnimation.current = !1, animatedNumber.setValue(toValue, {
152
- type: "timing",
153
- duration: 0
154
- });
155
- return;
156
- }
157
- animatedNumber.setValue(toValue, animationOverride || {
158
- type: "spring",
159
- ...transitionConfig
153
+ if (at.current === toValue) return;
154
+ at.current = toValue, stopSpring();
155
+ const isOpenAnimation = position2 !== -1 && !isHidden;
156
+ opacityFallbackTimer.current && (clearTimeout(opacityFallbackTimer.current), opacityFallbackTimer.current = null);
157
+ const animationCompleteCallback = () => {
158
+ opacityFallbackTimer.current && (clearTimeout(opacityFallbackTimer.current), opacityFallbackTimer.current = null), !isOpenAnimation && !open && setOpacity(0), onAnimationComplete?.({
159
+ open: isOpenAnimation
160
160
  });
161
+ };
162
+ if (isOpenAnimation || (opacityFallbackTimer.current = setTimeout(() => {
163
+ opacityFallbackTimer.current = null, openRef.current || setOpacity(0);
164
+ }, 1e3)), skipAdaptAnimation.current) {
165
+ skipAdaptAnimation.current = !1, animatedNumber.setValue(toValue, {
166
+ type: "timing",
167
+ duration: 0
168
+ }, animationCompleteCallback);
169
+ return;
161
170
  }
171
+ animatedNumber.setValue(toValue, animationOverride || {
172
+ type: "spring",
173
+ ...transitionConfig
174
+ }, animationCompleteCallback);
162
175
  });
163
176
  useIsomorphicLayoutEffect(() => {
164
177
  if (hasntMeasured && screenSize && frameSize) {
@@ -296,12 +309,12 @@ const relativeDimensionTo = isWeb ? "window" : "screen",
296
309
  },
297
310
  pauseKeyboardHandler
298
311
  }),
299
- handleAnimationViewLayout = React.useCallback(e => {
312
+ handleAnimationViewLayout = useEvent(e => {
300
313
  if (!open && stableFrameSize.current !== 0) return;
301
314
  const layoutHeight = e.nativeEvent?.layout.height,
302
315
  next = modal ? Math.min(layoutHeight, Dimensions.get(relativeDimensionTo).height) : layoutHeight;
303
316
  next && setFrameSize(next);
304
- }, [open, modal]),
317
+ }),
305
318
  handleMaxContentViewLayout = React.useCallback(e => {
306
319
  const next = Math.min(e.nativeEvent?.layout.height, Dimensions.get(relativeDimensionTo).height);
307
320
  next && setMaxContentSize(next);
@@ -316,16 +329,7 @@ const relativeDimensionTo = isWeb ? "window" : "screen",
316
329
  };
317
330
  }),
318
331
  [opacity, setOpacity] = React.useState(open ? 1 : 0);
319
- open && opacity === 0 && setOpacity(1), React.useEffect(() => {
320
- if (!open) {
321
- const tm = setTimeout(() => {
322
- setOpacity(0);
323
- }, 400);
324
- return () => {
325
- clearTimeout(tm);
326
- };
327
- }
328
- }, [open]);
332
+ open && opacity === 0 && (setOpacity(1), opacityFallbackTimer.current && (clearTimeout(opacityFallbackTimer.current), opacityFallbackTimer.current = null));
329
333
  const forcedContentHeight = hasFit ? void 0 : snapPointsMode === "percent" ?
330
334
  // Use dvh for modal (viewport-relative), % for inline (container-relative)
331
335
  `${maxSnapPoint}${isWeb && modal ? "dvh" : "%"}` : maxSnapPoint,
@@ -403,12 +407,7 @@ const relativeDimensionTo = isWeb ? "window" : "screen",
403
407
  stackZIndex: zIndex,
404
408
  ...portalProps,
405
409
  children: shouldMountChildren && /* @__PURE__ */jsx(ContainerComponent, {
406
- children: /* @__PURE__ */jsx(Theme, {
407
- contain: !0,
408
- forceClassName: !0,
409
- name: themeName,
410
- children: contents
411
- })
410
+ children: contents
412
411
  })
413
412
  });
414
413
  return isWeb ? modalContents : /* @__PURE__ */jsx(SheetInsideSheetContext.Provider, {