@hanzogui/toast 8.3.0 → 8.3.2
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/Toast.js +122 -0
- package/dist/cjs/Toast.js.map +1 -0
- package/dist/cjs/ToastAnnounce.js +55 -0
- package/dist/cjs/ToastAnnounce.js.map +1 -0
- package/dist/cjs/ToastComposable.js +849 -0
- package/dist/cjs/ToastComposable.js.map +1 -0
- package/dist/cjs/ToastImperative.js +90 -0
- package/dist/cjs/ToastImperative.js.map +1 -0
- package/dist/cjs/ToastImpl.js +307 -0
- package/dist/cjs/ToastImpl.js.map +1 -0
- package/dist/cjs/ToastItemFrame.js +121 -0
- package/dist/cjs/ToastItemFrame.js.map +1 -0
- package/dist/cjs/ToastPortal.js +16 -0
- package/dist/cjs/ToastPortal.js.map +1 -0
- package/dist/cjs/ToastProvider.js +72 -0
- package/dist/cjs/ToastProvider.js.map +1 -0
- package/dist/cjs/ToastState.js +284 -0
- package/dist/cjs/ToastState.js.map +1 -0
- package/dist/cjs/ToastViewport.js +289 -0
- package/dist/cjs/ToastViewport.js.map +1 -0
- package/dist/cjs/Toaster.js +13 -0
- package/dist/cjs/Toaster.js.map +1 -0
- package/dist/cjs/constants.js +6 -0
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/createNativeToast.js +42 -0
- package/dist/cjs/createNativeToast.js.map +1 -0
- package/dist/cjs/dispatchNativeToast.js +31 -0
- package/dist/cjs/dispatchNativeToast.js.map +1 -0
- package/dist/cjs/index.js +5 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/types.js +3 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/cjs/useAnimatedDragGesture.js +251 -0
- package/dist/cjs/useAnimatedDragGesture.js.map +1 -0
- package/dist/cjs/useReducedMotion.js +52 -0
- package/dist/cjs/useReducedMotion.js.map +1 -0
- package/dist/cjs/useToastAnimations.js +252 -0
- package/dist/cjs/useToastAnimations.js.map +1 -0
- package/dist/cjs/v2.js +17 -0
- package/dist/cjs/v2.js.map +1 -0
- package/dist/esm/Toast.js +117 -0
- package/dist/esm/Toast.js.map +1 -0
- package/dist/esm/ToastAnnounce.js +50 -0
- package/dist/esm/ToastAnnounce.js.map +1 -0
- package/dist/esm/ToastComposable.js +843 -0
- package/dist/esm/ToastComposable.js.map +1 -0
- package/dist/esm/ToastImperative.js +82 -0
- package/dist/esm/ToastImperative.js.map +1 -0
- package/dist/esm/ToastImpl.js +301 -0
- package/dist/esm/ToastImpl.js.map +1 -0
- package/dist/esm/ToastItemFrame.js +117 -0
- package/dist/esm/ToastItemFrame.js.map +1 -0
- package/dist/esm/ToastPortal.js +13 -0
- package/dist/esm/ToastPortal.js.map +1 -0
- package/dist/esm/ToastProvider.js +64 -0
- package/dist/esm/ToastProvider.js.map +1 -0
- package/dist/esm/ToastState.js +281 -0
- package/dist/esm/ToastState.js.map +1 -0
- package/dist/esm/ToastViewport.js +282 -0
- package/dist/esm/ToastViewport.js.map +1 -0
- package/dist/esm/Toaster.js +9 -0
- package/dist/esm/Toaster.js.map +1 -0
- package/dist/esm/constants.js +3 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/createNativeToast.js +36 -0
- package/dist/esm/createNativeToast.js.map +1 -0
- package/dist/esm/dispatchNativeToast.js +28 -0
- package/dist/esm/dispatchNativeToast.js.map +1 -0
- package/dist/esm/index.js +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/esm/useAnimatedDragGesture.js +247 -0
- package/dist/esm/useAnimatedDragGesture.js.map +1 -0
- package/dist/esm/useReducedMotion.js +48 -0
- package/dist/esm/useReducedMotion.js.map +1 -0
- package/dist/esm/useToastAnimations.js +248 -0
- package/dist/esm/useToastAnimations.js.map +1 -0
- package/dist/esm/v2.js +8 -0
- package/dist/esm/v2.js.map +1 -0
- package/dist/native/Toast.js +117 -0
- package/dist/native/Toast.js.map +1 -0
- package/dist/native/ToastAnnounce.js +50 -0
- package/dist/native/ToastAnnounce.js.map +1 -0
- package/dist/native/ToastComposable.js +843 -0
- package/dist/native/ToastComposable.js.map +1 -0
- package/dist/native/ToastImperative.js +82 -0
- package/dist/native/ToastImperative.js.map +1 -0
- package/dist/native/ToastImpl.js +301 -0
- package/dist/native/ToastImpl.js.map +1 -0
- package/dist/native/ToastItemFrame.js +117 -0
- package/dist/native/ToastItemFrame.js.map +1 -0
- package/dist/native/ToastPortal.js +13 -0
- package/dist/native/ToastPortal.js.map +1 -0
- package/dist/native/ToastProvider.js +64 -0
- package/dist/native/ToastProvider.js.map +1 -0
- package/dist/native/ToastState.js +281 -0
- package/dist/native/ToastState.js.map +1 -0
- package/dist/native/ToastViewport.js +282 -0
- package/dist/native/ToastViewport.js.map +1 -0
- package/dist/native/Toaster.js +9 -0
- package/dist/native/Toaster.js.map +1 -0
- package/dist/native/constants.js +3 -0
- package/dist/native/constants.js.map +1 -0
- package/dist/native/createNativeToast.js +25 -0
- package/dist/native/createNativeToast.js.map +1 -0
- package/dist/native/dispatchNativeToast.js +28 -0
- package/dist/native/dispatchNativeToast.js.map +1 -0
- package/dist/native/index.js +2 -0
- package/dist/native/index.js.map +1 -0
- package/dist/native/types.js +2 -0
- package/dist/native/types.js.map +1 -0
- package/dist/native/useAnimatedDragGesture.js +210 -0
- package/dist/native/useAnimatedDragGesture.js.map +1 -0
- package/dist/native/useReducedMotion.js +48 -0
- package/dist/native/useReducedMotion.js.map +1 -0
- package/dist/native/useToastAnimations.js +248 -0
- package/dist/native/useToastAnimations.js.map +1 -0
- package/dist/native/v2.js +8 -0
- package/dist/native/v2.js.map +1 -0
- package/package.json +44 -45
- package/src/Toast.tsx +9 -9
- package/src/ToastAnnounce.tsx +2 -2
- package/src/ToastComposable.tsx +9 -9
- package/src/ToastImperative.tsx +2 -2
- package/src/ToastImpl.tsx +5 -5
- package/src/ToastPortal.tsx +4 -1
- package/src/ToastProvider.tsx +4 -4
- package/src/ToastState.ts +1 -1
- package/src/ToastViewport.tsx +4 -4
- package/src/Toaster.tsx +5 -5
- package/src/createNativeToast.native.tsx +1 -1
- package/src/createNativeToast.tsx +1 -1
- package/src/dispatchNativeToast.ts +3 -3
- package/src/index.ts +7 -3
- package/src/useAnimatedDragGesture.native.ts +1 -1
- package/src/useAnimatedDragGesture.ts +1 -1
- package/src/v2.ts +13 -9
- package/types/Toast.d.ts +19 -19
- package/types/Toast.d.ts.map +1 -1
- package/types/ToastAnnounce.d.ts +1 -1
- package/types/ToastAnnounce.d.ts.map +1 -1
- package/types/ToastComposable.d.ts +14 -14
- package/types/ToastComposable.d.ts.map +1 -1
- package/types/ToastImperative.d.ts +3 -3
- package/types/ToastImperative.d.ts.map +1 -1
- package/types/ToastImpl.d.ts +7 -7
- package/types/ToastImpl.d.ts.map +1 -1
- package/types/ToastItemFrame.d.ts +4 -4
- package/types/ToastItemFrame.d.ts.map +1 -1
- package/types/ToastPortal.d.ts +2 -2
- package/types/ToastPortal.d.ts.map +1 -1
- package/types/ToastProvider.d.ts +3 -3
- package/types/ToastProvider.d.ts.map +1 -1
- package/types/ToastState.d.ts +15 -12
- package/types/ToastState.d.ts.map +1 -1
- package/types/ToastViewport.d.ts +5 -5
- package/types/Toaster.d.ts +4 -4
- package/types/Toaster.d.ts.map +1 -1
- package/types/createNativeToast.d.ts +1 -1
- package/types/createNativeToast.d.ts.map +1 -1
- package/types/createNativeToast.native.d.ts +1 -1
- package/types/createNativeToast.native.d.ts.map +1 -1
- package/types/dispatchNativeToast.d.ts +2 -2
- package/types/dispatchNativeToast.d.ts.map +1 -1
- package/types/index.d.ts +3 -3
- package/types/index.d.ts.map +1 -1
- package/types/useAnimatedDragGesture.d.ts +1 -1
- package/types/useAnimatedDragGesture.d.ts.map +1 -1
- package/types/useAnimatedDragGesture.native.d.ts +1 -1
- package/types/useAnimatedDragGesture.native.d.ts.map +1 -1
- package/types/v2.d.ts +9 -9
- package/types/v2.d.ts.map +1 -1
- package/dist/cjs/Toast.cjs +0 -178
- package/dist/cjs/Toast.native.js +0 -181
- package/dist/cjs/Toast.native.js.map +0 -1
- package/dist/cjs/ToastAnnounce.cjs +0 -103
- package/dist/cjs/ToastAnnounce.native.js +0 -111
- package/dist/cjs/ToastAnnounce.native.js.map +0 -1
- package/dist/cjs/ToastComposable.cjs +0 -947
- package/dist/cjs/ToastComposable.native.js +0 -1055
- package/dist/cjs/ToastComposable.native.js.map +0 -1
- package/dist/cjs/ToastImperative.cjs +0 -119
- package/dist/cjs/ToastImperative.native.js +0 -130
- package/dist/cjs/ToastImperative.native.js.map +0 -1
- package/dist/cjs/ToastImpl.cjs +0 -354
- package/dist/cjs/ToastImpl.native.js +0 -364
- package/dist/cjs/ToastImpl.native.js.map +0 -1
- package/dist/cjs/ToastItemFrame.cjs +0 -143
- package/dist/cjs/ToastItemFrame.native.js +0 -148
- package/dist/cjs/ToastItemFrame.native.js.map +0 -1
- package/dist/cjs/ToastPortal.cjs +0 -49
- package/dist/cjs/ToastPortal.native.js +0 -52
- package/dist/cjs/ToastPortal.native.js.map +0 -1
- package/dist/cjs/ToastProvider.cjs +0 -150
- package/dist/cjs/ToastProvider.native.js +0 -161
- package/dist/cjs/ToastProvider.native.js.map +0 -1
- package/dist/cjs/ToastState.cjs +0 -311
- package/dist/cjs/ToastState.native.js +0 -324
- package/dist/cjs/ToastState.native.js.map +0 -1
- package/dist/cjs/ToastViewport.cjs +0 -319
- package/dist/cjs/ToastViewport.native.js +0 -343
- package/dist/cjs/ToastViewport.native.js.map +0 -1
- package/dist/cjs/Toaster.cjs +0 -87
- package/dist/cjs/Toaster.native.js +0 -91
- package/dist/cjs/Toaster.native.js.map +0 -1
- package/dist/cjs/constants.cjs +0 -30
- package/dist/cjs/constants.native.js +0 -33
- package/dist/cjs/constants.native.js.map +0 -1
- package/dist/cjs/createNativeToast.cjs +0 -59
- package/dist/cjs/createNativeToast.native.js +0 -60
- package/dist/cjs/createNativeToast.native.js.map +0 -1
- package/dist/cjs/dispatchNativeToast.cjs +0 -47
- package/dist/cjs/dispatchNativeToast.native.js +0 -52
- package/dist/cjs/dispatchNativeToast.native.js.map +0 -1
- package/dist/cjs/index.cjs +0 -20
- package/dist/cjs/index.native.js +0 -23
- package/dist/cjs/index.native.js.map +0 -1
- package/dist/cjs/types.cjs +0 -18
- package/dist/cjs/types.native.js +0 -21
- package/dist/cjs/types.native.js.map +0 -1
- package/dist/cjs/useAnimatedDragGesture.cjs +0 -214
- package/dist/cjs/useAnimatedDragGesture.native.js +0 -224
- package/dist/cjs/useAnimatedDragGesture.native.js.map +0 -1
- package/dist/cjs/useReducedMotion.cjs +0 -74
- package/dist/cjs/useReducedMotion.native.js +0 -83
- package/dist/cjs/useReducedMotion.native.js.map +0 -1
- package/dist/cjs/useToastAnimations.cjs +0 -292
- package/dist/cjs/useToastAnimations.native.js +0 -302
- package/dist/cjs/useToastAnimations.native.js.map +0 -1
- package/dist/cjs/v2.cjs +0 -36
- package/dist/cjs/v2.native.js +0 -39
- package/dist/cjs/v2.native.js.map +0 -1
- package/dist/esm/Toast.mjs +0 -137
- package/dist/esm/Toast.mjs.map +0 -1
- package/dist/esm/Toast.native.js +0 -137
- package/dist/esm/Toast.native.js.map +0 -1
- package/dist/esm/ToastAnnounce.mjs +0 -66
- package/dist/esm/ToastAnnounce.mjs.map +0 -1
- package/dist/esm/ToastAnnounce.native.js +0 -71
- package/dist/esm/ToastAnnounce.native.js.map +0 -1
- package/dist/esm/ToastComposable.mjs +0 -909
- package/dist/esm/ToastComposable.mjs.map +0 -1
- package/dist/esm/ToastComposable.native.js +0 -1014
- package/dist/esm/ToastComposable.native.js.map +0 -1
- package/dist/esm/ToastImperative.mjs +0 -80
- package/dist/esm/ToastImperative.mjs.map +0 -1
- package/dist/esm/ToastImperative.native.js +0 -88
- package/dist/esm/ToastImperative.native.js.map +0 -1
- package/dist/esm/ToastImpl.mjs +0 -316
- package/dist/esm/ToastImpl.mjs.map +0 -1
- package/dist/esm/ToastImpl.native.js +0 -329
- package/dist/esm/ToastImpl.native.js.map +0 -1
- package/dist/esm/ToastItemFrame.mjs +0 -114
- package/dist/esm/ToastItemFrame.mjs.map +0 -1
- package/dist/esm/ToastItemFrame.native.js +0 -116
- package/dist/esm/ToastItemFrame.native.js.map +0 -1
- package/dist/esm/ToastPortal.mjs +0 -24
- package/dist/esm/ToastPortal.mjs.map +0 -1
- package/dist/esm/ToastPortal.native.js +0 -24
- package/dist/esm/ToastPortal.native.js.map +0 -1
- package/dist/esm/ToastProvider.mjs +0 -110
- package/dist/esm/ToastProvider.mjs.map +0 -1
- package/dist/esm/ToastProvider.native.js +0 -118
- package/dist/esm/ToastProvider.native.js.map +0 -1
- package/dist/esm/ToastState.mjs +0 -285
- package/dist/esm/ToastState.mjs.map +0 -1
- package/dist/esm/ToastState.native.js +0 -295
- package/dist/esm/ToastState.native.js.map +0 -1
- package/dist/esm/ToastViewport.mjs +0 -280
- package/dist/esm/ToastViewport.mjs.map +0 -1
- package/dist/esm/ToastViewport.native.js +0 -301
- package/dist/esm/ToastViewport.native.js.map +0 -1
- package/dist/esm/Toaster.mjs +0 -51
- package/dist/esm/Toaster.mjs.map +0 -1
- package/dist/esm/Toaster.native.js +0 -52
- package/dist/esm/Toaster.native.js.map +0 -1
- package/dist/esm/constants.mjs +0 -4
- package/dist/esm/constants.mjs.map +0 -1
- package/dist/esm/constants.native.js +0 -4
- package/dist/esm/constants.native.js.map +0 -1
- package/dist/esm/createNativeToast.mjs +0 -32
- package/dist/esm/createNativeToast.mjs.map +0 -1
- package/dist/esm/createNativeToast.native.js +0 -30
- package/dist/esm/createNativeToast.native.js.map +0 -1
- package/dist/esm/dispatchNativeToast.mjs +0 -22
- package/dist/esm/dispatchNativeToast.mjs.map +0 -1
- package/dist/esm/dispatchNativeToast.native.js +0 -24
- package/dist/esm/dispatchNativeToast.native.js.map +0 -1
- package/dist/esm/index.mjs +0 -2
- package/dist/esm/index.mjs.map +0 -1
- package/dist/esm/index.native.js +0 -2
- package/dist/esm/index.native.js.map +0 -1
- package/dist/esm/types.mjs +0 -2
- package/dist/esm/types.mjs.map +0 -1
- package/dist/esm/types.native.js +0 -2
- package/dist/esm/types.native.js.map +0 -1
- package/dist/esm/useAnimatedDragGesture.mjs +0 -178
- package/dist/esm/useAnimatedDragGesture.mjs.map +0 -1
- package/dist/esm/useAnimatedDragGesture.native.js +0 -185
- package/dist/esm/useAnimatedDragGesture.native.js.map +0 -1
- package/dist/esm/useReducedMotion.mjs +0 -38
- package/dist/esm/useReducedMotion.mjs.map +0 -1
- package/dist/esm/useReducedMotion.native.js +0 -44
- package/dist/esm/useReducedMotion.native.js.map +0 -1
- package/dist/esm/useToastAnimations.mjs +0 -256
- package/dist/esm/useToastAnimations.mjs.map +0 -1
- package/dist/esm/useToastAnimations.native.js +0 -263
- package/dist/esm/useToastAnimations.native.js.map +0 -1
- package/dist/esm/v2.mjs +0 -6
- package/dist/esm/v2.mjs.map +0 -1
- package/dist/esm/v2.native.js +0 -6
- package/dist/esm/v2.native.js.map +0 -1
- package/dist/jsx/Toast.mjs +0 -137
- package/dist/jsx/Toast.mjs.map +0 -1
- package/dist/jsx/Toast.native.js +0 -181
- package/dist/jsx/Toast.native.js.map +0 -1
- package/dist/jsx/ToastAnnounce.mjs +0 -66
- package/dist/jsx/ToastAnnounce.mjs.map +0 -1
- package/dist/jsx/ToastAnnounce.native.js +0 -111
- package/dist/jsx/ToastAnnounce.native.js.map +0 -1
- package/dist/jsx/ToastComposable.mjs +0 -909
- package/dist/jsx/ToastComposable.mjs.map +0 -1
- package/dist/jsx/ToastComposable.native.js +0 -1055
- package/dist/jsx/ToastComposable.native.js.map +0 -1
- package/dist/jsx/ToastImperative.mjs +0 -80
- package/dist/jsx/ToastImperative.mjs.map +0 -1
- package/dist/jsx/ToastImperative.native.js +0 -130
- package/dist/jsx/ToastImperative.native.js.map +0 -1
- package/dist/jsx/ToastImpl.mjs +0 -316
- package/dist/jsx/ToastImpl.mjs.map +0 -1
- package/dist/jsx/ToastImpl.native.js +0 -364
- package/dist/jsx/ToastImpl.native.js.map +0 -1
- package/dist/jsx/ToastItemFrame.mjs +0 -114
- package/dist/jsx/ToastItemFrame.mjs.map +0 -1
- package/dist/jsx/ToastItemFrame.native.js +0 -148
- package/dist/jsx/ToastItemFrame.native.js.map +0 -1
- package/dist/jsx/ToastPortal.mjs +0 -24
- package/dist/jsx/ToastPortal.mjs.map +0 -1
- package/dist/jsx/ToastPortal.native.js +0 -52
- package/dist/jsx/ToastPortal.native.js.map +0 -1
- package/dist/jsx/ToastProvider.mjs +0 -110
- package/dist/jsx/ToastProvider.mjs.map +0 -1
- package/dist/jsx/ToastProvider.native.js +0 -161
- package/dist/jsx/ToastProvider.native.js.map +0 -1
- package/dist/jsx/ToastState.mjs +0 -285
- package/dist/jsx/ToastState.mjs.map +0 -1
- package/dist/jsx/ToastState.native.js +0 -324
- package/dist/jsx/ToastState.native.js.map +0 -1
- package/dist/jsx/ToastViewport.mjs +0 -280
- package/dist/jsx/ToastViewport.mjs.map +0 -1
- package/dist/jsx/ToastViewport.native.js +0 -343
- package/dist/jsx/ToastViewport.native.js.map +0 -1
- package/dist/jsx/Toaster.mjs +0 -51
- package/dist/jsx/Toaster.mjs.map +0 -1
- package/dist/jsx/Toaster.native.js +0 -91
- package/dist/jsx/Toaster.native.js.map +0 -1
- package/dist/jsx/constants.mjs +0 -4
- package/dist/jsx/constants.mjs.map +0 -1
- package/dist/jsx/constants.native.js +0 -33
- package/dist/jsx/constants.native.js.map +0 -1
- package/dist/jsx/createNativeToast.mjs +0 -32
- package/dist/jsx/createNativeToast.mjs.map +0 -1
- package/dist/jsx/createNativeToast.native.js +0 -60
- package/dist/jsx/createNativeToast.native.js.map +0 -1
- package/dist/jsx/dispatchNativeToast.mjs +0 -22
- package/dist/jsx/dispatchNativeToast.mjs.map +0 -1
- package/dist/jsx/dispatchNativeToast.native.js +0 -52
- package/dist/jsx/dispatchNativeToast.native.js.map +0 -1
- package/dist/jsx/index.js +0 -2
- package/dist/jsx/index.js.map +0 -1
- package/dist/jsx/index.mjs +0 -2
- package/dist/jsx/index.mjs.map +0 -1
- package/dist/jsx/index.native.js +0 -23
- package/dist/jsx/index.native.js.map +0 -1
- package/dist/jsx/types.mjs +0 -2
- package/dist/jsx/types.mjs.map +0 -1
- package/dist/jsx/types.native.js +0 -21
- package/dist/jsx/types.native.js.map +0 -1
- package/dist/jsx/useAnimatedDragGesture.mjs +0 -178
- package/dist/jsx/useAnimatedDragGesture.mjs.map +0 -1
- package/dist/jsx/useAnimatedDragGesture.native.js +0 -224
- package/dist/jsx/useAnimatedDragGesture.native.js.map +0 -1
- package/dist/jsx/useReducedMotion.mjs +0 -38
- package/dist/jsx/useReducedMotion.mjs.map +0 -1
- package/dist/jsx/useReducedMotion.native.js +0 -83
- package/dist/jsx/useReducedMotion.native.js.map +0 -1
- package/dist/jsx/useToastAnimations.mjs +0 -256
- package/dist/jsx/useToastAnimations.mjs.map +0 -1
- package/dist/jsx/useToastAnimations.native.js +0 -302
- package/dist/jsx/useToastAnimations.native.js.map +0 -1
- package/dist/jsx/v2.mjs +0 -6
- package/dist/jsx/v2.mjs.map +0 -1
- package/dist/jsx/v2.native.js +0 -39
- package/dist/jsx/v2.native.js.map +0 -1
- package/v2/index.cjs +0 -2
- package/v2/index.js +0 -2
- package/v2/index.native.cjs +0 -2
- package/v2/index.native.js +0 -2
|
@@ -1,178 +0,0 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
const VELOCITY_THRESHOLD = 0.11;
|
|
3
|
-
function resisted(delta, maxResist = 25) {
|
|
4
|
-
if (delta >= 0) return delta;
|
|
5
|
-
const pastBoundary = Math.abs(delta);
|
|
6
|
-
const resistedDistance = Math.sqrt(pastBoundary) * 2;
|
|
7
|
-
return -Math.min(resistedDistance, maxResist);
|
|
8
|
-
}
|
|
9
|
-
const EXIT_DRAG_CAP = 80;
|
|
10
|
-
function cappedExit(delta) {
|
|
11
|
-
if (Math.abs(delta) <= EXIT_DRAG_CAP) return delta;
|
|
12
|
-
const sign = delta > 0 ? 1 : -1;
|
|
13
|
-
const overshoot = Math.abs(delta) - EXIT_DRAG_CAP;
|
|
14
|
-
return sign * (EXIT_DRAG_CAP + Math.sqrt(overshoot) * 2);
|
|
15
|
-
}
|
|
16
|
-
function useAnimatedDragGesture(options) {
|
|
17
|
-
const {
|
|
18
|
-
direction,
|
|
19
|
-
threshold,
|
|
20
|
-
disabled,
|
|
21
|
-
expanded,
|
|
22
|
-
onDragMove,
|
|
23
|
-
onDragStart,
|
|
24
|
-
onDismiss,
|
|
25
|
-
onCancel
|
|
26
|
-
} = options;
|
|
27
|
-
const [isDragging, setIsDragging] = React.useState(false);
|
|
28
|
-
const dragStartRef = React.useRef(null);
|
|
29
|
-
const lockedDirectionRef = React.useRef(null);
|
|
30
|
-
const captureElementRef = React.useRef(null);
|
|
31
|
-
const isHorizontal = direction === "left" || direction === "right" || direction === "horizontal";
|
|
32
|
-
const isVertical = direction === "up" || direction === "down" || direction === "vertical";
|
|
33
|
-
const preventSelectRef = React.useRef(null);
|
|
34
|
-
function startPreventingSelection() {
|
|
35
|
-
if (typeof document === "undefined") return;
|
|
36
|
-
window.getSelection()?.removeAllRanges();
|
|
37
|
-
const handler = e => e.preventDefault();
|
|
38
|
-
preventSelectRef.current = handler;
|
|
39
|
-
document.addEventListener("selectstart", handler, true);
|
|
40
|
-
}
|
|
41
|
-
function stopPreventingSelection() {
|
|
42
|
-
if (preventSelectRef.current) {
|
|
43
|
-
document.removeEventListener("selectstart", preventSelectRef.current, true);
|
|
44
|
-
preventSelectRef.current = null;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
const cleanup = React.useCallback(() => {
|
|
48
|
-
dragStartRef.current = null;
|
|
49
|
-
lockedDirectionRef.current = null;
|
|
50
|
-
setIsDragging(false);
|
|
51
|
-
stopPreventingSelection();
|
|
52
|
-
}, []);
|
|
53
|
-
React.useEffect(() => {
|
|
54
|
-
return () => {
|
|
55
|
-
if (dragStartRef.current) {
|
|
56
|
-
if (captureElementRef.current && dragStartRef.current.pointerId) {
|
|
57
|
-
try {
|
|
58
|
-
captureElementRef.current.releasePointerCapture(dragStartRef.current.pointerId);
|
|
59
|
-
} catch {}
|
|
60
|
-
}
|
|
61
|
-
cleanup();
|
|
62
|
-
}
|
|
63
|
-
};
|
|
64
|
-
}, [cleanup]);
|
|
65
|
-
const handlePointerDown = React.useCallback(event => {
|
|
66
|
-
if (disabled) return;
|
|
67
|
-
if (event.button !== 0) return;
|
|
68
|
-
const target = event.target;
|
|
69
|
-
if (target.closest('button, a, input, textarea, select, [role="button"]')) {
|
|
70
|
-
return;
|
|
71
|
-
}
|
|
72
|
-
const hasSelection = (window.getSelection()?.toString().length ?? 0) > 0;
|
|
73
|
-
if (hasSelection) return;
|
|
74
|
-
const captureElement = event.currentTarget;
|
|
75
|
-
captureElementRef.current = captureElement;
|
|
76
|
-
captureElement.setPointerCapture(event.pointerId);
|
|
77
|
-
dragStartRef.current = {
|
|
78
|
-
startX: event.clientX,
|
|
79
|
-
startY: event.clientY,
|
|
80
|
-
startTime: Date.now(),
|
|
81
|
-
pointerId: event.pointerId
|
|
82
|
-
};
|
|
83
|
-
startPreventingSelection();
|
|
84
|
-
setIsDragging(true);
|
|
85
|
-
onDragStart?.();
|
|
86
|
-
}, [disabled, onDragStart]);
|
|
87
|
-
const handlePointerMove = React.useCallback(event => {
|
|
88
|
-
if (!dragStartRef.current || disabled) return;
|
|
89
|
-
const deltaX = event.clientX - dragStartRef.current.startX;
|
|
90
|
-
const deltaY = event.clientY - dragStartRef.current.startY;
|
|
91
|
-
if (!lockedDirectionRef.current && (Math.abs(deltaX) > 1 || Math.abs(deltaY) > 1)) {
|
|
92
|
-
lockedDirectionRef.current = Math.abs(deltaX) > Math.abs(deltaY) ? "x" : "y";
|
|
93
|
-
}
|
|
94
|
-
let offsetX = 0;
|
|
95
|
-
let offsetY = 0;
|
|
96
|
-
if (direction === "right") {
|
|
97
|
-
offsetX = deltaX > 0 ? cappedExit(deltaX) : resisted(deltaX);
|
|
98
|
-
} else if (direction === "left") {
|
|
99
|
-
offsetX = deltaX < 0 ? cappedExit(deltaX) : -resisted(-deltaX);
|
|
100
|
-
} else if (direction === "down") {
|
|
101
|
-
offsetY = deltaY > 0 ? cappedExit(deltaY) : resisted(deltaY);
|
|
102
|
-
} else if (direction === "up") {
|
|
103
|
-
offsetY = deltaY < 0 ? cappedExit(deltaY) : -resisted(-deltaY);
|
|
104
|
-
} else if (direction === "horizontal") {
|
|
105
|
-
offsetX = cappedExit(deltaX);
|
|
106
|
-
} else if (direction === "vertical") {
|
|
107
|
-
offsetY = cappedExit(deltaY);
|
|
108
|
-
}
|
|
109
|
-
onDragMove(offsetX, offsetY);
|
|
110
|
-
}, [disabled, direction, expanded, isHorizontal, isVertical, onDragMove]);
|
|
111
|
-
const handlePointerUp = React.useCallback(event => {
|
|
112
|
-
if (!dragStartRef.current || disabled) return;
|
|
113
|
-
const deltaX = event.clientX - dragStartRef.current.startX;
|
|
114
|
-
const deltaY = event.clientY - dragStartRef.current.startY;
|
|
115
|
-
const timeTaken = Date.now() - dragStartRef.current.startTime;
|
|
116
|
-
const velocityX = Math.abs(deltaX) / timeTaken;
|
|
117
|
-
const velocityY = Math.abs(deltaY) / timeTaken;
|
|
118
|
-
const lockedDirection = lockedDirectionRef.current;
|
|
119
|
-
const isLockedToWrongAxis = lockedDirection === "y" && isHorizontal || lockedDirection === "x" && isVertical;
|
|
120
|
-
const relevantDelta = isHorizontal ? deltaX : deltaY;
|
|
121
|
-
const relevantVelocity = isHorizontal ? velocityX : velocityY;
|
|
122
|
-
const passedThreshold = Math.abs(relevantDelta) >= threshold;
|
|
123
|
-
const hasVelocity = relevantVelocity > VELOCITY_THRESHOLD;
|
|
124
|
-
let exitDirection = null;
|
|
125
|
-
if (!isLockedToWrongAxis) {
|
|
126
|
-
if (direction === "right" && deltaX > 0) exitDirection = "right";else if (direction === "left" && deltaX < 0) exitDirection = "left";else if (direction === "horizontal") {
|
|
127
|
-
if (Math.abs(deltaX) > Math.abs(deltaY)) {
|
|
128
|
-
exitDirection = deltaX > 0 ? "right" : "left";
|
|
129
|
-
}
|
|
130
|
-
} else if (direction === "down" && deltaY > 0) exitDirection = "down";else if (direction === "up" && deltaY < 0) exitDirection = "up";else if (direction === "vertical") {
|
|
131
|
-
if (Math.abs(deltaY) > Math.abs(deltaX)) {
|
|
132
|
-
exitDirection = deltaY > 0 ? "down" : "up";
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
const shouldDismiss = exitDirection && (passedThreshold || hasVelocity);
|
|
137
|
-
if (captureElementRef.current) {
|
|
138
|
-
try {
|
|
139
|
-
captureElementRef.current.releasePointerCapture(event.pointerId);
|
|
140
|
-
} catch {}
|
|
141
|
-
}
|
|
142
|
-
cleanup();
|
|
143
|
-
if (shouldDismiss && exitDirection) {
|
|
144
|
-
onDismiss(exitDirection, relevantVelocity);
|
|
145
|
-
} else {
|
|
146
|
-
onCancel();
|
|
147
|
-
}
|
|
148
|
-
}, [disabled, direction, threshold, isHorizontal, isVertical, onDismiss, onCancel, cleanup]);
|
|
149
|
-
const handlePointerCancel = React.useCallback(event => {
|
|
150
|
-
if (captureElementRef.current) {
|
|
151
|
-
try {
|
|
152
|
-
captureElementRef.current.releasePointerCapture(event.pointerId);
|
|
153
|
-
} catch {}
|
|
154
|
-
}
|
|
155
|
-
cleanup();
|
|
156
|
-
onCancel();
|
|
157
|
-
}, [onCancel, cleanup]);
|
|
158
|
-
const handleLostPointerCapture = React.useCallback(() => {
|
|
159
|
-
if (dragStartRef.current) {
|
|
160
|
-
cleanup();
|
|
161
|
-
onCancel();
|
|
162
|
-
}
|
|
163
|
-
}, [onCancel, cleanup]);
|
|
164
|
-
const gestureHandlers = {
|
|
165
|
-
onPointerDown: handlePointerDown,
|
|
166
|
-
onPointerMove: handlePointerMove,
|
|
167
|
-
onPointerUp: handlePointerUp,
|
|
168
|
-
onPointerCancel: handlePointerCancel,
|
|
169
|
-
onLostPointerCapture: handleLostPointerCapture
|
|
170
|
-
};
|
|
171
|
-
return {
|
|
172
|
-
isDragging,
|
|
173
|
-
gestureHandlers,
|
|
174
|
-
gesture: null
|
|
175
|
-
};
|
|
176
|
-
}
|
|
177
|
-
export { useAnimatedDragGesture };
|
|
178
|
-
//# sourceMappingURL=useAnimatedDragGesture.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["React","VELOCITY_THRESHOLD","resisted","delta","maxResist","pastBoundary","Math","abs","resistedDistance","sqrt","min","EXIT_DRAG_CAP","cappedExit","sign","overshoot","useAnimatedDragGesture","options","direction","threshold","disabled","expanded","onDragMove","onDragStart","onDismiss","onCancel","isDragging","setIsDragging","useState","dragStartRef","useRef","lockedDirectionRef","captureElementRef","isHorizontal","isVertical","preventSelectRef","startPreventingSelection","document","window","getSelection","removeAllRanges","handler","e","preventDefault","current","addEventListener","stopPreventingSelection","removeEventListener","cleanup","useCallback","useEffect","pointerId","releasePointerCapture","handlePointerDown","event","button","target","closest","hasSelection","toString","length","captureElement","currentTarget","setPointerCapture","startX","clientX","startY","clientY","startTime","Date","now","handlePointerMove","deltaX","deltaY","offsetX","offsetY","handlePointerUp","timeTaken","velocityX","velocityY","lockedDirection","isLockedToWrongAxis","relevantDelta","relevantVelocity","passedThreshold","hasVelocity","exitDirection","shouldDismiss","handlePointerCancel","handleLostPointerCapture","gestureHandlers","onPointerDown","onPointerMove","onPointerUp","onPointerCancel","onLostPointerCapture","gesture"],"sources":["../../src/useAnimatedDragGesture.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,185 +0,0 @@
|
|
|
1
|
-
import { getGestureHandler } from "@hanzogui/native";
|
|
2
|
-
import * as React from "react";
|
|
3
|
-
import { PanResponder } from "react-native";
|
|
4
|
-
var VELOCITY_THRESHOLD = 0.11;
|
|
5
|
-
var GESTURE_GRANT_THRESHOLD = 10;
|
|
6
|
-
function resisted(delta) {
|
|
7
|
-
var maxResist = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 25;
|
|
8
|
-
if (delta >= 0) return delta;
|
|
9
|
-
var pastBoundary = Math.abs(delta);
|
|
10
|
-
var resistedDistance = Math.sqrt(pastBoundary) * 2;
|
|
11
|
-
return -Math.min(resistedDistance, maxResist);
|
|
12
|
-
}
|
|
13
|
-
var EXIT_DRAG_CAP = 80;
|
|
14
|
-
function cappedExit(delta) {
|
|
15
|
-
if (Math.abs(delta) <= EXIT_DRAG_CAP) return delta;
|
|
16
|
-
var sign = delta > 0 ? 1 : -1;
|
|
17
|
-
var overshoot = Math.abs(delta) - EXIT_DRAG_CAP;
|
|
18
|
-
return sign * (EXIT_DRAG_CAP + Math.sqrt(overshoot) * 2);
|
|
19
|
-
}
|
|
20
|
-
function computeOffset(direction, dx, dy) {
|
|
21
|
-
var offsetX = 0;
|
|
22
|
-
var offsetY = 0;
|
|
23
|
-
if (direction === "right") {
|
|
24
|
-
offsetX = dx > 0 ? cappedExit(dx) : resisted(dx);
|
|
25
|
-
} else if (direction === "left") {
|
|
26
|
-
offsetX = dx < 0 ? cappedExit(dx) : -resisted(-dx);
|
|
27
|
-
} else if (direction === "down") {
|
|
28
|
-
offsetY = dy > 0 ? cappedExit(dy) : resisted(dy);
|
|
29
|
-
} else if (direction === "up") {
|
|
30
|
-
offsetY = dy < 0 ? cappedExit(dy) : -resisted(-dy);
|
|
31
|
-
} else if (direction === "horizontal") {
|
|
32
|
-
offsetX = cappedExit(dx);
|
|
33
|
-
} else if (direction === "vertical") {
|
|
34
|
-
offsetY = cappedExit(dy);
|
|
35
|
-
}
|
|
36
|
-
return {
|
|
37
|
-
offsetX,
|
|
38
|
-
offsetY
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
function computeExitDirection(direction, dx, dy) {
|
|
42
|
-
if (direction === "right" && dx > 0) return "right";
|
|
43
|
-
if (direction === "left" && dx < 0) return "left";
|
|
44
|
-
if (direction === "horizontal") {
|
|
45
|
-
if (Math.abs(dx) > Math.abs(dy)) return dx > 0 ? "right" : "left";
|
|
46
|
-
}
|
|
47
|
-
if (direction === "down" && dy > 0) return "down";
|
|
48
|
-
if (direction === "up" && dy < 0) return "up";
|
|
49
|
-
if (direction === "vertical") {
|
|
50
|
-
if (Math.abs(dy) > Math.abs(dx)) return dy > 0 ? "down" : "up";
|
|
51
|
-
}
|
|
52
|
-
return null;
|
|
53
|
-
}
|
|
54
|
-
function shouldGrantGestureMove(dir, dx, dy) {
|
|
55
|
-
var absDx = Math.abs(dx);
|
|
56
|
-
var absDy = Math.abs(dy);
|
|
57
|
-
if ((dir === "horizontal" || dir === "left" || dir === "right") && absDx > GESTURE_GRANT_THRESHOLD && absDx > absDy) {
|
|
58
|
-
return true;
|
|
59
|
-
}
|
|
60
|
-
if ((dir === "vertical" || dir === "up" || dir === "down") && absDy > GESTURE_GRANT_THRESHOLD && absDy > absDx) {
|
|
61
|
-
return true;
|
|
62
|
-
}
|
|
63
|
-
return false;
|
|
64
|
-
}
|
|
65
|
-
function useAnimatedDragGesture(options) {
|
|
66
|
-
var {
|
|
67
|
-
direction,
|
|
68
|
-
threshold,
|
|
69
|
-
disabled
|
|
70
|
-
} = options;
|
|
71
|
-
var [isDragging, setIsDragging] = React.useState(false);
|
|
72
|
-
var isHorizontal = direction === "left" || direction === "right" || direction === "horizontal";
|
|
73
|
-
var gestureRef = React.useRef(null);
|
|
74
|
-
var onDragMoveRef = React.useRef(options.onDragMove);
|
|
75
|
-
var onDragStartRef = React.useRef(options.onDragStart);
|
|
76
|
-
var onDismissRef = React.useRef(options.onDismiss);
|
|
77
|
-
var onCancelRef = React.useRef(options.onCancel);
|
|
78
|
-
onDragMoveRef.current = options.onDragMove;
|
|
79
|
-
onDragStartRef.current = options.onDragStart;
|
|
80
|
-
onDismissRef.current = options.onDismiss;
|
|
81
|
-
onCancelRef.current = options.onCancel;
|
|
82
|
-
var rnghEnabled = getGestureHandler().isEnabled;
|
|
83
|
-
var gesture = React.useMemo(function () {
|
|
84
|
-
if (!rnghEnabled || disabled) return null;
|
|
85
|
-
var {
|
|
86
|
-
Gesture
|
|
87
|
-
} = getGestureHandler().state;
|
|
88
|
-
if (!Gesture) return null;
|
|
89
|
-
var pan = Gesture.Pan().withRef(gestureRef).shouldCancelWhenOutside(false).runOnJS(true);
|
|
90
|
-
if (isHorizontal) {
|
|
91
|
-
pan.activeOffsetX([-10, 10]);
|
|
92
|
-
pan.failOffsetY([-20, 20]);
|
|
93
|
-
} else {
|
|
94
|
-
pan.activeOffsetY([-10, 10]);
|
|
95
|
-
pan.failOffsetX([-20, 20]);
|
|
96
|
-
}
|
|
97
|
-
pan.onStart(function () {
|
|
98
|
-
var _onDragStartRef_current;
|
|
99
|
-
setIsDragging(true);
|
|
100
|
-
(_onDragStartRef_current = onDragStartRef.current) === null || _onDragStartRef_current === void 0 ? void 0 : _onDragStartRef_current.call(onDragStartRef);
|
|
101
|
-
}).onChange(function (event) {
|
|
102
|
-
var {
|
|
103
|
-
offsetX,
|
|
104
|
-
offsetY
|
|
105
|
-
} = computeOffset(direction, event.translationX, event.translationY);
|
|
106
|
-
onDragMoveRef.current(offsetX, offsetY);
|
|
107
|
-
}).onEnd(function (event) {
|
|
108
|
-
var dx = event.translationX;
|
|
109
|
-
var dy = event.translationY;
|
|
110
|
-
var relevantDelta = isHorizontal ? dx : dy;
|
|
111
|
-
var relevantVelocity = isHorizontal ? Math.abs(event.velocityX / 1e3) : Math.abs(event.velocityY / 1e3);
|
|
112
|
-
var passedThreshold = Math.abs(relevantDelta) >= threshold;
|
|
113
|
-
var hasVelocity = relevantVelocity > VELOCITY_THRESHOLD;
|
|
114
|
-
var exitDirection = computeExitDirection(direction, dx, dy);
|
|
115
|
-
var shouldDismiss = exitDirection && (passedThreshold || hasVelocity);
|
|
116
|
-
setIsDragging(false);
|
|
117
|
-
if (shouldDismiss && exitDirection) {
|
|
118
|
-
onDismissRef.current(exitDirection, relevantVelocity);
|
|
119
|
-
} else {
|
|
120
|
-
onCancelRef.current();
|
|
121
|
-
}
|
|
122
|
-
}).onFinalize(function () {
|
|
123
|
-
setIsDragging(false);
|
|
124
|
-
});
|
|
125
|
-
return pan;
|
|
126
|
-
}, [disabled, direction, threshold, isHorizontal, rnghEnabled]);
|
|
127
|
-
var panResponder = React.useMemo(function () {
|
|
128
|
-
if (rnghEnabled || disabled) return null;
|
|
129
|
-
return PanResponder.create({
|
|
130
|
-
onMoveShouldSetPanResponder: function (_e, g) {
|
|
131
|
-
return shouldGrantGestureMove(direction, g.dx, g.dy);
|
|
132
|
-
},
|
|
133
|
-
onMoveShouldSetPanResponderCapture: function (_e, g) {
|
|
134
|
-
return shouldGrantGestureMove(direction, g.dx, g.dy);
|
|
135
|
-
},
|
|
136
|
-
onPanResponderTerminationRequest: function () {
|
|
137
|
-
return false;
|
|
138
|
-
},
|
|
139
|
-
onPanResponderGrant: function () {
|
|
140
|
-
var _onDragStartRef_current;
|
|
141
|
-
setIsDragging(true);
|
|
142
|
-
(_onDragStartRef_current = onDragStartRef.current) === null || _onDragStartRef_current === void 0 ? void 0 : _onDragStartRef_current.call(onDragStartRef);
|
|
143
|
-
},
|
|
144
|
-
onPanResponderMove: function (_e, g) {
|
|
145
|
-
var {
|
|
146
|
-
offsetX,
|
|
147
|
-
offsetY
|
|
148
|
-
} = computeOffset(direction, g.dx, g.dy);
|
|
149
|
-
onDragMoveRef.current(offsetX, offsetY);
|
|
150
|
-
},
|
|
151
|
-
onPanResponderRelease: function (_e, g) {
|
|
152
|
-
var {
|
|
153
|
-
dx,
|
|
154
|
-
dy,
|
|
155
|
-
vx,
|
|
156
|
-
vy
|
|
157
|
-
} = g;
|
|
158
|
-
var relevantDelta = isHorizontal ? dx : dy;
|
|
159
|
-
var relevantVelocity = isHorizontal ? Math.abs(vx) : Math.abs(vy);
|
|
160
|
-
var passedThreshold = Math.abs(relevantDelta) >= threshold;
|
|
161
|
-
var hasVelocity = relevantVelocity > VELOCITY_THRESHOLD;
|
|
162
|
-
var exitDirection = computeExitDirection(direction, dx, dy);
|
|
163
|
-
var shouldDismiss = exitDirection && (passedThreshold || hasVelocity);
|
|
164
|
-
setIsDragging(false);
|
|
165
|
-
if (shouldDismiss && exitDirection) {
|
|
166
|
-
onDismissRef.current(exitDirection, relevantVelocity);
|
|
167
|
-
} else {
|
|
168
|
-
onCancelRef.current();
|
|
169
|
-
}
|
|
170
|
-
},
|
|
171
|
-
onPanResponderTerminate: function () {
|
|
172
|
-
setIsDragging(false);
|
|
173
|
-
onCancelRef.current();
|
|
174
|
-
}
|
|
175
|
-
});
|
|
176
|
-
}, [disabled, direction, threshold, isHorizontal, rnghEnabled]);
|
|
177
|
-
var _panResponder_panHandlers;
|
|
178
|
-
return {
|
|
179
|
-
isDragging,
|
|
180
|
-
gestureHandlers: (_panResponder_panHandlers = panResponder === null || panResponder === void 0 ? void 0 : panResponder.panHandlers) !== null && _panResponder_panHandlers !== void 0 ? _panResponder_panHandlers : {},
|
|
181
|
-
gesture
|
|
182
|
-
};
|
|
183
|
-
}
|
|
184
|
-
export { useAnimatedDragGesture };
|
|
185
|
-
//# sourceMappingURL=useAnimatedDragGesture.native.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["getGestureHandler","React","PanResponder","VELOCITY_THRESHOLD","GESTURE_GRANT_THRESHOLD","resisted","delta","maxResist","arguments","length","pastBoundary","Math","abs","resistedDistance","sqrt","min","EXIT_DRAG_CAP","cappedExit","sign","overshoot","computeOffset","direction","dx","dy","offsetX","offsetY","computeExitDirection","shouldGrantGestureMove","dir","absDx","absDy","useAnimatedDragGesture","options","threshold","disabled","isDragging","setIsDragging","useState","isHorizontal","gestureRef","useRef","onDragMoveRef","onDragMove","onDragStartRef","onDragStart","onDismissRef","onDismiss","onCancelRef","onCancel","current","rnghEnabled","isEnabled","gesture","useMemo","Gesture","state","pan","Pan","withRef","shouldCancelWhenOutside","runOnJS","activeOffsetX","failOffsetY","activeOffsetY","failOffsetX","onStart","_onDragStartRef_current","call","onChange","event","translationX","translationY","onEnd","relevantDelta","relevantVelocity","velocityX","velocityY","passedThreshold","hasVelocity","exitDirection","shouldDismiss","onFinalize","panResponder","create","onMoveShouldSetPanResponder","_e","g","onMoveShouldSetPanResponderCapture","onPanResponderTerminationRequest","onPanResponderGrant","onPanResponderMove","onPanResponderRelease","vx","vy","onPanResponderTerminate","_panResponder_panHandlers","gestureHandlers","panHandlers"],"sources":["../../src/useAnimatedDragGesture.native.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { isWeb } from "@hanzogui/constants";
|
|
2
|
-
import * as React from "react";
|
|
3
|
-
let cachedResult = null;
|
|
4
|
-
function getReducedMotion() {
|
|
5
|
-
if (cachedResult !== null) return cachedResult;
|
|
6
|
-
if (!isWeb) {
|
|
7
|
-
cachedResult = false;
|
|
8
|
-
return false;
|
|
9
|
-
}
|
|
10
|
-
if (typeof window === "undefined") {
|
|
11
|
-
return false;
|
|
12
|
-
}
|
|
13
|
-
cachedResult = window.matchMedia?.("(prefers-reduced-motion: reduce)")?.matches ?? false;
|
|
14
|
-
return cachedResult;
|
|
15
|
-
}
|
|
16
|
-
function useReducedMotion(forceReducedMotion) {
|
|
17
|
-
const [reducedMotion, setReducedMotion] = React.useState(() => forceReducedMotion ?? getReducedMotion());
|
|
18
|
-
React.useEffect(() => {
|
|
19
|
-
if (forceReducedMotion !== void 0) {
|
|
20
|
-
setReducedMotion(forceReducedMotion);
|
|
21
|
-
return;
|
|
22
|
-
}
|
|
23
|
-
if (!isWeb || typeof window === "undefined") return;
|
|
24
|
-
const mediaQuery = window.matchMedia?.("(prefers-reduced-motion: reduce)");
|
|
25
|
-
if (!mediaQuery) return;
|
|
26
|
-
const handleChange = e => {
|
|
27
|
-
cachedResult = e.matches;
|
|
28
|
-
setReducedMotion(e.matches);
|
|
29
|
-
};
|
|
30
|
-
mediaQuery.addEventListener?.("change", handleChange);
|
|
31
|
-
return () => {
|
|
32
|
-
mediaQuery.removeEventListener?.("change", handleChange);
|
|
33
|
-
};
|
|
34
|
-
}, [forceReducedMotion]);
|
|
35
|
-
return reducedMotion;
|
|
36
|
-
}
|
|
37
|
-
export { useReducedMotion };
|
|
38
|
-
//# sourceMappingURL=useReducedMotion.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["isWeb","React","cachedResult","getReducedMotion","window","matchMedia","matches","useReducedMotion","forceReducedMotion","reducedMotion","setReducedMotion","useState","useEffect","mediaQuery","handleChange","e","addEventListener","removeEventListener"],"sources":["../../src/useReducedMotion.ts"],"sourcesContent":[null],"mappings":"AAKA,SAASA,KAAA,QAAa;AACtB,YAAYC,KAAA,MAAW;AAEvB,IAAIC,YAAA,GAA+B;AAEnC,SAASC,iBAAA,EAA4B;EACnC,IAAID,YAAA,KAAiB,MAAM,OAAOA,YAAA;EAElC,IAAI,CAACF,KAAA,EAAO;IAGVE,YAAA,GAAe;IACf,OAAO;EACT;EAEA,IAAI,OAAOE,MAAA,KAAW,aAAa;IACjC,OAAO;EACT;EAEAF,YAAA,GAAeE,MAAA,CAAOC,UAAA,GAAa,kCAAkC,GAAGC,OAAA,IAAW;EACnF,OAAOJ,YAAA;AACT;AAEO,SAASK,iBAAiBC,kBAAA,EAAuC;EACtE,MAAM,CAACC,aAAA,EAAeC,gBAAgB,IAAIT,KAAA,CAAMU,QAAA,CAC9C,MAAMH,kBAAA,IAAsBL,gBAAA,CAAiB,CAC/C;EAEAF,KAAA,CAAMW,SAAA,CAAU,MAAM;IAEpB,IAAIJ,kBAAA,KAAuB,QAAW;MACpCE,gBAAA,CAAiBF,kBAAkB;MACnC;IACF;IAGA,IAAI,CAACR,KAAA,IAAS,OAAOI,MAAA,KAAW,aAAa;IAE7C,MAAMS,UAAA,GAAaT,MAAA,CAAOC,UAAA,GAAa,kCAAkC;IACzE,IAAI,CAACQ,UAAA,EAAY;IAEjB,MAAMC,YAAA,GAAgBC,CAAA,IAA2B;MAC/Cb,YAAA,GAAea,CAAA,CAAET,OAAA;MACjBI,gBAAA,CAAiBK,CAAA,CAAET,OAAO;IAC5B;IAEAO,UAAA,CAAWG,gBAAA,GAAmB,UAAUF,YAAY;IACpD,OAAO,MAAM;MACXD,UAAA,CAAWI,mBAAA,GAAsB,UAAUH,YAAY;IACzD;EACF,GAAG,CAACN,kBAAkB,CAAC;EAEvB,OAAOC,aAAA;AACT","ignoreList":[]}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { isWeb } from "@hanzogui/constants";
|
|
2
|
-
import * as React from "react";
|
|
3
|
-
var cachedResult = null;
|
|
4
|
-
function getReducedMotion() {
|
|
5
|
-
var _window_matchMedia, _window_matchMedia1, _window;
|
|
6
|
-
if (cachedResult !== null) return cachedResult;
|
|
7
|
-
if (!isWeb) {
|
|
8
|
-
cachedResult = false;
|
|
9
|
-
return false;
|
|
10
|
-
}
|
|
11
|
-
if (typeof window === "undefined") {
|
|
12
|
-
return false;
|
|
13
|
-
}
|
|
14
|
-
var _window_matchMedia_matches;
|
|
15
|
-
cachedResult = (_window_matchMedia_matches = (_window_matchMedia1 = (_window = window).matchMedia) === null || _window_matchMedia1 === void 0 ? void 0 : (_window_matchMedia = _window_matchMedia1.call(_window, "(prefers-reduced-motion: reduce)")) === null || _window_matchMedia === void 0 ? void 0 : _window_matchMedia.matches) !== null && _window_matchMedia_matches !== void 0 ? _window_matchMedia_matches : false;
|
|
16
|
-
return cachedResult;
|
|
17
|
-
}
|
|
18
|
-
function useReducedMotion(forceReducedMotion) {
|
|
19
|
-
var [reducedMotion, setReducedMotion] = React.useState(function () {
|
|
20
|
-
return forceReducedMotion !== null && forceReducedMotion !== void 0 ? forceReducedMotion : getReducedMotion();
|
|
21
|
-
});
|
|
22
|
-
React.useEffect(function () {
|
|
23
|
-
var _window_matchMedia, _window, _mediaQuery_addEventListener;
|
|
24
|
-
if (forceReducedMotion !== void 0) {
|
|
25
|
-
setReducedMotion(forceReducedMotion);
|
|
26
|
-
return;
|
|
27
|
-
}
|
|
28
|
-
if (!isWeb || typeof window === "undefined") return;
|
|
29
|
-
var mediaQuery = (_window_matchMedia = (_window = window).matchMedia) === null || _window_matchMedia === void 0 ? void 0 : _window_matchMedia.call(_window, "(prefers-reduced-motion: reduce)");
|
|
30
|
-
if (!mediaQuery) return;
|
|
31
|
-
var handleChange = function (e) {
|
|
32
|
-
cachedResult = e.matches;
|
|
33
|
-
setReducedMotion(e.matches);
|
|
34
|
-
};
|
|
35
|
-
(_mediaQuery_addEventListener = mediaQuery.addEventListener) === null || _mediaQuery_addEventListener === void 0 ? void 0 : _mediaQuery_addEventListener.call(mediaQuery, "change", handleChange);
|
|
36
|
-
return function () {
|
|
37
|
-
var _mediaQuery_removeEventListener;
|
|
38
|
-
(_mediaQuery_removeEventListener = mediaQuery.removeEventListener) === null || _mediaQuery_removeEventListener === void 0 ? void 0 : _mediaQuery_removeEventListener.call(mediaQuery, "change", handleChange);
|
|
39
|
-
};
|
|
40
|
-
}, [forceReducedMotion]);
|
|
41
|
-
return reducedMotion;
|
|
42
|
-
}
|
|
43
|
-
export { useReducedMotion };
|
|
44
|
-
//# sourceMappingURL=useReducedMotion.native.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["isWeb","React","cachedResult","getReducedMotion","_window_matchMedia","_window_matchMedia1","_window","window","_window_matchMedia_matches","matchMedia","call","matches","useReducedMotion","forceReducedMotion","reducedMotion","setReducedMotion","useState","useEffect","_mediaQuery_addEventListener","mediaQuery","handleChange","e","addEventListener","_mediaQuery_removeEventListener","removeEventListener"],"sources":["../../src/useReducedMotion.ts"],"sourcesContent":[null],"mappings":"AAKA,SAASA,KAAA,QAAa;AACtB,YAAYC,KAAA,MAAW;AAEvB,IAAIC,YAAA,GAA+B;AAEnC,SAASC,iBAAA,EAA4B;EACnC,IAAIC,kBAAiB,EAAAC,mBAAa,EAAAC,OAAA;EAElC,IAAIJ,YAAQ,kBAAAA,YAAA;EAGV,KAAAF,KAAA;IACAE,YAAO;IACT;EAEA;EACE,WAAOK,MAAA;IACT;EAEA;EACA,IAAAC,0BAAO;EACTN,YAAA,IAAAM,0BAAA,IAAAH,mBAAA,IAAAC,OAAA,GAAAC,MAAA,EAAAE,UAAA,cAAAJ,mBAAA,wBAAAD,kBAAA,GAAAC,mBAAA,CAAAK,IAAA,CAAAJ,OAAA,mDAAAF,kBAAA,uBAAAA,kBAAA,CAAAO,OAAA,cAAAH,0BAAA,cAAAA,0BAAA;EAEO,OAASN,YAAA;AACd;AAAgD,SAC9CU,gBAAMA,CAAAC,kBAAsB;EAC9B,KAAAC,aAAA,EAAAC,gBAAA,IAAAd,KAAA,CAAAe,QAAA;IAEA,OAAMH,kBAAgB,aAAAA,kBAAA,cAAAA,kBAAA,GAAAV,gBAAA;EAEpB;EACEF,KAAA,CAAAgB,SAAA,aAAiB;IACjB,IAAAb,kBAAA,EAAAE,OAAA,EAAAY,4BAAA;IACF,IAAAL,kBAAA;MAGAE,gBAAc,CAAAF,kBAAkB;MAEhC;IACA;IAEA,KAAAb,KAAM,WAAeO,MAAC,KAA2B;IAC/C,IAAAY,UAAA,GAAe,CAAAf,kBAAE,IAAAE,OAAA,GAAAC,MAAA,EAAAE,UAAA,cAAAL,kBAAA,uBAAAA,kBAAA,CAAAM,IAAA,CAAAJ,OAAA;IACjB,KAAAa,UAAA;IACF,IAAAC,YAAA,YAAAA,CAAAC,CAAA;MAEAnB,YAAW,GAAAmB,CAAA,CAAAV,OAAA;MACXI,gBAAa,CAAAM,CAAA,CAAAV,OAAA;IACX;IACF,CAAAO,4BAAA,GAAAC,UAAA,CAAAG,gBAAA,cAAAJ,4BAAA,uBAAAA,4BAAA,CAAAR,IAAA,CAAAS,UAAA,YAAAC,YAAA;IACF,OAAI;MAEJ,IAAOG,+BAAA;MACT,CAAAA,+BAAA,GAAAJ,UAAA,CAAAK,mBAAA,cAAAD,+BAAA,uBAAAA,+BAAA,CAAAb,IAAA,CAAAS,UAAA,YAAAC,YAAA","ignoreList":[]}
|