react-native-screen-transitions 4.0.0-alpha.2 → 4.0.0-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/adapters/with-screen-transitions/context.js +4 -0
- package/lib/commonjs/adapters/with-screen-transitions/context.js.map +1 -1
- package/lib/commonjs/adapters/with-screen-transitions/stack-layout.js +14 -8
- package/lib/commonjs/adapters/with-screen-transitions/stack-layout.js.map +1 -1
- package/lib/commonjs/animation/snap-to.js +1 -0
- package/lib/commonjs/animation/snap-to.js.map +1 -1
- package/lib/commonjs/components/activity/variants/activity-screen.js +26 -10
- package/lib/commonjs/components/activity/variants/activity-screen.js.map +1 -1
- package/lib/commonjs/components/boundary/components/boundary-target.js +1 -1
- package/lib/commonjs/components/boundary/components/boundary-target.js.map +1 -1
- package/lib/commonjs/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js +18 -7
- package/lib/commonjs/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js.map +1 -1
- package/lib/commonjs/components/boundary/hooks/lifecycles/use-refresh-boundary.js +5 -12
- package/lib/commonjs/components/boundary/hooks/lifecycles/use-refresh-boundary.js.map +1 -1
- package/lib/commonjs/components/boundary/hooks/use-measurer.js +6 -13
- package/lib/commonjs/components/boundary/hooks/use-measurer.js.map +1 -1
- package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js +67 -0
- package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js.map +1 -0
- package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +44 -37
- package/lib/commonjs/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -1
- package/lib/commonjs/components/boundary/portal/components/boundary-portal/components/host.js +2 -2
- package/lib/commonjs/components/boundary/portal/components/boundary-portal/components/host.js.map +1 -1
- package/lib/commonjs/components/boundary/portal/components/boundary-portal/helpers/active-pair.js +30 -0
- package/lib/commonjs/components/boundary/portal/components/boundary-portal/helpers/active-pair.js.map +1 -0
- package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js +75 -0
- package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js.map +1 -0
- package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +17 -32
- package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -1
- package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js +10 -19
- package/lib/commonjs/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js.map +1 -1
- package/lib/commonjs/components/boundary/portal/utils/naming.js +8 -1
- package/lib/commonjs/components/boundary/portal/utils/naming.js.map +1 -1
- package/lib/commonjs/components/boundary/providers/boundary-root.provider.js +4 -5
- package/lib/commonjs/components/boundary/providers/boundary-root.provider.js.map +1 -1
- package/lib/commonjs/components/boundary/utils/measured-bounds.js +19 -31
- package/lib/commonjs/components/boundary/utils/measured-bounds.js.map +1 -1
- package/lib/commonjs/components/boundary/utils/refresh-signals.js +14 -20
- package/lib/commonjs/components/boundary/utils/refresh-signals.js.map +1 -1
- package/lib/commonjs/components/create-transition-aware-component.js +9 -30
- package/lib/commonjs/components/create-transition-aware-component.js.map +1 -1
- package/lib/commonjs/components/screen-container/hooks/use-backdrop-pointer-events.js +5 -9
- package/lib/commonjs/components/screen-container/hooks/use-backdrop-pointer-events.js.map +1 -1
- package/lib/commonjs/components/screen-container/hooks/use-content-layout.js +3 -8
- package/lib/commonjs/components/screen-container/hooks/use-content-layout.js.map +1 -1
- package/lib/commonjs/components/screen-container/layers/backdrop.js +7 -10
- package/lib/commonjs/components/screen-container/layers/backdrop.js.map +1 -1
- package/lib/commonjs/components/screen-container/layers/content.js +10 -16
- package/lib/commonjs/components/screen-container/layers/content.js.map +1 -1
- package/lib/commonjs/components/screen-container/layers/surface-container.js +1 -5
- package/lib/commonjs/components/screen-container/layers/surface-container.js.map +1 -1
- package/lib/commonjs/components/screen-lifecycle/hooks/use-close-transition-intent.js +10 -12
- package/lib/commonjs/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
- package/lib/commonjs/components/screen-lifecycle/hooks/use-open-transition-intent.js +2 -3
- package/lib/commonjs/components/screen-lifecycle/hooks/use-open-transition-intent.js.map +1 -1
- package/lib/commonjs/components/screen-lifecycle/hooks/use-transition-start-controller.js +5 -1
- package/lib/commonjs/components/screen-lifecycle/hooks/use-transition-start-controller.js.map +1 -1
- package/lib/commonjs/components/screen-lifecycle/index.js +2 -4
- package/lib/commonjs/components/screen-lifecycle/index.js.map +1 -1
- package/lib/commonjs/components/stack-view.js +69 -35
- package/lib/commonjs/components/stack-view.js.map +1 -1
- package/lib/commonjs/configs/presets.js +10 -10
- package/lib/commonjs/configs/presets.js.map +1 -1
- package/lib/commonjs/constants.js +1 -0
- package/lib/commonjs/constants.js.map +1 -1
- package/lib/commonjs/hooks/navigation/use-navigation-helpers.js +9 -8
- package/lib/commonjs/hooks/navigation/use-navigation-helpers.js.map +1 -1
- package/lib/commonjs/hooks/navigation/use-screen-state.js +1 -3
- package/lib/commonjs/hooks/navigation/use-screen-state.js.map +1 -1
- package/lib/commonjs/providers/screen/animation/animation.provider.js +7 -7
- package/lib/commonjs/providers/screen/animation/animation.provider.js.map +1 -1
- package/lib/commonjs/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js +1 -3
- package/lib/commonjs/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js.map +1 -1
- package/lib/commonjs/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +1 -1
- package/lib/commonjs/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -1
- package/lib/commonjs/providers/screen/animation/helpers/hydrate-transition-state/index.js +4 -10
- package/lib/commonjs/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
- package/lib/commonjs/providers/screen/animation/helpers/pipeline.js +5 -7
- package/lib/commonjs/providers/screen/animation/helpers/pipeline.js.map +1 -1
- package/lib/commonjs/providers/screen/animation/index.js +2 -2
- package/lib/commonjs/providers/screen/animation/use-screen-animation.js +1 -1
- package/lib/commonjs/providers/screen/animation/use-screen-animation.js.map +1 -1
- package/lib/commonjs/providers/screen/descriptors/descriptors.provider.js +34 -42
- package/lib/commonjs/providers/screen/descriptors/descriptors.provider.js.map +1 -1
- package/lib/commonjs/providers/screen/descriptors/index.js +0 -12
- package/lib/commonjs/providers/screen/descriptors/index.js.map +1 -1
- package/lib/commonjs/providers/screen/gestures/gestures.provider.js +7 -7
- package/lib/commonjs/providers/screen/gestures/gestures.provider.js.map +1 -1
- package/lib/commonjs/providers/screen/gestures/hooks/use-screen-gesture-config.js +3 -9
- package/lib/commonjs/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -1
- package/lib/commonjs/providers/screen/gestures/hooks/use-screen-gesture.js +1 -1
- package/lib/commonjs/providers/screen/gestures/hooks/use-screen-gesture.js.map +1 -1
- package/lib/commonjs/providers/screen/gestures/hooks/use-stable-runtime-config.js +1 -3
- package/lib/commonjs/providers/screen/gestures/hooks/use-stable-runtime-config.js.map +1 -1
- package/lib/commonjs/providers/screen/gestures/index.js +2 -2
- package/lib/commonjs/providers/screen/gestures/ownership/shadowing-claims.js +2 -2
- package/lib/commonjs/providers/screen/gestures/ownership/shadowing-claims.js.map +1 -1
- package/lib/commonjs/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +8 -11
- package/lib/commonjs/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -1
- package/lib/commonjs/providers/screen/gestures/pan/activation/use-pan-activation.js +2 -4
- package/lib/commonjs/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
- package/lib/commonjs/providers/screen/gestures/pan/behavior/pan-lifecycle.js +5 -8
- package/lib/commonjs/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
- package/lib/commonjs/providers/screen/gestures/pan/behavior/pan-reset.js +10 -0
- package/lib/commonjs/providers/screen/gestures/pan/behavior/pan-reset.js.map +1 -1
- package/lib/commonjs/providers/screen/gestures/pan/use-build-pan-gesture.js +1 -1
- package/lib/commonjs/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
- package/lib/commonjs/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +8 -6
- package/lib/commonjs/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
- package/lib/commonjs/providers/screen/gestures/pinch/behavior/pinch-reset.js +7 -0
- package/lib/commonjs/providers/screen/gestures/pinch/behavior/pinch-reset.js.map +1 -1
- package/lib/commonjs/providers/screen/gestures/pinch/use-build-pinch-gesture.js +1 -1
- package/lib/commonjs/providers/screen/gestures/pinch/use-build-pinch-gesture.js.map +1 -1
- package/lib/commonjs/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js +5 -5
- package/lib/commonjs/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js.map +1 -1
- package/lib/commonjs/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js +2 -2
- package/lib/commonjs/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
- package/lib/commonjs/providers/screen/options/index.js +2 -2
- package/lib/commonjs/providers/screen/options/options.provider.js +4 -8
- package/lib/commonjs/providers/screen/options/options.provider.js.map +1 -1
- package/lib/commonjs/providers/screen/screen-composer.js +2 -0
- package/lib/commonjs/providers/screen/screen-composer.js.map +1 -1
- package/lib/commonjs/providers/screen/styles/constants.js +10 -4
- package/lib/commonjs/providers/screen/styles/constants.js.map +1 -1
- package/lib/commonjs/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js +93 -0
- package/lib/commonjs/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js.map +1 -0
- package/lib/commonjs/providers/screen/styles/helpers/resolve-slot-styles/index.js +48 -5
- package/lib/commonjs/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
- package/lib/commonjs/providers/screen/styles/helpers/select-interpolator-frame.js +32 -0
- package/lib/commonjs/providers/screen/styles/helpers/select-interpolator-frame.js.map +1 -0
- package/lib/commonjs/providers/screen/styles/helpers/visibility-gate.js +14 -1
- package/lib/commonjs/providers/screen/styles/helpers/visibility-gate.js.map +1 -1
- package/lib/commonjs/providers/screen/styles/hooks/use-interpolated-style-maps.js +64 -40
- package/lib/commonjs/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
- package/lib/commonjs/providers/screen/styles/hooks/use-maybe-block-visibility.js +1 -3
- package/lib/commonjs/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
- package/lib/commonjs/providers/screen/styles/index.js +0 -6
- package/lib/commonjs/providers/screen/styles/index.js.map +1 -1
- package/lib/commonjs/providers/screen/styles/slot.provider.js +23 -19
- package/lib/commonjs/providers/screen/styles/slot.provider.js.map +1 -1
- package/lib/commonjs/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js +3 -11
- package/lib/commonjs/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js.map +1 -1
- package/lib/commonjs/providers/stack/blank-stack.provider.js +53 -49
- package/lib/commonjs/providers/stack/blank-stack.provider.js.map +1 -1
- package/lib/commonjs/providers/stack/core.provider.js +24 -45
- package/lib/commonjs/providers/stack/core.provider.js.map +1 -1
- package/lib/commonjs/providers/stack/direct.provider.js +46 -40
- package/lib/commonjs/providers/stack/direct.provider.js.map +1 -1
- package/lib/commonjs/stores/animation.store.js +19 -1
- package/lib/commonjs/stores/animation.store.js.map +1 -1
- package/lib/commonjs/types/stack.types.js.map +1 -1
- package/lib/commonjs/utils/animation/animate-to-progress.js +12 -11
- package/lib/commonjs/utils/animation/animate-to-progress.js.map +1 -1
- package/lib/commonjs/utils/bounds/helpers/create-bounds-accessor-core.js +6 -0
- package/lib/commonjs/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -1
- package/lib/commonjs/utils/create-provider.js +61 -75
- package/lib/commonjs/utils/create-provider.js.map +1 -1
- package/lib/module/adapters/with-screen-transitions/context.js +3 -0
- package/lib/module/adapters/with-screen-transitions/context.js.map +1 -1
- package/lib/module/adapters/with-screen-transitions/stack-layout.js +14 -8
- package/lib/module/adapters/with-screen-transitions/stack-layout.js.map +1 -1
- package/lib/module/animation/snap-to.js +1 -0
- package/lib/module/animation/snap-to.js.map +1 -1
- package/lib/module/components/activity/variants/activity-screen.js +26 -10
- package/lib/module/components/activity/variants/activity-screen.js.map +1 -1
- package/lib/module/components/boundary/components/boundary-target.js +2 -2
- package/lib/module/components/boundary/components/boundary-target.js.map +1 -1
- package/lib/module/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js +19 -7
- package/lib/module/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js.map +1 -1
- package/lib/module/components/boundary/hooks/lifecycles/use-refresh-boundary.js +5 -12
- package/lib/module/components/boundary/hooks/lifecycles/use-refresh-boundary.js.map +1 -1
- package/lib/module/components/boundary/hooks/use-measurer.js +7 -14
- package/lib/module/components/boundary/hooks/use-measurer.js.map +1 -1
- package/lib/module/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js +60 -0
- package/lib/module/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js.map +1 -0
- package/lib/module/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +44 -37
- package/lib/module/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -1
- package/lib/module/components/boundary/portal/components/boundary-portal/components/host.js +2 -2
- package/lib/module/components/boundary/portal/components/boundary-portal/components/host.js.map +1 -1
- package/lib/module/components/boundary/portal/components/boundary-portal/helpers/active-pair.js +25 -0
- package/lib/module/components/boundary/portal/components/boundary-portal/helpers/active-pair.js.map +1 -0
- package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js +70 -0
- package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js.map +1 -0
- package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +17 -32
- package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -1
- package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js +13 -22
- package/lib/module/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js.map +1 -1
- package/lib/module/components/boundary/portal/utils/naming.js +6 -0
- package/lib/module/components/boundary/portal/utils/naming.js.map +1 -1
- package/lib/module/components/boundary/providers/boundary-root.provider.js +3 -3
- package/lib/module/components/boundary/providers/boundary-root.provider.js.map +1 -1
- package/lib/module/components/boundary/utils/measured-bounds.js +17 -28
- package/lib/module/components/boundary/utils/measured-bounds.js.map +1 -1
- package/lib/module/components/boundary/utils/refresh-signals.js +14 -20
- package/lib/module/components/boundary/utils/refresh-signals.js.map +1 -1
- package/lib/module/components/create-transition-aware-component.js +10 -31
- package/lib/module/components/create-transition-aware-component.js.map +1 -1
- package/lib/module/components/screen-container/hooks/use-backdrop-pointer-events.js +8 -12
- package/lib/module/components/screen-container/hooks/use-backdrop-pointer-events.js.map +1 -1
- package/lib/module/components/screen-container/hooks/use-content-layout.js +4 -9
- package/lib/module/components/screen-container/hooks/use-content-layout.js.map +1 -1
- package/lib/module/components/screen-container/layers/backdrop.js +8 -11
- package/lib/module/components/screen-container/layers/backdrop.js.map +1 -1
- package/lib/module/components/screen-container/layers/content.js +12 -18
- package/lib/module/components/screen-container/layers/content.js.map +1 -1
- package/lib/module/components/screen-container/layers/surface-container.js +2 -6
- package/lib/module/components/screen-container/layers/surface-container.js.map +1 -1
- package/lib/module/components/screen-lifecycle/hooks/use-close-transition-intent.js +13 -15
- package/lib/module/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
- package/lib/module/components/screen-lifecycle/hooks/use-open-transition-intent.js +3 -4
- package/lib/module/components/screen-lifecycle/hooks/use-open-transition-intent.js.map +1 -1
- package/lib/module/components/screen-lifecycle/hooks/use-transition-start-controller.js +5 -1
- package/lib/module/components/screen-lifecycle/hooks/use-transition-start-controller.js.map +1 -1
- package/lib/module/components/screen-lifecycle/index.js +3 -5
- package/lib/module/components/screen-lifecycle/index.js.map +1 -1
- package/lib/module/components/stack-view.js +71 -37
- package/lib/module/components/stack-view.js.map +1 -1
- package/lib/module/configs/presets.js +10 -10
- package/lib/module/configs/presets.js.map +1 -1
- package/lib/module/constants.js +1 -0
- package/lib/module/constants.js.map +1 -1
- package/lib/module/hooks/navigation/use-navigation-helpers.js +9 -8
- package/lib/module/hooks/navigation/use-navigation-helpers.js.map +1 -1
- package/lib/module/hooks/navigation/use-screen-state.js +2 -4
- package/lib/module/hooks/navigation/use-screen-state.js.map +1 -1
- package/lib/module/providers/screen/animation/animation.provider.js +6 -5
- package/lib/module/providers/screen/animation/animation.provider.js.map +1 -1
- package/lib/module/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js +2 -4
- package/lib/module/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js.map +1 -1
- package/lib/module/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +2 -2
- package/lib/module/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -1
- package/lib/module/providers/screen/animation/helpers/hydrate-transition-state/index.js +4 -10
- package/lib/module/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
- package/lib/module/providers/screen/animation/helpers/pipeline.js +6 -8
- package/lib/module/providers/screen/animation/helpers/pipeline.js.map +1 -1
- package/lib/module/providers/screen/animation/index.js +1 -1
- package/lib/module/providers/screen/animation/index.js.map +1 -1
- package/lib/module/providers/screen/animation/use-screen-animation.js +2 -2
- package/lib/module/providers/screen/animation/use-screen-animation.js.map +1 -1
- package/lib/module/providers/screen/descriptors/descriptors.provider.js +34 -40
- package/lib/module/providers/screen/descriptors/descriptors.provider.js.map +1 -1
- package/lib/module/providers/screen/descriptors/index.js +1 -1
- package/lib/module/providers/screen/descriptors/index.js.map +1 -1
- package/lib/module/providers/screen/gestures/gestures.provider.js +6 -6
- package/lib/module/providers/screen/gestures/gestures.provider.js.map +1 -1
- package/lib/module/providers/screen/gestures/hooks/use-screen-gesture-config.js +5 -11
- package/lib/module/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -1
- package/lib/module/providers/screen/gestures/hooks/use-screen-gesture.js +2 -2
- package/lib/module/providers/screen/gestures/hooks/use-screen-gesture.js.map +1 -1
- package/lib/module/providers/screen/gestures/hooks/use-stable-runtime-config.js +2 -4
- package/lib/module/providers/screen/gestures/hooks/use-stable-runtime-config.js.map +1 -1
- package/lib/module/providers/screen/gestures/index.js +1 -1
- package/lib/module/providers/screen/gestures/index.js.map +1 -1
- package/lib/module/providers/screen/gestures/ownership/shadowing-claims.js +2 -2
- package/lib/module/providers/screen/gestures/ownership/shadowing-claims.js.map +1 -1
- package/lib/module/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +10 -13
- package/lib/module/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -1
- package/lib/module/providers/screen/gestures/pan/activation/use-pan-activation.js +3 -5
- package/lib/module/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
- package/lib/module/providers/screen/gestures/pan/behavior/pan-lifecycle.js +6 -9
- package/lib/module/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
- package/lib/module/providers/screen/gestures/pan/behavior/pan-reset.js +10 -0
- package/lib/module/providers/screen/gestures/pan/behavior/pan-reset.js.map +1 -1
- package/lib/module/providers/screen/gestures/pan/use-build-pan-gesture.js +2 -2
- package/lib/module/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
- package/lib/module/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +9 -7
- package/lib/module/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
- package/lib/module/providers/screen/gestures/pinch/behavior/pinch-reset.js +7 -0
- package/lib/module/providers/screen/gestures/pinch/behavior/pinch-reset.js.map +1 -1
- package/lib/module/providers/screen/gestures/pinch/use-build-pinch-gesture.js +2 -2
- package/lib/module/providers/screen/gestures/pinch/use-build-pinch-gesture.js.map +1 -1
- package/lib/module/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js +3 -3
- package/lib/module/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js.map +1 -1
- package/lib/module/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js +4 -4
- package/lib/module/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
- package/lib/module/providers/screen/options/index.js +1 -1
- package/lib/module/providers/screen/options/index.js.map +1 -1
- package/lib/module/providers/screen/options/options.provider.js +3 -7
- package/lib/module/providers/screen/options/options.provider.js.map +1 -1
- package/lib/module/providers/screen/screen-composer.js +2 -0
- package/lib/module/providers/screen/screen-composer.js.map +1 -1
- package/lib/module/providers/screen/styles/constants.js +8 -3
- package/lib/module/providers/screen/styles/constants.js.map +1 -1
- package/lib/module/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js +88 -0
- package/lib/module/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js.map +1 -0
- package/lib/module/providers/screen/styles/helpers/resolve-slot-styles/index.js +49 -6
- package/lib/module/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
- package/lib/module/providers/screen/styles/helpers/select-interpolator-frame.js +27 -0
- package/lib/module/providers/screen/styles/helpers/select-interpolator-frame.js.map +1 -0
- package/lib/module/providers/screen/styles/helpers/visibility-gate.js +12 -0
- package/lib/module/providers/screen/styles/helpers/visibility-gate.js.map +1 -1
- package/lib/module/providers/screen/styles/hooks/use-interpolated-style-maps.js +67 -43
- package/lib/module/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
- package/lib/module/providers/screen/styles/hooks/use-maybe-block-visibility.js +2 -4
- package/lib/module/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
- package/lib/module/providers/screen/styles/index.js +1 -1
- package/lib/module/providers/screen/styles/index.js.map +1 -1
- package/lib/module/providers/screen/styles/slot.provider.js +23 -18
- package/lib/module/providers/screen/styles/slot.provider.js.map +1 -1
- package/lib/module/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js +3 -11
- package/lib/module/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js.map +1 -1
- package/lib/module/providers/stack/blank-stack.provider.js +50 -47
- package/lib/module/providers/stack/blank-stack.provider.js.map +1 -1
- package/lib/module/providers/stack/core.provider.js +22 -43
- package/lib/module/providers/stack/core.provider.js.map +1 -1
- package/lib/module/providers/stack/direct.provider.js +44 -41
- package/lib/module/providers/stack/direct.provider.js.map +1 -1
- package/lib/module/stores/animation.store.js +17 -0
- package/lib/module/stores/animation.store.js.map +1 -1
- package/lib/module/types/stack.types.js.map +1 -1
- package/lib/module/utils/animation/animate-to-progress.js +12 -11
- package/lib/module/utils/animation/animate-to-progress.js.map +1 -1
- package/lib/module/utils/bounds/helpers/create-bounds-accessor-core.js +6 -0
- package/lib/module/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -1
- package/lib/module/utils/create-provider.js +62 -76
- package/lib/module/utils/create-provider.js.map +1 -1
- package/lib/typescript/adapters/with-screen-transitions/context.d.ts +2 -0
- package/lib/typescript/adapters/with-screen-transitions/context.d.ts.map +1 -1
- package/lib/typescript/adapters/with-screen-transitions/stack-layout.d.ts +1 -1
- package/lib/typescript/adapters/with-screen-transitions/stack-layout.d.ts.map +1 -1
- package/lib/typescript/animation/snap-to.d.ts.map +1 -1
- package/lib/typescript/components/activity/variants/activity-screen.d.ts +3 -2
- package/lib/typescript/components/activity/variants/activity-screen.d.ts.map +1 -1
- package/lib/typescript/components/boundary/hooks/lifecycles/use-initial-destination-measurement.d.ts.map +1 -1
- package/lib/typescript/components/boundary/hooks/lifecycles/use-refresh-boundary.d.ts.map +1 -1
- package/lib/typescript/components/boundary/hooks/use-measurer.d.ts +1 -1
- package/lib/typescript/components/boundary/hooks/use-measurer.d.ts.map +1 -1
- package/lib/typescript/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.d.ts +26 -0
- package/lib/typescript/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.d.ts.map +1 -0
- package/lib/typescript/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.d.ts.map +1 -1
- package/lib/typescript/components/boundary/portal/components/boundary-portal/components/host.d.ts.map +1 -1
- package/lib/typescript/components/boundary/portal/components/boundary-portal/helpers/active-pair.d.ts +9 -0
- package/lib/typescript/components/boundary/portal/components/boundary-portal/helpers/active-pair.d.ts.map +1 -0
- package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.d.ts +17 -0
- package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.d.ts.map +1 -0
- package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.d.ts.map +1 -1
- package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.d.ts +0 -1
- package/lib/typescript/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.d.ts.map +1 -1
- package/lib/typescript/components/boundary/portal/utils/naming.d.ts +1 -0
- package/lib/typescript/components/boundary/portal/utils/naming.d.ts.map +1 -1
- package/lib/typescript/components/boundary/providers/boundary-root.provider.d.ts +1 -1
- package/lib/typescript/components/boundary/providers/boundary-root.provider.d.ts.map +1 -1
- package/lib/typescript/components/boundary/utils/measured-bounds.d.ts +1 -3
- package/lib/typescript/components/boundary/utils/measured-bounds.d.ts.map +1 -1
- package/lib/typescript/components/boundary/utils/refresh-signals.d.ts +0 -4
- package/lib/typescript/components/boundary/utils/refresh-signals.d.ts.map +1 -1
- package/lib/typescript/components/create-transition-aware-component.d.ts +0 -2
- package/lib/typescript/components/create-transition-aware-component.d.ts.map +1 -1
- package/lib/typescript/components/screen-container/hooks/use-backdrop-pointer-events.d.ts.map +1 -1
- package/lib/typescript/components/screen-container/hooks/use-content-layout.d.ts.map +1 -1
- package/lib/typescript/components/screen-container/layers/backdrop.d.ts.map +1 -1
- package/lib/typescript/components/screen-container/layers/content.d.ts.map +1 -1
- package/lib/typescript/components/screen-lifecycle/hooks/use-close-transition-intent.d.ts.map +1 -1
- package/lib/typescript/components/screen-lifecycle/hooks/use-open-transition-intent.d.ts.map +1 -1
- package/lib/typescript/components/screen-lifecycle/hooks/use-transition-start-controller.d.ts.map +1 -1
- package/lib/typescript/components/screen-lifecycle/index.d.ts.map +1 -1
- package/lib/typescript/components/stack-view.d.ts +5 -1
- package/lib/typescript/components/stack-view.d.ts.map +1 -1
- package/lib/typescript/configs/index.d.ts +6 -6
- package/lib/typescript/configs/presets.d.ts +6 -6
- package/lib/typescript/configs/presets.d.ts.map +1 -1
- package/lib/typescript/constants.d.ts.map +1 -1
- package/lib/typescript/hooks/navigation/use-navigation-helpers.d.ts.map +1 -1
- package/lib/typescript/hooks/navigation/use-screen-state.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +10 -18
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/providers/screen/animation/animation.provider.d.ts +4 -1
- package/lib/typescript/providers/screen/animation/animation.provider.d.ts.map +1 -1
- package/lib/typescript/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.d.ts.map +1 -1
- package/lib/typescript/providers/screen/animation/helpers/hydrate-transition-state/index.d.ts.map +1 -1
- package/lib/typescript/providers/screen/animation/helpers/pipeline.d.ts.map +1 -1
- package/lib/typescript/providers/screen/animation/index.d.ts +1 -1
- package/lib/typescript/providers/screen/animation/index.d.ts.map +1 -1
- package/lib/typescript/providers/screen/descriptors/descriptors.provider.d.ts +10 -11
- package/lib/typescript/providers/screen/descriptors/descriptors.provider.d.ts.map +1 -1
- package/lib/typescript/providers/screen/descriptors/index.d.ts +1 -1
- package/lib/typescript/providers/screen/descriptors/index.d.ts.map +1 -1
- package/lib/typescript/providers/screen/gestures/gestures.provider.d.ts +4 -1
- package/lib/typescript/providers/screen/gestures/gestures.provider.d.ts.map +1 -1
- package/lib/typescript/providers/screen/gestures/hooks/use-screen-gesture-config.d.ts.map +1 -1
- package/lib/typescript/providers/screen/gestures/hooks/use-stable-runtime-config.d.ts.map +1 -1
- package/lib/typescript/providers/screen/gestures/index.d.ts +1 -1
- package/lib/typescript/providers/screen/gestures/index.d.ts.map +1 -1
- package/lib/typescript/providers/screen/gestures/ownership/shadowing-claims.d.ts +2 -3
- package/lib/typescript/providers/screen/gestures/ownership/shadowing-claims.d.ts.map +1 -1
- package/lib/typescript/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.d.ts.map +1 -1
- package/lib/typescript/providers/screen/gestures/pan/activation/use-pan-activation.d.ts.map +1 -1
- package/lib/typescript/providers/screen/gestures/pan/behavior/pan-lifecycle.d.ts.map +1 -1
- package/lib/typescript/providers/screen/gestures/pan/behavior/pan-reset.d.ts +4 -1
- package/lib/typescript/providers/screen/gestures/pan/behavior/pan-reset.d.ts.map +1 -1
- package/lib/typescript/providers/screen/gestures/pinch/behavior/pinch-lifecycle.d.ts.map +1 -1
- package/lib/typescript/providers/screen/gestures/pinch/behavior/pinch-reset.d.ts +3 -1
- package/lib/typescript/providers/screen/gestures/pinch/behavior/pinch-reset.d.ts.map +1 -1
- package/lib/typescript/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.d.ts +1 -1
- package/lib/typescript/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.d.ts.map +1 -1
- package/lib/typescript/providers/screen/options/index.d.ts +1 -1
- package/lib/typescript/providers/screen/options/index.d.ts.map +1 -1
- package/lib/typescript/providers/screen/options/options.provider.d.ts +4 -1
- package/lib/typescript/providers/screen/options/options.provider.d.ts.map +1 -1
- package/lib/typescript/providers/screen/screen-composer.d.ts +3 -2
- package/lib/typescript/providers/screen/screen-composer.d.ts.map +1 -1
- package/lib/typescript/providers/screen/styles/constants.d.ts +1 -0
- package/lib/typescript/providers/screen/styles/constants.d.ts.map +1 -1
- package/lib/typescript/providers/screen/styles/helpers/resolve-interpolator-style-handoff.d.ts +12 -0
- package/lib/typescript/providers/screen/styles/helpers/resolve-interpolator-style-handoff.d.ts.map +1 -0
- package/lib/typescript/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts +5 -3
- package/lib/typescript/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts.map +1 -1
- package/lib/typescript/providers/screen/styles/helpers/select-interpolator-frame.d.ts +4 -0
- package/lib/typescript/providers/screen/styles/helpers/select-interpolator-frame.d.ts.map +1 -0
- package/lib/typescript/providers/screen/styles/helpers/visibility-gate.d.ts +10 -0
- package/lib/typescript/providers/screen/styles/helpers/visibility-gate.d.ts.map +1 -1
- package/lib/typescript/providers/screen/styles/hooks/use-interpolated-style-maps.d.ts +10 -5
- package/lib/typescript/providers/screen/styles/hooks/use-interpolated-style-maps.d.ts.map +1 -1
- package/lib/typescript/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts +1 -1
- package/lib/typescript/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts.map +1 -1
- package/lib/typescript/providers/screen/styles/index.d.ts +1 -1
- package/lib/typescript/providers/screen/styles/index.d.ts.map +1 -1
- package/lib/typescript/providers/screen/styles/slot.provider.d.ts +4 -1
- package/lib/typescript/providers/screen/styles/slot.provider.d.ts.map +1 -1
- package/lib/typescript/providers/stack/blank-stack-state/helpers/build-blank-stack-state.d.ts.map +1 -1
- package/lib/typescript/providers/stack/blank-stack.provider.d.ts +12 -6
- package/lib/typescript/providers/stack/blank-stack.provider.d.ts.map +1 -1
- package/lib/typescript/providers/stack/core.provider.d.ts +10 -8
- package/lib/typescript/providers/stack/core.provider.d.ts.map +1 -1
- package/lib/typescript/providers/stack/direct.provider.d.ts +11 -4
- package/lib/typescript/providers/stack/direct.provider.d.ts.map +1 -1
- package/lib/typescript/stores/animation.store.d.ts +1 -0
- package/lib/typescript/stores/animation.store.d.ts.map +1 -1
- package/lib/typescript/types/blank-stack.types.d.ts +1 -4
- package/lib/typescript/types/blank-stack.types.d.ts.map +1 -1
- package/lib/typescript/types/gesture.types.d.ts +11 -0
- package/lib/typescript/types/gesture.types.d.ts.map +1 -1
- package/lib/typescript/types/providers/blank-stack-provider.types.d.ts +12 -20
- package/lib/typescript/types/providers/blank-stack-provider.types.d.ts.map +1 -1
- package/lib/typescript/types/providers/direct-stack.types.d.ts +2 -1
- package/lib/typescript/types/providers/direct-stack.types.d.ts.map +1 -1
- package/lib/typescript/types/screen.types.d.ts +0 -30
- package/lib/typescript/types/screen.types.d.ts.map +1 -1
- package/lib/typescript/types/stack.types.d.ts +2 -4
- package/lib/typescript/types/stack.types.d.ts.map +1 -1
- package/lib/typescript/utils/animation/animate-to-progress.d.ts +3 -2
- package/lib/typescript/utils/animation/animate-to-progress.d.ts.map +1 -1
- package/lib/typescript/utils/bounds/helpers/create-bounds-accessor-core.d.ts.map +1 -1
- package/lib/typescript/utils/create-provider.d.ts +17 -9
- package/lib/typescript/utils/create-provider.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/adapters/with-screen-transitions/context.tsx +5 -0
- package/src/adapters/with-screen-transitions/stack-layout.tsx +20 -7
- package/src/animation/snap-to.ts +1 -0
- package/src/components/activity/variants/activity-screen.tsx +46 -13
- package/src/components/boundary/components/boundary-target.tsx +2 -2
- package/src/components/boundary/hooks/lifecycles/use-initial-destination-measurement.ts +28 -14
- package/src/components/boundary/hooks/lifecycles/use-refresh-boundary.ts +7 -24
- package/src/components/boundary/hooks/use-measurer.ts +7 -16
- package/src/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.ts +103 -0
- package/src/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.ts +86 -61
- package/src/components/boundary/portal/components/boundary-portal/components/host.tsx +12 -14
- package/src/components/boundary/portal/components/boundary-portal/helpers/active-pair.ts +36 -0
- package/src/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.ts +114 -0
- package/src/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts +9 -46
- package/src/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.ts +13 -20
- package/src/components/boundary/portal/utils/naming.ts +11 -0
- package/src/components/boundary/providers/boundary-root.provider.tsx +8 -11
- package/src/components/boundary/utils/measured-bounds.ts +29 -32
- package/src/components/boundary/utils/refresh-signals.ts +23 -26
- package/src/components/create-transition-aware-component.tsx +11 -36
- package/src/components/screen-container/hooks/use-backdrop-pointer-events.ts +10 -8
- package/src/components/screen-container/hooks/use-content-layout.ts +10 -10
- package/src/components/screen-container/layers/backdrop.tsx +20 -9
- package/src/components/screen-container/layers/content.tsx +20 -21
- package/src/components/screen-container/layers/surface-container.tsx +4 -4
- package/src/components/screen-lifecycle/hooks/use-close-transition-intent.ts +19 -9
- package/src/components/screen-lifecycle/hooks/use-open-transition-intent.ts +5 -2
- package/src/components/screen-lifecycle/hooks/use-transition-start-controller.ts +6 -0
- package/src/components/screen-lifecycle/index.tsx +3 -2
- package/src/components/stack-view.tsx +117 -56
- package/src/configs/presets.ts +13 -13
- package/src/constants.ts +1 -0
- package/src/hooks/navigation/use-navigation-helpers.ts +9 -8
- package/src/hooks/navigation/use-screen-state.ts +4 -2
- package/src/providers/screen/animation/animation.provider.tsx +170 -173
- package/src/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.tsx +4 -2
- package/src/providers/screen/animation/helpers/accessors/use-build-transition-accessor.ts +2 -2
- package/src/providers/screen/animation/helpers/hydrate-transition-state/index.ts +4 -21
- package/src/providers/screen/animation/helpers/pipeline.ts +6 -10
- package/src/providers/screen/animation/index.tsx +1 -1
- package/src/providers/screen/animation/use-screen-animation.tsx +2 -2
- package/src/providers/screen/descriptors/descriptors.provider.tsx +83 -72
- package/src/providers/screen/descriptors/index.tsx +0 -2
- package/src/providers/screen/gestures/gestures.provider.tsx +72 -63
- package/src/providers/screen/gestures/hooks/use-screen-gesture-config.ts +7 -8
- package/src/providers/screen/gestures/hooks/use-screen-gesture.ts +2 -2
- package/src/providers/screen/gestures/hooks/use-stable-runtime-config.ts +4 -2
- package/src/providers/screen/gestures/index.tsx +1 -1
- package/src/providers/screen/gestures/ownership/shadowing-claims.ts +3 -4
- package/src/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.ts +16 -8
- package/src/providers/screen/gestures/pan/activation/use-pan-activation.ts +7 -2
- package/src/providers/screen/gestures/pan/behavior/pan-lifecycle.ts +8 -16
- package/src/providers/screen/gestures/pan/behavior/pan-reset.ts +14 -0
- package/src/providers/screen/gestures/pan/use-build-pan-gesture.ts +2 -2
- package/src/providers/screen/gestures/pinch/behavior/pinch-lifecycle.ts +12 -11
- package/src/providers/screen/gestures/pinch/behavior/pinch-reset.ts +10 -0
- package/src/providers/screen/gestures/pinch/use-build-pinch-gesture.ts +2 -2
- package/src/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.tsx +4 -4
- package/src/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.ts +4 -4
- package/src/providers/screen/options/index.ts +1 -1
- package/src/providers/screen/options/options.provider.tsx +24 -28
- package/src/providers/screen/screen-composer.tsx +9 -2
- package/src/providers/screen/styles/constants.ts +8 -6
- package/src/providers/screen/styles/helpers/resolve-interpolator-style-handoff.ts +138 -0
- package/src/providers/screen/styles/helpers/resolve-slot-styles/index.ts +71 -4
- package/src/providers/screen/styles/helpers/select-interpolator-frame.ts +41 -0
- package/src/providers/screen/styles/helpers/visibility-gate.ts +25 -0
- package/src/providers/screen/styles/hooks/use-interpolated-style-maps.tsx +99 -55
- package/src/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +4 -2
- package/src/providers/screen/styles/index.tsx +0 -1
- package/src/providers/screen/styles/slot.provider.tsx +62 -48
- package/src/providers/stack/blank-stack-state/helpers/build-blank-stack-state.ts +4 -17
- package/src/providers/stack/blank-stack.provider.tsx +66 -75
- package/src/providers/stack/core.provider.tsx +53 -79
- package/src/providers/stack/direct.provider.tsx +76 -57
- package/src/stores/animation.store.ts +19 -0
- package/src/types/blank-stack.types.ts +1 -4
- package/src/types/gesture.types.ts +11 -0
- package/src/types/providers/blank-stack-provider.types.ts +8 -22
- package/src/types/providers/direct-stack.types.ts +2 -1
- package/src/types/screen.types.ts +0 -32
- package/src/types/stack.types.ts +2 -4
- package/src/utils/animation/animate-to-progress.ts +18 -18
- package/src/utils/bounds/helpers/create-bounds-accessor-core.ts +7 -0
- package/src/utils/create-provider.tsx +105 -136
- package/lib/commonjs/components/boundary/portal/components/boundary-portal/helpers/host-name.js +0 -14
- package/lib/commonjs/components/boundary/portal/components/boundary-portal/helpers/host-name.js.map +0 -1
- package/lib/commonjs/components/boundary/portal/utils/handoff-target.js +0 -33
- package/lib/commonjs/components/boundary/portal/utils/handoff-target.js.map +0 -1
- package/lib/commonjs/hooks/use-stable-callback-value.js +0 -69
- package/lib/commonjs/hooks/use-stable-callback-value.js.map +0 -1
- package/lib/commonjs/providers/register-bounds.provider.js +0 -312
- package/lib/commonjs/providers/register-bounds.provider.js.map +0 -1
- package/lib/commonjs/providers/screen/origin.provider.js +0 -41
- package/lib/commonjs/providers/screen/origin.provider.js.map +0 -1
- package/lib/module/components/boundary/portal/components/boundary-portal/helpers/host-name.js +0 -9
- package/lib/module/components/boundary/portal/components/boundary-portal/helpers/host-name.js.map +0 -1
- package/lib/module/components/boundary/portal/utils/handoff-target.js +0 -28
- package/lib/module/components/boundary/portal/utils/handoff-target.js.map +0 -1
- package/lib/module/hooks/use-stable-callback-value.js +0 -64
- package/lib/module/hooks/use-stable-callback-value.js.map +0 -1
- package/lib/module/providers/register-bounds.provider.js +0 -308
- package/lib/module/providers/register-bounds.provider.js.map +0 -1
- package/lib/module/providers/screen/origin.provider.js +0 -33
- package/lib/module/providers/screen/origin.provider.js.map +0 -1
- package/lib/typescript/components/boundary/portal/components/boundary-portal/helpers/host-name.d.ts +0 -2
- package/lib/typescript/components/boundary/portal/components/boundary-portal/helpers/host-name.d.ts.map +0 -1
- package/lib/typescript/components/boundary/portal/utils/handoff-target.d.ts +0 -12
- package/lib/typescript/components/boundary/portal/utils/handoff-target.d.ts.map +0 -1
- package/lib/typescript/hooks/use-stable-callback-value.d.ts +0 -13
- package/lib/typescript/hooks/use-stable-callback-value.d.ts.map +0 -1
- package/lib/typescript/providers/register-bounds.provider.d.ts +0 -25
- package/lib/typescript/providers/register-bounds.provider.d.ts.map +0 -1
- package/lib/typescript/providers/screen/origin.provider.d.ts +0 -11
- package/lib/typescript/providers/screen/origin.provider.d.ts.map +0 -1
- package/src/components/boundary/portal/components/boundary-portal/helpers/host-name.ts +0 -10
- package/src/components/boundary/portal/utils/handoff-target.ts +0 -48
- package/src/hooks/use-stable-callback-value.ts +0 -72
- package/src/providers/register-bounds.provider.tsx +0 -401
- package/src/providers/screen/origin.provider.tsx +0 -38
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { useLayoutEffect
|
|
3
|
+
import { useLayoutEffect } from "react";
|
|
4
4
|
import { cancelAnimation, measure, useAnimatedReaction, useAnimatedRef, useSharedValue, withDelay, withTiming } from "react-native-reanimated";
|
|
5
|
-
import {
|
|
6
|
-
import { useOriginContext } from "../../../../../../providers/screen/origin.provider";
|
|
5
|
+
import { scheduleOnUI } from "react-native-worklets";
|
|
7
6
|
import { ScrollStore } from "../../../../../../stores/scroll.store";
|
|
8
7
|
import { getVisibilityBlockOffset } from "../../../../../../utils/visibility-block-offset";
|
|
9
|
-
import { adjustedMeasuredBoundsForOverscrollDeltas,
|
|
8
|
+
import { adjustedMeasuredBoundsForOverscrollDeltas, correctMeasuredBoundsForVisibilityGate, isMeasurementInViewport } from "../../../../utils/measured-bounds";
|
|
10
9
|
import { clearPortalHostBounds, setPortalHostBounds } from "../stores/host-bounds.store";
|
|
11
10
|
const HOST_MEASUREMENT_RETRY_DELAY_MS = 16;
|
|
12
11
|
export const useHostMeasurement = ({
|
|
@@ -20,10 +19,6 @@ export const useHostMeasurement = ({
|
|
|
20
19
|
}) => {
|
|
21
20
|
const hostRef = useAnimatedRef();
|
|
22
21
|
const scrollMetadata = ScrollStore.getValue(screenKey, "metadata");
|
|
23
|
-
const [canRenderHosts, setCanRenderHosts] = useState(false);
|
|
24
|
-
const {
|
|
25
|
-
originRef
|
|
26
|
-
} = useOriginContext();
|
|
27
22
|
const hasMeasuredHost = useSharedValue(false);
|
|
28
23
|
const retryToken = useSharedValue(0);
|
|
29
24
|
useAnimatedReaction(() => {
|
|
@@ -45,8 +40,7 @@ export const useHostMeasurement = ({
|
|
|
45
40
|
return;
|
|
46
41
|
}
|
|
47
42
|
const measured = measure(hostRef);
|
|
48
|
-
|
|
49
|
-
if (!measured || !measuredOrigin) {
|
|
43
|
+
if (!measured) {
|
|
50
44
|
cancelAnimation(retryToken);
|
|
51
45
|
retryToken.set(withDelay(HOST_MEASUREMENT_RETRY_DELAY_MS, withTiming(retryToken.get() + 1, {
|
|
52
46
|
duration: 0
|
|
@@ -54,22 +48,20 @@ export const useHostMeasurement = ({
|
|
|
54
48
|
return;
|
|
55
49
|
}
|
|
56
50
|
cancelAnimation(retryToken);
|
|
57
|
-
hasMeasuredHost.set(true);
|
|
58
51
|
|
|
59
52
|
// A measurement taken mid rubber-band would bake the transient
|
|
60
53
|
// overscroll displacement into the host frame. Store the at-rest
|
|
61
54
|
// position instead; clamped scroll deltas share that basis.
|
|
62
55
|
const currentScroll = scrollMetadata.get();
|
|
63
56
|
const overscrollNormalized = capturesScroll ? adjustedMeasuredBoundsForOverscrollDeltas(measured, currentScroll) : measured;
|
|
64
|
-
const
|
|
57
|
+
const correctedMeasured = correctMeasuredBoundsForVisibilityGate({
|
|
65
58
|
measured: overscrollNormalized,
|
|
66
|
-
origin: measuredOrigin,
|
|
67
59
|
visibilityBlocked: visibilityBlocked.get(),
|
|
68
60
|
visibilityBlockOffset: getVisibilityBlockOffset(viewportHeight),
|
|
69
61
|
viewportWidth,
|
|
70
62
|
viewportHeight
|
|
71
63
|
});
|
|
72
|
-
if (!isMeasurementInViewport(
|
|
64
|
+
if (!isMeasurementInViewport(correctedMeasured, viewportWidth, viewportHeight)) {
|
|
73
65
|
cancelAnimation(retryToken);
|
|
74
66
|
retryToken.set(withDelay(HOST_MEASUREMENT_RETRY_DELAY_MS, withTiming(retryToken.get() + 1, {
|
|
75
67
|
duration: 0
|
|
@@ -77,15 +69,15 @@ export const useHostMeasurement = ({
|
|
|
77
69
|
return;
|
|
78
70
|
}
|
|
79
71
|
setPortalHostBounds(hostKey, {
|
|
80
|
-
x:
|
|
81
|
-
y:
|
|
82
|
-
width:
|
|
83
|
-
height:
|
|
84
|
-
pageX:
|
|
85
|
-
pageY:
|
|
72
|
+
x: correctedMeasured.x,
|
|
73
|
+
y: correctedMeasured.y,
|
|
74
|
+
width: correctedMeasured.width,
|
|
75
|
+
height: correctedMeasured.height,
|
|
76
|
+
pageX: correctedMeasured.pageX,
|
|
77
|
+
pageY: correctedMeasured.pageY,
|
|
86
78
|
scroll: capturesScroll ? currentScroll : null
|
|
87
79
|
});
|
|
88
|
-
|
|
80
|
+
hasMeasuredHost.set(true);
|
|
89
81
|
});
|
|
90
82
|
useLayoutEffect(() => {
|
|
91
83
|
return () => {
|
|
@@ -93,7 +85,6 @@ export const useHostMeasurement = ({
|
|
|
93
85
|
};
|
|
94
86
|
}, [hostKey]);
|
|
95
87
|
return {
|
|
96
|
-
canRenderHosts,
|
|
97
88
|
hostRef
|
|
98
89
|
};
|
|
99
90
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useLayoutEffect","
|
|
1
|
+
{"version":3,"names":["useLayoutEffect","cancelAnimation","measure","useAnimatedReaction","useAnimatedRef","useSharedValue","withDelay","withTiming","scheduleOnUI","ScrollStore","getVisibilityBlockOffset","adjustedMeasuredBoundsForOverscrollDeltas","correctMeasuredBoundsForVisibilityGate","isMeasurementInViewport","clearPortalHostBounds","setPortalHostBounds","HOST_MEASUREMENT_RETRY_DELAY_MS","useHostMeasurement","capturesScroll","enabled","hostKey","screenKey","visibilityBlocked","viewportHeight","viewportWidth","hostRef","scrollMetadata","getValue","hasMeasuredHost","retryToken","get","state","hasAlreadyMeasured","measured","set","duration","currentScroll","overscrollNormalized","correctedMeasured","visibilityBlockOffset","x","y","width","height","pageX","pageY","scroll"],"sourceRoot":"../../../../../../../../src","sources":["components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.ts"],"mappings":";;AAAA,SAASA,eAAe,QAAQ,OAAO;AAEvC,SACCC,eAAe,EACfC,OAAO,EAEPC,mBAAmB,EACnBC,cAAc,EACdC,cAAc,EACdC,SAAS,EACTC,UAAU,QACJ,yBAAyB;AAChC,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SAASC,WAAW,QAAQ,uCAAuC;AACnE,SAASC,wBAAwB,QAAQ,iDAAiD;AAC1F,SACCC,yCAAyC,EACzCC,sCAAsC,EACtCC,uBAAuB,QACjB,mCAAmC;AAC1C,SACCC,qBAAqB,EACrBC,mBAAmB,QACb,6BAA6B;AAEpC,MAAMC,+BAA+B,GAAG,EAAE;AAY1C,OAAO,MAAMC,kBAAkB,GAAGA,CAAC;EAClCC,cAAc;EACdC,OAAO;EACPC,OAAO;EACPC,SAAS;EACTC,iBAAiB;EACjBC,cAAc;EACdC;AACyB,CAAC,KAAK;EAC/B,MAAMC,OAAO,GAAGrB,cAAc,CAAO,CAAC;EACtC,MAAMsB,cAAc,GAAGjB,WAAW,CAACkB,QAAQ,CAACN,SAAS,EAAE,UAAU,CAAC;EAClE,MAAMO,eAAe,GAAGvB,cAAc,CAAC,KAAK,CAAC;EAC7C,MAAMwB,UAAU,GAAGxB,cAAc,CAAC,CAAC,CAAC;EAEpCF,mBAAmB,CAClB,MAAM;IACL,SAAS;;IACT,IAAI,CAACgB,OAAO,EAAE;MACb,OAAO,IAAI;IACZ;IAEA,OAAO,CAACS,eAAe,CAACE,GAAG,CAAC,CAAC,EAAED,UAAU,CAACC,GAAG,CAAC,CAAC,CAAC;EACjD,CAAC,EACAC,KAAK,IAAK;IACV,SAAS;;IACT,IAAI,CAACA,KAAK,EAAE;MACX9B,eAAe,CAAC4B,UAAU,CAAC;MAC3B;IACD;IAEA,MAAM,CAACG,kBAAkB,CAAC,GAAGD,KAAK;IAElC,IAAI,CAACZ,OAAO,IAAIa,kBAAkB,EAAE;MACnC;IACD;IAEA,MAAMC,QAAQ,GAAG/B,OAAO,CAACuB,OAAO,CAAC;IAEjC,IAAI,CAACQ,QAAQ,EAAE;MACdhC,eAAe,CAAC4B,UAAU,CAAC;MAC3BA,UAAU,CAACK,GAAG,CACb5B,SAAS,CACRU,+BAA+B,EAC/BT,UAAU,CAACsB,UAAU,CAACC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE;QAAEK,QAAQ,EAAE;MAAE,CAAC,CACjD,CACD,CAAC;MACD;IACD;IAEAlC,eAAe,CAAC4B,UAAU,CAAC;;IAE3B;IACA;IACA;IACA,MAAMO,aAAa,GAAGV,cAAc,CAACI,GAAG,CAAC,CAAC;IAC1C,MAAMO,oBAAoB,GAAGnB,cAAc,GACxCP,yCAAyC,CAACsB,QAAQ,EAAEG,aAAa,CAAC,GAClEH,QAAQ;IAEX,MAAMK,iBAAiB,GAAG1B,sCAAsC,CAAC;MAChEqB,QAAQ,EAAEI,oBAAoB;MAC9Bf,iBAAiB,EAAEA,iBAAiB,CAACQ,GAAG,CAAC,CAAC;MAC1CS,qBAAqB,EAAE7B,wBAAwB,CAACa,cAAc,CAAC;MAC/DC,aAAa;MACbD;IACD,CAAC,CAAC;IAEF,IACC,CAACV,uBAAuB,CACvByB,iBAAiB,EACjBd,aAAa,EACbD,cACD,CAAC,EACA;MACDtB,eAAe,CAAC4B,UAAU,CAAC;MAC3BA,UAAU,CAACK,GAAG,CACb5B,SAAS,CACRU,+BAA+B,EAC/BT,UAAU,CAACsB,UAAU,CAACC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE;QAAEK,QAAQ,EAAE;MAAE,CAAC,CACjD,CACD,CAAC;MACD;IACD;IAEApB,mBAAmB,CAACK,OAAO,EAAE;MAC5BoB,CAAC,EAAEF,iBAAiB,CAACE,CAAC;MACtBC,CAAC,EAAEH,iBAAiB,CAACG,CAAC;MACtBC,KAAK,EAAEJ,iBAAiB,CAACI,KAAK;MAC9BC,MAAM,EAAEL,iBAAiB,CAACK,MAAM;MAChCC,KAAK,EAAEN,iBAAiB,CAACM,KAAK;MAC9BC,KAAK,EAAEP,iBAAiB,CAACO,KAAK;MAC9BC,MAAM,EAAE5B,cAAc,GAAGkB,aAAa,GAAG;IAC1C,CAAC,CAAC;IAEFR,eAAe,CAACM,GAAG,CAAC,IAAI,CAAC;EAC1B,CACD,CAAC;EAEDlC,eAAe,CAAC,MAAM;IACrB,OAAO,MAAM;MACZQ,YAAY,CAACM,qBAAqB,EAAEM,OAAO,CAAC;IAC7C,CAAC;EACF,CAAC,EAAE,CAACA,OAAO,CAAC,CAAC;EAEb,OAAO;IACNK;EACD,CAAC;AACF,CAAC","ignoreList":[]}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
const BOUNDARY_PORTAL_HOST_NAME_SUFFIX = "-portal-host";
|
|
4
|
+
export const createBoundaryPortalHostName = (hostKey, boundaryId, pairKey) => {
|
|
5
|
+
"worklet";
|
|
6
|
+
|
|
7
|
+
return `${hostKey}-${pairKey ? `${pairKey}-` : ""}${boundaryId}${BOUNDARY_PORTAL_HOST_NAME_SUFFIX}`;
|
|
8
|
+
};
|
|
3
9
|
export const PORTAL_HOST_NAME_RESET_VALUE = null;
|
|
4
10
|
//# sourceMappingURL=naming.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["PORTAL_HOST_NAME_RESET_VALUE"],"sourceRoot":"../../../../../../src","sources":["components/boundary/portal/utils/naming.ts"],"mappings":";;AAAA,OAAO,
|
|
1
|
+
{"version":3,"names":["BOUNDARY_PORTAL_HOST_NAME_SUFFIX","createBoundaryPortalHostName","hostKey","boundaryId","pairKey","PORTAL_HOST_NAME_RESET_VALUE"],"sourceRoot":"../../../../../../src","sources":["components/boundary/portal/utils/naming.ts"],"mappings":";;AAAA,MAAMA,gCAAgC,GAAG,cAAc;AAEvD,OAAO,MAAMC,4BAA4B,GAAGA,CAC3CC,OAAe,EACfC,UAAkB,EAClBC,OAAuB,KACnB;EACJ,SAAS;;EACT,OAAO,GAAGF,OAAO,IAAIE,OAAO,GAAG,GAAGA,OAAO,GAAG,GAAG,EAAE,GAAGD,UAAU,GAAGH,gCAAgC,EAAE;AACpG,CAAC;AAED,OAAO,MAAMK,4BAA4B,GAAG,IAAI","ignoreList":[]}
|
|
@@ -4,6 +4,7 @@ import { useImperativeHandle, useLayoutEffect, useMemo, useRef } from "react";
|
|
|
4
4
|
import { useAnimatedRef } from "react-native-reanimated";
|
|
5
5
|
import { useDescriptorsStore } from "../../../providers/screen/descriptors";
|
|
6
6
|
import { useComposedSlotStyles, useSlotStackingStyles } from "../../../providers/screen/styles";
|
|
7
|
+
import { useBlankStackStore } from "../../../providers/stack/blank-stack.provider";
|
|
7
8
|
import { createBoundTag } from "../../../stores/bounds/helpers/link-pairs.helpers";
|
|
8
9
|
import createProvider from "../../../utils/create-provider";
|
|
9
10
|
import { logger } from "../../../utils/logger";
|
|
@@ -14,7 +15,6 @@ const MULTIPLE_TARGETS_WARNING = "Multiple Boundary.Target elements were rendere
|
|
|
14
15
|
export const TARGET_OUTSIDE_ROOT_WARNING = "Boundary.Target must be rendered inside Transition.Boundary or a component created by createBoundaryComponent.";
|
|
15
16
|
export const {
|
|
16
17
|
BoundaryRootProvider,
|
|
17
|
-
useBoundaryRootContext,
|
|
18
18
|
useBoundaryRootStore
|
|
19
19
|
} = createProvider("BoundaryRoot", {
|
|
20
20
|
guarded: false
|
|
@@ -38,9 +38,9 @@ export const {
|
|
|
38
38
|
escapeClipping
|
|
39
39
|
});
|
|
40
40
|
const currentScreenKey = useDescriptorsStore(s => s.derivations.currentScreenKey);
|
|
41
|
-
const
|
|
41
|
+
const isCurrentScreenClosing = useBlankStackStore(store => store?.scenesByKey[currentScreenKey]?.activity === "closing");
|
|
42
42
|
const retainedBoundTagRef = useRef(requestedBoundTag);
|
|
43
|
-
const shouldRetainClosingBoundTag = portalRuntime.handoff &&
|
|
43
|
+
const shouldRetainClosingBoundTag = portalRuntime.handoff && isCurrentScreenClosing;
|
|
44
44
|
|
|
45
45
|
// Navigation can update a retained closing route's params before that
|
|
46
46
|
// route leaves the stack. Keep its handoff identity stable so the payload
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useImperativeHandle","useLayoutEffect","useMemo","useRef","useAnimatedRef","useDescriptorsStore","useComposedSlotStyles","useSlotStackingStyles","createBoundTag","createProvider","logger","useBoundaryMeasurement","resolveBoundaryPortal","MULTIPLE_TARGETS_WARNING","TARGET_OUTSIDE_ROOT_WARNING","BoundaryRootProvider","
|
|
1
|
+
{"version":3,"names":["useImperativeHandle","useLayoutEffect","useMemo","useRef","useAnimatedRef","useDescriptorsStore","useComposedSlotStyles","useSlotStackingStyles","useBlankStackStore","createBoundTag","createProvider","logger","useBoundaryMeasurement","resolveBoundaryPortal","MULTIPLE_TARGETS_WARNING","TARGET_OUTSIDE_ROOT_WARNING","BoundaryRootProvider","useBoundaryRootStore","guarded","children","config","enabled","escapeClipping","forwardedRef","group","handoff","hasTarget","id","style","targetCount","targetStyle","requestedBoundTag","String","portalRuntime","currentScreenKey","s","derivations","isCurrentScreenClosing","store","scenesByKey","activity","retainedBoundTagRef","shouldRetainClosingBoundTag","current","boundTag","hasConfiguredInterpolator","runtimeEnabled","shouldAttachAssociatedStyles","shouldEscapeBoundaryRootToScreenHost","associatedStyles","tag","associatedStackingStyles","rootRef","measurementRef","__DEV__","warnOnce","measuredRef","shouldRenderBoundaryRootThroughPortal","handoffEnabled","attachedStyle","undefined","value","ref","shouldRenderHandoffHost"],"sourceRoot":"../../../../../src","sources":["components/boundary/providers/boundary-root.provider.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -32,15 +32,6 @@ export const adjustedMeasuredBoundsForOverscrollDeltas = (measured, scrollState)
|
|
|
32
32
|
pageY: measured.pageY + deltaY
|
|
33
33
|
};
|
|
34
34
|
};
|
|
35
|
-
export const normalizeMeasuredBoundsToOrigin = (measured, origin) => {
|
|
36
|
-
"worklet";
|
|
37
|
-
|
|
38
|
-
return {
|
|
39
|
-
...measured,
|
|
40
|
-
pageX: measured.pageX - origin.pageX,
|
|
41
|
-
pageY: measured.pageY - origin.pageY
|
|
42
|
-
};
|
|
43
|
-
};
|
|
44
35
|
export const isMeasurementInViewport = (measured, viewportWidth, viewportHeight) => {
|
|
45
36
|
"worklet";
|
|
46
37
|
|
|
@@ -53,9 +44,8 @@ export const isMeasurementInViewport = (measured, viewportWidth, viewportHeight)
|
|
|
53
44
|
const centerY = measured.pageY + measured.height / 2;
|
|
54
45
|
return centerX >= -toleranceX && centerX <= viewportWidth + toleranceX && centerY >= -toleranceY && centerY <= viewportHeight + toleranceY;
|
|
55
46
|
};
|
|
56
|
-
export const
|
|
47
|
+
export const correctMeasuredBoundsForVisibilityGate = ({
|
|
57
48
|
measured,
|
|
58
|
-
origin,
|
|
59
49
|
visibilityBlocked,
|
|
60
50
|
visibilityBlockOffset,
|
|
61
51
|
viewportWidth,
|
|
@@ -63,29 +53,28 @@ export const normalizeMeasuredBoundsWithVisibilityGate = ({
|
|
|
63
53
|
}) => {
|
|
64
54
|
"worklet";
|
|
65
55
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
return normalized;
|
|
56
|
+
if (!visibilityBlocked || visibilityBlockOffset <= 0 || isMeasurementInViewport(measured, viewportWidth, viewportHeight)) {
|
|
57
|
+
return measured;
|
|
69
58
|
}
|
|
70
59
|
|
|
71
|
-
//
|
|
72
|
-
// frame
|
|
73
|
-
//
|
|
74
|
-
const
|
|
75
|
-
...
|
|
76
|
-
pageY:
|
|
60
|
+
// A destination can still carry the internal visibility transform for one
|
|
61
|
+
// native frame. Correct only that known offset and preserve all other
|
|
62
|
+
// presentation transforms in the measured coordinates.
|
|
63
|
+
const visibilityOffsetApplied = {
|
|
64
|
+
...measured,
|
|
65
|
+
pageY: measured.pageY - visibilityBlockOffset
|
|
77
66
|
};
|
|
78
|
-
if (isMeasurementInViewport(
|
|
79
|
-
return
|
|
67
|
+
if (isMeasurementInViewport(visibilityOffsetApplied, viewportWidth, viewportHeight)) {
|
|
68
|
+
return visibilityOffsetApplied;
|
|
80
69
|
}
|
|
81
|
-
const
|
|
82
|
-
...
|
|
83
|
-
pageY:
|
|
70
|
+
const inverseVisibilityOffsetApplied = {
|
|
71
|
+
...measured,
|
|
72
|
+
pageY: measured.pageY + visibilityBlockOffset
|
|
84
73
|
};
|
|
85
|
-
if (isMeasurementInViewport(
|
|
86
|
-
return
|
|
74
|
+
if (isMeasurementInViewport(inverseVisibilityOffsetApplied, viewportWidth, viewportHeight)) {
|
|
75
|
+
return inverseVisibilityOffsetApplied;
|
|
87
76
|
}
|
|
88
|
-
return
|
|
77
|
+
return measured;
|
|
89
78
|
};
|
|
90
79
|
export const measureWithOverscrollAwareness = (ref, scrollState) => {
|
|
91
80
|
"worklet";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["measure","clampScrollAxisOffset","cloneScrollMetadataState","SCROLL_MEASUREMENT_EPSILON","getOverscrollDelta","axisState","clampedOffset","delta","offset","Math","abs","adjustedMeasuredBoundsForOverscrollDeltas","measured","scrollState","deltaX","horizontal","deltaY","vertical","x","y","pageX","pageY","
|
|
1
|
+
{"version":3,"names":["measure","clampScrollAxisOffset","cloneScrollMetadataState","SCROLL_MEASUREMENT_EPSILON","getOverscrollDelta","axisState","clampedOffset","delta","offset","Math","abs","adjustedMeasuredBoundsForOverscrollDeltas","measured","scrollState","deltaX","horizontal","deltaY","vertical","x","y","pageX","pageY","isMeasurementInViewport","viewportWidth","viewportHeight","width","height","toleranceX","toleranceY","centerX","centerY","correctMeasuredBoundsForVisibilityGate","visibilityBlocked","visibilityBlockOffset","visibilityOffsetApplied","inverseVisibilityOffsetApplied","measureWithOverscrollAwareness","ref","attachScrollSnapshotToMeasuredBounds","scroll"],"sourceRoot":"../../../../../src","sources":["components/boundary/utils/measured-bounds.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -26,37 +26,31 @@ export const getRefreshBoundarySignal = params => {
|
|
|
26
26
|
group,
|
|
27
27
|
shouldRefresh,
|
|
28
28
|
closing,
|
|
29
|
-
entering,
|
|
30
|
-
animating,
|
|
31
|
-
progress,
|
|
32
|
-
gestureInProgress,
|
|
33
29
|
linkState
|
|
34
30
|
} = params;
|
|
35
31
|
if (!enabled) return null;
|
|
36
|
-
|
|
37
|
-
// This is temporary for a patch fix. However, this architecture should
|
|
38
|
-
// change: our signals aren't currently doing their intended job, so right
|
|
39
|
-
// now we'll add one more guard until the shape is much more tested and
|
|
40
|
-
// bulletproof.
|
|
41
|
-
if (gestureInProgress) return null;
|
|
42
|
-
const canRefreshPreCloseDestination = shouldRefresh && closing && !entering && !animating && progress >= 1;
|
|
43
|
-
const canRefreshSettledDestination = shouldRefresh && !closing && !entering;
|
|
44
|
-
|
|
45
|
-
// Guards:
|
|
46
|
-
// 1) A user may dismiss via back button, in this case, we should remeasure.
|
|
47
|
-
// 2) If a user drags during entering/closing animations we should NOT remeasure.
|
|
48
|
-
if (!canRefreshPreCloseDestination && !canRefreshSettledDestination) {
|
|
32
|
+
if (!shouldRefresh) {
|
|
49
33
|
return null;
|
|
50
34
|
}
|
|
51
35
|
|
|
52
|
-
//
|
|
53
|
-
//
|
|
54
|
-
// single a->b flows. So we just trigger the destination refresh.
|
|
36
|
+
// A source may move while its destination is active, so refresh whichever
|
|
37
|
+
// side of the pair this boundary currently represents.
|
|
55
38
|
if (!group) {
|
|
39
|
+
if (sourcePairKey) {
|
|
40
|
+
const sourcePair = linkState?.[sourcePairKey];
|
|
41
|
+
const participates = !!sourcePair?.links?.[linkId] || !!sourcePair?.sourceRequests?.[linkId];
|
|
42
|
+
if (!participates) {
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
return buildRefreshSignal("source", sourcePairKey, [currentScreenKey, closing ? "closing" : "settled"].join("|"));
|
|
46
|
+
}
|
|
56
47
|
const refreshDestinationPairKey = destinationPairKey ?? (nextScreenKey ? undefined : ancestorDestinationPairKey);
|
|
57
48
|
if (!refreshDestinationPairKey) {
|
|
58
49
|
return null;
|
|
59
50
|
}
|
|
51
|
+
if (!linkState?.[refreshDestinationPairKey]?.links?.[linkId]) {
|
|
52
|
+
return null;
|
|
53
|
+
}
|
|
60
54
|
return buildRefreshSignal("destination", refreshDestinationPairKey, [currentScreenKey, closing ? "closing" : "settled"].join("|"));
|
|
61
55
|
}
|
|
62
56
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["SOURCE_SIGNAL_PREFIX","DESTINATION_SIGNAL_PREFIX","buildRefreshSignal","type","pairKey","key","prefix","signal","getRefreshBoundarySignal","params","enabled","currentScreenKey","sourcePairKey","destinationPairKey","ancestorDestinationPairKey","nextScreenKey","linkId","group","shouldRefresh","closing","
|
|
1
|
+
{"version":3,"names":["SOURCE_SIGNAL_PREFIX","DESTINATION_SIGNAL_PREFIX","buildRefreshSignal","type","pairKey","key","prefix","signal","getRefreshBoundarySignal","params","enabled","currentScreenKey","sourcePairKey","destinationPairKey","ancestorDestinationPairKey","nextScreenKey","linkId","group","shouldRefresh","closing","linkState","sourcePair","participates","links","sourceRequests","join","refreshDestinationPairKey","undefined","activeId","groups"],"sourceRoot":"../../../../../src","sources":["components/boundary/utils/refresh-signals.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,9 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
import { forwardRef, memo } from "react";
|
|
6
6
|
import { GestureDetector } from "react-native-gesture-handler";
|
|
7
|
-
import Animated, {
|
|
8
|
-
import { scheduleOnUI } from "react-native-worklets";
|
|
9
|
-
import { RegisterBoundsProvider } from "../providers/register-bounds.provider";
|
|
7
|
+
import Animated, { useComposedEventHandler } from "react-native-reanimated";
|
|
10
8
|
import { ScrollMetadataOwnerProvider, useScrollGestureCoordination } from "../providers/screen/gestures/scroll-coordination";
|
|
11
9
|
import { useSlotProps, useSlotStyles } from "../providers/screen/styles";
|
|
12
10
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -18,7 +16,6 @@ export function createTransitionAwareComponent(Wrapped, options = {}) {
|
|
|
18
16
|
const AnimatedComponent = alreadyAnimated ? Wrapped : Animated.createAnimatedComponent(Wrapped);
|
|
19
17
|
const ScrollableInner = /*#__PURE__*/forwardRef((props, ref) => {
|
|
20
18
|
const {
|
|
21
|
-
remeasureOnFocus: _remeasureOnFocus,
|
|
22
19
|
onScroll: userOnScroll,
|
|
23
20
|
onMomentumScrollEnd: userOnMomentumScrollEnd,
|
|
24
21
|
onScrollEndDrag: userOnScrollEndDrag,
|
|
@@ -71,40 +68,22 @@ export function createTransitionAwareComponent(Wrapped, options = {}) {
|
|
|
71
68
|
children: coordinatedScrollableComponent
|
|
72
69
|
});
|
|
73
70
|
});
|
|
74
|
-
const Inner = /*#__PURE__*/forwardRef((props,
|
|
71
|
+
const Inner = /*#__PURE__*/forwardRef((props, ref) => {
|
|
75
72
|
const {
|
|
76
73
|
children,
|
|
77
74
|
style,
|
|
78
|
-
sharedBoundTag,
|
|
79
75
|
styleId,
|
|
80
|
-
onPress,
|
|
81
|
-
remeasureOnFocus,
|
|
82
76
|
animatedProps: userAnimatedProps,
|
|
83
77
|
...rest
|
|
84
78
|
} = props;
|
|
85
|
-
const
|
|
86
|
-
const
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
sharedBoundTag: sharedBoundTag,
|
|
94
|
-
remeasureOnFocus: remeasureOnFocus,
|
|
95
|
-
children: ({
|
|
96
|
-
captureActiveOnPress,
|
|
97
|
-
handleInitialLayout
|
|
98
|
-
}) => /*#__PURE__*/_jsx(AnimatedComponent, {
|
|
99
|
-
...rest,
|
|
100
|
-
ref: animatedRef,
|
|
101
|
-
style: [style, associatedStyles],
|
|
102
|
-
animatedProps: userAnimatedProps ?? associatedProps,
|
|
103
|
-
onPress: captureActiveOnPress,
|
|
104
|
-
onLayout: () => scheduleOnUI(handleInitialLayout),
|
|
105
|
-
collapsable: !sharedBoundTag,
|
|
106
|
-
children: children
|
|
107
|
-
})
|
|
79
|
+
const associatedStyles = useSlotStyles(styleId);
|
|
80
|
+
const associatedProps = useSlotProps(styleId);
|
|
81
|
+
return /*#__PURE__*/_jsx(AnimatedComponent, {
|
|
82
|
+
...rest,
|
|
83
|
+
ref: ref,
|
|
84
|
+
style: [style, associatedStyles],
|
|
85
|
+
animatedProps: userAnimatedProps ?? associatedProps,
|
|
86
|
+
children: children
|
|
108
87
|
});
|
|
109
88
|
});
|
|
110
89
|
if (isScrollable) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["forwardRef","memo","GestureDetector","Animated","
|
|
1
|
+
{"version":3,"names":["forwardRef","memo","GestureDetector","Animated","useComposedEventHandler","ScrollMetadataOwnerProvider","useScrollGestureCoordination","useSlotProps","useSlotStyles","jsx","_jsx","createTransitionAwareComponent","Wrapped","options","isScrollable","alreadyAnimated","AnimatedComponent","createAnimatedComponent","ScrollableInner","props","ref","onScroll","userOnScroll","onMomentumScrollEnd","userOnMomentumScrollEnd","onScrollEndDrag","userOnScrollEndDrag","children","contentContainerStyle","scrollableProps","scrollDirection","horizontal","scrollHandler","scrollEventsEnabled","onContentSizeChange","onLayout","nativeGesture","metadataOwnerProviderValue","direction","composedScrollHandler","scrollableComponent","undefined","scrollEventThrottle","coordinatedScrollableComponent","gesture","value","Inner","style","styleId","animatedProps","userAnimatedProps","rest","associatedStyles","associatedProps"],"sourceRoot":"../../../src","sources":["components/create-transition-aware-component.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
import { useState } from "react";
|
|
4
4
|
import { useAnimatedReaction } from "react-native-reanimated";
|
|
5
5
|
import { scheduleOnRN } from "react-native-worklets";
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
6
|
+
import { useDescriptorsStore } from "../../../providers/screen/descriptors";
|
|
7
|
+
import { useScreenOptionsStore } from "../../../providers/screen/options";
|
|
8
|
+
import { useStackCoreStore } from "../../../providers/stack/core.provider";
|
|
9
9
|
import { StackType } from "../../../types/stack.types";
|
|
10
10
|
/**
|
|
11
11
|
* Returns pointer events and backdrop behavior based on screen options.
|
|
@@ -16,13 +16,9 @@ import { StackType } from "../../../types/stack.types";
|
|
|
16
16
|
* - Other stacks default to 'block' (undefined = normal touch handling)
|
|
17
17
|
*/
|
|
18
18
|
export function useBackdropPointerEvents() {
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
const screenOptions = useScreenOptionsContext();
|
|
23
|
-
const {
|
|
24
|
-
flags
|
|
25
|
-
} = useStackCoreContext();
|
|
19
|
+
const screenOptions = useScreenOptionsStore();
|
|
20
|
+
const descriptorBackdropBehavior = useDescriptorsStore(store => store.options.backdropBehavior);
|
|
21
|
+
const stackType = useStackCoreStore(store => store.flags.STACK_TYPE);
|
|
26
22
|
const [runtimeBackdropBehavior, setRuntimeBackdropBehavior] = useState(undefined);
|
|
27
23
|
useAnimatedReaction(() => screenOptions.get().backdropBehavior, (next, previous) => {
|
|
28
24
|
"worklet";
|
|
@@ -31,8 +27,8 @@ export function useBackdropPointerEvents() {
|
|
|
31
27
|
scheduleOnRN(setRuntimeBackdropBehavior, next);
|
|
32
28
|
}
|
|
33
29
|
}, [screenOptions]);
|
|
34
|
-
const isComponentStack =
|
|
35
|
-
const backdropBehavior = runtimeBackdropBehavior ??
|
|
30
|
+
const isComponentStack = stackType === StackType.COMPONENT;
|
|
31
|
+
const backdropBehavior = runtimeBackdropBehavior ?? descriptorBackdropBehavior ?? (isComponentStack ? "passthrough" : "block");
|
|
36
32
|
const pointerEvents = backdropBehavior === "passthrough" ? "box-none" : undefined;
|
|
37
33
|
const isBackdropActive = backdropBehavior === "dismiss" || backdropBehavior === "collapse";
|
|
38
34
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useState","useAnimatedReaction","scheduleOnRN","
|
|
1
|
+
{"version":3,"names":["useState","useAnimatedReaction","scheduleOnRN","useDescriptorsStore","useScreenOptionsStore","useStackCoreStore","StackType","useBackdropPointerEvents","screenOptions","descriptorBackdropBehavior","store","options","backdropBehavior","stackType","flags","STACK_TYPE","runtimeBackdropBehavior","setRuntimeBackdropBehavior","undefined","get","next","previous","isComponentStack","COMPONENT","pointerEvents","isBackdropActive"],"sourceRoot":"../../../../../src","sources":["components/screen-container/hooks/use-backdrop-pointer-events.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,OAAO;AAChC,SAASC,mBAAmB,QAAQ,yBAAyB;AAC7D,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SAASC,mBAAmB,QAAQ,uCAAuC;AAC3E,SAASC,qBAAqB,QAAQ,mCAAmC;AACzE,SAASC,iBAAiB,QAAQ,wCAAwC;AAE1E,SAASC,SAAS,QAAQ,4BAA4B;AAQtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,wBAAwBA,CAAA,EAAgC;EACvE,MAAMC,aAAa,GAAGJ,qBAAqB,CAAC,CAAC;EAC7C,MAAMK,0BAA0B,GAAGN,mBAAmB,CACpDO,KAAK,IAAKA,KAAK,CAACC,OAAO,CAACC,gBAC1B,CAAC;EACD,MAAMC,SAAS,GAAGR,iBAAiB,CAAEK,KAAK,IAAKA,KAAK,CAACI,KAAK,CAACC,UAAU,CAAC;EACtE,MAAM,CAACC,uBAAuB,EAAEC,0BAA0B,CAAC,GAAGjB,QAAQ,CAEpEkB,SAAS,CAAC;EAEZjB,mBAAmB,CAClB,MAAMO,aAAa,CAACW,GAAG,CAAC,CAAC,CAACP,gBAAgB,EAC1C,CAACQ,IAAI,EAAEC,QAAQ,KAAK;IACnB,SAAS;;IACT,IAAID,IAAI,KAAKC,QAAQ,EAAE;MACtBnB,YAAY,CAACe,0BAA0B,EAAEG,IAAI,CAAC;IAC/C;EACD,CAAC,EACD,CAACZ,aAAa,CACf,CAAC;EAED,MAAMc,gBAAgB,GAAGT,SAAS,KAAKP,SAAS,CAACiB,SAAS;EAC1D,MAAMX,gBAAkC,GACvCI,uBAAuB,IACvBP,0BAA0B,KACzBa,gBAAgB,GAAG,aAAa,GAAG,OAAO,CAAC;EAE7C,MAAME,aAAa,GAClBZ,gBAAgB,KAAK,aAAa,GAAG,UAAU,GAAGM,SAAS;EAE5D,MAAMO,gBAAgB,GACrBb,gBAAgB,KAAK,SAAS,IAAIA,gBAAgB,KAAK,UAAU;EAElE,OAAO;IAAEY,aAAa;IAAEZ,gBAAgB;IAAEa;EAAiB,CAAC;AAC7D","ignoreList":[]}
|
|
@@ -3,20 +3,16 @@
|
|
|
3
3
|
import { useCallback } from "react";
|
|
4
4
|
import { useWindowDimensions } from "react-native";
|
|
5
5
|
import { scheduleOnUI } from "react-native-worklets";
|
|
6
|
-
import {
|
|
6
|
+
import { useDescriptorsStore } from "../../../providers/screen/descriptors";
|
|
7
7
|
import { AnimationStore } from "../../../stores/animation.store";
|
|
8
8
|
import { LifecycleTransitionRequestKind, SystemStore } from "../../../stores/system.store";
|
|
9
9
|
export function useContentLayout() {
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
const {
|
|
14
|
-
isFirstKey
|
|
15
|
-
} = useDescriptorDerivations();
|
|
10
|
+
const routeKey = useDescriptorsStore(store => store.derivations.currentScreenKey);
|
|
11
|
+
const isFirstKey = useDescriptorsStore(store => store.derivations.isFirstKey);
|
|
12
|
+
const experimental_animateOnInitialMount = useDescriptorsStore(store => store.options.experimental_animateOnInitialMount);
|
|
16
13
|
const {
|
|
17
14
|
height: screenHeight
|
|
18
15
|
} = useWindowDimensions();
|
|
19
|
-
const routeKey = current.route.key;
|
|
20
16
|
const animations = AnimationStore.getBag(routeKey);
|
|
21
17
|
const system = SystemStore.getBag(routeKey);
|
|
22
18
|
const {
|
|
@@ -27,7 +23,6 @@ export function useContentLayout() {
|
|
|
27
23
|
const {
|
|
28
24
|
requestLifecycleTransition
|
|
29
25
|
} = system.actions;
|
|
30
|
-
const experimental_animateOnInitialMount = current.options.experimental_animateOnInitialMount;
|
|
31
26
|
return useCallback(event => {
|
|
32
27
|
const {
|
|
33
28
|
width,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","useWindowDimensions","scheduleOnUI","
|
|
1
|
+
{"version":3,"names":["useCallback","useWindowDimensions","scheduleOnUI","useDescriptorsStore","AnimationStore","LifecycleTransitionRequestKind","SystemStore","useContentLayout","routeKey","store","derivations","currentScreenKey","isFirstKey","experimental_animateOnInitialMount","options","height","screenHeight","animations","getBag","system","targetProgress","resolvedAutoSnapPoint","measuredContentLayout","requestLifecycleTransition","actions","event","width","nativeEvent","layout","fraction","Math","min","nextWidth","nextHeight","nextFraction","set","isFirstMeasurement","get","transitionProgress","progressAnimating","Open"],"sourceRoot":"../../../../../src","sources":["components/screen-container/hooks/use-content-layout.ts"],"mappings":";;AAAA,SAASA,WAAW,QAAQ,OAAO;AACnC,SAAiCC,mBAAmB,QAAQ,cAAc;AAC1E,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SAASC,mBAAmB,QAAQ,uCAAuC;AAC3E,SAASC,cAAc,QAAQ,iCAAiC;AAChE,SACCC,8BAA8B,EAC9BC,WAAW,QACL,8BAA8B;AAErC,OAAO,SAASC,gBAAgBA,CAAA,EAAG;EAClC,MAAMC,QAAQ,GAAGL,mBAAmB,CAClCM,KAAK,IAAKA,KAAK,CAACC,WAAW,CAACC,gBAC9B,CAAC;EACD,MAAMC,UAAU,GAAGT,mBAAmB,CACpCM,KAAK,IAAKA,KAAK,CAACC,WAAW,CAACE,UAC9B,CAAC;EACD,MAAMC,kCAAkC,GAAGV,mBAAmB,CAC5DM,KAAK,IAAKA,KAAK,CAACK,OAAO,CAACD,kCAC1B,CAAC;EACD,MAAM;IAAEE,MAAM,EAAEC;EAAa,CAAC,GAAGf,mBAAmB,CAAC,CAAC;EACtD,MAAMgB,UAAU,GAAGb,cAAc,CAACc,MAAM,CAACV,QAAQ,CAAC;EAClD,MAAMW,MAAM,GAAGb,WAAW,CAACY,MAAM,CAACV,QAAQ,CAAC;EAE3C,MAAM;IAAEY,cAAc;IAAEC,qBAAqB;IAAEC;EAAsB,CAAC,GACrEH,MAAM;EACP,MAAM;IAAEI;EAA2B,CAAC,GAAGJ,MAAM,CAACK,OAAO;EAErD,OAAOxB,WAAW,CAChByB,KAAwB,IAAK;IAC7B,MAAM;MAAEC,KAAK;MAAEX;IAAO,CAAC,GAAGU,KAAK,CAACE,WAAW,CAACC,MAAM;IAClD,IAAIF,KAAK,IAAI,CAAC,IAAIX,MAAM,IAAI,CAAC,EAAE;IAE/B,MAAMc,QAAQ,GAAGC,IAAI,CAACC,GAAG,CAAChB,MAAM,GAAGC,YAAY,EAAE,CAAC,CAAC;IAEnDd,YAAY,CACX,CAAC8B,SAAiB,EAAEC,UAAkB,EAAEC,YAAoB,KAAK;MAChE,SAAS;;MACTZ,qBAAqB,CAACa,GAAG,CAAC;QACzBT,KAAK,EAAEM,SAAS;QAChBjB,MAAM,EAAEkB;MACT,CAAC,CAAC;MAEF,MAAMG,kBAAkB,GAAGf,qBAAqB,CAACgB,GAAG,CAAC,CAAC,IAAI,CAAC;MAC3DhB,qBAAqB,CAACc,GAAG,CAACD,YAAY,CAAC;MAEvC,IACC,CAACE,kBAAkB,IACnBnB,UAAU,CAACqB,kBAAkB,CAACD,GAAG,CAAC,CAAC,KAAK,CAAC,IACzCpB,UAAU,CAACsB,iBAAiB,CAACF,GAAG,CAAC,CAAC,KAAK,CAAC,EACvC;QACD;MACD;MAEA,IAAIzB,UAAU,IAAI,CAACC,kCAAkC,EAAE;QACtDO,cAAc,CAACe,GAAG,CAACD,YAAY,CAAC;QAChCjB,UAAU,CAACqB,kBAAkB,CAACH,GAAG,CAACD,YAAY,CAAC;QAC/C;MACD;MAEAX,0BAA0B,CACzBlB,8BAA8B,CAACmC,IAAI,EACnCN,YACD,CAAC;IACF,CAAC,EACDR,KAAK,EACLX,MAAM,EACNc,QACD,CAAC;EACF,CAAC,EACD,CACCZ,UAAU,EACVG,cAAc,EACdC,qBAAqB,EACrBC,qBAAqB,EACrBV,UAAU,EACVI,YAAY,EACZH,kCAAkC,EAClCU,0BAA0B,CAE5B,CAAC;AACF","ignoreList":[]}
|