@tamagui/sheet 2.7.7 → 3.0.0-beta.1093.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/GestureSheetContext.cjs +28 -37
- package/dist/cjs/GestureSheetContext.native.cjs +48 -0
- package/dist/cjs/GestureSheetContext.native.js +29 -37
- package/dist/cjs/GestureSheetContext.native.js.map +1 -1
- package/dist/cjs/Sheet.cjs +220 -99
- package/dist/cjs/Sheet.native.cjs +245 -0
- package/dist/cjs/Sheet.native.js +223 -98
- package/dist/cjs/Sheet.native.js.map +1 -1
- package/dist/cjs/SheetContext.cjs +43 -22
- package/dist/cjs/SheetContext.native.cjs +57 -0
- package/dist/cjs/SheetContext.native.js +44 -22
- package/dist/cjs/SheetContext.native.js.map +1 -1
- package/dist/cjs/SheetController.cjs +49 -56
- package/dist/cjs/SheetController.native.cjs +71 -0
- package/dist/cjs/SheetController.native.js +52 -58
- package/dist/cjs/SheetController.native.js.map +1 -1
- package/dist/cjs/SheetDragSurface.cjs +50 -0
- package/dist/cjs/SheetDragSurface.native.cjs +61 -0
- package/dist/cjs/SheetDragSurface.native.js +63 -0
- package/dist/cjs/SheetDragSurface.native.js.map +1 -0
- package/dist/cjs/SheetImplementationCustom.cjs +664 -610
- package/dist/cjs/SheetImplementationCustom.native.cjs +748 -0
- package/dist/cjs/SheetImplementationCustom.native.js +704 -649
- package/dist/cjs/SheetImplementationCustom.native.js.map +1 -1
- package/dist/cjs/SheetScrollView.cjs +291 -312
- package/dist/cjs/SheetScrollView.native.cjs +326 -0
- package/dist/cjs/SheetScrollView.native.js +299 -319
- package/dist/cjs/SheetScrollView.native.js.map +1 -1
- package/dist/cjs/constants.cjs +21 -21
- package/dist/cjs/constants.native.cjs +36 -0
- package/dist/cjs/constants.native.js +21 -20
- package/dist/cjs/constants.native.js.map +1 -1
- package/dist/cjs/contexts.cjs +19 -28
- package/dist/cjs/contexts.native.cjs +37 -0
- package/dist/cjs/contexts.native.js +19 -27
- package/dist/cjs/contexts.native.js.map +1 -1
- package/dist/cjs/controller.cjs +16 -18
- package/dist/cjs/controller.native.cjs +31 -0
- package/dist/cjs/controller.native.js +16 -17
- package/dist/cjs/controller.native.js.map +1 -1
- package/dist/cjs/gestureState.cjs +28 -30
- package/dist/cjs/gestureState.native.cjs +53 -0
- package/dist/cjs/gestureState.native.js +29 -30
- package/dist/cjs/gestureState.native.js.map +1 -1
- package/dist/cjs/helpers.cjs +20 -24
- package/dist/cjs/helpers.native.cjs +34 -0
- package/dist/cjs/helpers.native.js +21 -24
- package/dist/cjs/helpers.native.js.map +1 -1
- package/dist/cjs/index.cjs +14 -21
- package/dist/cjs/index.native.cjs +36 -0
- package/dist/cjs/index.native.js +15 -21
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/keyboardAvoidance.cjs +55 -79
- package/dist/cjs/keyboardAvoidance.native.cjs +74 -0
- package/dist/cjs/keyboardAvoidance.native.js +55 -78
- package/dist/cjs/keyboardAvoidance.native.js.map +1 -1
- package/dist/cjs/nativeSheet.cjs +17 -86
- package/dist/cjs/nativeSheet.native.cjs +94 -0
- package/dist/cjs/nativeSheet.native.js +73 -86
- package/dist/cjs/nativeSheet.native.js.map +1 -1
- package/dist/cjs/stableViewportHeight.cjs +27 -0
- package/dist/cjs/stableViewportHeight.native.cjs +29 -0
- package/dist/cjs/stableViewportHeight.native.js +31 -0
- package/dist/cjs/stableViewportHeight.native.js.map +1 -0
- package/dist/cjs/types.cjs +9 -11
- package/dist/cjs/types.native.cjs +18 -0
- package/dist/cjs/types.native.js +9 -10
- package/dist/cjs/types.native.js.map +1 -1
- package/dist/cjs/useGestureHandlerPan.cjs +244 -257
- package/dist/cjs/useGestureHandlerPan.native.cjs +272 -0
- package/dist/cjs/useGestureHandlerPan.native.js +253 -265
- package/dist/cjs/useGestureHandlerPan.native.js.map +1 -1
- package/dist/cjs/useKeyboardControllerSheet.cjs +82 -88
- package/dist/cjs/useKeyboardControllerSheet.native.cjs +92 -0
- package/dist/cjs/useKeyboardControllerSheet.native.js +73 -111
- package/dist/cjs/useKeyboardControllerSheet.native.js.map +1 -1
- package/dist/cjs/useSafeAreaInsets.cjs +19 -26
- package/dist/cjs/useSafeAreaInsets.native.cjs +50 -0
- package/dist/cjs/useSafeAreaInsets.native.js +29 -25
- package/dist/cjs/useSafeAreaInsets.native.js.map +1 -1
- package/dist/cjs/useSheetController.cjs +26 -39
- package/dist/cjs/useSheetController.native.cjs +41 -0
- package/dist/cjs/useSheetController.native.js +27 -39
- package/dist/cjs/useSheetController.native.js.map +1 -1
- package/dist/cjs/useSheetOffscreenSize.cjs +43 -53
- package/dist/cjs/useSheetOffscreenSize.native.cjs +59 -0
- package/dist/cjs/useSheetOffscreenSize.native.js +47 -56
- package/dist/cjs/useSheetOffscreenSize.native.js.map +1 -1
- package/dist/cjs/useSheetOpenState.cjs +68 -40
- package/dist/cjs/useSheetOpenState.native.cjs +87 -0
- package/dist/cjs/useSheetOpenState.native.js +73 -42
- package/dist/cjs/useSheetOpenState.native.js.map +1 -1
- package/dist/cjs/useSheetProviderProps.cjs +145 -164
- package/dist/cjs/useSheetProviderProps.native.cjs +175 -0
- package/dist/cjs/useSheetProviderProps.native.js +155 -174
- package/dist/cjs/useSheetProviderProps.native.js.map +1 -1
- package/dist/cjs/useSheetScrollViewGestures.cjs +171 -180
- package/dist/cjs/useSheetScrollViewGestures.native.cjs +149 -0
- package/dist/cjs/useSheetScrollViewGestures.native.js +135 -147
- package/dist/cjs/useSheetScrollViewGestures.native.js.map +1 -1
- package/dist/cjs/webViewport.cjs +46 -48
- package/dist/cjs/webViewport.native.cjs +78 -0
- package/dist/cjs/webViewport.native.js +49 -50
- package/dist/cjs/webViewport.native.js.map +1 -1
- package/dist/esm/GestureSheetContext.mjs +15 -20
- package/dist/esm/GestureSheetContext.mjs.map +1 -1
- package/dist/esm/GestureSheetContext.native.js +17 -22
- package/dist/esm/GestureSheetContext.native.js.map +1 -1
- package/dist/esm/Sheet.mjs +207 -83
- package/dist/esm/Sheet.mjs.map +1 -1
- package/dist/esm/Sheet.native.js +210 -83
- package/dist/esm/Sheet.native.js.map +1 -1
- package/dist/esm/SheetContext.mjs +21 -5
- package/dist/esm/SheetContext.mjs.map +1 -1
- package/dist/esm/SheetContext.native.js +21 -5
- package/dist/esm/SheetContext.native.js.map +1 -1
- package/dist/esm/SheetController.mjs +34 -30
- package/dist/esm/SheetController.mjs.map +1 -1
- package/dist/esm/SheetController.native.js +38 -34
- package/dist/esm/SheetController.native.js.map +1 -1
- package/dist/esm/SheetDragSurface.mjs +25 -0
- package/dist/esm/SheetDragSurface.mjs.map +1 -0
- package/dist/esm/SheetDragSurface.native.js +34 -0
- package/dist/esm/SheetDragSurface.native.js.map +1 -0
- package/dist/esm/SheetImplementationCustom.mjs +647 -586
- package/dist/esm/SheetImplementationCustom.mjs.map +1 -1
- package/dist/esm/SheetImplementationCustom.native.js +684 -618
- package/dist/esm/SheetImplementationCustom.native.js.map +1 -1
- package/dist/esm/SheetScrollView.mjs +278 -288
- package/dist/esm/SheetScrollView.mjs.map +1 -1
- package/dist/esm/SheetScrollView.native.js +287 -297
- package/dist/esm/SheetScrollView.native.js.map +1 -1
- package/dist/esm/constants.mjs +5 -3
- package/dist/esm/constants.mjs.map +1 -1
- package/dist/esm/constants.native.js +5 -3
- package/dist/esm/constants.native.js.map +1 -1
- package/dist/esm/contexts.mjs +3 -3
- package/dist/esm/contexts.mjs.map +1 -1
- package/dist/esm/contexts.native.js +3 -3
- package/dist/esm/contexts.native.js.map +1 -1
- package/dist/esm/controller.mjs +2 -2
- package/dist/esm/controller.native.js +2 -2
- package/dist/esm/gestureState.mjs +13 -11
- package/dist/esm/gestureState.mjs.map +1 -1
- package/dist/esm/gestureState.native.js +14 -12
- package/dist/esm/gestureState.native.js.map +1 -1
- package/dist/esm/helpers.mjs +7 -6
- package/dist/esm/helpers.mjs.map +1 -1
- package/dist/esm/helpers.native.js +8 -7
- package/dist/esm/helpers.native.js.map +1 -1
- package/dist/esm/index.js +21 -14
- package/dist/esm/index.mjs +21 -14
- package/dist/esm/index.native.js +21 -14
- package/dist/esm/keyboardAvoidance.mjs +40 -61
- package/dist/esm/keyboardAvoidance.mjs.map +1 -1
- package/dist/esm/keyboardAvoidance.native.js +40 -61
- package/dist/esm/keyboardAvoidance.native.js.map +1 -1
- package/dist/esm/nativeSheet.mjs +4 -70
- package/dist/esm/nativeSheet.mjs.map +1 -1
- package/dist/esm/nativeSheet.native.js +60 -70
- package/dist/esm/nativeSheet.native.js.map +1 -1
- package/dist/esm/stableViewportHeight.mjs +8 -0
- package/dist/esm/stableViewportHeight.mjs.map +1 -0
- package/dist/esm/stableViewportHeight.native.js +8 -0
- package/dist/esm/stableViewportHeight.native.js.map +1 -0
- package/dist/esm/types.mjs +0 -2
- package/dist/esm/types.native.js +0 -2
- package/dist/esm/useGestureHandlerPan.mjs +232 -239
- package/dist/esm/useGestureHandlerPan.mjs.map +1 -1
- package/dist/esm/useGestureHandlerPan.native.js +241 -248
- package/dist/esm/useGestureHandlerPan.native.js.map +1 -1
- package/dist/esm/useKeyboardControllerSheet.mjs +71 -71
- package/dist/esm/useKeyboardControllerSheet.mjs.map +1 -1
- package/dist/esm/useKeyboardControllerSheet.native.js +66 -94
- package/dist/esm/useKeyboardControllerSheet.native.js.map +1 -1
- package/dist/esm/useSafeAreaInsets.mjs +3 -1
- package/dist/esm/useSafeAreaInsets.mjs.map +1 -1
- package/dist/esm/useSafeAreaInsets.native.js +15 -3
- package/dist/esm/useSafeAreaInsets.native.js.map +1 -1
- package/dist/esm/useSheetController.mjs +14 -12
- package/dist/esm/useSheetController.mjs.map +1 -1
- package/dist/esm/useSheetController.native.js +14 -12
- package/dist/esm/useSheetController.native.js.map +1 -1
- package/dist/esm/useSheetOffscreenSize.mjs +30 -35
- package/dist/esm/useSheetOffscreenSize.mjs.map +1 -1
- package/dist/esm/useSheetOffscreenSize.native.js +34 -39
- package/dist/esm/useSheetOffscreenSize.native.js.map +1 -1
- package/dist/esm/useSheetOpenState.mjs +50 -22
- package/dist/esm/useSheetOpenState.mjs.map +1 -1
- package/dist/esm/useSheetOpenState.native.js +55 -25
- package/dist/esm/useSheetOpenState.native.js.map +1 -1
- package/dist/esm/useSheetProviderProps.mjs +130 -138
- package/dist/esm/useSheetProviderProps.mjs.map +1 -1
- package/dist/esm/useSheetProviderProps.native.js +140 -149
- package/dist/esm/useSheetProviderProps.native.js.map +1 -1
- package/dist/esm/useSheetScrollViewGestures.mjs +159 -162
- package/dist/esm/useSheetScrollViewGestures.mjs.map +1 -1
- package/dist/esm/useSheetScrollViewGestures.native.js +123 -130
- package/dist/esm/useSheetScrollViewGestures.native.js.map +1 -1
- package/dist/esm/webViewport.mjs +26 -25
- package/dist/esm/webViewport.mjs.map +1 -1
- package/dist/esm/webViewport.native.js +29 -28
- package/dist/esm/webViewport.native.js.map +1 -1
- package/dist/jsx/GestureSheetContext.mjs +15 -20
- package/dist/jsx/GestureSheetContext.mjs.map +1 -1
- package/dist/jsx/GestureSheetContext.native.cjs +48 -0
- package/dist/jsx/GestureSheetContext.native.js +29 -37
- package/dist/jsx/GestureSheetContext.native.js.map +1 -1
- package/dist/jsx/Sheet.mjs +207 -83
- package/dist/jsx/Sheet.mjs.map +1 -1
- package/dist/jsx/Sheet.native.cjs +245 -0
- package/dist/jsx/Sheet.native.js +223 -98
- package/dist/jsx/Sheet.native.js.map +1 -1
- package/dist/jsx/SheetContext.mjs +21 -5
- package/dist/jsx/SheetContext.mjs.map +1 -1
- package/dist/jsx/SheetContext.native.cjs +57 -0
- package/dist/jsx/SheetContext.native.js +44 -22
- package/dist/jsx/SheetContext.native.js.map +1 -1
- package/dist/jsx/SheetController.mjs +34 -30
- package/dist/jsx/SheetController.mjs.map +1 -1
- package/dist/jsx/SheetController.native.cjs +71 -0
- package/dist/jsx/SheetController.native.js +52 -58
- package/dist/jsx/SheetController.native.js.map +1 -1
- package/dist/jsx/SheetDragSurface.mjs +25 -0
- package/dist/jsx/SheetDragSurface.mjs.map +1 -0
- package/dist/jsx/SheetDragSurface.native.cjs +61 -0
- package/dist/jsx/SheetDragSurface.native.js +63 -0
- package/dist/jsx/SheetDragSurface.native.js.map +1 -0
- package/dist/jsx/SheetImplementationCustom.mjs +647 -586
- package/dist/jsx/SheetImplementationCustom.mjs.map +1 -1
- package/dist/jsx/SheetImplementationCustom.native.cjs +748 -0
- package/dist/jsx/SheetImplementationCustom.native.js +704 -649
- package/dist/jsx/SheetImplementationCustom.native.js.map +1 -1
- package/dist/jsx/SheetScrollView.mjs +278 -288
- package/dist/jsx/SheetScrollView.mjs.map +1 -1
- package/dist/jsx/SheetScrollView.native.cjs +326 -0
- package/dist/jsx/SheetScrollView.native.js +299 -319
- package/dist/jsx/SheetScrollView.native.js.map +1 -1
- package/dist/jsx/constants.mjs +5 -3
- package/dist/jsx/constants.mjs.map +1 -1
- package/dist/jsx/constants.native.cjs +36 -0
- package/dist/jsx/constants.native.js +21 -20
- package/dist/jsx/constants.native.js.map +1 -1
- package/dist/jsx/contexts.mjs +3 -3
- package/dist/jsx/contexts.mjs.map +1 -1
- package/dist/jsx/contexts.native.cjs +37 -0
- package/dist/jsx/contexts.native.js +19 -27
- package/dist/jsx/contexts.native.js.map +1 -1
- package/dist/jsx/controller.mjs +2 -2
- package/dist/jsx/controller.native.cjs +31 -0
- package/dist/jsx/controller.native.js +16 -17
- package/dist/jsx/controller.native.js.map +1 -1
- package/dist/jsx/gestureState.mjs +13 -11
- package/dist/jsx/gestureState.mjs.map +1 -1
- package/dist/jsx/gestureState.native.cjs +53 -0
- package/dist/jsx/gestureState.native.js +29 -30
- package/dist/jsx/gestureState.native.js.map +1 -1
- package/dist/jsx/helpers.mjs +7 -6
- package/dist/jsx/helpers.mjs.map +1 -1
- package/dist/jsx/helpers.native.cjs +34 -0
- package/dist/jsx/helpers.native.js +21 -24
- package/dist/jsx/helpers.native.js.map +1 -1
- package/dist/jsx/index.js +21 -14
- package/dist/jsx/index.mjs +21 -14
- package/dist/jsx/index.native.cjs +36 -0
- package/dist/jsx/index.native.js +15 -21
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/keyboardAvoidance.mjs +40 -61
- package/dist/jsx/keyboardAvoidance.mjs.map +1 -1
- package/dist/jsx/keyboardAvoidance.native.cjs +74 -0
- package/dist/jsx/keyboardAvoidance.native.js +55 -78
- package/dist/jsx/keyboardAvoidance.native.js.map +1 -1
- package/dist/jsx/nativeSheet.mjs +4 -70
- package/dist/jsx/nativeSheet.mjs.map +1 -1
- package/dist/jsx/nativeSheet.native.cjs +94 -0
- package/dist/jsx/nativeSheet.native.js +73 -86
- package/dist/jsx/nativeSheet.native.js.map +1 -1
- package/dist/jsx/stableViewportHeight.mjs +8 -0
- package/dist/jsx/stableViewportHeight.mjs.map +1 -0
- package/dist/jsx/stableViewportHeight.native.cjs +29 -0
- package/dist/jsx/stableViewportHeight.native.js +31 -0
- package/dist/jsx/stableViewportHeight.native.js.map +1 -0
- package/dist/jsx/types.mjs +0 -2
- package/dist/jsx/types.native.cjs +18 -0
- package/dist/jsx/types.native.js +9 -10
- package/dist/jsx/types.native.js.map +1 -1
- package/dist/jsx/useGestureHandlerPan.mjs +232 -239
- package/dist/jsx/useGestureHandlerPan.mjs.map +1 -1
- package/dist/jsx/useGestureHandlerPan.native.cjs +272 -0
- package/dist/jsx/useGestureHandlerPan.native.js +253 -265
- package/dist/jsx/useGestureHandlerPan.native.js.map +1 -1
- package/dist/jsx/useKeyboardControllerSheet.mjs +71 -71
- package/dist/jsx/useKeyboardControllerSheet.mjs.map +1 -1
- package/dist/jsx/useKeyboardControllerSheet.native.cjs +92 -0
- package/dist/jsx/useKeyboardControllerSheet.native.js +73 -111
- package/dist/jsx/useKeyboardControllerSheet.native.js.map +1 -1
- package/dist/jsx/useSafeAreaInsets.mjs +3 -1
- package/dist/jsx/useSafeAreaInsets.mjs.map +1 -1
- package/dist/jsx/useSafeAreaInsets.native.cjs +50 -0
- package/dist/jsx/useSafeAreaInsets.native.js +29 -25
- package/dist/jsx/useSafeAreaInsets.native.js.map +1 -1
- package/dist/jsx/useSheetController.mjs +14 -12
- package/dist/jsx/useSheetController.mjs.map +1 -1
- package/dist/jsx/useSheetController.native.cjs +41 -0
- package/dist/jsx/useSheetController.native.js +27 -39
- package/dist/jsx/useSheetController.native.js.map +1 -1
- package/dist/jsx/useSheetOffscreenSize.mjs +30 -35
- package/dist/jsx/useSheetOffscreenSize.mjs.map +1 -1
- package/dist/jsx/useSheetOffscreenSize.native.cjs +59 -0
- package/dist/jsx/useSheetOffscreenSize.native.js +47 -56
- package/dist/jsx/useSheetOffscreenSize.native.js.map +1 -1
- package/dist/jsx/useSheetOpenState.mjs +50 -22
- package/dist/jsx/useSheetOpenState.mjs.map +1 -1
- package/dist/jsx/useSheetOpenState.native.cjs +87 -0
- package/dist/jsx/useSheetOpenState.native.js +73 -42
- package/dist/jsx/useSheetOpenState.native.js.map +1 -1
- package/dist/jsx/useSheetProviderProps.mjs +130 -138
- package/dist/jsx/useSheetProviderProps.mjs.map +1 -1
- package/dist/jsx/useSheetProviderProps.native.cjs +175 -0
- package/dist/jsx/useSheetProviderProps.native.js +155 -174
- package/dist/jsx/useSheetProviderProps.native.js.map +1 -1
- package/dist/jsx/useSheetScrollViewGestures.mjs +159 -162
- package/dist/jsx/useSheetScrollViewGestures.mjs.map +1 -1
- package/dist/jsx/useSheetScrollViewGestures.native.cjs +149 -0
- package/dist/jsx/useSheetScrollViewGestures.native.js +135 -147
- package/dist/jsx/useSheetScrollViewGestures.native.js.map +1 -1
- package/dist/jsx/webViewport.mjs +26 -25
- package/dist/jsx/webViewport.mjs.map +1 -1
- package/dist/jsx/webViewport.native.cjs +78 -0
- package/dist/jsx/webViewport.native.js +49 -50
- package/dist/jsx/webViewport.native.js.map +1 -1
- package/package.json +38 -40
- package/src/Sheet.tsx +314 -77
- package/src/SheetContext.tsx +57 -7
- package/src/SheetController.tsx +7 -6
- package/src/SheetDragSurface.native.tsx +42 -0
- package/src/SheetDragSurface.tsx +40 -0
- package/src/SheetImplementationCustom.tsx +364 -181
- package/src/SheetScrollView.tsx +36 -20
- package/src/constants.tsx +3 -3
- package/src/helpers.tsx +0 -14
- package/src/index.ts +3 -6
- package/src/{nativeSheet.tsx → nativeSheet.native.tsx} +9 -20
- package/src/nativeSheet.ts +19 -0
- package/src/stableViewportHeight.native.ts +9 -0
- package/src/stableViewportHeight.ts +15 -0
- package/src/types.tsx +122 -92
- package/src/useKeyboardControllerSheet.native.ts +10 -39
- package/src/useSafeAreaInsets.native.ts +20 -13
- package/src/useSheetController.tsx +15 -7
- package/src/useSheetOpenState.tsx +50 -4
- package/src/useSheetProviderProps.tsx +4 -27
- package/src/useSheetScrollViewGestures.ts +2 -2
- package/types/GestureSheetContext.d.ts +1 -1
- package/types/GestureSheetContext.d.ts.map +1 -1
- package/types/Sheet.d.ts +247 -151
- package/types/Sheet.d.ts.map +1 -1
- package/types/SheetContext.d.ts +28 -42
- package/types/SheetContext.d.ts.map +1 -1
- package/types/SheetController.d.ts +4 -2
- package/types/SheetController.d.ts.map +1 -1
- package/types/SheetDragSurface.d.ts +11 -0
- package/types/SheetDragSurface.d.ts.map +1 -0
- package/types/SheetDragSurface.native.d.ts +11 -0
- package/types/SheetDragSurface.native.d.ts.map +1 -0
- package/types/SheetImplementationCustom.d.ts +4 -36
- package/types/SheetImplementationCustom.d.ts.map +1 -1
- package/types/SheetScrollView.d.ts +21 -38
- package/types/SheetScrollView.d.ts.map +1 -1
- package/types/constants.d.ts +3 -2
- package/types/constants.d.ts.map +1 -1
- package/types/index.d.ts +1 -3
- package/types/index.d.ts.map +1 -1
- package/types/nativeSheet.d.ts +8 -8
- package/types/nativeSheet.d.ts.map +1 -1
- package/types/nativeSheet.native.d.ts +5 -0
- package/types/nativeSheet.native.d.ts.map +1 -0
- package/types/stableViewportHeight.d.ts +12 -0
- package/types/stableViewportHeight.d.ts.map +1 -0
- package/types/stableViewportHeight.native.d.ts +6 -0
- package/types/stableViewportHeight.native.d.ts.map +1 -0
- package/types/types.d.ts +43 -17
- package/types/types.d.ts.map +1 -1
- package/types/useKeyboardControllerSheet.native.d.ts +6 -6
- package/types/useKeyboardControllerSheet.native.d.ts.map +1 -1
- package/types/useSafeAreaInsets.native.d.ts +4 -12
- package/types/useSafeAreaInsets.native.d.ts.map +1 -1
- package/types/useSheetController.d.ts +6 -6
- package/types/useSheetController.d.ts.map +1 -1
- package/types/useSheetOffscreenSize.d.ts.map +1 -1
- package/types/useSheetOpenState.d.ts +3 -2
- package/types/useSheetOpenState.d.ts.map +1 -1
- package/types/useSheetProviderProps.d.ts +5 -8
- package/types/useSheetProviderProps.d.ts.map +1 -1
- package/types/useSheetScrollViewGestures.d.ts +2 -2
- package/types/useSheetScrollViewGestures.d.ts.map +1 -1
- package/.turbo/turbo-build.log +0 -2
- package/controller/index.cjs +0 -2
- package/controller/index.d.ts +0 -5
- package/controller/index.js +0 -2
- package/controller/index.native.cjs +0 -2
- package/controller/index.native.js +0 -2
- package/dist/cjs/GestureDetectorWrapper.cjs +0 -54
- package/dist/cjs/GestureDetectorWrapper.native.js +0 -58
- package/dist/cjs/GestureDetectorWrapper.native.js.map +0 -1
- package/dist/cjs/createSheet.cjs +0 -194
- package/dist/cjs/createSheet.native.js +0 -204
- package/dist/cjs/createSheet.native.js.map +0 -1
- package/dist/cjs/setupGestureHandler.cjs +0 -55
- package/dist/cjs/setupGestureHandler.native.js +0 -60
- package/dist/cjs/setupGestureHandler.native.js.map +0 -1
- package/dist/cjs/useSheet.cjs +0 -29
- package/dist/cjs/useSheet.native.js +0 -34
- package/dist/cjs/useSheet.native.js.map +0 -1
- package/dist/esm/GestureDetectorWrapper.mjs +0 -29
- package/dist/esm/GestureDetectorWrapper.mjs.map +0 -1
- package/dist/esm/GestureDetectorWrapper.native.js +0 -30
- package/dist/esm/GestureDetectorWrapper.native.js.map +0 -1
- package/dist/esm/controller.mjs.map +0 -1
- package/dist/esm/controller.native.js.map +0 -1
- package/dist/esm/createSheet.mjs +0 -168
- package/dist/esm/createSheet.mjs.map +0 -1
- package/dist/esm/createSheet.native.js +0 -176
- package/dist/esm/createSheet.native.js.map +0 -1
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/index.mjs.map +0 -1
- package/dist/esm/index.native.js.map +0 -1
- package/dist/esm/setupGestureHandler.mjs +0 -29
- package/dist/esm/setupGestureHandler.mjs.map +0 -1
- package/dist/esm/setupGestureHandler.native.js +0 -31
- package/dist/esm/setupGestureHandler.native.js.map +0 -1
- package/dist/esm/types.mjs.map +0 -1
- package/dist/esm/types.native.js.map +0 -1
- package/dist/esm/useSheet.mjs +0 -4
- package/dist/esm/useSheet.mjs.map +0 -1
- package/dist/esm/useSheet.native.js +0 -6
- package/dist/esm/useSheet.native.js.map +0 -1
- package/dist/jsx/GestureDetectorWrapper.mjs +0 -29
- package/dist/jsx/GestureDetectorWrapper.mjs.map +0 -1
- package/dist/jsx/GestureDetectorWrapper.native.js +0 -58
- package/dist/jsx/GestureDetectorWrapper.native.js.map +0 -1
- package/dist/jsx/controller.mjs.map +0 -1
- package/dist/jsx/createSheet.mjs +0 -168
- package/dist/jsx/createSheet.mjs.map +0 -1
- package/dist/jsx/createSheet.native.js +0 -204
- package/dist/jsx/createSheet.native.js.map +0 -1
- package/dist/jsx/index.js.map +0 -1
- package/dist/jsx/index.mjs.map +0 -1
- package/dist/jsx/setupGestureHandler.mjs +0 -29
- package/dist/jsx/setupGestureHandler.mjs.map +0 -1
- package/dist/jsx/setupGestureHandler.native.js +0 -60
- package/dist/jsx/setupGestureHandler.native.js.map +0 -1
- package/dist/jsx/types.mjs.map +0 -1
- package/dist/jsx/useSheet.mjs +0 -4
- package/dist/jsx/useSheet.mjs.map +0 -1
- package/dist/jsx/useSheet.native.js +0 -34
- package/dist/jsx/useSheet.native.js.map +0 -1
- package/next.md +0 -78
- package/setup-gesture-handler/index.cjs +0 -2
- package/setup-gesture-handler/index.js +0 -2
- package/setup-gesture-handler/index.native.cjs +0 -2
- package/setup-gesture-handler/index.native.js +0 -2
- package/setup-gesture-handler.cjs +0 -1
- package/src/GestureDetectorWrapper.tsx +0 -38
- package/src/createSheet.tsx +0 -309
- package/src/setupGestureHandler.ts +0 -43
- package/src/useSheet.tsx +0 -3
- package/test/keyboardAvoidance.test.ts +0 -269
- package/tsconfig.json +0 -57
- package/types/GestureDetectorWrapper.d.ts +0 -14
- package/types/GestureDetectorWrapper.d.ts.map +0 -1
- package/types/createSheet.d.ts +0 -195
- package/types/createSheet.d.ts.map +0 -1
- package/types/setupGestureHandler.d.ts +0 -11
- package/types/setupGestureHandler.d.ts.map +0 -1
- package/types/useSheet.d.ts +0 -2
- package/types/useSheet.d.ts.map +0 -1
|
@@ -1,42 +1,37 @@
|
|
|
1
|
-
var useSheetOffscreenSize = function
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
var currentSize1 = typeof currentSnapPoint === "string" ? Number(currentSnapPoint.slice(0, -1)) / 100 * screenSize : currentSnapPoint;
|
|
35
|
-
var offscreenSize2 = maxSize1 - currentSize1;
|
|
36
|
-
if (Number.isNaN(offscreenSize2)) {
|
|
37
|
-
return 0;
|
|
38
|
-
}
|
|
39
|
-
return offscreenSize2;
|
|
1
|
+
var useSheetOffscreenSize = function(param) {
|
|
2
|
+
var { snapPoints, position, screenSize, frameSize, snapPointsMode } = param;
|
|
3
|
+
if (snapPointsMode === "fit") {
|
|
4
|
+
return 0;
|
|
5
|
+
}
|
|
6
|
+
if (snapPointsMode === "constant") {
|
|
7
|
+
var maxSize = Number(snapPoints[0]);
|
|
8
|
+
var _snapPoints_position;
|
|
9
|
+
var currentSize = Number((_snapPoints_position = snapPoints[position]) !== null && _snapPoints_position !== void 0 ? _snapPoints_position : 0);
|
|
10
|
+
var offscreenSize = maxSize - currentSize;
|
|
11
|
+
return offscreenSize;
|
|
12
|
+
}
|
|
13
|
+
if (snapPointsMode === "percent") {
|
|
14
|
+
var maxPercentOpened = Number(snapPoints[0]) / 100;
|
|
15
|
+
var _snapPoints_position1;
|
|
16
|
+
var percentOpened = Number((_snapPoints_position1 = snapPoints[position]) !== null && _snapPoints_position1 !== void 0 ? _snapPoints_position1 : 0) / 100;
|
|
17
|
+
var percentHidden = maxPercentOpened - percentOpened;
|
|
18
|
+
var offscreenSize1 = percentHidden * screenSize;
|
|
19
|
+
return offscreenSize1;
|
|
20
|
+
}
|
|
21
|
+
var maxSnapPoint = snapPoints[0];
|
|
22
|
+
if (maxSnapPoint === "fit") {
|
|
23
|
+
return 0;
|
|
24
|
+
}
|
|
25
|
+
var maxSize1 = typeof maxSnapPoint === "string" ? Number(maxSnapPoint.slice(0, -1)) / 100 * screenSize : maxSnapPoint;
|
|
26
|
+
var _snapPoints_position2;
|
|
27
|
+
var currentSnapPoint = (_snapPoints_position2 = snapPoints[position]) !== null && _snapPoints_position2 !== void 0 ? _snapPoints_position2 : 0;
|
|
28
|
+
var currentSize1 = typeof currentSnapPoint === "string" ? Number(currentSnapPoint.slice(0, -1)) / 100 * screenSize : currentSnapPoint;
|
|
29
|
+
var offscreenSize2 = maxSize1 - currentSize1;
|
|
30
|
+
if (Number.isNaN(offscreenSize2)) {
|
|
31
|
+
return 0;
|
|
32
|
+
}
|
|
33
|
+
return offscreenSize2;
|
|
40
34
|
};
|
|
35
|
+
|
|
41
36
|
export { useSheetOffscreenSize };
|
|
42
37
|
//# sourceMappingURL=useSheetOffscreenSize.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"useSheetOffscreenSize.native.js","names":[],"sources":["esm/useSheetOffscreenSize.native.js"],"sourcesContent":["var useSheetOffscreenSize = function(param) {\n var { snapPoints, position, screenSize, frameSize, snapPointsMode } = param;\n if (snapPointsMode === \"fit\") {\n return 0;\n }\n if (snapPointsMode === \"constant\") {\n var maxSize = Number(snapPoints[0]);\n var _snapPoints_position;\n var currentSize = Number((_snapPoints_position = snapPoints[position]) !== null && _snapPoints_position !== void 0 ? _snapPoints_position : 0);\n var offscreenSize = maxSize - currentSize;\n return offscreenSize;\n }\n if (snapPointsMode === \"percent\") {\n var maxPercentOpened = Number(snapPoints[0]) / 100;\n var _snapPoints_position1;\n var percentOpened = Number((_snapPoints_position1 = snapPoints[position]) !== null && _snapPoints_position1 !== void 0 ? _snapPoints_position1 : 0) / 100;\n var percentHidden = maxPercentOpened - percentOpened;\n var offscreenSize1 = percentHidden * screenSize;\n return offscreenSize1;\n }\n var maxSnapPoint = snapPoints[0];\n if (maxSnapPoint === \"fit\") {\n return 0;\n }\n var maxSize1 = typeof maxSnapPoint === \"string\" ? Number(maxSnapPoint.slice(0, -1)) / 100 * screenSize : maxSnapPoint;\n var _snapPoints_position2;\n var currentSnapPoint = (_snapPoints_position2 = snapPoints[position]) !== null && _snapPoints_position2 !== void 0 ? _snapPoints_position2 : 0;\n var currentSize1 = typeof currentSnapPoint === \"string\" ? Number(currentSnapPoint.slice(0, -1)) / 100 * screenSize : currentSnapPoint;\n var offscreenSize2 = maxSize1 - currentSize1;\n if (Number.isNaN(offscreenSize2)) {\n return 0;\n }\n return offscreenSize2;\n};\nexport {\n useSheetOffscreenSize\n};\n//# sourceMappingURL=useSheetOffscreenSize.js.map\n"],"mappings":";AAAA,IAAI,wBAAwB,SAAS,OAAO;CAC1C,IAAI,EAAE,YAAY,UAAU,YAAY,WAAW,mBAAmB;CACtE,IAAI,mBAAmB,OAAO;EAC5B,OAAO;CACT;CACA,IAAI,mBAAmB,YAAY;EACjC,IAAI,UAAU,OAAO,WAAW,EAAE;EAClC,IAAI;EACJ,IAAI,cAAc,QAAQ,uBAAuB,WAAW,eAAe,QAAQ,yBAAyB,KAAK,IAAI,uBAAuB,CAAC;EAC7I,IAAI,gBAAgB,UAAU;EAC9B,OAAO;CACT;CACA,IAAI,mBAAmB,WAAW;EAChC,IAAI,mBAAmB,OAAO,WAAW,EAAE,IAAI;EAC/C,IAAI;EACJ,IAAI,gBAAgB,QAAQ,wBAAwB,WAAW,eAAe,QAAQ,0BAA0B,KAAK,IAAI,wBAAwB,CAAC,IAAI;EACtJ,IAAI,gBAAgB,mBAAmB;EACvC,IAAI,iBAAiB,gBAAgB;EACrC,OAAO;CACT;CACA,IAAI,eAAe,WAAW;CAC9B,IAAI,iBAAiB,OAAO;EAC1B,OAAO;CACT;CACA,IAAI,WAAW,OAAO,iBAAiB,WAAW,OAAO,aAAa,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,MAAM,aAAa;CACzG,IAAI;CACJ,IAAI,oBAAoB,wBAAwB,WAAW,eAAe,QAAQ,0BAA0B,KAAK,IAAI,wBAAwB;CAC7I,IAAI,eAAe,OAAO,qBAAqB,WAAW,OAAO,iBAAiB,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,MAAM,aAAa;CACrH,IAAI,iBAAiB,WAAW;CAChC,IAAI,OAAO,MAAM,cAAc,GAAG;EAChC,OAAO;CACT;CACA,OAAO;AACT"}
|
|
@@ -1,27 +1,55 @@
|
|
|
1
|
+
import { useAdaptContext, useAdaptTarget } from "@tamagui/adapt";
|
|
2
|
+
import React from "react";
|
|
1
3
|
import { useControllableState } from "@tamagui/use-controllable-state";
|
|
2
4
|
import { useSheetController } from "./useSheetController.mjs";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
5
|
+
|
|
6
|
+
const useSheetOpenState = (props) => {
|
|
7
|
+
const adaptContext = useAdaptContext();
|
|
8
|
+
const adapt = useAdaptTarget();
|
|
9
|
+
const { isHidden: controllerIsHidden, controller: legacyController } = useSheetController(props.scope);
|
|
10
|
+
const shouldUseAdapt = Boolean(adaptContext.open !== void 0 || adaptContext.onOpenChange);
|
|
11
|
+
const isHidden = shouldUseAdapt ? !adaptContext.active : controllerIsHidden;
|
|
12
|
+
const wasHiddenRef = React.useRef(isHidden);
|
|
13
|
+
const controllerOpen = shouldUseAdapt ? Boolean(adaptContext.open) && !adaptContext.handoff.hidden : legacyController?.open;
|
|
14
|
+
const localSkipNextAnimation = Boolean(wasHiddenRef.current && !isHidden && controllerOpen);
|
|
15
|
+
const skipNextAnimation = (shouldUseAdapt ? adapt?.handoff.skipNextAnimation : void 0) ?? localSkipNextAnimation;
|
|
16
|
+
wasHiddenRef.current = isHidden;
|
|
17
|
+
const adaptController = React.useMemo(() => {
|
|
18
|
+
if (!adapt || !shouldUseAdapt) return null;
|
|
19
|
+
return {
|
|
20
|
+
open: adaptContext.open,
|
|
21
|
+
hidden: isHidden,
|
|
22
|
+
onOpenChange: adaptContext.active ? adaptContext.onOpenChange : void 0,
|
|
23
|
+
onTransition: adapt?.handoff.onTransition,
|
|
24
|
+
skipNextAnimation
|
|
25
|
+
};
|
|
26
|
+
}, [
|
|
27
|
+
adapt,
|
|
28
|
+
adaptContext,
|
|
29
|
+
isHidden,
|
|
30
|
+
shouldUseAdapt,
|
|
31
|
+
skipNextAnimation
|
|
32
|
+
]);
|
|
33
|
+
const controller = adaptController ?? legacyController;
|
|
34
|
+
const controllerOnOpenChange = (shouldUseAdapt && adaptContext.active ? adaptContext.onOpenChange : void 0) ?? legacyController?.onOpenChange;
|
|
35
|
+
const onOpenChangeInternal = (val) => {
|
|
36
|
+
controllerOnOpenChange?.(val);
|
|
37
|
+
props.onOpenChange?.(val);
|
|
38
|
+
};
|
|
39
|
+
const propVal = props.preferAdaptParentOpenState ? controllerOpen ?? props.open : props.open ?? controllerOpen;
|
|
40
|
+
const [open, setOpen] = useControllableState({
|
|
41
|
+
prop: propVal,
|
|
42
|
+
defaultProp: props.defaultOpen ?? false,
|
|
43
|
+
onChange: onOpenChangeInternal,
|
|
44
|
+
strategy: "most-recent-wins"
|
|
45
|
+
});
|
|
46
|
+
return {
|
|
47
|
+
open,
|
|
48
|
+
setOpen,
|
|
49
|
+
isHidden,
|
|
50
|
+
controller
|
|
51
|
+
};
|
|
25
52
|
};
|
|
53
|
+
|
|
26
54
|
export { useSheetOpenState };
|
|
27
55
|
//# sourceMappingURL=useSheetOpenState.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"useSheetOpenState.js","names":[],"sources":["esm/useSheetOpenState.js"],"sourcesContent":["import { useAdaptContext, useAdaptTarget } from \"@tamagui/adapt\";\nimport React from \"react\";\nimport { useControllableState } from \"@tamagui/use-controllable-state\";\nimport { useSheetController } from \"./useSheetController\";\nconst useSheetOpenState = (props) => {\n const adaptContext = useAdaptContext();\n const adapt = useAdaptTarget();\n const { isHidden: controllerIsHidden, controller: legacyController } = useSheetController(props.scope);\n const shouldUseAdapt = Boolean(\n adaptContext.open !== void 0 || adaptContext.onOpenChange\n );\n const isHidden = shouldUseAdapt ? !adaptContext.active : controllerIsHidden;\n const wasHiddenRef = React.useRef(isHidden);\n const controllerOpen = shouldUseAdapt ? Boolean(adaptContext.open) && !adaptContext.handoff.hidden : legacyController?.open;\n const localSkipNextAnimation = Boolean(\n wasHiddenRef.current && !isHidden && controllerOpen\n );\n const skipNextAnimation = (shouldUseAdapt ? adapt?.handoff.skipNextAnimation : void 0) ?? localSkipNextAnimation;\n wasHiddenRef.current = isHidden;\n const adaptController = React.useMemo(() => {\n if (!adapt || !shouldUseAdapt) return null;\n return {\n open: adaptContext.open,\n hidden: isHidden,\n onOpenChange: adaptContext.active ? adaptContext.onOpenChange : void 0,\n onTransition: adapt?.handoff.onTransition,\n skipNextAnimation\n };\n }, [adapt, adaptContext, isHidden, shouldUseAdapt, skipNextAnimation]);\n const controller = adaptController ?? legacyController;\n const controllerOnOpenChange = (shouldUseAdapt && adaptContext.active ? adaptContext.onOpenChange : void 0) ?? legacyController?.onOpenChange;\n const onOpenChangeInternal = (val) => {\n controllerOnOpenChange?.(val);\n props.onOpenChange?.(val);\n };\n const propVal = props.preferAdaptParentOpenState ? controllerOpen ?? props.open : props.open ?? controllerOpen;\n const [open, setOpen] = useControllableState({\n prop: propVal,\n defaultProp: props.defaultOpen ?? false,\n onChange: onOpenChangeInternal,\n strategy: \"most-recent-wins\"\n });\n return {\n open,\n setOpen,\n isHidden,\n controller\n };\n};\nexport {\n useSheetOpenState\n};\n//# sourceMappingURL=useSheetOpenState.js.map\n"],"mappings":";;;;;;AAIA,MAAM,qBAAqB,UAAU;CACnC,MAAM,eAAe,gBAAgB;CACrC,MAAM,QAAQ,eAAe;CAC7B,MAAM,EAAE,UAAU,oBAAoB,YAAY,qBAAqB,mBAAmB,MAAM,KAAK;CACrG,MAAM,iBAAiB,QACrB,aAAa,SAAS,KAAK,KAAK,aAAa,YAC/C;CACA,MAAM,WAAW,iBAAiB,CAAC,aAAa,SAAS;CACzD,MAAM,eAAe,MAAM,OAAO,QAAQ;CAC1C,MAAM,iBAAiB,iBAAiB,QAAQ,aAAa,IAAI,KAAK,CAAC,aAAa,QAAQ,SAAS,kBAAkB;CACvH,MAAM,yBAAyB,QAC7B,aAAa,WAAW,CAAC,YAAY,cACvC;CACA,MAAM,qBAAqB,iBAAiB,OAAO,QAAQ,oBAAoB,KAAK,MAAM;CAC1F,aAAa,UAAU;CACvB,MAAM,kBAAkB,MAAM,cAAc;EAC1C,IAAI,CAAC,SAAS,CAAC,gBAAgB,OAAO;EACtC,OAAO;GACL,MAAM,aAAa;GACnB,QAAQ;GACR,cAAc,aAAa,SAAS,aAAa,eAAe,KAAK;GACrE,cAAc,OAAO,QAAQ;GAC7B;EACF;CACF,GAAG;EAAC;EAAO;EAAc;EAAU;EAAgB;CAAiB,CAAC;CACrE,MAAM,aAAa,mBAAmB;CACtC,MAAM,0BAA0B,kBAAkB,aAAa,SAAS,aAAa,eAAe,KAAK,MAAM,kBAAkB;CACjI,MAAM,wBAAwB,QAAQ;EACpC,yBAAyB,GAAG;EAC5B,MAAM,eAAe,GAAG;CAC1B;CACA,MAAM,UAAU,MAAM,6BAA6B,kBAAkB,MAAM,OAAO,MAAM,QAAQ;CAChG,MAAM,CAAC,MAAM,WAAW,qBAAqB;EAC3C,MAAM;EACN,aAAa,MAAM,eAAe;EAClC,UAAU;EACV,UAAU;CACZ,CAAC;CACD,OAAO;EACL;EACA;EACA;EACA;CACF;AACF"}
|
|
@@ -1,30 +1,60 @@
|
|
|
1
|
+
import { useAdaptContext, useAdaptTarget } from "@tamagui/adapt";
|
|
2
|
+
import React from "react";
|
|
1
3
|
import { useControllableState } from "@tamagui/use-controllable-state";
|
|
2
4
|
import { useSheetController } from "./useSheetController.native.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
5
|
+
|
|
6
|
+
var useSheetOpenState = function(props) {
|
|
7
|
+
var adaptContext = useAdaptContext();
|
|
8
|
+
var adapt = useAdaptTarget();
|
|
9
|
+
var { isHidden: controllerIsHidden, controller: legacyController } = useSheetController(props.scope);
|
|
10
|
+
var shouldUseAdapt = Boolean(adaptContext.open !== void 0 || adaptContext.onOpenChange);
|
|
11
|
+
var isHidden = shouldUseAdapt ? !adaptContext.active : controllerIsHidden;
|
|
12
|
+
var wasHiddenRef = React.useRef(isHidden);
|
|
13
|
+
var controllerOpen = shouldUseAdapt ? Boolean(adaptContext.open) && !adaptContext.handoff.hidden : legacyController === null || legacyController === void 0 ? void 0 : legacyController.open;
|
|
14
|
+
var localSkipNextAnimation = Boolean(wasHiddenRef.current && !isHidden && controllerOpen);
|
|
15
|
+
var _ref;
|
|
16
|
+
var skipNextAnimation = (_ref = shouldUseAdapt ? adapt === null || adapt === void 0 ? void 0 : adapt.handoff.skipNextAnimation : void 0) !== null && _ref !== void 0 ? _ref : localSkipNextAnimation;
|
|
17
|
+
wasHiddenRef.current = isHidden;
|
|
18
|
+
var adaptController = React.useMemo(function() {
|
|
19
|
+
if (!adapt || !shouldUseAdapt) return null;
|
|
20
|
+
return {
|
|
21
|
+
open: adaptContext.open,
|
|
22
|
+
hidden: isHidden,
|
|
23
|
+
onOpenChange: adaptContext.active ? adaptContext.onOpenChange : void 0,
|
|
24
|
+
onTransition: adapt === null || adapt === void 0 ? void 0 : adapt.handoff.onTransition,
|
|
25
|
+
skipNextAnimation
|
|
26
|
+
};
|
|
27
|
+
}, [
|
|
28
|
+
adapt,
|
|
29
|
+
adaptContext,
|
|
30
|
+
isHidden,
|
|
31
|
+
shouldUseAdapt,
|
|
32
|
+
skipNextAnimation
|
|
33
|
+
]);
|
|
34
|
+
var controller = adaptController !== null && adaptController !== void 0 ? adaptController : legacyController;
|
|
35
|
+
var _ref1;
|
|
36
|
+
var controllerOnOpenChange = (_ref1 = shouldUseAdapt && adaptContext.active ? adaptContext.onOpenChange : void 0) !== null && _ref1 !== void 0 ? _ref1 : legacyController === null || legacyController === void 0 ? void 0 : legacyController.onOpenChange;
|
|
37
|
+
var onOpenChangeInternal = function(val) {
|
|
38
|
+
var _props_onOpenChange;
|
|
39
|
+
controllerOnOpenChange === null || controllerOnOpenChange === void 0 ? void 0 : controllerOnOpenChange(val);
|
|
40
|
+
(_props_onOpenChange = props.onOpenChange) === null || _props_onOpenChange === void 0 ? void 0 : _props_onOpenChange.call(props, val);
|
|
41
|
+
};
|
|
42
|
+
var _props_open;
|
|
43
|
+
var propVal = props.preferAdaptParentOpenState ? controllerOpen !== null && controllerOpen !== void 0 ? controllerOpen : props.open : (_props_open = props.open) !== null && _props_open !== void 0 ? _props_open : controllerOpen;
|
|
44
|
+
var _props_defaultOpen;
|
|
45
|
+
var [open, setOpen] = useControllableState({
|
|
46
|
+
prop: propVal,
|
|
47
|
+
defaultProp: (_props_defaultOpen = props.defaultOpen) !== null && _props_defaultOpen !== void 0 ? _props_defaultOpen : false,
|
|
48
|
+
onChange: onOpenChangeInternal,
|
|
49
|
+
strategy: "most-recent-wins"
|
|
50
|
+
});
|
|
51
|
+
return {
|
|
52
|
+
open,
|
|
53
|
+
setOpen,
|
|
54
|
+
isHidden,
|
|
55
|
+
controller
|
|
56
|
+
};
|
|
28
57
|
};
|
|
58
|
+
|
|
29
59
|
export { useSheetOpenState };
|
|
30
60
|
//# sourceMappingURL=useSheetOpenState.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"useSheetOpenState.native.js","names":[],"sources":["esm/useSheetOpenState.native.js"],"sourcesContent":["import { useAdaptContext, useAdaptTarget } from \"@tamagui/adapt\";\nimport React from \"react\";\nimport { useControllableState } from \"@tamagui/use-controllable-state\";\nimport { useSheetController } from \"./useSheetController\";\nvar useSheetOpenState = function(props) {\n var adaptContext = useAdaptContext();\n var adapt = useAdaptTarget();\n var { isHidden: controllerIsHidden, controller: legacyController } = useSheetController(props.scope);\n var shouldUseAdapt = Boolean(adaptContext.open !== void 0 || adaptContext.onOpenChange);\n var isHidden = shouldUseAdapt ? !adaptContext.active : controllerIsHidden;\n var wasHiddenRef = React.useRef(isHidden);\n var controllerOpen = shouldUseAdapt ? Boolean(adaptContext.open) && !adaptContext.handoff.hidden : legacyController === null || legacyController === void 0 ? void 0 : legacyController.open;\n var localSkipNextAnimation = Boolean(wasHiddenRef.current && !isHidden && controllerOpen);\n var _ref;\n var skipNextAnimation = (_ref = shouldUseAdapt ? adapt === null || adapt === void 0 ? void 0 : adapt.handoff.skipNextAnimation : void 0) !== null && _ref !== void 0 ? _ref : localSkipNextAnimation;\n wasHiddenRef.current = isHidden;\n var adaptController = React.useMemo(function() {\n if (!adapt || !shouldUseAdapt) return null;\n return {\n open: adaptContext.open,\n hidden: isHidden,\n onOpenChange: adaptContext.active ? adaptContext.onOpenChange : void 0,\n onTransition: adapt === null || adapt === void 0 ? void 0 : adapt.handoff.onTransition,\n skipNextAnimation\n };\n }, [\n adapt,\n adaptContext,\n isHidden,\n shouldUseAdapt,\n skipNextAnimation\n ]);\n var controller = adaptController !== null && adaptController !== void 0 ? adaptController : legacyController;\n var _ref1;\n var controllerOnOpenChange = (_ref1 = shouldUseAdapt && adaptContext.active ? adaptContext.onOpenChange : void 0) !== null && _ref1 !== void 0 ? _ref1 : legacyController === null || legacyController === void 0 ? void 0 : legacyController.onOpenChange;\n var onOpenChangeInternal = function(val) {\n var _props_onOpenChange;\n controllerOnOpenChange === null || controllerOnOpenChange === void 0 ? void 0 : controllerOnOpenChange(val);\n (_props_onOpenChange = props.onOpenChange) === null || _props_onOpenChange === void 0 ? void 0 : _props_onOpenChange.call(props, val);\n };\n var _props_open;\n var propVal = props.preferAdaptParentOpenState ? controllerOpen !== null && controllerOpen !== void 0 ? controllerOpen : props.open : (_props_open = props.open) !== null && _props_open !== void 0 ? _props_open : controllerOpen;\n var _props_defaultOpen;\n var [open, setOpen] = useControllableState({\n prop: propVal,\n defaultProp: (_props_defaultOpen = props.defaultOpen) !== null && _props_defaultOpen !== void 0 ? _props_defaultOpen : false,\n onChange: onOpenChangeInternal,\n strategy: \"most-recent-wins\"\n });\n return {\n open,\n setOpen,\n isHidden,\n controller\n };\n};\nexport {\n useSheetOpenState\n};\n//# sourceMappingURL=useSheetOpenState.js.map\n"],"mappings":";;;;;;AAIA,IAAI,oBAAoB,SAAS,OAAO;CACtC,IAAI,eAAe,gBAAgB;CACnC,IAAI,QAAQ,eAAe;CAC3B,IAAI,EAAE,UAAU,oBAAoB,YAAY,qBAAqB,mBAAmB,MAAM,KAAK;CACnG,IAAI,iBAAiB,QAAQ,aAAa,SAAS,KAAK,KAAK,aAAa,YAAY;CACtF,IAAI,WAAW,iBAAiB,CAAC,aAAa,SAAS;CACvD,IAAI,eAAe,MAAM,OAAO,QAAQ;CACxC,IAAI,iBAAiB,iBAAiB,QAAQ,aAAa,IAAI,KAAK,CAAC,aAAa,QAAQ,SAAS,qBAAqB,QAAQ,qBAAqB,KAAK,IAAI,KAAK,IAAI,iBAAiB;CACxL,IAAI,yBAAyB,QAAQ,aAAa,WAAW,CAAC,YAAY,cAAc;CACxF,IAAI;CACJ,IAAI,qBAAqB,OAAO,iBAAiB,UAAU,QAAQ,UAAU,KAAK,IAAI,KAAK,IAAI,MAAM,QAAQ,oBAAoB,KAAK,OAAO,QAAQ,SAAS,KAAK,IAAI,OAAO;CAC9K,aAAa,UAAU;CACvB,IAAI,kBAAkB,MAAM,QAAQ,WAAW;EAC7C,IAAI,CAAC,SAAS,CAAC,gBAAgB,OAAO;EACtC,OAAO;GACL,MAAM,aAAa;GACnB,QAAQ;GACR,cAAc,aAAa,SAAS,aAAa,eAAe,KAAK;GACrE,cAAc,UAAU,QAAQ,UAAU,KAAK,IAAI,KAAK,IAAI,MAAM,QAAQ;GAC1E;EACF;CACF,GAAG;EACD;EACA;EACA;EACA;EACA;CACF,CAAC;CACD,IAAI,aAAa,oBAAoB,QAAQ,oBAAoB,KAAK,IAAI,kBAAkB;CAC5F,IAAI;CACJ,IAAI,0BAA0B,QAAQ,kBAAkB,aAAa,SAAS,aAAa,eAAe,KAAK,OAAO,QAAQ,UAAU,KAAK,IAAI,QAAQ,qBAAqB,QAAQ,qBAAqB,KAAK,IAAI,KAAK,IAAI,iBAAiB;CAC9O,IAAI,uBAAuB,SAAS,KAAK;EACvC,IAAI;EACJ,2BAA2B,QAAQ,2BAA2B,KAAK,IAAI,KAAK,IAAI,uBAAuB,GAAG;EAC1G,CAAC,sBAAsB,MAAM,kBAAkB,QAAQ,wBAAwB,KAAK,IAAI,KAAK,IAAI,oBAAoB,KAAK,OAAO,GAAG;CACtI;CACA,IAAI;CACJ,IAAI,UAAU,MAAM,6BAA6B,mBAAmB,QAAQ,mBAAmB,KAAK,IAAI,iBAAiB,MAAM,QAAQ,cAAc,MAAM,UAAU,QAAQ,gBAAgB,KAAK,IAAI,cAAc;CACpN,IAAI;CACJ,IAAI,CAAC,MAAM,WAAW,qBAAqB;EACzC,MAAM;EACN,cAAc,qBAAqB,MAAM,iBAAiB,QAAQ,uBAAuB,KAAK,IAAI,qBAAqB;EACvH,UAAU;EACV,UAAU;CACZ,CAAC;CACD,OAAO;EACL;EACA;EACA;EACA;CACF;AACF"}
|
|
@@ -2,144 +2,136 @@ import React from "react";
|
|
|
2
2
|
import { useConfiguration } from "@tamagui/core";
|
|
3
3
|
import { useConstant } from "@tamagui/use-constant";
|
|
4
4
|
import { useControllableState } from "@tamagui/use-controllable-state";
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
position,
|
|
135
|
-
snapPoints,
|
|
136
|
-
snapPointsMode,
|
|
137
|
-
setMaxContentSize,
|
|
138
|
-
setPosition,
|
|
139
|
-
setPositionImmediate,
|
|
140
|
-
onlyShowFrame: false
|
|
141
|
-
};
|
|
142
|
-
return providerProps;
|
|
5
|
+
|
|
6
|
+
function useSheetProviderProps(props, state) {
|
|
7
|
+
const handleRef = React.useRef(null);
|
|
8
|
+
const contentRef = React.useRef(null);
|
|
9
|
+
const [frameSize, setFrameSize] = React.useState(0);
|
|
10
|
+
const [maxContentSize, setMaxContentSize] = React.useState(0);
|
|
11
|
+
const snapPointsMode = props.snapPointsMode ?? "percent";
|
|
12
|
+
const snapPointsProp = props.snapPoints ?? (snapPointsMode === "percent" ? [80] : snapPointsMode === "constant" ? [256] : ["fit"]);
|
|
13
|
+
const hasFit = snapPointsProp[0] === "fit";
|
|
14
|
+
const snapPoints = React.useMemo(() => props.dismissOnSnapToBottom ? [...snapPointsProp, 0] : snapPointsProp, [JSON.stringify(snapPointsProp), props.dismissOnSnapToBottom]);
|
|
15
|
+
const [position_, setPositionImmediate] = useControllableState({
|
|
16
|
+
prop: props.position,
|
|
17
|
+
defaultProp: props.defaultPosition || (state.open ? 0 : -1),
|
|
18
|
+
onChange: props.onPositionChange,
|
|
19
|
+
strategy: "most-recent-wins"
|
|
20
|
+
});
|
|
21
|
+
const position = state.open === false ? -1 : position_;
|
|
22
|
+
const { open } = state;
|
|
23
|
+
const setPosition = React.useCallback((next) => {
|
|
24
|
+
if (props.dismissOnSnapToBottom && next === snapPoints.length - 1) {
|
|
25
|
+
state.setOpen(false);
|
|
26
|
+
} else {
|
|
27
|
+
setPositionImmediate(next);
|
|
28
|
+
}
|
|
29
|
+
}, [
|
|
30
|
+
props.dismissOnSnapToBottom,
|
|
31
|
+
snapPoints.length,
|
|
32
|
+
setPositionImmediate,
|
|
33
|
+
state.setOpen
|
|
34
|
+
]);
|
|
35
|
+
if (process.env.NODE_ENV === "development") {
|
|
36
|
+
if (snapPointsMode === "mixed" && snapPoints.some((p) => {
|
|
37
|
+
if (typeof p === "string") {
|
|
38
|
+
if (p === "fit") {
|
|
39
|
+
return false;
|
|
40
|
+
}
|
|
41
|
+
if (p.endsWith("%")) {
|
|
42
|
+
const n = Number(p.slice(0, -1));
|
|
43
|
+
return n < 0 || n > 100;
|
|
44
|
+
}
|
|
45
|
+
return true;
|
|
46
|
+
}
|
|
47
|
+
return typeof p !== "number" || p < 0;
|
|
48
|
+
})) {
|
|
49
|
+
console.warn("⚠️ Invalid snapPoint given, snapPoints must be positive numeric values, string percentages between 0-100%, or \"fit\" when snapPointsMode is mixed");
|
|
50
|
+
}
|
|
51
|
+
if (snapPointsMode === "mixed" && snapPoints.indexOf("fit") > 0) {
|
|
52
|
+
console.warn("⚠️ Invalid snapPoint given, \"fit\" must be the first/largest snap point when snapPointsMode is mixed");
|
|
53
|
+
}
|
|
54
|
+
if (snapPointsMode === "fit" && (snapPoints.length !== (props.dismissOnSnapToBottom ? 2 : 1) || snapPoints[0] !== "fit")) {
|
|
55
|
+
console.warn("⚠️ Invalid snapPoint given, there are no snap points when snapPointsMode is fit");
|
|
56
|
+
}
|
|
57
|
+
if (snapPointsMode === "constant" && snapPoints.some((p) => typeof p !== "number" || p < 0)) {
|
|
58
|
+
console.warn("⚠️ Invalid snapPoint given, snapPoints must be positive numeric values when snapPointsMode is constant");
|
|
59
|
+
}
|
|
60
|
+
if (snapPointsMode === "percent" && snapPoints.some((p) => typeof p !== "number" || p < 0 || p > 100)) {
|
|
61
|
+
console.warn("⚠️ Invalid snapPoint given, snapPoints must be numeric values between 0 and 100 when snapPointsMode is percent");
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
if (open && props.dismissOnSnapToBottom && position === snapPoints.length - 1) {
|
|
65
|
+
setPositionImmediate(0);
|
|
66
|
+
}
|
|
67
|
+
const shouldSetPositionOpen = open && position < 0;
|
|
68
|
+
React.useEffect(() => {
|
|
69
|
+
if (shouldSetPositionOpen) {
|
|
70
|
+
setPosition(0);
|
|
71
|
+
}
|
|
72
|
+
}, [setPosition, shouldSetPositionOpen]);
|
|
73
|
+
const { animationDriver } = useConfiguration();
|
|
74
|
+
if (!animationDriver) {
|
|
75
|
+
throw new Error(process.env.NODE_ENV === "production" ? `\u274C 008` : "Must set animations in tamagui.config.ts");
|
|
76
|
+
}
|
|
77
|
+
const scrollBridge = useConstant(() => {
|
|
78
|
+
const parentDragListeners = /* @__PURE__ */ new Set();
|
|
79
|
+
const bridge = {
|
|
80
|
+
hasScrollableContent: false,
|
|
81
|
+
enabled: false,
|
|
82
|
+
y: 0,
|
|
83
|
+
paneY: 0,
|
|
84
|
+
paneMinY: 0,
|
|
85
|
+
scrollStartY: -1,
|
|
86
|
+
drag: () => {},
|
|
87
|
+
release: () => {},
|
|
88
|
+
scrollLock: false,
|
|
89
|
+
isParentDragging: false,
|
|
90
|
+
onParentDragging: (cb) => {
|
|
91
|
+
parentDragListeners.add(cb);
|
|
92
|
+
return () => {
|
|
93
|
+
parentDragListeners.delete(cb);
|
|
94
|
+
};
|
|
95
|
+
},
|
|
96
|
+
setParentDragging: (val) => {
|
|
97
|
+
if (val !== bridge.isParentDragging) {
|
|
98
|
+
bridge.isParentDragging = val;
|
|
99
|
+
parentDragListeners.forEach((cb) => cb(val));
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
};
|
|
103
|
+
return bridge;
|
|
104
|
+
});
|
|
105
|
+
const disableRemoveScroll = props.disableRemoveScroll || !open || !props.modal;
|
|
106
|
+
const maxSnapPoint = snapPoints[0];
|
|
107
|
+
const screenSize = snapPointsMode === "percent" ? frameSize / ((typeof maxSnapPoint === "number" ? maxSnapPoint : 100) / 100) : maxContentSize;
|
|
108
|
+
const providerProps = {
|
|
109
|
+
screenSize,
|
|
110
|
+
maxSnapPoint,
|
|
111
|
+
disableRemoveScroll,
|
|
112
|
+
scrollBridge,
|
|
113
|
+
modal: !!props.modal,
|
|
114
|
+
open: state.open,
|
|
115
|
+
setOpen: state.setOpen,
|
|
116
|
+
hidden: !!state.isHidden,
|
|
117
|
+
contentRef,
|
|
118
|
+
handleRef,
|
|
119
|
+
frameSize,
|
|
120
|
+
setFrameSize,
|
|
121
|
+
dismissOnOverlayPress: props.dismissOnOverlayPress ?? true,
|
|
122
|
+
dismissOnSnapToBottom: props.dismissOnSnapToBottom ?? false,
|
|
123
|
+
scope: props.scope ?? "",
|
|
124
|
+
hasFit,
|
|
125
|
+
position,
|
|
126
|
+
snapPoints,
|
|
127
|
+
snapPointsMode,
|
|
128
|
+
setMaxContentSize,
|
|
129
|
+
setPosition,
|
|
130
|
+
setPositionImmediate,
|
|
131
|
+
onlyShowContainer: false
|
|
132
|
+
};
|
|
133
|
+
return providerProps;
|
|
143
134
|
}
|
|
135
|
+
|
|
144
136
|
export { useSheetProviderProps };
|
|
145
137
|
//# sourceMappingURL=useSheetProviderProps.mjs.map
|