react-native-screen-transitions 3.13.0-beta.0 → 3.13.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/shared/adapters/with-screen-transitions/stack-layout.js +1 -2
- package/lib/commonjs/shared/adapters/with-screen-transitions/stack-layout.js.map +1 -1
- package/lib/commonjs/shared/components/activity/helpers.js +50 -1
- package/lib/commonjs/shared/components/activity/helpers.js.map +1 -1
- package/lib/commonjs/shared/components/activity/variants/activity-screen.js +16 -67
- package/lib/commonjs/shared/components/activity/variants/activity-screen.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/components/boundary-target.js +1 -1
- package/lib/commonjs/shared/components/boundary/components/boundary-target.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/hooks/use-measurer.js +2 -1
- package/lib/commonjs/shared/components/boundary/hooks/use-measurer.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +2 -4
- 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-portal/hooks/use-boundary-portal-attachment.js +1 -6
- 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/providers/boundary-root.provider.js +6 -6
- package/lib/commonjs/shared/components/boundary/providers/boundary-root.provider.js.map +1 -1
- package/lib/commonjs/shared/components/overlay/helpers/create-overlay-interpolator-frame.js +9 -2
- package/lib/commonjs/shared/components/overlay/helpers/create-overlay-interpolator-frame.js.map +1 -1
- package/lib/commonjs/shared/components/overlay/helpers/get-active-overlay.js +16 -4
- package/lib/commonjs/shared/components/overlay/helpers/get-active-overlay.js.map +1 -1
- package/lib/commonjs/shared/components/overlay/hooks/use-overlay-slot.js +11 -6
- package/lib/commonjs/shared/components/overlay/hooks/use-overlay-slot.js.map +1 -1
- package/lib/commonjs/shared/components/overlay/variations/overlay-host.js +5 -4
- package/lib/commonjs/shared/components/overlay/variations/overlay-host.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/content.js +1 -3
- package/lib/commonjs/shared/components/screen-container/layers/content.js.map +1 -1
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +8 -6
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
- package/lib/commonjs/shared/factories/screen-topology/create-screen-topology.js +147 -0
- package/lib/commonjs/shared/factories/screen-topology/create-screen-topology.js.map +1 -0
- package/lib/commonjs/shared/factories/screen-topology/index.js +45 -0
- package/lib/commonjs/shared/factories/screen-topology/index.js.map +1 -0
- package/lib/commonjs/shared/factories/screen-topology/types.js +2 -0
- package/lib/commonjs/shared/factories/screen-topology/types.js.map +1 -0
- package/lib/commonjs/shared/factories/screen-topology/use-screen-relationships.js +15 -0
- package/lib/commonjs/shared/factories/screen-topology/use-screen-relationships.js.map +1 -0
- package/lib/commonjs/shared/factories/screen-topology/worklet.js +55 -0
- package/lib/commonjs/shared/factories/screen-topology/worklet.js.map +1 -0
- package/lib/commonjs/shared/hooks/navigation/use-screen-state.js.map +1 -1
- package/lib/commonjs/shared/hooks/navigation/use-stack.js +16 -16
- package/lib/commonjs/shared/hooks/navigation/use-stack.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/animation.provider.js +26 -98
- package/lib/commonjs/shared/providers/screen/animation/animation.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +6 -52
- 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/pipeline.js +14 -25
- package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/read-screen-animation-revisions.js +4 -13
- package/lib/commonjs/shared/providers/screen/animation/helpers/read-screen-animation-revisions.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/stack-progress.js +10 -26
- package/lib/commonjs/shared/providers/screen/animation/helpers/stack-progress.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js +0 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/index.js +6 -0
- package/lib/commonjs/shared/providers/screen/animation/index.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/use-screen-animation.js +8 -7
- package/lib/commonjs/shared/providers/screen/animation/use-screen-animation.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/descriptors/descriptors.provider.js +40 -25
- package/lib/commonjs/shared/providers/screen/descriptors/descriptors.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.js +1 -4
- package/lib/commonjs/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js +24 -19
- 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 -3
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture.js +2 -3
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/index.js +8 -2
- package/lib/commonjs/shared/providers/screen/gestures/index.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/ownership/gesture-ownership-bridge.js +11 -18
- package/lib/commonjs/shared/providers/screen/gestures/ownership/gesture-ownership-bridge.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/ownership/resolve-ownership.js +5 -7
- package/lib/commonjs/shared/providers/screen/gestures/ownership/resolve-ownership.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/activation/use-pan-activation.js +4 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js +5 -8
- 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 +5 -4
- package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.js +1 -3
- package/lib/commonjs/shared/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/shared/policy.js +4 -4
- package/lib/commonjs/shared/providers/screen/gestures/shared/policy.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/hooks/slot-resolvers.js +4 -2
- package/lib/commonjs/shared/providers/screen/styles/hooks/slot-resolvers.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +5 -8
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/index.js +8 -2
- package/lib/commonjs/shared/providers/screen/styles/index.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/slot.provider.js +17 -19
- package/lib/commonjs/shared/providers/screen/styles/slot.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/use-current-screen-relationships.js +14 -0
- package/lib/commonjs/shared/providers/screen/use-current-screen-relationships.js.map +1 -0
- package/lib/commonjs/shared/providers/stack/blank-stack.provider.js +13 -5
- package/lib/commonjs/shared/providers/stack/blank-stack.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/stack/core.provider.js +1 -3
- package/lib/commonjs/shared/providers/stack/core.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/stack/direct.provider.js +2 -5
- package/lib/commonjs/shared/providers/stack/direct.provider.js.map +1 -1
- package/lib/commonjs/shared/stores/animation.store.js +0 -2
- package/lib/commonjs/shared/stores/animation.store.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/coordinator.js +23 -9
- package/lib/commonjs/shared/stores/bounds/internals/coordinator.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/links.js +2 -2
- package/lib/commonjs/shared/stores/bounds/internals/links.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/state.js +1 -1
- package/lib/commonjs/shared/utils/create-provider.js +51 -100
- package/lib/commonjs/shared/utils/create-provider.js.map +1 -1
- package/lib/module/shared/adapters/with-screen-transitions/stack-layout.js +1 -2
- package/lib/module/shared/adapters/with-screen-transitions/stack-layout.js.map +1 -1
- package/lib/module/shared/components/activity/helpers.js +48 -0
- package/lib/module/shared/components/activity/helpers.js.map +1 -1
- package/lib/module/shared/components/activity/variants/activity-screen.js +17 -68
- package/lib/module/shared/components/activity/variants/activity-screen.js.map +1 -1
- package/lib/module/shared/components/boundary/components/boundary-target.js +2 -2
- package/lib/module/shared/components/boundary/components/boundary-target.js.map +1 -1
- package/lib/module/shared/components/boundary/hooks/use-measurer.js +3 -2
- package/lib/module/shared/components/boundary/hooks/use-measurer.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.js +3 -5
- 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-portal/hooks/use-boundary-portal-attachment.js +2 -7
- 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/providers/boundary-root.provider.js +5 -6
- package/lib/module/shared/components/boundary/providers/boundary-root.provider.js.map +1 -1
- package/lib/module/shared/components/overlay/helpers/create-overlay-interpolator-frame.js +7 -1
- package/lib/module/shared/components/overlay/helpers/create-overlay-interpolator-frame.js.map +1 -1
- package/lib/module/shared/components/overlay/helpers/get-active-overlay.js +16 -4
- package/lib/module/shared/components/overlay/helpers/get-active-overlay.js.map +1 -1
- package/lib/module/shared/components/overlay/hooks/use-overlay-slot.js +12 -7
- package/lib/module/shared/components/overlay/hooks/use-overlay-slot.js.map +1 -1
- package/lib/module/shared/components/overlay/variations/overlay-host.js +7 -6
- package/lib/module/shared/components/overlay/variations/overlay-host.js.map +1 -1
- package/lib/module/shared/components/screen-container/layers/content.js +2 -3
- package/lib/module/shared/components/screen-container/layers/content.js.map +1 -1
- package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +9 -7
- package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
- package/lib/module/shared/factories/screen-topology/create-screen-topology.js +142 -0
- package/lib/module/shared/factories/screen-topology/create-screen-topology.js.map +1 -0
- package/lib/module/shared/factories/screen-topology/index.js +6 -0
- package/lib/module/shared/factories/screen-topology/index.js.map +1 -0
- package/lib/module/shared/factories/screen-topology/types.js +2 -0
- package/lib/module/shared/factories/screen-topology/types.js.map +1 -0
- package/lib/module/shared/factories/screen-topology/use-screen-relationships.js +10 -0
- package/lib/module/shared/factories/screen-topology/use-screen-relationships.js.map +1 -0
- package/lib/module/shared/factories/screen-topology/worklet.js +48 -0
- package/lib/module/shared/factories/screen-topology/worklet.js.map +1 -0
- package/lib/module/shared/hooks/navigation/use-screen-state.js.map +1 -1
- package/lib/module/shared/hooks/navigation/use-stack.js +17 -18
- package/lib/module/shared/hooks/navigation/use-stack.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/animation.provider.js +25 -98
- package/lib/module/shared/providers/screen/animation/animation.provider.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js +6 -52
- 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/pipeline.js +16 -27
- package/lib/module/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/read-screen-animation-revisions.js +4 -13
- package/lib/module/shared/providers/screen/animation/helpers/read-screen-animation-revisions.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/stack-progress.js +9 -24
- package/lib/module/shared/providers/screen/animation/helpers/stack-progress.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js +0 -1
- package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.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 +9 -8
- package/lib/module/shared/providers/screen/animation/use-screen-animation.js.map +1 -1
- package/lib/module/shared/providers/screen/descriptors/descriptors.provider.js +43 -27
- package/lib/module/shared/providers/screen/descriptors/descriptors.provider.js.map +1 -1
- package/lib/module/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.js +1 -4
- package/lib/module/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/gestures.provider.js +21 -17
- 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 +3 -3
- 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 +3 -4
- package/lib/module/shared/providers/screen/gestures/hooks/use-screen-gesture.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/gesture-ownership-bridge.js +13 -20
- package/lib/module/shared/providers/screen/gestures/ownership/gesture-ownership-bridge.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/ownership/resolve-ownership.js +5 -7
- package/lib/module/shared/providers/screen/gestures/ownership/resolve-ownership.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pan/activation/use-pan-activation.js +4 -1
- package/lib/module/shared/providers/screen/gestures/pan/activation/use-pan-activation.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.js +4 -8
- 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 +7 -6
- package/lib/module/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.js +1 -3
- package/lib/module/shared/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/shared/policy.js +4 -4
- package/lib/module/shared/providers/screen/gestures/shared/policy.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/hooks/slot-resolvers.js +5 -3
- package/lib/module/shared/providers/screen/styles/hooks/slot-resolvers.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +5 -8
- package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.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 +14 -16
- package/lib/module/shared/providers/screen/styles/slot.provider.js.map +1 -1
- package/lib/module/shared/providers/screen/use-current-screen-relationships.js +9 -0
- package/lib/module/shared/providers/screen/use-current-screen-relationships.js.map +1 -0
- package/lib/module/shared/providers/stack/blank-stack.provider.js +12 -5
- package/lib/module/shared/providers/stack/blank-stack.provider.js.map +1 -1
- package/lib/module/shared/providers/stack/core.provider.js +1 -3
- package/lib/module/shared/providers/stack/core.provider.js.map +1 -1
- package/lib/module/shared/providers/stack/direct.provider.js +2 -5
- package/lib/module/shared/providers/stack/direct.provider.js.map +1 -1
- package/lib/module/shared/stores/animation.store.js +0 -2
- package/lib/module/shared/stores/animation.store.js.map +1 -1
- package/lib/module/shared/stores/bounds/internals/coordinator.js +18 -4
- package/lib/module/shared/stores/bounds/internals/coordinator.js.map +1 -1
- package/lib/module/shared/stores/bounds/internals/links.js +1 -1
- package/lib/module/shared/stores/bounds/internals/links.js.map +1 -1
- package/lib/module/shared/stores/bounds/internals/state.js +1 -1
- package/lib/module/shared/utils/create-provider.js +51 -100
- package/lib/module/shared/utils/create-provider.js.map +1 -1
- package/lib/typescript/native-stack/views/useHeaderConfigProps.d.ts +1 -1
- package/lib/typescript/shared/adapters/with-screen-transitions/stack-layout.d.ts.map +1 -1
- package/lib/typescript/shared/components/activity/helpers.d.ts +16 -0
- package/lib/typescript/shared/components/activity/helpers.d.ts.map +1 -1
- package/lib/typescript/shared/components/activity/variants/activity-screen.d.ts +2 -4
- package/lib/typescript/shared/components/activity/variants/activity-screen.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/hooks/use-measurer.d.ts.map +1 -1
- 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-portal/hooks/use-boundary-portal-attachment.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-placeholder-styles.d.ts +2 -2
- package/lib/typescript/shared/components/boundary/providers/boundary-root.provider.d.ts +3 -0
- package/lib/typescript/shared/components/boundary/providers/boundary-root.provider.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-transition-aware-component.d.ts +6 -5
- package/lib/typescript/shared/components/create-transition-aware-component.d.ts.map +1 -1
- package/lib/typescript/shared/components/overlay/helpers/create-overlay-interpolator-frame.d.ts +1 -0
- package/lib/typescript/shared/components/overlay/helpers/create-overlay-interpolator-frame.d.ts.map +1 -1
- package/lib/typescript/shared/components/overlay/helpers/get-active-overlay.d.ts.map +1 -1
- package/lib/typescript/shared/components/overlay/hooks/use-overlay-slot.d.ts +3 -2
- package/lib/typescript/shared/components/overlay/hooks/use-overlay-slot.d.ts.map +1 -1
- package/lib/typescript/shared/components/overlay/variations/overlay-host.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-lifecycle/hooks/use-close-transition-intent.d.ts +1 -1
- package/lib/typescript/shared/components/screen-lifecycle/hooks/use-close-transition-intent.d.ts.map +1 -1
- package/lib/typescript/shared/factories/screen-topology/create-screen-topology.d.ts +4 -0
- package/lib/typescript/shared/factories/screen-topology/create-screen-topology.d.ts.map +1 -0
- package/lib/typescript/shared/factories/screen-topology/index.d.ts +5 -0
- package/lib/typescript/shared/factories/screen-topology/index.d.ts.map +1 -0
- package/lib/typescript/shared/factories/screen-topology/types.d.ts +20 -0
- package/lib/typescript/shared/factories/screen-topology/types.d.ts.map +1 -0
- package/lib/typescript/shared/factories/screen-topology/use-screen-relationships.d.ts +5 -0
- package/lib/typescript/shared/factories/screen-topology/use-screen-relationships.d.ts.map +1 -0
- package/lib/typescript/shared/factories/screen-topology/worklet.d.ts +5 -0
- package/lib/typescript/shared/factories/screen-topology/worklet.d.ts.map +1 -0
- package/lib/typescript/shared/hooks/navigation/use-screen-state.d.ts.map +1 -1
- package/lib/typescript/shared/hooks/navigation/use-stack.d.ts +2 -0
- package/lib/typescript/shared/hooks/navigation/use-stack.d.ts.map +1 -1
- package/lib/typescript/shared/index.d.ts +703 -651
- package/lib/typescript/shared/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/animation.provider.d.ts +14 -12
- 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-transition-accessor.d.ts +4 -4
- package/lib/typescript/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/types.d.ts +0 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state/types.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/pipeline.d.ts +1 -2
- package/lib/typescript/shared/providers/screen/animation/helpers/pipeline.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/read-screen-animation-revisions.d.ts +2 -2
- package/lib/typescript/shared/providers/screen/animation/helpers/read-screen-animation-revisions.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/stack-progress.d.ts +5 -2
- package/lib/typescript/shared/providers/screen/animation/helpers/stack-progress.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts +0 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.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/animation/types.d.ts +1 -13
- package/lib/typescript/shared/providers/screen/animation/types.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/descriptors/descriptors.provider.d.ts +5 -2
- package/lib/typescript/shared/providers/screen/descriptors/descriptors.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.d.ts +1 -4
- package/lib/typescript/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/gestures.provider.d.ts +16 -4
- 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 +2 -2
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-screen-gesture-config.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/hooks/use-screen-gesture.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/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/gesture-ownership-bridge.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/ownership/resolve-ownership.d.ts +2 -3
- package/lib/typescript/shared/providers/screen/gestures/ownership/resolve-ownership.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/scroll-coordination/scroll-metadata-owner.d.ts +5 -3
- package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.d.ts +2 -2
- package/lib/typescript/shared/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/shared/policy.d.ts +3 -3
- package/lib/typescript/shared/providers/screen/gestures/shared/policy.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/types.d.ts +4 -2
- package/lib/typescript/shared/providers/screen/gestures/types.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/hooks/slot-resolvers.d.ts +4 -4
- package/lib/typescript/shared/providers/screen/styles/hooks/slot-resolvers.d.ts.map +1 -1
- 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 +2 -2
- 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 +9 -4
- package/lib/typescript/shared/providers/screen/styles/slot.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/use-current-screen-relationships.d.ts +5 -0
- package/lib/typescript/shared/providers/screen/use-current-screen-relationships.d.ts.map +1 -0
- package/lib/typescript/shared/providers/stack/blank-stack.provider.d.ts +4 -1
- package/lib/typescript/shared/providers/stack/blank-stack.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/stack/core.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/stack/direct.provider.d.ts.map +1 -1
- package/lib/typescript/shared/stores/animation.store.d.ts +0 -1
- package/lib/typescript/shared/stores/animation.store.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/internals/coordinator.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/internals/links.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/internals/state.d.ts +1 -1
- package/lib/typescript/shared/stores/bounds/internals/state.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/types.d.ts +0 -1
- package/lib/typescript/shared/stores/bounds/types.d.ts.map +1 -1
- package/lib/typescript/shared/types/providers/blank-stack-provider.types.d.ts +1 -0
- package/lib/typescript/shared/types/providers/blank-stack-provider.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/screen.types.d.ts +0 -9
- package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
- package/lib/typescript/shared/utils/create-provider.d.ts +24 -24
- package/lib/typescript/shared/utils/create-provider.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/shared/adapters/with-screen-transitions/stack-layout.tsx +1 -2
- package/src/shared/components/activity/helpers.ts +59 -0
- package/src/shared/components/activity/variants/activity-screen.tsx +28 -93
- package/src/shared/components/boundary/components/boundary-target.tsx +2 -2
- package/src/shared/components/boundary/hooks/use-measurer.ts +3 -2
- package/src/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.ts +6 -3
- package/src/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts +2 -6
- package/src/shared/components/boundary/providers/boundary-root.provider.tsx +10 -6
- package/src/shared/components/overlay/helpers/create-overlay-interpolator-frame.ts +14 -1
- package/src/shared/components/overlay/helpers/get-active-overlay.ts +29 -4
- package/src/shared/components/overlay/hooks/use-overlay-slot.ts +26 -8
- package/src/shared/components/overlay/variations/overlay-host.tsx +11 -6
- package/src/shared/components/screen-container/layers/content.tsx +3 -4
- package/src/shared/components/screen-lifecycle/hooks/use-close-transition-intent.ts +8 -12
- package/src/shared/factories/screen-topology/create-screen-topology.ts +199 -0
- package/src/shared/factories/screen-topology/index.ts +16 -0
- package/src/shared/factories/screen-topology/types.ts +22 -0
- package/src/shared/factories/screen-topology/use-screen-relationships.ts +15 -0
- package/src/shared/factories/screen-topology/worklet.ts +60 -0
- package/src/shared/hooks/navigation/use-screen-state.ts +2 -7
- package/src/shared/hooks/navigation/use-stack.tsx +28 -31
- package/src/shared/providers/screen/animation/animation.provider.tsx +73 -212
- package/src/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.ts +10 -81
- package/src/shared/providers/screen/animation/helpers/hydrate-transition-state/types.ts +0 -1
- package/src/shared/providers/screen/animation/helpers/pipeline.ts +45 -70
- package/src/shared/providers/screen/animation/helpers/read-screen-animation-revisions.ts +6 -30
- package/src/shared/providers/screen/animation/helpers/stack-progress.ts +13 -32
- package/src/shared/providers/screen/animation/helpers/use-build-transition-state.ts +0 -2
- package/src/shared/providers/screen/animation/index.tsx +1 -0
- package/src/shared/providers/screen/animation/types.ts +1 -23
- package/src/shared/providers/screen/animation/use-screen-animation.tsx +10 -14
- package/src/shared/providers/screen/descriptors/descriptors.provider.tsx +56 -35
- package/src/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.ts +0 -6
- package/src/shared/providers/screen/gestures/gestures.provider.tsx +96 -85
- package/src/shared/providers/screen/gestures/hooks/use-screen-gesture-config.ts +4 -4
- package/src/shared/providers/screen/gestures/hooks/use-screen-gesture.ts +3 -4
- package/src/shared/providers/screen/gestures/index.tsx +2 -1
- package/src/shared/providers/screen/gestures/ownership/gesture-ownership-bridge.tsx +16 -29
- package/src/shared/providers/screen/gestures/ownership/resolve-ownership.ts +5 -8
- package/src/shared/providers/screen/gestures/pan/activation/use-pan-activation.ts +2 -3
- package/src/shared/providers/screen/gestures/scroll-coordination/scroll-metadata-owner.tsx +6 -9
- package/src/shared/providers/screen/gestures/scroll-coordination/use-scroll-gesture-coordination.ts +11 -7
- package/src/shared/providers/screen/gestures/scroll-coordination/walk-up-scroll-gesture-coordination.ts +12 -12
- package/src/shared/providers/screen/gestures/shared/policy.ts +7 -7
- package/src/shared/providers/screen/gestures/types.ts +5 -2
- package/src/shared/providers/screen/styles/hooks/slot-resolvers.tsx +10 -3
- package/src/shared/providers/screen/styles/hooks/use-interpolated-style-maps.tsx +7 -17
- package/src/shared/providers/screen/styles/index.tsx +2 -1
- package/src/shared/providers/screen/styles/slot.provider.tsx +25 -24
- package/src/shared/providers/screen/use-current-screen-relationships.ts +10 -0
- package/src/shared/providers/stack/blank-stack.provider.tsx +19 -6
- package/src/shared/providers/stack/core.provider.tsx +0 -1
- package/src/shared/providers/stack/direct.provider.tsx +2 -4
- package/src/shared/stores/animation.store.ts +0 -3
- package/src/shared/stores/bounds/internals/coordinator.ts +20 -8
- package/src/shared/stores/bounds/internals/links.ts +1 -1
- package/src/shared/stores/bounds/internals/state.ts +1 -1
- package/src/shared/stores/bounds/types.ts +0 -1
- package/src/shared/types/providers/blank-stack-provider.types.ts +1 -0
- package/src/shared/types/screen.types.ts +0 -10
- package/src/shared/utils/create-provider.tsx +135 -200
- package/lib/commonjs/shared/providers/screen/animation/helpers/interpolator-participation.js +0 -9
- package/lib/commonjs/shared/providers/screen/animation/helpers/interpolator-participation.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/descriptors/helpers/derive-structural-ancestor-keys.js +0 -12
- package/lib/commonjs/shared/providers/screen/descriptors/helpers/derive-structural-ancestor-keys.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/shared/ancestors.js +0 -23
- package/lib/commonjs/shared/providers/screen/gestures/shared/ancestors.js.map +0 -1
- package/lib/commonjs/shared/stores/bounds/internals/screen-graph.js +0 -45
- package/lib/commonjs/shared/stores/bounds/internals/screen-graph.js.map +0 -1
- package/lib/module/shared/providers/screen/animation/helpers/interpolator-participation.js +0 -4
- package/lib/module/shared/providers/screen/animation/helpers/interpolator-participation.js.map +0 -1
- package/lib/module/shared/providers/screen/descriptors/helpers/derive-structural-ancestor-keys.js +0 -7
- package/lib/module/shared/providers/screen/descriptors/helpers/derive-structural-ancestor-keys.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/shared/ancestors.js +0 -19
- package/lib/module/shared/providers/screen/gestures/shared/ancestors.js.map +0 -1
- package/lib/module/shared/stores/bounds/internals/screen-graph.js +0 -39
- package/lib/module/shared/stores/bounds/internals/screen-graph.js.map +0 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/interpolator-participation.d.ts +0 -3
- package/lib/typescript/shared/providers/screen/animation/helpers/interpolator-participation.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/descriptors/helpers/derive-structural-ancestor-keys.d.ts +0 -5
- package/lib/typescript/shared/providers/screen/descriptors/helpers/derive-structural-ancestor-keys.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/shared/ancestors.d.ts +0 -11
- package/lib/typescript/shared/providers/screen/gestures/shared/ancestors.d.ts.map +0 -1
- package/lib/typescript/shared/stores/bounds/internals/screen-graph.d.ts +0 -5
- package/lib/typescript/shared/stores/bounds/internals/screen-graph.d.ts.map +0 -1
- package/src/shared/providers/screen/animation/helpers/interpolator-participation.ts +0 -6
- package/src/shared/providers/screen/descriptors/helpers/derive-structural-ancestor-keys.ts +0 -13
- package/src/shared/providers/screen/gestures/shared/ancestors.ts +0 -27
- package/src/shared/stores/bounds/internals/screen-graph.ts +0 -45
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_animation","require","_useScreenAnimation"],"sourceRoot":"../../../../../../src","sources":["shared/providers/screen/animation/index.tsx"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_animation","require","_useScreenAnimation"],"sourceRoot":"../../../../../../src","sources":["shared/providers/screen/animation/index.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAKA,IAAAC,mBAAA,GAAAD,OAAA","ignoreList":[]}
|
|
@@ -15,21 +15,22 @@ var _readScreenAnimationRevisions = require("./helpers/read-screen-animation-rev
|
|
|
15
15
|
|
|
16
16
|
function useScreenAnimation(target) {
|
|
17
17
|
const route = (0, _native.useRoute)();
|
|
18
|
-
const
|
|
18
|
+
const localAnimationStore = (0, _animation.useOptionalScreenAnimationStore)();
|
|
19
|
+
const keyedAnimationStore = (0, _animation.useOptionalScreenAnimationStore)(localAnimationStore ? null : route.key);
|
|
20
|
+
const screenAnimationStore = localAnimationStore ?? keyedAnimationStore;
|
|
19
21
|
if (!screenAnimationStore) {
|
|
20
|
-
throw new Error(`
|
|
22
|
+
throw new Error(`ScreenAnimationStore is unavailable for route "${route.key}"`);
|
|
21
23
|
}
|
|
22
24
|
const {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
descendantScreenAnimationSources
|
|
25
|
+
transitionSources,
|
|
26
|
+
transitionOriginIndex
|
|
26
27
|
} = screenAnimationStore;
|
|
27
28
|
const transition = (0, _useBuildTransitionAccessor.useBuildTransitionAccessor)(screenAnimationStore);
|
|
28
|
-
const transitionTarget = normalizeScreenAnimationTarget(target,
|
|
29
|
+
const transitionTarget = normalizeScreenAnimationTarget(target, transitionOriginIndex);
|
|
29
30
|
const animation = (0, _reactNativeReanimated.useDerivedValue)(() => {
|
|
30
31
|
"worklet";
|
|
31
32
|
|
|
32
|
-
(0, _readScreenAnimationRevisions.readScreenAnimationRevisions)(
|
|
33
|
+
(0, _readScreenAnimationRevisions.readScreenAnimationRevisions)(transitionSources);
|
|
33
34
|
return transition(transitionTarget);
|
|
34
35
|
});
|
|
35
36
|
return animation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_native","require","_reactNativeReanimated","_animation","_useBuildTransitionAccessor","_readScreenAnimationRevisions","useScreenAnimation","target","route","useRoute","
|
|
1
|
+
{"version":3,"names":["_native","require","_reactNativeReanimated","_animation","_useBuildTransitionAccessor","_readScreenAnimationRevisions","useScreenAnimation","target","route","useRoute","localAnimationStore","useOptionalScreenAnimationStore","keyedAnimationStore","key","screenAnimationStore","Error","transitionSources","transitionOriginIndex","transition","useBuildTransitionAccessor","transitionTarget","normalizeScreenAnimationTarget","animation","useDerivedValue","readScreenAnimationRevisions","isTransitionTarget","ancestorCount","undefined","depth","Number","isInteger","ancestor","NaN"],"sourceRoot":"../../../../../../src","sources":["shared/providers/screen/animation/use-screen-animation.tsx"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AAKA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,2BAAA,GAAAH,OAAA;AACA,IAAAI,6BAAA,GAAAJ,OAAA;AAYA;;AAOA;;AAIO,SAASK,kBAAkBA,CACjCC,MAA8B,EAGkB;EAChD,MAAMC,KAAK,GAAG,IAAAC,gBAAQ,EAAC,CAAC;EACxB,MAAMC,mBAAmB,GAAG,IAAAC,0CAA+B,EAAC,CAAC;EAC7D,MAAMC,mBAAmB,GAAG,IAAAD,0CAA+B,EAC1DD,mBAAmB,GAAG,IAAI,GAAGF,KAAK,CAACK,GACpC,CAAC;EACD,MAAMC,oBAAoB,GAAGJ,mBAAmB,IAAIE,mBAAmB;EAEvE,IAAI,CAACE,oBAAoB,EAAE;IAC1B,MAAM,IAAIC,KAAK,CACd,kDAAkDP,KAAK,CAACK,GAAG,GAC5D,CAAC;EACF;EAEA,MAAM;IAAEG,iBAAiB;IAAEC;EAAsB,CAAC,GAAGH,oBAAoB;EACzE,MAAMI,UAAU,GAAG,IAAAC,sDAA0B,EAACL,oBAAoB,CAAC;EACnE,MAAMM,gBAAgB,GAAGC,8BAA8B,CACtDd,MAAM,EACNU,qBACD,CAAC;EAED,MAAMK,SAAS,GAAG,IAAAC,sCAAe,EAAkC,MAAM;IACxE,SAAS;;IACT,IAAAC,0DAA4B,EAACR,iBAAiB,CAAC;IAC/C,OAAOE,UAAU,CAACE,gBAAgB,CAAC;EACpC,CAAC,CAAC;EAEF,OAAOE,SAAS;AACjB;AAEA,MAAMG,kBAAkB,GACvBlB,MAA6B,IACS;EACtC,OAAO,OAAOA,MAAM,KAAK,QAAQ,IAAIA,MAAM,KAAK,IAAI,IAAI,OAAO,IAAIA,MAAM;AAC1E,CAAC;AAED,MAAMc,8BAA8B,GAAGA,CACtCd,MAAyC,EACzCmB,aAAqB,KACmB;EACxC,IAAInB,MAAM,KAAKoB,SAAS,IAAIF,kBAAkB,CAAClB,MAAM,CAAC,EAAE;IACvD,OAAOA,MAAM;EACd;EAEA,IAAIA,MAAM,KAAK,MAAM,EAAE;IACtB,OAAO;MAAEqB,KAAK,EAAE;IAAE,CAAC;EACpB;EAEA,IAAIrB,MAAM,KAAK,QAAQ,EAAE;IACxB,OAAO;MAAEqB,KAAK,EAAE,CAAC;IAAE,CAAC;EACrB;EAEA,IAAIrB,MAAM,KAAK,MAAM,EAAE;IACtB,OAAO;MAAEqB,KAAK,EAAEF,aAAa,GAAG,CAAC,GAAG,CAACA,aAAa,GAAG,CAAC;IAAE,CAAC;EAC1D;EAEA,IAAI,CAACG,MAAM,CAACC,SAAS,CAACvB,MAAM,CAACwB,QAAQ,CAAC,IAAIxB,MAAM,CAACwB,QAAQ,GAAG,CAAC,EAAE;IAC9D,OAAO;MAAEH,KAAK,EAAEC,MAAM,CAACG;IAAI,CAAC;EAC7B;EAEA,OAAO;IAAEJ,KAAK,EAAE,CAACrB,MAAM,CAACwB;EAAS,CAAC;AACnC,CAAC","ignoreList":[]}
|
|
@@ -7,12 +7,13 @@ exports.useDescriptorsStore = exports.DescriptorsProvider = void 0;
|
|
|
7
7
|
var _react = require("react");
|
|
8
8
|
var _reactNativeReanimated = require("react-native-reanimated");
|
|
9
9
|
var _context = require("../../../adapters/with-screen-transitions/context");
|
|
10
|
+
var _screenTopology = require("../../../factories/screen-topology");
|
|
11
|
+
var _useStack = require("../../../hooks/navigation/use-stack");
|
|
10
12
|
var _blankStack = require("../../../providers/stack/blank-stack.provider");
|
|
11
13
|
var _coordinator = require("../../../stores/bounds/internals/coordinator");
|
|
12
14
|
var _system = require("../../../stores/system.store");
|
|
13
15
|
var _createProvider = _interopRequireDefault(require("../../../utils/create-provider"));
|
|
14
16
|
var _deriveDescriptorDerivations = require("./helpers/derive-descriptor-derivations");
|
|
15
|
-
var _deriveStructuralAncestorKeys = require("./helpers/derive-structural-ancestor-keys");
|
|
16
17
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
17
18
|
/**
|
|
18
19
|
* Base descriptor interface - minimal contract for all stack types.
|
|
@@ -20,32 +21,36 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
|
|
|
20
21
|
* tight coupling to React Navigation.
|
|
21
22
|
*/
|
|
22
23
|
|
|
24
|
+
const createDescriptorsProvider = (0, _createProvider.default)("Descriptors", {
|
|
25
|
+
global: true
|
|
26
|
+
});
|
|
23
27
|
const {
|
|
24
28
|
DescriptorsProvider,
|
|
25
|
-
useDescriptorsStore
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
})(({
|
|
29
|
+
useDescriptorsStore,
|
|
30
|
+
useOptionalDescriptorsStore
|
|
31
|
+
} = createDescriptorsProvider(({
|
|
29
32
|
previous,
|
|
30
33
|
current,
|
|
31
34
|
next,
|
|
32
35
|
routeKey,
|
|
33
36
|
children
|
|
34
|
-
}, {
|
|
35
|
-
useParentStore
|
|
36
37
|
}) => {
|
|
37
|
-
const parentScreenKey =
|
|
38
|
-
const
|
|
39
|
-
const
|
|
40
|
-
const
|
|
41
|
-
const
|
|
42
|
-
const
|
|
43
|
-
const blankStackNext = (0, _blankStack.useBlankStackStore)(store => routeKey ? store?.scenesByKey[routeKey]?.nextDescriptor : undefined);
|
|
38
|
+
const parentScreenKey = useOptionalDescriptorsStore(store => store?.derivations.currentScreenKey);
|
|
39
|
+
const parentTransitionSourcePairKey = useOptionalDescriptorsStore(store => store?.derivations.transitionSourcePairKey);
|
|
40
|
+
const parentTransitionDestinationScreenKey = useOptionalDescriptorsStore(store => store?.derivations.transitionDestinationScreenKey);
|
|
41
|
+
const blankStackCurrent = (0, _blankStack.useOptionalBlankStackStore)(store => routeKey ? store?.scenesByKey[routeKey]?.descriptor : undefined);
|
|
42
|
+
const blankStackPrevious = (0, _blankStack.useOptionalBlankStackStore)(store => routeKey ? store?.scenesByKey[routeKey]?.previousDescriptor : undefined);
|
|
43
|
+
const blankStackNext = (0, _blankStack.useOptionalBlankStackStore)(store => routeKey ? store?.scenesByKey[routeKey]?.nextDescriptor : undefined);
|
|
44
44
|
const adapterContext = (0, _context.useScreenTransitionsAdapterOptionalContext)();
|
|
45
45
|
const adapterScene = routeKey ? adapterContext?.scenesByKey?.[routeKey] ?? adapterContext?.scenes[adapterContext.routeIndexByKey.get(routeKey) ?? -1] : undefined;
|
|
46
46
|
const resolvedCurrent = current ?? blankStackCurrent ?? adapterScene?.descriptor;
|
|
47
47
|
const resolvedPrevious = previous ?? blankStackPrevious ?? adapterScene?.previousDescriptor;
|
|
48
48
|
const resolvedNext = next ?? blankStackNext ?? adapterScene?.nextDescriptor;
|
|
49
|
+
const currentScreenKey = current?.route.key ?? routeKey;
|
|
50
|
+
const isActiveScreen = (0, _useStack.useStack)(store => {
|
|
51
|
+
const focusedScene = store.scenes[store.focusedIndex];
|
|
52
|
+
return focusedScene.route.key === currentScreenKey && focusedScene.activity === "active";
|
|
53
|
+
});
|
|
49
54
|
if (!resolvedCurrent) {
|
|
50
55
|
throw new Error(`Descriptors scene "${routeKey ?? "unknown"}" was not found.`);
|
|
51
56
|
}
|
|
@@ -54,37 +59,47 @@ const {
|
|
|
54
59
|
current: resolvedCurrent,
|
|
55
60
|
next: resolvedNext
|
|
56
61
|
}), [resolvedPrevious, resolvedCurrent, resolvedNext]);
|
|
57
|
-
const ancestorKeys = (0, _react.useMemo)(() => (0, _deriveStructuralAncestorKeys.deriveStructuralAncestorKeys)(parentScreenKey ? {
|
|
58
|
-
currentScreenKey: parentScreenKey,
|
|
59
|
-
ancestorKeys: parentAncestorKeys ?? []
|
|
60
|
-
} : null), [parentAncestorKeys, parentScreenKey]);
|
|
61
62
|
const derivations = (0, _react.useMemo)(() => {
|
|
62
63
|
const localDerivations = (0, _deriveDescriptorDerivations.deriveDescriptorDerivations)({
|
|
63
64
|
previous: resolvedPrevious,
|
|
64
65
|
current: resolvedCurrent,
|
|
65
|
-
next: resolvedNext
|
|
66
|
-
ancestorKeys
|
|
66
|
+
next: resolvedNext
|
|
67
67
|
});
|
|
68
68
|
return {
|
|
69
69
|
...localDerivations,
|
|
70
|
-
transitionSourcePairKey: localDerivations.sourcePairKey ?? parentTransitionSourcePairKey,
|
|
71
|
-
transitionDestinationScreenKey: localDerivations.nextScreenKey ?? parentTransitionDestinationScreenKey
|
|
70
|
+
transitionSourcePairKey: localDerivations.sourcePairKey ?? parentTransitionSourcePairKey ?? undefined,
|
|
71
|
+
transitionDestinationScreenKey: localDerivations.nextScreenKey ?? parentTransitionDestinationScreenKey ?? undefined
|
|
72
72
|
};
|
|
73
|
-
}, [resolvedPrevious, resolvedCurrent, resolvedNext,
|
|
73
|
+
}, [resolvedPrevious, resolvedCurrent, resolvedNext, parentTransitionSourcePairKey, parentTransitionDestinationScreenKey]);
|
|
74
74
|
const animationProgress = _system.SystemStore.getValue(derivations.currentScreenKey, "animationProgress");
|
|
75
75
|
const pendingLifecycleStartBlockCount = _system.SystemStore.getValue(derivations.currentScreenKey, "pendingLifecycleStartBlockCount");
|
|
76
76
|
(0, _react.useLayoutEffect)(() => {
|
|
77
|
+
_screenTopology.screenTopology.register({
|
|
78
|
+
screenKey: derivations.currentScreenKey,
|
|
79
|
+
parentScreenKey
|
|
80
|
+
});
|
|
77
81
|
(0, _reactNativeReanimated.runOnUI)(_coordinator.registerScreen)({
|
|
78
82
|
screenKey: derivations.currentScreenKey,
|
|
79
|
-
parentScreenKey
|
|
83
|
+
parentScreenKey,
|
|
80
84
|
animationProgress,
|
|
81
85
|
pendingLifecycleStartBlockCount
|
|
82
86
|
});
|
|
83
87
|
return () => {
|
|
88
|
+
_screenTopology.screenTopology.unregister(derivations.currentScreenKey);
|
|
84
89
|
(0, _reactNativeReanimated.runOnUI)(_coordinator.unregisterScreen)(derivations.currentScreenKey);
|
|
85
90
|
};
|
|
86
|
-
}, [animationProgress, derivations.currentScreenKey,
|
|
91
|
+
}, [animationProgress, derivations.currentScreenKey, parentScreenKey, pendingLifecycleStartBlockCount]);
|
|
92
|
+
(0, _react.useLayoutEffect)(() => {
|
|
93
|
+
if (!isActiveScreen || !parentScreenKey) {
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
return _screenTopology.screenTopology.activate({
|
|
97
|
+
screenKey: derivations.currentScreenKey,
|
|
98
|
+
parentScreenKey
|
|
99
|
+
});
|
|
100
|
+
}, [isActiveScreen, derivations.currentScreenKey, parentScreenKey]);
|
|
87
101
|
return {
|
|
102
|
+
key: derivations.currentScreenKey,
|
|
88
103
|
value: {
|
|
89
104
|
previous: resolvedPrevious,
|
|
90
105
|
current: resolvedCurrent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNativeReanimated","_context","_blankStack","_coordinator","_system","_createProvider","_interopRequireDefault","_deriveDescriptorDerivations","
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNativeReanimated","_context","_screenTopology","_useStack","_blankStack","_coordinator","_system","_createProvider","_interopRequireDefault","_deriveDescriptorDerivations","e","__esModule","default","createDescriptorsProvider","createProvider","global","DescriptorsProvider","useDescriptorsStore","useOptionalDescriptorsStore","previous","current","next","routeKey","children","parentScreenKey","store","derivations","currentScreenKey","parentTransitionSourcePairKey","transitionSourcePairKey","parentTransitionDestinationScreenKey","transitionDestinationScreenKey","blankStackCurrent","useOptionalBlankStackStore","scenesByKey","descriptor","undefined","blankStackPrevious","previousDescriptor","blankStackNext","nextDescriptor","adapterContext","useScreenTransitionsAdapterOptionalContext","adapterScene","scenes","routeIndexByKey","get","resolvedCurrent","resolvedPrevious","resolvedNext","route","key","isActiveScreen","useStack","focusedScene","focusedIndex","activity","Error","descriptors","useMemo","localDerivations","deriveDescriptorDerivations","sourcePairKey","nextScreenKey","animationProgress","SystemStore","getValue","pendingLifecycleStartBlockCount","useLayoutEffect","screenTopology","register","screenKey","runOnUI","registerScreen","unregister","unregisterScreen","activate","value","options","exports"],"sourceRoot":"../../../../../../src","sources":["shared/providers/screen/descriptors/descriptors.provider.tsx"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.js
CHANGED
|
@@ -8,8 +8,7 @@ var _linkPairs = require("../../../../stores/bounds/helpers/link-pairs.helpers")
|
|
|
8
8
|
function deriveDescriptorDerivations({
|
|
9
9
|
previous,
|
|
10
10
|
current,
|
|
11
|
-
next
|
|
12
|
-
ancestorKeys
|
|
11
|
+
next
|
|
13
12
|
}) {
|
|
14
13
|
const previousScreenKey = previous?.route.key;
|
|
15
14
|
const currentScreenKey = current.route.key;
|
|
@@ -29,10 +28,8 @@ function deriveDescriptorDerivations({
|
|
|
29
28
|
transitionSourcePairKey: sourcePairKey,
|
|
30
29
|
transitionDestinationScreenKey: nextScreenKey,
|
|
31
30
|
destinationPairKey,
|
|
32
|
-
parentScreenKey: ancestorKeys[0],
|
|
33
31
|
isFirstKey,
|
|
34
32
|
isTopMostScreen,
|
|
35
|
-
ancestorKeys,
|
|
36
33
|
hasConfiguredInterpolator
|
|
37
34
|
};
|
|
38
35
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_linkPairs","require","deriveDescriptorDerivations","previous","current","next","
|
|
1
|
+
{"version":3,"names":["_linkPairs","require","deriveDescriptorDerivations","previous","current","next","previousScreenKey","route","key","currentScreenKey","nextScreenKey","sourcePairKey","createScreenPairKey","undefined","destinationPairKey","navigationState","navigation","getState","routes","isFirstKey","findIndex","isTopMostScreen","hasConfiguredInterpolator","options","screenStyleInterpolator","transitionSourcePairKey","transitionDestinationScreenKey"],"sourceRoot":"../../../../../../../src","sources":["shared/providers/screen/descriptors/helpers/derive-descriptor-derivations.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAyBO,SAASC,2BAA2BA,CAAC;EAC3CC,QAAQ;EACRC,OAAO;EACPC;AACO,CAAC,EAAyB;EACjC,MAAMC,iBAAiB,GAAGH,QAAQ,EAAEI,KAAK,CAACC,GAAG;EAC7C,MAAMC,gBAAgB,GAAGL,OAAO,CAACG,KAAK,CAACC,GAAG;EAC1C,MAAME,aAAa,GAAGL,IAAI,EAAEE,KAAK,CAACC,GAAG;EACrC,MAAMG,aAAa,GAAGD,aAAa,GAChC,IAAAE,8BAAmB,EAACH,gBAAgB,EAAEC,aAAa,CAAC,GACpDG,SAAS;EACZ,MAAMC,kBAAkB,GAAGR,iBAAiB,GACzC,IAAAM,8BAAmB,EAACN,iBAAiB,EAAEG,gBAAgB,CAAC,GACxDI,SAAS;EAEZ,MAAME,eAAe,GAAGX,OAAO,CAACY,UAAU,CAACC,QAAQ,CAAC,CAAC;EACrD,MAAMC,MAAM,GAAGH,eAAe,EAAEG,MAAM,IAAI,EAAE;EAC5C,MAAMC,UAAU,GACfD,MAAM,CAACE,SAAS,CAAEb,KAAK,IAAKA,KAAK,CAACC,GAAG,KAAKJ,OAAO,CAACG,KAAK,CAACC,GAAG,CAAC,KAAK,CAAC;EACnE,MAAMa,eAAe,GAAG,CAAChB,IAAI;EAC7B,MAAMiB,yBAAyB,GAC9B,CAAC,CAAClB,OAAO,CAACmB,OAAO,CAACC,uBAAuB,IACzC,CAAC,CAACnB,IAAI,EAAEkB,OAAO,EAAEC,uBAAuB;EAEzC,OAAO;IACNlB,iBAAiB;IACjBG,gBAAgB;IAChBC,aAAa;IACbC,aAAa;IACbc,uBAAuB,EAAEd,aAAa;IACtCe,8BAA8B,EAAEhB,aAAa;IAC7CI,kBAAkB;IAClBK,UAAU;IACVE,eAAe;IACfC;EACD,CAAC;AACF","ignoreList":[]}
|
|
@@ -3,13 +3,14 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.useScreenGestureStore = exports.useOptionalScreenGestureStore = exports.ScreenGestureProvider = void 0;
|
|
7
7
|
var _react = require("react");
|
|
8
8
|
var _reactNativeGestureHandler = require("react-native-gesture-handler");
|
|
9
9
|
var _reactNativeReanimated = require("react-native-reanimated");
|
|
10
10
|
var _scroll = require("../../../stores/scroll.store");
|
|
11
11
|
var _createProvider = _interopRequireDefault(require("../../../utils/create-provider"));
|
|
12
12
|
var _descriptors = require("../descriptors");
|
|
13
|
+
var _useCurrentScreenRelationships = require("../use-current-screen-relationships");
|
|
13
14
|
var _useScreenGestureConfig = require("./hooks/use-screen-gesture-config");
|
|
14
15
|
var _gestureOwnershipBridge = require("./ownership/gesture-ownership-bridge");
|
|
15
16
|
var _useBuildPanGesture = require("./pan/use-build-pan-gesture");
|
|
@@ -17,28 +18,25 @@ var _useBuildPinchGesture = require("./pinch/use-build-pinch-gesture");
|
|
|
17
18
|
var _types = require("./types");
|
|
18
19
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
19
20
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
21
|
+
const EMPTY_GESTURE_SOURCES = [];
|
|
22
|
+
const createScreenGestureProvider = (0, _createProvider.default)("ScreenGesture", {
|
|
23
|
+
global: true
|
|
24
|
+
});
|
|
20
25
|
const {
|
|
21
26
|
ScreenGestureProvider,
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
})(({
|
|
27
|
+
useOptionalScreenGestureStore,
|
|
28
|
+
useScreenGestureStore
|
|
29
|
+
} = createScreenGestureProvider(({
|
|
26
30
|
children
|
|
27
|
-
}, {
|
|
28
|
-
useParentStore
|
|
29
31
|
}) => {
|
|
30
32
|
const currentScreenKey = (0, _descriptors.useDescriptorsStore)(store => store.derivations.currentScreenKey);
|
|
31
33
|
const isTopMostScreen = (0, _descriptors.useDescriptorsStore)(store => store.derivations.isTopMostScreen);
|
|
32
|
-
const
|
|
33
|
-
const
|
|
34
|
+
const relationships = (0, _useCurrentScreenRelationships.useCurrentScreenRelationships)();
|
|
35
|
+
const relationshipAncestorGestures = useOptionalScreenGestureStore(relationships.parentScreenKey, store => store.relationshipGestureSources) ?? EMPTY_GESTURE_SOURCES;
|
|
36
|
+
const ancestorGestures = isTopMostScreen ? relationshipAncestorGestures : EMPTY_GESTURE_SOURCES;
|
|
37
|
+
const gestureConfig = (0, _useScreenGestureConfig.useScreenGestureConfig)(ancestorGestures);
|
|
34
38
|
const scrollState = _scroll.ScrollStore.getValue(currentScreenKey, "coordination");
|
|
35
|
-
|
|
36
|
-
// Ancestors read this before activating. If a nested screen claims the same
|
|
37
|
-
// direction, it writes here so the ancestor can fail and let it take priority.
|
|
38
39
|
const childDirectionClaims = (0, _reactNativeReanimated.useSharedValue)(_types.NO_DIRECTION_CLAIMS);
|
|
39
|
-
|
|
40
|
-
// The first gesture to activate owns navigation release. Other gestures may
|
|
41
|
-
// still join as companion trackers during the same simultaneous composition.
|
|
42
40
|
const gestureCompositionOwner = (0, _reactNativeReanimated.useSharedValue)(null);
|
|
43
41
|
const panGesture = (0, _useBuildPanGesture.useBuildPanGesture)({
|
|
44
42
|
scrollState,
|
|
@@ -51,24 +49,31 @@ const {
|
|
|
51
49
|
gestureCompositionOwner
|
|
52
50
|
});
|
|
53
51
|
const detectorGesture = (0, _react.useMemo)(() => _reactNativeGestureHandler.Gesture.Simultaneous(panGesture, pinchGesture), [panGesture, pinchGesture]);
|
|
54
|
-
const
|
|
52
|
+
const source = (0, _react.useMemo)(() => ({
|
|
55
53
|
routeKey: currentScreenKey,
|
|
56
54
|
detectorGesture,
|
|
57
55
|
panGesture,
|
|
58
56
|
pinchGesture,
|
|
59
57
|
scrollState,
|
|
60
|
-
gestureContext,
|
|
61
58
|
claimedDirections: gestureConfig.participation.claimedDirections,
|
|
62
59
|
childDirectionClaims
|
|
63
|
-
}), [currentScreenKey, detectorGesture, panGesture, pinchGesture, scrollState,
|
|
60
|
+
}), [currentScreenKey, detectorGesture, panGesture, pinchGesture, scrollState, gestureConfig.participation.claimedDirections, childDirectionClaims]);
|
|
61
|
+
const relationshipGestureSources = (0, _react.useMemo)(() => [source, ...ancestorGestures], [source, ancestorGestures]);
|
|
62
|
+
const value = (0, _react.useMemo)(() => ({
|
|
63
|
+
...source,
|
|
64
|
+
ancestorGestures,
|
|
65
|
+
relationshipGestureSources
|
|
66
|
+
}), [source, ancestorGestures, relationshipGestureSources]);
|
|
64
67
|
const content = (0, _react.useMemo)(() => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_react.Fragment, {
|
|
65
68
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_gestureOwnershipBridge.GestureOwnershipBridge, {}), children]
|
|
66
69
|
}), [children]);
|
|
67
70
|
return {
|
|
71
|
+
key: currentScreenKey,
|
|
68
72
|
value,
|
|
69
73
|
children: content
|
|
70
74
|
};
|
|
71
75
|
});
|
|
72
|
-
exports.
|
|
76
|
+
exports.useScreenGestureStore = useScreenGestureStore;
|
|
77
|
+
exports.useOptionalScreenGestureStore = useOptionalScreenGestureStore;
|
|
73
78
|
exports.ScreenGestureProvider = ScreenGestureProvider;
|
|
74
79
|
//# sourceMappingURL=gestures.provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNativeGestureHandler","_reactNativeReanimated","_scroll","_createProvider","_interopRequireDefault","_descriptors","_useScreenGestureConfig","_gestureOwnershipBridge","_useBuildPanGesture","_useBuildPinchGesture","_types","_jsxRuntime","e","__esModule","default","
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNativeGestureHandler","_reactNativeReanimated","_scroll","_createProvider","_interopRequireDefault","_descriptors","_useCurrentScreenRelationships","_useScreenGestureConfig","_gestureOwnershipBridge","_useBuildPanGesture","_useBuildPinchGesture","_types","_jsxRuntime","e","__esModule","default","EMPTY_GESTURE_SOURCES","createScreenGestureProvider","createProvider","global","ScreenGestureProvider","useOptionalScreenGestureStore","useScreenGestureStore","children","currentScreenKey","useDescriptorsStore","store","derivations","isTopMostScreen","relationships","useCurrentScreenRelationships","relationshipAncestorGestures","parentScreenKey","relationshipGestureSources","ancestorGestures","gestureConfig","useScreenGestureConfig","scrollState","ScrollStore","getValue","childDirectionClaims","useSharedValue","NO_DIRECTION_CLAIMS","gestureCompositionOwner","panGesture","useBuildPanGesture","pinchGesture","useBuildPinchGesture","detectorGesture","useMemo","Gesture","Simultaneous","source","routeKey","claimedDirections","participation","value","content","jsxs","Fragment","jsx","GestureOwnershipBridge","key","exports"],"sourceRoot":"../../../../../../src","sources":["shared/providers/screen/gestures/gestures.provider.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -8,7 +8,7 @@ var _native = require("@react-navigation/native");
|
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
var _descriptors = require("../../descriptors");
|
|
10
10
|
var _policy = require("../shared/policy");
|
|
11
|
-
function useScreenGestureConfig(
|
|
11
|
+
function useScreenGestureConfig(ancestorGestures) {
|
|
12
12
|
const options = (0, _descriptors.useDescriptorsStore)(store => store.options);
|
|
13
13
|
const isFirstKey = (0, _descriptors.useDescriptorsStore)(store => store.derivations.isFirstKey);
|
|
14
14
|
const currentScreenKey = (0, _descriptors.useDescriptorsStore)(store => store.derivations.currentScreenKey);
|
|
@@ -19,8 +19,8 @@ function useScreenGestureConfig(gestureContext) {
|
|
|
19
19
|
return (0, _react.useMemo)(() => (0, _policy.resolveScreenGestureConfig)({
|
|
20
20
|
options,
|
|
21
21
|
isFirstKey,
|
|
22
|
-
|
|
22
|
+
ancestorGestures,
|
|
23
23
|
isRemovePrevented
|
|
24
|
-
}), [isFirstKey, options,
|
|
24
|
+
}), [isFirstKey, options, ancestorGestures, isRemovePrevented]);
|
|
25
25
|
}
|
|
26
26
|
//# sourceMappingURL=use-screen-gesture-config.js.map
|
package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_native","require","_react","_descriptors","_policy","useScreenGestureConfig","
|
|
1
|
+
{"version":3,"names":["_native","require","_react","_descriptors","_policy","useScreenGestureConfig","ancestorGestures","options","useDescriptorsStore","store","isFirstKey","derivations","currentScreenKey","preventedRoutes","usePreventRemoveContext","isRemovePrevented","preventRemove","useMemo","resolveScreenGestureConfig"],"sourceRoot":"../../../../../../../src","sources":["shared/providers/screen/gestures/hooks/use-screen-gesture-config.ts"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAGO,SAASI,sBAAsBA,CACrCC,gBAAgD,EAC1B;EACtB,MAAMC,OAAO,GAAG,IAAAC,gCAAmB,EAAEC,KAAK,IAAKA,KAAK,CAACF,OAAO,CAAC;EAC7D,MAAMG,UAAU,GAAG,IAAAF,gCAAmB,EACpCC,KAAK,IAAKA,KAAK,CAACE,WAAW,CAACD,UAC9B,CAAC;EACD,MAAME,gBAAgB,GAAG,IAAAJ,gCAAmB,EAC1CC,KAAK,IAAKA,KAAK,CAACE,WAAW,CAACC,gBAC9B,CAAC;EACD,MAAM;IAAEC;EAAgB,CAAC,GAAG,IAAAC,+BAAuB,EAAC,CAAC;EACrD,MAAMC,iBAAiB,GACtBF,eAAe,CAACD,gBAAgB,CAAC,EAAEI,aAAa,KAAK,IAAI;EAE1D,OAAO,IAAAC,cAAO,EACb,MACC,IAAAC,kCAA0B,EAAC;IAC1BX,OAAO;IACPG,UAAU;IACVJ,gBAAgB;IAChBS;EACD,CAAC,CAAC,EACH,CAACL,UAAU,EAAEH,OAAO,EAAED,gBAAgB,EAAES,iBAAiB,CAC1D,CAAC;AACF","ignoreList":[]}
|
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.useScreenGesture = void 0;
|
|
7
7
|
var _resolveChainTarget = require("../../../../utils/resolve-chain-target");
|
|
8
8
|
var _gestures = require("../gestures.provider");
|
|
9
|
-
var _ancestors = require("../shared/ancestors");
|
|
10
9
|
/**
|
|
11
10
|
* Returns a screen navigation pan gesture.
|
|
12
11
|
* Use this to coordinate child gestures with the navigation gesture.
|
|
@@ -21,11 +20,11 @@ var _ancestors = require("../shared/ancestors");
|
|
|
21
20
|
* ```
|
|
22
21
|
*/
|
|
23
22
|
const useScreenGesture = target => {
|
|
24
|
-
const ctx = (0, _gestures.
|
|
23
|
+
const ctx = (0, _gestures.useOptionalScreenGestureStore)();
|
|
25
24
|
return (0, _resolveChainTarget.resolveChainTarget)({
|
|
26
25
|
target,
|
|
27
26
|
self: ctx,
|
|
28
|
-
ancestors:
|
|
27
|
+
ancestors: ctx?.ancestorGestures ?? []
|
|
29
28
|
})?.panGesture ?? null;
|
|
30
29
|
};
|
|
31
30
|
exports.useScreenGesture = useScreenGesture;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_resolveChainTarget","require","_gestures","
|
|
1
|
+
{"version":3,"names":["_resolveChainTarget","require","_gestures","useScreenGesture","target","ctx","useOptionalScreenGestureStore","resolveChainTarget","self","ancestors","ancestorGestures","panGesture","exports"],"sourceRoot":"../../../../../../../src","sources":["shared/providers/screen/gestures/hooks/use-screen-gesture.ts"],"mappings":";;;;;;AAAA,IAAAA,mBAAA,GAAAC,OAAA;AAIA,IAAAC,SAAA,GAAAD,OAAA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAME,gBAAgB,GAAIC,MAA4B,IAAK;EACjE,MAAMC,GAAG,GAAG,IAAAC,uCAA6B,EAAC,CAAC;EAE3C,OACC,IAAAC,sCAAkB,EAAC;IAClBH,MAAM;IACNI,IAAI,EAAEH,GAAG;IACTI,SAAS,EAAEJ,GAAG,EAAEK,gBAAgB,IAAI;EACrC,CAAC,CAAC,EAAEC,UAAU,IAAI,IAAI;AAExB,CAAC;AAACC,OAAA,CAAAT,gBAAA,GAAAA,gBAAA","ignoreList":[]}
|
|
@@ -9,10 +9,16 @@ Object.defineProperty(exports, "ScreenGestureProvider", {
|
|
|
9
9
|
return _gestures.ScreenGestureProvider;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
-
Object.defineProperty(exports, "
|
|
12
|
+
Object.defineProperty(exports, "useOptionalScreenGestureStore", {
|
|
13
13
|
enumerable: true,
|
|
14
14
|
get: function () {
|
|
15
|
-
return _gestures.
|
|
15
|
+
return _gestures.useOptionalScreenGestureStore;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, "useScreenGestureStore", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () {
|
|
21
|
+
return _gestures.useScreenGestureStore;
|
|
16
22
|
}
|
|
17
23
|
});
|
|
18
24
|
var _gestures = require("./gestures.provider");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_gestures","require"],"sourceRoot":"../../../../../../src","sources":["shared/providers/screen/gestures/index.tsx"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_gestures","require"],"sourceRoot":"../../../../../../src","sources":["shared/providers/screen/gestures/index.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA","ignoreList":[]}
|
|
@@ -10,7 +10,6 @@ var _ownership = require("../../../../types/ownership.types");
|
|
|
10
10
|
var _descriptors = require("../../../screen/descriptors");
|
|
11
11
|
var _blankStack = require("../../../stack/blank-stack.provider");
|
|
12
12
|
var _gestures = require("../gestures.provider");
|
|
13
|
-
var _ancestors = require("../shared/ancestors");
|
|
14
13
|
var _policy = require("../shared/policy");
|
|
15
14
|
var _shadowingClaims = require("./shadowing-claims");
|
|
16
15
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
@@ -24,12 +23,12 @@ const findShadowedDirections = (claimedDirections, ancestorDirections) => {
|
|
|
24
23
|
}
|
|
25
24
|
return shadowedDirections;
|
|
26
25
|
};
|
|
27
|
-
const findShadowedAncestors = (
|
|
28
|
-
if (
|
|
26
|
+
const findShadowedAncestors = (ancestorGestures, claimedDirections) => {
|
|
27
|
+
if (ancestorGestures.length === 0) {
|
|
29
28
|
return NO_SHADOWED_ANCESTORS;
|
|
30
29
|
}
|
|
31
30
|
const ancestors = [];
|
|
32
|
-
for (const ancestor of
|
|
31
|
+
for (const ancestor of ancestorGestures) {
|
|
33
32
|
const directions = findShadowedDirections(claimedDirections, ancestor.claimedDirections);
|
|
34
33
|
if (directions.length > 0) {
|
|
35
34
|
ancestors.push({
|
|
@@ -84,29 +83,23 @@ const getDescriptorIsFirstKey = descriptor => {
|
|
|
84
83
|
const routes = navigationState?.routes ?? [];
|
|
85
84
|
return routes.findIndex(route => route.key === descriptor.route.key) === 0;
|
|
86
85
|
};
|
|
87
|
-
const getDescriptorClaimedDirections = (descriptor,
|
|
86
|
+
const getDescriptorClaimedDirections = (descriptor, ancestorGestures) => {
|
|
88
87
|
if (!descriptor) {
|
|
89
88
|
return _ownership.NO_CLAIMS;
|
|
90
89
|
}
|
|
91
90
|
return (0, _policy.resolveScreenGestureConfig)({
|
|
92
91
|
options: descriptor.options,
|
|
93
92
|
isFirstKey: getDescriptorIsFirstKey(descriptor),
|
|
94
|
-
|
|
93
|
+
ancestorGestures
|
|
95
94
|
}).participation.claimedDirections;
|
|
96
95
|
};
|
|
97
|
-
const requireGestureContext = gestureContext => {
|
|
98
|
-
if (!gestureContext) {
|
|
99
|
-
throw new Error("GestureOwnershipBridge must be rendered within a ScreenGestureProvider");
|
|
100
|
-
}
|
|
101
|
-
return gestureContext;
|
|
102
|
-
};
|
|
103
96
|
function ActiveGestureOwnershipBridge() {
|
|
104
|
-
const gestureContext =
|
|
97
|
+
const gestureContext = (0, _gestures.useScreenGestureStore)();
|
|
105
98
|
const previous = (0, _descriptors.useDescriptorsStore)(store => store.previous);
|
|
106
|
-
const isCurrentScreenClosing = (0, _blankStack.
|
|
99
|
+
const isCurrentScreenClosing = (0, _blankStack.useOptionalBlankStackStore)(store => store?.scenesByKey[gestureContext.routeKey]?.activity === "closing");
|
|
107
100
|
const {
|
|
108
101
|
claimedDirections,
|
|
109
|
-
|
|
102
|
+
ancestorGestures,
|
|
110
103
|
routeKey: currentScreenKey
|
|
111
104
|
} = gestureContext;
|
|
112
105
|
// A retained closing screen cannot receive touches, so its ownership must
|
|
@@ -114,9 +107,9 @@ function ActiveGestureOwnershipBridge() {
|
|
|
114
107
|
const effectiveClaimedDirections = (0, _react.useMemo)(() => (0, _shadowingClaims.resolveShadowingClaimDirections)({
|
|
115
108
|
isCurrentScreenClosing,
|
|
116
109
|
currentClaimedDirections: claimedDirections,
|
|
117
|
-
previousClaimedDirections: getDescriptorClaimedDirections(previous,
|
|
118
|
-
}), [isCurrentScreenClosing, claimedDirections, previous,
|
|
119
|
-
const shadowedAncestors = (0, _react.useMemo)(() => findShadowedAncestors(
|
|
110
|
+
previousClaimedDirections: getDescriptorClaimedDirections(previous, ancestorGestures)
|
|
111
|
+
}), [isCurrentScreenClosing, claimedDirections, previous, ancestorGestures]);
|
|
112
|
+
const shadowedAncestors = (0, _react.useMemo)(() => findShadowedAncestors(ancestorGestures, effectiveClaimedDirections), [ancestorGestures, effectiveClaimedDirections]);
|
|
120
113
|
(0, _react.useLayoutEffect)(() => {
|
|
121
114
|
if (!shadowedAncestors.length) {
|
|
122
115
|
return;
|
package/lib/commonjs/shared/providers/screen/gestures/ownership/gesture-ownership-bridge.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_gesture","_ownership","_descriptors","_blankStack","_gestures","
|
|
1
|
+
{"version":3,"names":["_react","require","_gesture","_ownership","_descriptors","_blankStack","_gestures","_policy","_shadowingClaims","_jsxRuntime","NO_SHADOWED_ANCESTORS","findShadowedDirections","claimedDirections","ancestorDirections","shadowedDirections","direction","DIRECTIONS","push","findShadowedAncestors","ancestorGestures","length","ancestors","ancestor","directions","registerShadowingClaims","shadowedAncestors","currentScreenKey","isDismissing","GestureStore","getValue","newClaims","childDirectionClaims","get","routeKey","set","clearShadowingClaims","currentClaims","needsUpdate","getDescriptorIsFirstKey","descriptor","navigationState","navigation","getState","routes","findIndex","route","key","getDescriptorClaimedDirections","NO_CLAIMS","resolveScreenGestureConfig","options","isFirstKey","participation","ActiveGestureOwnershipBridge","gestureContext","useScreenGestureStore","previous","useDescriptorsStore","store","isCurrentScreenClosing","useOptionalBlankStackStore","scenesByKey","activity","effectiveClaimedDirections","useMemo","resolveShadowingClaimDirections","currentClaimedDirections","previousClaimedDirections","useLayoutEffect","GestureOwnershipBridge","isTopMostScreen","derivations","jsx"],"sourceRoot":"../../../../../../../src","sources":["shared/providers/screen/gestures/ownership/gesture-ownership-bridge.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -23,15 +23,15 @@ var _ownership = require("../../../../types/ownership.types");
|
|
|
23
23
|
* used in worklets since it's a plain object.
|
|
24
24
|
*
|
|
25
25
|
* @param selfClaims - The directions claimed by the current screen
|
|
26
|
-
* @param
|
|
26
|
+
* @param ancestors - Nearest-first ancestor gesture values from screen topology.
|
|
27
27
|
* @returns Ownership status for all four directions
|
|
28
28
|
*/
|
|
29
|
-
function resolveOwnership(selfClaims,
|
|
29
|
+
function resolveOwnership(selfClaims, ancestors) {
|
|
30
30
|
const result = {
|
|
31
31
|
..._ownership.NO_OWNERSHIP
|
|
32
32
|
};
|
|
33
33
|
for (const direction of _ownership.DIRECTIONS) {
|
|
34
|
-
result[direction] = resolveDirectionOwnership(direction, selfClaims,
|
|
34
|
+
result[direction] = resolveDirectionOwnership(direction, selfClaims, ancestors);
|
|
35
35
|
}
|
|
36
36
|
return result;
|
|
37
37
|
}
|
|
@@ -39,19 +39,17 @@ function resolveOwnership(selfClaims, gestureContext) {
|
|
|
39
39
|
/**
|
|
40
40
|
* Resolves ownership for a single direction.
|
|
41
41
|
*/
|
|
42
|
-
function resolveDirectionOwnership(direction, selfClaims,
|
|
42
|
+
function resolveDirectionOwnership(direction, selfClaims, ancestors) {
|
|
43
43
|
// Check self first
|
|
44
44
|
if (selfClaims[direction]) {
|
|
45
45
|
return "self";
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
// Walk ancestors looking for a claim
|
|
49
|
-
|
|
50
|
-
while (ancestor) {
|
|
49
|
+
for (const ancestor of ancestors) {
|
|
51
50
|
if (ancestor.claimedDirections?.[direction]) {
|
|
52
51
|
return "ancestor";
|
|
53
52
|
}
|
|
54
|
-
ancestor = ancestor.gestureContext;
|
|
55
53
|
}
|
|
56
54
|
|
|
57
55
|
// No one claims this direction
|