@hanzogui/sheet 3.0.2 → 7.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +40 -19
- package/dist/cjs/GestureDetectorWrapper.cjs +27 -21
- package/dist/cjs/GestureDetectorWrapper.native.js +33 -28
- package/dist/cjs/GestureDetectorWrapper.native.js.map +1 -1
- package/dist/cjs/GestureSheetContext.cjs +14 -12
- package/dist/cjs/GestureSheetContext.native.js +29 -27
- package/dist/cjs/GestureSheetContext.native.js.map +1 -1
- package/dist/cjs/Sheet.cjs +89 -87
- package/dist/cjs/Sheet.native.js +89 -87
- package/dist/cjs/Sheet.native.js.map +1 -1
- package/dist/cjs/SheetContext.cjs +16 -14
- package/dist/cjs/SheetContext.native.js +16 -14
- package/dist/cjs/SheetContext.native.js.map +1 -1
- package/dist/cjs/SheetController.cjs +40 -32
- package/dist/cjs/SheetController.native.js +62 -54
- package/dist/cjs/SheetController.native.js.map +1 -1
- package/dist/cjs/SheetImplementationCustom.cjs +544 -427
- package/dist/cjs/SheetImplementationCustom.native.js +567 -476
- package/dist/cjs/SheetImplementationCustom.native.js.map +1 -1
- package/dist/cjs/SheetScrollView.cjs +169 -133
- package/dist/cjs/SheetScrollView.native.js +189 -163
- package/dist/cjs/SheetScrollView.native.js.map +1 -1
- package/dist/cjs/constants.cjs +16 -14
- package/dist/cjs/constants.native.js +16 -14
- package/dist/cjs/constants.native.js.map +1 -1
- package/dist/cjs/contexts.cjs +27 -25
- package/dist/cjs/contexts.native.js +29 -27
- package/dist/cjs/contexts.native.js.map +1 -1
- package/dist/cjs/controller.cjs +14 -12
- package/dist/cjs/controller.native.js +14 -12
- package/dist/cjs/controller.native.js.map +1 -1
- package/dist/cjs/createSheet.cjs +160 -161
- package/dist/cjs/createSheet.native.js +173 -181
- package/dist/cjs/createSheet.native.js.map +1 -1
- package/dist/cjs/gestureState.cjs +16 -14
- package/dist/cjs/gestureState.native.js +16 -14
- package/dist/cjs/gestureState.native.js.map +1 -1
- package/dist/cjs/helpers.cjs +17 -13
- package/dist/cjs/helpers.native.js +17 -13
- package/dist/cjs/helpers.native.js.map +1 -1
- package/dist/cjs/index.cjs +7 -5
- package/dist/cjs/index.native.js +7 -5
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/nativeSheet.cjs +64 -55
- package/dist/cjs/nativeSheet.native.js +73 -68
- package/dist/cjs/nativeSheet.native.js.map +1 -1
- package/dist/cjs/setupGestureHandler.cjs +26 -20
- package/dist/cjs/setupGestureHandler.native.js +26 -21
- package/dist/cjs/setupGestureHandler.native.js.map +1 -1
- package/dist/cjs/types.cjs +7 -5
- package/dist/cjs/types.native.js +7 -5
- package/dist/cjs/types.native.js.map +1 -1
- package/dist/cjs/useGestureHandlerPan.cjs +181 -111
- package/dist/cjs/useGestureHandlerPan.native.js +183 -115
- package/dist/cjs/useGestureHandlerPan.native.js.map +1 -1
- package/dist/cjs/useKeyboardControllerSheet.cjs +15 -13
- package/dist/cjs/useKeyboardControllerSheet.native.js +100 -82
- package/dist/cjs/useKeyboardControllerSheet.native.js.map +1 -1
- package/dist/cjs/useSheet.cjs +12 -10
- package/dist/cjs/useSheet.native.js +16 -14
- package/dist/cjs/useSheet.native.js.map +1 -1
- package/dist/cjs/useSheetController.cjs +35 -33
- package/dist/cjs/useSheetController.native.js +37 -35
- package/dist/cjs/useSheetController.native.js.map +1 -1
- package/dist/cjs/useSheetOffscreenSize.cjs +35 -23
- package/dist/cjs/useSheetOffscreenSize.native.js +36 -27
- package/dist/cjs/useSheetOffscreenSize.native.js.map +1 -1
- package/dist/cjs/useSheetOpenState.cjs +28 -25
- package/dist/cjs/useSheetOpenState.native.js +39 -37
- package/dist/cjs/useSheetOpenState.native.js.map +1 -1
- package/dist/cjs/useSheetProviderProps.cjs +131 -83
- package/dist/cjs/useSheetProviderProps.native.js +167 -124
- package/dist/cjs/useSheetProviderProps.native.js.map +1 -1
- package/dist/cjs/useSheetScrollViewGestures.cjs +124 -81
- package/dist/cjs/useSheetScrollViewGestures.native.js +128 -79
- package/dist/cjs/useSheetScrollViewGestures.native.js.map +1 -1
- package/dist/esm/GestureDetectorWrapper.mjs +12 -8
- package/dist/esm/GestureDetectorWrapper.mjs.map +1 -1
- package/dist/esm/GestureDetectorWrapper.native.js +18 -15
- package/dist/esm/GestureDetectorWrapper.native.js.map +1 -1
- package/dist/esm/GestureSheetContext.native.js +14 -14
- package/dist/esm/GestureSheetContext.native.js.map +1 -1
- package/dist/esm/Sheet.mjs +70 -70
- package/dist/esm/Sheet.mjs.map +1 -1
- package/dist/esm/Sheet.native.js +70 -70
- package/dist/esm/Sheet.native.js.map +1 -1
- package/dist/esm/SheetContext.mjs +2 -2
- package/dist/esm/SheetContext.mjs.map +1 -1
- package/dist/esm/SheetContext.native.js +2 -2
- package/dist/esm/SheetContext.native.js.map +1 -1
- package/dist/esm/SheetController.mjs +12 -6
- package/dist/esm/SheetController.mjs.map +1 -1
- package/dist/esm/SheetController.native.js +18 -12
- package/dist/esm/SheetController.native.js.map +1 -1
- package/dist/esm/SheetImplementationCustom.mjs +501 -386
- package/dist/esm/SheetImplementationCustom.mjs.map +1 -1
- package/dist/esm/SheetImplementationCustom.native.js +520 -435
- package/dist/esm/SheetImplementationCustom.native.js.map +1 -1
- package/dist/esm/SheetScrollView.mjs +133 -99
- package/dist/esm/SheetScrollView.mjs.map +1 -1
- package/dist/esm/SheetScrollView.native.js +155 -131
- package/dist/esm/SheetScrollView.native.js.map +1 -1
- package/dist/esm/constants.mjs +4 -4
- package/dist/esm/constants.mjs.map +1 -1
- package/dist/esm/constants.native.js +4 -4
- 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/createSheet.mjs +130 -133
- package/dist/esm/createSheet.mjs.map +1 -1
- package/dist/esm/createSheet.native.js +142 -152
- package/dist/esm/createSheet.native.js.map +1 -1
- package/dist/esm/helpers.mjs +5 -3
- package/dist/esm/helpers.mjs.map +1 -1
- package/dist/esm/helpers.native.js +5 -3
- package/dist/esm/helpers.native.js.map +1 -1
- package/dist/esm/nativeSheet.mjs +45 -38
- package/dist/esm/nativeSheet.mjs.map +1 -1
- package/dist/esm/nativeSheet.native.js +51 -48
- package/dist/esm/nativeSheet.native.js.map +1 -1
- package/dist/esm/setupGestureHandler.mjs +12 -8
- package/dist/esm/setupGestureHandler.mjs.map +1 -1
- package/dist/esm/setupGestureHandler.native.js +12 -9
- package/dist/esm/setupGestureHandler.native.js.map +1 -1
- package/dist/esm/useGestureHandlerPan.mjs +167 -99
- package/dist/esm/useGestureHandlerPan.mjs.map +1 -1
- package/dist/esm/useGestureHandlerPan.native.js +168 -102
- package/dist/esm/useGestureHandlerPan.native.js.map +1 -1
- package/dist/esm/useKeyboardControllerSheet.mjs +3 -3
- package/dist/esm/useKeyboardControllerSheet.mjs.map +1 -1
- package/dist/esm/useKeyboardControllerSheet.native.js +85 -69
- package/dist/esm/useKeyboardControllerSheet.native.js.map +1 -1
- package/dist/esm/useSheetController.mjs +11 -11
- package/dist/esm/useSheetController.mjs.map +1 -1
- package/dist/esm/useSheetController.native.js +11 -11
- package/dist/esm/useSheetController.native.js.map +1 -1
- package/dist/esm/useSheetOffscreenSize.mjs +23 -13
- package/dist/esm/useSheetOffscreenSize.mjs.map +1 -1
- package/dist/esm/useSheetOffscreenSize.native.js +24 -17
- package/dist/esm/useSheetOffscreenSize.native.js.map +1 -1
- package/dist/esm/useSheetOpenState.mjs +14 -13
- package/dist/esm/useSheetOpenState.mjs.map +1 -1
- package/dist/esm/useSheetOpenState.native.js +17 -17
- package/dist/esm/useSheetOpenState.native.js.map +1 -1
- package/dist/esm/useSheetProviderProps.mjs +101 -55
- package/dist/esm/useSheetProviderProps.mjs.map +1 -1
- package/dist/esm/useSheetProviderProps.native.js +137 -96
- package/dist/esm/useSheetProviderProps.native.js.map +1 -1
- package/dist/esm/useSheetScrollViewGestures.mjs +112 -71
- package/dist/esm/useSheetScrollViewGestures.mjs.map +1 -1
- package/dist/esm/useSheetScrollViewGestures.native.js +116 -69
- package/dist/esm/useSheetScrollViewGestures.native.js.map +1 -1
- package/dist/jsx/GestureDetectorWrapper.mjs +12 -8
- package/dist/jsx/GestureDetectorWrapper.mjs.map +1 -1
- package/dist/jsx/GestureDetectorWrapper.native.js +33 -28
- package/dist/jsx/GestureDetectorWrapper.native.js.map +1 -1
- package/dist/jsx/GestureSheetContext.native.js +29 -27
- package/dist/jsx/GestureSheetContext.native.js.map +1 -1
- package/dist/jsx/Sheet.mjs +70 -70
- package/dist/jsx/Sheet.mjs.map +1 -1
- package/dist/jsx/Sheet.native.js +89 -87
- package/dist/jsx/Sheet.native.js.map +1 -1
- package/dist/jsx/SheetContext.mjs +2 -2
- package/dist/jsx/SheetContext.mjs.map +1 -1
- package/dist/jsx/SheetContext.native.js +16 -14
- package/dist/jsx/SheetContext.native.js.map +1 -1
- package/dist/jsx/SheetController.mjs +12 -6
- package/dist/jsx/SheetController.mjs.map +1 -1
- package/dist/jsx/SheetController.native.js +62 -54
- package/dist/jsx/SheetController.native.js.map +1 -1
- package/dist/jsx/SheetImplementationCustom.mjs +501 -386
- package/dist/jsx/SheetImplementationCustom.mjs.map +1 -1
- package/dist/jsx/SheetImplementationCustom.native.js +567 -476
- package/dist/jsx/SheetImplementationCustom.native.js.map +1 -1
- package/dist/jsx/SheetScrollView.mjs +133 -99
- package/dist/jsx/SheetScrollView.mjs.map +1 -1
- package/dist/jsx/SheetScrollView.native.js +189 -163
- package/dist/jsx/SheetScrollView.native.js.map +1 -1
- package/dist/jsx/constants.mjs +4 -4
- package/dist/jsx/constants.mjs.map +1 -1
- package/dist/jsx/constants.native.js +16 -14
- 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.js +29 -27
- package/dist/jsx/contexts.native.js.map +1 -1
- package/dist/jsx/controller.native.js +14 -12
- package/dist/jsx/createSheet.mjs +130 -133
- package/dist/jsx/createSheet.mjs.map +1 -1
- package/dist/jsx/createSheet.native.js +173 -181
- package/dist/jsx/createSheet.native.js.map +1 -1
- package/dist/jsx/gestureState.native.js +16 -14
- package/dist/jsx/gestureState.native.js.map +1 -1
- package/dist/jsx/helpers.mjs +5 -3
- package/dist/jsx/helpers.mjs.map +1 -1
- package/dist/jsx/helpers.native.js +17 -13
- package/dist/jsx/helpers.native.js.map +1 -1
- package/dist/jsx/index.native.js +7 -5
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/nativeSheet.mjs +45 -38
- package/dist/jsx/nativeSheet.mjs.map +1 -1
- package/dist/jsx/nativeSheet.native.js +73 -68
- package/dist/jsx/nativeSheet.native.js.map +1 -1
- package/dist/jsx/setupGestureHandler.mjs +12 -8
- package/dist/jsx/setupGestureHandler.mjs.map +1 -1
- package/dist/jsx/setupGestureHandler.native.js +26 -21
- package/dist/jsx/setupGestureHandler.native.js.map +1 -1
- package/dist/jsx/types.native.js +7 -5
- package/dist/jsx/useGestureHandlerPan.mjs +167 -99
- package/dist/jsx/useGestureHandlerPan.mjs.map +1 -1
- package/dist/jsx/useGestureHandlerPan.native.js +183 -115
- package/dist/jsx/useGestureHandlerPan.native.js.map +1 -1
- package/dist/jsx/useKeyboardControllerSheet.mjs +3 -3
- package/dist/jsx/useKeyboardControllerSheet.mjs.map +1 -1
- package/dist/jsx/useKeyboardControllerSheet.native.js +100 -82
- package/dist/jsx/useKeyboardControllerSheet.native.js.map +1 -1
- package/dist/jsx/useSheet.native.js +16 -14
- package/dist/jsx/useSheetController.mjs +11 -11
- package/dist/jsx/useSheetController.mjs.map +1 -1
- package/dist/jsx/useSheetController.native.js +37 -35
- package/dist/jsx/useSheetController.native.js.map +1 -1
- package/dist/jsx/useSheetOffscreenSize.mjs +23 -13
- package/dist/jsx/useSheetOffscreenSize.mjs.map +1 -1
- package/dist/jsx/useSheetOffscreenSize.native.js +36 -27
- package/dist/jsx/useSheetOffscreenSize.native.js.map +1 -1
- package/dist/jsx/useSheetOpenState.mjs +14 -13
- package/dist/jsx/useSheetOpenState.mjs.map +1 -1
- package/dist/jsx/useSheetOpenState.native.js +39 -37
- package/dist/jsx/useSheetOpenState.native.js.map +1 -1
- package/dist/jsx/useSheetProviderProps.mjs +101 -55
- package/dist/jsx/useSheetProviderProps.mjs.map +1 -1
- package/dist/jsx/useSheetProviderProps.native.js +167 -124
- package/dist/jsx/useSheetProviderProps.native.js.map +1 -1
- package/dist/jsx/useSheetScrollViewGestures.mjs +112 -71
- package/dist/jsx/useSheetScrollViewGestures.mjs.map +1 -1
- package/dist/jsx/useSheetScrollViewGestures.native.js +128 -79
- package/dist/jsx/useSheetScrollViewGestures.native.js.map +1 -1
- package/package.json +35 -25
- package/src/Sheet.tsx +3 -3
- package/src/SheetController.tsx +4 -1
- package/src/SheetImplementationCustom.tsx +21 -10
- package/src/createSheet.tsx +1 -1
- package/src/useSheetController.tsx +4 -0
- package/types/GestureDetectorWrapper.d.ts +1 -1
- package/types/GestureDetectorWrapper.d.ts.map +1 -0
- package/types/GestureSheetContext.d.ts +1 -1
- package/types/GestureSheetContext.d.ts.map +1 -0
- package/types/Sheet.d.ts +51 -51
- package/types/Sheet.d.ts.map +1 -0
- package/types/SheetContext.d.ts +8 -8
- package/types/SheetContext.d.ts.map +1 -0
- package/types/SheetController.d.ts +3 -2
- package/types/SheetController.d.ts.map +1 -0
- package/types/SheetImplementationCustom.d.ts +4 -4
- package/types/SheetImplementationCustom.d.ts.map +1 -0
- package/types/SheetScrollView.d.ts +10 -10
- package/types/SheetScrollView.d.ts.map +1 -0
- package/types/constants.d.ts.map +1 -0
- package/types/contexts.d.ts.map +1 -0
- package/types/controller.d.ts.map +1 -0
- package/types/createSheet.d.ts +31 -31
- package/types/createSheet.d.ts.map +1 -0
- package/types/gestureState.d.ts +3 -3
- package/types/gestureState.d.ts.map +1 -0
- package/types/helpers.d.ts.map +1 -0
- package/types/index.d.ts.map +1 -0
- package/types/nativeSheet.d.ts.map +1 -0
- package/types/setupGestureHandler.d.ts +1 -1
- package/types/setupGestureHandler.d.ts.map +1 -0
- package/types/types.d.ts +4 -4
- package/types/types.d.ts.map +1 -0
- package/types/useGestureHandlerPan.d.ts.map +1 -0
- package/types/useKeyboardControllerSheet.d.ts.map +1 -0
- package/types/useKeyboardControllerSheet.native.d.ts.map +1 -0
- package/types/useSheet.d.ts.map +1 -0
- package/types/useSheetController.d.ts +3 -0
- package/types/useSheetController.d.ts.map +1 -0
- package/types/useSheetOffscreenSize.d.ts.map +1 -0
- package/types/useSheetOpenState.d.ts.map +1 -0
- package/types/useSheetProviderProps.d.ts +2 -2
- package/types/useSheetProviderProps.d.ts.map +1 -0
- package/types/useSheetScrollViewGestures.d.ts.map +1 -0
- package/types/useSheetScrollViewGestures.native.d.ts.map +1 -0
- 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/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/tsconfig.json +0 -56
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Legacy setup - prefer `import '@
|
|
2
|
+
* Legacy setup - prefer `import '@hanzogui/native/setup-gesture-handler'` instead.
|
|
3
3
|
*/
|
|
4
4
|
export declare function isGestureHandlerEnabled(): boolean;
|
|
5
5
|
export interface SetupGestureHandlerConfig {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setupGestureHandler.d.ts","sourceRoot":"","sources":["../src/setupGestureHandler.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,wBAAgB,uBAAuB,IAAI,OAAO,CAEjD;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,GAAG,CAAA;IACZ,eAAe,EAAE,GAAG,CAAA;IACpB,UAAU,CAAC,EAAE,GAAG,CAAA;CACjB;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,yBAAyB,GAAG,IAAI,CAiB3E"}
|
package/types/types.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { AnimatedNumberStrategy, TransitionProp } from '@
|
|
2
|
-
import type { ScopedProps } from '@
|
|
3
|
-
import type { PortalProps } from '@
|
|
4
|
-
import type { RemoveScroll } from '@
|
|
1
|
+
import type { AnimatedNumberStrategy, TransitionProp } from '@hanzogui/core';
|
|
2
|
+
import type { ScopedProps } from '@hanzogui/create-context';
|
|
3
|
+
import type { PortalProps } from '@hanzogui/portal';
|
|
4
|
+
import type { RemoveScroll } from '@hanzogui/remove-scroll';
|
|
5
5
|
import type { ReactNode } from 'react';
|
|
6
6
|
import type React from 'react';
|
|
7
7
|
export type SheetProps = ScopedProps<{
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useGestureHandlerPan.d.ts","sourceRoot":"","sources":["../src/useGestureHandlerPan.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAgC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAEpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAM3C,UAAU,gBAAgB;IACxB,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,GAAG,KAAK,IAAI,CAAA;IACzD,UAAU,EAAE,MAAM,IAAI,CAAA;IACtB,YAAY,EAAE,YAAY,CAAA;IAC1B,aAAa,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAA;IACrC,kBAAkB,EAAE,MAAM,MAAM,CAAA;IAChC,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,MAAM,CAAA;IAC/C,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAE7B,mBAAmB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;IAE1C,gBAAgB,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAA;IAExC,oBAAoB,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;CAC1C;AAED,UAAU,gBAAgB;IACxB,UAAU,EAAE,GAAG,GAAG,IAAI,CAAA;IACtB,aAAa,EAAE,SAAS,CAAC,GAAG,CAAC,CAAA;IAC7B,qBAAqB,EAAE,OAAO,CAAA;CAC/B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAuT/E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useKeyboardControllerSheet.d.ts","sourceRoot":"","sources":["../src/useKeyboardControllerSheet.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EACV,8BAA8B,EAC9B,6BAA6B,EAC9B,MAAM,SAAS,CAAA;AAIhB,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,8BAA8B,GACvC,6BAA6B,CAU/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useKeyboardControllerSheet.native.d.ts","sourceRoot":"","sources":["../src/useKeyboardControllerSheet.native.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,KAAK,EACV,8BAA8B,EAC9B,6BAA6B,EAC9B,MAAM,SAAS,CAAA;AAchB,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,8BAA8B,GACtC,6BAA6B,CAuG/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSheet.d.ts","sourceRoot":"","sources":["../src/useSheet.tsx"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,2DAAuC,CAAA"}
|
|
@@ -12,6 +12,9 @@ export type SheetControllerContextValue = {
|
|
|
12
12
|
open?: boolean;
|
|
13
13
|
hidden?: boolean;
|
|
14
14
|
onOpenChange?: React.Dispatch<React.SetStateAction<boolean>> | ((val: boolean) => void);
|
|
15
|
+
onAnimationComplete?: (state: {
|
|
16
|
+
open: boolean;
|
|
17
|
+
}) => void;
|
|
15
18
|
skipNextAnimation?: boolean;
|
|
16
19
|
};
|
|
17
20
|
//# sourceMappingURL=useSheetController.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSheetController.d.ts","sourceRoot":"","sources":["../src/useSheetController.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,kBAAkB;;;;;CAU9B,CAAA;AAED,eAAO,MAAM,sBAAsB,mDAC4B,CAAA;AAE/D,MAAM,MAAM,2BAA2B,GAAG;IACxC,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,IAAI,CAAC,EAAE,OAAO,CAAA;IAEd,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,YAAY,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC,CAAA;IAIvF,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAA;IAExD,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSheetOffscreenSize.d.ts","sourceRoot":"","sources":["../src/useSheetOffscreenSize.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAEhE,eAAO,MAAM,qBAAqB,GAAI,kEAMnC,iBAAiB,WAwCnB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSheetOpenState.d.ts","sourceRoot":"","sources":["../src/useSheetOpenState.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAGzC,eAAO,MAAM,iBAAiB,GAAI,OAAO,UAAU;;;;;CAyBlD,CAAA;AAED,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type { GuiElement } from '@
|
|
2
|
+
import type { GuiElement } from '@hanzogui/core';
|
|
3
3
|
import type { ScrollBridge, SheetProps } from './types';
|
|
4
4
|
import type { SheetOpenState } from './useSheetOpenState';
|
|
5
5
|
export type SheetContextValue = ReturnType<typeof useSheetProviderProps> & {
|
|
@@ -23,7 +23,7 @@ export declare function useSheetProviderProps(props: SheetProps, state: SheetOpe
|
|
|
23
23
|
dismissOnOverlayPress: boolean;
|
|
24
24
|
dismissOnSnapToBottom: boolean;
|
|
25
25
|
onOverlayComponent: ((comp: any) => void) | undefined;
|
|
26
|
-
scope: import("@
|
|
26
|
+
scope: import("@hanzogui/create-context").Scope<any>;
|
|
27
27
|
hasFit: boolean;
|
|
28
28
|
position: number;
|
|
29
29
|
snapPoints: (string | number)[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSheetProviderProps.d.ts","sourceRoot":"","sources":["../src/useSheetProviderProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAKhD,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,GAAG;IACzE,gBAAgB,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAA;CACzC,CAAA;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,cAAc,EACrB,OAAO,GAAE;IACP,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAA;CACpC;;;;;;;;;;;;;;;gCADwB,GAAG,KAAK,IAAI;;;;;;;wBAoCjC,MAAM;;;EAyKhB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSheetScrollViewGestures.d.ts","sourceRoot":"","sources":["../src/useSheetScrollViewGestures.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,IAAI,YAAY,EAAE,MAAM,cAAc,CAAA;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAa3C,UAAU,+BAA+B;IACvC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC,CAAA;IAC/C,YAAY,EAAE,YAAY,CAAA;IAC1B,oBAAoB,EAAE,OAAO,CAAA;IAC7B,aAAa,EAAE,OAAO,CAAA;IACtB,gBAAgB,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CAC9D;AAED,wBAAgB,0BAA0B,CAAC,EACzC,SAAS,EACT,YAAY,EACZ,oBAAoB,GACrB,EAAE,+BAA+B,MAsKjC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSheetScrollViewGestures.native.d.ts","sourceRoot":"","sources":["../src/useSheetScrollViewGestures.native.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,UAAU,IAAI,YAAY,EAAE,MAAM,cAAc,CAAA;AACrF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAc3C,UAAU,+BAA+B;IACvC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC,CAAA;IAC/C,YAAY,EAAE,YAAY,CAAA;IAC1B,oBAAoB,EAAE,OAAO,CAAA;IAC7B,aAAa,EAAE,OAAO,CAAA;IACtB,gBAAgB,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CAC9D;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,EACzC,YAAY,EACZ,oBAAoB,EACpB,aAAa,EACb,gBAAgB,GACjB,EAAE,+BAA+B;;;kCAiDK,qBAAqB;yBAW9B,qBAAqB;EAqElD"}
|
package/controller/index.cjs
DELETED
package/controller/index.d.ts
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
// Type declarations for @hanzogui/sheet/controller path resolution
|
|
2
|
-
// Runtime uses exports field -> dist/esm/controller.mjs
|
|
3
|
-
|
|
4
|
-
export { SheetController } from '../src/SheetController'
|
|
5
|
-
export { SheetControllerContext, useSheetController, type SheetControllerContextValue } from '../src/useSheetController'
|
package/controller/index.js
DELETED
package/next.md
DELETED
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
# Sheet ScrollView Gesture Handoff - Next Steps
|
|
2
|
-
|
|
3
|
-
## Current Limitation
|
|
4
|
-
|
|
5
|
-
The Sheet + ScrollView gesture coordination on native iOS has limitations because Tamagui uses React Native's built-in `PanResponder`, while iOS's `UIScrollView` gesture recognizers fire BEFORE the RN responder system can claim the gesture.
|
|
6
|
-
|
|
7
|
-
This causes:
|
|
8
|
-
|
|
9
|
-
- Minor scroll "flicker" when starting to drag down from scroll top
|
|
10
|
-
- Imperfect handoff between scroll and sheet drag gestures
|
|
11
|
-
|
|
12
|
-
## Ideal Solution: react-native-gesture-handler Integration
|
|
13
|
-
|
|
14
|
-
Both `gorhom/bottom-sheet` and `react-native-actions-sheet` solve this by using `react-native-gesture-handler` which provides:
|
|
15
|
-
|
|
16
|
-
1. **`simultaneousHandlers`** - allows coordinating multiple gesture recognizers
|
|
17
|
-
2. **`GestureDetector`** with worklets - can check conditions and decide who handles gesture before it starts
|
|
18
|
-
3. **Native gesture coordination** - works at the iOS/Android gesture recognizer level, not the JS responder level
|
|
19
|
-
|
|
20
|
-
## Proposed API
|
|
21
|
-
|
|
22
|
-
```tsx
|
|
23
|
-
import { setupGestureHandler } from '@tamagui/sheet'
|
|
24
|
-
import { GestureHandlerRootView } from 'react-native-gesture-handler'
|
|
25
|
-
|
|
26
|
-
// Call once at app startup (optional - falls back to PanResponder)
|
|
27
|
-
setupGestureHandler({
|
|
28
|
-
// Pass the gesture handler module so we don't add it as a hard dependency
|
|
29
|
-
GestureDetector: require('react-native-gesture-handler').GestureDetector,
|
|
30
|
-
Gesture: require('react-native-gesture-handler').Gesture,
|
|
31
|
-
})
|
|
32
|
-
|
|
33
|
-
// Then wrap app
|
|
34
|
-
export default function App() {
|
|
35
|
-
return (
|
|
36
|
-
<GestureHandlerRootView style={{ flex: 1 }}>
|
|
37
|
-
<YourApp />
|
|
38
|
-
</GestureHandlerRootView>
|
|
39
|
-
)
|
|
40
|
-
}
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
## Implementation Notes
|
|
44
|
-
|
|
45
|
-
If `setupGestureHandler()` is called:
|
|
46
|
-
|
|
47
|
-
- Use `GestureDetector` with `Gesture.Pan()` instead of `PanResponder`
|
|
48
|
-
- Use `simultaneousHandlers` to coordinate with ScrollView's gesture
|
|
49
|
-
- Implement `blockPan` flag pattern from actions-sheet for smooth handoff
|
|
50
|
-
|
|
51
|
-
If not called:
|
|
52
|
-
|
|
53
|
-
- Fall back to current `PanResponder` implementation
|
|
54
|
-
- Accept the minor limitations on native
|
|
55
|
-
|
|
56
|
-
## References
|
|
57
|
-
|
|
58
|
-
- gorhom/bottom-sheet: Uses Reanimated worklets + gesture handler
|
|
59
|
-
- react-native-actions-sheet: Uses `blockPan` flag pattern with gesture handler
|
|
60
|
-
- Both are MIT licensed and can be used as reference
|
|
61
|
-
|
|
62
|
-
## Files to Modify
|
|
63
|
-
|
|
64
|
-
- `SheetImplementationCustom.tsx` - Replace PanResponder with GestureDetector
|
|
65
|
-
- `SheetScrollView.tsx` - Use `useScrollHandlers()` pattern from actions-sheet
|
|
66
|
-
- Add `setupGestureHandler.ts` for optional gesture handler registration
|
|
67
|
-
|
|
68
|
-
## Test Case
|
|
69
|
-
|
|
70
|
-
There's a test case at `code/kitchen-sink/src/usecases/SheetScrollableDrag.tsx` that demonstrates the bug and can be used to verify fixes. It's not exported in the main navigation but can be accessed directly for testing.
|
|
71
|
-
|
|
72
|
-
## Attempted Fixes
|
|
73
|
-
|
|
74
|
-
1. **Native scroll enable/disable based on pane position** - Tried disabling scroll when sheet is not at top position, but this completely broke scrolling because the initial pane position values aren't set correctly on mount.
|
|
75
|
-
|
|
76
|
-
2. **PaneY change listeners** - Added `onPaneYChange`/`setPaneY` to ScrollBridge to notify ScrollView of position changes during drag, but the fundamental issue remains that iOS UIScrollView gesture recognizers fire before RN's responder system.
|
|
77
|
-
|
|
78
|
-
The core issue is architectural: React Native's PanResponder cannot coordinate with iOS's native UIScrollView gesture recognizers at the right level. The only real solution is `react-native-gesture-handler` integration.
|
package/tsconfig.json
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"extends": "../../../tsconfig.json",
|
|
3
|
-
"compilerOptions": {
|
|
4
|
-
"composite": true,
|
|
5
|
-
"strict": true
|
|
6
|
-
},
|
|
7
|
-
"references": [
|
|
8
|
-
{
|
|
9
|
-
"path": "../../core/animations-react-native"
|
|
10
|
-
},
|
|
11
|
-
{
|
|
12
|
-
"path": "../../core/compose-refs"
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
"path": "../../core/constants"
|
|
16
|
-
},
|
|
17
|
-
{
|
|
18
|
-
"path": "../../core/core"
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
"path": "../../core/create-context"
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
"path": "../../core/helpers"
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
"path": "../../core/use-constant"
|
|
28
|
-
},
|
|
29
|
-
{
|
|
30
|
-
"path": "../../core/use-controllable-state"
|
|
31
|
-
},
|
|
32
|
-
{
|
|
33
|
-
"path": "../../core/use-keyboard-visible"
|
|
34
|
-
},
|
|
35
|
-
{
|
|
36
|
-
"path": "../animate-presence"
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
"path": "../portal"
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
"path": "../remove-scroll"
|
|
43
|
-
},
|
|
44
|
-
{
|
|
45
|
-
"path": "../scroll-view"
|
|
46
|
-
},
|
|
47
|
-
{
|
|
48
|
-
"path": "../stacks"
|
|
49
|
-
}
|
|
50
|
-
],
|
|
51
|
-
"exclude": [
|
|
52
|
-
"types",
|
|
53
|
-
"dist",
|
|
54
|
-
"**/__tests__"
|
|
55
|
-
]
|
|
56
|
-
}
|