react-native-screen-transitions 3.6.0-alpha.0 → 3.6.0-alpha.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/lib/commonjs/component-stack/components/component-screen.js +1 -7
- package/lib/commonjs/component-stack/components/component-screen.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/create-boundary-component.js +35 -45
- package/lib/commonjs/shared/components/create-boundary-component/create-boundary-component.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-boundary-presence.js +5 -15
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-boundary-presence.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js +20 -11
- 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-initial-source-measurement.js +27 -7
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-initial-source-measurement.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-measurer.js +23 -57
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-measurer.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-refresh-boundary.js +33 -40
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-refresh-boundary.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/index.js +3 -1
- package/lib/commonjs/shared/components/create-boundary-component/index.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/utils/destination-signals.js +75 -0
- package/lib/commonjs/shared/components/create-boundary-component/utils/destination-signals.js.map +1 -0
- package/lib/commonjs/shared/components/create-boundary-component/{hooks/helpers/scroll-measurement.js → utils/measured-bounds.js} +15 -2
- package/lib/commonjs/shared/components/create-boundary-component/utils/measured-bounds.js.map +1 -0
- package/lib/commonjs/shared/components/create-boundary-component/utils/refresh-signals.js +103 -0
- package/lib/commonjs/shared/components/create-boundary-component/utils/refresh-signals.js.map +1 -0
- package/lib/commonjs/shared/components/create-boundary-component/utils/source-signals.js +52 -0
- package/lib/commonjs/shared/components/create-boundary-component/utils/source-signals.js.map +1 -0
- package/lib/commonjs/shared/components/create-transition-aware-component.js +2 -2
- package/lib/commonjs/shared/components/create-transition-aware-component.js.map +1 -1
- package/lib/commonjs/shared/components/native-screen.js +2 -13
- package/lib/commonjs/shared/components/native-screen.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/helpers/find-collapse-target.js +17 -12
- package/lib/commonjs/shared/components/screen-container/helpers/find-collapse-target.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/hooks/use-content-layout.js +1 -1
- 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 +8 -1
- package/lib/commonjs/shared/components/screen-container/layers/backdrop.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/maybe-masked-navigation-container.js +18 -10
- package/lib/commonjs/shared/components/screen-container/layers/maybe-masked-navigation-container.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/surface-container.js +16 -5
- package/lib/commonjs/shared/components/screen-container/layers/surface-container.js.map +1 -1
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/helpers/reset-stores-for-screen.js +2 -12
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/helpers/reset-stores-for-screen.js.map +1 -1
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +1 -7
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-open-transition-intent.js +1 -1
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-open-transition-intent.js.map +1 -1
- package/lib/commonjs/shared/configs/presets.js +3 -3
- package/lib/commonjs/shared/configs/presets.js.map +1 -1
- package/lib/commonjs/shared/constants.js +11 -6
- package/lib/commonjs/shared/constants.js.map +1 -1
- package/lib/commonjs/shared/providers/helpers/measured-bounds-writes.js +35 -0
- package/lib/commonjs/shared/providers/helpers/measured-bounds-writes.js.map +1 -0
- package/lib/commonjs/shared/providers/register-bounds.provider.js +50 -65
- package/lib/commonjs/shared/providers/register-bounds.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/animation.provider.js +86 -11
- package/lib/commonjs/shared/providers/screen/animation/animation.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js +23 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +98 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/build-screen-transition-options.js +8 -1
- 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 +79 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +90 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.js +29 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/snap-points.js +96 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/snap-points.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/types.js +6 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/types.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js +20 -22
- package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/selected-interpolator-options.js +51 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/selected-interpolator-options.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js +2 -3
- package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/use-screen-animation.js +55 -25
- package/lib/commonjs/shared/providers/screen/animation/use-screen-animation.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/descriptors/descriptors.provider.js +2 -5
- package/lib/commonjs/shared/providers/screen/descriptors/descriptors.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.js +2 -12
- package/lib/commonjs/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js +5 -5
- package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-gesture-builder-state.js +4 -5
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-gesture-builder-state.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-gesture-sensitivity.js +3 -3
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-gesture-sensitivity.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js +6 -84
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture.js +2 -5
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/ownership/compute-claimed-directions.js +37 -36
- package/lib/commonjs/shared/providers/screen/gestures/ownership/compute-claimed-directions.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/ownership/resolve-ownership.js +13 -0
- package/lib/commonjs/shared/providers/screen/gestures/ownership/resolve-ownership.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +69 -56
- package/lib/commonjs/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/{builders/use-build-pan-gesture.js → pan/build-pan-gesture.js} +4 -4
- package/lib/commonjs/shared/providers/screen/gestures/pan/build-pan-gesture.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/pan/pan-activation-decision.js +210 -0
- package/lib/commonjs/shared/providers/screen/gestures/pan/pan-activation-decision.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/{helpers/gesture-activation.js → pan/pan-activation-rules.js} +131 -121
- package/lib/commonjs/shared/providers/screen/gestures/pan/pan-activation-rules.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/pan/pan-activation.js +94 -0
- package/lib/commonjs/shared/providers/screen/gestures/pan/pan-activation.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/{helpers/pan-phases.js → pan/pan-lifecycle.js} +40 -32
- package/lib/commonjs/shared/providers/screen/gestures/pan/pan-lifecycle.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/pan/pan-release.js +212 -0
- package/lib/commonjs/shared/providers/screen/gestures/pan/pan-release.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/pan/pan-reset.js +54 -0
- package/lib/commonjs/shared/providers/screen/gestures/pan/pan-reset.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/pan/use-pan-behavior.js +53 -0
- package/lib/commonjs/shared/providers/screen/gestures/pan/use-pan-behavior.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/{builders/use-build-pinch-gesture.js → pinch/build-pinch-gesture.js} +4 -4
- package/lib/commonjs/shared/providers/screen/gestures/pinch/build-pinch-gesture.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/{activation/use-pinch-activation.js → pinch/pinch-activation.js} +6 -6
- package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-activation.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/{helpers/pinch-phases.js → pinch/pinch-lifecycle.js} +13 -7
- package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-lifecycle.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-release.js +133 -0
- package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-release.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-reset.js +45 -0
- package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-reset.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/pinch/use-pinch-behavior.js +53 -0
- package/lib/commonjs/shared/providers/screen/gestures/pinch/use-pinch-behavior.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/index.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/update-scroll-gesture-state.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/{hooks/use-scroll-gesture-coordination → scroll-coordination}/use-scroll-gesture-coordination.js +4 -4
- package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/{hooks/use-scroll-gesture-coordination → scroll-coordination}/walk-up-scroll-gesture-coordination.js +20 -9
- package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/{helpers/walk-gesture-ancestors.js → shared/ancestors.js} +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/shared/ancestors.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/{helpers/gesture-directions.js → shared/directions.js} +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/shared/directions.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/{helpers/gesture-physics.js → shared/physics.js} +92 -68
- package/lib/commonjs/shared/providers/screen/gestures/shared/physics.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/policy.js +227 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/policy.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/release.js +36 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/release.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/reset.js +65 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/reset.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/runtime.js +43 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/runtime.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/snap-points.js +184 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/snap-points.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/targets.js +122 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/targets.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/types.js +2 -2
- package/lib/commonjs/shared/providers/screen/gestures/types.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/options/helpers.js +69 -19
- package/lib/commonjs/shared/providers/screen/options/helpers.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/helpers/preserve-animated-props-only.js +26 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/preserve-animated-props-only.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js +112 -1
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/helpers/visibility-gate.js +45 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/visibility-gate.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +32 -15
- 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 +34 -13
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.js +9 -3
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.js.map +1 -1
- package/lib/commonjs/shared/stores/animation.store.js +3 -7
- package/lib/commonjs/shared/stores/animation.store.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/helpers/link-pairs.helpers.js +125 -0
- package/lib/commonjs/shared/stores/bounds/helpers/link-pairs.helpers.js.map +1 -0
- package/lib/commonjs/shared/stores/bounds/index.js +7 -15
- package/lib/commonjs/shared/stores/bounds/index.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/clear.js +13 -42
- package/lib/commonjs/shared/stores/bounds/internals/clear.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/entries.js +49 -9
- package/lib/commonjs/shared/stores/bounds/internals/entries.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/links.js +143 -88
- package/lib/commonjs/shared/stores/bounds/internals/links.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/resolver.js +17 -43
- package/lib/commonjs/shared/stores/bounds/internals/resolver.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/state.js +26 -3
- package/lib/commonjs/shared/stores/bounds/internals/state.js.map +1 -1
- package/lib/commonjs/shared/stores/gesture.store.js +2 -0
- package/lib/commonjs/shared/stores/gesture.store.js.map +1 -1
- package/lib/commonjs/shared/stores/system.store.js +3 -0
- package/lib/commonjs/shared/stores/system.store.js.map +1 -1
- package/lib/commonjs/shared/types/gesture.types.js +2 -2
- package/lib/commonjs/shared/types/gesture.types.js.map +1 -1
- package/lib/commonjs/shared/utils/animation/animate-to-progress.js +19 -18
- package/lib/commonjs/shared/utils/animation/animate-to-progress.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/create-bounds-accessor-core.js +2 -1
- package/lib/commonjs/shared/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/create-link-accessor.js +6 -5
- package/lib/commonjs/shared/utils/bounds/helpers/create-link-accessor.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/prepare-bound-styles.js +21 -8
- package/lib/commonjs/shared/utils/bounds/helpers/prepare-bound-styles.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/resolve-bounds-pair-key.js +23 -0
- package/lib/commonjs/shared/utils/bounds/helpers/resolve-bounds-pair-key.js.map +1 -0
- package/lib/commonjs/shared/utils/bounds/navigation/math.js +1 -15
- package/lib/commonjs/shared/utils/bounds/navigation/math.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js +140 -133
- package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/navigation/reveal/config.js +21 -17
- package/lib/commonjs/shared/utils/bounds/navigation/reveal/config.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/navigation/reveal/math.js +155 -14
- package/lib/commonjs/shared/utils/bounds/navigation/reveal/math.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js +80 -18
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/config.js +2 -2
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/config.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/math.js +4 -5
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/math.js.map +1 -1
- package/lib/commonjs/shared/utils/gesture-progress-mode.js +50 -0
- package/lib/commonjs/shared/utils/gesture-progress-mode.js.map +1 -0
- package/lib/commonjs/shared/utils/navigation/resolve-scene-neighbors.js +20 -19
- package/lib/commonjs/shared/utils/navigation/resolve-scene-neighbors.js.map +1 -1
- package/lib/commonjs/shared/utils/resolve-chain-target.js +9 -16
- package/lib/commonjs/shared/utils/resolve-chain-target.js.map +1 -1
- package/lib/commonjs/shared/utils/resolve-screen-transition-options.js +3 -3
- package/lib/commonjs/shared/utils/resolve-screen-transition-options.js.map +1 -1
- package/lib/module/component-stack/components/component-screen.js +2 -8
- package/lib/module/component-stack/components/component-screen.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/create-boundary-component.js +35 -45
- package/lib/module/shared/components/create-boundary-component/create-boundary-component.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/hooks/use-boundary-presence.js +5 -15
- package/lib/module/shared/components/create-boundary-component/hooks/use-boundary-presence.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js +21 -12
- 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-initial-source-measurement.js +28 -8
- package/lib/module/shared/components/create-boundary-component/hooks/use-initial-source-measurement.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/hooks/use-measurer.js +22 -56
- package/lib/module/shared/components/create-boundary-component/hooks/use-measurer.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/hooks/use-refresh-boundary.js +33 -40
- package/lib/module/shared/components/create-boundary-component/hooks/use-refresh-boundary.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/index.js +3 -1
- package/lib/module/shared/components/create-boundary-component/index.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/utils/destination-signals.js +70 -0
- package/lib/module/shared/components/create-boundary-component/utils/destination-signals.js.map +1 -0
- package/lib/module/shared/components/create-boundary-component/{hooks/helpers/scroll-measurement.js → utils/measured-bounds.js} +13 -1
- package/lib/module/shared/components/create-boundary-component/utils/measured-bounds.js.map +1 -0
- package/lib/module/shared/components/create-boundary-component/utils/refresh-signals.js +98 -0
- package/lib/module/shared/components/create-boundary-component/utils/refresh-signals.js.map +1 -0
- package/lib/module/shared/components/create-boundary-component/utils/source-signals.js +47 -0
- package/lib/module/shared/components/create-boundary-component/utils/source-signals.js.map +1 -0
- package/lib/module/shared/components/create-transition-aware-component.js +1 -1
- package/lib/module/shared/components/create-transition-aware-component.js.map +1 -1
- package/lib/module/shared/components/native-screen.js +3 -14
- package/lib/module/shared/components/native-screen.js.map +1 -1
- package/lib/module/shared/components/screen-container/helpers/find-collapse-target.js +16 -11
- package/lib/module/shared/components/screen-container/helpers/find-collapse-target.js.map +1 -1
- package/lib/module/shared/components/screen-container/hooks/use-content-layout.js +1 -1
- 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 +8 -1
- package/lib/module/shared/components/screen-container/layers/backdrop.js.map +1 -1
- package/lib/module/shared/components/screen-container/layers/maybe-masked-navigation-container.js +18 -10
- package/lib/module/shared/components/screen-container/layers/maybe-masked-navigation-container.js.map +1 -1
- package/lib/module/shared/components/screen-container/layers/surface-container.js +16 -5
- package/lib/module/shared/components/screen-container/layers/surface-container.js.map +1 -1
- package/lib/module/shared/components/screen-lifecycle/hooks/helpers/reset-stores-for-screen.js +3 -13
- package/lib/module/shared/components/screen-lifecycle/hooks/helpers/reset-stores-for-screen.js.map +1 -1
- package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +1 -7
- package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
- package/lib/module/shared/components/screen-lifecycle/hooks/use-open-transition-intent.js +1 -1
- package/lib/module/shared/components/screen-lifecycle/hooks/use-open-transition-intent.js.map +1 -1
- package/lib/module/shared/configs/presets.js +3 -3
- package/lib/module/shared/configs/presets.js.map +1 -1
- package/lib/module/shared/constants.js +10 -5
- package/lib/module/shared/constants.js.map +1 -1
- package/lib/module/shared/providers/helpers/measured-bounds-writes.js +30 -0
- package/lib/module/shared/providers/helpers/measured-bounds-writes.js.map +1 -0
- package/lib/module/shared/providers/register-bounds.provider.js +50 -65
- package/lib/module/shared/providers/register-bounds.provider.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/animation.provider.js +87 -12
- package/lib/module/shared/providers/screen/animation/animation.provider.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js +18 -0
- package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js.map +1 -0
- package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +92 -0
- package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -0
- package/lib/module/shared/providers/screen/animation/helpers/build-screen-transition-options.js +8 -1
- 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 +74 -0
- package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.js.map +1 -0
- package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +85 -0
- package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -0
- package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.js +22 -0
- package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.js.map +1 -0
- package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/snap-points.js +89 -0
- package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/snap-points.js.map +1 -0
- package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/types.js +4 -0
- package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/types.js.map +1 -0
- package/lib/module/shared/providers/screen/animation/helpers/pipeline.js +20 -22
- package/lib/module/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/selected-interpolator-options.js +46 -0
- package/lib/module/shared/providers/screen/animation/helpers/selected-interpolator-options.js.map +1 -0
- package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js +2 -3
- package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/use-screen-animation.js +56 -25
- package/lib/module/shared/providers/screen/animation/use-screen-animation.js.map +1 -1
- package/lib/module/shared/providers/screen/descriptors/descriptors.provider.js +2 -5
- package/lib/module/shared/providers/screen/descriptors/descriptors.provider.js.map +1 -1
- package/lib/module/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.js +2 -12
- package/lib/module/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/gestures.provider.js +4 -4
- package/lib/module/shared/providers/screen/gestures/gestures.provider.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/hooks/use-gesture-builder-state.js +4 -5
- package/lib/module/shared/providers/screen/gestures/hooks/use-gesture-builder-state.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/hooks/use-gesture-sensitivity.js +1 -1
- package/lib/module/shared/providers/screen/gestures/hooks/use-gesture-sensitivity.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js +6 -84
- package/lib/module/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/hooks/use-screen-gesture.js +1 -4
- package/lib/module/shared/providers/screen/gestures/hooks/use-screen-gesture.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/ownership/compute-claimed-directions.js +36 -36
- package/lib/module/shared/providers/screen/gestures/ownership/compute-claimed-directions.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/ownership/resolve-ownership.js +12 -0
- package/lib/module/shared/providers/screen/gestures/ownership/resolve-ownership.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +69 -56
- package/lib/module/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/{builders/use-build-pan-gesture.js → pan/build-pan-gesture.js} +3 -3
- package/lib/module/shared/providers/screen/gestures/pan/build-pan-gesture.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/pan/pan-activation-decision.js +205 -0
- package/lib/module/shared/providers/screen/gestures/pan/pan-activation-decision.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/{helpers/gesture-activation.js → pan/pan-activation-rules.js} +129 -119
- package/lib/module/shared/providers/screen/gestures/pan/pan-activation-rules.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/pan/pan-activation.js +89 -0
- package/lib/module/shared/providers/screen/gestures/pan/pan-activation.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/{helpers/pan-phases.js → pan/pan-lifecycle.js} +36 -28
- package/lib/module/shared/providers/screen/gestures/pan/pan-lifecycle.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/pan/pan-release.js +204 -0
- package/lib/module/shared/providers/screen/gestures/pan/pan-release.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/pan/pan-reset.js +49 -0
- package/lib/module/shared/providers/screen/gestures/pan/pan-reset.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/{behaviors → pan}/use-pan-behavior.js +11 -22
- package/lib/module/shared/providers/screen/gestures/pan/use-pan-behavior.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/{builders/use-build-pinch-gesture.js → pinch/build-pinch-gesture.js} +3 -3
- package/lib/module/shared/providers/screen/gestures/pinch/build-pinch-gesture.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/{activation/use-pinch-activation.js → pinch/pinch-activation.js} +5 -5
- package/lib/module/shared/providers/screen/gestures/pinch/pinch-activation.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/{helpers/pinch-phases.js → pinch/pinch-lifecycle.js} +10 -4
- package/lib/module/shared/providers/screen/gestures/pinch/pinch-lifecycle.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/pinch/pinch-release.js +126 -0
- package/lib/module/shared/providers/screen/gestures/pinch/pinch-release.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/pinch/pinch-reset.js +40 -0
- package/lib/module/shared/providers/screen/gestures/pinch/pinch-reset.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/{behaviors → pinch}/use-pinch-behavior.js +11 -22
- package/lib/module/shared/providers/screen/gestures/pinch/use-pinch-behavior.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/scroll-coordination/index.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/scroll-coordination/update-scroll-gesture-state.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/{hooks/use-scroll-gesture-coordination → scroll-coordination}/use-scroll-gesture-coordination.js +4 -4
- package/lib/module/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/{hooks/use-scroll-gesture-coordination → scroll-coordination}/walk-up-scroll-gesture-coordination.js +20 -9
- package/lib/module/shared/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/{helpers/walk-gesture-ancestors.js → shared/ancestors.js} +1 -1
- package/lib/module/shared/providers/screen/gestures/shared/ancestors.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/{helpers/gesture-directions.js → shared/directions.js} +1 -1
- package/lib/module/shared/providers/screen/gestures/shared/directions.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/{helpers/gesture-physics.js → shared/physics.js} +88 -63
- package/lib/module/shared/providers/screen/gestures/shared/physics.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/shared/policy.js +218 -0
- package/lib/module/shared/providers/screen/gestures/shared/policy.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/shared/release.js +30 -0
- package/lib/module/shared/providers/screen/gestures/shared/release.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/shared/reset.js +58 -0
- package/lib/module/shared/providers/screen/gestures/shared/reset.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/shared/runtime.js +37 -0
- package/lib/module/shared/providers/screen/gestures/shared/runtime.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/shared/snap-points.js +174 -0
- package/lib/module/shared/providers/screen/gestures/shared/snap-points.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/shared/targets.js +116 -0
- package/lib/module/shared/providers/screen/gestures/shared/targets.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 +70 -20
- package/lib/module/shared/providers/screen/options/helpers.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/helpers/preserve-animated-props-only.js +21 -0
- package/lib/module/shared/providers/screen/styles/helpers/preserve-animated-props-only.js.map +1 -0
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js +110 -0
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/helpers/visibility-gate.js +39 -0
- package/lib/module/shared/providers/screen/styles/helpers/visibility-gate.js.map +1 -0
- package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +32 -15
- 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 +35 -14
- package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.js +10 -4
- package/lib/module/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.js.map +1 -1
- package/lib/module/shared/stores/animation.store.js +3 -7
- package/lib/module/shared/stores/animation.store.js.map +1 -1
- package/lib/module/shared/stores/bounds/helpers/link-pairs.helpers.js +105 -0
- package/lib/module/shared/stores/bounds/helpers/link-pairs.helpers.js.map +1 -0
- package/lib/module/shared/stores/bounds/index.js +9 -17
- package/lib/module/shared/stores/bounds/index.js.map +1 -1
- package/lib/module/shared/stores/bounds/internals/clear.js +15 -42
- package/lib/module/shared/stores/bounds/internals/clear.js.map +1 -1
- package/lib/module/shared/stores/bounds/internals/entries.js +49 -9
- package/lib/module/shared/stores/bounds/internals/entries.js.map +1 -1
- package/lib/module/shared/stores/bounds/internals/links.js +139 -86
- package/lib/module/shared/stores/bounds/internals/links.js.map +1 -1
- package/lib/module/shared/stores/bounds/internals/resolver.js +17 -43
- package/lib/module/shared/stores/bounds/internals/resolver.js.map +1 -1
- package/lib/module/shared/stores/bounds/internals/state.js +25 -2
- package/lib/module/shared/stores/bounds/internals/state.js.map +1 -1
- package/lib/module/shared/stores/gesture.store.js +2 -0
- package/lib/module/shared/stores/gesture.store.js.map +1 -1
- package/lib/module/shared/stores/system.store.js +3 -0
- package/lib/module/shared/stores/system.store.js.map +1 -1
- package/lib/module/shared/types/animation.types.js +0 -4
- package/lib/module/shared/types/animation.types.js.map +1 -1
- package/lib/module/shared/types/gesture.types.js +0 -1
- package/lib/module/shared/types/gesture.types.js.map +1 -1
- package/lib/module/shared/utils/animation/animate-to-progress.js +19 -18
- package/lib/module/shared/utils/animation/animate-to-progress.js.map +1 -1
- package/lib/module/shared/utils/bounds/helpers/create-bounds-accessor-core.js +2 -1
- package/lib/module/shared/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -1
- package/lib/module/shared/utils/bounds/helpers/create-link-accessor.js +6 -5
- package/lib/module/shared/utils/bounds/helpers/create-link-accessor.js.map +1 -1
- package/lib/module/shared/utils/bounds/helpers/prepare-bound-styles.js +21 -8
- package/lib/module/shared/utils/bounds/helpers/prepare-bound-styles.js.map +1 -1
- package/lib/module/shared/utils/bounds/helpers/resolve-bounds-pair-key.js +18 -0
- package/lib/module/shared/utils/bounds/helpers/resolve-bounds-pair-key.js.map +1 -0
- package/lib/module/shared/utils/bounds/navigation/math.js +2 -16
- package/lib/module/shared/utils/bounds/navigation/math.js.map +1 -1
- package/lib/module/shared/utils/bounds/navigation/reveal/build.js +141 -134
- package/lib/module/shared/utils/bounds/navigation/reveal/build.js.map +1 -1
- package/lib/module/shared/utils/bounds/navigation/reveal/config.js +20 -16
- package/lib/module/shared/utils/bounds/navigation/reveal/config.js.map +1 -1
- package/lib/module/shared/utils/bounds/navigation/reveal/math.js +144 -12
- package/lib/module/shared/utils/bounds/navigation/reveal/math.js.map +1 -1
- package/lib/module/shared/utils/bounds/navigation/zoom/build.js +81 -19
- package/lib/module/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
- package/lib/module/shared/utils/bounds/navigation/zoom/config.js +1 -1
- package/lib/module/shared/utils/bounds/navigation/zoom/config.js.map +1 -1
- package/lib/module/shared/utils/bounds/navigation/zoom/math.js +4 -5
- package/lib/module/shared/utils/bounds/navigation/zoom/math.js.map +1 -1
- package/lib/module/shared/utils/gesture-progress-mode.js +42 -0
- package/lib/module/shared/utils/gesture-progress-mode.js.map +1 -0
- package/lib/module/shared/utils/navigation/resolve-scene-neighbors.js +20 -19
- package/lib/module/shared/utils/navigation/resolve-scene-neighbors.js.map +1 -1
- package/lib/module/shared/utils/resolve-chain-target.js +9 -16
- package/lib/module/shared/utils/resolve-chain-target.js.map +1 -1
- package/lib/module/shared/utils/resolve-screen-transition-options.js +1 -1
- package/lib/module/shared/utils/resolve-screen-transition-options.js.map +1 -1
- package/lib/typescript/component-stack/components/component-screen.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/create-boundary-component.d.ts +1 -0
- package/lib/typescript/shared/components/create-boundary-component/create-boundary-component.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-boundary-presence.d.ts +1 -4
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-boundary-presence.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.d.ts +6 -4
- 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-initial-source-measurement.d.ts +6 -2
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-initial-source-measurement.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-measurer.d.ts +5 -7
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-measurer.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-refresh-boundary.d.ts +7 -7
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-refresh-boundary.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/index.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/types.d.ts +11 -7
- package/lib/typescript/shared/components/create-boundary-component/types.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/utils/destination-signals.d.ts +10 -0
- package/lib/typescript/shared/components/create-boundary-component/utils/destination-signals.d.ts.map +1 -0
- package/lib/typescript/shared/components/create-boundary-component/{hooks/helpers/scroll-measurement.d.ts → utils/measured-bounds.d.ts} +3 -2
- package/lib/typescript/shared/components/create-boundary-component/utils/measured-bounds.d.ts.map +1 -0
- package/lib/typescript/shared/components/create-boundary-component/utils/refresh-signals.d.ts +22 -0
- package/lib/typescript/shared/components/create-boundary-component/utils/refresh-signals.d.ts.map +1 -0
- package/lib/typescript/shared/components/create-boundary-component/utils/source-signals.d.ts +16 -0
- package/lib/typescript/shared/components/create-boundary-component/utils/source-signals.d.ts.map +1 -0
- package/lib/typescript/shared/components/native-screen.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-container/helpers/find-collapse-target.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-container/layers/backdrop.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-container/layers/maybe-masked-navigation-container.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-container/layers/surface-container.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-lifecycle/hooks/helpers/reset-stores-for-screen.d.ts +1 -1
- package/lib/typescript/shared/components/screen-lifecycle/hooks/helpers/reset-stores-for-screen.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-lifecycle/hooks/use-close-transition-intent.d.ts.map +1 -1
- package/lib/typescript/shared/constants.d.ts +9 -6
- package/lib/typescript/shared/constants.d.ts.map +1 -1
- package/lib/typescript/shared/index.d.ts +2 -2
- package/lib/typescript/shared/providers/helpers/measured-bounds-writes.d.ts +21 -0
- package/lib/typescript/shared/providers/helpers/measured-bounds-writes.d.ts.map +1 -0
- package/lib/typescript/shared/providers/register-bounds.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/animation.provider.d.ts +4 -1
- package/lib/typescript/shared/providers/screen/animation/animation.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.d.ts +2 -0
- package/lib/typescript/shared/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.d.ts +6 -0
- package/lib/typescript/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.d.ts.map +1 -0
- 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 +5 -0
- package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/index.d.ts +5 -0
- package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/index.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.d.ts +5 -0
- package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/snap-points.d.ts +5 -0
- package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/snap-points.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/animation/helpers/{hydrate-transition-state.d.ts → hydrate-transition-state/types.d.ts} +15 -16
- package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/types.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/animation/helpers/pipeline.d.ts +3 -3
- package/lib/typescript/shared/providers/screen/animation/helpers/pipeline.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/selected-interpolator-options.d.ts +9 -0
- package/lib/typescript/shared/providers/screen/animation/helpers/selected-interpolator-options.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts +2 -3
- package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/types.d.ts +19 -4
- package/lib/typescript/shared/providers/screen/animation/types.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/use-screen-animation.d.ts +9 -3
- package/lib/typescript/shared/providers/screen/animation/use-screen-animation.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/descriptors/descriptors.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.d.ts +1 -6
- package/lib/typescript/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.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-gesture-builder-state.d.ts +2 -2
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-gesture-builder-state.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-screen-gesture-config.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-screen-gesture.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-stable-runtime-config.d.ts +3 -5
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-stable-runtime-config.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/ownership/compute-claimed-directions.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/ownership/resolve-ownership.d.ts +5 -0
- package/lib/typescript/shared/providers/screen/gestures/ownership/resolve-ownership.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/{builders/use-build-pan-gesture.d.ts → pan/build-pan-gesture.d.ts} +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pan/build-pan-gesture.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/pan/pan-activation-decision.d.ts +29 -0
- package/lib/typescript/shared/providers/screen/gestures/pan/pan-activation-decision.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/{helpers/gesture-activation.d.ts → pan/pan-activation-rules.d.ts} +12 -11
- package/lib/typescript/shared/providers/screen/gestures/pan/pan-activation-rules.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/{activation/use-pan-activation.d.ts → pan/pan-activation.d.ts} +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pan/pan-activation.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/{helpers/pan-phases.d.ts → pan/pan-lifecycle.d.ts} +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pan/pan-lifecycle.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/pan/pan-release.d.ts +6 -0
- package/lib/typescript/shared/providers/screen/gestures/pan/pan-release.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/pan/pan-reset.d.ts +18 -0
- package/lib/typescript/shared/providers/screen/gestures/pan/pan-reset.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/pan/use-pan-behavior.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/{builders/use-build-pinch-gesture.d.ts → pinch/build-pinch-gesture.d.ts} +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/build-pinch-gesture.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/{activation/use-pinch-activation.d.ts → pinch/pinch-activation.d.ts} +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-activation.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/{helpers/pinch-phases.d.ts → pinch/pinch-lifecycle.d.ts} +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-lifecycle.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-release.d.ts +5 -0
- package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-release.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-reset.d.ts +11 -0
- package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-reset.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/pinch/use-pinch-behavior.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/index.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/{hooks/use-scroll-gesture-coordination → scroll-coordination}/update-scroll-gesture-state.d.ts +1 -1
- package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/update-scroll-gesture-state.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/{hooks/use-scroll-gesture-coordination → scroll-coordination}/use-scroll-gesture-coordination.d.ts +1 -1
- package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/{hooks/use-scroll-gesture-coordination → scroll-coordination}/walk-up-scroll-gesture-coordination.d.ts +1 -1
- package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/{helpers/walk-gesture-ancestors.d.ts → shared/ancestors.d.ts} +1 -1
- package/lib/typescript/shared/providers/screen/gestures/shared/ancestors.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/{helpers/gesture-directions.d.ts → shared/directions.d.ts} +1 -1
- package/lib/typescript/shared/providers/screen/gestures/shared/directions.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/{helpers/gesture-physics.d.ts → shared/physics.d.ts} +11 -10
- package/lib/typescript/shared/providers/screen/gestures/shared/physics.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/shared/policy.d.ts +39 -0
- package/lib/typescript/shared/providers/screen/gestures/shared/policy.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/shared/release.d.ts +13 -0
- package/lib/typescript/shared/providers/screen/gestures/shared/release.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/shared/reset.d.ts +7 -0
- package/lib/typescript/shared/providers/screen/gestures/shared/reset.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/shared/runtime.d.ts +5 -0
- package/lib/typescript/shared/providers/screen/gestures/shared/runtime.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/shared/snap-points.d.ts +37 -0
- package/lib/typescript/shared/providers/screen/gestures/shared/snap-points.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/{helpers/gesture-targets.d.ts → shared/targets.d.ts} +1 -1
- package/lib/typescript/shared/providers/screen/gestures/shared/targets.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/types.d.ts +32 -29
- 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 +1 -0
- package/lib/typescript/shared/providers/screen/options/types.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/helpers/preserve-animated-props-only.d.ts +3 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/preserve-animated-props-only.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts +4 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/helpers/visibility-gate.d.ts +17 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/visibility-gate.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/styles/hooks/use-interpolated-style-maps.d.ts +4 -4
- package/lib/typescript/shared/providers/screen/styles/hooks/use-interpolated-style-maps.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/providers/screen/styles/hooks/use-resolved-slot-style-map.d.ts.map +1 -1
- package/lib/typescript/shared/stores/animation.store.d.ts +1 -3
- package/lib/typescript/shared/stores/animation.store.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/helpers/link-pairs.helpers.d.ts +18 -0
- package/lib/typescript/shared/stores/bounds/helpers/link-pairs.helpers.d.ts.map +1 -0
- package/lib/typescript/shared/stores/bounds/index.d.ts +7 -15
- package/lib/typescript/shared/stores/bounds/index.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/internals/clear.d.ts +2 -4
- package/lib/typescript/shared/stores/bounds/internals/clear.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/internals/entries.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/internals/links.d.ts +13 -10
- package/lib/typescript/shared/stores/bounds/internals/links.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/internals/resolver.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/internals/state.d.ts +26 -5
- package/lib/typescript/shared/stores/bounds/internals/state.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/types.d.ts +16 -18
- package/lib/typescript/shared/stores/bounds/types.d.ts.map +1 -1
- package/lib/typescript/shared/stores/gesture.store.d.ts +1 -0
- package/lib/typescript/shared/stores/gesture.store.d.ts.map +1 -1
- package/lib/typescript/shared/stores/system.store.d.ts +4 -0
- package/lib/typescript/shared/stores/system.store.d.ts.map +1 -1
- package/lib/typescript/shared/types/animation.types.d.ts +11 -5
- package/lib/typescript/shared/types/animation.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/bounds.types.d.ts +1 -1
- package/lib/typescript/shared/types/bounds.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/gesture.types.d.ts +9 -1
- 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 +8 -1
- package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
- package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/helpers/create-bounds-accessor-core.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/helpers/create-interpolators.d.ts +2 -2
- package/lib/typescript/shared/utils/bounds/helpers/create-interpolators.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/helpers/create-link-accessor.d.ts +2 -3
- package/lib/typescript/shared/utils/bounds/helpers/create-link-accessor.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/helpers/prepare-bound-styles.d.ts +3 -3
- package/lib/typescript/shared/utils/bounds/helpers/prepare-bound-styles.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/helpers/resolve-bounds-pair-key.d.ts +4 -0
- package/lib/typescript/shared/utils/bounds/helpers/resolve-bounds-pair-key.d.ts.map +1 -0
- package/lib/typescript/shared/utils/bounds/navigation/math.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/reveal/config.d.ts +20 -16
- package/lib/typescript/shared/utils/bounds/navigation/reveal/config.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/navigation/reveal/math.d.ts +48 -7
- package/lib/typescript/shared/utils/bounds/navigation/reveal/math.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/navigation/zoom/config.d.ts +1 -1
- package/lib/typescript/shared/utils/bounds/navigation/zoom/config.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/navigation/zoom/math.d.ts +2 -3
- package/lib/typescript/shared/utils/bounds/navigation/zoom/math.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/types/options.d.ts +2 -3
- package/lib/typescript/shared/utils/bounds/types/options.d.ts.map +1 -1
- package/lib/typescript/shared/utils/gesture-progress-mode.d.ts +14 -0
- package/lib/typescript/shared/utils/gesture-progress-mode.d.ts.map +1 -0
- package/lib/typescript/shared/utils/navigation/resolve-scene-neighbors.d.ts +3 -2
- package/lib/typescript/shared/utils/navigation/resolve-scene-neighbors.d.ts.map +1 -1
- package/lib/typescript/shared/utils/resolve-chain-target.d.ts +2 -2
- package/lib/typescript/shared/utils/resolve-chain-target.d.ts.map +1 -1
- package/lib/typescript/shared/utils/resolve-screen-transition-options.d.ts +0 -1
- package/lib/typescript/shared/utils/resolve-screen-transition-options.d.ts.map +1 -1
- package/package.json +5 -2
- package/src/component-stack/components/component-screen.tsx +3 -11
- package/src/shared/components/create-boundary-component/create-boundary-component.tsx +38 -40
- package/src/shared/components/create-boundary-component/hooks/use-boundary-presence.ts +5 -30
- package/src/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.ts +29 -19
- package/src/shared/components/create-boundary-component/hooks/use-initial-source-measurement.ts +41 -11
- package/src/shared/components/create-boundary-component/hooks/use-measurer.ts +49 -76
- package/src/shared/components/create-boundary-component/hooks/use-refresh-boundary.ts +45 -84
- package/src/shared/components/create-boundary-component/index.tsx +3 -1
- package/src/shared/components/create-boundary-component/types.ts +13 -11
- package/src/shared/components/create-boundary-component/utils/destination-signals.ts +129 -0
- package/src/shared/components/create-boundary-component/{hooks/helpers/scroll-measurement.ts → utils/measured-bounds.ts} +25 -1
- package/src/shared/components/create-boundary-component/utils/refresh-signals.ts +164 -0
- package/src/shared/components/create-boundary-component/utils/source-signals.ts +72 -0
- package/src/shared/components/create-transition-aware-component.tsx +1 -1
- package/src/shared/components/native-screen.tsx +3 -12
- package/src/shared/components/screen-container/helpers/find-collapse-target.ts +18 -7
- package/src/shared/components/screen-container/hooks/use-content-layout.ts +1 -1
- package/src/shared/components/screen-container/layers/backdrop.tsx +11 -5
- package/src/shared/components/screen-container/layers/maybe-masked-navigation-container.tsx +30 -15
- package/src/shared/components/screen-container/layers/surface-container.tsx +35 -15
- package/src/shared/components/screen-lifecycle/hooks/helpers/reset-stores-for-screen.ts +3 -23
- package/src/shared/components/screen-lifecycle/hooks/use-close-transition-intent.ts +1 -4
- package/src/shared/components/screen-lifecycle/hooks/use-open-transition-intent.ts +1 -1
- package/src/shared/configs/presets.ts +3 -3
- package/src/shared/constants.ts +15 -6
- package/src/shared/providers/helpers/measured-bounds-writes.ts +67 -0
- package/src/shared/providers/register-bounds.provider.tsx +77 -101
- package/src/shared/providers/screen/animation/animation.provider.tsx +169 -17
- package/src/shared/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.tsx +13 -0
- package/src/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.ts +144 -0
- package/src/shared/providers/screen/animation/helpers/build-screen-transition-options.ts +17 -1
- package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/gesture-progress.ts +164 -0
- package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/index.ts +159 -0
- package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/settle.ts +41 -0
- package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/snap-points.ts +188 -0
- package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/types.ts +40 -0
- package/src/shared/providers/screen/animation/helpers/pipeline.ts +40 -24
- package/src/shared/providers/screen/animation/helpers/selected-interpolator-options.ts +99 -0
- package/src/shared/providers/screen/animation/helpers/use-build-transition-state.ts +7 -6
- package/src/shared/providers/screen/animation/types.ts +34 -4
- package/src/shared/providers/screen/animation/use-screen-animation.tsx +88 -33
- package/src/shared/providers/screen/descriptors/descriptors.provider.tsx +1 -7
- package/src/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.ts +0 -19
- package/src/shared/providers/screen/gestures/gestures.provider.tsx +5 -4
- package/src/shared/providers/screen/gestures/hooks/use-gesture-builder-state.ts +6 -10
- package/src/shared/providers/screen/gestures/hooks/use-gesture-sensitivity.ts +1 -1
- package/src/shared/providers/screen/gestures/hooks/use-screen-gesture-config.ts +11 -147
- package/src/shared/providers/screen/gestures/hooks/use-screen-gesture.ts +1 -5
- package/src/shared/providers/screen/gestures/hooks/use-stable-runtime-config.ts +11 -19
- package/src/shared/providers/screen/gestures/ownership/compute-claimed-directions.ts +52 -40
- package/src/shared/providers/screen/gestures/ownership/resolve-ownership.ts +15 -0
- package/src/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.ts +83 -47
- package/src/shared/providers/screen/gestures/{builders/use-build-pan-gesture.ts → pan/build-pan-gesture.ts} +2 -2
- package/src/shared/providers/screen/gestures/pan/pan-activation-decision.ts +458 -0
- package/src/shared/providers/screen/gestures/{helpers/gesture-activation.ts → pan/pan-activation-rules.ts} +208 -147
- package/src/shared/providers/screen/gestures/pan/pan-activation.ts +135 -0
- package/src/shared/providers/screen/gestures/{helpers/pan-phases.ts → pan/pan-lifecycle.ts} +44 -23
- package/src/shared/providers/screen/gestures/pan/pan-release.ts +279 -0
- package/src/shared/providers/screen/gestures/pan/pan-reset.ts +95 -0
- package/src/shared/providers/screen/gestures/{behaviors → pan}/use-pan-behavior.ts +28 -36
- package/src/shared/providers/screen/gestures/{builders/use-build-pinch-gesture.ts → pinch/build-pinch-gesture.ts} +2 -2
- package/src/shared/providers/screen/gestures/{activation/use-pinch-activation.ts → pinch/pinch-activation.ts} +6 -3
- package/src/shared/providers/screen/gestures/{helpers/pinch-phases.ts → pinch/pinch-lifecycle.ts} +9 -2
- package/src/shared/providers/screen/gestures/pinch/pinch-release.ts +183 -0
- package/src/shared/providers/screen/gestures/pinch/pinch-reset.ts +65 -0
- package/src/shared/providers/screen/gestures/{behaviors → pinch}/use-pinch-behavior.ts +28 -42
- package/src/shared/providers/screen/gestures/{hooks/use-scroll-gesture-coordination → scroll-coordination}/update-scroll-gesture-state.ts +1 -1
- package/src/shared/providers/screen/gestures/{hooks/use-scroll-gesture-coordination → scroll-coordination}/use-scroll-gesture-coordination.ts +5 -5
- package/src/shared/providers/screen/gestures/{hooks/use-scroll-gesture-coordination → scroll-coordination}/walk-up-scroll-gesture-coordination.ts +42 -26
- package/src/shared/providers/screen/gestures/{helpers/gesture-physics.ts → shared/physics.ts} +167 -107
- package/src/shared/providers/screen/gestures/shared/policy.ts +344 -0
- package/src/shared/providers/screen/gestures/shared/release.ts +43 -0
- package/src/shared/providers/screen/gestures/shared/reset.ts +74 -0
- package/src/shared/providers/screen/gestures/shared/runtime.ts +76 -0
- package/src/shared/providers/screen/gestures/shared/snap-points.ts +250 -0
- package/src/shared/providers/screen/gestures/shared/targets.ts +202 -0
- package/src/shared/providers/screen/gestures/types.ts +40 -44
- package/src/shared/providers/screen/options/helpers.ts +169 -58
- package/src/shared/providers/screen/options/types.ts +1 -0
- package/src/shared/providers/screen/styles/helpers/preserve-animated-props-only.ts +22 -0
- package/src/shared/providers/screen/styles/helpers/resolve-slot-styles/index.ts +154 -0
- package/src/shared/providers/screen/styles/helpers/visibility-gate.ts +57 -0
- package/src/shared/providers/screen/styles/hooks/use-interpolated-style-maps.tsx +45 -18
- package/src/shared/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +36 -17
- package/src/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.tsx +11 -3
- package/src/shared/stores/animation.store.ts +3 -9
- package/src/shared/stores/bounds/helpers/link-pairs.helpers.ts +161 -0
- package/src/shared/stores/bounds/index.ts +11 -23
- package/src/shared/stores/bounds/internals/clear.ts +18 -81
- package/src/shared/stores/bounds/internals/entries.ts +56 -13
- package/src/shared/stores/bounds/internals/links.ts +222 -125
- package/src/shared/stores/bounds/internals/resolver.ts +23 -87
- package/src/shared/stores/bounds/internals/state.ts +27 -5
- package/src/shared/stores/bounds/types.ts +19 -18
- package/src/shared/stores/gesture.store.ts +3 -0
- package/src/shared/stores/system.store.ts +8 -0
- package/src/shared/types/animation.types.ts +13 -5
- package/src/shared/types/bounds.types.ts +4 -1
- package/src/shared/types/gesture.types.ts +10 -2
- package/src/shared/types/index.ts +0 -1
- package/src/shared/types/screen.types.ts +13 -1
- package/src/shared/utils/animation/animate-to-progress.ts +25 -17
- package/src/shared/utils/bounds/helpers/create-bounds-accessor-core.ts +2 -0
- package/src/shared/utils/bounds/helpers/create-interpolators.ts +2 -2
- package/src/shared/utils/bounds/helpers/create-link-accessor.ts +8 -8
- package/src/shared/utils/bounds/helpers/prepare-bound-styles.ts +23 -14
- package/src/shared/utils/bounds/helpers/resolve-bounds-pair-key.ts +22 -0
- package/src/shared/utils/bounds/navigation/math.ts +2 -18
- package/src/shared/utils/bounds/navigation/reveal/build.ts +288 -193
- package/src/shared/utils/bounds/navigation/reveal/config.ts +24 -16
- package/src/shared/utils/bounds/navigation/reveal/math.ts +234 -18
- package/src/shared/utils/bounds/navigation/zoom/build.ts +124 -20
- package/src/shared/utils/bounds/navigation/zoom/config.ts +1 -1
- package/src/shared/utils/bounds/navigation/zoom/math.ts +5 -7
- package/src/shared/utils/bounds/types/options.ts +2 -3
- package/src/shared/utils/gesture-progress-mode.ts +67 -0
- package/src/shared/utils/navigation/resolve-scene-neighbors.ts +36 -23
- package/src/shared/utils/resolve-chain-target.ts +9 -22
- package/src/shared/utils/resolve-screen-transition-options.ts +1 -3
- package/lib/commonjs/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.js +0 -46
- package/lib/commonjs/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.js.map +0 -1
- package/lib/commonjs/shared/components/create-boundary-component/helpers/resolve-pending-source-key.js +0 -17
- package/lib/commonjs/shared/components/create-boundary-component/helpers/resolve-pending-source-key.js.map +0 -1
- package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.js +0 -28
- package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.js.map +0 -1
- package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js +0 -64
- package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js.map +0 -1
- package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/measurement.js +0 -20
- package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/measurement.js.map +0 -1
- package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/scroll-measurement.js.map +0 -1
- package/lib/commonjs/shared/components/create-boundary-component/utils/build-boundary-match-key.js +0 -16
- package/lib/commonjs/shared/components/create-boundary-component/utils/build-boundary-match-key.js.map +0 -1
- package/lib/commonjs/shared/hooks/reanimated/use-animated-debounce.js +0 -43
- package/lib/commonjs/shared/hooks/reanimated/use-animated-debounce.js.map +0 -1
- package/lib/commonjs/shared/providers/layout-anchor.provider.js +0 -86
- package/lib/commonjs/shared/providers/layout-anchor.provider.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state.js +0 -164
- package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/resolve-screen-animation-target.js +0 -33
- package/lib/commonjs/shared/providers/screen/animation/helpers/resolve-screen-animation-target.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/descriptors/helpers/get-ancestor-navigator-keys.js +0 -28
- package/lib/commonjs/shared/providers/screen/descriptors/helpers/get-ancestor-navigator-keys.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/activation/use-pan-activation.js +0 -182
- package/lib/commonjs/shared/providers/screen/gestures/activation/use-pan-activation.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/activation/use-pinch-activation.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/behaviors/strategies/pan-snap.strategy.js +0 -161
- package/lib/commonjs/shared/providers/screen/gestures/behaviors/strategies/pan-snap.strategy.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/behaviors/strategies/pan.strategy.js +0 -78
- package/lib/commonjs/shared/providers/screen/gestures/behaviors/strategies/pan.strategy.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/behaviors/strategies/pinch-snap.strategy.js +0 -147
- package/lib/commonjs/shared/providers/screen/gestures/behaviors/strategies/pinch-snap.strategy.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/behaviors/strategies/pinch.strategy.js +0 -52
- package/lib/commonjs/shared/providers/screen/gestures/behaviors/strategies/pinch.strategy.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/behaviors/use-pan-behavior.js +0 -64
- package/lib/commonjs/shared/providers/screen/gestures/behaviors/use-pan-behavior.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/behaviors/use-pinch-behavior.js +0 -64
- package/lib/commonjs/shared/providers/screen/gestures/behaviors/use-pinch-behavior.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/builders/use-build-pan-gesture.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/builders/use-build-pinch-gesture.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/helpers/gesture-activation.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/helpers/gesture-directions.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/helpers/gesture-physics.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/helpers/gesture-reset.js +0 -99
- package/lib/commonjs/shared/providers/screen/gestures/helpers/gesture-reset.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/helpers/gesture-snap-points.js +0 -43
- package/lib/commonjs/shared/providers/screen/gestures/helpers/gesture-snap-points.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/helpers/gesture-targets.js +0 -93
- package/lib/commonjs/shared/providers/screen/gestures/helpers/gesture-targets.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/helpers/pan-phases.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/helpers/pinch-phases.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/helpers/resolve-can-track-gesture.js +0 -21
- package/lib/commonjs/shared/providers/screen/gestures/helpers/resolve-can-track-gesture.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/helpers/runtime-options.js +0 -134
- package/lib/commonjs/shared/providers/screen/gestures/helpers/runtime-options.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/helpers/validate-snap-points.js +0 -56
- package/lib/commonjs/shared/providers/screen/gestures/helpers/validate-snap-points.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/helpers/walk-gesture-ancestors.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-scroll-gesture-coordination/index.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-scroll-gesture-coordination/update-scroll-gesture-state.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-scroll-gesture-coordination/use-scroll-gesture-coordination.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-scroll-gesture-coordination/walk-up-scroll-gesture-coordination.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/ownership/should-defer-to-child-claim.js +0 -18
- package/lib/commonjs/shared/providers/screen/gestures/ownership/should-defer-to-child-claim.js.map +0 -1
- package/lib/commonjs/shared/providers/scroll-settle.provider.js +0 -25
- package/lib/commonjs/shared/providers/scroll-settle.provider.js.map +0 -1
- package/lib/commonjs/shared/stores/bounds/helpers/entries.helpers.js +0 -59
- package/lib/commonjs/shared/stores/bounds/helpers/entries.helpers.js.map +0 -1
- package/lib/commonjs/shared/stores/bounds/helpers/find-latest.js +0 -25
- package/lib/commonjs/shared/stores/bounds/helpers/find-latest.js.map +0 -1
- package/lib/commonjs/shared/stores/bounds/helpers/groups.helpers.js +0 -30
- package/lib/commonjs/shared/stores/bounds/helpers/groups.helpers.js.map +0 -1
- package/lib/commonjs/shared/stores/bounds/helpers/link.helpers.js +0 -79
- package/lib/commonjs/shared/stores/bounds/helpers/link.helpers.js.map +0 -1
- package/lib/commonjs/shared/stores/bounds/helpers/matching.js +0 -22
- package/lib/commonjs/shared/stores/bounds/helpers/matching.js.map +0 -1
- package/lib/commonjs/shared/stores/bounds/helpers/tag-state.helpers.js +0 -30
- package/lib/commonjs/shared/stores/bounds/helpers/tag-state.helpers.js.map +0 -1
- package/lib/commonjs/shared/stores/bounds/internals/groups.js +0 -102
- package/lib/commonjs/shared/stores/bounds/internals/groups.js.map +0 -1
- package/lib/commonjs/shared/typecheck/public-api.typecheck.js +0 -227
- package/lib/commonjs/shared/typecheck/public-api.typecheck.js.map +0 -1
- package/lib/module/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.js +0 -41
- package/lib/module/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.js.map +0 -1
- package/lib/module/shared/components/create-boundary-component/helpers/resolve-pending-source-key.js +0 -12
- package/lib/module/shared/components/create-boundary-component/helpers/resolve-pending-source-key.js.map +0 -1
- package/lib/module/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.js +0 -23
- package/lib/module/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.js.map +0 -1
- package/lib/module/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js +0 -58
- package/lib/module/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js.map +0 -1
- package/lib/module/shared/components/create-boundary-component/hooks/helpers/measurement.js +0 -15
- package/lib/module/shared/components/create-boundary-component/hooks/helpers/measurement.js.map +0 -1
- package/lib/module/shared/components/create-boundary-component/hooks/helpers/scroll-measurement.js.map +0 -1
- package/lib/module/shared/components/create-boundary-component/utils/build-boundary-match-key.js +0 -12
- package/lib/module/shared/components/create-boundary-component/utils/build-boundary-match-key.js.map +0 -1
- package/lib/module/shared/hooks/reanimated/use-animated-debounce.js +0 -39
- package/lib/module/shared/hooks/reanimated/use-animated-debounce.js.map +0 -1
- package/lib/module/shared/providers/layout-anchor.provider.js +0 -80
- package/lib/module/shared/providers/layout-anchor.provider.js.map +0 -1
- package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state.js +0 -158
- package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state.js.map +0 -1
- package/lib/module/shared/providers/screen/animation/helpers/resolve-screen-animation-target.js +0 -29
- package/lib/module/shared/providers/screen/animation/helpers/resolve-screen-animation-target.js.map +0 -1
- package/lib/module/shared/providers/screen/descriptors/helpers/get-ancestor-navigator-keys.js +0 -24
- package/lib/module/shared/providers/screen/descriptors/helpers/get-ancestor-navigator-keys.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/activation/use-pan-activation.js +0 -177
- package/lib/module/shared/providers/screen/gestures/activation/use-pan-activation.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/activation/use-pinch-activation.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/behaviors/strategies/pan-snap.strategy.js +0 -157
- package/lib/module/shared/providers/screen/gestures/behaviors/strategies/pan-snap.strategy.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/behaviors/strategies/pan.strategy.js +0 -74
- package/lib/module/shared/providers/screen/gestures/behaviors/strategies/pan.strategy.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/behaviors/strategies/pinch-snap.strategy.js +0 -143
- package/lib/module/shared/providers/screen/gestures/behaviors/strategies/pinch-snap.strategy.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/behaviors/strategies/pinch.strategy.js +0 -48
- package/lib/module/shared/providers/screen/gestures/behaviors/strategies/pinch.strategy.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/behaviors/use-pan-behavior.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/behaviors/use-pinch-behavior.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/builders/use-build-pan-gesture.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/builders/use-build-pinch-gesture.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/helpers/gesture-activation.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/helpers/gesture-directions.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/helpers/gesture-physics.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/helpers/gesture-reset.js +0 -93
- package/lib/module/shared/providers/screen/gestures/helpers/gesture-reset.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/helpers/gesture-snap-points.js +0 -37
- package/lib/module/shared/providers/screen/gestures/helpers/gesture-snap-points.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/helpers/gesture-targets.js +0 -87
- package/lib/module/shared/providers/screen/gestures/helpers/gesture-targets.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/helpers/pan-phases.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/helpers/pinch-phases.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/helpers/resolve-can-track-gesture.js +0 -17
- package/lib/module/shared/providers/screen/gestures/helpers/resolve-can-track-gesture.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/helpers/runtime-options.js +0 -124
- package/lib/module/shared/providers/screen/gestures/helpers/runtime-options.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/helpers/validate-snap-points.js +0 -50
- package/lib/module/shared/providers/screen/gestures/helpers/validate-snap-points.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/helpers/walk-gesture-ancestors.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/hooks/use-scroll-gesture-coordination/index.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/hooks/use-scroll-gesture-coordination/update-scroll-gesture-state.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/hooks/use-scroll-gesture-coordination/use-scroll-gesture-coordination.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/hooks/use-scroll-gesture-coordination/walk-up-scroll-gesture-coordination.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/ownership/should-defer-to-child-claim.js +0 -14
- package/lib/module/shared/providers/screen/gestures/ownership/should-defer-to-child-claim.js.map +0 -1
- package/lib/module/shared/providers/scroll-settle.provider.js +0 -19
- package/lib/module/shared/providers/scroll-settle.provider.js.map +0 -1
- package/lib/module/shared/stores/bounds/helpers/entries.helpers.js +0 -52
- package/lib/module/shared/stores/bounds/helpers/entries.helpers.js.map +0 -1
- package/lib/module/shared/stores/bounds/helpers/find-latest.js +0 -19
- package/lib/module/shared/stores/bounds/helpers/find-latest.js.map +0 -1
- package/lib/module/shared/stores/bounds/helpers/groups.helpers.js +0 -23
- package/lib/module/shared/stores/bounds/helpers/groups.helpers.js.map +0 -1
- package/lib/module/shared/stores/bounds/helpers/link.helpers.js +0 -69
- package/lib/module/shared/stores/bounds/helpers/link.helpers.js.map +0 -1
- package/lib/module/shared/stores/bounds/helpers/matching.js +0 -17
- package/lib/module/shared/stores/bounds/helpers/matching.js.map +0 -1
- package/lib/module/shared/stores/bounds/helpers/tag-state.helpers.js +0 -24
- package/lib/module/shared/stores/bounds/helpers/tag-state.helpers.js.map +0 -1
- package/lib/module/shared/stores/bounds/internals/groups.js +0 -95
- package/lib/module/shared/stores/bounds/internals/groups.js.map +0 -1
- package/lib/module/shared/typecheck/public-api.typecheck.js +0 -227
- package/lib/module/shared/typecheck/public-api.typecheck.js.map +0 -1
- package/lib/typescript/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.d.ts +0 -18
- package/lib/typescript/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.d.ts.map +0 -1
- package/lib/typescript/shared/components/create-boundary-component/helpers/resolve-pending-source-key.d.ts +0 -2
- package/lib/typescript/shared/components/create-boundary-component/helpers/resolve-pending-source-key.d.ts.map +0 -1
- package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.d.ts +0 -22
- package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.d.ts.map +0 -1
- package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/measurement-rules.d.ts +0 -24
- package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/measurement-rules.d.ts.map +0 -1
- package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/measurement.d.ts +0 -3
- package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/measurement.d.ts.map +0 -1
- package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/scroll-measurement.d.ts.map +0 -1
- package/lib/typescript/shared/components/create-boundary-component/utils/build-boundary-match-key.d.ts +0 -8
- package/lib/typescript/shared/components/create-boundary-component/utils/build-boundary-match-key.d.ts.map +0 -1
- package/lib/typescript/shared/hooks/reanimated/use-animated-debounce.d.ts +0 -13
- package/lib/typescript/shared/hooks/reanimated/use-animated-debounce.d.ts.map +0 -1
- package/lib/typescript/shared/providers/layout-anchor.provider.d.ts +0 -39
- package/lib/typescript/shared/providers/layout-anchor.provider.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/resolve-screen-animation-target.d.ts +0 -9
- package/lib/typescript/shared/providers/screen/animation/helpers/resolve-screen-animation-target.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/descriptors/helpers/get-ancestor-navigator-keys.d.ts +0 -7
- package/lib/typescript/shared/providers/screen/descriptors/helpers/get-ancestor-navigator-keys.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/activation/use-pan-activation.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/activation/use-pinch-activation.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/behaviors/strategies/pan-snap.strategy.d.ts +0 -3
- package/lib/typescript/shared/providers/screen/gestures/behaviors/strategies/pan-snap.strategy.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/behaviors/strategies/pan.strategy.d.ts +0 -3
- package/lib/typescript/shared/providers/screen/gestures/behaviors/strategies/pan.strategy.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/behaviors/strategies/pinch-snap.strategy.d.ts +0 -3
- package/lib/typescript/shared/providers/screen/gestures/behaviors/strategies/pinch-snap.strategy.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/behaviors/strategies/pinch.strategy.d.ts +0 -3
- package/lib/typescript/shared/providers/screen/gestures/behaviors/strategies/pinch.strategy.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/behaviors/use-pan-behavior.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/behaviors/use-pinch-behavior.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/builders/use-build-pan-gesture.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/builders/use-build-pinch-gesture.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/helpers/gesture-activation.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/helpers/gesture-directions.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/helpers/gesture-physics.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/helpers/gesture-reset.d.ts +0 -20
- package/lib/typescript/shared/providers/screen/gestures/helpers/gesture-reset.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/helpers/gesture-snap-points.d.ts +0 -17
- package/lib/typescript/shared/providers/screen/gestures/helpers/gesture-snap-points.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/helpers/gesture-targets.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/helpers/pan-phases.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/helpers/pinch-phases.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/helpers/resolve-can-track-gesture.d.ts +0 -8
- package/lib/typescript/shared/providers/screen/gestures/helpers/resolve-can-track-gesture.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/helpers/runtime-options.d.ts +0 -9
- package/lib/typescript/shared/providers/screen/gestures/helpers/runtime-options.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/helpers/validate-snap-points.d.ts +0 -20
- package/lib/typescript/shared/providers/screen/gestures/helpers/validate-snap-points.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/helpers/walk-gesture-ancestors.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-scroll-gesture-coordination/index.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-scroll-gesture-coordination/update-scroll-gesture-state.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-scroll-gesture-coordination/use-scroll-gesture-coordination.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-scroll-gesture-coordination/walk-up-scroll-gesture-coordination.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/ownership/should-defer-to-child-claim.d.ts +0 -6
- package/lib/typescript/shared/providers/screen/gestures/ownership/should-defer-to-child-claim.d.ts.map +0 -1
- package/lib/typescript/shared/providers/scroll-settle.provider.d.ts +0 -12
- package/lib/typescript/shared/providers/scroll-settle.provider.d.ts.map +0 -1
- package/lib/typescript/shared/stores/bounds/helpers/entries.helpers.d.ts +0 -5
- package/lib/typescript/shared/stores/bounds/helpers/entries.helpers.d.ts.map +0 -1
- package/lib/typescript/shared/stores/bounds/helpers/find-latest.d.ts +0 -3
- package/lib/typescript/shared/stores/bounds/helpers/find-latest.d.ts.map +0 -1
- package/lib/typescript/shared/stores/bounds/helpers/groups.helpers.d.ts +0 -10
- package/lib/typescript/shared/stores/bounds/helpers/groups.helpers.d.ts.map +0 -1
- package/lib/typescript/shared/stores/bounds/helpers/link.helpers.d.ts +0 -16
- package/lib/typescript/shared/stores/bounds/helpers/link.helpers.d.ts.map +0 -1
- package/lib/typescript/shared/stores/bounds/helpers/matching.d.ts +0 -4
- package/lib/typescript/shared/stores/bounds/helpers/matching.d.ts.map +0 -1
- package/lib/typescript/shared/stores/bounds/helpers/tag-state.helpers.d.ts +0 -5
- package/lib/typescript/shared/stores/bounds/helpers/tag-state.helpers.d.ts.map +0 -1
- package/lib/typescript/shared/stores/bounds/internals/groups.d.ts +0 -16
- package/lib/typescript/shared/stores/bounds/internals/groups.d.ts.map +0 -1
- package/src/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.ts +0 -101
- package/src/shared/components/create-boundary-component/helpers/resolve-pending-source-key.ts +0 -20
- package/src/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.ts +0 -48
- package/src/shared/components/create-boundary-component/hooks/helpers/measurement-rules.ts +0 -90
- package/src/shared/components/create-boundary-component/hooks/helpers/measurement.ts +0 -25
- package/src/shared/components/create-boundary-component/utils/build-boundary-match-key.ts +0 -14
- package/src/shared/hooks/reanimated/use-animated-debounce.ts +0 -53
- package/src/shared/providers/layout-anchor.provider.tsx +0 -112
- package/src/shared/providers/screen/animation/helpers/hydrate-transition-state.ts +0 -335
- package/src/shared/providers/screen/animation/helpers/resolve-screen-animation-target.ts +0 -42
- package/src/shared/providers/screen/descriptors/helpers/get-ancestor-navigator-keys.ts +0 -29
- package/src/shared/providers/screen/gestures/activation/use-pan-activation.ts +0 -244
- package/src/shared/providers/screen/gestures/behaviors/strategies/pan-snap.strategy.ts +0 -195
- package/src/shared/providers/screen/gestures/behaviors/strategies/pan.strategy.ts +0 -76
- package/src/shared/providers/screen/gestures/behaviors/strategies/pinch-snap.strategy.ts +0 -177
- package/src/shared/providers/screen/gestures/behaviors/strategies/pinch.strategy.ts +0 -73
- package/src/shared/providers/screen/gestures/helpers/gesture-reset.ts +0 -158
- package/src/shared/providers/screen/gestures/helpers/gesture-snap-points.ts +0 -72
- package/src/shared/providers/screen/gestures/helpers/gesture-targets.ts +0 -153
- package/src/shared/providers/screen/gestures/helpers/resolve-can-track-gesture.ts +0 -23
- package/src/shared/providers/screen/gestures/helpers/runtime-options.ts +0 -159
- package/src/shared/providers/screen/gestures/helpers/validate-snap-points.ts +0 -74
- package/src/shared/providers/screen/gestures/ownership/should-defer-to-child-claim.ts +0 -15
- package/src/shared/providers/scroll-settle.provider.tsx +0 -24
- package/src/shared/stores/bounds/helpers/entries.helpers.ts +0 -74
- package/src/shared/stores/bounds/helpers/find-latest.ts +0 -22
- package/src/shared/stores/bounds/helpers/groups.helpers.ts +0 -27
- package/src/shared/stores/bounds/helpers/link.helpers.ts +0 -135
- package/src/shared/stores/bounds/helpers/matching.ts +0 -25
- package/src/shared/stores/bounds/helpers/tag-state.helpers.ts +0 -24
- package/src/shared/stores/bounds/internals/groups.ts +0 -116
- package/src/shared/typecheck/public-api.typecheck.ts +0 -272
- /package/lib/commonjs/shared/providers/screen/gestures/{hooks/use-scroll-gesture-coordination → scroll-coordination}/index.js +0 -0
- /package/lib/commonjs/shared/providers/screen/gestures/{hooks/use-scroll-gesture-coordination → scroll-coordination}/update-scroll-gesture-state.js +0 -0
- /package/lib/module/shared/providers/screen/gestures/{hooks/use-scroll-gesture-coordination → scroll-coordination}/index.js +0 -0
- /package/lib/module/shared/providers/screen/gestures/{hooks/use-scroll-gesture-coordination → scroll-coordination}/update-scroll-gesture-state.js +0 -0
- /package/lib/typescript/shared/providers/screen/gestures/{behaviors → pan}/use-pan-behavior.d.ts +0 -0
- /package/lib/typescript/shared/providers/screen/gestures/{behaviors → pinch}/use-pinch-behavior.d.ts +0 -0
- /package/lib/typescript/shared/providers/screen/gestures/{hooks/use-scroll-gesture-coordination → scroll-coordination}/index.d.ts +0 -0
- /package/src/shared/providers/screen/gestures/{hooks/use-scroll-gesture-coordination → scroll-coordination}/index.ts +0 -0
- /package/src/shared/providers/screen/gestures/{helpers/walk-gesture-ancestors.ts → shared/ancestors.ts} +0 -0
- /package/src/shared/providers/screen/gestures/{helpers/gesture-directions.ts → shared/directions.ts} +0 -0
|
@@ -2,6 +2,10 @@ import { clamp } from "react-native-reanimated";
|
|
|
2
2
|
import { EPSILON, FALSE, TRUE } from "../../../../constants";
|
|
3
3
|
import { animateToProgress } from "../../../../utils/animation/animate-to-progress";
|
|
4
4
|
import { emit } from "../../../../utils/animation/emit";
|
|
5
|
+
import {
|
|
6
|
+
normalizeGestureTranslation,
|
|
7
|
+
resolveGestureVelocity,
|
|
8
|
+
} from "../shared/physics";
|
|
5
9
|
import type {
|
|
6
10
|
GestureDimensions,
|
|
7
11
|
PanGestureEvent,
|
|
@@ -9,8 +13,8 @@ import type {
|
|
|
9
13
|
PanReleaseResult,
|
|
10
14
|
PanTrackState,
|
|
11
15
|
} from "../types";
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
16
|
+
import { buildPanReleasePlan } from "./pan-release";
|
|
17
|
+
import { resetPanGestureValues } from "./pan-reset";
|
|
14
18
|
|
|
15
19
|
export const startPanBase = (runtime: PanGestureRuntime) => {
|
|
16
20
|
"worklet";
|
|
@@ -35,6 +39,7 @@ export const startPanBase = (runtime: PanGestureRuntime) => {
|
|
|
35
39
|
gestures.y.set(0);
|
|
36
40
|
gestures.normX.set(0);
|
|
37
41
|
gestures.normY.set(0);
|
|
42
|
+
gestures.velocity.set(0);
|
|
38
43
|
gestures.raw.x.set(0);
|
|
39
44
|
gestures.raw.y.set(0);
|
|
40
45
|
gestures.raw.normX.set(0);
|
|
@@ -50,18 +55,28 @@ export const trackPanGesture = (
|
|
|
50
55
|
): PanTrackState => {
|
|
51
56
|
"worklet";
|
|
52
57
|
const { translationX: x, translationY: y } = event;
|
|
53
|
-
const {
|
|
58
|
+
const {
|
|
59
|
+
translationX: rawX,
|
|
60
|
+
translationY: rawY,
|
|
61
|
+
velocityX,
|
|
62
|
+
velocityY,
|
|
63
|
+
} = rawEvent;
|
|
54
64
|
const { width, height } = dimensions;
|
|
55
65
|
|
|
56
66
|
const normX = clamp(normalizeGestureTranslation(x, width), -1, 1);
|
|
57
67
|
const normY = clamp(normalizeGestureTranslation(y, height), -1, 1);
|
|
58
68
|
const rawNormX = clamp(normalizeGestureTranslation(rawX, width), -1, 1);
|
|
59
69
|
const rawNormY = clamp(normalizeGestureTranslation(rawY, height), -1, 1);
|
|
70
|
+
const velocity = resolveGestureVelocity(
|
|
71
|
+
velocityX / Math.max(1, width),
|
|
72
|
+
velocityY / Math.max(1, height),
|
|
73
|
+
);
|
|
60
74
|
|
|
61
75
|
gestures.x.set(x);
|
|
62
76
|
gestures.y.set(y);
|
|
63
77
|
gestures.normX.set(normX);
|
|
64
78
|
gestures.normY.set(normY);
|
|
79
|
+
gestures.velocity.set(velocity);
|
|
65
80
|
gestures.raw.x.set(rawX);
|
|
66
81
|
gestures.raw.y.set(rawY);
|
|
67
82
|
gestures.raw.normX.set(rawNormX);
|
|
@@ -72,6 +87,7 @@ export const trackPanGesture = (
|
|
|
72
87
|
y,
|
|
73
88
|
normX,
|
|
74
89
|
normY,
|
|
90
|
+
velocity,
|
|
75
91
|
};
|
|
76
92
|
};
|
|
77
93
|
|
|
@@ -84,41 +100,46 @@ export const finalizePanRelease = (
|
|
|
84
100
|
) => {
|
|
85
101
|
"worklet";
|
|
86
102
|
const {
|
|
87
|
-
policy,
|
|
88
103
|
stores: { gestures, animations, system },
|
|
89
104
|
} = runtime;
|
|
90
|
-
const
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
105
|
+
const plan = buildPanReleasePlan(release, runtime, dimensions, rawEvent);
|
|
106
|
+
|
|
107
|
+
if (typeof plan.commitProgress === "number") {
|
|
108
|
+
animations.progress.set(plan.commitProgress);
|
|
109
|
+
system.targetProgress.set(plan.commitProgress);
|
|
110
|
+
}
|
|
94
111
|
|
|
95
|
-
|
|
96
|
-
spec:
|
|
112
|
+
resetPanGestureValues({
|
|
113
|
+
spec: plan.resetSpec,
|
|
97
114
|
gestures,
|
|
98
|
-
shouldDismiss:
|
|
99
|
-
velocityX: resetVelocityX,
|
|
100
|
-
velocityY: resetVelocityY,
|
|
101
|
-
velocityNormX:
|
|
102
|
-
velocityNormY:
|
|
115
|
+
shouldDismiss: plan.shouldDismiss,
|
|
116
|
+
velocityX: plan.resetVelocityX,
|
|
117
|
+
velocityY: plan.resetVelocityY,
|
|
118
|
+
velocityNormX: plan.resetVelocityNormX,
|
|
119
|
+
velocityNormY: plan.resetVelocityNormY,
|
|
120
|
+
releaseVelocity: plan.releaseVelocity,
|
|
121
|
+
resetNormalizedValues: plan.resetNormalizedValues,
|
|
122
|
+
resetNormalizedValuesImmediately: plan.resetNormalizedValuesImmediately,
|
|
123
|
+
preserveRawValues: plan.preserveRawValues,
|
|
103
124
|
});
|
|
104
125
|
|
|
105
126
|
const progressAlreadyAtTarget =
|
|
106
|
-
Math.abs(animations.progress.get() -
|
|
127
|
+
Math.abs(animations.progress.get() - plan.target) <= EPSILON;
|
|
107
128
|
|
|
108
|
-
if (!
|
|
109
|
-
system.targetProgress.set(
|
|
110
|
-
animations.
|
|
129
|
+
if (!plan.shouldDismiss && progressAlreadyAtTarget) {
|
|
130
|
+
system.targetProgress.set(plan.target);
|
|
131
|
+
animations.progressAnimating.set(FALSE);
|
|
111
132
|
return;
|
|
112
133
|
}
|
|
113
134
|
|
|
114
135
|
animateToProgress({
|
|
115
|
-
target:
|
|
116
|
-
onAnimationFinish:
|
|
117
|
-
spec:
|
|
136
|
+
target: plan.target,
|
|
137
|
+
onAnimationFinish: plan.shouldDismiss ? dismissScreen : undefined,
|
|
138
|
+
spec: plan.transitionSpec,
|
|
118
139
|
emitWillAnimate: false,
|
|
119
140
|
markEntering: false,
|
|
120
141
|
targetProgress: system.targetProgress,
|
|
121
142
|
animations,
|
|
122
|
-
initialVelocity:
|
|
143
|
+
initialVelocity: plan.progressVelocity,
|
|
123
144
|
});
|
|
124
145
|
};
|
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
import { clamp } from "react-native-reanimated";
|
|
2
|
+
import {
|
|
3
|
+
getPanSnapAxisConfigForDirection,
|
|
4
|
+
isResolvedPanGestureDirection,
|
|
5
|
+
} from "../shared/directions";
|
|
6
|
+
import {
|
|
7
|
+
getPanReleaseHandoffVelocity,
|
|
8
|
+
getPanReleaseProgressVelocity,
|
|
9
|
+
resolveGestureVelocity,
|
|
10
|
+
} from "../shared/physics";
|
|
11
|
+
import {
|
|
12
|
+
getProgressVelocityTowardTarget,
|
|
13
|
+
resolveGestureSnapTransitionSpec,
|
|
14
|
+
} from "../shared/release";
|
|
15
|
+
import {
|
|
16
|
+
primeRuntimeSnapPoint,
|
|
17
|
+
resolveRuntimeGestureSnapPoints,
|
|
18
|
+
} from "../shared/snap-points";
|
|
19
|
+
import { determineDismissal, determineSnapTarget } from "../shared/targets";
|
|
20
|
+
import type {
|
|
21
|
+
GestureDimensions,
|
|
22
|
+
PanGestureEvent,
|
|
23
|
+
PanGestureRuntime,
|
|
24
|
+
PanReleasePlan,
|
|
25
|
+
PanReleaseResult,
|
|
26
|
+
} from "../types";
|
|
27
|
+
|
|
28
|
+
const resolvePanReleaseVelocity = (
|
|
29
|
+
runtime: PanGestureRuntime,
|
|
30
|
+
velocityNormX: number,
|
|
31
|
+
velocityNormY: number,
|
|
32
|
+
) => {
|
|
33
|
+
"worklet";
|
|
34
|
+
const activeGesture = runtime.stores.gestures.active.get();
|
|
35
|
+
|
|
36
|
+
switch (activeGesture) {
|
|
37
|
+
case "horizontal":
|
|
38
|
+
case "horizontal-inverted":
|
|
39
|
+
return resolveGestureVelocity(velocityNormX, 0);
|
|
40
|
+
case "vertical":
|
|
41
|
+
case "vertical-inverted":
|
|
42
|
+
return resolveGestureVelocity(0, velocityNormY);
|
|
43
|
+
default:
|
|
44
|
+
return resolveGestureVelocity(velocityNormX, velocityNormY);
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
const resolveActivePanSnapAxis = (runtime: PanGestureRuntime) => {
|
|
49
|
+
"worklet";
|
|
50
|
+
const activeGesture = runtime.stores.gestures.active.get();
|
|
51
|
+
|
|
52
|
+
return isResolvedPanGestureDirection(activeGesture)
|
|
53
|
+
? getPanSnapAxisConfigForDirection(
|
|
54
|
+
runtime.policy.snapAxisDirections,
|
|
55
|
+
activeGesture,
|
|
56
|
+
)
|
|
57
|
+
: null;
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
const getPanSnapAxisMotion = (
|
|
61
|
+
event: PanGestureEvent,
|
|
62
|
+
dimensions: GestureDimensions,
|
|
63
|
+
activeAxis: NonNullable<ReturnType<typeof resolveActivePanSnapAxis>>,
|
|
64
|
+
) => {
|
|
65
|
+
"worklet";
|
|
66
|
+
const isHorizontal = activeAxis.axis === "horizontal";
|
|
67
|
+
const axisVelocity = isHorizontal ? event.velocityX : event.velocityY;
|
|
68
|
+
const axisDimension = isHorizontal ? dimensions.width : dimensions.height;
|
|
69
|
+
const snapVelocity = activeAxis.config.inverted
|
|
70
|
+
? -axisVelocity
|
|
71
|
+
: axisVelocity;
|
|
72
|
+
|
|
73
|
+
return { axisVelocity, axisDimension, snapVelocity };
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
const getPanSnapReleaseProgress = ({
|
|
77
|
+
runtime,
|
|
78
|
+
event,
|
|
79
|
+
dimensions,
|
|
80
|
+
activeAxis,
|
|
81
|
+
minSnapPoint,
|
|
82
|
+
maxSnapPoint,
|
|
83
|
+
}: {
|
|
84
|
+
runtime: PanGestureRuntime;
|
|
85
|
+
event: PanGestureEvent;
|
|
86
|
+
dimensions: GestureDimensions;
|
|
87
|
+
activeAxis: NonNullable<ReturnType<typeof resolveActivePanSnapAxis>>;
|
|
88
|
+
minSnapPoint: number;
|
|
89
|
+
maxSnapPoint: number;
|
|
90
|
+
}) => {
|
|
91
|
+
"worklet";
|
|
92
|
+
const isHorizontal = activeAxis.axis === "horizontal";
|
|
93
|
+
const axisTranslation = isHorizontal
|
|
94
|
+
? event.translationX
|
|
95
|
+
: event.translationY;
|
|
96
|
+
const axisDimension = isHorizontal ? dimensions.width : dimensions.height;
|
|
97
|
+
const axisProgress = axisTranslation / Math.max(1, axisDimension);
|
|
98
|
+
const progress =
|
|
99
|
+
runtime.gestureProgressBaseline.get() +
|
|
100
|
+
activeAxis.config.progressSign * axisProgress;
|
|
101
|
+
|
|
102
|
+
return clamp(progress, minSnapPoint, maxSnapPoint);
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
const buildInactivePanSnapRelease = (
|
|
106
|
+
runtime: PanGestureRuntime,
|
|
107
|
+
): PanReleaseResult => {
|
|
108
|
+
"worklet";
|
|
109
|
+
const { policy, stores } = runtime;
|
|
110
|
+
|
|
111
|
+
return {
|
|
112
|
+
target: stores.animations.progress.get(),
|
|
113
|
+
shouldDismiss: false,
|
|
114
|
+
initialVelocity: 0,
|
|
115
|
+
transitionSpec: policy.transitionSpec,
|
|
116
|
+
resetSpec: policy.transitionSpec?.open,
|
|
117
|
+
};
|
|
118
|
+
};
|
|
119
|
+
|
|
120
|
+
export const primeSnapPanRelease = (runtime: PanGestureRuntime) => {
|
|
121
|
+
"worklet";
|
|
122
|
+
primeRuntimeSnapPoint(runtime);
|
|
123
|
+
};
|
|
124
|
+
|
|
125
|
+
export const resolvePanRelease = (
|
|
126
|
+
event: PanGestureEvent,
|
|
127
|
+
runtime: PanGestureRuntime,
|
|
128
|
+
dimensions: GestureDimensions,
|
|
129
|
+
): PanReleaseResult => {
|
|
130
|
+
"worklet";
|
|
131
|
+
const {
|
|
132
|
+
participation,
|
|
133
|
+
policy,
|
|
134
|
+
stores: { animations },
|
|
135
|
+
} = runtime;
|
|
136
|
+
|
|
137
|
+
const result = determineDismissal({
|
|
138
|
+
event,
|
|
139
|
+
directions: policy.panActivationDirections,
|
|
140
|
+
dimensions,
|
|
141
|
+
gestureVelocityImpact: policy.gestureVelocityImpact,
|
|
142
|
+
});
|
|
143
|
+
|
|
144
|
+
const shouldDismiss = participation.canDismiss && result.shouldDismiss;
|
|
145
|
+
|
|
146
|
+
return {
|
|
147
|
+
target: shouldDismiss ? 0 : 1,
|
|
148
|
+
shouldDismiss,
|
|
149
|
+
initialVelocity: getPanReleaseProgressVelocity({
|
|
150
|
+
animations,
|
|
151
|
+
shouldDismiss,
|
|
152
|
+
event,
|
|
153
|
+
dimensions,
|
|
154
|
+
directions: policy.panActivationDirections,
|
|
155
|
+
gestureReleaseVelocityScale: policy.gestureReleaseVelocityScale,
|
|
156
|
+
}),
|
|
157
|
+
transitionSpec: policy.transitionSpec,
|
|
158
|
+
resetSpec: shouldDismiss
|
|
159
|
+
? policy.transitionSpec?.close
|
|
160
|
+
: policy.transitionSpec?.open,
|
|
161
|
+
};
|
|
162
|
+
};
|
|
163
|
+
|
|
164
|
+
export const resolveSnapPanRelease = (
|
|
165
|
+
event: PanGestureEvent,
|
|
166
|
+
runtime: PanGestureRuntime,
|
|
167
|
+
dimensions: GestureDimensions,
|
|
168
|
+
): PanReleaseResult => {
|
|
169
|
+
"worklet";
|
|
170
|
+
const { participation, policy, lockedSnapPoint } = runtime;
|
|
171
|
+
const activeAxis = resolveActivePanSnapAxis(runtime);
|
|
172
|
+
|
|
173
|
+
if (!activeAxis) {
|
|
174
|
+
return buildInactivePanSnapRelease(runtime);
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
const { axisVelocity, axisDimension, snapVelocity } = getPanSnapAxisMotion(
|
|
178
|
+
event,
|
|
179
|
+
dimensions,
|
|
180
|
+
activeAxis,
|
|
181
|
+
);
|
|
182
|
+
const { resolvedSnapPoints, resolvedMinSnapPoint, resolvedMaxSnapPoint } =
|
|
183
|
+
resolveRuntimeGestureSnapPoints(runtime);
|
|
184
|
+
const currentProgress = getPanSnapReleaseProgress({
|
|
185
|
+
runtime,
|
|
186
|
+
event,
|
|
187
|
+
dimensions,
|
|
188
|
+
activeAxis,
|
|
189
|
+
minSnapPoint: resolvedMinSnapPoint,
|
|
190
|
+
maxSnapPoint: resolvedMaxSnapPoint,
|
|
191
|
+
});
|
|
192
|
+
const result = determineSnapTarget({
|
|
193
|
+
currentProgress,
|
|
194
|
+
snapPoints: policy.gestureSnapLocked
|
|
195
|
+
? [lockedSnapPoint.get()]
|
|
196
|
+
: resolvedSnapPoints,
|
|
197
|
+
velocity: snapVelocity,
|
|
198
|
+
dimension: axisDimension,
|
|
199
|
+
velocityFactor: policy.gestureSnapVelocityImpact,
|
|
200
|
+
canDismiss: participation.canDismiss,
|
|
201
|
+
});
|
|
202
|
+
|
|
203
|
+
const shouldDismiss = participation.canDismiss && result.shouldDismiss;
|
|
204
|
+
const target = shouldDismiss ? 0 : result.targetProgress;
|
|
205
|
+
|
|
206
|
+
return {
|
|
207
|
+
target,
|
|
208
|
+
shouldDismiss,
|
|
209
|
+
initialVelocity: getProgressVelocityTowardTarget({
|
|
210
|
+
handoffVelocity: getPanReleaseHandoffVelocity(
|
|
211
|
+
axisVelocity,
|
|
212
|
+
axisDimension,
|
|
213
|
+
policy.gestureReleaseVelocityScale,
|
|
214
|
+
),
|
|
215
|
+
target,
|
|
216
|
+
currentProgress,
|
|
217
|
+
}),
|
|
218
|
+
commitProgress: currentProgress,
|
|
219
|
+
resetNormalizedValuesImmediately:
|
|
220
|
+
policy.gestureProgressMode === "progress-driven",
|
|
221
|
+
transitionSpec: resolveGestureSnapTransitionSpec({
|
|
222
|
+
transitionSpec: policy.transitionSpec,
|
|
223
|
+
shouldDismiss,
|
|
224
|
+
target,
|
|
225
|
+
currentProgress,
|
|
226
|
+
}),
|
|
227
|
+
resetSpec: shouldDismiss
|
|
228
|
+
? policy.transitionSpec?.close
|
|
229
|
+
: policy.transitionSpec?.open,
|
|
230
|
+
};
|
|
231
|
+
};
|
|
232
|
+
|
|
233
|
+
export const buildPanReleasePlan = (
|
|
234
|
+
release: PanReleaseResult,
|
|
235
|
+
runtime: PanGestureRuntime,
|
|
236
|
+
dimensions: GestureDimensions,
|
|
237
|
+
rawEvent: PanGestureEvent,
|
|
238
|
+
): PanReleasePlan => {
|
|
239
|
+
"worklet";
|
|
240
|
+
const { policy } = runtime;
|
|
241
|
+
const progressDriven = policy.gestureProgressMode === "progress-driven";
|
|
242
|
+
const releaseVelocityScale = Math.max(0, policy.gestureReleaseVelocityScale);
|
|
243
|
+
const resetUsesReleaseVelocity = !release.shouldDismiss || !progressDriven;
|
|
244
|
+
const resetVelocityFactor = resetUsesReleaseVelocity ? 1 : 0;
|
|
245
|
+
const resetVelocityScale = releaseVelocityScale * resetVelocityFactor;
|
|
246
|
+
const resetVelocityX =
|
|
247
|
+
resetVelocityScale === 0 ? 0 : rawEvent.velocityX * resetVelocityScale;
|
|
248
|
+
const resetVelocityY =
|
|
249
|
+
resetVelocityScale === 0 ? 0 : rawEvent.velocityY * resetVelocityScale;
|
|
250
|
+
const releaseVelocityNormX =
|
|
251
|
+
rawEvent.velocityX / Math.max(1, dimensions.width);
|
|
252
|
+
const releaseVelocityNormY =
|
|
253
|
+
rawEvent.velocityY / Math.max(1, dimensions.height);
|
|
254
|
+
const releaseVelocity = release.shouldDismiss
|
|
255
|
+
? resolvePanReleaseVelocity(
|
|
256
|
+
runtime,
|
|
257
|
+
releaseVelocityNormX,
|
|
258
|
+
releaseVelocityNormY,
|
|
259
|
+
)
|
|
260
|
+
: 0;
|
|
261
|
+
|
|
262
|
+
return {
|
|
263
|
+
target: release.target,
|
|
264
|
+
shouldDismiss: release.shouldDismiss,
|
|
265
|
+
progressVelocity: progressDriven ? release.initialVelocity : 0,
|
|
266
|
+
resetVelocityX,
|
|
267
|
+
resetVelocityY,
|
|
268
|
+
resetVelocityNormX: resetVelocityX / Math.max(1, dimensions.width),
|
|
269
|
+
resetVelocityNormY: resetVelocityY / Math.max(1, dimensions.height),
|
|
270
|
+
releaseVelocity,
|
|
271
|
+
resetNormalizedValues: !release.shouldDismiss || progressDriven,
|
|
272
|
+
resetNormalizedValuesImmediately:
|
|
273
|
+
release.resetNormalizedValuesImmediately === true,
|
|
274
|
+
preserveRawValues: release.shouldDismiss,
|
|
275
|
+
commitProgress: release.commitProgress,
|
|
276
|
+
transitionSpec: release.transitionSpec,
|
|
277
|
+
resetSpec: release.resetSpec,
|
|
278
|
+
};
|
|
279
|
+
};
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { EPSILON, FALSE, TRUE } from "../../../../constants";
|
|
2
|
+
import type { GestureStoreMap } from "../../../../stores/gesture.store";
|
|
3
|
+
import type { AnimationConfig } from "../../../../types/animation.types";
|
|
4
|
+
import {
|
|
5
|
+
animateResetValue,
|
|
6
|
+
clearGestureSettlingIfResting,
|
|
7
|
+
getGestureResetSpec,
|
|
8
|
+
} from "../shared/reset";
|
|
9
|
+
|
|
10
|
+
interface ResetPanGestureValuesProps {
|
|
11
|
+
spec?: AnimationConfig;
|
|
12
|
+
gestures: GestureStoreMap;
|
|
13
|
+
shouldDismiss: boolean;
|
|
14
|
+
velocityX?: number;
|
|
15
|
+
velocityY?: number;
|
|
16
|
+
velocityNormX?: number;
|
|
17
|
+
velocityNormY?: number;
|
|
18
|
+
releaseVelocity?: number;
|
|
19
|
+
resetNormalizedValues?: boolean;
|
|
20
|
+
resetNormalizedValuesImmediately?: boolean;
|
|
21
|
+
preserveRawValues?: boolean;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
const clearPanSettlingIfResting = (gestures: GestureStoreMap) => {
|
|
25
|
+
"worklet";
|
|
26
|
+
|
|
27
|
+
clearGestureSettlingIfResting(
|
|
28
|
+
gestures,
|
|
29
|
+
!gestures.dragging.get() &&
|
|
30
|
+
!gestures.dismissing.get() &&
|
|
31
|
+
Math.abs(gestures.x.get()) <= EPSILON &&
|
|
32
|
+
Math.abs(gestures.y.get()) <= EPSILON &&
|
|
33
|
+
Math.abs(gestures.normX.get()) <= EPSILON &&
|
|
34
|
+
Math.abs(gestures.normY.get()) <= EPSILON,
|
|
35
|
+
);
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
export const resetPanGestureValues = ({
|
|
39
|
+
spec,
|
|
40
|
+
gestures,
|
|
41
|
+
shouldDismiss,
|
|
42
|
+
velocityX,
|
|
43
|
+
velocityY,
|
|
44
|
+
velocityNormX,
|
|
45
|
+
velocityNormY,
|
|
46
|
+
releaseVelocity,
|
|
47
|
+
resetNormalizedValues = true,
|
|
48
|
+
resetNormalizedValuesImmediately = false,
|
|
49
|
+
preserveRawValues = shouldDismiss,
|
|
50
|
+
}: ResetPanGestureValuesProps) => {
|
|
51
|
+
"worklet";
|
|
52
|
+
|
|
53
|
+
if (!preserveRawValues) {
|
|
54
|
+
gestures.raw.x.set(0);
|
|
55
|
+
gestures.raw.y.set(0);
|
|
56
|
+
gestures.raw.normX.set(0);
|
|
57
|
+
gestures.raw.normY.set(0);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
gestures.dragging.set(FALSE);
|
|
61
|
+
gestures.dismissing.set(shouldDismiss ? TRUE : FALSE);
|
|
62
|
+
gestures.settling.set(shouldDismiss ? FALSE : TRUE);
|
|
63
|
+
gestures.velocity.set(shouldDismiss ? (releaseVelocity ?? 0) : 0);
|
|
64
|
+
|
|
65
|
+
animateResetValue(gestures.x, 0, getGestureResetSpec(spec, velocityX), () =>
|
|
66
|
+
clearPanSettlingIfResting(gestures),
|
|
67
|
+
);
|
|
68
|
+
animateResetValue(gestures.y, 0, getGestureResetSpec(spec, velocityY), () =>
|
|
69
|
+
clearPanSettlingIfResting(gestures),
|
|
70
|
+
);
|
|
71
|
+
|
|
72
|
+
if (!resetNormalizedValues) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
if (resetNormalizedValuesImmediately) {
|
|
77
|
+
gestures.normX.set(0);
|
|
78
|
+
gestures.normY.set(0);
|
|
79
|
+
clearPanSettlingIfResting(gestures);
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
animateResetValue(
|
|
84
|
+
gestures.normX,
|
|
85
|
+
0,
|
|
86
|
+
getGestureResetSpec(spec, velocityNormX),
|
|
87
|
+
() => clearPanSettlingIfResting(gestures),
|
|
88
|
+
);
|
|
89
|
+
animateResetValue(
|
|
90
|
+
gestures.normY,
|
|
91
|
+
0,
|
|
92
|
+
getGestureResetSpec(spec, velocityNormY),
|
|
93
|
+
() => clearPanSettlingIfResting(gestures),
|
|
94
|
+
);
|
|
95
|
+
};
|
|
@@ -1,30 +1,25 @@
|
|
|
1
|
-
import { useCallback } from "react";
|
|
1
|
+
import { useCallback, useMemo } from "react";
|
|
2
2
|
import type { SharedValue } from "react-native-reanimated";
|
|
3
3
|
import { useNavigationHelpers } from "../../../../hooks/navigation/use-navigation-helpers";
|
|
4
4
|
import type { ScreenOptionsContextValue } from "../../options";
|
|
5
|
-
import {
|
|
6
|
-
finalizePanRelease,
|
|
7
|
-
startPanBase,
|
|
8
|
-
trackPanGesture,
|
|
9
|
-
} from "../helpers/pan-phases";
|
|
10
|
-
import { resolvePanRuntime } from "../helpers/runtime-options";
|
|
11
5
|
import { usePanGestureSensitivity } from "../hooks/use-gesture-sensitivity";
|
|
6
|
+
import { resolvePanRuntime } from "../shared/runtime";
|
|
12
7
|
import type {
|
|
13
8
|
GestureDimensions,
|
|
14
9
|
PanBehavior,
|
|
15
|
-
PanBehaviorStrategy,
|
|
16
10
|
PanGestureEvent,
|
|
17
11
|
PanGestureRuntime,
|
|
18
12
|
} from "../types";
|
|
19
|
-
import {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
13
|
+
import {
|
|
14
|
+
finalizePanRelease,
|
|
15
|
+
startPanBase,
|
|
16
|
+
trackPanGesture,
|
|
17
|
+
} from "./pan-lifecycle";
|
|
18
|
+
import {
|
|
19
|
+
primeSnapPanRelease,
|
|
20
|
+
resolvePanRelease,
|
|
21
|
+
resolveSnapPanRelease,
|
|
22
|
+
} from "./pan-release";
|
|
28
23
|
|
|
29
24
|
export const usePanBehavior = (
|
|
30
25
|
runtime: SharedValue<PanGestureRuntime>,
|
|
@@ -38,8 +33,9 @@ export const usePanBehavior = (
|
|
|
38
33
|
const onStart = useCallback(() => {
|
|
39
34
|
"worklet";
|
|
40
35
|
const latestRuntime = resolvePanRuntime(runtime.get(), screenOptions.get());
|
|
41
|
-
|
|
42
|
-
|
|
36
|
+
if (latestRuntime.participation.effectiveSnapPoints.hasSnapPoints) {
|
|
37
|
+
primeSnapPanRelease(latestRuntime);
|
|
38
|
+
}
|
|
43
39
|
startPanBase(latestRuntime);
|
|
44
40
|
resetSensitivity();
|
|
45
41
|
}, [runtime, screenOptions, resetSensitivity]);
|
|
@@ -51,22 +47,13 @@ export const usePanBehavior = (
|
|
|
51
47
|
runtime.get(),
|
|
52
48
|
screenOptions.get(),
|
|
53
49
|
);
|
|
54
|
-
const strategy = getPanStrategy(latestRuntime);
|
|
55
50
|
const event = withSensitivity(rawEvent);
|
|
56
|
-
|
|
51
|
+
trackPanGesture(
|
|
57
52
|
event,
|
|
58
53
|
rawEvent,
|
|
59
54
|
latestRuntime.stores.gestures,
|
|
60
55
|
dimensions,
|
|
61
56
|
);
|
|
62
|
-
|
|
63
|
-
if (!latestRuntime.policy.gestureDrivesProgress) {
|
|
64
|
-
return;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
latestRuntime.stores.animations.progress.set(
|
|
68
|
-
strategy.resolveProgress(latestRuntime, dimensions, track),
|
|
69
|
-
);
|
|
70
57
|
},
|
|
71
58
|
[runtime, screenOptions, dimensions, withSensitivity],
|
|
72
59
|
);
|
|
@@ -78,9 +65,11 @@ export const usePanBehavior = (
|
|
|
78
65
|
runtime.get(),
|
|
79
66
|
screenOptions.get(),
|
|
80
67
|
);
|
|
81
|
-
const strategy = getPanStrategy(latestRuntime);
|
|
82
68
|
const event = withSensitivity(rawEvent);
|
|
83
|
-
const release =
|
|
69
|
+
const release = latestRuntime.participation.effectiveSnapPoints
|
|
70
|
+
.hasSnapPoints
|
|
71
|
+
? resolveSnapPanRelease(event, latestRuntime, dimensions)
|
|
72
|
+
: resolvePanRelease(event, latestRuntime, dimensions);
|
|
84
73
|
finalizePanRelease(
|
|
85
74
|
release,
|
|
86
75
|
latestRuntime,
|
|
@@ -92,9 +81,12 @@ export const usePanBehavior = (
|
|
|
92
81
|
[runtime, screenOptions, dimensions, dismissScreen, withSensitivity],
|
|
93
82
|
);
|
|
94
83
|
|
|
95
|
-
return
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
84
|
+
return useMemo(
|
|
85
|
+
() => ({
|
|
86
|
+
onStart,
|
|
87
|
+
onUpdate,
|
|
88
|
+
onEnd,
|
|
89
|
+
}),
|
|
90
|
+
[onStart, onUpdate, onEnd],
|
|
91
|
+
);
|
|
100
92
|
};
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { useMemo } from "react";
|
|
2
2
|
import { Gesture } from "react-native-gesture-handler";
|
|
3
3
|
import { useScreenOptionsContext } from "../../options";
|
|
4
|
-
import { usePinchActivation } from "../activation/use-pinch-activation";
|
|
5
|
-
import { usePinchBehavior } from "../behaviors/use-pinch-behavior";
|
|
6
4
|
import { useGestureBuilderState } from "../hooks/use-gesture-builder-state";
|
|
7
5
|
import { useStableRuntimeConfig } from "../hooks/use-stable-runtime-config";
|
|
8
6
|
import type { PinchGesture, ScreenGestureConfig } from "../types";
|
|
7
|
+
import { usePinchActivation } from "./pinch-activation";
|
|
8
|
+
import { usePinchBehavior } from "./use-pinch-behavior";
|
|
9
9
|
|
|
10
10
|
interface BuildPinchGestureHookProps {
|
|
11
11
|
gestureConfig: ScreenGestureConfig;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { useCallback } from "react";
|
|
1
|
+
import { useCallback, useMemo } from "react";
|
|
2
2
|
import type {
|
|
3
3
|
GestureStateManager,
|
|
4
4
|
GestureTouchEvent,
|
|
5
5
|
} from "react-native-gesture-handler";
|
|
6
6
|
import type { SharedValue } from "react-native-reanimated";
|
|
7
7
|
import type { ScreenOptionsContextValue } from "../../options";
|
|
8
|
-
import { resolvePinchRuntime } from "../
|
|
8
|
+
import { resolvePinchRuntime } from "../shared/runtime";
|
|
9
9
|
import type { PinchGestureRuntime } from "../types";
|
|
10
10
|
|
|
11
11
|
interface UsePinchActivationProps {
|
|
@@ -68,5 +68,8 @@ export const usePinchActivation = ({
|
|
|
68
68
|
[runtime, screenOptions],
|
|
69
69
|
);
|
|
70
70
|
|
|
71
|
-
return
|
|
71
|
+
return useMemo(
|
|
72
|
+
() => ({ onTouchesDown, onTouchesMove }),
|
|
73
|
+
[onTouchesDown, onTouchesMove],
|
|
74
|
+
);
|
|
72
75
|
};
|
package/src/shared/providers/screen/gestures/{helpers/pinch-phases.ts → pinch/pinch-lifecycle.ts}
RENAMED
|
@@ -2,14 +2,14 @@ import { clamp } from "react-native-reanimated";
|
|
|
2
2
|
import { EPSILON, FALSE, TRUE } from "../../../../constants";
|
|
3
3
|
import { animateToProgress } from "../../../../utils/animation/animate-to-progress";
|
|
4
4
|
import { emit } from "../../../../utils/animation/emit";
|
|
5
|
+
import { normalizePinchScale } from "../shared/physics";
|
|
5
6
|
import type {
|
|
6
7
|
PinchGestureEvent,
|
|
7
8
|
PinchGestureRuntime,
|
|
8
9
|
PinchReleaseResult,
|
|
9
10
|
PinchTrackState,
|
|
10
11
|
} from "../types";
|
|
11
|
-
import {
|
|
12
|
-
import { resetPinchGestureValues } from "./gesture-reset";
|
|
12
|
+
import { resetPinchGestureValues } from "./pinch-reset";
|
|
13
13
|
|
|
14
14
|
export const startPinchBase = (
|
|
15
15
|
runtime: PinchGestureRuntime,
|
|
@@ -33,6 +33,7 @@ export const startPinchBase = (
|
|
|
33
33
|
gestures.settling.set(0);
|
|
34
34
|
gestures.active.set(null);
|
|
35
35
|
gestures.direction.set(null);
|
|
36
|
+
gestures.velocity.set(0);
|
|
36
37
|
gestures.scale.set(1);
|
|
37
38
|
gestures.normScale.set(0);
|
|
38
39
|
gestures.raw.scale.set(1);
|
|
@@ -79,10 +80,16 @@ export const finalizePinchRelease = (
|
|
|
79
80
|
stores: { gestures, animations, system },
|
|
80
81
|
} = runtime;
|
|
81
82
|
|
|
83
|
+
if (typeof release.commitProgress === "number") {
|
|
84
|
+
animations.progress.set(release.commitProgress);
|
|
85
|
+
system.targetProgress.set(release.commitProgress);
|
|
86
|
+
}
|
|
87
|
+
|
|
82
88
|
resetPinchGestureValues({
|
|
83
89
|
spec: release.resetSpec,
|
|
84
90
|
gestures,
|
|
85
91
|
shouldDismiss: release.shouldDismiss,
|
|
92
|
+
resetValuesImmediately: release.resetValuesImmediately,
|
|
86
93
|
});
|
|
87
94
|
|
|
88
95
|
animateToProgress({
|