react-native-screen-transitions 3.8.0-beta.0 → 3.8.0-beta.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/lib/commonjs/shared/animation/snap-to.js +1 -1
- package/lib/commonjs/shared/animation/snap-to.js.map +1 -1
- package/lib/commonjs/shared/components/activity/variants/activity-screen.js +10 -2
- package/lib/commonjs/shared/components/activity/variants/activity-screen.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js +2 -2
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-refresh-boundary.js +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-refresh-boundary.js.map +1 -1
- package/lib/commonjs/shared/components/overlay/variations/float-overlay.js +9 -6
- package/lib/commonjs/shared/components/overlay/variations/float-overlay.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/hooks/use-content-layout.js +2 -2
- package/lib/commonjs/shared/components/screen-container/hooks/use-content-layout.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/backdrop.js +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/backdrop.js.map +1 -1
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-open-transition-intent.js +2 -2
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-open-transition-intent.js.map +1 -1
- package/lib/commonjs/shared/configs/presets.js +5 -8
- package/lib/commonjs/shared/configs/presets.js.map +1 -1
- package/lib/commonjs/shared/constants.js +18 -2
- package/lib/commonjs/shared/constants.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/build-screen-transition-options.js +2 -8
- package/lib/commonjs/shared/providers/screen/animation/helpers/build-screen-transition-options.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.js +26 -31
- package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +29 -4
- package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js +3 -3
- package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/stack-progress.js +3 -3
- package/lib/commonjs/shared/providers/screen/animation/helpers/stack-progress.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js +2 -2
- package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js +6 -7
- package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js +3 -7
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/activation/pan-activation-decision.js +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/activation/pan-activation-decision.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/activation/use-pan-activation.js +7 -4
- package/lib/commonjs/shared/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js +20 -36
- package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-release.js +12 -21
- package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-release.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-reset.js +40 -39
- package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-reset.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js +11 -21
- package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/use-build-pan-gesture.js +4 -11
- package/lib/commonjs/shared/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js +12 -10
- package/lib/commonjs/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +13 -10
- package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-release.js +15 -11
- package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-release.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js +28 -23
- package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js +3 -3
- package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js +4 -11
- package/lib/commonjs/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js +12 -10
- package/lib/commonjs/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js +3 -10
- package/lib/commonjs/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/shared/physics.js +23 -23
- package/lib/commonjs/shared/providers/screen/gestures/shared/physics.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/shared/policy.js +0 -11
- package/lib/commonjs/shared/providers/screen/gestures/shared/policy.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/shared/reset.js +17 -10
- package/lib/commonjs/shared/providers/screen/gestures/shared/reset.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/shared/snap-points.js +6 -7
- package/lib/commonjs/shared/providers/screen/gestures/shared/snap-points.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/shared/snapshot.js +32 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/snapshot.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/values.js +65 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/values.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/types.js +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/types.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/options/helpers.js +1 -19
- package/lib/commonjs/shared/providers/screen/options/helpers.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +8 -8
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +2 -2
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
- package/lib/commonjs/shared/stores/animation.store.js +6 -6
- package/lib/commonjs/shared/stores/animation.store.js.map +1 -1
- package/lib/commonjs/shared/stores/gesture.store.js +56 -0
- package/lib/commonjs/shared/stores/gesture.store.js.map +1 -1
- package/lib/commonjs/shared/types/gesture.types.js +6 -0
- package/lib/commonjs/shared/types/gesture.types.js.map +1 -1
- package/lib/commonjs/shared/utils/animation/animate-to-progress.js +3 -3
- package/lib/commonjs/shared/utils/animation/animate-to-progress.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/prepare-bound-styles.js +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/prepare-bound-styles.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js +39 -34
- package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js +37 -28
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
- package/lib/module/shared/animation/snap-to.js +1 -1
- package/lib/module/shared/animation/snap-to.js.map +1 -1
- package/lib/module/shared/components/activity/variants/activity-screen.js +10 -2
- package/lib/module/shared/components/activity/variants/activity-screen.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js +2 -2
- package/lib/module/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/hooks/use-refresh-boundary.js +1 -1
- package/lib/module/shared/components/create-boundary-component/hooks/use-refresh-boundary.js.map +1 -1
- package/lib/module/shared/components/overlay/variations/float-overlay.js +9 -6
- package/lib/module/shared/components/overlay/variations/float-overlay.js.map +1 -1
- package/lib/module/shared/components/screen-container/hooks/use-content-layout.js +2 -2
- package/lib/module/shared/components/screen-container/hooks/use-content-layout.js.map +1 -1
- package/lib/module/shared/components/screen-container/layers/backdrop.js +1 -1
- package/lib/module/shared/components/screen-container/layers/backdrop.js.map +1 -1
- package/lib/module/shared/components/screen-lifecycle/hooks/use-open-transition-intent.js +2 -2
- package/lib/module/shared/components/screen-lifecycle/hooks/use-open-transition-intent.js.map +1 -1
- package/lib/module/shared/configs/presets.js +5 -8
- package/lib/module/shared/configs/presets.js.map +1 -1
- package/lib/module/shared/constants.js +17 -1
- package/lib/module/shared/constants.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/build-screen-transition-options.js +2 -8
- package/lib/module/shared/providers/screen/animation/helpers/build-screen-transition-options.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.js +25 -30
- package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +30 -5
- package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/pipeline.js +3 -3
- package/lib/module/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/stack-progress.js +3 -3
- package/lib/module/shared/providers/screen/animation/helpers/stack-progress.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js +2 -2
- package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/gestures.provider.js +6 -7
- package/lib/module/shared/providers/screen/gestures/gestures.provider.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js +3 -7
- package/lib/module/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pan/activation/pan-activation-decision.js +1 -1
- package/lib/module/shared/providers/screen/gestures/pan/activation/pan-activation-decision.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pan/activation/use-pan-activation.js +7 -4
- package/lib/module/shared/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js +20 -36
- package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-release.js +12 -21
- package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-release.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-reset.js +42 -41
- package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-reset.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js +11 -21
- package/lib/module/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pan/use-build-pan-gesture.js +4 -11
- package/lib/module/shared/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js +12 -10
- package/lib/module/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +13 -10
- package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-release.js +16 -12
- package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-release.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js +30 -25
- package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js +3 -3
- package/lib/module/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js +4 -11
- package/lib/module/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js +12 -10
- package/lib/module/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js +3 -10
- package/lib/module/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/shared/physics.js +21 -22
- package/lib/module/shared/providers/screen/gestures/shared/physics.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/shared/policy.js +1 -12
- package/lib/module/shared/providers/screen/gestures/shared/policy.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/shared/reset.js +17 -8
- package/lib/module/shared/providers/screen/gestures/shared/reset.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/shared/snap-points.js +6 -7
- package/lib/module/shared/providers/screen/gestures/shared/snap-points.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/shared/snapshot.js +27 -0
- package/lib/module/shared/providers/screen/gestures/shared/snapshot.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/shared/values.js +54 -0
- package/lib/module/shared/providers/screen/gestures/shared/values.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/types.js +1 -1
- package/lib/module/shared/providers/screen/gestures/types.js.map +1 -1
- package/lib/module/shared/providers/screen/options/helpers.js +2 -20
- package/lib/module/shared/providers/screen/options/helpers.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +8 -8
- package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +2 -2
- package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
- package/lib/module/shared/stores/animation.store.js +6 -6
- package/lib/module/shared/stores/animation.store.js.map +1 -1
- package/lib/module/shared/stores/gesture.store.js +56 -0
- package/lib/module/shared/stores/gesture.store.js.map +1 -1
- package/lib/module/shared/types/animation.types.js.map +1 -1
- package/lib/module/shared/types/gesture.types.js +7 -0
- package/lib/module/shared/types/gesture.types.js.map +1 -1
- package/lib/module/shared/utils/animation/animate-to-progress.js +3 -3
- package/lib/module/shared/utils/animation/animate-to-progress.js.map +1 -1
- package/lib/module/shared/utils/bounds/helpers/prepare-bound-styles.js +1 -1
- package/lib/module/shared/utils/bounds/helpers/prepare-bound-styles.js.map +1 -1
- package/lib/module/shared/utils/bounds/navigation/reveal/build.js +39 -34
- package/lib/module/shared/utils/bounds/navigation/reveal/build.js.map +1 -1
- package/lib/module/shared/utils/bounds/navigation/zoom/build.js +37 -28
- package/lib/module/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-refresh-boundary.d.ts.map +1 -1
- package/lib/typescript/shared/components/overlay/variations/float-overlay.d.ts.map +1 -1
- package/lib/typescript/shared/configs/presets.d.ts.map +1 -1
- package/lib/typescript/shared/constants.d.ts +1 -2
- package/lib/typescript/shared/constants.d.ts.map +1 -1
- package/lib/typescript/shared/index.d.ts +1 -1
- package/lib/typescript/shared/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/build-screen-transition-options.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.d.ts +7 -3
- package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/types.d.ts +2 -2
- package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/types.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/stack-progress.d.ts +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/stack-progress.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts +2 -2
- package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/gestures.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-stable-runtime-config.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pan/activation/use-pan-activation.d.ts +3 -3
- package/lib/typescript/shared/providers/screen/gestures/pan/activation/use-pan-activation.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.d.ts +2 -2
- package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-release.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-reset.d.ts +3 -12
- package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-reset.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.d.ts +2 -2
- package/lib/typescript/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pan/use-build-pan-gesture.d.ts +3 -3
- package/lib/typescript/shared/providers/screen/gestures/pan/use-build-pan-gesture.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts +3 -3
- package/lib/typescript/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-release.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-reset.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.d.ts +2 -2
- package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.d.ts +3 -3
- package/lib/typescript/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.d.ts +3 -3
- package/lib/typescript/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.d.ts +3 -3
- package/lib/typescript/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/shared/physics.d.ts +3 -3
- package/lib/typescript/shared/providers/screen/gestures/shared/physics.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/shared/policy.d.ts +1 -3
- package/lib/typescript/shared/providers/screen/gestures/shared/policy.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/shared/reset.d.ts +7 -4
- package/lib/typescript/shared/providers/screen/gestures/shared/reset.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/shared/snap-points.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/shared/snapshot.d.ts +7 -0
- package/lib/typescript/shared/providers/screen/gestures/shared/snapshot.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/shared/values.d.ts +9 -0
- package/lib/typescript/shared/providers/screen/gestures/shared/values.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/types.d.ts +6 -13
- package/lib/typescript/shared/providers/screen/gestures/types.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/options/helpers.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/options/types.d.ts +0 -2
- package/lib/typescript/shared/providers/screen/options/types.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts.map +1 -1
- package/lib/typescript/shared/stores/animation.store.d.ts +4 -4
- package/lib/typescript/shared/stores/animation.store.d.ts.map +1 -1
- package/lib/typescript/shared/stores/gesture.store.d.ts +23 -0
- package/lib/typescript/shared/stores/gesture.store.d.ts.map +1 -1
- package/lib/typescript/shared/types/animation.types.d.ts +8 -0
- package/lib/typescript/shared/types/animation.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/bounds.types.d.ts +12 -8
- package/lib/typescript/shared/types/bounds.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/gesture.types.d.ts +47 -13
- package/lib/typescript/shared/types/gesture.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/index.d.ts +1 -1
- package/lib/typescript/shared/types/index.d.ts.map +1 -1
- package/lib/typescript/shared/types/screen.types.d.ts +25 -8
- package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/navigation/reveal/build.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/navigation/zoom/build.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/types/options.d.ts +8 -0
- package/lib/typescript/shared/utils/bounds/types/options.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/shared/animation/snap-to.ts +1 -1
- package/src/shared/components/activity/variants/activity-screen.tsx +8 -2
- package/src/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.ts +5 -2
- package/src/shared/components/create-boundary-component/hooks/use-refresh-boundary.ts +4 -1
- package/src/shared/components/overlay/variations/float-overlay.tsx +11 -5
- package/src/shared/components/screen-container/hooks/use-content-layout.ts +2 -2
- package/src/shared/components/screen-container/layers/backdrop.tsx +1 -1
- package/src/shared/components/screen-lifecycle/hooks/use-open-transition-intent.ts +2 -2
- package/src/shared/configs/presets.ts +6 -8
- package/src/shared/constants.ts +16 -6
- package/src/shared/index.ts +2 -0
- package/src/shared/providers/screen/animation/helpers/build-screen-transition-options.ts +2 -17
- package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.ts +54 -53
- package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/index.ts +72 -8
- package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/types.ts +2 -2
- package/src/shared/providers/screen/animation/helpers/pipeline.ts +3 -3
- package/src/shared/providers/screen/animation/helpers/stack-progress.ts +3 -3
- package/src/shared/providers/screen/animation/helpers/use-build-transition-state.ts +4 -4
- package/src/shared/providers/screen/gestures/gestures.provider.tsx +7 -9
- package/src/shared/providers/screen/gestures/hooks/use-stable-runtime-config.ts +2 -5
- package/src/shared/providers/screen/gestures/pan/activation/pan-activation-decision.ts +1 -1
- package/src/shared/providers/screen/gestures/pan/activation/use-pan-activation.ts +9 -7
- package/src/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.ts +25 -38
- package/src/shared/providers/screen/gestures/pan/behavior/pan-release.ts +23 -25
- package/src/shared/providers/screen/gestures/pan/behavior/pan-reset.ts +45 -77
- package/src/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.ts +12 -20
- package/src/shared/providers/screen/gestures/pan/use-build-pan-gesture.ts +5 -11
- package/src/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.ts +14 -16
- package/src/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.ts +13 -9
- package/src/shared/providers/screen/gestures/pinch/behavior/pinch-release.ts +31 -16
- package/src/shared/providers/screen/gestures/pinch/behavior/pinch-reset.ts +32 -41
- package/src/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.ts +4 -4
- package/src/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.ts +5 -10
- package/src/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.ts +14 -13
- package/src/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.ts +4 -9
- package/src/shared/providers/screen/gestures/shared/physics.ts +15 -32
- package/src/shared/providers/screen/gestures/shared/policy.ts +0 -15
- package/src/shared/providers/screen/gestures/shared/reset.ts +33 -11
- package/src/shared/providers/screen/gestures/shared/snap-points.ts +8 -7
- package/src/shared/providers/screen/gestures/shared/snapshot.ts +33 -0
- package/src/shared/providers/screen/gestures/shared/values.ts +52 -0
- package/src/shared/providers/screen/gestures/types.ts +4 -13
- package/src/shared/providers/screen/options/helpers.ts +0 -44
- package/src/shared/providers/screen/options/types.ts +0 -2
- package/src/shared/providers/screen/styles/hooks/use-interpolated-style-maps.tsx +8 -8
- package/src/shared/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +3 -2
- package/src/shared/stores/animation.store.ts +8 -8
- package/src/shared/stores/gesture.store.ts +81 -0
- package/src/shared/types/animation.types.ts +9 -0
- package/src/shared/types/bounds.types.ts +12 -8
- package/src/shared/types/gesture.types.ts +48 -14
- package/src/shared/types/index.ts +2 -0
- package/src/shared/types/screen.types.ts +25 -8
- package/src/shared/utils/animation/animate-to-progress.ts +3 -3
- package/src/shared/utils/bounds/helpers/prepare-bound-styles.ts +1 -1
- package/src/shared/utils/bounds/navigation/reveal/build.ts +42 -46
- package/src/shared/utils/bounds/navigation/zoom/build.ts +36 -33
- package/src/shared/utils/bounds/types/options.ts +9 -0
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-gesture-builder-state.js +0 -32
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-gesture-builder-state.js.map +0 -1
- package/lib/commonjs/shared/utils/gesture-progress-mode.js +0 -50
- package/lib/commonjs/shared/utils/gesture-progress-mode.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/hooks/use-gesture-builder-state.js +0 -27
- package/lib/module/shared/providers/screen/gestures/hooks/use-gesture-builder-state.js.map +0 -1
- package/lib/module/shared/utils/gesture-progress-mode.js +0 -42
- package/lib/module/shared/utils/gesture-progress-mode.js.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-gesture-builder-state.d.ts +0 -21
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-gesture-builder-state.d.ts.map +0 -1
- package/lib/typescript/shared/utils/gesture-progress-mode.d.ts +0 -14
- package/lib/typescript/shared/utils/gesture-progress-mode.d.ts.map +0 -1
- package/src/shared/providers/screen/gestures/hooks/use-gesture-builder-state.ts +0 -31
- package/src/shared/utils/gesture-progress-mode.ts +0 -67
|
@@ -19,6 +19,30 @@ type GestureRawStoreMap = {
|
|
|
19
19
|
rotation: SharedValue<number>;
|
|
20
20
|
};
|
|
21
21
|
|
|
22
|
+
type GestureSnapshotStoreMap = {
|
|
23
|
+
x: SharedValue<number>;
|
|
24
|
+
y: SharedValue<number>;
|
|
25
|
+
normX: SharedValue<number>;
|
|
26
|
+
normY: SharedValue<number>;
|
|
27
|
+
velocity: SharedValue<number>;
|
|
28
|
+
scale: SharedValue<number>;
|
|
29
|
+
normScale: SharedValue<number>;
|
|
30
|
+
focalX: SharedValue<number>;
|
|
31
|
+
focalY: SharedValue<number>;
|
|
32
|
+
rotation: SharedValue<number>;
|
|
33
|
+
raw: GestureRawStoreMap;
|
|
34
|
+
active: SharedValue<ActiveGesture | null>;
|
|
35
|
+
direction: SharedValue<ResolvedPanGestureDirection | null>;
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
type GestureInternalStoreMap = {
|
|
39
|
+
progressBaseline: SharedValue<number>;
|
|
40
|
+
progressDeltaX: SharedValue<number>;
|
|
41
|
+
progressDeltaY: SharedValue<number>;
|
|
42
|
+
lockedSnapPoint: SharedValue<number | null>;
|
|
43
|
+
snapshot: GestureSnapshotStoreMap;
|
|
44
|
+
};
|
|
45
|
+
|
|
22
46
|
export type GestureStoreMap = {
|
|
23
47
|
x: SharedValue<number>;
|
|
24
48
|
y: SharedValue<number>;
|
|
@@ -31,6 +55,7 @@ export type GestureStoreMap = {
|
|
|
31
55
|
focalY: SharedValue<number>;
|
|
32
56
|
rotation: SharedValue<number>;
|
|
33
57
|
raw: GestureRawStoreMap;
|
|
58
|
+
internal: GestureInternalStoreMap;
|
|
34
59
|
dismissing: SharedValue<number>;
|
|
35
60
|
dragging: SharedValue<number>;
|
|
36
61
|
settling: SharedValue<number>;
|
|
@@ -57,6 +82,10 @@ export type GestureStoreMap = {
|
|
|
57
82
|
};
|
|
58
83
|
|
|
59
84
|
function createGestureBag(): GestureStoreMap {
|
|
85
|
+
const progressBaseline = makeMutable(0);
|
|
86
|
+
const progressDeltaX = makeMutable(0);
|
|
87
|
+
const progressDeltaY = makeMutable(0);
|
|
88
|
+
const lockedSnapPoint = makeMutable<number | null>(null);
|
|
60
89
|
const normX = makeMutable(0);
|
|
61
90
|
const normY = makeMutable(0);
|
|
62
91
|
const scale = makeMutable(1);
|
|
@@ -86,6 +115,35 @@ function createGestureBag(): GestureStoreMap {
|
|
|
86
115
|
normScale: makeMutable(0),
|
|
87
116
|
rotation: makeMutable(0),
|
|
88
117
|
},
|
|
118
|
+
internal: {
|
|
119
|
+
progressBaseline,
|
|
120
|
+
progressDeltaX,
|
|
121
|
+
progressDeltaY,
|
|
122
|
+
lockedSnapPoint,
|
|
123
|
+
snapshot: {
|
|
124
|
+
x: makeMutable(0),
|
|
125
|
+
y: makeMutable(0),
|
|
126
|
+
normX: makeMutable(0),
|
|
127
|
+
normY: makeMutable(0),
|
|
128
|
+
velocity: makeMutable(0),
|
|
129
|
+
scale: makeMutable(1),
|
|
130
|
+
normScale: makeMutable(0),
|
|
131
|
+
focalX: makeMutable(0),
|
|
132
|
+
focalY: makeMutable(0),
|
|
133
|
+
rotation: makeMutable(0),
|
|
134
|
+
raw: {
|
|
135
|
+
x: makeMutable(0),
|
|
136
|
+
y: makeMutable(0),
|
|
137
|
+
normX: makeMutable(0),
|
|
138
|
+
normY: makeMutable(0),
|
|
139
|
+
scale: makeMutable(1),
|
|
140
|
+
normScale: makeMutable(0),
|
|
141
|
+
rotation: makeMutable(0),
|
|
142
|
+
},
|
|
143
|
+
active: makeMutable<ActiveGesture | null>(null),
|
|
144
|
+
direction: makeMutable<ResolvedPanGestureDirection | null>(null),
|
|
145
|
+
},
|
|
146
|
+
},
|
|
89
147
|
dismissing,
|
|
90
148
|
dragging,
|
|
91
149
|
settling,
|
|
@@ -127,6 +185,29 @@ export const GestureStore = createStore<GestureStoreMap>({
|
|
|
127
185
|
cancelAnimation(bag.raw.scale);
|
|
128
186
|
cancelAnimation(bag.raw.normScale);
|
|
129
187
|
cancelAnimation(bag.raw.rotation);
|
|
188
|
+
cancelAnimation(bag.internal.progressBaseline);
|
|
189
|
+
cancelAnimation(bag.internal.progressDeltaX);
|
|
190
|
+
cancelAnimation(bag.internal.progressDeltaY);
|
|
191
|
+
cancelAnimation(bag.internal.lockedSnapPoint);
|
|
192
|
+
cancelAnimation(bag.internal.snapshot.x);
|
|
193
|
+
cancelAnimation(bag.internal.snapshot.y);
|
|
194
|
+
cancelAnimation(bag.internal.snapshot.normX);
|
|
195
|
+
cancelAnimation(bag.internal.snapshot.normY);
|
|
196
|
+
cancelAnimation(bag.internal.snapshot.velocity);
|
|
197
|
+
cancelAnimation(bag.internal.snapshot.scale);
|
|
198
|
+
cancelAnimation(bag.internal.snapshot.normScale);
|
|
199
|
+
cancelAnimation(bag.internal.snapshot.focalX);
|
|
200
|
+
cancelAnimation(bag.internal.snapshot.focalY);
|
|
201
|
+
cancelAnimation(bag.internal.snapshot.rotation);
|
|
202
|
+
cancelAnimation(bag.internal.snapshot.raw.x);
|
|
203
|
+
cancelAnimation(bag.internal.snapshot.raw.y);
|
|
204
|
+
cancelAnimation(bag.internal.snapshot.raw.normX);
|
|
205
|
+
cancelAnimation(bag.internal.snapshot.raw.normY);
|
|
206
|
+
cancelAnimation(bag.internal.snapshot.raw.scale);
|
|
207
|
+
cancelAnimation(bag.internal.snapshot.raw.normScale);
|
|
208
|
+
cancelAnimation(bag.internal.snapshot.raw.rotation);
|
|
209
|
+
cancelAnimation(bag.internal.snapshot.active);
|
|
210
|
+
cancelAnimation(bag.internal.snapshot.direction);
|
|
130
211
|
cancelAnimation(bag.dismissing);
|
|
131
212
|
cancelAnimation(bag.dragging);
|
|
132
213
|
cancelAnimation(bag.settling);
|
|
@@ -48,6 +48,15 @@ export type ScreenTransitionState = {
|
|
|
48
48
|
*/
|
|
49
49
|
progress: number;
|
|
50
50
|
|
|
51
|
+
/**
|
|
52
|
+
* Transition progress without live gesture contribution.
|
|
53
|
+
*
|
|
54
|
+
* `progress` is always the visual progress, including live pan or pinch
|
|
55
|
+
* movement. Use `transitionProgress` when an interpolator needs the committed
|
|
56
|
+
* transition progress as if the current gesture were not active.
|
|
57
|
+
*/
|
|
58
|
+
transitionProgress: number;
|
|
59
|
+
|
|
51
60
|
/**
|
|
52
61
|
* Whether this screen is in the process of being dismissed.
|
|
53
62
|
* - `0`: Screen is opening or active
|
|
@@ -98,11 +98,13 @@ export type BoundsNavigationZoomOptions = {
|
|
|
98
98
|
*/
|
|
99
99
|
velocityDepth?: number;
|
|
100
100
|
/**
|
|
101
|
-
*
|
|
102
|
-
* freeform gesture values. Zoom defaults to `"freeform"` so drag can move the
|
|
103
|
-
* content without owning the whole screen progress.
|
|
101
|
+
* Deprecated compatibility option.
|
|
104
102
|
*
|
|
105
|
-
*
|
|
103
|
+
* Gesture movement now always contributes to `progress`; use `transitionProgress`
|
|
104
|
+
* when a recipe needs transition progress without live gesture contribution.
|
|
105
|
+
* The zoom helper no longer reads this option.
|
|
106
|
+
*
|
|
107
|
+
* @deprecated Use `transitionProgress` from interpolation state instead.
|
|
106
108
|
*/
|
|
107
109
|
gestureProgressMode?: GestureProgressMode;
|
|
108
110
|
/**
|
|
@@ -224,11 +226,13 @@ export type BoundsNavigationRevealOptions = {
|
|
|
224
226
|
*/
|
|
225
227
|
velocityDepth?: number;
|
|
226
228
|
/**
|
|
227
|
-
*
|
|
228
|
-
*
|
|
229
|
-
*
|
|
229
|
+
* Deprecated compatibility option.
|
|
230
|
+
*
|
|
231
|
+
* Gesture movement now always contributes to `progress`; use `transitionProgress`
|
|
232
|
+
* when a recipe needs transition progress without live gesture contribution.
|
|
233
|
+
* The reveal helper no longer reads this option.
|
|
230
234
|
*
|
|
231
|
-
* @
|
|
235
|
+
* @deprecated Use `transitionProgress` from interpolation state instead.
|
|
232
236
|
*/
|
|
233
237
|
gestureProgressMode?: GestureProgressMode;
|
|
234
238
|
/**
|
|
@@ -134,6 +134,36 @@ export type RawGestureValues = {
|
|
|
134
134
|
rotation: number;
|
|
135
135
|
};
|
|
136
136
|
|
|
137
|
+
/**
|
|
138
|
+
* Gesture values used when a release hands off into a dismiss animation.
|
|
139
|
+
*
|
|
140
|
+
* These match live gesture values while a screen is not dismissing, then read
|
|
141
|
+
* from the release snapshot while dismissal is in flight.
|
|
142
|
+
*/
|
|
143
|
+
export type GestureHandoffValues = {
|
|
144
|
+
x: number;
|
|
145
|
+
y: number;
|
|
146
|
+
normX: number;
|
|
147
|
+
normY: number;
|
|
148
|
+
velocity: number;
|
|
149
|
+
scale: number;
|
|
150
|
+
normScale: number;
|
|
151
|
+
focalX: number;
|
|
152
|
+
focalY: number;
|
|
153
|
+
rotation: number;
|
|
154
|
+
raw: RawGestureValues;
|
|
155
|
+
/**
|
|
156
|
+
* The gesture associated with the handoff values.
|
|
157
|
+
*/
|
|
158
|
+
active: ActiveGesture | null;
|
|
159
|
+
/**
|
|
160
|
+
* The pan direction associated with the handoff values.
|
|
161
|
+
*
|
|
162
|
+
* @deprecated Use `active` instead.
|
|
163
|
+
*/
|
|
164
|
+
direction: ResolvedPanGestureDirection | null;
|
|
165
|
+
};
|
|
166
|
+
|
|
137
167
|
export type GestureValues = {
|
|
138
168
|
/**
|
|
139
169
|
* The live horizontal translation of the gesture.
|
|
@@ -154,9 +184,6 @@ export type GestureValues = {
|
|
|
154
184
|
/**
|
|
155
185
|
* A 0-1 scalar derived from the pan velocity magnitude, normalized against
|
|
156
186
|
* a screen-relative full-flick threshold.
|
|
157
|
-
*
|
|
158
|
-
* This is live while dragging, frozen at release during dismiss animations,
|
|
159
|
-
* and reset to 0 while idle or settling from a cancelled gesture.
|
|
160
187
|
*/
|
|
161
188
|
velocity: number;
|
|
162
189
|
/**
|
|
@@ -183,6 +210,24 @@ export type GestureValues = {
|
|
|
183
210
|
* Physical gesture values before `gestureSensitivity` is applied.
|
|
184
211
|
*/
|
|
185
212
|
raw: RawGestureValues;
|
|
213
|
+
/**
|
|
214
|
+
* The gesture that is currently active.
|
|
215
|
+
*/
|
|
216
|
+
active: ActiveGesture | null;
|
|
217
|
+
/**
|
|
218
|
+
* The initial pan direction that activated the gesture.
|
|
219
|
+
*
|
|
220
|
+
* @deprecated Use `active` instead.
|
|
221
|
+
*/
|
|
222
|
+
direction: ResolvedPanGestureDirection | null;
|
|
223
|
+
/**
|
|
224
|
+
* Gesture values latched at the release boundary for animation handoff.
|
|
225
|
+
*
|
|
226
|
+
* While dragging, these values match the live gesture values. During a
|
|
227
|
+
* dismissing release, they read from the release snapshot so live gesture
|
|
228
|
+
* values can reset without breaking handoff animations.
|
|
229
|
+
*/
|
|
230
|
+
handoff: GestureHandoffValues;
|
|
186
231
|
/**
|
|
187
232
|
* A flag indicating if the screen is in the process of dismissing (0 or 1).
|
|
188
233
|
*/
|
|
@@ -195,17 +240,6 @@ export type GestureValues = {
|
|
|
195
240
|
* A flag indicating if released gesture values are animating back to neutral.
|
|
196
241
|
*/
|
|
197
242
|
settling: number;
|
|
198
|
-
/**
|
|
199
|
-
* The gesture that is currently active.
|
|
200
|
-
*/
|
|
201
|
-
active: ActiveGesture | null;
|
|
202
|
-
/**
|
|
203
|
-
* The initial pan direction that activated the gesture.
|
|
204
|
-
*
|
|
205
|
-
* @deprecated Use `active` instead.
|
|
206
|
-
*/
|
|
207
|
-
direction: ResolvedPanGestureDirection | null;
|
|
208
|
-
|
|
209
243
|
/** @deprecated Use `normX` instead. */
|
|
210
244
|
normalizedX: number;
|
|
211
245
|
/** @deprecated Use `normY` instead. */
|
|
@@ -33,9 +33,11 @@ export type {
|
|
|
33
33
|
GestureDirectionConfig,
|
|
34
34
|
GestureDirectionEntry,
|
|
35
35
|
GestureDirectionOption,
|
|
36
|
+
GestureHandoffValues,
|
|
36
37
|
GestureValues,
|
|
37
38
|
PanGestureDirection,
|
|
38
39
|
PinchGestureDirection,
|
|
40
|
+
RawGestureValues,
|
|
39
41
|
ScrollGestureAxis,
|
|
40
42
|
ScrollGestureAxisState,
|
|
41
43
|
ScrollGestureState,
|
|
@@ -222,11 +222,11 @@ export type ScreenTransitionConfig = {
|
|
|
222
222
|
gestureSnapVelocityImpact?: number;
|
|
223
223
|
|
|
224
224
|
/**
|
|
225
|
-
* Multiplies gesture release velocity used for
|
|
225
|
+
* Multiplies gesture release velocity used for gesture reset/handoff energy.
|
|
226
226
|
*
|
|
227
227
|
* This does NOT affect dismissal threshold decisions (`gestureVelocityImpact`)
|
|
228
|
-
* or snap target selection (`snapVelocityImpact`). It
|
|
229
|
-
*
|
|
228
|
+
* or snap target selection (`snapVelocityImpact`). It changes the release
|
|
229
|
+
* impulse used by gesture values and interpolator handoff values.
|
|
230
230
|
*
|
|
231
231
|
* @default 1
|
|
232
232
|
*/
|
|
@@ -243,20 +243,37 @@ export type ScreenTransitionConfig = {
|
|
|
243
243
|
gestureReleaseVelocityMax?: number;
|
|
244
244
|
|
|
245
245
|
/**
|
|
246
|
-
*
|
|
246
|
+
* Deprecated compatibility option.
|
|
247
|
+
*
|
|
248
|
+
* Overrides the default edge-start distance when `gestureDirection` uses
|
|
249
|
+
* `area: "edge"`. Prefer a numeric `area` on each `gestureDirection` entry.
|
|
250
|
+
*
|
|
251
|
+
* @example
|
|
252
|
+
* gestureDirection: { gesture: "horizontal", area: 24 }
|
|
253
|
+
*
|
|
254
|
+
* @deprecated Use numeric `gestureDirection` entry `area` instead.
|
|
247
255
|
*/
|
|
248
256
|
gestureResponseDistance?: number;
|
|
249
257
|
|
|
250
258
|
/**
|
|
251
|
-
*
|
|
252
|
-
*
|
|
259
|
+
* Deprecated compatibility option.
|
|
260
|
+
*
|
|
261
|
+
* Gesture movement now always contributes to `progress`. Use `transitionProgress`
|
|
262
|
+
* in interpolators when you need transition progress without live gesture
|
|
263
|
+
* contribution.
|
|
264
|
+
*
|
|
265
|
+
* @deprecated Use `transitionProgress` from interpolation state instead.
|
|
253
266
|
*/
|
|
254
267
|
gestureProgressMode?: GestureProgressMode;
|
|
255
268
|
|
|
256
269
|
/**
|
|
257
|
-
*
|
|
270
|
+
* Deprecated compatibility alias for `gestureProgressMode`.
|
|
271
|
+
*
|
|
272
|
+
* Gesture movement now always contributes to `progress`. Use `transitionProgress`
|
|
273
|
+
* in interpolators when you need transition progress without live gesture
|
|
274
|
+
* contribution.
|
|
258
275
|
*
|
|
259
|
-
* @deprecated Use `
|
|
276
|
+
* @deprecated Use `transitionProgress` from interpolation state instead.
|
|
260
277
|
*/
|
|
261
278
|
gestureDrivesProgress?: boolean;
|
|
262
279
|
|
|
@@ -68,7 +68,7 @@ export const animateToProgress = ({
|
|
|
68
68
|
: config;
|
|
69
69
|
|
|
70
70
|
const {
|
|
71
|
-
|
|
71
|
+
transitionProgress,
|
|
72
72
|
willAnimate,
|
|
73
73
|
progressAnimating,
|
|
74
74
|
progressSettled,
|
|
@@ -87,7 +87,7 @@ export const animateToProgress = ({
|
|
|
87
87
|
if (!config) {
|
|
88
88
|
progressAnimating.set(FALSE);
|
|
89
89
|
progressSettled.set(TRUE);
|
|
90
|
-
|
|
90
|
+
transitionProgress.set(value);
|
|
91
91
|
if (shouldClearEnteringOnFinish) {
|
|
92
92
|
entering.set(FALSE);
|
|
93
93
|
}
|
|
@@ -100,7 +100,7 @@ export const animateToProgress = ({
|
|
|
100
100
|
|
|
101
101
|
progressAnimating.set(TRUE); //<-- Do not move this into the callback
|
|
102
102
|
progressSettled.set(FALSE);
|
|
103
|
-
|
|
103
|
+
transitionProgress.set(
|
|
104
104
|
animate(value, effectiveConfig, (state) => {
|
|
105
105
|
"worklet";
|
|
106
106
|
if (state.settled) {
|
|
@@ -99,7 +99,7 @@ export const prepareBoundStyles = <T extends BoundsOptions>({
|
|
|
99
99
|
previous: props.previous,
|
|
100
100
|
current: props.current,
|
|
101
101
|
next: props.next,
|
|
102
|
-
progress: props.progress,
|
|
102
|
+
progress: resolved.progress ?? props.progress,
|
|
103
103
|
dimensions: props.layouts.screen,
|
|
104
104
|
},
|
|
105
105
|
resolved,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { interpolate } from "react-native-reanimated";
|
|
2
2
|
import { NAVIGATION_MASK_ELEMENT_STYLE_ID } from "../../../../constants";
|
|
3
|
-
import {
|
|
3
|
+
import { createBoundsAccessorCore } from "../../helpers/create-bounds-accessor-core";
|
|
4
4
|
import { getSourceBorderRadius } from "../helpers";
|
|
5
5
|
import {
|
|
6
6
|
CLOSE_SOURCE_HANDOFF_PROGRESS,
|
|
@@ -54,15 +54,16 @@ export function buildRevealStyles({
|
|
|
54
54
|
|
|
55
55
|
const {
|
|
56
56
|
focused,
|
|
57
|
-
progress,
|
|
58
57
|
layouts: { screen: screenLayout },
|
|
59
58
|
} = props;
|
|
59
|
+
const transitionProgress =
|
|
60
|
+
props.current.transitionProgress + (props.next?.transitionProgress ?? 0);
|
|
61
|
+
const activeTransitionProgress = props.active.transitionProgress;
|
|
60
62
|
const borderRadius = revealOptions?.borderRadius ?? REVEAL_BORDER_RADIUS;
|
|
61
63
|
const borderContinuous = revealOptions?.borderContinuous ?? true;
|
|
62
64
|
const maxSensitivity = revealOptions?.maxSensitivity ?? 0.8;
|
|
63
65
|
const velocityDepth =
|
|
64
66
|
revealOptions?.velocityDepth ?? DISMISS_SCALE_ORBIT_DEPTH;
|
|
65
|
-
const gestureProgressMode = revealOptions?.gestureProgressMode ?? "freeform";
|
|
66
67
|
const disablePointerEventsTillElementTransition =
|
|
67
68
|
revealOptions?.disablePointerEventsTillElementTransition ?? true;
|
|
68
69
|
const maskSizingMode = revealOptions?.maskSizingMode ?? "auto";
|
|
@@ -75,8 +76,11 @@ export function buildRevealStyles({
|
|
|
75
76
|
? REVEAL_USES_TRANSFORM_MASK
|
|
76
77
|
: maskSizingMode === "transform";
|
|
77
78
|
|
|
78
|
-
const
|
|
79
|
-
|
|
79
|
+
const bounds = createBoundsAccessorCore({
|
|
80
|
+
getProps: () => props,
|
|
81
|
+
});
|
|
82
|
+
const scopedBounds = bounds({ id: tag });
|
|
83
|
+
const link = scopedBounds.getLink();
|
|
80
84
|
|
|
81
85
|
if (!link?.source?.bounds || !link.destination?.bounds) {
|
|
82
86
|
return {};
|
|
@@ -86,8 +90,9 @@ export function buildRevealStyles({
|
|
|
86
90
|
|
|
87
91
|
/* --------------------------- Gesture / Drag Values ------------------------- */
|
|
88
92
|
|
|
89
|
-
const
|
|
90
|
-
|
|
93
|
+
const liveGesture = props.active.gesture;
|
|
94
|
+
const gestureHandoff = liveGesture.handoff;
|
|
95
|
+
const initialGesture = gestureHandoff.active ?? gestureHandoff.direction;
|
|
91
96
|
|
|
92
97
|
const isHorizontalDismiss =
|
|
93
98
|
initialGesture === "horizontal" || initialGesture === "horizontal-inverted";
|
|
@@ -95,31 +100,25 @@ export function buildRevealStyles({
|
|
|
95
100
|
initialGesture === "vertical" || initialGesture === "vertical-inverted";
|
|
96
101
|
|
|
97
102
|
const rawDrag = isHorizontalDismiss
|
|
98
|
-
? Math.abs(
|
|
103
|
+
? Math.abs(gestureHandoff.raw.normX)
|
|
99
104
|
: isVerticalDismiss
|
|
100
|
-
? Math.abs(
|
|
105
|
+
? Math.abs(gestureHandoff.raw.normY)
|
|
101
106
|
: 0;
|
|
102
107
|
|
|
103
|
-
const dragX = resolveUnitDragTranslation(
|
|
104
|
-
props.active.gesture.x,
|
|
105
|
-
screenLayout.width,
|
|
106
|
-
);
|
|
108
|
+
const dragX = resolveUnitDragTranslation(liveGesture.x, screenLayout.width);
|
|
107
109
|
|
|
108
|
-
const dragY = resolveUnitDragTranslation(
|
|
109
|
-
props.active.gesture.y,
|
|
110
|
-
screenLayout.height,
|
|
111
|
-
);
|
|
110
|
+
const dragY = resolveUnitDragTranslation(liveGesture.y, screenLayout.height);
|
|
112
111
|
|
|
113
112
|
const dragXScale = isHorizontalDismiss
|
|
114
113
|
? resolveRevealDirectionalDragScale(
|
|
115
|
-
|
|
114
|
+
gestureHandoff.normX,
|
|
116
115
|
initialGesture === "horizontal-inverted",
|
|
117
116
|
)
|
|
118
117
|
: IDENTITY_DRAG_SCALE_OUTPUT[0];
|
|
119
118
|
|
|
120
119
|
const dragYScale = isVerticalDismiss
|
|
121
120
|
? resolveRevealDirectionalDragScale(
|
|
122
|
-
|
|
121
|
+
gestureHandoff.normY,
|
|
123
122
|
initialGesture === "vertical-inverted",
|
|
124
123
|
)
|
|
125
124
|
: IDENTITY_DRAG_SCALE_OUTPUT[1];
|
|
@@ -139,7 +138,8 @@ export function buildRevealStyles({
|
|
|
139
138
|
scaleMode: "uniform",
|
|
140
139
|
method: "content",
|
|
141
140
|
target: initialDestinationTarget,
|
|
142
|
-
|
|
141
|
+
progress: transitionProgress,
|
|
142
|
+
});
|
|
143
143
|
|
|
144
144
|
const maskRaw = link.compute({
|
|
145
145
|
raw: true,
|
|
@@ -147,19 +147,20 @@ export function buildRevealStyles({
|
|
|
147
147
|
method: "size",
|
|
148
148
|
space: "absolute",
|
|
149
149
|
target: "fullscreen",
|
|
150
|
-
|
|
150
|
+
progress: transitionProgress,
|
|
151
|
+
});
|
|
151
152
|
|
|
152
153
|
const maskBorderRadius = mixUnit(
|
|
153
154
|
sourceBorderRadius,
|
|
154
155
|
borderRadius,
|
|
155
|
-
|
|
156
|
+
activeTransitionProgress,
|
|
156
157
|
);
|
|
157
158
|
const maskBorderCurve = borderContinuous
|
|
158
159
|
? ("continuous" as const)
|
|
159
160
|
: undefined;
|
|
160
161
|
|
|
161
162
|
const maskSizeMultiplier = props.active.closing
|
|
162
|
-
? mixUnit(0.9, 1,
|
|
163
|
+
? mixUnit(0.9, 1, activeTransitionProgress)
|
|
163
164
|
: 1;
|
|
164
165
|
|
|
165
166
|
const maskWidth = Math.max(1, maskRaw.width * maskSizeMultiplier);
|
|
@@ -181,10 +182,10 @@ export function buildRevealStyles({
|
|
|
181
182
|
});
|
|
182
183
|
|
|
183
184
|
contentScale = resolveDismissScaleHandoff({
|
|
184
|
-
progress:
|
|
185
|
+
progress: activeTransitionProgress,
|
|
185
186
|
releaseScale: dragScale,
|
|
186
187
|
targetScale: sourceContentScale,
|
|
187
|
-
velocity:
|
|
188
|
+
velocity: gestureHandoff.velocity,
|
|
188
189
|
velocityDepth,
|
|
189
190
|
});
|
|
190
191
|
}
|
|
@@ -194,16 +195,16 @@ export function buildRevealStyles({
|
|
|
194
195
|
|
|
195
196
|
const liveHorizontalDismissDrag =
|
|
196
197
|
initialGesture === "horizontal-inverted"
|
|
197
|
-
? -
|
|
198
|
-
:
|
|
198
|
+
? -gestureHandoff.normX
|
|
199
|
+
: gestureHandoff.normX;
|
|
199
200
|
|
|
200
201
|
const liveVerticalDismissDrag =
|
|
201
202
|
initialGesture === "vertical-inverted"
|
|
202
|
-
? -
|
|
203
|
-
:
|
|
203
|
+
? -gestureHandoff.normY
|
|
204
|
+
: gestureHandoff.normY;
|
|
204
205
|
|
|
205
206
|
const dismissProgressDrag = props.active.gesture.dismissing
|
|
206
|
-
? 1 -
|
|
207
|
+
? 1 - activeTransitionProgress
|
|
207
208
|
: 0;
|
|
208
209
|
|
|
209
210
|
const maskHeightCollapseDrag =
|
|
@@ -308,7 +309,7 @@ export function buildRevealStyles({
|
|
|
308
309
|
|
|
309
310
|
const elementTX = props.active.closing
|
|
310
311
|
? interpolateClamped(
|
|
311
|
-
|
|
312
|
+
activeTransitionProgress,
|
|
312
313
|
CLOSE_SOURCE_HANDOFF_PROGRESS,
|
|
313
314
|
1,
|
|
314
315
|
elementOffsetX,
|
|
@@ -317,7 +318,7 @@ export function buildRevealStyles({
|
|
|
317
318
|
: 0;
|
|
318
319
|
const elementY = props.active.closing
|
|
319
320
|
? interpolateClamped(
|
|
320
|
-
|
|
321
|
+
activeTransitionProgress,
|
|
321
322
|
CLOSE_SOURCE_HANDOFF_PROGRESS,
|
|
322
323
|
1,
|
|
323
324
|
elementOffsetY,
|
|
@@ -333,7 +334,6 @@ export function buildRevealStyles({
|
|
|
333
334
|
|
|
334
335
|
return {
|
|
335
336
|
options: {
|
|
336
|
-
gestureProgressMode,
|
|
337
337
|
gestureSensitivity,
|
|
338
338
|
gestureReleaseVelocityScale,
|
|
339
339
|
},
|
|
@@ -347,7 +347,7 @@ export function buildRevealStyles({
|
|
|
347
347
|
shadowColor: "#000",
|
|
348
348
|
shadowOffset: REVEAL_SHADOW_OFFSET,
|
|
349
349
|
shadowOpacity: interpolate(
|
|
350
|
-
|
|
350
|
+
activeTransitionProgress,
|
|
351
351
|
ZERO_TO_ONE_RANGE,
|
|
352
352
|
CONTENT_SHADOW_OPACITY_OUTPUT,
|
|
353
353
|
),
|
|
@@ -355,12 +355,12 @@ export function buildRevealStyles({
|
|
|
355
355
|
elevation: 5,
|
|
356
356
|
opacity: props.active.entering
|
|
357
357
|
? interpolate(
|
|
358
|
-
|
|
358
|
+
activeTransitionProgress,
|
|
359
359
|
CONTENT_ENTERING_OPACITY_RANGE,
|
|
360
360
|
CONTENT_ENTERING_OPACITY_OUTPUT,
|
|
361
361
|
)
|
|
362
362
|
: interpolate(
|
|
363
|
-
|
|
363
|
+
activeTransitionProgress,
|
|
364
364
|
CONTENT_CLOSING_OPACITY_RANGE,
|
|
365
365
|
CONTENT_CLOSING_OPACITY_OUTPUT,
|
|
366
366
|
),
|
|
@@ -379,7 +379,7 @@ export function buildRevealStyles({
|
|
|
379
379
|
|
|
380
380
|
/* ---------------------------- Unfocused Screen ---------------------------- */
|
|
381
381
|
|
|
382
|
-
const unfocusedScale = mixUnit(1, backgroundScale,
|
|
382
|
+
const unfocusedScale = mixUnit(1, backgroundScale, activeTransitionProgress);
|
|
383
383
|
const unfocusedContentScale =
|
|
384
384
|
props.active.settled && shouldBackgroundScaleResetOnSettled
|
|
385
385
|
? 1
|
|
@@ -389,7 +389,7 @@ export function buildRevealStyles({
|
|
|
389
389
|
initialDestinationTarget ?? link.destination.bounds;
|
|
390
390
|
|
|
391
391
|
const trackingContentBaseTransform = resolveRevealContentBaseTransform({
|
|
392
|
-
progress:
|
|
392
|
+
progress: activeTransitionProgress,
|
|
393
393
|
sourceBounds: link.source.bounds,
|
|
394
394
|
destinationBounds: trackingContentTarget,
|
|
395
395
|
screenLayout,
|
|
@@ -403,10 +403,10 @@ export function buildRevealStyles({
|
|
|
403
403
|
destinationHeight: trackingContentTarget.height,
|
|
404
404
|
});
|
|
405
405
|
trackingContentScale = resolveDismissScaleHandoff({
|
|
406
|
-
progress:
|
|
406
|
+
progress: activeTransitionProgress,
|
|
407
407
|
releaseScale: dragScale,
|
|
408
408
|
targetScale: trackingTargetScale,
|
|
409
|
-
velocity:
|
|
409
|
+
velocity: gestureHandoff.velocity,
|
|
410
410
|
velocityDepth,
|
|
411
411
|
});
|
|
412
412
|
}
|
|
@@ -426,9 +426,6 @@ export function buildRevealStyles({
|
|
|
426
426
|
});
|
|
427
427
|
|
|
428
428
|
return {
|
|
429
|
-
options: {
|
|
430
|
-
gestureProgressMode,
|
|
431
|
-
},
|
|
432
429
|
content: {
|
|
433
430
|
style: {
|
|
434
431
|
transform: [{ scale: unfocusedContentScale }],
|
|
@@ -436,7 +433,7 @@ export function buildRevealStyles({
|
|
|
436
433
|
props: disablePointerEventsTillElementTransition
|
|
437
434
|
? {
|
|
438
435
|
pointerEvents:
|
|
439
|
-
|
|
436
|
+
activeTransitionProgress <= CLOSE_SOURCE_HANDOFF_PROGRESS
|
|
440
437
|
? "auto"
|
|
441
438
|
: "none",
|
|
442
439
|
}
|
|
@@ -447,11 +444,10 @@ export function buildRevealStyles({
|
|
|
447
444
|
opacity: props.active.closing
|
|
448
445
|
? 1
|
|
449
446
|
: interpolate(
|
|
450
|
-
|
|
447
|
+
activeTransitionProgress,
|
|
451
448
|
ZERO_TO_ONE_RANGE,
|
|
452
449
|
UNFOCUSED_ELEMENT_OPACITY_OUTPUT,
|
|
453
450
|
),
|
|
454
|
-
|
|
455
451
|
zIndex: 9999,
|
|
456
452
|
elevation: 9999,
|
|
457
453
|
transform: [
|