react-native-screen-transitions 3.9.0 → 3.11.0
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/blank-stack/components/stack-view.js +64 -32
- package/lib/commonjs/blank-stack/components/stack-view.js.map +1 -1
- package/lib/commonjs/component-stack/components/stack-view.js +57 -23
- package/lib/commonjs/component-stack/components/stack-view.js.map +1 -1
- package/lib/commonjs/native-stack/views/NativeStackView.native.js +23 -13
- package/lib/commonjs/native-stack/views/NativeStackView.native.js.map +1 -1
- package/lib/commonjs/shared/adapters/with-screen-transitions/context.js +4 -0
- package/lib/commonjs/shared/adapters/with-screen-transitions/context.js.map +1 -1
- package/lib/commonjs/shared/adapters/with-screen-transitions/stack-layout.js +14 -8
- package/lib/commonjs/shared/adapters/with-screen-transitions/stack-layout.js.map +1 -1
- package/lib/commonjs/shared/animation/snap-to.js +3 -0
- package/lib/commonjs/shared/animation/snap-to.js.map +1 -1
- package/lib/commonjs/shared/components/activity/variants/activity-screen.js +26 -10
- package/lib/commonjs/shared/components/activity/variants/activity-screen.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/components/boundary-target.js +20 -21
- package/lib/commonjs/shared/components/boundary/components/boundary-target.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/create-boundary-component.js +16 -2
- package/lib/commonjs/shared/components/boundary/create-boundary-component.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js +18 -7
- package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.js +5 -7
- package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/hooks/use-boundary-measurement.js +1 -3
- package/lib/commonjs/shared/components/boundary/hooks/use-boundary-measurement.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/hooks/use-measurer.js +6 -13
- package/lib/commonjs/shared/components/boundary/hooks/use-measurer.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/index.js +4 -3
- package/lib/commonjs/shared/components/boundary/index.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js +67 -0
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js.map +1 -0
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +55 -188
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/index.js +21 -13
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/index.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/host.js +3 -14
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/host.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js +40 -33
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.js +30 -0
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.js.map +1 -0
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.js +3 -4
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js +74 -0
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js.map +1 -0
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +45 -144
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js +10 -19
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/index.js +45 -9
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/index.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js +2 -29
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/utils/naming.js +8 -1
- package/lib/commonjs/shared/components/boundary/portal/utils/naming.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/utils/resolve-portal.js +19 -15
- package/lib/commonjs/shared/components/boundary/portal/utils/resolve-portal.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/utils/teleport-control.js +1 -10
- package/lib/commonjs/shared/components/boundary/portal/utils/teleport-control.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/providers/boundary-root.provider.js +22 -41
- package/lib/commonjs/shared/components/boundary/providers/boundary-root.provider.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/utils/measured-bounds.js +19 -31
- package/lib/commonjs/shared/components/boundary/utils/measured-bounds.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/utils/refresh-signals.js +14 -13
- package/lib/commonjs/shared/components/boundary/utils/refresh-signals.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/utils/resolve-boundary-target.js +29 -0
- package/lib/commonjs/shared/components/boundary/utils/resolve-boundary-target.js.map +1 -0
- package/lib/commonjs/shared/components/create-transition-aware-component.js +9 -29
- package/lib/commonjs/shared/components/create-transition-aware-component.js.map +1 -1
- package/lib/commonjs/shared/components/masked-view.js +9 -1
- package/lib/commonjs/shared/components/masked-view.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/hooks/use-backdrop-pointer-events.js +5 -9
- 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 +3 -8
- 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 +9 -10
- package/lib/commonjs/shared/components/screen-container/layers/backdrop.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/content.js +10 -16
- 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 +9 -1
- 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 +1 -5
- package/lib/commonjs/shared/components/screen-container/layers/surface-container.js.map +1 -1
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +10 -12
- 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 +2 -3
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-open-transition-intent.js.map +1 -1
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js +7 -1
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js.map +1 -1
- package/lib/commonjs/shared/components/screen-lifecycle/index.js +2 -4
- package/lib/commonjs/shared/components/screen-lifecycle/index.js.map +1 -1
- package/lib/commonjs/shared/configs/presets.js +10 -10
- package/lib/commonjs/shared/configs/presets.js.map +1 -1
- package/lib/commonjs/shared/constants.js +1 -0
- package/lib/commonjs/shared/constants.js.map +1 -1
- package/lib/commonjs/shared/hooks/navigation/use-navigation-helpers.js +9 -8
- package/lib/commonjs/shared/hooks/navigation/use-navigation-helpers.js.map +1 -1
- package/lib/commonjs/shared/hooks/navigation/use-screen-state.js +1 -3
- package/lib/commonjs/shared/hooks/navigation/use-screen-state.js.map +1 -1
- package/lib/commonjs/shared/providers/helpers/measured-bounds-writes.js +4 -1
- package/lib/commonjs/shared/providers/helpers/measured-bounds-writes.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/animation.provider.js +7 -7
- 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 +1 -3
- package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +4 -10
- package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js +5 -7
- package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/index.js +2 -2
- package/lib/commonjs/shared/providers/screen/animation/use-screen-animation.js +1 -1
- package/lib/commonjs/shared/providers/screen/animation/use-screen-animation.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/descriptors/descriptors.provider.js +34 -42
- package/lib/commonjs/shared/providers/screen/descriptors/descriptors.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/descriptors/index.js +0 -12
- package/lib/commonjs/shared/providers/screen/descriptors/index.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js +9 -15
- package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js +3 -9
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture.js +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js +1 -3
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/index.js +2 -2
- package/lib/commonjs/shared/providers/screen/gestures/ownership/shadowing-claims.js +2 -2
- package/lib/commonjs/shared/providers/screen/gestures/ownership/shadowing-claims.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +8 -11
- package/lib/commonjs/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/activation/use-pan-activation.js +2 -4
- package/lib/commonjs/shared/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js +6 -8
- package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-reset.js +10 -0
- package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-reset.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/use-build-pan-gesture.js +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js +37 -3
- package/lib/commonjs/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +9 -6
- package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-release.js +3 -2
- package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-release.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js +7 -0
- package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js +5 -5
- package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js +2 -2
- package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/types.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/options/index.js +2 -2
- package/lib/commonjs/shared/providers/screen/options/options.provider.js +4 -8
- package/lib/commonjs/shared/providers/screen/options/options.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/screen-composer.js +2 -0
- package/lib/commonjs/shared/providers/screen/screen-composer.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/constants.js +10 -4
- package/lib/commonjs/shared/providers/screen/styles/constants.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js +93 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js +48 -5
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/helpers/select-interpolator-frame.js +32 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/select-interpolator-frame.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/transition-visual-state.js +42 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/transition-visual-state.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/visibility-gate.js +25 -6
- package/lib/commonjs/shared/providers/screen/styles/helpers/visibility-gate.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +87 -50
- 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 +11 -11
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/index.js +0 -6
- package/lib/commonjs/shared/providers/screen/styles/index.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/slot.provider.js +23 -19
- package/lib/commonjs/shared/providers/screen/styles/slot.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js +3 -11
- package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js.map +1 -1
- package/lib/commonjs/shared/providers/stack/blank-stack.provider.js +53 -49
- package/lib/commonjs/shared/providers/stack/blank-stack.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/stack/core.provider.js +20 -39
- package/lib/commonjs/shared/providers/stack/core.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/stack/direct.provider.js +46 -40
- package/lib/commonjs/shared/providers/stack/direct.provider.js.map +1 -1
- package/lib/commonjs/shared/stores/animation.store.js +19 -1
- package/lib/commonjs/shared/stores/animation.store.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/links.js +4 -4
- package/lib/commonjs/shared/stores/bounds/internals/links.js.map +1 -1
- package/lib/commonjs/shared/stores/scroll.store.js +20 -2
- package/lib/commonjs/shared/stores/scroll.store.js.map +1 -1
- package/lib/commonjs/shared/stores/system.store.js +2 -0
- package/lib/commonjs/shared/stores/system.store.js.map +1 -1
- package/lib/commonjs/shared/types/stack.types.js.map +1 -1
- package/lib/commonjs/shared/utils/animation/animate-to-progress.js +35 -12
- package/lib/commonjs/shared/utils/animation/animate-to-progress.js.map +1 -1
- package/lib/commonjs/shared/utils/animation/animate.js +14 -2
- package/lib/commonjs/shared/utils/animation/animate.js.map +1 -1
- package/lib/commonjs/shared/utils/animation/spring/spring.js +22 -2
- package/lib/commonjs/shared/utils/animation/spring/spring.js.map +1 -1
- package/lib/commonjs/shared/utils/animation/spring/springUtils.js +96 -0
- package/lib/commonjs/shared/utils/animation/spring/springUtils.js.map +1 -1
- package/lib/commonjs/shared/utils/animation/state.js +4 -0
- package/lib/commonjs/shared/utils/bounds/helpers/create-bounds-accessor-core.js +6 -0
- package/lib/commonjs/shared/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/navigation/reveal/math.js +17 -5
- package/lib/commonjs/shared/utils/bounds/navigation/reveal/math.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js +44 -20
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/drag.js +2 -31
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/drag.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/helpers.js +3 -17
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/helpers.js.map +1 -1
- package/lib/commonjs/shared/utils/create-provider.js +61 -75
- package/lib/commonjs/shared/utils/create-provider.js.map +1 -1
- package/lib/module/blank-stack/components/stack-view.js +66 -34
- package/lib/module/blank-stack/components/stack-view.js.map +1 -1
- package/lib/module/component-stack/components/stack-view.js +60 -26
- package/lib/module/component-stack/components/stack-view.js.map +1 -1
- package/lib/module/native-stack/views/NativeStackView.native.js +24 -14
- package/lib/module/native-stack/views/NativeStackView.native.js.map +1 -1
- package/lib/module/shared/adapters/with-screen-transitions/context.js +3 -0
- package/lib/module/shared/adapters/with-screen-transitions/context.js.map +1 -1
- package/lib/module/shared/adapters/with-screen-transitions/stack-layout.js +14 -8
- package/lib/module/shared/adapters/with-screen-transitions/stack-layout.js.map +1 -1
- package/lib/module/shared/animation/snap-to.js +3 -0
- package/lib/module/shared/animation/snap-to.js.map +1 -1
- package/lib/module/shared/components/activity/variants/activity-screen.js +26 -10
- package/lib/module/shared/components/activity/variants/activity-screen.js.map +1 -1
- package/lib/module/shared/components/boundary/components/boundary-target.js +20 -21
- package/lib/module/shared/components/boundary/components/boundary-target.js.map +1 -1
- package/lib/module/shared/components/boundary/create-boundary-component.js +17 -3
- package/lib/module/shared/components/boundary/create-boundary-component.js.map +1 -1
- package/lib/module/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js +19 -7
- package/lib/module/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js.map +1 -1
- package/lib/module/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.js +5 -7
- package/lib/module/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.js.map +1 -1
- package/lib/module/shared/components/boundary/hooks/use-boundary-measurement.js +1 -3
- package/lib/module/shared/components/boundary/hooks/use-boundary-measurement.js.map +1 -1
- package/lib/module/shared/components/boundary/hooks/use-measurer.js +7 -14
- package/lib/module/shared/components/boundary/hooks/use-measurer.js.map +1 -1
- package/lib/module/shared/components/boundary/index.js +3 -2
- package/lib/module/shared/components/boundary/index.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js +60 -0
- package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.js.map +1 -0
- package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +58 -191
- package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/index.js +21 -13
- package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/index.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/host.js +4 -15
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/host.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js +43 -36
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.js +25 -0
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.js.map +1 -0
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.js +3 -4
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js +69 -0
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js.map +1 -0
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +47 -146
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js +13 -22
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/index.js +44 -9
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/index.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js +1 -27
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/utils/naming.js +6 -0
- package/lib/module/shared/components/boundary/portal/utils/naming.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/utils/resolve-portal.js +19 -15
- package/lib/module/shared/components/boundary/portal/utils/resolve-portal.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/utils/teleport-control.js +0 -8
- package/lib/module/shared/components/boundary/portal/utils/teleport-control.js.map +1 -1
- package/lib/module/shared/components/boundary/providers/boundary-root.provider.js +22 -40
- package/lib/module/shared/components/boundary/providers/boundary-root.provider.js.map +1 -1
- package/lib/module/shared/components/boundary/utils/measured-bounds.js +17 -28
- package/lib/module/shared/components/boundary/utils/measured-bounds.js.map +1 -1
- package/lib/module/shared/components/boundary/utils/refresh-signals.js +14 -13
- package/lib/module/shared/components/boundary/utils/refresh-signals.js.map +1 -1
- package/lib/module/shared/components/boundary/utils/resolve-boundary-target.js +24 -0
- package/lib/module/shared/components/boundary/utils/resolve-boundary-target.js.map +1 -0
- package/lib/module/shared/components/create-transition-aware-component.js +10 -30
- package/lib/module/shared/components/create-transition-aware-component.js.map +1 -1
- package/lib/module/shared/components/masked-view.js +10 -2
- package/lib/module/shared/components/masked-view.js.map +1 -1
- package/lib/module/shared/components/screen-container/hooks/use-backdrop-pointer-events.js +8 -12
- 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 +4 -9
- 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 +10 -11
- package/lib/module/shared/components/screen-container/layers/backdrop.js.map +1 -1
- package/lib/module/shared/components/screen-container/layers/content.js +12 -18
- 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 +10 -2
- 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 +2 -6
- package/lib/module/shared/components/screen-container/layers/surface-container.js.map +1 -1
- package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +13 -15
- 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 +3 -4
- package/lib/module/shared/components/screen-lifecycle/hooks/use-open-transition-intent.js.map +1 -1
- package/lib/module/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js +7 -1
- package/lib/module/shared/components/screen-lifecycle/hooks/use-transition-start-controller.js.map +1 -1
- package/lib/module/shared/components/screen-lifecycle/index.js +3 -5
- package/lib/module/shared/components/screen-lifecycle/index.js.map +1 -1
- package/lib/module/shared/configs/presets.js +10 -10
- package/lib/module/shared/configs/presets.js.map +1 -1
- package/lib/module/shared/constants.js +1 -0
- package/lib/module/shared/constants.js.map +1 -1
- package/lib/module/shared/hooks/navigation/use-navigation-helpers.js +9 -8
- package/lib/module/shared/hooks/navigation/use-navigation-helpers.js.map +1 -1
- package/lib/module/shared/hooks/navigation/use-screen-state.js +2 -4
- package/lib/module/shared/hooks/navigation/use-screen-state.js.map +1 -1
- package/lib/module/shared/providers/helpers/measured-bounds-writes.js +4 -1
- package/lib/module/shared/providers/helpers/measured-bounds-writes.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/animation.provider.js +6 -5
- 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 +2 -4
- package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +2 -2
- package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js +4 -10
- package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state/index.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/pipeline.js +6 -8
- package/lib/module/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/index.js +1 -1
- package/lib/module/shared/providers/screen/animation/index.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/use-screen-animation.js +2 -2
- package/lib/module/shared/providers/screen/animation/use-screen-animation.js.map +1 -1
- package/lib/module/shared/providers/screen/descriptors/descriptors.provider.js +34 -40
- package/lib/module/shared/providers/screen/descriptors/descriptors.provider.js.map +1 -1
- package/lib/module/shared/providers/screen/descriptors/index.js +1 -1
- package/lib/module/shared/providers/screen/descriptors/index.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/gestures.provider.js +8 -14
- package/lib/module/shared/providers/screen/gestures/gestures.provider.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js +5 -11
- package/lib/module/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/hooks/use-screen-gesture.js +2 -2
- package/lib/module/shared/providers/screen/gestures/hooks/use-screen-gesture.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js +2 -4
- package/lib/module/shared/providers/screen/gestures/hooks/use-stable-runtime-config.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/index.js +1 -1
- package/lib/module/shared/providers/screen/gestures/index.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/ownership/shadowing-claims.js +2 -2
- package/lib/module/shared/providers/screen/gestures/ownership/shadowing-claims.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +10 -13
- package/lib/module/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pan/activation/use-pan-activation.js +3 -5
- package/lib/module/shared/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js +7 -9
- package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-reset.js +10 -0
- package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-reset.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pan/use-build-pan-gesture.js +2 -2
- package/lib/module/shared/providers/screen/gestures/pan/use-build-pan-gesture.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js +35 -2
- package/lib/module/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +10 -7
- package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-release.js +3 -2
- package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-release.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js +7 -0
- package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-reset.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js +2 -2
- package/lib/module/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js +3 -3
- package/lib/module/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js +4 -4
- package/lib/module/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/types.js.map +1 -1
- package/lib/module/shared/providers/screen/options/index.js +1 -1
- package/lib/module/shared/providers/screen/options/index.js.map +1 -1
- package/lib/module/shared/providers/screen/options/options.provider.js +3 -7
- package/lib/module/shared/providers/screen/options/options.provider.js.map +1 -1
- package/lib/module/shared/providers/screen/screen-composer.js +2 -0
- package/lib/module/shared/providers/screen/screen-composer.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/constants.js +8 -3
- package/lib/module/shared/providers/screen/styles/constants.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js +88 -0
- package/lib/module/shared/providers/screen/styles/helpers/resolve-interpolator-style-handoff.js.map +1 -0
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js +49 -6
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/helpers/select-interpolator-frame.js +27 -0
- package/lib/module/shared/providers/screen/styles/helpers/select-interpolator-frame.js.map +1 -0
- package/lib/module/shared/providers/screen/styles/helpers/transition-visual-state.js +35 -0
- package/lib/module/shared/providers/screen/styles/helpers/transition-visual-state.js.map +1 -0
- package/lib/module/shared/providers/screen/styles/helpers/visibility-gate.js +23 -5
- package/lib/module/shared/providers/screen/styles/helpers/visibility-gate.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +90 -53
- 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 +12 -12
- package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/index.js +1 -1
- package/lib/module/shared/providers/screen/styles/index.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/slot.provider.js +23 -18
- package/lib/module/shared/providers/screen/styles/slot.provider.js.map +1 -1
- package/lib/module/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js +3 -11
- package/lib/module/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.js.map +1 -1
- package/lib/module/shared/providers/stack/blank-stack.provider.js +50 -47
- package/lib/module/shared/providers/stack/blank-stack.provider.js.map +1 -1
- package/lib/module/shared/providers/stack/core.provider.js +19 -39
- package/lib/module/shared/providers/stack/core.provider.js.map +1 -1
- package/lib/module/shared/providers/stack/direct.provider.js +44 -41
- package/lib/module/shared/providers/stack/direct.provider.js.map +1 -1
- package/lib/module/shared/stores/animation.store.js +17 -0
- package/lib/module/shared/stores/animation.store.js.map +1 -1
- package/lib/module/shared/stores/bounds/internals/links.js +4 -4
- package/lib/module/shared/stores/bounds/internals/links.js.map +1 -1
- package/lib/module/shared/stores/scroll.store.js +17 -0
- package/lib/module/shared/stores/scroll.store.js.map +1 -1
- package/lib/module/shared/stores/system.store.js +2 -0
- package/lib/module/shared/stores/system.store.js.map +1 -1
- package/lib/module/shared/types/stack.types.js.map +1 -1
- package/lib/module/shared/utils/animation/animate-to-progress.js +33 -11
- package/lib/module/shared/utils/animation/animate-to-progress.js.map +1 -1
- package/lib/module/shared/utils/animation/animate.js +14 -2
- package/lib/module/shared/utils/animation/animate.js.map +1 -1
- package/lib/module/shared/utils/animation/spring/spring.js +23 -3
- package/lib/module/shared/utils/animation/spring/spring.js.map +1 -1
- package/lib/module/shared/utils/animation/spring/springUtils.js +95 -0
- package/lib/module/shared/utils/animation/spring/springUtils.js.map +1 -1
- package/lib/module/shared/utils/animation/state.js +2 -0
- package/lib/module/shared/utils/bounds/helpers/create-bounds-accessor-core.js +6 -0
- package/lib/module/shared/utils/bounds/helpers/create-bounds-accessor-core.js.map +1 -1
- package/lib/module/shared/utils/bounds/navigation/reveal/math.js +16 -5
- package/lib/module/shared/utils/bounds/navigation/reveal/math.js.map +1 -1
- package/lib/module/shared/utils/bounds/navigation/zoom/build.js +46 -22
- package/lib/module/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
- package/lib/module/shared/utils/bounds/navigation/zoom/drag.js +2 -30
- package/lib/module/shared/utils/bounds/navigation/zoom/drag.js.map +1 -1
- package/lib/module/shared/utils/bounds/navigation/zoom/helpers.js +4 -18
- package/lib/module/shared/utils/bounds/navigation/zoom/helpers.js.map +1 -1
- package/lib/module/shared/utils/create-provider.js +62 -76
- package/lib/module/shared/utils/create-provider.js.map +1 -1
- package/lib/typescript/blank-stack/components/stack-view.d.ts +5 -1
- package/lib/typescript/blank-stack/components/stack-view.d.ts.map +1 -1
- package/lib/typescript/blank-stack/types.d.ts +1 -4
- package/lib/typescript/blank-stack/types.d.ts.map +1 -1
- package/lib/typescript/component-stack/components/stack-view.d.ts +5 -1
- package/lib/typescript/component-stack/components/stack-view.d.ts.map +1 -1
- package/lib/typescript/native-stack/views/NativeStackView.native.d.ts +2 -2
- package/lib/typescript/native-stack/views/NativeStackView.native.d.ts.map +1 -1
- package/lib/typescript/shared/adapters/with-screen-transitions/context.d.ts +2 -0
- package/lib/typescript/shared/adapters/with-screen-transitions/context.d.ts.map +1 -1
- package/lib/typescript/shared/adapters/with-screen-transitions/stack-layout.d.ts +1 -1
- package/lib/typescript/shared/adapters/with-screen-transitions/stack-layout.d.ts.map +1 -1
- package/lib/typescript/shared/animation/snap-to.d.ts.map +1 -1
- package/lib/typescript/shared/components/activity/variants/activity-screen.d.ts +3 -2
- package/lib/typescript/shared/components/activity/variants/activity-screen.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/components/boundary-target.d.ts +2 -1
- package/lib/typescript/shared/components/boundary/components/boundary-target.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/create-boundary-component.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/hooks/use-boundary-measurement.d.ts +3 -4
- package/lib/typescript/shared/components/boundary/hooks/use-boundary-measurement.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/hooks/use-measurer.d.ts +1 -1
- package/lib/typescript/shared/components/boundary/hooks/use-measurer.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/index.d.ts +6 -9
- package/lib/typescript/shared/components/boundary/index.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.d.ts +26 -0
- package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.d.ts.map +1 -0
- package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.d.ts +1 -3
- package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-content-portal/index.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/host.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.d.ts +9 -0
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.d.ts.map +1 -0
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.d.ts +1 -10
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.d.ts +17 -0
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.d.ts.map +1 -0
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.d.ts +1 -3
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.d.ts +0 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/index.d.ts +2 -2
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/index.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.d.ts +0 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.d.ts +1 -10
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/utils/naming.d.ts +1 -0
- package/lib/typescript/shared/components/boundary/portal/utils/naming.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/utils/resolve-portal.d.ts +2 -3
- package/lib/typescript/shared/components/boundary/portal/utils/resolve-portal.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/utils/teleport-control.d.ts +0 -4
- package/lib/typescript/shared/components/boundary/portal/utils/teleport-control.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/providers/boundary-root.provider.d.ts +8 -12
- package/lib/typescript/shared/components/boundary/providers/boundary-root.provider.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/utils/measured-bounds.d.ts +1 -3
- package/lib/typescript/shared/components/boundary/utils/measured-bounds.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/utils/refresh-signals.d.ts +0 -3
- package/lib/typescript/shared/components/boundary/utils/refresh-signals.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/utils/resolve-boundary-target.d.ts +12 -0
- package/lib/typescript/shared/components/boundary/utils/resolve-boundary-target.d.ts.map +1 -0
- package/lib/typescript/shared/components/create-transition-aware-component.d.ts +0 -2
- package/lib/typescript/shared/components/create-transition-aware-component.d.ts.map +1 -1
- package/lib/typescript/shared/components/masked-view.d.ts.map +1 -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/hooks/use-content-layout.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/content.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-lifecycle/hooks/use-close-transition-intent.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-lifecycle/hooks/use-open-transition-intent.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-lifecycle/hooks/use-transition-start-controller.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-lifecycle/index.d.ts.map +1 -1
- package/lib/typescript/shared/configs/index.d.ts +6 -6
- package/lib/typescript/shared/configs/presets.d.ts +6 -6
- package/lib/typescript/shared/configs/presets.d.ts.map +1 -1
- package/lib/typescript/shared/constants.d.ts.map +1 -1
- package/lib/typescript/shared/hooks/navigation/use-navigation-helpers.d.ts.map +1 -1
- package/lib/typescript/shared/hooks/navigation/use-screen-state.d.ts.map +1 -1
- package/lib/typescript/shared/index.d.ts +14 -22
- package/lib/typescript/shared/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/helpers/measured-bounds-writes.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.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/pipeline.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/index.d.ts +1 -1
- package/lib/typescript/shared/providers/screen/animation/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/descriptors/descriptors.provider.d.ts +10 -11
- package/lib/typescript/shared/providers/screen/descriptors/descriptors.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/descriptors/index.d.ts +1 -1
- package/lib/typescript/shared/providers/screen/descriptors/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/gestures.provider.d.ts +4 -1
- package/lib/typescript/shared/providers/screen/gestures/gestures.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-screen-gesture-config.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-stable-runtime-config.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/index.d.ts +1 -1
- package/lib/typescript/shared/providers/screen/gestures/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/ownership/shadowing-claims.d.ts +2 -3
- package/lib/typescript/shared/providers/screen/gestures/ownership/shadowing-claims.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pan/activation/use-pan-activation.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-reset.d.ts +4 -1
- package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-reset.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts +2 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-release.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-reset.d.ts +3 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-reset.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.d.ts +1 -1
- package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/types.d.ts +1 -9
- package/lib/typescript/shared/providers/screen/gestures/types.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/options/index.d.ts +1 -1
- package/lib/typescript/shared/providers/screen/options/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/options/options.provider.d.ts +4 -1
- package/lib/typescript/shared/providers/screen/options/options.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/screen-composer.d.ts +3 -2
- package/lib/typescript/shared/providers/screen/screen-composer.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/constants.d.ts +1 -0
- package/lib/typescript/shared/providers/screen/styles/constants.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-interpolator-style-handoff.d.ts +12 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-interpolator-style-handoff.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts +5 -3
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/helpers/select-interpolator-frame.d.ts +4 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/select-interpolator-frame.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/transition-visual-state.d.ts +18 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/transition-visual-state.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/visibility-gate.d.ts +12 -2
- package/lib/typescript/shared/providers/screen/styles/helpers/visibility-gate.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/hooks/use-interpolated-style-maps.d.ts +10 -5
- 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 +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/index.d.ts +1 -1
- package/lib/typescript/shared/providers/screen/styles/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/slot.provider.d.ts +4 -1
- package/lib/typescript/shared/providers/screen/styles/slot.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.d.ts.map +1 -1
- package/lib/typescript/shared/providers/stack/blank-stack.provider.d.ts +12 -6
- package/lib/typescript/shared/providers/stack/blank-stack.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/stack/core.provider.d.ts +10 -8
- package/lib/typescript/shared/providers/stack/core.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/stack/direct.provider.d.ts +11 -4
- package/lib/typescript/shared/providers/stack/direct.provider.d.ts.map +1 -1
- package/lib/typescript/shared/stores/animation.store.d.ts +1 -0
- package/lib/typescript/shared/stores/animation.store.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/internals/links.d.ts +1 -1
- package/lib/typescript/shared/stores/bounds/internals/links.d.ts.map +1 -1
- package/lib/typescript/shared/stores/scroll.store.d.ts +7 -0
- package/lib/typescript/shared/stores/scroll.store.d.ts.map +1 -1
- package/lib/typescript/shared/stores/system.store.d.ts +5 -0
- package/lib/typescript/shared/stores/system.store.d.ts.map +1 -1
- package/lib/typescript/shared/types/gesture.types.d.ts +11 -0
- package/lib/typescript/shared/types/gesture.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/providers/blank-stack-provider.types.d.ts +12 -20
- package/lib/typescript/shared/types/providers/blank-stack-provider.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/providers/direct-stack.types.d.ts +2 -0
- package/lib/typescript/shared/types/providers/direct-stack.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/screen.types.d.ts +0 -30
- package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/stack.types.d.ts +2 -4
- package/lib/typescript/shared/types/stack.types.d.ts.map +1 -1
- package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts +8 -2
- package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts.map +1 -1
- package/lib/typescript/shared/utils/animation/animate.d.ts +2 -2
- package/lib/typescript/shared/utils/animation/animate.d.ts.map +1 -1
- package/lib/typescript/shared/utils/animation/spring/spring.d.ts +2 -2
- package/lib/typescript/shared/utils/animation/spring/spring.d.ts.map +1 -1
- package/lib/typescript/shared/utils/animation/spring/springUtils.d.ts +3 -0
- package/lib/typescript/shared/utils/animation/spring/springUtils.d.ts.map +1 -1
- package/lib/typescript/shared/utils/animation/state.d.ts +6 -0
- package/lib/typescript/shared/utils/animation/state.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/helpers/create-bounds-accessor-core.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/navigation/reveal/math.d.ts +9 -0
- package/lib/typescript/shared/utils/bounds/navigation/reveal/math.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/navigation/zoom/build.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/navigation/zoom/drag.d.ts +2 -11
- package/lib/typescript/shared/utils/bounds/navigation/zoom/drag.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/navigation/zoom/helpers.d.ts +7 -4
- package/lib/typescript/shared/utils/bounds/navigation/zoom/helpers.d.ts.map +1 -1
- package/lib/typescript/shared/utils/create-provider.d.ts +17 -9
- package/lib/typescript/shared/utils/create-provider.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/blank-stack/components/stack-view.tsx +109 -53
- package/src/blank-stack/types.ts +1 -4
- package/src/component-stack/components/stack-view.tsx +96 -32
- package/src/native-stack/views/NativeStackView.native.tsx +135 -124
- package/src/shared/adapters/with-screen-transitions/context.tsx +5 -0
- package/src/shared/adapters/with-screen-transitions/stack-layout.tsx +20 -7
- package/src/shared/animation/snap-to.ts +6 -0
- package/src/shared/components/activity/variants/activity-screen.tsx +46 -13
- package/src/shared/components/boundary/components/boundary-target.tsx +38 -24
- package/src/shared/components/boundary/create-boundary-component.tsx +29 -3
- package/src/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.ts +28 -14
- package/src/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.ts +7 -13
- package/src/shared/components/boundary/hooks/use-boundary-measurement.ts +3 -9
- package/src/shared/components/boundary/hooks/use-measurer.ts +7 -16
- package/src/shared/components/boundary/index.tsx +4 -8
- package/src/shared/components/boundary/portal/components/boundary-content-portal/helpers/active-handoff-receiver.ts +103 -0
- package/src/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.ts +94 -271
- package/src/shared/components/boundary/portal/components/boundary-content-portal/index.tsx +31 -12
- package/src/shared/components/boundary/portal/components/boundary-portal/components/host.tsx +14 -26
- package/src/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.tsx +64 -62
- package/src/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.ts +36 -0
- package/src/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.ts +2 -9
- package/src/shared/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.ts +117 -0
- package/src/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts +58 -208
- package/src/shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.ts +12 -20
- package/src/shared/components/boundary/portal/components/boundary-portal/index.tsx +72 -12
- package/src/shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.ts +0 -1
- package/src/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.ts +2 -39
- package/src/shared/components/boundary/portal/utils/naming.ts +11 -0
- package/src/shared/components/boundary/portal/utils/resolve-portal.ts +26 -18
- package/src/shared/components/boundary/portal/utils/teleport-control.ts +0 -12
- package/src/shared/components/boundary/providers/boundary-root.provider.tsx +36 -91
- package/src/shared/components/boundary/utils/measured-bounds.ts +29 -32
- package/src/shared/components/boundary/utils/refresh-signals.ts +23 -18
- package/src/shared/components/boundary/utils/resolve-boundary-target.tsx +39 -0
- package/src/shared/components/create-transition-aware-component.tsx +11 -36
- package/src/shared/components/masked-view.tsx +20 -4
- package/src/shared/components/screen-container/hooks/use-backdrop-pointer-events.ts +10 -8
- package/src/shared/components/screen-container/hooks/use-content-layout.ts +10 -10
- package/src/shared/components/screen-container/layers/backdrop.tsx +23 -10
- package/src/shared/components/screen-container/layers/content.tsx +20 -21
- package/src/shared/components/screen-container/layers/maybe-masked-navigation-container.tsx +14 -4
- package/src/shared/components/screen-container/layers/surface-container.tsx +4 -4
- package/src/shared/components/screen-lifecycle/hooks/use-close-transition-intent.ts +19 -9
- package/src/shared/components/screen-lifecycle/hooks/use-open-transition-intent.ts +5 -2
- package/src/shared/components/screen-lifecycle/hooks/use-transition-start-controller.ts +8 -0
- package/src/shared/components/screen-lifecycle/index.tsx +3 -2
- package/src/shared/configs/presets.ts +13 -13
- package/src/shared/constants.ts +1 -0
- package/src/shared/hooks/navigation/use-navigation-helpers.ts +9 -8
- package/src/shared/hooks/navigation/use-screen-state.ts +4 -2
- package/src/shared/providers/helpers/measured-bounds-writes.ts +1 -0
- package/src/shared/providers/screen/animation/animation.provider.tsx +170 -173
- package/src/shared/providers/screen/animation/helpers/accessors/use-build-bounds-accessor.tsx +4 -2
- package/src/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.ts +2 -2
- package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/index.ts +4 -21
- package/src/shared/providers/screen/animation/helpers/pipeline.ts +6 -10
- package/src/shared/providers/screen/animation/index.tsx +1 -1
- package/src/shared/providers/screen/animation/use-screen-animation.tsx +2 -2
- package/src/shared/providers/screen/descriptors/descriptors.provider.tsx +83 -72
- package/src/shared/providers/screen/descriptors/index.tsx +0 -2
- package/src/shared/providers/screen/gestures/gestures.provider.tsx +71 -70
- package/src/shared/providers/screen/gestures/hooks/use-screen-gesture-config.ts +7 -8
- package/src/shared/providers/screen/gestures/hooks/use-screen-gesture.ts +2 -2
- package/src/shared/providers/screen/gestures/hooks/use-stable-runtime-config.ts +4 -2
- package/src/shared/providers/screen/gestures/index.tsx +1 -1
- package/src/shared/providers/screen/gestures/ownership/shadowing-claims.ts +3 -4
- package/src/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.ts +16 -8
- package/src/shared/providers/screen/gestures/pan/activation/use-pan-activation.ts +7 -2
- package/src/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.ts +9 -16
- package/src/shared/providers/screen/gestures/pan/behavior/pan-reset.ts +14 -0
- package/src/shared/providers/screen/gestures/pan/use-build-pan-gesture.ts +2 -2
- package/src/shared/providers/screen/gestures/pinch/activation/use-pinch-activation.ts +74 -3
- package/src/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.ts +13 -11
- package/src/shared/providers/screen/gestures/pinch/behavior/pinch-release.ts +2 -4
- package/src/shared/providers/screen/gestures/pinch/behavior/pinch-reset.ts +10 -0
- package/src/shared/providers/screen/gestures/pinch/use-build-pinch-gesture.ts +2 -2
- package/src/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.tsx +4 -4
- package/src/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.ts +4 -4
- package/src/shared/providers/screen/gestures/types.ts +0 -14
- package/src/shared/providers/screen/options/index.ts +1 -1
- package/src/shared/providers/screen/options/options.provider.tsx +24 -28
- package/src/shared/providers/screen/screen-composer.tsx +9 -2
- package/src/shared/providers/screen/styles/constants.ts +8 -6
- package/src/shared/providers/screen/styles/helpers/resolve-interpolator-style-handoff.ts +138 -0
- package/src/shared/providers/screen/styles/helpers/resolve-slot-styles/index.ts +71 -4
- package/src/shared/providers/screen/styles/helpers/select-interpolator-frame.ts +41 -0
- package/src/shared/providers/screen/styles/helpers/transition-visual-state.ts +44 -0
- package/src/shared/providers/screen/styles/helpers/visibility-gate.ts +42 -7
- package/src/shared/providers/screen/styles/hooks/use-interpolated-style-maps.tsx +129 -70
- package/src/shared/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +18 -15
- package/src/shared/providers/screen/styles/index.tsx +0 -1
- package/src/shared/providers/screen/styles/slot.provider.tsx +62 -48
- package/src/shared/providers/stack/blank-stack-state/helpers/build-blank-stack-state.ts +4 -17
- package/src/shared/providers/stack/blank-stack.provider.tsx +66 -75
- package/src/shared/providers/stack/core.provider.tsx +46 -76
- package/src/shared/providers/stack/direct.provider.tsx +77 -57
- package/src/shared/stores/animation.store.ts +19 -0
- package/src/shared/stores/bounds/internals/links.ts +13 -2
- package/src/shared/stores/scroll.store.ts +23 -0
- package/src/shared/stores/system.store.ts +8 -0
- package/src/shared/types/gesture.types.ts +11 -0
- package/src/shared/types/providers/blank-stack-provider.types.ts +8 -22
- package/src/shared/types/providers/direct-stack.types.ts +2 -0
- package/src/shared/types/screen.types.ts +0 -32
- package/src/shared/types/stack.types.ts +2 -4
- package/src/shared/utils/animation/animate-to-progress.ts +72 -41
- package/src/shared/utils/animation/animate.ts +18 -2
- package/src/shared/utils/animation/spring/spring.ts +36 -1
- package/src/shared/utils/animation/spring/springUtils.ts +130 -0
- package/src/shared/utils/animation/state.ts +8 -0
- package/src/shared/utils/bounds/helpers/create-bounds-accessor-core.ts +7 -0
- package/src/shared/utils/bounds/navigation/reveal/math.ts +21 -5
- package/src/shared/utils/bounds/navigation/zoom/build.ts +77 -23
- package/src/shared/utils/bounds/navigation/zoom/drag.ts +3 -42
- package/src/shared/utils/bounds/navigation/zoom/helpers.ts +9 -23
- package/src/shared/utils/create-provider.tsx +105 -136
- package/lib/commonjs/shared/components/boundary/hooks/use-register-target.js +0 -32
- package/lib/commonjs/shared/components/boundary/hooks/use-register-target.js.map +0 -1
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js +0 -51
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js.map +0 -1
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.js +0 -14
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.js.map +0 -1
- package/lib/commonjs/shared/components/boundary/portal/utils/ownership.js +0 -220
- package/lib/commonjs/shared/components/boundary/portal/utils/ownership.js.map +0 -1
- package/lib/commonjs/shared/components/boundary/portal/utils/shallow-equal.js +0 -29
- package/lib/commonjs/shared/components/boundary/portal/utils/shallow-equal.js.map +0 -1
- package/lib/commonjs/shared/components/boundary/portal/utils/visible-host.js +0 -25
- package/lib/commonjs/shared/components/boundary/portal/utils/visible-host.js.map +0 -1
- package/lib/commonjs/shared/hooks/use-stable-callback-value.js +0 -68
- package/lib/commonjs/shared/hooks/use-stable-callback-value.js.map +0 -1
- package/lib/commonjs/shared/providers/register-bounds.provider.js +0 -311
- package/lib/commonjs/shared/providers/register-bounds.provider.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js +0 -64
- package/lib/commonjs/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js +0 -21
- package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js +0 -29
- package/lib/commonjs/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js +0 -38
- package/lib/commonjs/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/origin.provider.js +0 -41
- package/lib/commonjs/shared/providers/screen/origin.provider.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/styles/helpers/opening-phase.js +0 -32
- package/lib/commonjs/shared/providers/screen/styles/helpers/opening-phase.js.map +0 -1
- package/lib/module/shared/components/boundary/hooks/use-register-target.js +0 -27
- package/lib/module/shared/components/boundary/hooks/use-register-target.js.map +0 -1
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js +0 -46
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.js.map +0 -1
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.js +0 -9
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.js.map +0 -1
- package/lib/module/shared/components/boundary/portal/utils/ownership.js +0 -213
- package/lib/module/shared/components/boundary/portal/utils/ownership.js.map +0 -1
- package/lib/module/shared/components/boundary/portal/utils/shallow-equal.js +0 -24
- package/lib/module/shared/components/boundary/portal/utils/shallow-equal.js.map +0 -1
- package/lib/module/shared/components/boundary/portal/utils/visible-host.js +0 -20
- package/lib/module/shared/components/boundary/portal/utils/visible-host.js.map +0 -1
- package/lib/module/shared/hooks/use-stable-callback-value.js +0 -63
- package/lib/module/shared/hooks/use-stable-callback-value.js.map +0 -1
- package/lib/module/shared/providers/register-bounds.provider.js +0 -307
- package/lib/module/shared/providers/register-bounds.provider.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js +0 -59
- package/lib/module/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js +0 -15
- package/lib/module/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js +0 -24
- package/lib/module/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js +0 -33
- package/lib/module/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.js.map +0 -1
- package/lib/module/shared/providers/screen/origin.provider.js +0 -33
- package/lib/module/shared/providers/screen/origin.provider.js.map +0 -1
- package/lib/module/shared/providers/screen/styles/helpers/opening-phase.js +0 -26
- package/lib/module/shared/providers/screen/styles/helpers/opening-phase.js.map +0 -1
- package/lib/typescript/shared/components/boundary/hooks/use-register-target.d.ts +0 -10
- package/lib/typescript/shared/components/boundary/hooks/use-register-target.d.ts.map +0 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.d.ts +0 -13
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.d.ts.map +0 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.d.ts +0 -2
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.d.ts.map +0 -1
- package/lib/typescript/shared/components/boundary/portal/utils/ownership.d.ts +0 -34
- package/lib/typescript/shared/components/boundary/portal/utils/ownership.d.ts.map +0 -1
- package/lib/typescript/shared/components/boundary/portal/utils/shallow-equal.d.ts +0 -8
- package/lib/typescript/shared/components/boundary/portal/utils/shallow-equal.d.ts.map +0 -1
- package/lib/typescript/shared/components/boundary/portal/utils/visible-host.d.ts +0 -8
- package/lib/typescript/shared/components/boundary/portal/utils/visible-host.d.ts.map +0 -1
- package/lib/typescript/shared/hooks/use-stable-callback-value.d.ts +0 -13
- package/lib/typescript/shared/hooks/use-stable-callback-value.d.ts.map +0 -1
- package/lib/typescript/shared/providers/register-bounds.provider.d.ts +0 -25
- package/lib/typescript/shared/providers/register-bounds.provider.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.d.ts +0 -15
- package/lib/typescript/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.d.ts +0 -4
- package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.d.ts +0 -5
- package/lib/typescript/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.d.ts +0 -9
- package/lib/typescript/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/origin.provider.d.ts +0 -11
- package/lib/typescript/shared/providers/screen/origin.provider.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/styles/helpers/opening-phase.d.ts +0 -16
- package/lib/typescript/shared/providers/screen/styles/helpers/opening-phase.d.ts.map +0 -1
- package/src/shared/components/boundary/hooks/use-register-target.ts +0 -43
- package/src/shared/components/boundary/portal/components/boundary-portal/components/portal-slot.tsx +0 -79
- package/src/shared/components/boundary/portal/components/boundary-portal/helpers/host-name.ts +0 -10
- package/src/shared/components/boundary/portal/utils/ownership.ts +0 -319
- package/src/shared/components/boundary/portal/utils/shallow-equal.ts +0 -25
- package/src/shared/components/boundary/portal/utils/visible-host.ts +0 -24
- package/src/shared/hooks/use-stable-callback-value.ts +0 -76
- package/src/shared/providers/register-bounds.provider.tsx +0 -402
- package/src/shared/providers/screen/gestures/rotation/activation/use-rotation-activation.ts +0 -88
- package/src/shared/providers/screen/gestures/rotation/behavior/rotation-lifecycle.ts +0 -19
- package/src/shared/providers/screen/gestures/rotation/behavior/use-rotation-behavior.ts +0 -47
- package/src/shared/providers/screen/gestures/rotation/use-build-rotation-gesture.ts +0 -50
- package/src/shared/providers/screen/origin.provider.tsx +0 -38
- package/src/shared/providers/screen/styles/helpers/opening-phase.ts +0 -25
|
@@ -1,157 +1,43 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
import { runOnJS, useAnimatedProps, useAnimatedReaction, useSharedValue } from "react-native-reanimated";
|
|
3
|
+
import { useAnimatedProps, useSharedValue } from "react-native-reanimated";
|
|
5
4
|
import { useDescriptorsStore } from "../../../../../../providers/screen/descriptors";
|
|
6
5
|
import { useScreenSlots } from "../../../../../../providers/screen/styles";
|
|
6
|
+
import { hasCloseTransitionFinished } from "../../../../../../providers/screen/styles/helpers/transition-visual-state";
|
|
7
|
+
import { AnimationStore } from "../../../../../../stores/animation.store";
|
|
7
8
|
import { pairs } from "../../../../../../stores/bounds/internals/state";
|
|
9
|
+
import { SystemStore } from "../../../../../../stores/system.store";
|
|
8
10
|
import { PORTAL_HOST_NAME_RESET_VALUE } from "../../../utils/naming";
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import { shouldAttachBoundaryPortal } from "../../../utils/teleport-control";
|
|
12
|
-
import { resolveNextVisiblePortalHostName } from "../../../utils/visible-host";
|
|
13
|
-
import { createBoundaryPortalHostName } from "../helpers/host-name";
|
|
11
|
+
import { isTeleportEnabled } from "../../../utils/teleport-control";
|
|
12
|
+
import { hasActiveBoundaryPortalLink } from "../helpers/active-pair";
|
|
14
13
|
import { useActiveHostKey } from "../stores/host-registry.store";
|
|
15
|
-
import {
|
|
14
|
+
import { useActivePortalBoundaryHost } from "./use-active-portal-boundary-host";
|
|
16
15
|
export const useBoundaryPortalAttachment = ({
|
|
17
|
-
boundaryId
|
|
18
|
-
enabled
|
|
16
|
+
boundaryId
|
|
19
17
|
}) => {
|
|
20
18
|
const sourcePairKey = useDescriptorsStore(s => s.derivations.sourcePairKey);
|
|
21
19
|
const currentScreenKey = useDescriptorsStore(s => s.derivations.currentScreenKey);
|
|
20
|
+
const nextScreenKey = useDescriptorsStore(s => s.derivations.nextScreenKey);
|
|
21
|
+
const destinationScreenKey = nextScreenKey ?? currentScreenKey;
|
|
22
|
+
const destinationAnimationProgress = SystemStore.getValue(destinationScreenKey, "animationProgress");
|
|
23
|
+
const destinationClosing = AnimationStore.getValue(destinationScreenKey, "closing");
|
|
22
24
|
const {
|
|
23
25
|
localStylesMaps,
|
|
24
|
-
nextInterpolatorReady,
|
|
25
26
|
slotsMap
|
|
26
27
|
} = useScreenSlots();
|
|
27
|
-
const
|
|
28
|
-
const
|
|
29
|
-
const
|
|
30
|
-
const
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
ownerPairKey,
|
|
41
|
-
ownerScreenKey,
|
|
42
|
-
status: "complete"
|
|
43
|
-
};
|
|
44
|
-
});
|
|
45
|
-
return;
|
|
46
|
-
}
|
|
47
|
-
setOwnership(current => current ? null : current);
|
|
48
|
-
}, []);
|
|
49
|
-
const unmountOwnedPortalBoundaryHosts = useCallback(() => {
|
|
50
|
-
for (const portalHostName of mountedPortalBoundaryHostNamesRef.current) {
|
|
51
|
-
unmountPortalBoundaryHostByName(portalHostName);
|
|
52
|
-
}
|
|
53
|
-
mountedPortalBoundaryHostNamesRef.current.clear();
|
|
54
|
-
}, []);
|
|
55
|
-
useLayoutEffect(() => {
|
|
56
|
-
if (!enabled || !ownership || !escapeHostKey) {
|
|
57
|
-
requestedPortalHostName.set(null);
|
|
58
|
-
visiblePortalHostName.set(null);
|
|
59
|
-
unmountOwnedPortalBoundaryHosts();
|
|
60
|
-
return;
|
|
61
|
-
}
|
|
62
|
-
const portalHostName = createBoundaryPortalHostName(escapeHostKey, boundaryId, ownership.ownerPairKey);
|
|
63
|
-
mountPortalBoundaryHost({
|
|
64
|
-
boundaryId,
|
|
65
|
-
escapeClipping: true,
|
|
66
|
-
hostKey: escapeHostKey,
|
|
67
|
-
localStylesMaps,
|
|
68
|
-
pairKey: ownership.ownerPairKey,
|
|
69
|
-
portalHostName,
|
|
70
|
-
screenKey: currentScreenKey,
|
|
71
|
-
slotsMap
|
|
72
|
-
});
|
|
73
|
-
mountedPortalBoundaryHostNamesRef.current.add(portalHostName);
|
|
74
|
-
|
|
75
|
-
// Request the new receiver immediately, but keep the currently visible
|
|
76
|
-
// receiver until the new interpolator is ready. This avoids a no-host gap
|
|
77
|
-
// during rapid close/open retargets.
|
|
78
|
-
requestedPortalHostName.set(portalHostName);
|
|
79
|
-
}, [boundaryId, currentScreenKey, enabled, escapeHostKey, localStylesMaps, ownership, requestedPortalHostName, slotsMap, unmountOwnedPortalBoundaryHosts, visiblePortalHostName]);
|
|
80
|
-
useLayoutEffect(() => {
|
|
81
|
-
return () => {
|
|
82
|
-
requestedPortalHostName.set(null);
|
|
83
|
-
visiblePortalHostName.set(null);
|
|
84
|
-
unmountOwnedPortalBoundaryHosts();
|
|
85
|
-
};
|
|
86
|
-
}, [requestedPortalHostName, unmountOwnedPortalBoundaryHosts, visiblePortalHostName]);
|
|
87
|
-
useAnimatedReaction(() => {
|
|
88
|
-
"worklet";
|
|
89
|
-
|
|
90
|
-
if (!enabled || !sourcePairKey) {
|
|
91
|
-
return {
|
|
92
|
-
hostScreenKey: null,
|
|
93
|
-
ownerPairKey: sourcePairKey,
|
|
94
|
-
ownerScreenKey: null,
|
|
95
|
-
status: "clear"
|
|
96
|
-
};
|
|
97
|
-
}
|
|
98
|
-
return resolveBoundaryPortalOwnership({
|
|
99
|
-
boundaryId,
|
|
100
|
-
currentScreenKey,
|
|
101
|
-
handoff: false,
|
|
102
|
-
pairsState: pairs.get(),
|
|
103
|
-
sourcePairKey
|
|
104
|
-
});
|
|
105
|
-
}, (signal, previousSignal) => {
|
|
106
|
-
"worklet";
|
|
107
|
-
|
|
108
|
-
if (shallowEqual(previousSignal, signal)) {
|
|
109
|
-
return;
|
|
110
|
-
}
|
|
111
|
-
runOnJS(updatePortalOwnership)(signal.hostScreenKey, signal.ownerPairKey, signal.ownerScreenKey ?? undefined);
|
|
112
|
-
});
|
|
113
|
-
useAnimatedReaction(() => {
|
|
114
|
-
"worklet";
|
|
115
|
-
|
|
116
|
-
const slot = slotsMap.get()[boundaryId];
|
|
117
|
-
const teleport = slot?.props?.teleport;
|
|
118
|
-
const shouldTeleport = shouldAttachBoundaryPortal({
|
|
119
|
-
enabled,
|
|
120
|
-
teleport
|
|
121
|
-
});
|
|
122
|
-
const requestedName = requestedPortalHostName.get();
|
|
123
|
-
const visibleName = visiblePortalHostName.get();
|
|
124
|
-
const isInterpolatorReady = nextInterpolatorReady.get();
|
|
125
|
-
const nextVisibleName = resolveNextVisiblePortalHostName({
|
|
126
|
-
isInterpolatorReady: isInterpolatorReady === 1,
|
|
127
|
-
requestedName,
|
|
128
|
-
shouldTeleport,
|
|
129
|
-
visibleName
|
|
130
|
-
});
|
|
131
|
-
return {
|
|
132
|
-
isInterpolatorReady,
|
|
133
|
-
nextVisibleName,
|
|
134
|
-
requestedName,
|
|
135
|
-
shouldTeleport,
|
|
136
|
-
teleport,
|
|
137
|
-
visibleName
|
|
138
|
-
};
|
|
139
|
-
}, (state, previousState) => {
|
|
140
|
-
"worklet";
|
|
141
|
-
|
|
142
|
-
if (shallowEqual(previousState, state)) {
|
|
143
|
-
return;
|
|
144
|
-
}
|
|
145
|
-
if (state.nextVisibleName !== state.visibleName) {
|
|
146
|
-
visiblePortalHostName.set(state.nextVisibleName);
|
|
147
|
-
return;
|
|
148
|
-
}
|
|
149
|
-
if (state.visibleName && state.visibleName === state.requestedName) {
|
|
150
|
-
runOnJS(dropStalePortalBoundaryHosts)({
|
|
151
|
-
boundaryId,
|
|
152
|
-
keepPortalHostName: state.visibleName
|
|
153
|
-
});
|
|
154
|
-
}
|
|
28
|
+
const portalHostName = useSharedValue(null);
|
|
29
|
+
const portalHostReady = useSharedValue(false);
|
|
30
|
+
const attachedDestination = useSharedValue(null);
|
|
31
|
+
const escapeHostKey = useActiveHostKey(currentScreenKey);
|
|
32
|
+
useActivePortalBoundaryHost({
|
|
33
|
+
boundaryId,
|
|
34
|
+
currentScreenKey,
|
|
35
|
+
escapeHostKey,
|
|
36
|
+
localStylesMaps,
|
|
37
|
+
portalHostName,
|
|
38
|
+
portalHostReady,
|
|
39
|
+
sourcePairKey,
|
|
40
|
+
slotsMap
|
|
155
41
|
});
|
|
156
42
|
const teleportProps = useAnimatedProps(() => {
|
|
157
43
|
"worklet";
|
|
@@ -162,19 +48,34 @@ export const useBoundaryPortalAttachment = ({
|
|
|
162
48
|
teleport,
|
|
163
49
|
...slotProps
|
|
164
50
|
} = slot?.props ?? {};
|
|
165
|
-
const shouldTeleport =
|
|
166
|
-
|
|
167
|
-
|
|
51
|
+
const shouldTeleport = isTeleportEnabled(teleport);
|
|
52
|
+
const hostName = portalHostName.get();
|
|
53
|
+
const hasActiveLink = hasActiveBoundaryPortalLink({
|
|
54
|
+
boundaryId,
|
|
55
|
+
pairsState: pairs.get(),
|
|
56
|
+
sourcePairKey
|
|
57
|
+
});
|
|
58
|
+
const hasAttachableHost = shouldTeleport && hasActiveLink && portalHostReady.get() && hostName;
|
|
59
|
+
if (hasAttachableHost) {
|
|
60
|
+
attachedDestination.set({
|
|
61
|
+
animationProgress: destinationAnimationProgress,
|
|
62
|
+
closing: destinationClosing
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
const attached = attachedDestination.get();
|
|
66
|
+
const hasAttachedCloseFinished = attached !== null && hasCloseTransitionFinished({
|
|
67
|
+
animationProgress: attached.animationProgress.get(),
|
|
68
|
+
closing: attached.closing.get()
|
|
168
69
|
});
|
|
169
|
-
const
|
|
70
|
+
const canAttach = hasAttachableHost && !hasAttachedCloseFinished;
|
|
71
|
+
const targetHostName = canAttach ? hostName : PORTAL_HOST_NAME_RESET_VALUE;
|
|
170
72
|
return {
|
|
171
73
|
...slotProps,
|
|
172
|
-
hostName:
|
|
74
|
+
hostName: targetHostName
|
|
173
75
|
};
|
|
174
76
|
});
|
|
175
77
|
return {
|
|
176
|
-
teleportProps
|
|
177
|
-
visiblePortalHostName
|
|
78
|
+
teleportProps
|
|
178
79
|
};
|
|
179
80
|
};
|
|
180
81
|
//# sourceMappingURL=use-boundary-portal-attachment.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["useAnimatedProps","useSharedValue","useDescriptorsStore","useScreenSlots","hasCloseTransitionFinished","AnimationStore","pairs","SystemStore","PORTAL_HOST_NAME_RESET_VALUE","isTeleportEnabled","hasActiveBoundaryPortalLink","useActiveHostKey","useActivePortalBoundaryHost","useBoundaryPortalAttachment","boundaryId","sourcePairKey","s","derivations","currentScreenKey","nextScreenKey","destinationScreenKey","destinationAnimationProgress","getValue","destinationClosing","localStylesMaps","slotsMap","portalHostName","portalHostReady","attachedDestination","escapeHostKey","teleportProps","slot","get","pointerEvents","_pointerEvents","teleport","slotProps","props","shouldTeleport","hostName","hasActiveLink","pairsState","hasAttachableHost","set","animationProgress","closing","attached","hasAttachedCloseFinished","canAttach","targetHostName"],"sourceRoot":"../../../../../../../../../src","sources":["shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { useLayoutEffect
|
|
4
|
-
import { cancelAnimation, measure,
|
|
5
|
-
import { useOriginContext } from "../../../../../../providers/screen/origin.provider";
|
|
3
|
+
import { useLayoutEffect } from "react";
|
|
4
|
+
import { cancelAnimation, measure, runOnUI, useAnimatedReaction, useAnimatedRef, useSharedValue, withDelay, withTiming } from "react-native-reanimated";
|
|
6
5
|
import { ScrollStore } from "../../../../../../stores/scroll.store";
|
|
7
6
|
import { getVisibilityBlockOffset } from "../../../../../../utils/visibility-block-offset";
|
|
8
|
-
import { adjustedMeasuredBoundsForOverscrollDeltas,
|
|
7
|
+
import { adjustedMeasuredBoundsForOverscrollDeltas, correctMeasuredBoundsForVisibilityGate, isMeasurementInViewport } from "../../../../utils/measured-bounds";
|
|
9
8
|
import { clearPortalHostBounds, setPortalHostBounds } from "../stores/host-bounds.store";
|
|
10
9
|
const HOST_MEASUREMENT_RETRY_DELAY_MS = 16;
|
|
11
10
|
export const useHostMeasurement = ({
|
|
@@ -19,10 +18,6 @@ export const useHostMeasurement = ({
|
|
|
19
18
|
}) => {
|
|
20
19
|
const hostRef = useAnimatedRef();
|
|
21
20
|
const scrollMetadata = ScrollStore.getValue(screenKey, "metadata");
|
|
22
|
-
const [canRenderHosts, setCanRenderHosts] = useState(false);
|
|
23
|
-
const {
|
|
24
|
-
originRef
|
|
25
|
-
} = useOriginContext();
|
|
26
21
|
const hasMeasuredHost = useSharedValue(false);
|
|
27
22
|
const retryToken = useSharedValue(0);
|
|
28
23
|
useAnimatedReaction(() => {
|
|
@@ -44,8 +39,7 @@ export const useHostMeasurement = ({
|
|
|
44
39
|
return;
|
|
45
40
|
}
|
|
46
41
|
const measured = measure(hostRef);
|
|
47
|
-
|
|
48
|
-
if (!measured || !measuredOrigin) {
|
|
42
|
+
if (!measured) {
|
|
49
43
|
cancelAnimation(retryToken);
|
|
50
44
|
retryToken.set(withDelay(HOST_MEASUREMENT_RETRY_DELAY_MS, withTiming(retryToken.get() + 1, {
|
|
51
45
|
duration: 0
|
|
@@ -53,22 +47,20 @@ export const useHostMeasurement = ({
|
|
|
53
47
|
return;
|
|
54
48
|
}
|
|
55
49
|
cancelAnimation(retryToken);
|
|
56
|
-
hasMeasuredHost.set(true);
|
|
57
50
|
|
|
58
51
|
// A measurement taken mid rubber-band would bake the transient
|
|
59
52
|
// overscroll displacement into the host frame. Store the at-rest
|
|
60
53
|
// position instead; clamped scroll deltas share that basis.
|
|
61
54
|
const currentScroll = scrollMetadata.get();
|
|
62
55
|
const overscrollNormalized = capturesScroll ? adjustedMeasuredBoundsForOverscrollDeltas(measured, currentScroll) : measured;
|
|
63
|
-
const
|
|
56
|
+
const correctedMeasured = correctMeasuredBoundsForVisibilityGate({
|
|
64
57
|
measured: overscrollNormalized,
|
|
65
|
-
origin: measuredOrigin,
|
|
66
58
|
visibilityBlocked: visibilityBlocked.get(),
|
|
67
59
|
visibilityBlockOffset: getVisibilityBlockOffset(viewportHeight),
|
|
68
60
|
viewportWidth,
|
|
69
61
|
viewportHeight
|
|
70
62
|
});
|
|
71
|
-
if (!isMeasurementInViewport(
|
|
63
|
+
if (!isMeasurementInViewport(correctedMeasured, viewportWidth, viewportHeight)) {
|
|
72
64
|
cancelAnimation(retryToken);
|
|
73
65
|
retryToken.set(withDelay(HOST_MEASUREMENT_RETRY_DELAY_MS, withTiming(retryToken.get() + 1, {
|
|
74
66
|
duration: 0
|
|
@@ -76,15 +68,15 @@ export const useHostMeasurement = ({
|
|
|
76
68
|
return;
|
|
77
69
|
}
|
|
78
70
|
setPortalHostBounds(hostKey, {
|
|
79
|
-
x:
|
|
80
|
-
y:
|
|
81
|
-
width:
|
|
82
|
-
height:
|
|
83
|
-
pageX:
|
|
84
|
-
pageY:
|
|
71
|
+
x: correctedMeasured.x,
|
|
72
|
+
y: correctedMeasured.y,
|
|
73
|
+
width: correctedMeasured.width,
|
|
74
|
+
height: correctedMeasured.height,
|
|
75
|
+
pageX: correctedMeasured.pageX,
|
|
76
|
+
pageY: correctedMeasured.pageY,
|
|
85
77
|
scroll: capturesScroll ? currentScroll : null
|
|
86
78
|
});
|
|
87
|
-
|
|
79
|
+
hasMeasuredHost.set(true);
|
|
88
80
|
});
|
|
89
81
|
useLayoutEffect(() => {
|
|
90
82
|
return () => {
|
|
@@ -92,7 +84,6 @@ export const useHostMeasurement = ({
|
|
|
92
84
|
};
|
|
93
85
|
}, [hostKey]);
|
|
94
86
|
return {
|
|
95
|
-
canRenderHosts,
|
|
96
87
|
hostRef
|
|
97
88
|
};
|
|
98
89
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useLayoutEffect","
|
|
1
|
+
{"version":3,"names":["useLayoutEffect","cancelAnimation","measure","runOnUI","useAnimatedReaction","useAnimatedRef","useSharedValue","withDelay","withTiming","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":["shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,27 +1,62 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { memo } from "react";
|
|
4
|
-
import {
|
|
4
|
+
import Animated, { runOnUI } from "react-native-reanimated";
|
|
5
|
+
import { logger } from "../../../../../utils/logger";
|
|
6
|
+
import { isTeleportAvailable, PORTAL_POINTER_EVENTS, NativePortal as TeleportPortal } from "../../teleport";
|
|
5
7
|
import { useBoundaryPortalAttachment } from "./hooks/use-boundary-portal-attachment";
|
|
8
|
+
import { usePlaceholderStyles } from "./hooks/use-placeholder-styles";
|
|
6
9
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
10
|
+
const AnimatedNativePortal = TeleportPortal ? Animated.createAnimatedComponent(TeleportPortal) : null;
|
|
11
|
+
const EnabledNativePortal = AnimatedNativePortal;
|
|
7
12
|
export const BoundaryPortal = /*#__PURE__*/memo(function BoundaryPortal({
|
|
8
13
|
boundaryId,
|
|
9
14
|
children,
|
|
10
15
|
enabled,
|
|
11
16
|
placeholderRef
|
|
12
17
|
}) {
|
|
18
|
+
if (!enabled || !isTeleportAvailable || !AnimatedNativePortal) {
|
|
19
|
+
return children;
|
|
20
|
+
}
|
|
21
|
+
return /*#__PURE__*/_jsx(EnabledBoundaryPortal, {
|
|
22
|
+
boundaryId: boundaryId,
|
|
23
|
+
placeholderRef: placeholderRef,
|
|
24
|
+
children: children
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
|
+
const EnabledBoundaryPortal = /*#__PURE__*/memo(function EnabledBoundaryPortal({
|
|
28
|
+
boundaryId,
|
|
29
|
+
children,
|
|
30
|
+
placeholderRef
|
|
31
|
+
}) {
|
|
32
|
+
if (__DEV__ && !boundaryId) {
|
|
33
|
+
logger.warnOnce("portal:missing-id", "A boundary portal was rendered without an id; rendering inline.");
|
|
34
|
+
}
|
|
13
35
|
const {
|
|
14
36
|
teleportProps
|
|
15
37
|
} = useBoundaryPortalAttachment({
|
|
16
|
-
boundaryId
|
|
17
|
-
enabled
|
|
38
|
+
boundaryId
|
|
18
39
|
});
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
40
|
+
const {
|
|
41
|
+
handleOnLayout,
|
|
42
|
+
placeholderStyle
|
|
43
|
+
} = usePlaceholderStyles();
|
|
44
|
+
return /*#__PURE__*/_jsx(Animated.View, {
|
|
45
|
+
ref: placeholderRef,
|
|
46
|
+
onLayout: ({
|
|
47
|
+
nativeEvent: {
|
|
48
|
+
layout
|
|
49
|
+
}
|
|
50
|
+
}) => runOnUI(handleOnLayout)(layout),
|
|
51
|
+
style: placeholderStyle,
|
|
52
|
+
pointerEvents: PORTAL_POINTER_EVENTS,
|
|
53
|
+
collapsable: false,
|
|
54
|
+
children: /*#__PURE__*/_jsx(EnabledNativePortal, {
|
|
55
|
+
animatedProps: teleportProps,
|
|
56
|
+
name: boundaryId,
|
|
57
|
+
pointerEvents: PORTAL_POINTER_EVENTS,
|
|
58
|
+
children: children
|
|
59
|
+
})
|
|
25
60
|
});
|
|
26
61
|
});
|
|
27
62
|
//# sourceMappingURL=index.js.map
|
package/lib/module/shared/components/boundary/portal/components/boundary-portal/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["memo","
|
|
1
|
+
{"version":3,"names":["memo","Animated","runOnUI","logger","isTeleportAvailable","PORTAL_POINTER_EVENTS","NativePortal","TeleportPortal","useBoundaryPortalAttachment","usePlaceholderStyles","jsx","_jsx","AnimatedNativePortal","createAnimatedComponent","EnabledNativePortal","BoundaryPortal","boundaryId","children","enabled","placeholderRef","EnabledBoundaryPortal","__DEV__","warnOnce","teleportProps","handleOnLayout","placeholderStyle","View","ref","onLayout","nativeEvent","layout","style","pointerEvents","collapsable","animatedProps","name"],"sourceRoot":"../../../../../../../../src","sources":["shared/components/boundary/portal/components/boundary-portal/index.tsx"],"mappings":";;AAAA,SAGCA,IAAI,QAEE,OAAO;AAEd,OAAOC,QAAQ,IAAsBC,OAAO,QAAQ,yBAAyB;AAC7E,SAASC,MAAM,QAAQ,6BAA6B;AACpD,SACCC,mBAAmB,EACnBC,qBAAqB,EACrBC,YAAY,IAAIC,cAAc,QACxB,gBAAgB;AACvB,SAASC,2BAA2B,QAAQ,wCAAwC;AACpF,SAASC,oBAAoB,QAAQ,gCAAgC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAStE,MAAMC,oBAAoB,GAAGL,cAAc,GACxCN,QAAQ,CAACY,uBAAuB,CAChCN,cACD,CAAC,GACA,IAAI;AACP,MAAMO,mBAAmB,GAAGF,oBAE3B;AASD,OAAO,MAAMG,cAAc,gBAAGf,IAAI,CAAC,SAASe,cAAcA,CAAC;EAC1DC,UAAU;EACVC,QAAQ;EACRC,OAAO;EACPC;AACoB,CAAC,EAAE;EACvB,IAAI,CAACD,OAAO,IAAI,CAACd,mBAAmB,IAAI,CAACQ,oBAAoB,EAAE;IAC9D,OAAOK,QAAQ;EAChB;EAEA,oBACCN,IAAA,CAACS,qBAAqB;IACrBJ,UAAU,EAAEA,UAAW;IACvBG,cAAc,EAAEA,cAAe;IAAAF,QAAA,EAE9BA;EAAQ,CACa,CAAC;AAE1B,CAAC,CAAC;AAEF,MAAMG,qBAAqB,gBAAGpB,IAAI,CAAC,SAASoB,qBAAqBA,CAAC;EACjEJ,UAAU;EACVC,QAAQ;EACRE;AACqC,CAAC,EAAE;EACxC,IAAIE,OAAO,IAAI,CAACL,UAAU,EAAE;IAC3Bb,MAAM,CAACmB,QAAQ,CACd,mBAAmB,EACnB,iEACD,CAAC;EACF;EAEA,MAAM;IAAEC;EAAc,CAAC,GAAGf,2BAA2B,CAAC;IAAEQ;EAAW,CAAC,CAAC;EACrE,MAAM;IAAEQ,cAAc;IAAEC;EAAiB,CAAC,GAAGhB,oBAAoB,CAAC,CAAC;EAEnE,oBACCE,IAAA,CAACV,QAAQ,CAACyB,IAAI;IACbC,GAAG,EAAER,cAAe;IACpBS,QAAQ,EAAEA,CAAC;MAAEC,WAAW,EAAE;QAAEC;MAAO;IAAE,CAAC,KACrC5B,OAAO,CAACsB,cAAc,CAAC,CAACM,MAAM,CAC9B;IACDC,KAAK,EAAEN,gBAAiB;IACxBO,aAAa,EAAE3B,qBAAsB;IACrC4B,WAAW,EAAE,KAAM;IAAAhB,QAAA,eAEnBN,IAAA,CAACG,mBAAmB;MACnBoB,aAAa,EAAEX,aAAc;MAC7BY,IAAI,EAAEnB,UAAW;MACjBgB,aAAa,EAAE3B,qBAAsB;MAAAY,QAAA,EAEpCA;IAAQ,CACW;EAAC,CACR,CAAC;AAElB,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useSyncExternalStore","EMPTY_SNAPSHOT","listeners","Set","hostStacks","Map","snapshot","getActiveHostFromStack","screenKey","stack","length","index","host","fallback","hostKey","buildSnapshot","nextSnapshot","emit","listener","subscribe","add","delete","registerHost","registration","get","previousActiveHostKey","nextStack","filter","unshift","push","set","unregisterHost","getActiveHostKey","useActiveHostKey","undefined","resetHostRegistry","clear"],"sourceRoot":"../../../../../../../../../src","sources":["shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.ts"],"mappings":";;AAAA,SAASA,oBAAoB,QAAQ,OAAO;
|
|
1
|
+
{"version":3,"names":["useSyncExternalStore","EMPTY_SNAPSHOT","listeners","Set","hostStacks","Map","snapshot","getActiveHostFromStack","screenKey","stack","length","index","host","fallback","hostKey","buildSnapshot","nextSnapshot","emit","listener","subscribe","add","delete","registerHost","registration","get","previousActiveHostKey","nextStack","filter","unshift","push","set","unregisterHost","getActiveHostKey","useActiveHostKey","undefined","resetHostRegistry","clear"],"sourceRoot":"../../../../../../../../../src","sources":["shared/components/boundary/portal/components/boundary-portal/stores/host-registry.store.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -25,7 +25,7 @@ const emit = () => {
|
|
|
25
25
|
}
|
|
26
26
|
};
|
|
27
27
|
const isSameHost = (a, b) => {
|
|
28
|
-
return a.boundaryId === b.boundaryId && a.
|
|
28
|
+
return a.boundaryId === b.boundaryId && a.hostKey === b.hostKey && a.localStylesMaps === b.localStylesMaps && a.pairKey === b.pairKey && a.portalHostName === b.portalHostName && a.portalHostReady === b.portalHostReady && a.screenKey === b.screenKey && a.slotsMap === b.slotsMap;
|
|
29
29
|
};
|
|
30
30
|
export const mountPortalBoundaryHost = host => {
|
|
31
31
|
const previous = activeBoundaryHosts.get(host.portalHostName);
|
|
@@ -41,32 +41,6 @@ export const unmountPortalBoundaryHostByName = portalHostName => {
|
|
|
41
41
|
}
|
|
42
42
|
emit();
|
|
43
43
|
};
|
|
44
|
-
|
|
45
|
-
/**
|
|
46
|
-
* Post-handoff GC: drop every receiver for this boundary except the one now
|
|
47
|
-
* visible (`keepPortalHostName`). Called once the new host is confirmed on
|
|
48
|
-
* screen so the superseded receivers stop rendering.
|
|
49
|
-
*/
|
|
50
|
-
export const dropStalePortalBoundaryHosts = ({
|
|
51
|
-
boundaryId,
|
|
52
|
-
keepPortalHostName
|
|
53
|
-
}) => {
|
|
54
|
-
if (!activeBoundaryHosts.has(keepPortalHostName)) {
|
|
55
|
-
return;
|
|
56
|
-
}
|
|
57
|
-
let didDelete = false;
|
|
58
|
-
for (const [hostEntryKey, host] of activeBoundaryHosts) {
|
|
59
|
-
if (host.boundaryId !== boundaryId || host.portalHostName === keepPortalHostName) {
|
|
60
|
-
continue;
|
|
61
|
-
}
|
|
62
|
-
activeBoundaryHosts.delete(hostEntryKey);
|
|
63
|
-
didDelete = true;
|
|
64
|
-
}
|
|
65
|
-
if (!didDelete) {
|
|
66
|
-
return;
|
|
67
|
-
}
|
|
68
|
-
emit();
|
|
69
|
-
};
|
|
70
44
|
const subscribe = listener => {
|
|
71
45
|
listeners.add(listener);
|
|
72
46
|
return () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useSyncExternalStore","EMPTY_HOSTS","listeners","Set","activeBoundaryHosts","Map","snapshot","hostsByScope","buildSnapshot","host","values","hosts","hostKey","push","emit","listener","isSameHost","a","b","boundaryId","
|
|
1
|
+
{"version":3,"names":["useSyncExternalStore","EMPTY_HOSTS","listeners","Set","activeBoundaryHosts","Map","snapshot","hostsByScope","buildSnapshot","host","values","hosts","hostKey","push","emit","listener","isSameHost","a","b","boundaryId","localStylesMaps","pairKey","portalHostName","portalHostReady","screenKey","slotsMap","mountPortalBoundaryHost","previous","get","set","unmountPortalBoundaryHostByName","delete","subscribe","add","useActivePortalBoundaryHosts"],"sourceRoot":"../../../../../../../../../src","sources":["shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.ts"],"mappings":";;AAAA,SAASA,oBAAoB,QAAQ,OAAO;AAoB5C,MAAMC,WAAuC,GAAG,EAAE;AAElD,MAAMC,SAAS,GAAG,IAAIC,GAAG,CAAa,CAAC;AACvC,MAAMC,mBAAmB,GAAG,IAAIC,GAAG,CAAmC,CAAC;AAEvE,IAAIC,QAAwB,GAAG;EAC9BC,YAAY,EAAE,CAAC;AAChB,CAAC;AAED,MAAMC,aAAa,GAAGA,CAAA,KAAsB;EAC3C,MAAMD,YAAwD,GAAG,CAAC,CAAC;EAEnE,KAAK,MAAME,IAAI,IAAIL,mBAAmB,CAACM,MAAM,CAAC,CAAC,EAAE;IAChD,MAAMC,KAAK,GAAGJ,YAAY,CAACE,IAAI,CAACG,OAAO,CAAC,IAAI,EAAE;IAC9CD,KAAK,CAACE,IAAI,CAACJ,IAAI,CAAC;IAChBF,YAAY,CAACE,IAAI,CAACG,OAAO,CAAC,GAAGD,KAAK;EACnC;EAEA,OAAO;IACNJ;EACD,CAAC;AACF,CAAC;AAED,MAAMO,IAAI,GAAGA,CAAA,KAAM;EAClBR,QAAQ,GAAGE,aAAa,CAAC,CAAC;EAE1B,KAAK,MAAMO,QAAQ,IAAIb,SAAS,EAAE;IACjCa,QAAQ,CAAC,CAAC;EACX;AACD,CAAC;AAED,MAAMC,UAAU,GAAGA,CAClBC,CAA2B,EAC3BC,CAA2B,KACvB;EACJ,OACCD,CAAC,CAACE,UAAU,KAAKD,CAAC,CAACC,UAAU,IAC7BF,CAAC,CAACL,OAAO,KAAKM,CAAC,CAACN,OAAO,IACvBK,CAAC,CAACG,eAAe,KAAKF,CAAC,CAACE,eAAe,IACvCH,CAAC,CAACI,OAAO,KAAKH,CAAC,CAACG,OAAO,IACvBJ,CAAC,CAACK,cAAc,KAAKJ,CAAC,CAACI,cAAc,IACrCL,CAAC,CAACM,eAAe,KAAKL,CAAC,CAACK,eAAe,IACvCN,CAAC,CAACO,SAAS,KAAKN,CAAC,CAACM,SAAS,IAC3BP,CAAC,CAACQ,QAAQ,KAAKP,CAAC,CAACO,QAAQ;AAE3B,CAAC;AAED,OAAO,MAAMC,uBAAuB,GAAIjB,IAA8B,IAAK;EAC1E,MAAMkB,QAAQ,GAAGvB,mBAAmB,CAACwB,GAAG,CAACnB,IAAI,CAACa,cAAc,CAAC;EAC7D,IAAIK,QAAQ,IAAIX,UAAU,CAACW,QAAQ,EAAElB,IAAI,CAAC,EAAE;IAC3C;EACD;EAEAL,mBAAmB,CAACyB,GAAG,CAACpB,IAAI,CAACa,cAAc,EAAEb,IAAI,CAAC;EAClDK,IAAI,CAAC,CAAC;AACP,CAAC;AAED,OAAO,MAAMgB,+BAA+B,GAC3CR,cAAyC,IACrC;EACJ,IAAI,CAACA,cAAc,IAAI,CAAClB,mBAAmB,CAAC2B,MAAM,CAACT,cAAc,CAAC,EAAE;IACnE;EACD;EAEAR,IAAI,CAAC,CAAC;AACP,CAAC;AAED,MAAMkB,SAAS,GAAIjB,QAAoB,IAAK;EAC3Cb,SAAS,CAAC+B,GAAG,CAAClB,QAAQ,CAAC;EAEvB,OAAO,MAAM;IACZb,SAAS,CAAC6B,MAAM,CAAChB,QAAQ,CAAC;EAC3B,CAAC;AACF,CAAC;AAED,OAAO,MAAMmB,4BAA4B,GAAItB,OAAe,IAAK;EAChE,OAAOZ,oBAAoB,CAC1BgC,SAAS,EACT,MAAM1B,QAAQ,CAACC,YAAY,CAACK,OAAO,CAAC,IAAIX,WAAW,EACnD,MAAMA,WACP,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":["shared/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":["shared/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":[]}
|
|
@@ -2,6 +2,22 @@
|
|
|
2
2
|
|
|
3
3
|
import { logger } from "../../../../utils/logger";
|
|
4
4
|
import { isTeleportAvailable } from "../teleport";
|
|
5
|
+
const DISABLED_RUNTIME = {
|
|
6
|
+
handoff: false,
|
|
7
|
+
escapeClipping: false
|
|
8
|
+
};
|
|
9
|
+
const HANDOFF_RUNTIME = {
|
|
10
|
+
handoff: true,
|
|
11
|
+
escapeClipping: false
|
|
12
|
+
};
|
|
13
|
+
const ESCAPE_CLIPPING_RUNTIME = {
|
|
14
|
+
handoff: false,
|
|
15
|
+
escapeClipping: true
|
|
16
|
+
};
|
|
17
|
+
const HANDOFF_ESCAPE_CLIPPING_RUNTIME = {
|
|
18
|
+
handoff: true,
|
|
19
|
+
escapeClipping: true
|
|
20
|
+
};
|
|
5
21
|
export const resolveBoundaryPortal = ({
|
|
6
22
|
handoff,
|
|
7
23
|
escapeClipping
|
|
@@ -10,24 +26,12 @@ export const resolveBoundaryPortal = ({
|
|
|
10
26
|
const resolvedEscapeClipping = escapeClipping ?? false;
|
|
11
27
|
const enabled = resolvedHandoff || resolvedEscapeClipping;
|
|
12
28
|
if (!enabled) {
|
|
13
|
-
return
|
|
14
|
-
handoff: false,
|
|
15
|
-
escapeClipping: false,
|
|
16
|
-
enabled: false
|
|
17
|
-
};
|
|
29
|
+
return DISABLED_RUNTIME;
|
|
18
30
|
}
|
|
19
31
|
if (!isTeleportAvailable) {
|
|
20
32
|
logger.warnOnce("boundary:teleport-missing", "react-native-teleport is not installed; handoff and escapeClipping boundaries will render inline.");
|
|
21
|
-
return
|
|
22
|
-
handoff: false,
|
|
23
|
-
escapeClipping: false,
|
|
24
|
-
enabled: false
|
|
25
|
-
};
|
|
33
|
+
return DISABLED_RUNTIME;
|
|
26
34
|
}
|
|
27
|
-
return
|
|
28
|
-
handoff: resolvedHandoff,
|
|
29
|
-
escapeClipping: resolvedEscapeClipping,
|
|
30
|
-
enabled
|
|
31
|
-
};
|
|
35
|
+
return resolvedHandoff ? resolvedEscapeClipping ? HANDOFF_ESCAPE_CLIPPING_RUNTIME : HANDOFF_RUNTIME : ESCAPE_CLIPPING_RUNTIME;
|
|
32
36
|
};
|
|
33
37
|
//# sourceMappingURL=resolve-portal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["logger","isTeleportAvailable","
|
|
1
|
+
{"version":3,"names":["logger","isTeleportAvailable","DISABLED_RUNTIME","handoff","escapeClipping","HANDOFF_RUNTIME","ESCAPE_CLIPPING_RUNTIME","HANDOFF_ESCAPE_CLIPPING_RUNTIME","resolveBoundaryPortal","resolvedHandoff","resolvedEscapeClipping","enabled","warnOnce"],"sourceRoot":"../../../../../../../src","sources":["shared/components/boundary/portal/utils/resolve-portal.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,0BAA0B;AACjD,SAASC,mBAAmB,QAAQ,aAAa;AAYjD,MAAMC,gBAAuC,GAAG;EAC/CC,OAAO,EAAE,KAAK;EACdC,cAAc,EAAE;AACjB,CAAC;AACD,MAAMC,eAAsC,GAAG;EAC9CF,OAAO,EAAE,IAAI;EACbC,cAAc,EAAE;AACjB,CAAC;AACD,MAAME,uBAA8C,GAAG;EACtDH,OAAO,EAAE,KAAK;EACdC,cAAc,EAAE;AACjB,CAAC;AACD,MAAMG,+BAAsD,GAAG;EAC9DJ,OAAO,EAAE,IAAI;EACbC,cAAc,EAAE;AACjB,CAAC;AAED,OAAO,MAAMI,qBAAqB,GAAGA,CAAC;EACrCL,OAAO;EACPC;AAC4B,CAAC,KAA4B;EACzD,MAAMK,eAAe,GAAGN,OAAO,IAAI,KAAK;EACxC,MAAMO,sBAAsB,GAAGN,cAAc,IAAI,KAAK;EAEtD,MAAMO,OAAO,GAAGF,eAAe,IAAIC,sBAAsB;EAEzD,IAAI,CAACC,OAAO,EAAE;IACb,OAAOT,gBAAgB;EACxB;EAEA,IAAI,CAACD,mBAAmB,EAAE;IACzBD,MAAM,CAACY,QAAQ,CACd,2BAA2B,EAC3B,mGACD,CAAC;IAED,OAAOV,gBAAgB;EACxB;EAEA,OAAOO,eAAe,GACnBC,sBAAsB,GACrBH,+BAA+B,GAC/BF,eAAe,GAChBC,uBAAuB;AAC3B,CAAC","ignoreList":[]}
|