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
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { useMemo } from "react";
|
|
2
1
|
import { useWindowDimensions } from "react-native";
|
|
3
2
|
import {
|
|
3
|
+
type DerivedValue,
|
|
4
4
|
type SharedValue,
|
|
5
|
-
|
|
5
|
+
useDerivedValue,
|
|
6
6
|
useSharedValue,
|
|
7
7
|
} from "react-native-reanimated";
|
|
8
8
|
import { useSafeAreaInsets } from "react-native-safe-area-context";
|
|
@@ -12,41 +12,50 @@ import type {
|
|
|
12
12
|
ScreenInterpolationProps,
|
|
13
13
|
ScreenStyleInterpolator,
|
|
14
14
|
} from "../../../../types/animation.types";
|
|
15
|
-
import type { BoundsAccessor } from "../../../../types/bounds.types";
|
|
16
15
|
|
|
17
|
-
import { createBoundsAccessor } from "../../../../utils/bounds";
|
|
18
16
|
import { useDescriptors } from "../../descriptors";
|
|
19
|
-
import {
|
|
17
|
+
import { updateDerivations } from "./derivations";
|
|
20
18
|
import { hasTransitionsEnabled } from "./has-transitions-enabled";
|
|
21
19
|
import { hydrateTransitionState } from "./hydrate-transition-state";
|
|
20
|
+
import type { SelectedInterpolatorOptions } from "./selected-interpolator-options";
|
|
22
21
|
import { useBuildTransitionState } from "./use-build-transition-state";
|
|
23
22
|
|
|
24
|
-
export type ScreenInterpolatorFrame = Omit<
|
|
23
|
+
export type ScreenInterpolatorFrame = Omit<
|
|
24
|
+
ScreenInterpolationProps,
|
|
25
|
+
"bounds" | "transition"
|
|
26
|
+
>;
|
|
25
27
|
|
|
26
28
|
interface ScreenAnimationPipeline {
|
|
27
29
|
screenInterpolatorProps: SharedValue<ScreenInterpolatorFrame>;
|
|
30
|
+
screenInterpolatorPropsRevision: DerivedValue<number>;
|
|
31
|
+
selectedInterpolatorOptions: SharedValue<SelectedInterpolatorOptions>;
|
|
28
32
|
nextInterpolator: ScreenStyleInterpolator | undefined;
|
|
29
33
|
currentInterpolator: ScreenStyleInterpolator | undefined;
|
|
30
|
-
boundsAccessor: BoundsAccessor;
|
|
31
34
|
}
|
|
32
35
|
|
|
33
36
|
const createInitialBaseInterpolatorProps = (
|
|
34
37
|
dimensions: ScreenInterpolatorFrame["layouts"]["screen"],
|
|
35
38
|
insets: ScreenInterpolatorFrame["insets"],
|
|
36
|
-
): ScreenInterpolatorFrame =>
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
39
|
+
): ScreenInterpolatorFrame => {
|
|
40
|
+
const current = {
|
|
41
|
+
...DEFAULT_SCREEN_TRANSITION_STATE,
|
|
42
|
+
layouts: { screen: dimensions, navigationMaskEnabled: false },
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
return {
|
|
46
|
+
layouts: current.layouts,
|
|
47
|
+
insets,
|
|
48
|
+
previous: undefined,
|
|
49
|
+
current,
|
|
50
|
+
next: undefined,
|
|
51
|
+
progress: 0,
|
|
52
|
+
stackProgress: 0,
|
|
53
|
+
logicallySettled: 1,
|
|
54
|
+
focused: true,
|
|
55
|
+
active: current,
|
|
56
|
+
inactive: undefined,
|
|
57
|
+
};
|
|
58
|
+
};
|
|
50
59
|
|
|
51
60
|
export function useScreenAnimationPipeline(): ScreenAnimationPipeline {
|
|
52
61
|
const { flags, stackProgress: rootStackProgress, routeKeys } = useStack();
|
|
@@ -60,9 +69,9 @@ export function useScreenAnimationPipeline(): ScreenAnimationPipeline {
|
|
|
60
69
|
previous: prevDescriptor,
|
|
61
70
|
} = useDescriptors();
|
|
62
71
|
|
|
63
|
-
const currentAnimation = useBuildTransitionState(currDescriptor
|
|
64
|
-
const nextAnimation = useBuildTransitionState(nextDescriptor
|
|
65
|
-
const prevAnimation = useBuildTransitionState(prevDescriptor
|
|
72
|
+
const currentAnimation = useBuildTransitionState(currDescriptor);
|
|
73
|
+
const nextAnimation = useBuildTransitionState(nextDescriptor);
|
|
74
|
+
const prevAnimation = useBuildTransitionState(prevDescriptor);
|
|
66
75
|
|
|
67
76
|
const currentRouteKey = currDescriptor?.route?.key;
|
|
68
77
|
const currentIndex = routeKeys.indexOf(currentRouteKey);
|
|
@@ -72,102 +81,90 @@ export function useScreenAnimationPipeline(): ScreenAnimationPipeline {
|
|
|
72
81
|
!!nextRouteKey &&
|
|
73
82
|
hasTransitionsEnabled(nextDescriptor?.options, transitionsAlwaysOn);
|
|
74
83
|
|
|
75
|
-
const screenInterpolatorProps = useSharedValue
|
|
84
|
+
const screenInterpolatorProps = useSharedValue(
|
|
76
85
|
createInitialBaseInterpolatorProps(dimensions, insets),
|
|
77
86
|
);
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
"worklet";
|
|
82
|
-
return screenInterpolatorProps.get();
|
|
87
|
+
const selectedInterpolatorOptions =
|
|
88
|
+
useSharedValue<SelectedInterpolatorOptions>({
|
|
89
|
+
owner: "current",
|
|
83
90
|
});
|
|
84
|
-
}, [screenInterpolatorProps]);
|
|
85
91
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
92
|
+
const propsRevisionState = useSharedValue({ value: 0 });
|
|
93
|
+
const screenInterpolatorPropsRevision = useDerivedValue<number>(() => {
|
|
94
|
+
"worklet";
|
|
89
95
|
|
|
90
|
-
|
|
96
|
+
screenInterpolatorProps.modify((frame) => {
|
|
97
|
+
"worklet";
|
|
98
|
+
const interpolatorOptions = selectedInterpolatorOptions.get();
|
|
99
|
+
const shouldApplyOptionsToCurrent =
|
|
100
|
+
interpolatorOptions.owner === "current";
|
|
101
|
+
const shouldApplyOptionsToNext =
|
|
102
|
+
interpolatorOptions.owner === "next" &&
|
|
103
|
+
!!nextAnimation &&
|
|
104
|
+
nextHasTransitions;
|
|
105
|
+
|
|
106
|
+
frame.previous = prevAnimation
|
|
91
107
|
? hydrateTransitionState(prevAnimation, dimensions)
|
|
92
108
|
: undefined;
|
|
93
109
|
|
|
94
|
-
|
|
110
|
+
frame.current = currentAnimation
|
|
111
|
+
? hydrateTransitionState(
|
|
112
|
+
currentAnimation,
|
|
113
|
+
dimensions,
|
|
114
|
+
shouldApplyOptionsToCurrent
|
|
115
|
+
? interpolatorOptions.options
|
|
116
|
+
: undefined,
|
|
117
|
+
)
|
|
118
|
+
: DEFAULT_SCREEN_TRANSITION_STATE;
|
|
119
|
+
|
|
120
|
+
frame.next =
|
|
95
121
|
nextAnimation && nextHasTransitions
|
|
96
|
-
? hydrateTransitionState(
|
|
122
|
+
? hydrateTransitionState(
|
|
123
|
+
nextAnimation,
|
|
124
|
+
dimensions,
|
|
125
|
+
shouldApplyOptionsToNext
|
|
126
|
+
? interpolatorOptions.options
|
|
127
|
+
: undefined,
|
|
128
|
+
)
|
|
97
129
|
: undefined;
|
|
98
130
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
: DEFAULT_SCREEN_TRANSITION_STATE;
|
|
131
|
+
frame.layouts = frame.current.layouts;
|
|
132
|
+
frame.insets = insets;
|
|
102
133
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
next,
|
|
122
|
-
progress,
|
|
123
|
-
stackProgress,
|
|
124
|
-
snapIndex,
|
|
125
|
-
logicallySettled,
|
|
126
|
-
focused,
|
|
127
|
-
active,
|
|
128
|
-
inactive,
|
|
129
|
-
};
|
|
130
|
-
},
|
|
131
|
-
({
|
|
132
|
-
previous,
|
|
133
|
-
current,
|
|
134
|
-
next,
|
|
135
|
-
progress,
|
|
136
|
-
stackProgress,
|
|
137
|
-
snapIndex,
|
|
138
|
-
logicallySettled,
|
|
139
|
-
focused,
|
|
140
|
-
active,
|
|
141
|
-
inactive,
|
|
142
|
-
}) => {
|
|
134
|
+
updateDerivations(frame);
|
|
135
|
+
|
|
136
|
+
frame.stackProgress =
|
|
137
|
+
currentIndex >= 0
|
|
138
|
+
? rootStackProgress.get() - currentIndex
|
|
139
|
+
: frame.progress;
|
|
140
|
+
frame.logicallySettled = frame.active.logicallySettled;
|
|
141
|
+
|
|
142
|
+
return frame;
|
|
143
|
+
}, false);
|
|
144
|
+
|
|
145
|
+
// Critical reactive dependency for `screenInterpolatorProps`.
|
|
146
|
+
//
|
|
147
|
+
// `screenInterpolatorProps` is mutated in place to avoid allocating a large
|
|
148
|
+
// interpolator frame every tick. Consumers must read this revision before
|
|
149
|
+
// reading `screenInterpolatorProps`, otherwise Reanimated may not subscribe
|
|
150
|
+
// to frame updates and can observe stale transition state.
|
|
151
|
+
propsRevisionState.modify((revision) => {
|
|
143
152
|
"worklet";
|
|
153
|
+
revision.value += 1;
|
|
154
|
+
return revision;
|
|
155
|
+
}, false);
|
|
144
156
|
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
frame.layouts = current.layouts;
|
|
148
|
-
frame.insets = insets;
|
|
149
|
-
frame.previous = previous;
|
|
150
|
-
frame.current = current;
|
|
151
|
-
frame.next = next;
|
|
152
|
-
frame.progress = progress;
|
|
153
|
-
frame.stackProgress = stackProgress;
|
|
154
|
-
frame.snapIndex = snapIndex;
|
|
155
|
-
frame.logicallySettled = logicallySettled;
|
|
156
|
-
frame.focused = focused;
|
|
157
|
-
frame.active = active;
|
|
158
|
-
frame.inactive = inactive;
|
|
159
|
-
return frame;
|
|
160
|
-
});
|
|
161
|
-
},
|
|
162
|
-
);
|
|
157
|
+
return propsRevisionState.get().value;
|
|
158
|
+
});
|
|
163
159
|
|
|
164
160
|
const nextInterpolator = nextDescriptor?.options.screenStyleInterpolator;
|
|
165
161
|
const currentInterpolator = currDescriptor?.options.screenStyleInterpolator;
|
|
166
162
|
|
|
167
163
|
return {
|
|
168
164
|
screenInterpolatorProps,
|
|
165
|
+
screenInterpolatorPropsRevision,
|
|
166
|
+
selectedInterpolatorOptions,
|
|
169
167
|
nextInterpolator,
|
|
170
168
|
currentInterpolator,
|
|
171
|
-
boundsAccessor,
|
|
172
169
|
};
|
|
173
170
|
}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import type { SharedValue } from "react-native-reanimated";
|
|
2
|
+
import type { TransitionInterpolatorOptions } from "../../../../types/animation.types";
|
|
3
|
+
|
|
4
|
+
export type SelectedInterpolatorOwner = "current" | "next";
|
|
5
|
+
|
|
6
|
+
export type SelectedInterpolatorOptions = {
|
|
7
|
+
owner: SelectedInterpolatorOwner;
|
|
8
|
+
options?: TransitionInterpolatorOptions;
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
const areGestureDirectionsEqual = (
|
|
12
|
+
left: TransitionInterpolatorOptions["gestureDirection"],
|
|
13
|
+
right: TransitionInterpolatorOptions["gestureDirection"],
|
|
14
|
+
) => {
|
|
15
|
+
"worklet";
|
|
16
|
+
if (left === right) return true;
|
|
17
|
+
if (!Array.isArray(left) || !Array.isArray(right)) return false;
|
|
18
|
+
if (left.length !== right.length) return false;
|
|
19
|
+
|
|
20
|
+
for (let i = 0; i < left.length; i++) {
|
|
21
|
+
if (left[i] !== right[i]) {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
return true;
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
const areGestureActivationAreasEqual = (
|
|
30
|
+
left: TransitionInterpolatorOptions["gestureActivationArea"],
|
|
31
|
+
right: TransitionInterpolatorOptions["gestureActivationArea"],
|
|
32
|
+
) => {
|
|
33
|
+
"worklet";
|
|
34
|
+
if (left === right) return true;
|
|
35
|
+
|
|
36
|
+
if (
|
|
37
|
+
typeof left !== "object" ||
|
|
38
|
+
left === null ||
|
|
39
|
+
typeof right !== "object" ||
|
|
40
|
+
right === null
|
|
41
|
+
) {
|
|
42
|
+
return false;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
return (
|
|
46
|
+
left.left === right.left &&
|
|
47
|
+
left.right === right.right &&
|
|
48
|
+
left.top === right.top &&
|
|
49
|
+
left.bottom === right.bottom
|
|
50
|
+
);
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
const areInterpolatorOptionsEqual = (
|
|
54
|
+
left?: TransitionInterpolatorOptions,
|
|
55
|
+
right?: TransitionInterpolatorOptions,
|
|
56
|
+
) => {
|
|
57
|
+
"worklet";
|
|
58
|
+
if (left === right) return true;
|
|
59
|
+
if (!left || !right) return false;
|
|
60
|
+
|
|
61
|
+
return (
|
|
62
|
+
left.gestureEnabled === right.gestureEnabled &&
|
|
63
|
+
left.experimental_allowDisabledGestureTracking ===
|
|
64
|
+
right.experimental_allowDisabledGestureTracking &&
|
|
65
|
+
areGestureDirectionsEqual(left.gestureDirection, right.gestureDirection) &&
|
|
66
|
+
left.gestureSensitivity === right.gestureSensitivity &&
|
|
67
|
+
left.gestureVelocityImpact === right.gestureVelocityImpact &&
|
|
68
|
+
left.gestureSnapVelocityImpact === right.gestureSnapVelocityImpact &&
|
|
69
|
+
left.gestureReleaseVelocityScale === right.gestureReleaseVelocityScale &&
|
|
70
|
+
left.gestureResponseDistance === right.gestureResponseDistance &&
|
|
71
|
+
left.gestureProgressMode === right.gestureProgressMode &&
|
|
72
|
+
left.gestureDrivesProgress === right.gestureDrivesProgress &&
|
|
73
|
+
areGestureActivationAreasEqual(
|
|
74
|
+
left.gestureActivationArea,
|
|
75
|
+
right.gestureActivationArea,
|
|
76
|
+
) &&
|
|
77
|
+
left.gestureSnapLocked === right.gestureSnapLocked &&
|
|
78
|
+
left.sheetScrollGestureBehavior === right.sheetScrollGestureBehavior &&
|
|
79
|
+
left.backdropBehavior === right.backdropBehavior
|
|
80
|
+
);
|
|
81
|
+
};
|
|
82
|
+
|
|
83
|
+
export const syncSelectedInterpolatorOptions = (
|
|
84
|
+
state: SharedValue<SelectedInterpolatorOptions>,
|
|
85
|
+
owner: SelectedInterpolatorOwner,
|
|
86
|
+
options?: TransitionInterpolatorOptions,
|
|
87
|
+
) => {
|
|
88
|
+
"worklet";
|
|
89
|
+
const current = state.get();
|
|
90
|
+
|
|
91
|
+
if (
|
|
92
|
+
current.owner === owner &&
|
|
93
|
+
areInterpolatorOptionsEqual(current.options, options)
|
|
94
|
+
) {
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
state.set(options ? { owner, options } : { owner });
|
|
99
|
+
};
|
|
@@ -12,23 +12,27 @@ import type {
|
|
|
12
12
|
Layout,
|
|
13
13
|
ScreenTransitionState,
|
|
14
14
|
} from "../../../../types";
|
|
15
|
+
import type { ScreenTransitionOptions } from "../../../../types/animation.types";
|
|
15
16
|
import type { BaseDescriptor } from "../../descriptors";
|
|
17
|
+
import { buildScreenTransitionOptions } from "./build-screen-transition-options";
|
|
16
18
|
import { toPlainRoute, toPlainValue } from "./worklet";
|
|
17
19
|
|
|
18
20
|
type BuiltState = {
|
|
19
21
|
progress: SharedValue<number>;
|
|
20
22
|
willAnimate: SharedValue<number>;
|
|
21
23
|
closing: SharedValue<number>;
|
|
22
|
-
|
|
24
|
+
progressAnimating: SharedValue<number>;
|
|
23
25
|
entering: SharedValue<number>;
|
|
24
|
-
settled: SharedValue<number>;
|
|
25
|
-
logicallySettled: SharedValue<number>;
|
|
26
26
|
gesture: GestureStoreMap;
|
|
27
27
|
route: BaseStackRoute;
|
|
28
28
|
meta?: Record<string, unknown>;
|
|
29
|
+
options: ScreenTransitionOptions;
|
|
30
|
+
navigationMaskEnabled: boolean;
|
|
29
31
|
targetProgress: SharedValue<number>;
|
|
32
|
+
logicalSettleFrameCount: SharedValue<number>;
|
|
30
33
|
resolvedAutoSnapPoint: SharedValue<number>;
|
|
31
34
|
measuredContentLayout: SharedValue<Layout | null>;
|
|
35
|
+
contentLayoutSlot: Layout;
|
|
32
36
|
hasAutoSnapPoint: boolean;
|
|
33
37
|
sortedNumericSnapPoints: number[];
|
|
34
38
|
unwrapped: ScreenTransitionState;
|
|
@@ -36,20 +40,13 @@ type BuiltState = {
|
|
|
36
40
|
|
|
37
41
|
export const useBuildTransitionState = (
|
|
38
42
|
descriptor: BaseDescriptor | undefined,
|
|
39
|
-
slot: "current" | "next" | "previous",
|
|
40
43
|
): BuiltState | undefined => {
|
|
41
44
|
const key = descriptor?.route?.key;
|
|
42
45
|
const meta = descriptor?.options?.meta;
|
|
43
46
|
const route = descriptor?.route;
|
|
44
|
-
const gestureEnabled = descriptor?.options?.gestureEnabled;
|
|
45
47
|
const navigationMaskEnabled = !!descriptor?.options?.navigationMaskEnabled;
|
|
46
48
|
const snapPoints = descriptor?.options?.snapPoints;
|
|
47
49
|
|
|
48
|
-
const shouldUseNeutralNextGestures =
|
|
49
|
-
slot === "next" &&
|
|
50
|
-
gestureEnabled === false &&
|
|
51
|
-
(!snapPoints || snapPoints.length === 0);
|
|
52
|
-
|
|
53
50
|
return useMemo(() => {
|
|
54
51
|
if (!key || !route) return undefined;
|
|
55
52
|
|
|
@@ -62,36 +59,42 @@ export const useBuildTransitionState = (
|
|
|
62
59
|
.filter((p): p is number => typeof p === "number")
|
|
63
60
|
.sort((a, b) => a - b);
|
|
64
61
|
|
|
62
|
+
const transitionOptions = buildScreenTransitionOptions(descriptor.options);
|
|
63
|
+
|
|
65
64
|
return {
|
|
66
65
|
progress: AnimationStore.getValue(key, "progress"),
|
|
67
66
|
willAnimate: AnimationStore.getValue(key, "willAnimate"),
|
|
68
67
|
closing: AnimationStore.getValue(key, "closing"),
|
|
69
68
|
entering: AnimationStore.getValue(key, "entering"),
|
|
70
|
-
|
|
71
|
-
settled: AnimationStore.getValue(key, "settled"),
|
|
72
|
-
logicallySettled: AnimationStore.getValue(key, "logicallySettled"),
|
|
69
|
+
progressAnimating: AnimationStore.getValue(key, "progressAnimating"),
|
|
73
70
|
targetProgress: SystemStore.getValue(key, "targetProgress"),
|
|
71
|
+
logicalSettleFrameCount: SystemStore.getValue(
|
|
72
|
+
key,
|
|
73
|
+
"logicalSettleFrameCount",
|
|
74
|
+
),
|
|
74
75
|
resolvedAutoSnapPoint: SystemStore.getValue(key, "resolvedAutoSnapPoint"),
|
|
75
76
|
measuredContentLayout: SystemStore.getValue(key, "measuredContentLayout"),
|
|
77
|
+
contentLayoutSlot: { width: 0, height: 0 },
|
|
76
78
|
hasAutoSnapPoint: snapPoints?.includes("auto") ?? false,
|
|
77
79
|
sortedNumericSnapPoints,
|
|
78
|
-
gesture:
|
|
79
|
-
? (GestureStore.peekBag(key) ?? GestureStore.getCachedBag())
|
|
80
|
-
: GestureStore.getBag(key),
|
|
80
|
+
gesture: GestureStore.getBag(key),
|
|
81
81
|
route: plainRoute,
|
|
82
82
|
meta: plainMeta,
|
|
83
|
+
options: transitionOptions,
|
|
84
|
+
navigationMaskEnabled,
|
|
83
85
|
unwrapped: createScreenTransitionState(
|
|
84
86
|
plainRoute,
|
|
85
87
|
plainMeta,
|
|
86
88
|
navigationMaskEnabled,
|
|
89
|
+
transitionOptions,
|
|
87
90
|
),
|
|
88
91
|
};
|
|
89
92
|
}, [
|
|
90
93
|
key,
|
|
91
94
|
meta,
|
|
92
95
|
route,
|
|
93
|
-
shouldUseNeutralNextGestures,
|
|
94
96
|
snapPoints,
|
|
95
97
|
navigationMaskEnabled,
|
|
98
|
+
descriptor?.options,
|
|
96
99
|
]);
|
|
97
100
|
};
|
|
@@ -1,14 +1,44 @@
|
|
|
1
1
|
import type { SharedValue } from "react-native-reanimated";
|
|
2
|
+
import type { ScreenTransitionTarget } from "../../../types/animation.types";
|
|
2
3
|
import type { BoundsAccessor } from "../../../types/bounds.types";
|
|
3
4
|
import type { ScreenInterpolatorFrame } from "./helpers/pipeline";
|
|
4
5
|
|
|
5
|
-
export type
|
|
6
|
+
export type ScreenInterpolatorPropsRevision = Pick<SharedValue<number>, "get">;
|
|
7
|
+
|
|
8
|
+
export type ScreenAnimationLegacyTarget =
|
|
6
9
|
| "self"
|
|
7
10
|
| "parent"
|
|
8
11
|
| "root"
|
|
9
12
|
| { ancestor: number };
|
|
10
13
|
|
|
14
|
+
export type ScreenAnimationTarget =
|
|
15
|
+
| ScreenTransitionTarget
|
|
16
|
+
| ScreenAnimationLegacyTarget;
|
|
17
|
+
|
|
11
18
|
export type ScreenAnimationSource = {
|
|
12
19
|
screenInterpolatorProps: SharedValue<ScreenInterpolatorFrame>;
|
|
20
|
+
screenInterpolatorPropsRevision: ScreenInterpolatorPropsRevision;
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
export type ScreenAnimationTransitionSource = ScreenAnimationSource & {
|
|
13
24
|
boundsAccessor: BoundsAccessor;
|
|
14
25
|
};
|
|
26
|
+
|
|
27
|
+
export type ScreenAnimationDescendantSource = {
|
|
28
|
+
source: ScreenAnimationTransitionSource;
|
|
29
|
+
depth: number;
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
export type ScreenAnimationDescendantSources = SharedValue<
|
|
33
|
+
ScreenAnimationDescendantSource[]
|
|
34
|
+
>;
|
|
35
|
+
|
|
36
|
+
export type RegisterScreenAnimationDescendant = (
|
|
37
|
+
source: ScreenAnimationTransitionSource,
|
|
38
|
+
depth: number,
|
|
39
|
+
) => () => void;
|
|
40
|
+
|
|
41
|
+
export type ScreenAnimationAncestorDescendantRegistrar = {
|
|
42
|
+
register: RegisterScreenAnimationDescendant;
|
|
43
|
+
depth: number;
|
|
44
|
+
};
|
|
@@ -1,37 +1,111 @@
|
|
|
1
1
|
import { type DerivedValue, useDerivedValue } from "react-native-reanimated";
|
|
2
|
-
import type {
|
|
2
|
+
import type {
|
|
3
|
+
ScreenInterpolationProps,
|
|
4
|
+
ScreenTransitionTarget,
|
|
5
|
+
} from "../../../types/animation.types";
|
|
3
6
|
import { useScreenAnimationContext } from "./animation.provider";
|
|
4
|
-
import {
|
|
5
|
-
import type {
|
|
7
|
+
import { useBuildTransitionAccessor } from "./helpers/accessors/use-build-transition-accessor";
|
|
8
|
+
import type {
|
|
9
|
+
ScreenAnimationDescendantSources,
|
|
10
|
+
ScreenAnimationLegacyTarget,
|
|
11
|
+
ScreenAnimationSource,
|
|
12
|
+
ScreenAnimationTarget,
|
|
13
|
+
} from "./types";
|
|
6
14
|
|
|
7
15
|
export type { ScreenAnimationTarget } from "./types";
|
|
8
16
|
|
|
17
|
+
export function useScreenAnimation(): DerivedValue<ScreenInterpolationProps>;
|
|
18
|
+
export function useScreenAnimation(target: {
|
|
19
|
+
depth: 0;
|
|
20
|
+
}): DerivedValue<ScreenInterpolationProps>;
|
|
21
|
+
/** @deprecated Use `{ depth: 0 }`. */
|
|
22
|
+
export function useScreenAnimation(
|
|
23
|
+
target: "self",
|
|
24
|
+
): DerivedValue<ScreenInterpolationProps>;
|
|
25
|
+
export function useScreenAnimation(
|
|
26
|
+
target: ScreenTransitionTarget,
|
|
27
|
+
): DerivedValue<ScreenInterpolationProps | null>;
|
|
28
|
+
/** @deprecated Use `{ depth }`. */
|
|
29
|
+
export function useScreenAnimation(
|
|
30
|
+
target: Exclude<ScreenAnimationLegacyTarget, "self">,
|
|
31
|
+
): DerivedValue<ScreenInterpolationProps | null>;
|
|
9
32
|
export function useScreenAnimation(
|
|
10
33
|
target?: ScreenAnimationTarget,
|
|
11
|
-
):
|
|
34
|
+
):
|
|
35
|
+
| DerivedValue<ScreenInterpolationProps>
|
|
36
|
+
| DerivedValue<ScreenInterpolationProps | null> {
|
|
12
37
|
const {
|
|
13
|
-
|
|
14
|
-
boundsAccessor,
|
|
38
|
+
screenInterpolatorPropsRevision,
|
|
15
39
|
ancestorScreenAnimationSources,
|
|
40
|
+
descendantScreenAnimationSources,
|
|
16
41
|
} = useScreenAnimationContext();
|
|
17
|
-
|
|
18
|
-
const
|
|
42
|
+
const transition = useBuildTransitionAccessor();
|
|
43
|
+
const transitionTarget = normalizeScreenAnimationTarget(
|
|
19
44
|
target,
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
boundsAccessor,
|
|
23
|
-
},
|
|
24
|
-
ancestors: ancestorScreenAnimationSources,
|
|
25
|
-
});
|
|
45
|
+
ancestorScreenAnimationSources.length,
|
|
46
|
+
);
|
|
26
47
|
|
|
27
|
-
|
|
48
|
+
const animation = useDerivedValue<ScreenInterpolationProps | null>(() => {
|
|
28
49
|
"worklet";
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
};
|
|
50
|
+
readScreenAnimationRevisions(
|
|
51
|
+
screenInterpolatorPropsRevision,
|
|
52
|
+
ancestorScreenAnimationSources,
|
|
53
|
+
descendantScreenAnimationSources,
|
|
54
|
+
);
|
|
55
|
+
return transition(transitionTarget);
|
|
36
56
|
});
|
|
57
|
+
|
|
58
|
+
return animation;
|
|
37
59
|
}
|
|
60
|
+
|
|
61
|
+
const readScreenAnimationRevisions = (
|
|
62
|
+
screenInterpolatorPropsRevision: DerivedValue<number>,
|
|
63
|
+
ancestorScreenAnimationSources: ScreenAnimationSource[],
|
|
64
|
+
descendantScreenAnimationSources: ScreenAnimationDescendantSources,
|
|
65
|
+
) => {
|
|
66
|
+
"worklet";
|
|
67
|
+
screenInterpolatorPropsRevision.get();
|
|
68
|
+
|
|
69
|
+
for (let index = 0; index < ancestorScreenAnimationSources.length; index++) {
|
|
70
|
+
ancestorScreenAnimationSources[
|
|
71
|
+
index
|
|
72
|
+
]?.screenInterpolatorPropsRevision.get();
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
// The accessor reads descendant sources through this shared value. Reading it
|
|
76
|
+
// here makes this derived value rerun when descendants mount or unmount.
|
|
77
|
+
descendantScreenAnimationSources.get();
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
const isTransitionTarget = (
|
|
81
|
+
target: ScreenAnimationTarget,
|
|
82
|
+
): target is ScreenTransitionTarget => {
|
|
83
|
+
return typeof target === "object" && target !== null && "depth" in target;
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
const normalizeScreenAnimationTarget = (
|
|
87
|
+
target: ScreenAnimationTarget | undefined,
|
|
88
|
+
ancestorCount: number,
|
|
89
|
+
): ScreenTransitionTarget | undefined => {
|
|
90
|
+
if (target === undefined || isTransitionTarget(target)) {
|
|
91
|
+
return target;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
if (target === "self") {
|
|
95
|
+
return { depth: 0 };
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
if (target === "parent") {
|
|
99
|
+
return { depth: -1 };
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
if (target === "root") {
|
|
103
|
+
return { depth: ancestorCount > 0 ? -ancestorCount : -1 };
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
if (!Number.isInteger(target.ancestor) || target.ancestor < 1) {
|
|
107
|
+
return { depth: Number.NaN };
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
return { depth: -target.ancestor };
|
|
111
|
+
};
|
|
@@ -5,7 +5,6 @@ import createProvider from "../../../utils/create-provider";
|
|
|
5
5
|
import type { DescriptorDerivations } from "./helpers/derive-descriptor-derivations";
|
|
6
6
|
import { deriveDescriptorDerivations } from "./helpers/derive-descriptor-derivations";
|
|
7
7
|
import { getAncestorKeys } from "./helpers/get-ancestor-keys";
|
|
8
|
-
import { getAncestorNavigatorKeys } from "./helpers/get-ancestor-navigator-keys";
|
|
9
8
|
|
|
10
9
|
/**
|
|
11
10
|
* Base descriptor interface - minimal contract for all stack types.
|
|
@@ -58,10 +57,6 @@ const {
|
|
|
58
57
|
DescriptorDerivationsContextValue
|
|
59
58
|
>(({ previous, current, next, children }) => {
|
|
60
59
|
const ancestorKeys = useMemo(() => getAncestorKeys(current), [current]);
|
|
61
|
-
const ancestorNavigatorKeys = useMemo(
|
|
62
|
-
() => getAncestorNavigatorKeys(current),
|
|
63
|
-
[current],
|
|
64
|
-
);
|
|
65
60
|
|
|
66
61
|
const value = useMemo(
|
|
67
62
|
() =>
|
|
@@ -70,9 +65,8 @@ const {
|
|
|
70
65
|
current,
|
|
71
66
|
next,
|
|
72
67
|
ancestorKeys,
|
|
73
|
-
ancestorNavigatorKeys,
|
|
74
68
|
}),
|
|
75
|
-
[previous, current, next, ancestorKeys
|
|
69
|
+
[previous, current, next, ancestorKeys],
|
|
76
70
|
);
|
|
77
71
|
|
|
78
72
|
return {
|