react-native-screen-transitions 3.5.2 → 3.6.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +23 -1081
- package/lib/commonjs/shared/animation/snap-to.js +4 -6
- package/lib/commonjs/shared/animation/snap-to.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/components/boundary-target.js +4 -2
- package/lib/commonjs/shared/components/create-boundary-component/components/boundary-target.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/create-boundary-component.js +22 -29
- package/lib/commonjs/shared/components/create-boundary-component/create-boundary-component.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.js +43 -0
- package/lib/commonjs/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.js.map +1 -0
- package/lib/commonjs/shared/components/create-boundary-component/helpers/resolve-pending-source-key.js +3 -3
- package/lib/commonjs/shared/components/create-boundary-component/helpers/resolve-pending-source-key.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.js +28 -0
- package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.js.map +1 -0
- package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js +14 -147
- package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/measurement.js +1 -8
- package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/measurement.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/scroll-measurement.js +45 -0
- package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/scroll-measurement.js.map +1 -0
- 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-capture-destination-boundary.js → use-initial-destination-measurement.js} +26 -36
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js.map +1 -0
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-initial-source-measurement.js +31 -0
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-initial-source-measurement.js.map +1 -0
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-measurer.js +48 -38
- 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 +29 -31
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-refresh-boundary.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/providers/boundary-owner.provider.js +15 -11
- package/lib/commonjs/shared/components/create-boundary-component/providers/boundary-owner.provider.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/utils/build-boundary-match-key.js.map +1 -1
- package/lib/commonjs/shared/components/create-transition-aware-component.js +12 -7
- package/lib/commonjs/shared/components/create-transition-aware-component.js.map +1 -1
- package/lib/commonjs/shared/components/native-screen.js +2 -2
- package/lib/commonjs/shared/components/native-screen.js.map +1 -1
- package/lib/commonjs/shared/components/overlay/variations/overlay-host.js +1 -1
- package/lib/commonjs/shared/components/overlay/variations/overlay-host.js.map +1 -1
- package/lib/commonjs/shared/{utils/gesture → components/screen-container/helpers}/find-collapse-target.js +18 -13
- package/lib/commonjs/shared/components/screen-container/helpers/find-collapse-target.js.map +1 -0
- package/lib/commonjs/shared/components/screen-container/hooks/use-backdrop-pointer-events.js +15 -2
- package/lib/commonjs/shared/components/screen-container/hooks/use-backdrop-pointer-events.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/hooks/use-content-layout.js +7 -7
- 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 +12 -5
- package/lib/commonjs/shared/components/screen-container/layers/backdrop.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/content.js +2 -2
- package/lib/commonjs/shared/components/screen-container/layers/content.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/maybe-masked-navigation-container.js +18 -11
- 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 +4 -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 +2 -8
- 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 +8 -8
- package/lib/commonjs/shared/configs/presets.js.map +1 -1
- package/lib/commonjs/shared/configs/specs.js +2 -2
- package/lib/commonjs/shared/configs/specs.js.map +1 -1
- package/lib/commonjs/shared/constants.js +40 -9
- package/lib/commonjs/shared/constants.js.map +1 -1
- package/lib/commonjs/shared/hooks/reanimated/use-shared-value-ref.js +3 -3
- package/lib/commonjs/shared/hooks/reanimated/use-shared-value-ref.js.map +1 -1
- package/lib/commonjs/shared/hooks/reanimated/use-shared-value-state.js +1 -1
- package/lib/commonjs/shared/hooks/reanimated/use-shared-value-state.js.map +1 -1
- package/lib/commonjs/shared/hooks/use-stable-callback-value.js +3 -3
- package/lib/commonjs/shared/hooks/use-stable-callback-value.js.map +1 -1
- package/lib/commonjs/shared/index.js +1 -1
- package/lib/commonjs/shared/index.js.map +1 -1
- package/lib/commonjs/shared/providers/register-bounds.provider.js +12 -20
- package/lib/commonjs/shared/providers/register-bounds.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/animation.provider.js +86 -8
- 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 +107 -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 +38 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/build-screen-transition-options.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/derivations.js +7 -27
- package/lib/commonjs/shared/providers/screen/animation/helpers/derivations.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 +95 -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 +60 -87
- 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 +14 -9
- 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 +57 -18
- 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 +64 -0
- package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-gesture-builder-state.js +32 -0
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-gesture-builder-state.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-gesture-sensitivity.js +85 -0
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-gesture-sensitivity.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js +27 -0
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture.js +32 -0
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js +45 -0
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/index.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/ownership/compute-claimed-directions.js +74 -0
- package/lib/commonjs/shared/providers/screen/gestures/ownership/compute-claimed-directions.js.map +1 -0
- package/lib/commonjs/shared/{utils/gesture → providers/screen/gestures/ownership}/resolve-ownership.js +20 -7
- package/lib/commonjs/shared/providers/screen/gestures/ownership/resolve-ownership.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +108 -0
- package/lib/commonjs/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/pan/build-pan-gesture.js +50 -0
- 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/pan/pan-activation-rules.js +314 -0
- 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/pan/pan-lifecycle.js +123 -0
- 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 +193 -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 +52 -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/pinch/build-pinch-gesture.js +43 -0
- package/lib/commonjs/shared/providers/screen/gestures/pinch/build-pinch-gesture.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-activation.js +55 -0
- package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-activation.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-lifecycle.js +94 -0
- 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 +13 -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 +44 -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/scroll-coordination/use-scroll-gesture-coordination.js +134 -0
- package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.js +56 -0
- 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/shared/ancestors.js +23 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/ancestors.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/directions.js +146 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/directions.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/physics.js +212 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/physics.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/shared/policy.js +231 -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/{gestures → screen/gestures}/types.js +2 -2
- package/lib/commonjs/shared/providers/screen/gestures/types.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/options/helpers.js +176 -0
- package/lib/commonjs/shared/providers/screen/options/helpers.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/options/index.js +26 -0
- package/lib/commonjs/shared/providers/screen/options/index.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/options/options.provider.js +37 -0
- package/lib/commonjs/shared/providers/screen/options/options.provider.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/options/types.js +6 -0
- package/lib/commonjs/shared/providers/screen/options/types.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/screen-composer.js +9 -6
- package/lib/commonjs/shared/providers/screen/screen-composer.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/components/maybe-floating-container.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/constants.js +55 -5
- package/lib/commonjs/shared/providers/screen/styles/constants.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/helpers/normalize-slots.js +15 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/normalize-slots.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 +294 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.js +116 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/reset-values.js +28 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/reset-values.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.js +125 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/types.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/strip-interpolator-options.js +22 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/strip-interpolator-options.js.map +1 -0
- 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 +69 -10
- 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 -8
- 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 +19 -2
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.js.map +1 -1
- package/lib/commonjs/shared/providers/stack/helpers/use-closing-route-map.js +1 -1
- package/lib/commonjs/shared/providers/stack/helpers/use-closing-route-map.js.map +1 -1
- package/lib/commonjs/shared/providers/stack/helpers/use-stack-derived.js +2 -2
- package/lib/commonjs/shared/providers/stack/helpers/use-stack-derived.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/entries.helpers.js +49 -0
- package/lib/commonjs/shared/stores/bounds/helpers/entries.helpers.js.map +1 -0
- package/lib/commonjs/shared/stores/bounds/helpers/find-latest.js +25 -0
- package/lib/commonjs/shared/stores/bounds/helpers/find-latest.js.map +1 -0
- package/lib/commonjs/shared/stores/bounds/helpers/groups.helpers.js +30 -0
- package/lib/commonjs/shared/stores/bounds/helpers/groups.helpers.js.map +1 -0
- package/lib/commonjs/shared/stores/bounds/helpers/keys.js +0 -17
- package/lib/commonjs/shared/stores/bounds/helpers/keys.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/helpers/link.helpers.js +79 -0
- package/lib/commonjs/shared/stores/bounds/helpers/link.helpers.js.map +1 -0
- package/lib/commonjs/shared/stores/bounds/helpers/matching.js +1 -10
- package/lib/commonjs/shared/stores/bounds/helpers/matching.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/helpers/tag-state.helpers.js +30 -0
- package/lib/commonjs/shared/stores/bounds/helpers/tag-state.helpers.js.map +1 -0
- package/lib/commonjs/shared/stores/bounds/index.js +16 -101
- package/lib/commonjs/shared/stores/bounds/index.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/clear.js +0 -21
- package/lib/commonjs/shared/stores/bounds/internals/clear.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/entries.js +44 -0
- package/lib/commonjs/shared/stores/bounds/internals/entries.js.map +1 -0
- package/lib/commonjs/shared/stores/bounds/internals/groups.js +78 -3
- package/lib/commonjs/shared/stores/bounds/internals/groups.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/links.js +120 -0
- package/lib/commonjs/shared/stores/bounds/internals/links.js.map +1 -0
- package/lib/commonjs/shared/stores/bounds/internals/resolver.js +18 -43
- package/lib/commonjs/shared/stores/bounds/internals/resolver.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/state.js +1 -10
- package/lib/commonjs/shared/stores/bounds/internals/state.js.map +1 -1
- package/lib/commonjs/shared/stores/gesture.store.js +31 -1
- package/lib/commonjs/shared/stores/gesture.store.js.map +1 -1
- package/lib/commonjs/shared/stores/scroll.store.js +22 -0
- package/lib/commonjs/shared/stores/scroll.store.js.map +1 -0
- 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 +6 -6
- package/lib/commonjs/shared/types/gesture.types.js.map +1 -1
- package/lib/commonjs/shared/types/ownership.types.js +2 -2
- package/lib/commonjs/shared/utils/animation/animate-to-progress.js +52 -36
- package/lib/commonjs/shared/utils/animation/animate-to-progress.js.map +1 -1
- package/lib/commonjs/shared/utils/animation/emit.js +22 -0
- package/lib/commonjs/shared/utils/animation/emit.js.map +1 -0
- package/lib/commonjs/shared/utils/animation/resolve-snap-transition-spec.js +22 -0
- package/lib/commonjs/shared/utils/animation/resolve-snap-transition-spec.js.map +1 -0
- package/lib/commonjs/shared/utils/bounds/helpers/create-bounds-accessor-core.js +131 -0
- package/lib/commonjs/shared/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -0
- package/lib/commonjs/shared/utils/bounds/helpers/create-interpolators.js +5 -5
- package/lib/commonjs/shared/utils/bounds/helpers/create-interpolators.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/create-link-accessor.js +48 -4
- 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 +3 -4
- package/lib/commonjs/shared/utils/bounds/helpers/prepare-bound-styles.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/styles/composers.js +4 -2
- package/lib/commonjs/shared/utils/bounds/helpers/styles/composers.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/styles/styles.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/index.js +34 -59
- package/lib/commonjs/shared/utils/bounds/index.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/navigation/helpers.js +19 -0
- package/lib/commonjs/shared/utils/bounds/navigation/helpers.js.map +1 -0
- package/lib/commonjs/shared/utils/bounds/{zoom → navigation}/math.js +2 -55
- package/lib/commonjs/shared/utils/bounds/navigation/math.js.map +1 -0
- package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js +375 -0
- package/lib/commonjs/shared/utils/bounds/navigation/reveal/build.js.map +1 -0
- package/lib/commonjs/shared/utils/bounds/navigation/reveal/config.js +20 -0
- package/lib/commonjs/shared/utils/bounds/navigation/reveal/config.js.map +1 -0
- package/lib/commonjs/shared/utils/bounds/navigation/reveal/math.js +25 -0
- package/lib/commonjs/shared/utils/bounds/navigation/reveal/math.js.map +1 -0
- package/lib/commonjs/shared/utils/bounds/navigation/reveal/types.js +4 -0
- package/lib/commonjs/shared/utils/bounds/navigation/reveal/types.js.map +1 -0
- package/lib/commonjs/shared/utils/bounds/{zoom → navigation/zoom}/build.js +111 -147
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js.map +1 -0
- package/lib/commonjs/shared/utils/bounds/{zoom → navigation/zoom}/config.js +2 -14
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/config.js.map +1 -0
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/helpers.js +71 -0
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/helpers.js.map +1 -0
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/math.js +25 -0
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/math.js.map +1 -0
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/types.js +4 -0
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/types.js.map +1 -0
- 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/resolve-chain-target.js +29 -0
- package/lib/commonjs/shared/utils/resolve-chain-target.js.map +1 -0
- package/lib/commonjs/shared/utils/resolve-screen-transition-options.js +3 -10
- package/lib/commonjs/shared/utils/resolve-screen-transition-options.js.map +1 -1
- package/lib/module/shared/animation/snap-to.js +4 -6
- package/lib/module/shared/animation/snap-to.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/components/boundary-target.js +5 -3
- package/lib/module/shared/components/create-boundary-component/components/boundary-target.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/create-boundary-component.js +23 -30
- package/lib/module/shared/components/create-boundary-component/create-boundary-component.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.js +38 -0
- package/lib/module/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.js.map +1 -0
- package/lib/module/shared/components/create-boundary-component/helpers/resolve-pending-source-key.js +1 -1
- package/lib/module/shared/components/create-boundary-component/helpers/resolve-pending-source-key.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.js +23 -0
- package/lib/module/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.js.map +1 -0
- package/lib/module/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js +11 -138
- package/lib/module/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/hooks/helpers/measurement.js +0 -6
- package/lib/module/shared/components/create-boundary-component/hooks/helpers/measurement.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/hooks/helpers/scroll-measurement.js +39 -0
- package/lib/module/shared/components/create-boundary-component/hooks/helpers/scroll-measurement.js.map +1 -0
- package/lib/module/shared/components/create-boundary-component/hooks/use-boundary-presence.js +3 -13
- 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 +96 -0
- package/lib/module/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.js.map +1 -0
- package/lib/module/shared/components/create-boundary-component/hooks/use-initial-source-measurement.js +26 -0
- package/lib/module/shared/components/create-boundary-component/hooks/use-initial-source-measurement.js.map +1 -0
- package/lib/module/shared/components/create-boundary-component/hooks/use-measurer.js +50 -40
- 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 +29 -31
- package/lib/module/shared/components/create-boundary-component/hooks/use-refresh-boundary.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/providers/boundary-owner.provider.js +15 -11
- package/lib/module/shared/components/create-boundary-component/providers/boundary-owner.provider.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/utils/build-boundary-match-key.js.map +1 -1
- package/lib/module/shared/components/create-transition-aware-component.js +12 -7
- package/lib/module/shared/components/create-transition-aware-component.js.map +1 -1
- package/lib/module/shared/components/native-screen.js +2 -2
- package/lib/module/shared/components/native-screen.js.map +1 -1
- package/lib/module/shared/components/overlay/variations/overlay-host.js +1 -1
- package/lib/module/shared/components/overlay/variations/overlay-host.js.map +1 -1
- package/lib/module/shared/{utils/gesture → components/screen-container/helpers}/find-collapse-target.js +17 -12
- package/lib/module/shared/components/screen-container/helpers/find-collapse-target.js.map +1 -0
- package/lib/module/shared/components/screen-container/hooks/use-backdrop-pointer-events.js +15 -2
- package/lib/module/shared/components/screen-container/hooks/use-backdrop-pointer-events.js.map +1 -1
- package/lib/module/shared/components/screen-container/hooks/use-content-layout.js +7 -7
- 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 +12 -5
- package/lib/module/shared/components/screen-container/layers/backdrop.js.map +1 -1
- package/lib/module/shared/components/screen-container/layers/content.js +2 -2
- package/lib/module/shared/components/screen-container/layers/content.js.map +1 -1
- package/lib/module/shared/components/screen-container/layers/maybe-masked-navigation-container.js +18 -11
- 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 +5 -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 +2 -8
- 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 +8 -8
- package/lib/module/shared/configs/presets.js.map +1 -1
- package/lib/module/shared/configs/specs.js +2 -2
- package/lib/module/shared/configs/specs.js.map +1 -1
- package/lib/module/shared/constants.js +39 -8
- package/lib/module/shared/constants.js.map +1 -1
- package/lib/module/shared/hooks/reanimated/use-shared-value-ref.js +3 -3
- package/lib/module/shared/hooks/reanimated/use-shared-value-ref.js.map +1 -1
- package/lib/module/shared/hooks/reanimated/use-shared-value-state.js +1 -1
- package/lib/module/shared/hooks/reanimated/use-shared-value-state.js.map +1 -1
- package/lib/module/shared/hooks/use-stable-callback-value.js +3 -3
- package/lib/module/shared/hooks/use-stable-callback-value.js.map +1 -1
- package/lib/module/shared/index.js +1 -1
- package/lib/module/shared/index.js.map +1 -1
- package/lib/module/shared/providers/register-bounds.provider.js +9 -17
- package/lib/module/shared/providers/register-bounds.provider.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/animation.provider.js +87 -9
- 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 +101 -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 +33 -0
- package/lib/module/shared/providers/screen/animation/helpers/build-screen-transition-options.js.map +1 -0
- package/lib/module/shared/providers/screen/animation/helpers/derivations.js +5 -25
- package/lib/module/shared/providers/screen/animation/helpers/derivations.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 +62 -89
- 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 +14 -9
- 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 +58 -18
- 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 +57 -0
- package/lib/module/shared/providers/screen/gestures/gestures.provider.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/hooks/use-gesture-builder-state.js +27 -0
- package/lib/module/shared/providers/screen/gestures/hooks/use-gesture-builder-state.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/hooks/use-gesture-sensitivity.js +78 -0
- package/lib/module/shared/providers/screen/gestures/hooks/use-gesture-sensitivity.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js +23 -0
- package/lib/module/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/hooks/use-screen-gesture.js +27 -0
- package/lib/module/shared/providers/screen/gestures/hooks/use-screen-gesture.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js +41 -0
- package/lib/module/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/index.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/ownership/compute-claimed-directions.js +70 -0
- package/lib/module/shared/providers/screen/gestures/ownership/compute-claimed-directions.js.map +1 -0
- package/lib/module/shared/{utils/gesture → providers/screen/gestures/ownership}/resolve-ownership.js +19 -7
- package/lib/module/shared/providers/screen/gestures/ownership/resolve-ownership.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +104 -0
- package/lib/module/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/pan/build-pan-gesture.js +45 -0
- 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/pan/pan-activation-rules.js +304 -0
- 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/pan/pan-lifecycle.js +116 -0
- 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 +185 -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 +47 -0
- package/lib/module/shared/providers/screen/gestures/pan/pan-reset.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/pan/use-pan-behavior.js +48 -0
- package/lib/module/shared/providers/screen/gestures/pan/use-pan-behavior.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/pinch/build-pinch-gesture.js +38 -0
- package/lib/module/shared/providers/screen/gestures/pinch/build-pinch-gesture.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/pinch/pinch-activation.js +50 -0
- package/lib/module/shared/providers/screen/gestures/pinch/pinch-activation.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/pinch/pinch-lifecycle.js +87 -0
- 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/pinch/use-pinch-behavior.js +48 -0
- 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 +4 -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 +39 -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/scroll-coordination/use-scroll-gesture-coordination.js +128 -0
- package/lib/module/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.js +52 -0
- 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/shared/ancestors.js +19 -0
- package/lib/module/shared/providers/screen/gestures/shared/ancestors.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/shared/directions.js +135 -0
- package/lib/module/shared/providers/screen/gestures/shared/directions.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/shared/physics.js +199 -0
- 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/{gestures → screen/gestures}/types.js +1 -1
- package/lib/module/shared/providers/screen/gestures/types.js.map +1 -0
- package/lib/module/shared/providers/screen/options/helpers.js +169 -0
- package/lib/module/shared/providers/screen/options/helpers.js.map +1 -0
- package/lib/module/shared/providers/screen/options/index.js +5 -0
- package/lib/module/shared/providers/screen/options/index.js.map +1 -0
- package/lib/module/shared/providers/screen/options/options.provider.js +30 -0
- package/lib/module/shared/providers/screen/options/options.provider.js.map +1 -0
- package/lib/module/shared/providers/screen/options/types.js +4 -0
- package/lib/module/shared/providers/screen/options/types.js.map +1 -0
- package/lib/module/shared/providers/screen/screen-composer.js +9 -6
- package/lib/module/shared/providers/screen/screen-composer.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/components/maybe-floating-container.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/constants.js +54 -4
- package/lib/module/shared/providers/screen/styles/constants.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/helpers/normalize-slots.js +15 -0
- package/lib/module/shared/providers/screen/styles/helpers/normalize-slots.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 +288 -0
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -0
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.js +111 -0
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.js.map +1 -0
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/reset-values.js +22 -0
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/reset-values.js.map +1 -0
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.js +119 -0
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.js.map +1 -0
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/types.js.map +1 -0
- package/lib/module/shared/providers/screen/styles/helpers/strip-interpolator-options.js +17 -0
- package/lib/module/shared/providers/screen/styles/helpers/strip-interpolator-options.js.map +1 -0
- 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 +70 -10
- 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 -9
- 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 +20 -3
- package/lib/module/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.js.map +1 -1
- package/lib/module/shared/providers/stack/helpers/use-closing-route-map.js +1 -1
- package/lib/module/shared/providers/stack/helpers/use-closing-route-map.js.map +1 -1
- package/lib/module/shared/providers/stack/helpers/use-stack-derived.js +2 -2
- package/lib/module/shared/providers/stack/helpers/use-stack-derived.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/entries.helpers.js +42 -0
- package/lib/module/shared/stores/bounds/helpers/entries.helpers.js.map +1 -0
- package/lib/module/shared/stores/bounds/helpers/find-latest.js +19 -0
- package/lib/module/shared/stores/bounds/helpers/find-latest.js.map +1 -0
- package/lib/module/shared/stores/bounds/helpers/groups.helpers.js +23 -0
- package/lib/module/shared/stores/bounds/helpers/groups.helpers.js.map +1 -0
- package/lib/module/shared/stores/bounds/helpers/keys.js +0 -16
- package/lib/module/shared/stores/bounds/helpers/keys.js.map +1 -1
- package/lib/module/shared/stores/bounds/helpers/link.helpers.js +69 -0
- package/lib/module/shared/stores/bounds/helpers/link.helpers.js.map +1 -0
- package/lib/module/shared/stores/bounds/helpers/matching.js +1 -9
- package/lib/module/shared/stores/bounds/helpers/matching.js.map +1 -1
- package/lib/module/shared/stores/bounds/helpers/tag-state.helpers.js +24 -0
- package/lib/module/shared/stores/bounds/helpers/tag-state.helpers.js.map +1 -0
- package/lib/module/shared/stores/bounds/index.js +10 -95
- package/lib/module/shared/stores/bounds/index.js.map +1 -1
- package/lib/module/shared/stores/bounds/internals/clear.js +2 -21
- package/lib/module/shared/stores/bounds/internals/clear.js.map +1 -1
- package/lib/module/shared/stores/bounds/internals/entries.js +39 -0
- package/lib/module/shared/stores/bounds/internals/entries.js.map +1 -0
- package/lib/module/shared/stores/bounds/internals/groups.js +76 -4
- package/lib/module/shared/stores/bounds/internals/groups.js.map +1 -1
- package/lib/module/shared/stores/bounds/internals/links.js +112 -0
- package/lib/module/shared/stores/bounds/internals/links.js.map +1 -0
- package/lib/module/shared/stores/bounds/internals/resolver.js +18 -43
- package/lib/module/shared/stores/bounds/internals/resolver.js.map +1 -1
- package/lib/module/shared/stores/bounds/internals/state.js +0 -8
- package/lib/module/shared/stores/bounds/internals/state.js.map +1 -1
- package/lib/module/shared/stores/gesture.store.js +31 -1
- package/lib/module/shared/stores/gesture.store.js.map +1 -1
- package/lib/module/shared/stores/scroll.store.js +18 -0
- package/lib/module/shared/stores/scroll.store.js.map +1 -0
- 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 +25 -3
- package/lib/module/shared/types/animation.types.js.map +1 -1
- package/lib/module/shared/types/gesture.types.js +6 -5
- package/lib/module/shared/types/gesture.types.js.map +1 -1
- package/lib/module/shared/types/ownership.types.js +2 -2
- package/lib/module/shared/utils/animation/animate-to-progress.js +52 -36
- package/lib/module/shared/utils/animation/animate-to-progress.js.map +1 -1
- package/lib/module/shared/utils/animation/emit.js +17 -0
- package/lib/module/shared/utils/animation/emit.js.map +1 -0
- package/lib/module/shared/utils/animation/resolve-snap-transition-spec.js +17 -0
- package/lib/module/shared/utils/animation/resolve-snap-transition-spec.js.map +1 -0
- package/lib/module/shared/utils/bounds/helpers/create-bounds-accessor-core.js +126 -0
- package/lib/module/shared/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -0
- package/lib/module/shared/utils/bounds/helpers/create-interpolators.js +5 -5
- package/lib/module/shared/utils/bounds/helpers/create-interpolators.js.map +1 -1
- package/lib/module/shared/utils/bounds/helpers/create-link-accessor.js +48 -4
- 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 +3 -3
- package/lib/module/shared/utils/bounds/helpers/prepare-bound-styles.js.map +1 -1
- package/lib/module/shared/utils/bounds/helpers/styles/composers.js +4 -2
- package/lib/module/shared/utils/bounds/helpers/styles/composers.js.map +1 -1
- package/lib/module/shared/utils/bounds/helpers/styles/styles.js.map +1 -1
- package/lib/module/shared/utils/bounds/index.js +34 -59
- package/lib/module/shared/utils/bounds/index.js.map +1 -1
- package/lib/module/shared/utils/bounds/navigation/helpers.js +13 -0
- package/lib/module/shared/utils/bounds/navigation/helpers.js.map +1 -0
- package/lib/module/shared/utils/bounds/{zoom → navigation}/math.js +9 -51
- package/lib/module/shared/utils/bounds/navigation/math.js.map +1 -0
- package/lib/module/shared/utils/bounds/navigation/reveal/build.js +371 -0
- package/lib/module/shared/utils/bounds/navigation/reveal/build.js.map +1 -0
- package/lib/module/shared/utils/bounds/navigation/reveal/config.js +16 -0
- package/lib/module/shared/utils/bounds/navigation/reveal/config.js.map +1 -0
- package/lib/module/shared/utils/bounds/navigation/reveal/math.js +20 -0
- package/lib/module/shared/utils/bounds/navigation/reveal/math.js.map +1 -0
- package/lib/module/shared/utils/bounds/{zoom → navigation/reveal}/types.js +1 -1
- package/lib/module/shared/utils/bounds/navigation/reveal/types.js.map +1 -0
- package/lib/module/shared/utils/bounds/{zoom → navigation/zoom}/build.js +93 -129
- package/lib/module/shared/utils/bounds/navigation/zoom/build.js.map +1 -0
- package/lib/module/shared/utils/bounds/{zoom → navigation/zoom}/config.js +1 -11
- package/lib/module/shared/utils/bounds/navigation/zoom/config.js.map +1 -0
- package/lib/module/shared/utils/bounds/navigation/zoom/helpers.js +63 -0
- package/lib/module/shared/utils/bounds/navigation/zoom/helpers.js.map +1 -0
- package/lib/module/shared/utils/bounds/navigation/zoom/math.js +20 -0
- package/lib/module/shared/utils/bounds/navigation/zoom/math.js.map +1 -0
- package/lib/module/shared/utils/bounds/navigation/zoom/types.js +4 -0
- package/lib/module/shared/utils/bounds/navigation/zoom/types.js.map +1 -0
- 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/resolve-chain-target.js +25 -0
- package/lib/module/shared/utils/resolve-chain-target.js.map +1 -0
- package/lib/module/shared/utils/resolve-screen-transition-options.js +1 -7
- package/lib/module/shared/utils/resolve-screen-transition-options.js.map +1 -1
- package/lib/typescript/shared/animation/snap-to.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/components/boundary-target.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/create-boundary-component.d.ts.map +1 -1
- package/lib/typescript/shared/{stores/bounds → components/create-boundary-component}/helpers/apply-measured-bounds-writes.d.ts +0 -4
- package/lib/typescript/shared/components/create-boundary-component/helpers/apply-measured-bounds-writes.d.ts.map +1 -0
- package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.d.ts +22 -0
- package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.d.ts.map +1 -0
- package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/measurement-rules.d.ts +6 -64
- package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/measurement-rules.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/measurement.d.ts +0 -2
- package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/measurement.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/scroll-measurement.d.ts +6 -0
- package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/scroll-measurement.d.ts.map +1 -0
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-boundary-presence.d.ts +0 -3
- 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 +11 -0
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-initial-destination-measurement.d.ts.map +1 -0
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-initial-source-measurement.d.ts +7 -0
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-initial-source-measurement.d.ts.map +1 -0
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-measurer.d.ts +2 -5
- 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.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/providers/boundary-owner.provider.d.ts +5 -4
- package/lib/typescript/shared/components/create-boundary-component/providers/boundary-owner.provider.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/types.d.ts +0 -6
- package/lib/typescript/shared/components/create-boundary-component/types.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/utils/build-boundary-match-key.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-transition-aware-component.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-container/helpers/find-collapse-target.d.ts.map +1 -0
- package/lib/typescript/shared/components/screen-container/hooks/use-backdrop-pointer-events.d.ts +2 -1
- package/lib/typescript/shared/components/screen-container/hooks/use-backdrop-pointer-events.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 +17 -6
- package/lib/typescript/shared/constants.d.ts.map +1 -1
- package/lib/typescript/shared/index.d.ts +4 -4
- package/lib/typescript/shared/index.d.ts.map +1 -1
- 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 +3 -0
- package/lib/typescript/shared/providers/screen/animation/helpers/build-screen-transition-options.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/animation/helpers/derivations.d.ts +3 -7
- package/lib/typescript/shared/providers/screen/animation/helpers/derivations.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 +6 -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/types.d.ts +35 -0
- 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 +5 -4
- 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 +7 -4
- 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 +17 -1
- 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 +11 -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 +7 -0
- package/lib/typescript/shared/providers/screen/gestures/gestures.provider.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-gesture-builder-state.d.ts +21 -0
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-gesture-builder-state.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-gesture-sensitivity.d.ts +17 -0
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-gesture-sensitivity.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-screen-gesture-config.d.ts +3 -0
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-screen-gesture-config.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-screen-gesture.d.ts +17 -0
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-screen-gesture.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-stable-runtime-config.d.ts +6 -0
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-stable-runtime-config.d.ts.map +1 -0
- package/lib/typescript/shared/providers/{gestures → screen/gestures}/index.d.ts +1 -1
- package/lib/typescript/shared/providers/screen/gestures/index.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/ownership/compute-claimed-directions.d.ts +19 -0
- package/lib/typescript/shared/providers/screen/gestures/ownership/compute-claimed-directions.d.ts.map +1 -0
- package/lib/typescript/shared/{utils/gesture → providers/screen/gestures/ownership}/resolve-ownership.d.ts +10 -5
- package/lib/typescript/shared/providers/screen/gestures/ownership/resolve-ownership.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.d.ts +14 -0
- package/lib/typescript/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/pan/build-pan-gesture.d.ts +10 -0
- 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/{gestures/helpers/gesture-activation.d.ts → screen/gestures/pan/pan-activation-rules.d.ts} +19 -20
- package/lib/typescript/shared/providers/screen/gestures/pan/pan-activation-rules.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/pan/pan-activation.d.ts +17 -0
- package/lib/typescript/shared/providers/screen/gestures/pan/pan-activation.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/pan/pan-lifecycle.d.ts +5 -0
- 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 +17 -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 +5 -0
- package/lib/typescript/shared/providers/screen/gestures/pan/use-pan-behavior.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/pinch/build-pinch-gesture.d.ts +7 -0
- package/lib/typescript/shared/providers/screen/gestures/pinch/build-pinch-gesture.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-activation.d.ts +14 -0
- package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-activation.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-lifecycle.d.ts +5 -0
- 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 +5 -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 +2 -0
- package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/index.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/update-scroll-gesture-state.d.ts +5 -0
- package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/update-scroll-gesture-state.d.ts.map +1 -0
- package/lib/typescript/shared/{hooks/gestures/use-scroll-registry.d.ts → providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.d.ts} +6 -17
- 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/scroll-coordination/walk-up-scroll-gesture-coordination.d.ts +11 -0
- 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/shared/ancestors.d.ts +11 -0
- package/lib/typescript/shared/providers/screen/gestures/shared/ancestors.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/shared/directions.d.ts +18 -0
- package/lib/typescript/shared/providers/screen/gestures/shared/directions.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/shared/physics.d.ts +64 -0
- 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 +49 -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/{gestures/helpers/gesture-targets.d.ts → screen/gestures/shared/targets.d.ts} +2 -2
- package/lib/typescript/shared/providers/screen/gestures/shared/targets.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/types.d.ts +155 -0
- package/lib/typescript/shared/providers/screen/gestures/types.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/options/helpers.d.ts +6 -0
- package/lib/typescript/shared/providers/screen/options/helpers.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/options/index.d.ts +4 -0
- package/lib/typescript/shared/providers/screen/options/index.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/options/options.provider.d.ts +3 -0
- package/lib/typescript/shared/providers/screen/options/options.provider.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/options/types.d.ts +30 -0
- package/lib/typescript/shared/providers/screen/options/types.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/screen-composer.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/components/maybe-floating-container.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/constants.d.ts +11 -21
- package/lib/typescript/shared/providers/screen/styles/constants.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/helpers/normalize-slots.d.ts +7 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/normalize-slots.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 +23 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.d.ts +14 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/reset-values.d.ts +3 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/reset-values.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.d.ts +14 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/types.d.ts +8 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/types.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/strip-interpolator-options.d.ts +2 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/strip-interpolator-options.d.ts.map +1 -0
- 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 +25 -0
- 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/entries.helpers.d.ts +5 -0
- package/lib/typescript/shared/stores/bounds/helpers/entries.helpers.d.ts.map +1 -0
- package/lib/typescript/shared/stores/bounds/helpers/find-latest.d.ts +3 -0
- package/lib/typescript/shared/stores/bounds/helpers/find-latest.d.ts.map +1 -0
- package/lib/typescript/shared/stores/bounds/helpers/groups.helpers.d.ts +10 -0
- package/lib/typescript/shared/stores/bounds/helpers/groups.helpers.d.ts.map +1 -0
- package/lib/typescript/shared/stores/bounds/helpers/keys.d.ts +0 -2
- package/lib/typescript/shared/stores/bounds/helpers/keys.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/helpers/link.helpers.d.ts +14 -0
- package/lib/typescript/shared/stores/bounds/helpers/link.helpers.d.ts.map +1 -0
- package/lib/typescript/shared/stores/bounds/helpers/matching.d.ts +1 -2
- package/lib/typescript/shared/stores/bounds/helpers/matching.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/helpers/tag-state.helpers.d.ts +5 -0
- package/lib/typescript/shared/stores/bounds/helpers/tag-state.helpers.d.ts.map +1 -0
- package/lib/typescript/shared/stores/bounds/index.d.ts +8 -32
- 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 +6 -0
- package/lib/typescript/shared/stores/bounds/internals/entries.d.ts.map +1 -0
- package/lib/typescript/shared/stores/bounds/internals/groups.d.ts +14 -2
- package/lib/typescript/shared/stores/bounds/internals/groups.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/internals/links.d.ts +12 -0
- package/lib/typescript/shared/stores/bounds/internals/links.d.ts.map +1 -0
- package/lib/typescript/shared/stores/bounds/internals/resolver.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/internals/state.d.ts +0 -1
- package/lib/typescript/shared/stores/bounds/internals/state.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/types.d.ts +10 -14
- package/lib/typescript/shared/stores/bounds/types.d.ts.map +1 -1
- package/lib/typescript/shared/stores/gesture.store.d.ts +20 -3
- package/lib/typescript/shared/stores/gesture.store.d.ts.map +1 -1
- package/lib/typescript/shared/stores/scroll.store.d.ts +12 -0
- package/lib/typescript/shared/stores/scroll.store.d.ts.map +1 -0
- 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 +75 -34
- package/lib/typescript/shared/types/animation.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/bounds.types.d.ts +21 -2
- package/lib/typescript/shared/types/bounds.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/gesture.types.d.ts +71 -5
- package/lib/typescript/shared/types/gesture.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/index.d.ts +3 -3
- package/lib/typescript/shared/types/index.d.ts.map +1 -1
- package/lib/typescript/shared/types/ownership.types.d.ts +2 -2
- package/lib/typescript/shared/types/screen.types.d.ts +48 -6
- package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
- package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts +2 -1
- package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts.map +1 -1
- package/lib/typescript/shared/utils/animation/emit.d.ts +7 -0
- package/lib/typescript/shared/utils/animation/emit.d.ts.map +1 -0
- package/lib/typescript/shared/utils/animation/resolve-snap-transition-spec.d.ts +4 -0
- package/lib/typescript/shared/utils/animation/resolve-snap-transition-spec.d.ts.map +1 -0
- package/lib/typescript/shared/utils/bounds/helpers/create-bound-tag.d.ts +2 -1
- package/lib/typescript/shared/utils/bounds/helpers/create-bound-tag.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/helpers/create-bounds-accessor-core.d.ts +19 -0
- package/lib/typescript/shared/utils/bounds/helpers/create-bounds-accessor-core.d.ts.map +1 -0
- 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 -10
- package/lib/typescript/shared/utils/bounds/helpers/prepare-bound-styles.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/helpers/styles/composers.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/helpers/styles/styles.d.ts +1 -4
- package/lib/typescript/shared/utils/bounds/helpers/styles/styles.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/index.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/navigation/helpers.d.ts +4 -0
- package/lib/typescript/shared/utils/bounds/navigation/helpers.d.ts.map +1 -0
- package/lib/typescript/shared/utils/bounds/navigation/math.d.ts +31 -0
- package/lib/typescript/shared/utils/bounds/navigation/math.d.ts.map +1 -0
- package/lib/typescript/shared/utils/bounds/navigation/reveal/build.d.ts +3 -0
- package/lib/typescript/shared/utils/bounds/navigation/reveal/build.d.ts.map +1 -0
- package/lib/typescript/shared/utils/bounds/navigation/reveal/config.d.ts +9 -0
- package/lib/typescript/shared/utils/bounds/navigation/reveal/config.d.ts.map +1 -0
- package/lib/typescript/shared/utils/bounds/navigation/reveal/math.d.ts +8 -0
- package/lib/typescript/shared/utils/bounds/navigation/reveal/math.d.ts.map +1 -0
- package/lib/typescript/shared/utils/bounds/navigation/reveal/types.d.ts +11 -0
- package/lib/typescript/shared/utils/bounds/navigation/reveal/types.d.ts.map +1 -0
- package/lib/typescript/shared/utils/bounds/navigation/zoom/build.d.ts.map +1 -0
- package/lib/typescript/shared/utils/bounds/{zoom → navigation/zoom}/config.d.ts +1 -4
- package/lib/typescript/shared/utils/bounds/navigation/zoom/config.d.ts.map +1 -0
- package/lib/typescript/shared/utils/bounds/navigation/zoom/helpers.d.ts +30 -0
- package/lib/typescript/shared/utils/bounds/navigation/zoom/helpers.d.ts.map +1 -0
- package/lib/typescript/shared/utils/bounds/navigation/zoom/math.d.ts +8 -0
- package/lib/typescript/shared/utils/bounds/navigation/zoom/math.d.ts.map +1 -0
- package/lib/typescript/shared/utils/bounds/{zoom → navigation/zoom}/types.d.ts +2 -2
- package/lib/typescript/shared/utils/bounds/navigation/zoom/types.d.ts.map +1 -0
- package/lib/typescript/shared/utils/bounds/types/options.d.ts +10 -1
- 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/resolve-chain-target.d.ts +11 -0
- package/lib/typescript/shared/utils/resolve-chain-target.d.ts.map +1 -0
- package/lib/typescript/shared/utils/resolve-screen-transition-options.d.ts +0 -2
- package/lib/typescript/shared/utils/resolve-screen-transition-options.d.ts.map +1 -1
- package/package.json +5 -2
- package/src/shared/animation/snap-to.ts +8 -6
- package/src/shared/components/create-boundary-component/components/boundary-target.tsx +10 -3
- package/src/shared/components/create-boundary-component/create-boundary-component.tsx +30 -35
- package/src/shared/{stores/bounds → components/create-boundary-component}/helpers/apply-measured-bounds-writes.ts +10 -30
- package/src/shared/components/create-boundary-component/helpers/resolve-pending-source-key.ts +1 -1
- package/src/shared/components/create-boundary-component/hooks/helpers/boundary-link-context.ts +48 -0
- package/src/shared/components/create-boundary-component/hooks/helpers/measurement-rules.ts +11 -182
- package/src/shared/components/create-boundary-component/hooks/helpers/measurement.ts +0 -18
- package/src/shared/components/create-boundary-component/hooks/helpers/scroll-measurement.ts +58 -0
- package/src/shared/components/create-boundary-component/hooks/use-boundary-presence.ts +3 -28
- package/src/shared/components/create-boundary-component/hooks/{use-capture-destination-boundary.ts → use-initial-destination-measurement.ts} +29 -57
- package/src/shared/components/create-boundary-component/hooks/use-initial-source-measurement.ts +27 -0
- package/src/shared/components/create-boundary-component/hooks/use-measurer.ts +66 -80
- package/src/shared/components/create-boundary-component/hooks/use-refresh-boundary.ts +55 -47
- package/src/shared/components/create-boundary-component/providers/boundary-owner.provider.tsx +41 -29
- package/src/shared/components/create-boundary-component/types.ts +0 -8
- package/src/shared/components/create-boundary-component/utils/build-boundary-match-key.ts +0 -3
- package/src/shared/components/create-transition-aware-component.tsx +24 -10
- package/src/shared/components/native-screen.tsx +2 -2
- package/src/shared/components/overlay/variations/overlay-host.tsx +1 -1
- package/src/shared/{utils/gesture → components/screen-container/helpers}/find-collapse-target.ts +19 -8
- package/src/shared/components/screen-container/hooks/use-backdrop-pointer-events.ts +21 -1
- package/src/shared/components/screen-container/hooks/use-content-layout.ts +8 -8
- package/src/shared/components/screen-container/layers/backdrop.tsx +15 -9
- package/src/shared/components/screen-container/layers/content.tsx +2 -2
- package/src/shared/components/screen-container/layers/maybe-masked-navigation-container.tsx +30 -16
- 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 +5 -23
- package/src/shared/components/screen-lifecycle/hooks/use-close-transition-intent.ts +2 -5
- package/src/shared/components/screen-lifecycle/hooks/use-open-transition-intent.ts +1 -1
- package/src/shared/configs/presets.ts +8 -8
- package/src/shared/configs/specs.ts +2 -2
- package/src/shared/constants.ts +52 -8
- package/src/shared/hooks/reanimated/use-shared-value-ref.ts +3 -3
- package/src/shared/hooks/reanimated/use-shared-value-state.ts +1 -1
- package/src/shared/hooks/use-stable-callback-value.ts +3 -3
- package/src/shared/index.ts +8 -4
- package/src/shared/providers/register-bounds.provider.tsx +15 -17
- package/src/shared/providers/screen/animation/animation.provider.tsx +169 -13
- 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 +158 -0
- package/src/shared/providers/screen/animation/helpers/build-screen-transition-options.ts +63 -0
- package/src/shared/providers/screen/animation/helpers/derivations.ts +10 -23
- 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 +160 -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 +96 -99
- 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 +20 -17
- package/src/shared/providers/screen/animation/types.ts +31 -1
- package/src/shared/providers/screen/animation/use-screen-animation.tsx +96 -22
- 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 +85 -0
- package/src/shared/providers/screen/gestures/hooks/use-gesture-builder-state.ts +31 -0
- package/src/shared/providers/screen/gestures/hooks/use-gesture-sensitivity.ts +132 -0
- package/src/shared/providers/screen/gestures/hooks/use-screen-gesture-config.ts +24 -0
- package/src/shared/providers/screen/gestures/hooks/use-screen-gesture.ts +33 -0
- package/src/shared/providers/screen/gestures/hooks/use-stable-runtime-config.ts +45 -0
- package/src/shared/providers/{gestures → screen/gestures}/index.tsx +3 -1
- package/src/shared/providers/screen/gestures/ownership/compute-claimed-directions.ts +101 -0
- package/src/shared/{utils/gesture → providers/screen/gestures/ownership}/resolve-ownership.ts +27 -9
- package/src/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.ts +129 -0
- package/src/shared/providers/screen/gestures/pan/build-pan-gesture.ts +65 -0
- package/src/shared/providers/screen/gestures/pan/pan-activation-decision.ts +458 -0
- package/src/shared/providers/{gestures/helpers/gesture-activation.ts → screen/gestures/pan/pan-activation-rules.ts} +219 -173
- package/src/shared/providers/screen/gestures/pan/pan-activation.ts +132 -0
- package/src/shared/providers/screen/gestures/pan/pan-lifecycle.ts +129 -0
- package/src/shared/providers/screen/gestures/pan/pan-release.ts +246 -0
- package/src/shared/providers/screen/gestures/pan/pan-reset.ts +92 -0
- package/src/shared/providers/screen/gestures/pan/use-pan-behavior.ts +89 -0
- package/src/shared/providers/screen/gestures/pinch/build-pinch-gesture.ts +48 -0
- package/src/shared/providers/screen/gestures/pinch/pinch-activation.ts +72 -0
- package/src/shared/providers/screen/gestures/pinch/pinch-lifecycle.ts +104 -0
- 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/pinch/use-pinch-behavior.ts +82 -0
- package/src/shared/providers/screen/gestures/scroll-coordination/index.ts +1 -0
- package/src/shared/providers/screen/gestures/scroll-coordination/update-scroll-gesture-state.ts +44 -0
- package/src/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.ts +180 -0
- package/src/shared/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.ts +88 -0
- package/src/shared/providers/screen/gestures/shared/ancestors.ts +27 -0
- package/src/shared/providers/screen/gestures/shared/directions.ts +205 -0
- package/src/shared/providers/screen/gestures/shared/physics.ts +323 -0
- package/src/shared/providers/screen/gestures/shared/policy.ts +346 -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 +216 -0
- package/src/shared/providers/screen/options/helpers.ts +382 -0
- package/src/shared/providers/screen/options/index.ts +6 -0
- package/src/shared/providers/screen/options/options.provider.tsx +43 -0
- package/src/shared/providers/screen/options/types.ts +36 -0
- package/src/shared/providers/screen/screen-composer.tsx +11 -8
- package/src/shared/providers/screen/styles/components/maybe-floating-container.tsx +0 -2
- package/src/shared/providers/screen/styles/constants.ts +50 -4
- package/src/shared/providers/screen/styles/helpers/normalize-slots.ts +13 -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 +414 -0
- package/src/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.ts +155 -0
- package/src/shared/providers/screen/styles/helpers/resolve-slot-styles/reset-values.ts +23 -0
- package/src/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.ts +146 -0
- package/src/shared/providers/screen/styles/helpers/resolve-slot-styles/types.ts +8 -0
- package/src/shared/providers/screen/styles/helpers/strip-interpolator-options.ts +17 -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 +95 -18
- package/src/shared/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +37 -13
- package/src/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.tsx +19 -1
- package/src/shared/providers/stack/helpers/use-closing-route-map.ts +1 -1
- package/src/shared/providers/stack/helpers/use-stack-derived.ts +2 -2
- package/src/shared/stores/animation.store.ts +3 -9
- package/src/shared/stores/bounds/helpers/entries.helpers.ts +55 -0
- package/src/shared/stores/bounds/helpers/find-latest.ts +22 -0
- package/src/shared/stores/bounds/helpers/groups.helpers.ts +27 -0
- package/src/shared/stores/bounds/helpers/keys.ts +0 -22
- package/src/shared/stores/bounds/helpers/link.helpers.ts +131 -0
- package/src/shared/stores/bounds/helpers/matching.ts +2 -16
- package/src/shared/stores/bounds/helpers/tag-state.helpers.ts +24 -0
- package/src/shared/stores/bounds/index.ts +14 -194
- package/src/shared/stores/bounds/internals/clear.ts +3 -42
- package/src/shared/stores/bounds/internals/entries.ts +42 -0
- package/src/shared/stores/bounds/internals/groups.ts +99 -3
- package/src/shared/stores/bounds/internals/links.ts +171 -0
- package/src/shared/stores/bounds/internals/resolver.ts +40 -77
- package/src/shared/stores/bounds/internals/state.ts +0 -8
- package/src/shared/stores/bounds/types.ts +10 -14
- package/src/shared/stores/gesture.store.ts +54 -6
- package/src/shared/stores/scroll.store.ts +25 -0
- package/src/shared/stores/system.store.ts +8 -0
- package/src/shared/types/animation.types.ts +102 -35
- package/src/shared/types/bounds.types.ts +32 -2
- package/src/shared/types/gesture.types.ts +91 -5
- package/src/shared/types/index.ts +9 -0
- package/src/shared/types/ownership.types.ts +2 -2
- package/src/shared/types/screen.types.ts +56 -7
- package/src/shared/utils/animation/animate-to-progress.ts +69 -42
- package/src/shared/utils/animation/emit.ts +18 -0
- package/src/shared/utils/animation/resolve-snap-transition-spec.ts +23 -0
- package/src/shared/utils/bounds/helpers/create-bound-tag.ts +1 -1
- package/src/shared/utils/bounds/helpers/create-bounds-accessor-core.ts +160 -0
- package/src/shared/utils/bounds/helpers/create-interpolators.ts +8 -8
- package/src/shared/utils/bounds/helpers/create-link-accessor.ts +66 -11
- package/src/shared/utils/bounds/helpers/prepare-bound-styles.ts +8 -6
- package/src/shared/utils/bounds/helpers/styles/composers.ts +5 -2
- package/src/shared/utils/bounds/helpers/styles/styles.ts +4 -9
- package/src/shared/utils/bounds/index.ts +28 -53
- package/src/shared/utils/bounds/navigation/helpers.ts +14 -0
- package/src/shared/utils/bounds/{zoom → navigation}/math.ts +10 -72
- package/src/shared/utils/bounds/navigation/reveal/build.ts +590 -0
- package/src/shared/utils/bounds/navigation/reveal/config.ts +15 -0
- package/src/shared/utils/bounds/navigation/reveal/math.ts +25 -0
- package/src/shared/utils/bounds/navigation/reveal/types.ts +18 -0
- package/src/shared/utils/bounds/{zoom → navigation/zoom}/build.ts +144 -191
- package/src/shared/utils/bounds/{zoom → navigation/zoom}/config.ts +1 -15
- package/src/shared/utils/bounds/navigation/zoom/helpers.ts +116 -0
- package/src/shared/utils/bounds/navigation/zoom/math.ts +25 -0
- package/src/shared/utils/bounds/{zoom → navigation/zoom}/types.ts +2 -2
- package/src/shared/utils/bounds/types/options.ts +8 -1
- package/src/shared/utils/gesture-progress-mode.ts +67 -0
- package/src/shared/utils/resolve-chain-target.ts +33 -0
- package/src/shared/utils/resolve-screen-transition-options.ts +1 -16
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-capture-destination-boundary.js.map +0 -1
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-capture-source-boundary.js +0 -40
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-capture-source-boundary.js.map +0 -1
- package/lib/commonjs/shared/hooks/gestures/resolve-screen-gesture-target.js +0 -49
- package/lib/commonjs/shared/hooks/gestures/resolve-screen-gesture-target.js.map +0 -1
- package/lib/commonjs/shared/hooks/gestures/types.js.map +0 -1
- package/lib/commonjs/shared/hooks/gestures/use-screen-gesture.js +0 -30
- package/lib/commonjs/shared/hooks/gestures/use-screen-gesture.js.map +0 -1
- package/lib/commonjs/shared/hooks/gestures/use-scroll-registry.js +0 -219
- package/lib/commonjs/shared/hooks/gestures/use-scroll-registry.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/gestures/gestures.provider.js +0 -94
- package/lib/commonjs/shared/providers/gestures/gestures.provider.js.map +0 -1
- package/lib/commonjs/shared/providers/gestures/handlers/use-handlers.js +0 -447
- package/lib/commonjs/shared/providers/gestures/handlers/use-handlers.js.map +0 -1
- package/lib/commonjs/shared/providers/gestures/helpers/gesture-activation.js +0 -322
- package/lib/commonjs/shared/providers/gestures/helpers/gesture-activation.js.map +0 -1
- package/lib/commonjs/shared/providers/gestures/helpers/gesture-claims.js +0 -27
- package/lib/commonjs/shared/providers/gestures/helpers/gesture-claims.js.map +0 -1
- package/lib/commonjs/shared/providers/gestures/helpers/gesture-directions.js +0 -56
- package/lib/commonjs/shared/providers/gestures/helpers/gesture-directions.js.map +0 -1
- package/lib/commonjs/shared/providers/gestures/helpers/gesture-physics.js +0 -144
- package/lib/commonjs/shared/providers/gestures/helpers/gesture-physics.js.map +0 -1
- package/lib/commonjs/shared/providers/gestures/helpers/gesture-reset.js +0 -78
- package/lib/commonjs/shared/providers/gestures/helpers/gesture-reset.js.map +0 -1
- package/lib/commonjs/shared/providers/gestures/helpers/gesture-snap-points.js +0 -44
- package/lib/commonjs/shared/providers/gestures/helpers/gesture-snap-points.js.map +0 -1
- package/lib/commonjs/shared/providers/gestures/helpers/gesture-targets.js +0 -113
- package/lib/commonjs/shared/providers/gestures/helpers/gesture-targets.js.map +0 -1
- package/lib/commonjs/shared/providers/gestures/helpers/register-direction-claims.js +0 -74
- package/lib/commonjs/shared/providers/gestures/helpers/register-direction-claims.js.map +0 -1
- package/lib/commonjs/shared/providers/gestures/index.js.map +0 -1
- package/lib/commonjs/shared/providers/gestures/types.js.map +0 -1
- package/lib/commonjs/shared/providers/gestures/use-build-gestures.js +0 -111
- package/lib/commonjs/shared/providers/gestures/use-build-gestures.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state.js +0 -110
- 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/styles/helpers/resolve-slot-styles.js +0 -137
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles.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/apply-measured-bounds-writes.js +0 -49
- package/lib/commonjs/shared/stores/bounds/helpers/apply-measured-bounds-writes.js.map +0 -1
- package/lib/commonjs/shared/stores/bounds/internals/registry.js +0 -352
- package/lib/commonjs/shared/stores/bounds/internals/registry.js.map +0 -1
- package/lib/commonjs/shared/typecheck/public-api.typecheck.js +0 -174
- package/lib/commonjs/shared/typecheck/public-api.typecheck.js.map +0 -1
- package/lib/commonjs/shared/utils/animation/animate-many.js +0 -32
- package/lib/commonjs/shared/utils/animation/animate-many.js.map +0 -1
- package/lib/commonjs/shared/utils/bounds/zoom/build.js.map +0 -1
- package/lib/commonjs/shared/utils/bounds/zoom/config.js.map +0 -1
- package/lib/commonjs/shared/utils/bounds/zoom/math.js.map +0 -1
- package/lib/commonjs/shared/utils/bounds/zoom/types.js +0 -4
- package/lib/commonjs/shared/utils/bounds/zoom/types.js.map +0 -1
- package/lib/commonjs/shared/utils/gesture/compute-claimed-directions.js +0 -81
- package/lib/commonjs/shared/utils/gesture/compute-claimed-directions.js.map +0 -1
- package/lib/commonjs/shared/utils/gesture/find-collapse-target.js.map +0 -1
- package/lib/commonjs/shared/utils/gesture/resolve-ownership.js.map +0 -1
- package/lib/commonjs/shared/utils/gesture/validate-snap-points.js +0 -56
- package/lib/commonjs/shared/utils/gesture/validate-snap-points.js.map +0 -1
- package/lib/module/shared/components/create-boundary-component/hooks/use-capture-destination-boundary.js +0 -106
- package/lib/module/shared/components/create-boundary-component/hooks/use-capture-destination-boundary.js.map +0 -1
- package/lib/module/shared/components/create-boundary-component/hooks/use-capture-source-boundary.js +0 -35
- package/lib/module/shared/components/create-boundary-component/hooks/use-capture-source-boundary.js.map +0 -1
- package/lib/module/shared/hooks/gestures/resolve-screen-gesture-target.js +0 -45
- package/lib/module/shared/hooks/gestures/resolve-screen-gesture-target.js.map +0 -1
- package/lib/module/shared/hooks/gestures/types.js.map +0 -1
- package/lib/module/shared/hooks/gestures/use-screen-gesture.js +0 -25
- package/lib/module/shared/hooks/gestures/use-screen-gesture.js.map +0 -1
- package/lib/module/shared/hooks/gestures/use-scroll-registry.js +0 -214
- package/lib/module/shared/hooks/gestures/use-scroll-registry.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/gestures/gestures.provider.js +0 -87
- package/lib/module/shared/providers/gestures/gestures.provider.js.map +0 -1
- package/lib/module/shared/providers/gestures/handlers/use-handlers.js +0 -441
- package/lib/module/shared/providers/gestures/handlers/use-handlers.js.map +0 -1
- package/lib/module/shared/providers/gestures/helpers/gesture-activation.js +0 -312
- package/lib/module/shared/providers/gestures/helpers/gesture-activation.js.map +0 -1
- package/lib/module/shared/providers/gestures/helpers/gesture-claims.js +0 -23
- package/lib/module/shared/providers/gestures/helpers/gesture-claims.js.map +0 -1
- package/lib/module/shared/providers/gestures/helpers/gesture-directions.js +0 -47
- package/lib/module/shared/providers/gestures/helpers/gesture-directions.js.map +0 -1
- package/lib/module/shared/providers/gestures/helpers/gesture-physics.js +0 -134
- package/lib/module/shared/providers/gestures/helpers/gesture-physics.js.map +0 -1
- package/lib/module/shared/providers/gestures/helpers/gesture-reset.js +0 -73
- package/lib/module/shared/providers/gestures/helpers/gesture-reset.js.map +0 -1
- package/lib/module/shared/providers/gestures/helpers/gesture-snap-points.js +0 -38
- package/lib/module/shared/providers/gestures/helpers/gesture-snap-points.js.map +0 -1
- package/lib/module/shared/providers/gestures/helpers/gesture-targets.js +0 -107
- package/lib/module/shared/providers/gestures/helpers/gesture-targets.js.map +0 -1
- package/lib/module/shared/providers/gestures/helpers/register-direction-claims.js +0 -70
- package/lib/module/shared/providers/gestures/helpers/register-direction-claims.js.map +0 -1
- package/lib/module/shared/providers/gestures/index.js.map +0 -1
- package/lib/module/shared/providers/gestures/types.js.map +0 -1
- package/lib/module/shared/providers/gestures/use-build-gestures.js +0 -106
- package/lib/module/shared/providers/gestures/use-build-gestures.js.map +0 -1
- package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state.js +0 -104
- 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/styles/helpers/resolve-slot-styles.js +0 -132
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles.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/apply-measured-bounds-writes.js +0 -44
- package/lib/module/shared/stores/bounds/helpers/apply-measured-bounds-writes.js.map +0 -1
- package/lib/module/shared/stores/bounds/internals/registry.js +0 -339
- package/lib/module/shared/stores/bounds/internals/registry.js.map +0 -1
- package/lib/module/shared/typecheck/public-api.typecheck.js +0 -174
- package/lib/module/shared/typecheck/public-api.typecheck.js.map +0 -1
- package/lib/module/shared/utils/animation/animate-many.js +0 -27
- package/lib/module/shared/utils/animation/animate-many.js.map +0 -1
- package/lib/module/shared/utils/bounds/zoom/build.js.map +0 -1
- package/lib/module/shared/utils/bounds/zoom/config.js.map +0 -1
- package/lib/module/shared/utils/bounds/zoom/math.js.map +0 -1
- package/lib/module/shared/utils/bounds/zoom/types.js.map +0 -1
- package/lib/module/shared/utils/gesture/compute-claimed-directions.js +0 -77
- package/lib/module/shared/utils/gesture/compute-claimed-directions.js.map +0 -1
- package/lib/module/shared/utils/gesture/find-collapse-target.js.map +0 -1
- package/lib/module/shared/utils/gesture/resolve-ownership.js.map +0 -1
- package/lib/module/shared/utils/gesture/validate-snap-points.js +0 -50
- package/lib/module/shared/utils/gesture/validate-snap-points.js.map +0 -1
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-capture-destination-boundary.d.ts +0 -13
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-capture-destination-boundary.d.ts.map +0 -1
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-capture-source-boundary.d.ts +0 -10
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-capture-source-boundary.d.ts.map +0 -1
- package/lib/typescript/shared/hooks/gestures/resolve-screen-gesture-target.d.ts +0 -10
- package/lib/typescript/shared/hooks/gestures/resolve-screen-gesture-target.d.ts.map +0 -1
- package/lib/typescript/shared/hooks/gestures/types.d.ts +0 -4
- package/lib/typescript/shared/hooks/gestures/types.d.ts.map +0 -1
- package/lib/typescript/shared/hooks/gestures/use-screen-gesture.d.ts +0 -17
- package/lib/typescript/shared/hooks/gestures/use-screen-gesture.d.ts.map +0 -1
- package/lib/typescript/shared/hooks/gestures/use-scroll-registry.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/gestures/gestures.provider.d.ts +0 -19
- package/lib/typescript/shared/providers/gestures/gestures.provider.d.ts.map +0 -1
- package/lib/typescript/shared/providers/gestures/handlers/use-handlers.d.ts +0 -71
- package/lib/typescript/shared/providers/gestures/handlers/use-handlers.d.ts.map +0 -1
- package/lib/typescript/shared/providers/gestures/helpers/gesture-activation.d.ts.map +0 -1
- package/lib/typescript/shared/providers/gestures/helpers/gesture-claims.d.ts +0 -15
- package/lib/typescript/shared/providers/gestures/helpers/gesture-claims.d.ts.map +0 -1
- package/lib/typescript/shared/providers/gestures/helpers/gesture-directions.d.ts +0 -13
- package/lib/typescript/shared/providers/gestures/helpers/gesture-directions.d.ts.map +0 -1
- package/lib/typescript/shared/providers/gestures/helpers/gesture-physics.d.ts +0 -42
- package/lib/typescript/shared/providers/gestures/helpers/gesture-physics.d.ts.map +0 -1
- package/lib/typescript/shared/providers/gestures/helpers/gesture-reset.d.ts +0 -18
- package/lib/typescript/shared/providers/gestures/helpers/gesture-reset.d.ts.map +0 -1
- package/lib/typescript/shared/providers/gestures/helpers/gesture-snap-points.d.ts +0 -18
- package/lib/typescript/shared/providers/gestures/helpers/gesture-snap-points.d.ts.map +0 -1
- package/lib/typescript/shared/providers/gestures/helpers/gesture-targets.d.ts.map +0 -1
- package/lib/typescript/shared/providers/gestures/helpers/register-direction-claims.d.ts +0 -9
- package/lib/typescript/shared/providers/gestures/helpers/register-direction-claims.d.ts.map +0 -1
- package/lib/typescript/shared/providers/gestures/index.d.ts.map +0 -1
- package/lib/typescript/shared/providers/gestures/types.d.ts +0 -36
- package/lib/typescript/shared/providers/gestures/types.d.ts.map +0 -1
- package/lib/typescript/shared/providers/gestures/use-build-gestures.d.ts +0 -28
- package/lib/typescript/shared/providers/gestures/use-build-gestures.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state.d.ts +0 -33
- 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/styles/helpers/resolve-slot-styles.d.ts +0 -17
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles.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/apply-measured-bounds-writes.d.ts.map +0 -1
- package/lib/typescript/shared/stores/bounds/internals/registry.d.ts +0 -17
- package/lib/typescript/shared/stores/bounds/internals/registry.d.ts.map +0 -1
- package/lib/typescript/shared/utils/animation/animate-many.d.ts +0 -13
- package/lib/typescript/shared/utils/animation/animate-many.d.ts.map +0 -1
- package/lib/typescript/shared/utils/bounds/zoom/build.d.ts.map +0 -1
- package/lib/typescript/shared/utils/bounds/zoom/config.d.ts.map +0 -1
- package/lib/typescript/shared/utils/bounds/zoom/math.d.ts +0 -61
- package/lib/typescript/shared/utils/bounds/zoom/math.d.ts.map +0 -1
- package/lib/typescript/shared/utils/bounds/zoom/types.d.ts.map +0 -1
- package/lib/typescript/shared/utils/gesture/compute-claimed-directions.d.ts +0 -23
- package/lib/typescript/shared/utils/gesture/compute-claimed-directions.d.ts.map +0 -1
- package/lib/typescript/shared/utils/gesture/find-collapse-target.d.ts.map +0 -1
- package/lib/typescript/shared/utils/gesture/resolve-ownership.d.ts.map +0 -1
- package/lib/typescript/shared/utils/gesture/validate-snap-points.d.ts +0 -20
- package/lib/typescript/shared/utils/gesture/validate-snap-points.d.ts.map +0 -1
- package/src/shared/components/create-boundary-component/hooks/use-capture-source-boundary.ts +0 -40
- package/src/shared/hooks/gestures/resolve-screen-gesture-target.ts +0 -66
- package/src/shared/hooks/gestures/types.ts +0 -5
- package/src/shared/hooks/gestures/use-screen-gesture.ts +0 -26
- package/src/shared/hooks/gestures/use-scroll-registry.ts +0 -265
- package/src/shared/hooks/reanimated/use-animated-debounce.ts +0 -56
- package/src/shared/providers/gestures/gestures.provider.tsx +0 -127
- package/src/shared/providers/gestures/handlers/use-handlers.ts +0 -598
- package/src/shared/providers/gestures/helpers/gesture-claims.ts +0 -24
- package/src/shared/providers/gestures/helpers/gesture-directions.ts +0 -97
- package/src/shared/providers/gestures/helpers/gesture-physics.ts +0 -214
- package/src/shared/providers/gestures/helpers/gesture-reset.ts +0 -112
- package/src/shared/providers/gestures/helpers/gesture-snap-points.ts +0 -74
- package/src/shared/providers/gestures/helpers/gesture-targets.ts +0 -175
- package/src/shared/providers/gestures/helpers/register-direction-claims.ts +0 -84
- package/src/shared/providers/gestures/types.ts +0 -45
- package/src/shared/providers/gestures/use-build-gestures.ts +0 -164
- package/src/shared/providers/screen/animation/helpers/hydrate-transition-state.ts +0 -169
- 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/styles/helpers/resolve-slot-styles.ts +0 -190
- package/src/shared/providers/scroll-settle.provider.tsx +0 -24
- package/src/shared/stores/bounds/internals/registry.ts +0 -473
- package/src/shared/typecheck/public-api.typecheck.ts +0 -222
- package/src/shared/utils/animation/animate-many.ts +0 -40
- package/src/shared/utils/gesture/compute-claimed-directions.ts +0 -93
- package/src/shared/utils/gesture/validate-snap-points.ts +0 -74
- /package/lib/commonjs/shared/providers/{gestures → screen/gestures}/index.js +0 -0
- /package/lib/commonjs/shared/{hooks/gestures → providers/screen/styles/helpers/resolve-slot-styles}/types.js +0 -0
- /package/lib/module/shared/providers/{gestures → screen/gestures}/index.js +0 -0
- /package/lib/module/shared/{hooks/gestures → providers/screen/styles/helpers/resolve-slot-styles}/types.js +0 -0
- /package/lib/typescript/shared/{utils/gesture → components/screen-container/helpers}/find-collapse-target.d.ts +0 -0
- /package/lib/typescript/shared/utils/bounds/{zoom → navigation/zoom}/build.d.ts +0 -0
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { clamp } from "react-native-reanimated";
|
|
2
|
+
import { EPSILON, FALSE, TRUE } from "../../../../constants";
|
|
3
|
+
import { animateToProgress } from "../../../../utils/animation/animate-to-progress";
|
|
4
|
+
import { emit } from "../../../../utils/animation/emit";
|
|
5
|
+
import { normalizeGestureTranslation } from "../shared/physics";
|
|
6
|
+
import type {
|
|
7
|
+
GestureDimensions,
|
|
8
|
+
PanGestureEvent,
|
|
9
|
+
PanGestureRuntime,
|
|
10
|
+
PanReleaseResult,
|
|
11
|
+
PanTrackState,
|
|
12
|
+
} from "../types";
|
|
13
|
+
import { buildPanReleasePlan } from "./pan-release";
|
|
14
|
+
import { resetPanGestureValues } from "./pan-reset";
|
|
15
|
+
|
|
16
|
+
export const startPanBase = (runtime: PanGestureRuntime) => {
|
|
17
|
+
"worklet";
|
|
18
|
+
const {
|
|
19
|
+
stores: { gestures, animations },
|
|
20
|
+
gestureProgressBaseline,
|
|
21
|
+
} = runtime;
|
|
22
|
+
|
|
23
|
+
const wasSettling = gestures.settling.get();
|
|
24
|
+
const hasResidualGesture =
|
|
25
|
+
Math.abs(gestures.normX.get()) > EPSILON ||
|
|
26
|
+
Math.abs(gestures.normY.get()) > EPSILON;
|
|
27
|
+
|
|
28
|
+
if (!wasSettling || !hasResidualGesture) {
|
|
29
|
+
emit(animations.willAnimate, TRUE, FALSE);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
gestures.dragging.set(TRUE);
|
|
33
|
+
gestures.dismissing.set(0);
|
|
34
|
+
gestures.settling.set(0);
|
|
35
|
+
gestures.x.set(0);
|
|
36
|
+
gestures.y.set(0);
|
|
37
|
+
gestures.normX.set(0);
|
|
38
|
+
gestures.normY.set(0);
|
|
39
|
+
gestures.raw.x.set(0);
|
|
40
|
+
gestures.raw.y.set(0);
|
|
41
|
+
gestures.raw.normX.set(0);
|
|
42
|
+
gestures.raw.normY.set(0);
|
|
43
|
+
gestureProgressBaseline.set(animations.progress.get());
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
export const trackPanGesture = (
|
|
47
|
+
event: PanGestureEvent,
|
|
48
|
+
rawEvent: PanGestureEvent,
|
|
49
|
+
gestures: PanGestureRuntime["stores"]["gestures"],
|
|
50
|
+
dimensions: GestureDimensions,
|
|
51
|
+
): PanTrackState => {
|
|
52
|
+
"worklet";
|
|
53
|
+
const { translationX: x, translationY: y } = event;
|
|
54
|
+
const { translationX: rawX, translationY: rawY } = rawEvent;
|
|
55
|
+
const { width, height } = dimensions;
|
|
56
|
+
|
|
57
|
+
const normX = clamp(normalizeGestureTranslation(x, width), -1, 1);
|
|
58
|
+
const normY = clamp(normalizeGestureTranslation(y, height), -1, 1);
|
|
59
|
+
const rawNormX = clamp(normalizeGestureTranslation(rawX, width), -1, 1);
|
|
60
|
+
const rawNormY = clamp(normalizeGestureTranslation(rawY, height), -1, 1);
|
|
61
|
+
|
|
62
|
+
gestures.x.set(x);
|
|
63
|
+
gestures.y.set(y);
|
|
64
|
+
gestures.normX.set(normX);
|
|
65
|
+
gestures.normY.set(normY);
|
|
66
|
+
gestures.raw.x.set(rawX);
|
|
67
|
+
gestures.raw.y.set(rawY);
|
|
68
|
+
gestures.raw.normX.set(rawNormX);
|
|
69
|
+
gestures.raw.normY.set(rawNormY);
|
|
70
|
+
|
|
71
|
+
return {
|
|
72
|
+
x,
|
|
73
|
+
y,
|
|
74
|
+
normX,
|
|
75
|
+
normY,
|
|
76
|
+
};
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
export const finalizePanRelease = (
|
|
80
|
+
release: PanReleaseResult,
|
|
81
|
+
runtime: PanGestureRuntime,
|
|
82
|
+
dismissScreen: (() => void) | undefined,
|
|
83
|
+
dimensions: GestureDimensions,
|
|
84
|
+
rawEvent: PanGestureEvent,
|
|
85
|
+
) => {
|
|
86
|
+
"worklet";
|
|
87
|
+
const {
|
|
88
|
+
stores: { gestures, animations, system },
|
|
89
|
+
} = runtime;
|
|
90
|
+
const plan = buildPanReleasePlan(release, runtime, dimensions, rawEvent);
|
|
91
|
+
|
|
92
|
+
if (typeof plan.commitProgress === "number") {
|
|
93
|
+
animations.progress.set(plan.commitProgress);
|
|
94
|
+
system.targetProgress.set(plan.commitProgress);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
resetPanGestureValues({
|
|
98
|
+
spec: plan.resetSpec,
|
|
99
|
+
gestures,
|
|
100
|
+
shouldDismiss: plan.shouldDismiss,
|
|
101
|
+
velocityX: plan.resetVelocityX,
|
|
102
|
+
velocityY: plan.resetVelocityY,
|
|
103
|
+
velocityNormX: plan.resetVelocityNormX,
|
|
104
|
+
velocityNormY: plan.resetVelocityNormY,
|
|
105
|
+
resetNormalizedValues: plan.resetNormalizedValues,
|
|
106
|
+
resetNormalizedValuesImmediately: plan.resetNormalizedValuesImmediately,
|
|
107
|
+
preserveRawValues: plan.preserveRawValues,
|
|
108
|
+
});
|
|
109
|
+
|
|
110
|
+
const progressAlreadyAtTarget =
|
|
111
|
+
Math.abs(animations.progress.get() - plan.target) <= EPSILON;
|
|
112
|
+
|
|
113
|
+
if (!plan.shouldDismiss && progressAlreadyAtTarget) {
|
|
114
|
+
system.targetProgress.set(plan.target);
|
|
115
|
+
animations.progressAnimating.set(FALSE);
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
animateToProgress({
|
|
120
|
+
target: plan.target,
|
|
121
|
+
onAnimationFinish: plan.shouldDismiss ? dismissScreen : undefined,
|
|
122
|
+
spec: plan.transitionSpec,
|
|
123
|
+
emitWillAnimate: false,
|
|
124
|
+
markEntering: false,
|
|
125
|
+
targetProgress: system.targetProgress,
|
|
126
|
+
animations,
|
|
127
|
+
initialVelocity: plan.progressVelocity,
|
|
128
|
+
});
|
|
129
|
+
};
|
|
@@ -0,0 +1,246 @@
|
|
|
1
|
+
import { clamp } from "react-native-reanimated";
|
|
2
|
+
import {
|
|
3
|
+
getPanSnapAxisConfigForDirection,
|
|
4
|
+
isResolvedPanGestureDirection,
|
|
5
|
+
} from "../shared/directions";
|
|
6
|
+
import {
|
|
7
|
+
getPanReleaseHandoffVelocity,
|
|
8
|
+
getPanReleaseProgressVelocity,
|
|
9
|
+
} from "../shared/physics";
|
|
10
|
+
import {
|
|
11
|
+
getProgressVelocityTowardTarget,
|
|
12
|
+
resolveGestureSnapTransitionSpec,
|
|
13
|
+
} from "../shared/release";
|
|
14
|
+
import {
|
|
15
|
+
primeRuntimeSnapPoint,
|
|
16
|
+
resolveRuntimeGestureSnapPoints,
|
|
17
|
+
} from "../shared/snap-points";
|
|
18
|
+
import { determineDismissal, determineSnapTarget } from "../shared/targets";
|
|
19
|
+
import type {
|
|
20
|
+
GestureDimensions,
|
|
21
|
+
PanGestureEvent,
|
|
22
|
+
PanGestureRuntime,
|
|
23
|
+
PanReleasePlan,
|
|
24
|
+
PanReleaseResult,
|
|
25
|
+
} from "../types";
|
|
26
|
+
|
|
27
|
+
const resolveActivePanSnapAxis = (runtime: PanGestureRuntime) => {
|
|
28
|
+
"worklet";
|
|
29
|
+
const activeGesture = runtime.stores.gestures.active.get();
|
|
30
|
+
|
|
31
|
+
return isResolvedPanGestureDirection(activeGesture)
|
|
32
|
+
? getPanSnapAxisConfigForDirection(
|
|
33
|
+
runtime.policy.snapAxisDirections,
|
|
34
|
+
activeGesture,
|
|
35
|
+
)
|
|
36
|
+
: null;
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
const getPanSnapAxisMotion = (
|
|
40
|
+
event: PanGestureEvent,
|
|
41
|
+
dimensions: GestureDimensions,
|
|
42
|
+
activeAxis: NonNullable<ReturnType<typeof resolveActivePanSnapAxis>>,
|
|
43
|
+
) => {
|
|
44
|
+
"worklet";
|
|
45
|
+
const isHorizontal = activeAxis.axis === "horizontal";
|
|
46
|
+
const axisVelocity = isHorizontal ? event.velocityX : event.velocityY;
|
|
47
|
+
const axisDimension = isHorizontal ? dimensions.width : dimensions.height;
|
|
48
|
+
const snapVelocity = activeAxis.config.inverted
|
|
49
|
+
? -axisVelocity
|
|
50
|
+
: axisVelocity;
|
|
51
|
+
|
|
52
|
+
return { axisVelocity, axisDimension, snapVelocity };
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
const getPanSnapReleaseProgress = ({
|
|
56
|
+
runtime,
|
|
57
|
+
event,
|
|
58
|
+
dimensions,
|
|
59
|
+
activeAxis,
|
|
60
|
+
minSnapPoint,
|
|
61
|
+
maxSnapPoint,
|
|
62
|
+
}: {
|
|
63
|
+
runtime: PanGestureRuntime;
|
|
64
|
+
event: PanGestureEvent;
|
|
65
|
+
dimensions: GestureDimensions;
|
|
66
|
+
activeAxis: NonNullable<ReturnType<typeof resolveActivePanSnapAxis>>;
|
|
67
|
+
minSnapPoint: number;
|
|
68
|
+
maxSnapPoint: number;
|
|
69
|
+
}) => {
|
|
70
|
+
"worklet";
|
|
71
|
+
const isHorizontal = activeAxis.axis === "horizontal";
|
|
72
|
+
const axisTranslation = isHorizontal
|
|
73
|
+
? event.translationX
|
|
74
|
+
: event.translationY;
|
|
75
|
+
const axisDimension = isHorizontal ? dimensions.width : dimensions.height;
|
|
76
|
+
const axisProgress = axisTranslation / Math.max(1, axisDimension);
|
|
77
|
+
const progress =
|
|
78
|
+
runtime.gestureProgressBaseline.get() +
|
|
79
|
+
activeAxis.config.progressSign * axisProgress;
|
|
80
|
+
|
|
81
|
+
return clamp(progress, minSnapPoint, maxSnapPoint);
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
const buildInactivePanSnapRelease = (
|
|
85
|
+
runtime: PanGestureRuntime,
|
|
86
|
+
): PanReleaseResult => {
|
|
87
|
+
"worklet";
|
|
88
|
+
const { policy, stores } = runtime;
|
|
89
|
+
|
|
90
|
+
return {
|
|
91
|
+
target: stores.animations.progress.get(),
|
|
92
|
+
shouldDismiss: false,
|
|
93
|
+
initialVelocity: 0,
|
|
94
|
+
transitionSpec: policy.transitionSpec,
|
|
95
|
+
resetSpec: policy.transitionSpec?.open,
|
|
96
|
+
};
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
export const primeSnapPanRelease = (runtime: PanGestureRuntime) => {
|
|
100
|
+
"worklet";
|
|
101
|
+
primeRuntimeSnapPoint(runtime);
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
export const resolvePanRelease = (
|
|
105
|
+
event: PanGestureEvent,
|
|
106
|
+
runtime: PanGestureRuntime,
|
|
107
|
+
dimensions: GestureDimensions,
|
|
108
|
+
): PanReleaseResult => {
|
|
109
|
+
"worklet";
|
|
110
|
+
const {
|
|
111
|
+
participation,
|
|
112
|
+
policy,
|
|
113
|
+
stores: { animations },
|
|
114
|
+
} = runtime;
|
|
115
|
+
|
|
116
|
+
const result = determineDismissal({
|
|
117
|
+
event,
|
|
118
|
+
directions: policy.panActivationDirections,
|
|
119
|
+
dimensions,
|
|
120
|
+
gestureVelocityImpact: policy.gestureVelocityImpact,
|
|
121
|
+
});
|
|
122
|
+
|
|
123
|
+
const shouldDismiss = participation.canDismiss && result.shouldDismiss;
|
|
124
|
+
|
|
125
|
+
return {
|
|
126
|
+
target: shouldDismiss ? 0 : 1,
|
|
127
|
+
shouldDismiss,
|
|
128
|
+
initialVelocity: getPanReleaseProgressVelocity({
|
|
129
|
+
animations,
|
|
130
|
+
shouldDismiss,
|
|
131
|
+
event,
|
|
132
|
+
dimensions,
|
|
133
|
+
directions: policy.panActivationDirections,
|
|
134
|
+
gestureReleaseVelocityScale: policy.gestureReleaseVelocityScale,
|
|
135
|
+
}),
|
|
136
|
+
transitionSpec: policy.transitionSpec,
|
|
137
|
+
resetSpec: shouldDismiss
|
|
138
|
+
? policy.transitionSpec?.close
|
|
139
|
+
: policy.transitionSpec?.open,
|
|
140
|
+
};
|
|
141
|
+
};
|
|
142
|
+
|
|
143
|
+
export const resolveSnapPanRelease = (
|
|
144
|
+
event: PanGestureEvent,
|
|
145
|
+
runtime: PanGestureRuntime,
|
|
146
|
+
dimensions: GestureDimensions,
|
|
147
|
+
): PanReleaseResult => {
|
|
148
|
+
"worklet";
|
|
149
|
+
const { participation, policy, lockedSnapPoint } = runtime;
|
|
150
|
+
const activeAxis = resolveActivePanSnapAxis(runtime);
|
|
151
|
+
|
|
152
|
+
if (!activeAxis) {
|
|
153
|
+
return buildInactivePanSnapRelease(runtime);
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
const { axisVelocity, axisDimension, snapVelocity } = getPanSnapAxisMotion(
|
|
157
|
+
event,
|
|
158
|
+
dimensions,
|
|
159
|
+
activeAxis,
|
|
160
|
+
);
|
|
161
|
+
const { resolvedSnapPoints, resolvedMinSnapPoint, resolvedMaxSnapPoint } =
|
|
162
|
+
resolveRuntimeGestureSnapPoints(runtime);
|
|
163
|
+
const currentProgress = getPanSnapReleaseProgress({
|
|
164
|
+
runtime,
|
|
165
|
+
event,
|
|
166
|
+
dimensions,
|
|
167
|
+
activeAxis,
|
|
168
|
+
minSnapPoint: resolvedMinSnapPoint,
|
|
169
|
+
maxSnapPoint: resolvedMaxSnapPoint,
|
|
170
|
+
});
|
|
171
|
+
const result = determineSnapTarget({
|
|
172
|
+
currentProgress,
|
|
173
|
+
snapPoints: policy.gestureSnapLocked
|
|
174
|
+
? [lockedSnapPoint.get()]
|
|
175
|
+
: resolvedSnapPoints,
|
|
176
|
+
velocity: snapVelocity,
|
|
177
|
+
dimension: axisDimension,
|
|
178
|
+
velocityFactor: policy.gestureSnapVelocityImpact,
|
|
179
|
+
canDismiss: participation.canDismiss,
|
|
180
|
+
});
|
|
181
|
+
|
|
182
|
+
const shouldDismiss = participation.canDismiss && result.shouldDismiss;
|
|
183
|
+
const target = shouldDismiss ? 0 : result.targetProgress;
|
|
184
|
+
|
|
185
|
+
return {
|
|
186
|
+
target,
|
|
187
|
+
shouldDismiss,
|
|
188
|
+
initialVelocity: getProgressVelocityTowardTarget({
|
|
189
|
+
handoffVelocity: getPanReleaseHandoffVelocity(
|
|
190
|
+
axisVelocity,
|
|
191
|
+
axisDimension,
|
|
192
|
+
policy.gestureReleaseVelocityScale,
|
|
193
|
+
),
|
|
194
|
+
target,
|
|
195
|
+
currentProgress,
|
|
196
|
+
}),
|
|
197
|
+
commitProgress: currentProgress,
|
|
198
|
+
resetNormalizedValuesImmediately:
|
|
199
|
+
policy.gestureProgressMode === "progress-driven",
|
|
200
|
+
transitionSpec: resolveGestureSnapTransitionSpec({
|
|
201
|
+
transitionSpec: policy.transitionSpec,
|
|
202
|
+
shouldDismiss,
|
|
203
|
+
target,
|
|
204
|
+
currentProgress,
|
|
205
|
+
}),
|
|
206
|
+
resetSpec: shouldDismiss
|
|
207
|
+
? policy.transitionSpec?.close
|
|
208
|
+
: policy.transitionSpec?.open,
|
|
209
|
+
};
|
|
210
|
+
};
|
|
211
|
+
|
|
212
|
+
export const buildPanReleasePlan = (
|
|
213
|
+
release: PanReleaseResult,
|
|
214
|
+
runtime: PanGestureRuntime,
|
|
215
|
+
dimensions: GestureDimensions,
|
|
216
|
+
rawEvent: PanGestureEvent,
|
|
217
|
+
): PanReleasePlan => {
|
|
218
|
+
"worklet";
|
|
219
|
+
const { policy } = runtime;
|
|
220
|
+
const progressDriven = policy.gestureProgressMode === "progress-driven";
|
|
221
|
+
const releaseVelocityScale = Math.max(0, policy.gestureReleaseVelocityScale);
|
|
222
|
+
const resetUsesReleaseVelocity = !release.shouldDismiss || !progressDriven;
|
|
223
|
+
const resetVelocityFactor = resetUsesReleaseVelocity ? 1 : 0;
|
|
224
|
+
const resetVelocityScale = releaseVelocityScale * resetVelocityFactor;
|
|
225
|
+
const resetVelocityX =
|
|
226
|
+
resetVelocityScale === 0 ? 0 : rawEvent.velocityX * resetVelocityScale;
|
|
227
|
+
const resetVelocityY =
|
|
228
|
+
resetVelocityScale === 0 ? 0 : rawEvent.velocityY * resetVelocityScale;
|
|
229
|
+
|
|
230
|
+
return {
|
|
231
|
+
target: release.target,
|
|
232
|
+
shouldDismiss: release.shouldDismiss,
|
|
233
|
+
progressVelocity: progressDriven ? release.initialVelocity : 0,
|
|
234
|
+
resetVelocityX,
|
|
235
|
+
resetVelocityY,
|
|
236
|
+
resetVelocityNormX: resetVelocityX / Math.max(1, dimensions.width),
|
|
237
|
+
resetVelocityNormY: resetVelocityY / Math.max(1, dimensions.height),
|
|
238
|
+
resetNormalizedValues: !release.shouldDismiss || progressDriven,
|
|
239
|
+
resetNormalizedValuesImmediately:
|
|
240
|
+
release.resetNormalizedValuesImmediately === true,
|
|
241
|
+
preserveRawValues: release.shouldDismiss,
|
|
242
|
+
commitProgress: release.commitProgress,
|
|
243
|
+
transitionSpec: release.transitionSpec,
|
|
244
|
+
resetSpec: release.resetSpec,
|
|
245
|
+
};
|
|
246
|
+
};
|
|
@@ -0,0 +1,92 @@
|
|
|
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
|
+
resetNormalizedValues?: boolean;
|
|
19
|
+
resetNormalizedValuesImmediately?: boolean;
|
|
20
|
+
preserveRawValues?: boolean;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
const clearPanSettlingIfResting = (gestures: GestureStoreMap) => {
|
|
24
|
+
"worklet";
|
|
25
|
+
|
|
26
|
+
clearGestureSettlingIfResting(
|
|
27
|
+
gestures,
|
|
28
|
+
!gestures.dragging.get() &&
|
|
29
|
+
!gestures.dismissing.get() &&
|
|
30
|
+
Math.abs(gestures.x.get()) <= EPSILON &&
|
|
31
|
+
Math.abs(gestures.y.get()) <= EPSILON &&
|
|
32
|
+
Math.abs(gestures.normX.get()) <= EPSILON &&
|
|
33
|
+
Math.abs(gestures.normY.get()) <= EPSILON,
|
|
34
|
+
);
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
export const resetPanGestureValues = ({
|
|
38
|
+
spec,
|
|
39
|
+
gestures,
|
|
40
|
+
shouldDismiss,
|
|
41
|
+
velocityX,
|
|
42
|
+
velocityY,
|
|
43
|
+
velocityNormX,
|
|
44
|
+
velocityNormY,
|
|
45
|
+
resetNormalizedValues = true,
|
|
46
|
+
resetNormalizedValuesImmediately = false,
|
|
47
|
+
preserveRawValues = shouldDismiss,
|
|
48
|
+
}: ResetPanGestureValuesProps) => {
|
|
49
|
+
"worklet";
|
|
50
|
+
|
|
51
|
+
if (!preserveRawValues) {
|
|
52
|
+
gestures.raw.x.set(0);
|
|
53
|
+
gestures.raw.y.set(0);
|
|
54
|
+
gestures.raw.normX.set(0);
|
|
55
|
+
gestures.raw.normY.set(0);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
gestures.dragging.set(FALSE);
|
|
59
|
+
gestures.dismissing.set(shouldDismiss ? TRUE : FALSE);
|
|
60
|
+
gestures.settling.set(shouldDismiss ? FALSE : TRUE);
|
|
61
|
+
|
|
62
|
+
animateResetValue(gestures.x, 0, getGestureResetSpec(spec, velocityX), () =>
|
|
63
|
+
clearPanSettlingIfResting(gestures),
|
|
64
|
+
);
|
|
65
|
+
animateResetValue(gestures.y, 0, getGestureResetSpec(spec, velocityY), () =>
|
|
66
|
+
clearPanSettlingIfResting(gestures),
|
|
67
|
+
);
|
|
68
|
+
|
|
69
|
+
if (!resetNormalizedValues) {
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
if (resetNormalizedValuesImmediately) {
|
|
74
|
+
gestures.normX.set(0);
|
|
75
|
+
gestures.normY.set(0);
|
|
76
|
+
clearPanSettlingIfResting(gestures);
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
animateResetValue(
|
|
81
|
+
gestures.normX,
|
|
82
|
+
0,
|
|
83
|
+
getGestureResetSpec(spec, velocityNormX),
|
|
84
|
+
() => clearPanSettlingIfResting(gestures),
|
|
85
|
+
);
|
|
86
|
+
animateResetValue(
|
|
87
|
+
gestures.normY,
|
|
88
|
+
0,
|
|
89
|
+
getGestureResetSpec(spec, velocityNormY),
|
|
90
|
+
() => clearPanSettlingIfResting(gestures),
|
|
91
|
+
);
|
|
92
|
+
};
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { useCallback } from "react";
|
|
2
|
+
import type { SharedValue } from "react-native-reanimated";
|
|
3
|
+
import { useNavigationHelpers } from "../../../../hooks/navigation/use-navigation-helpers";
|
|
4
|
+
import type { ScreenOptionsContextValue } from "../../options";
|
|
5
|
+
import { usePanGestureSensitivity } from "../hooks/use-gesture-sensitivity";
|
|
6
|
+
import { resolvePanRuntime } from "../shared/runtime";
|
|
7
|
+
import type {
|
|
8
|
+
GestureDimensions,
|
|
9
|
+
PanBehavior,
|
|
10
|
+
PanGestureEvent,
|
|
11
|
+
PanGestureRuntime,
|
|
12
|
+
} from "../types";
|
|
13
|
+
import {
|
|
14
|
+
finalizePanRelease,
|
|
15
|
+
startPanBase,
|
|
16
|
+
trackPanGesture,
|
|
17
|
+
} from "./pan-lifecycle";
|
|
18
|
+
import {
|
|
19
|
+
primeSnapPanRelease,
|
|
20
|
+
resolvePanRelease,
|
|
21
|
+
resolveSnapPanRelease,
|
|
22
|
+
} from "./pan-release";
|
|
23
|
+
|
|
24
|
+
export const usePanBehavior = (
|
|
25
|
+
runtime: SharedValue<PanGestureRuntime>,
|
|
26
|
+
screenOptions: ScreenOptionsContextValue,
|
|
27
|
+
dimensions: GestureDimensions,
|
|
28
|
+
): PanBehavior => {
|
|
29
|
+
const { dismissScreen } = useNavigationHelpers();
|
|
30
|
+
const { withSensitivity, resetSensitivity } =
|
|
31
|
+
usePanGestureSensitivity(screenOptions);
|
|
32
|
+
|
|
33
|
+
const onStart = useCallback(() => {
|
|
34
|
+
"worklet";
|
|
35
|
+
const latestRuntime = resolvePanRuntime(runtime.get(), screenOptions.get());
|
|
36
|
+
if (latestRuntime.participation.effectiveSnapPoints.hasSnapPoints) {
|
|
37
|
+
primeSnapPanRelease(latestRuntime);
|
|
38
|
+
}
|
|
39
|
+
startPanBase(latestRuntime);
|
|
40
|
+
resetSensitivity();
|
|
41
|
+
}, [runtime, screenOptions, resetSensitivity]);
|
|
42
|
+
|
|
43
|
+
const onUpdate = useCallback(
|
|
44
|
+
(rawEvent: PanGestureEvent) => {
|
|
45
|
+
"worklet";
|
|
46
|
+
const latestRuntime = resolvePanRuntime(
|
|
47
|
+
runtime.get(),
|
|
48
|
+
screenOptions.get(),
|
|
49
|
+
);
|
|
50
|
+
const event = withSensitivity(rawEvent);
|
|
51
|
+
trackPanGesture(
|
|
52
|
+
event,
|
|
53
|
+
rawEvent,
|
|
54
|
+
latestRuntime.stores.gestures,
|
|
55
|
+
dimensions,
|
|
56
|
+
);
|
|
57
|
+
},
|
|
58
|
+
[runtime, screenOptions, dimensions, withSensitivity],
|
|
59
|
+
);
|
|
60
|
+
|
|
61
|
+
const onEnd = useCallback(
|
|
62
|
+
(rawEvent: PanGestureEvent) => {
|
|
63
|
+
"worklet";
|
|
64
|
+
const latestRuntime = resolvePanRuntime(
|
|
65
|
+
runtime.get(),
|
|
66
|
+
screenOptions.get(),
|
|
67
|
+
);
|
|
68
|
+
const event = withSensitivity(rawEvent);
|
|
69
|
+
const release = latestRuntime.participation.effectiveSnapPoints
|
|
70
|
+
.hasSnapPoints
|
|
71
|
+
? resolveSnapPanRelease(event, latestRuntime, dimensions)
|
|
72
|
+
: resolvePanRelease(event, latestRuntime, dimensions);
|
|
73
|
+
finalizePanRelease(
|
|
74
|
+
release,
|
|
75
|
+
latestRuntime,
|
|
76
|
+
dismissScreen,
|
|
77
|
+
dimensions,
|
|
78
|
+
rawEvent,
|
|
79
|
+
);
|
|
80
|
+
},
|
|
81
|
+
[runtime, screenOptions, dimensions, dismissScreen, withSensitivity],
|
|
82
|
+
);
|
|
83
|
+
|
|
84
|
+
return {
|
|
85
|
+
onStart,
|
|
86
|
+
onUpdate,
|
|
87
|
+
onEnd,
|
|
88
|
+
};
|
|
89
|
+
};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { useMemo } from "react";
|
|
2
|
+
import { Gesture } from "react-native-gesture-handler";
|
|
3
|
+
import { useScreenOptionsContext } from "../../options";
|
|
4
|
+
import { useGestureBuilderState } from "../hooks/use-gesture-builder-state";
|
|
5
|
+
import { useStableRuntimeConfig } from "../hooks/use-stable-runtime-config";
|
|
6
|
+
import type { PinchGesture, ScreenGestureConfig } from "../types";
|
|
7
|
+
import { usePinchActivation } from "./pinch-activation";
|
|
8
|
+
import { usePinchBehavior } from "./use-pinch-behavior";
|
|
9
|
+
|
|
10
|
+
interface BuildPinchGestureHookProps {
|
|
11
|
+
gestureConfig: ScreenGestureConfig;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export const useBuildPinchGesture = ({
|
|
15
|
+
gestureConfig,
|
|
16
|
+
}: BuildPinchGestureHookProps): PinchGesture => {
|
|
17
|
+
const { participation, pinch: policy } = gestureConfig;
|
|
18
|
+
const screenOptions = useScreenOptionsContext();
|
|
19
|
+
const { gestureProgressBaseline, lockedSnapPoint } =
|
|
20
|
+
useGestureBuilderState(participation);
|
|
21
|
+
|
|
22
|
+
const runtime = useStableRuntimeConfig({
|
|
23
|
+
participation,
|
|
24
|
+
policy,
|
|
25
|
+
gestureProgressBaseline,
|
|
26
|
+
lockedSnapPoint,
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
const activation = usePinchActivation({
|
|
30
|
+
runtime,
|
|
31
|
+
screenOptions,
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
const behavior = usePinchBehavior(runtime, screenOptions);
|
|
35
|
+
|
|
36
|
+
const pinchGesture = useMemo(() => {
|
|
37
|
+
return Gesture.Pinch()
|
|
38
|
+
.enabled(true)
|
|
39
|
+
.manualActivation(true)
|
|
40
|
+
.onTouchesDown(activation.onTouchesDown)
|
|
41
|
+
.onTouchesMove(activation.onTouchesMove)
|
|
42
|
+
.onStart(behavior.onStart)
|
|
43
|
+
.onUpdate(behavior.onUpdate)
|
|
44
|
+
.onEnd(behavior.onEnd);
|
|
45
|
+
}, [activation, behavior]);
|
|
46
|
+
|
|
47
|
+
return pinchGesture;
|
|
48
|
+
};
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { useCallback } from "react";
|
|
2
|
+
import type {
|
|
3
|
+
GestureStateManager,
|
|
4
|
+
GestureTouchEvent,
|
|
5
|
+
} from "react-native-gesture-handler";
|
|
6
|
+
import type { SharedValue } from "react-native-reanimated";
|
|
7
|
+
import type { ScreenOptionsContextValue } from "../../options";
|
|
8
|
+
import { resolvePinchRuntime } from "../shared/runtime";
|
|
9
|
+
import type { PinchGestureRuntime } from "../types";
|
|
10
|
+
|
|
11
|
+
interface UsePinchActivationProps {
|
|
12
|
+
runtime: SharedValue<PinchGestureRuntime>;
|
|
13
|
+
screenOptions: ScreenOptionsContextValue;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export const usePinchActivation = ({
|
|
17
|
+
runtime,
|
|
18
|
+
screenOptions,
|
|
19
|
+
}: UsePinchActivationProps) => {
|
|
20
|
+
const onTouchesDown = useCallback(
|
|
21
|
+
(
|
|
22
|
+
event: GestureTouchEvent,
|
|
23
|
+
stateManager: GestureStateManager | undefined,
|
|
24
|
+
) => {
|
|
25
|
+
"worklet";
|
|
26
|
+
const { participation, policy } = resolvePinchRuntime(
|
|
27
|
+
runtime.get(),
|
|
28
|
+
screenOptions.get(),
|
|
29
|
+
);
|
|
30
|
+
|
|
31
|
+
if (!participation.canTrackGesture || !policy.enabled) {
|
|
32
|
+
stateManager?.fail();
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
if (event.numberOfTouches === 2) {
|
|
37
|
+
stateManager?.activate();
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
if (event.numberOfTouches > 2) {
|
|
42
|
+
stateManager?.fail();
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
[runtime, screenOptions],
|
|
46
|
+
);
|
|
47
|
+
|
|
48
|
+
const onTouchesMove = useCallback(
|
|
49
|
+
(event: GestureTouchEvent, stateManager: GestureStateManager) => {
|
|
50
|
+
"worklet";
|
|
51
|
+
const { participation, policy } = resolvePinchRuntime(
|
|
52
|
+
runtime.get(),
|
|
53
|
+
screenOptions.get(),
|
|
54
|
+
);
|
|
55
|
+
|
|
56
|
+
if (!participation.canTrackGesture || !policy.enabled) {
|
|
57
|
+
stateManager.fail();
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
if (event.numberOfTouches === 2) {
|
|
62
|
+
stateManager.activate();
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
stateManager.fail();
|
|
67
|
+
},
|
|
68
|
+
[runtime, screenOptions],
|
|
69
|
+
);
|
|
70
|
+
|
|
71
|
+
return { onTouchesDown, onTouchesMove };
|
|
72
|
+
};
|