react-native-screen-transitions 3.11.2 → 3.12.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 +1 -2
- package/lib/commonjs/blank-stack/components/stack-view.js.map +1 -1
- package/lib/commonjs/component-stack/components/stack-view.js +1 -2
- package/lib/commonjs/component-stack/components/stack-view.js.map +1 -1
- package/lib/commonjs/native-stack/views/NativeStackView.native.js +3 -4
- package/lib/commonjs/native-stack/views/NativeStackView.native.js.map +1 -1
- package/lib/commonjs/shared/adapters/with-screen-transitions/stack-layout.js +1 -1
- package/lib/commonjs/shared/adapters/with-screen-transitions/stack-layout.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/components/boundary-lifecycle.js +36 -0
- package/lib/commonjs/shared/components/boundary/components/boundary-lifecycle.js.map +1 -0
- package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js +1 -13
- 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 +9 -2
- 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 +3 -2
- package/lib/commonjs/shared/components/boundary/hooks/use-boundary-measurement.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/hooks/use-measurer.js +9 -2
- 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 +7 -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/components/host.js +5 -12
- 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 +25 -43
- 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/local-measurement.js +13 -0
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/local-measurement.js.map +1 -0
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.js +8 -31
- 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 +14 -19
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +8 -0
- 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 +19 -47
- 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.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js +1 -1
- 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/providers/boundary-root.provider.js +19 -17
- package/lib/commonjs/shared/components/boundary/providers/boundary-root.provider.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/utils/refresh-signals.js +19 -5
- package/lib/commonjs/shared/components/boundary/utils/refresh-signals.js.map +1 -1
- package/lib/commonjs/shared/components/overlay/helpers/create-overlay-interpolator-frame.js +30 -0
- package/lib/commonjs/shared/components/overlay/helpers/create-overlay-interpolator-frame.js.map +1 -0
- package/lib/commonjs/shared/components/overlay/helpers/get-active-overlay.js +40 -22
- package/lib/commonjs/shared/components/overlay/helpers/get-active-overlay.js.map +1 -1
- package/lib/commonjs/shared/components/overlay/helpers/retain-ready-overlay-resources.js +21 -0
- package/lib/commonjs/shared/components/overlay/helpers/retain-ready-overlay-resources.js.map +1 -0
- package/lib/commonjs/shared/components/overlay/helpers/run-overlay-slot-interpolator.js +41 -0
- package/lib/commonjs/shared/components/overlay/helpers/run-overlay-slot-interpolator.js.map +1 -0
- package/lib/commonjs/shared/components/overlay/hooks/use-overlay-slot.js +85 -0
- package/lib/commonjs/shared/components/overlay/hooks/use-overlay-slot.js.map +1 -0
- package/lib/commonjs/shared/components/overlay/variations/float-overlay.js +14 -65
- package/lib/commonjs/shared/components/overlay/variations/float-overlay.js.map +1 -1
- package/lib/commonjs/shared/components/overlay/variations/overlay-host.js +89 -16
- package/lib/commonjs/shared/components/overlay/variations/overlay-host.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/backdrop.js +11 -7
- package/lib/commonjs/shared/components/screen-container/layers/backdrop.js.map +1 -1
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/helpers/close-interception-rules.js +31 -0
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/helpers/close-interception-rules.js.map +1 -0
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-completion.js +26 -0
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-completion.js.map +1 -0
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +64 -87
- 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-transition-start-controller.js +1 -5
- 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 +9 -6
- package/lib/commonjs/shared/components/screen-lifecycle/index.js.map +1 -1
- package/lib/commonjs/shared/hooks/navigation/use-navigation-helpers.js +28 -6
- package/lib/commonjs/shared/hooks/navigation/use-navigation-helpers.js.map +1 -1
- package/lib/commonjs/shared/providers/helpers/measured-bounds-writes.js +1 -2
- package/lib/commonjs/shared/providers/helpers/measured-bounds-writes.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/animation.provider.js +10 -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-transition-accessor.js +6 -8
- package/lib/commonjs/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/use-screen-animation.js +8 -2
- package/lib/commonjs/shared/providers/screen/animation/use-screen-animation.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/gestures.provider.js +9 -5
- 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 +10 -5
- package/lib/commonjs/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/ownership/{use-walk-up-and-register-shadowing-claims.js → gesture-ownership-bridge.js} +36 -50
- package/lib/commonjs/shared/providers/screen/gestures/ownership/gesture-ownership-bridge.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js +4 -5
- package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js +2 -3
- package/lib/commonjs/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +4 -5
- package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js +2 -3
- package/lib/commonjs/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/shared/policy.js +9 -5
- package/lib/commonjs/shared/providers/screen/gestures/shared/policy.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/constants.js +1 -0
- package/lib/commonjs/shared/providers/screen/styles/constants.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/helpers/transition-visual-state.js +20 -1
- package/lib/commonjs/shared/providers/screen/styles/helpers/transition-visual-state.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/hooks/slot-resolvers.js +14 -15
- 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 +34 -11
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/slot.provider.js +18 -29
- package/lib/commonjs/shared/providers/screen/styles/slot.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/stack/blank-stack-state/blank-stack-controller.js +5 -1
- package/lib/commonjs/shared/providers/stack/blank-stack-state/blank-stack-controller.js.map +1 -1
- package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/resolve-presented-index.js +18 -0
- package/lib/commonjs/shared/providers/stack/blank-stack-state/helpers/resolve-presented-index.js.map +1 -0
- package/lib/commonjs/shared/providers/stack/blank-stack.provider.js +2 -1
- package/lib/commonjs/shared/providers/stack/blank-stack.provider.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/links.js +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/links.js.map +1 -1
- package/lib/commonjs/shared/stores/system.store.js +1 -2
- package/lib/commonjs/shared/stores/system.store.js.map +1 -1
- package/lib/commonjs/shared/utils/animation/animate-to-progress.js +0 -22
- package/lib/commonjs/shared/utils/animation/animate-to-progress.js.map +1 -1
- package/lib/commonjs/shared/utils/create-provider.js +119 -10
- package/lib/commonjs/shared/utils/create-provider.js.map +1 -1
- package/lib/commonjs/shared/utils/navigation/close-action-replay.js +22 -0
- package/lib/commonjs/shared/utils/navigation/close-action-replay.js.map +1 -0
- package/lib/module/blank-stack/components/stack-view.js +1 -2
- package/lib/module/blank-stack/components/stack-view.js.map +1 -1
- package/lib/module/component-stack/components/stack-view.js +1 -2
- package/lib/module/component-stack/components/stack-view.js.map +1 -1
- package/lib/module/native-stack/views/NativeStackView.native.js +3 -4
- package/lib/module/native-stack/views/NativeStackView.native.js.map +1 -1
- package/lib/module/shared/adapters/with-screen-transitions/stack-layout.js +1 -1
- package/lib/module/shared/adapters/with-screen-transitions/stack-layout.js.map +1 -1
- package/lib/module/shared/components/boundary/components/boundary-lifecycle.js +32 -0
- package/lib/module/shared/components/boundary/components/boundary-lifecycle.js.map +1 -0
- package/lib/module/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js +1 -13
- 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 +9 -2
- 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 +3 -2
- package/lib/module/shared/components/boundary/hooks/use-boundary-measurement.js.map +1 -1
- package/lib/module/shared/components/boundary/hooks/use-measurer.js +9 -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 +7 -4
- 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/components/host.js +5 -12
- 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 +27 -45
- 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/local-measurement.js +8 -0
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/local-measurement.js.map +1 -0
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.js +8 -32
- 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 +15 -20
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.js +8 -0
- 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 +20 -48
- 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.map +1 -1
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.js +1 -1
- 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/providers/boundary-root.provider.js +20 -18
- package/lib/module/shared/components/boundary/providers/boundary-root.provider.js.map +1 -1
- package/lib/module/shared/components/boundary/utils/refresh-signals.js +19 -5
- package/lib/module/shared/components/boundary/utils/refresh-signals.js.map +1 -1
- package/lib/module/shared/components/overlay/helpers/create-overlay-interpolator-frame.js +25 -0
- package/lib/module/shared/components/overlay/helpers/create-overlay-interpolator-frame.js.map +1 -0
- package/lib/module/shared/components/overlay/helpers/get-active-overlay.js +37 -21
- package/lib/module/shared/components/overlay/helpers/get-active-overlay.js.map +1 -1
- package/lib/module/shared/components/overlay/helpers/retain-ready-overlay-resources.js +17 -0
- package/lib/module/shared/components/overlay/helpers/retain-ready-overlay-resources.js.map +1 -0
- package/lib/module/shared/components/overlay/helpers/run-overlay-slot-interpolator.js +36 -0
- package/lib/module/shared/components/overlay/helpers/run-overlay-slot-interpolator.js.map +1 -0
- package/lib/module/shared/components/overlay/hooks/use-overlay-slot.js +80 -0
- package/lib/module/shared/components/overlay/hooks/use-overlay-slot.js.map +1 -0
- package/lib/module/shared/components/overlay/variations/float-overlay.js +15 -66
- package/lib/module/shared/components/overlay/variations/float-overlay.js.map +1 -1
- package/lib/module/shared/components/overlay/variations/overlay-host.js +90 -18
- package/lib/module/shared/components/overlay/variations/overlay-host.js.map +1 -1
- package/lib/module/shared/components/screen-container/layers/backdrop.js +12 -8
- package/lib/module/shared/components/screen-container/layers/backdrop.js.map +1 -1
- package/lib/module/shared/components/screen-lifecycle/hooks/helpers/close-interception-rules.js +25 -0
- package/lib/module/shared/components/screen-lifecycle/hooks/helpers/close-interception-rules.js.map +1 -0
- package/lib/module/shared/components/screen-lifecycle/hooks/use-close-completion.js +21 -0
- package/lib/module/shared/components/screen-lifecycle/hooks/use-close-completion.js.map +1 -0
- package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +64 -86
- 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-transition-start-controller.js +1 -5
- 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 +9 -6
- package/lib/module/shared/components/screen-lifecycle/index.js.map +1 -1
- package/lib/module/shared/hooks/navigation/use-navigation-helpers.js +29 -7
- package/lib/module/shared/hooks/navigation/use-navigation-helpers.js.map +1 -1
- package/lib/module/shared/providers/helpers/measured-bounds-writes.js +1 -2
- package/lib/module/shared/providers/helpers/measured-bounds-writes.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/animation.provider.js +10 -7
- 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 -8
- package/lib/module/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/use-screen-animation.js +8 -2
- package/lib/module/shared/providers/screen/animation/use-screen-animation.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/gestures.provider.js +10 -6
- 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 +10 -5
- package/lib/module/shared/providers/screen/gestures/hooks/use-screen-gesture-config.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/ownership/{use-walk-up-and-register-shadowing-claims.js → gesture-ownership-bridge.js} +35 -49
- package/lib/module/shared/providers/screen/gestures/ownership/gesture-ownership-bridge.js.map +1 -0
- package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js +4 -5
- package/lib/module/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js +2 -3
- package/lib/module/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js +4 -5
- package/lib/module/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js +2 -3
- package/lib/module/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/shared/policy.js +9 -5
- package/lib/module/shared/providers/screen/gestures/shared/policy.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/constants.js +1 -0
- package/lib/module/shared/providers/screen/styles/constants.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/helpers/transition-visual-state.js +18 -0
- package/lib/module/shared/providers/screen/styles/helpers/transition-visual-state.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/hooks/slot-resolvers.js +14 -15
- 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 +35 -12
- package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/slot.provider.js +19 -30
- package/lib/module/shared/providers/screen/styles/slot.provider.js.map +1 -1
- package/lib/module/shared/providers/stack/blank-stack-state/blank-stack-controller.js +5 -1
- package/lib/module/shared/providers/stack/blank-stack-state/blank-stack-controller.js.map +1 -1
- package/lib/module/shared/providers/stack/blank-stack-state/helpers/resolve-presented-index.js +14 -0
- package/lib/module/shared/providers/stack/blank-stack-state/helpers/resolve-presented-index.js.map +1 -0
- package/lib/module/shared/providers/stack/blank-stack.provider.js +2 -1
- package/lib/module/shared/providers/stack/blank-stack.provider.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/system.store.js +1 -2
- package/lib/module/shared/stores/system.store.js.map +1 -1
- package/lib/module/shared/types/animation.types.js.map +1 -1
- package/lib/module/shared/utils/animation/animate-to-progress.js +0 -22
- package/lib/module/shared/utils/animation/animate-to-progress.js.map +1 -1
- package/lib/module/shared/utils/create-provider.js +119 -10
- package/lib/module/shared/utils/create-provider.js.map +1 -1
- package/lib/module/shared/utils/navigation/close-action-replay.js +16 -0
- package/lib/module/shared/utils/navigation/close-action-replay.js.map +1 -0
- package/lib/typescript/blank-stack/components/stack-view.d.ts.map +1 -1
- package/lib/typescript/blank-stack/types.d.ts +1 -1
- package/lib/typescript/blank-stack/types.d.ts.map +1 -1
- package/lib/typescript/component-stack/components/stack-view.d.ts.map +1 -1
- package/lib/typescript/component-stack/types.d.ts +1 -1
- package/lib/typescript/component-stack/types.d.ts.map +1 -1
- package/lib/typescript/native-stack/types.d.ts +1 -1
- package/lib/typescript/native-stack/types.d.ts.map +1 -1
- package/lib/typescript/native-stack/views/NativeStackView.native.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/components/boundary-lifecycle.d.ts +18 -0
- package/lib/typescript/shared/components/boundary/components/boundary-lifecycle.d.ts.map +1 -0
- package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.d.ts +1 -2
- 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 -2
- 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 +3 -2
- 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/components/host.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.d.ts +5 -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/local-measurement.d.ts +4 -0
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/local-measurement.d.ts.map +1 -0
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.d.ts +4 -17
- 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 +3 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.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-host-measurement.d.ts +5 -9
- 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/stores/portal-boundary-host.store.d.ts +2 -1
- 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/providers/boundary-root.provider.d.ts +2 -1
- package/lib/typescript/shared/components/boundary/providers/boundary-root.provider.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/types.d.ts +6 -0
- package/lib/typescript/shared/components/boundary/types.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/utils/refresh-signals.d.ts +1 -0
- package/lib/typescript/shared/components/boundary/utils/refresh-signals.d.ts.map +1 -1
- package/lib/typescript/shared/components/overlay/helpers/create-overlay-interpolator-frame.d.ts +7 -0
- package/lib/typescript/shared/components/overlay/helpers/create-overlay-interpolator-frame.d.ts.map +1 -0
- package/lib/typescript/shared/components/overlay/helpers/get-active-overlay.d.ts +17 -7
- package/lib/typescript/shared/components/overlay/helpers/get-active-overlay.d.ts.map +1 -1
- package/lib/typescript/shared/components/overlay/helpers/retain-ready-overlay-resources.d.ts +11 -0
- package/lib/typescript/shared/components/overlay/helpers/retain-ready-overlay-resources.d.ts.map +1 -0
- package/lib/typescript/shared/components/overlay/helpers/run-overlay-slot-interpolator.d.ts +8 -0
- package/lib/typescript/shared/components/overlay/helpers/run-overlay-slot-interpolator.d.ts.map +1 -0
- package/lib/typescript/shared/components/overlay/hooks/use-overlay-slot.d.ts +15 -0
- package/lib/typescript/shared/components/overlay/hooks/use-overlay-slot.d.ts.map +1 -0
- package/lib/typescript/shared/components/overlay/variations/float-overlay.d.ts +1 -1
- package/lib/typescript/shared/components/overlay/variations/float-overlay.d.ts.map +1 -1
- package/lib/typescript/shared/components/overlay/variations/overlay-host.d.ts +7 -6
- package/lib/typescript/shared/components/overlay/variations/overlay-host.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-lifecycle/hooks/helpers/close-interception-rules.d.ts +27 -0
- package/lib/typescript/shared/components/screen-lifecycle/hooks/helpers/close-interception-rules.d.ts.map +1 -0
- package/lib/typescript/shared/components/screen-lifecycle/hooks/use-close-completion.d.ts +7 -0
- package/lib/typescript/shared/components/screen-lifecycle/hooks/use-close-completion.d.ts.map +1 -0
- package/lib/typescript/shared/components/screen-lifecycle/hooks/use-close-transition-intent.d.ts +2 -7
- 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-transition-start-controller.d.ts +1 -3
- 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/hooks/navigation/use-navigation-helpers.d.ts +1 -0
- package/lib/typescript/shared/hooks/navigation/use-navigation-helpers.d.ts.map +1 -1
- package/lib/typescript/shared/index.d.ts +12 -12
- package/lib/typescript/shared/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/animation.provider.d.ts +4 -0
- 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 -1
- 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/use-screen-animation.d.ts.map +1 -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 +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/ownership/gesture-ownership-bridge.d.ts +3 -0
- package/lib/typescript/shared/providers/screen/gestures/ownership/gesture-ownership-bridge.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.d.ts +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/use-pan-behavior.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.d.ts +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/use-pinch-behavior.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/shared/policy.d.ts +2 -1
- package/lib/typescript/shared/providers/screen/gestures/shared/policy.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/types.d.ts +2 -0
- package/lib/typescript/shared/providers/screen/gestures/types.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/constants.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/helpers/transition-visual-state.d.ts +7 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/transition-visual-state.d.ts.map +1 -1
- 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 +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/slot.provider.d.ts +5 -5
- package/lib/typescript/shared/providers/screen/styles/slot.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/stack/blank-stack-state/blank-stack-controller.d.ts.map +1 -1
- package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/resolve-presented-index.d.ts +3 -0
- package/lib/typescript/shared/providers/stack/blank-stack-state/helpers/resolve-presented-index.d.ts.map +1 -0
- package/lib/typescript/shared/providers/stack/blank-stack.provider.d.ts.map +1 -1
- package/lib/typescript/shared/stores/system.store.d.ts +1 -2
- package/lib/typescript/shared/stores/system.store.d.ts.map +1 -1
- package/lib/typescript/shared/types/animation.types.d.ts +8 -0
- package/lib/typescript/shared/types/animation.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/index.d.ts +1 -1
- package/lib/typescript/shared/types/index.d.ts.map +1 -1
- package/lib/typescript/shared/types/overlay.types.d.ts +26 -11
- package/lib/typescript/shared/types/overlay.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/screen.types.d.ts +2 -2
- package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
- package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts +2 -3
- package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts.map +1 -1
- package/lib/typescript/shared/utils/create-provider.d.ts +21 -6
- package/lib/typescript/shared/utils/create-provider.d.ts.map +1 -1
- package/lib/typescript/shared/utils/navigation/close-action-replay.d.ts +4 -0
- package/lib/typescript/shared/utils/navigation/close-action-replay.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/blank-stack/components/stack-view.tsx +1 -4
- package/src/blank-stack/types.ts +8 -2
- package/src/component-stack/components/stack-view.tsx +1 -4
- package/src/component-stack/types.ts +8 -2
- package/src/native-stack/types.ts +8 -2
- package/src/native-stack/views/NativeStackView.native.tsx +6 -10
- package/src/shared/adapters/with-screen-transitions/stack-layout.tsx +1 -1
- package/src/shared/components/boundary/components/boundary-lifecycle.tsx +53 -0
- package/src/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.ts +0 -14
- package/src/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.ts +13 -2
- package/src/shared/components/boundary/hooks/use-boundary-measurement.ts +7 -2
- package/src/shared/components/boundary/hooks/use-measurer.ts +11 -1
- package/src/shared/components/boundary/portal/components/boundary-content-portal/hooks/use-boundary-content-portal-attachment.ts +9 -4
- package/src/shared/components/boundary/portal/components/boundary-portal/components/host.tsx +13 -11
- package/src/shared/components/boundary/portal/components/boundary-portal/components/portal-boundary-host.tsx +44 -55
- package/src/shared/components/boundary/portal/components/boundary-portal/helpers/local-measurement.ts +10 -0
- package/src/shared/components/boundary/portal/components/boundary-portal/helpers/offset-style.ts +11 -55
- package/src/shared/components/boundary/portal/components/boundary-portal/hooks/use-active-portal-boundary-host.ts +20 -24
- package/src/shared/components/boundary/portal/components/boundary-portal/hooks/use-boundary-portal-attachment.ts +11 -0
- package/src/shared/components/boundary/portal/components/boundary-portal/hooks/use-host-measurement.ts +20 -67
- package/src/shared/components/boundary/portal/components/boundary-portal/index.tsx +1 -0
- package/src/shared/components/boundary/portal/components/boundary-portal/stores/portal-boundary-host.store.ts +3 -2
- package/src/shared/components/boundary/providers/boundary-root.provider.tsx +29 -20
- package/src/shared/components/boundary/types.ts +9 -0
- package/src/shared/components/boundary/utils/refresh-signals.ts +39 -6
- package/src/shared/components/overlay/helpers/create-overlay-interpolator-frame.ts +29 -0
- package/src/shared/components/overlay/helpers/get-active-overlay.ts +62 -20
- package/src/shared/components/overlay/helpers/retain-ready-overlay-resources.ts +38 -0
- package/src/shared/components/overlay/helpers/run-overlay-slot-interpolator.ts +48 -0
- package/src/shared/components/overlay/hooks/use-overlay-slot.ts +103 -0
- package/src/shared/components/overlay/variations/float-overlay.tsx +22 -64
- package/src/shared/components/overlay/variations/overlay-host.tsx +135 -28
- package/src/shared/components/screen-container/layers/backdrop.tsx +11 -7
- package/src/shared/components/screen-lifecycle/hooks/helpers/close-interception-rules.ts +64 -0
- package/src/shared/components/screen-lifecycle/hooks/use-close-completion.ts +28 -0
- package/src/shared/components/screen-lifecycle/hooks/use-close-transition-intent.ts +72 -109
- package/src/shared/components/screen-lifecycle/hooks/use-transition-start-controller.ts +0 -12
- package/src/shared/components/screen-lifecycle/index.tsx +8 -4
- package/src/shared/hooks/navigation/use-navigation-helpers.ts +39 -7
- package/src/shared/index.ts +1 -0
- package/src/shared/providers/helpers/measured-bounds-writes.ts +1 -1
- package/src/shared/providers/screen/animation/animation.provider.tsx +24 -11
- package/src/shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.ts +15 -9
- package/src/shared/providers/screen/animation/use-screen-animation.tsx +12 -2
- package/src/shared/providers/screen/gestures/gestures.provider.tsx +18 -7
- package/src/shared/providers/screen/gestures/hooks/use-screen-gesture-config.ts +13 -5
- package/src/shared/providers/screen/gestures/ownership/{use-walk-up-and-register-shadowing-claims.ts → gesture-ownership-bridge.tsx} +44 -54
- package/src/shared/providers/screen/gestures/pan/behavior/pan-lifecycle.ts +4 -6
- package/src/shared/providers/screen/gestures/pan/behavior/use-pan-behavior.ts +1 -3
- package/src/shared/providers/screen/gestures/pinch/behavior/pinch-lifecycle.ts +4 -6
- package/src/shared/providers/screen/gestures/pinch/behavior/use-pinch-behavior.ts +2 -8
- package/src/shared/providers/screen/gestures/shared/policy.ts +17 -6
- package/src/shared/providers/screen/gestures/types.ts +2 -0
- package/src/shared/providers/screen/styles/constants.ts +1 -0
- package/src/shared/providers/screen/styles/helpers/transition-visual-state.ts +26 -0
- package/src/shared/providers/screen/styles/hooks/slot-resolvers.tsx +17 -5
- package/src/shared/providers/screen/styles/hooks/use-interpolated-style-maps.tsx +51 -12
- package/src/shared/providers/screen/styles/slot.provider.tsx +46 -70
- package/src/shared/providers/stack/blank-stack-state/blank-stack-controller.ts +5 -1
- package/src/shared/providers/stack/blank-stack-state/helpers/resolve-presented-index.ts +22 -0
- package/src/shared/providers/stack/blank-stack.provider.tsx +6 -1
- package/src/shared/stores/bounds/internals/links.ts +1 -1
- package/src/shared/stores/system.store.ts +1 -2
- package/src/shared/types/animation.types.ts +8 -0
- package/src/shared/types/index.ts +1 -1
- package/src/shared/types/overlay.types.ts +41 -14
- package/src/shared/types/screen.types.ts +2 -2
- package/src/shared/utils/animation/animate-to-progress.ts +1 -22
- package/src/shared/utils/create-provider.tsx +221 -19
- package/src/shared/utils/navigation/close-action-replay.ts +25 -0
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.js +0 -30
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.js.map +0 -1
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/stores/host-bounds.store.js +0 -47
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-portal/stores/host-bounds.store.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/styles/components/floating-overlay-layer.js +0 -28
- package/lib/commonjs/shared/providers/screen/styles/components/floating-overlay-layer.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/styles/stores/slot-references.store.js +0 -53
- package/lib/commonjs/shared/providers/screen/styles/stores/slot-references.store.js.map +0 -1
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.js +0 -25
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.js.map +0 -1
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/stores/host-bounds.store.js +0 -40
- package/lib/module/shared/components/boundary/portal/components/boundary-portal/stores/host-bounds.store.js.map +0 -1
- package/lib/module/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +0 -1
- package/lib/module/shared/providers/screen/styles/components/floating-overlay-layer.js +0 -24
- package/lib/module/shared/providers/screen/styles/components/floating-overlay-layer.js.map +0 -1
- package/lib/module/shared/providers/screen/styles/stores/slot-references.store.js +0 -47
- package/lib/module/shared/providers/screen/styles/stores/slot-references.store.js.map +0 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.d.ts +0 -9
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.d.ts.map +0 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/stores/host-bounds.store.d.ts +0 -9
- package/lib/typescript/shared/components/boundary/portal/components/boundary-portal/stores/host-bounds.store.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.d.ts +0 -14
- package/lib/typescript/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/styles/components/floating-overlay-layer.d.ts +0 -7
- package/lib/typescript/shared/providers/screen/styles/components/floating-overlay-layer.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/styles/stores/slot-references.store.d.ts +0 -6
- package/lib/typescript/shared/providers/screen/styles/stores/slot-references.store.d.ts.map +0 -1
- package/src/shared/components/boundary/portal/components/boundary-portal/helpers/active-pair.ts +0 -36
- package/src/shared/components/boundary/portal/components/boundary-portal/stores/host-bounds.store.ts +0 -45
- package/src/shared/providers/screen/styles/components/floating-overlay-layer.tsx +0 -29
- package/src/shared/providers/screen/styles/stores/slot-references.store.ts +0 -72
|
@@ -1,32 +1,54 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { StackActions } from "@react-navigation/native";
|
|
3
|
+
import { StackActions, usePreventRemoveContext } from "@react-navigation/native";
|
|
4
4
|
import { useCallback } from "react";
|
|
5
5
|
import { useDescriptorsStore } from "../../providers/screen/descriptors";
|
|
6
|
+
import { AnimationStore } from "../../stores/animation.store";
|
|
7
|
+
import { LifecycleTransitionRequestKind, SystemStore } from "../../stores/system.store";
|
|
8
|
+
import { dispatchCloseAction } from "../../utils/navigation/close-action-replay";
|
|
6
9
|
import { useStack } from "./use-stack";
|
|
7
10
|
export function useNavigationHelpers() {
|
|
8
11
|
const route = useDescriptorsStore(store => store.current.route);
|
|
9
12
|
const navigation = useDescriptorsStore(store => store.current.navigation);
|
|
10
13
|
const requestStackDismiss = useStack(stack => stack.requestDismiss);
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}, [route, requestStackDismiss]);
|
|
14
|
+
const {
|
|
15
|
+
preventedRoutes
|
|
16
|
+
} = usePreventRemoveContext();
|
|
17
|
+
const isRemovePrevented = preventedRoutes[route.key]?.preventRemove === true;
|
|
16
18
|
const dismissScreen = useCallback(() => {
|
|
17
19
|
const state = navigation.getState();
|
|
18
20
|
const routeIndex = state.routes.findIndex(stateRoute => stateRoute.key === route.key);
|
|
19
21
|
const routeStillPresent = routeIndex !== -1;
|
|
20
22
|
if (!routeStillPresent || routeIndex === 0) return false;
|
|
21
|
-
|
|
23
|
+
const action = {
|
|
22
24
|
...StackActions.pop(),
|
|
23
25
|
source: route.key,
|
|
24
26
|
target: state.key
|
|
27
|
+
};
|
|
28
|
+
dispatchCloseAction(action, closeAction => {
|
|
29
|
+
navigation.dispatch(closeAction);
|
|
25
30
|
});
|
|
26
31
|
return true;
|
|
27
32
|
}, [navigation, route.key]);
|
|
33
|
+
const requestDismiss = useCallback(() => {
|
|
34
|
+
if (isRemovePrevented) return false;
|
|
35
|
+
if (requestStackDismiss) {
|
|
36
|
+
if (!requestStackDismiss({
|
|
37
|
+
route
|
|
38
|
+
})) return false;
|
|
39
|
+
} else {
|
|
40
|
+
const state = navigation.getState();
|
|
41
|
+
const routeIndex = state.routes.findIndex(stateRoute => stateRoute.key === route.key);
|
|
42
|
+
if (routeIndex <= 0) return false;
|
|
43
|
+
}
|
|
44
|
+
if (!AnimationStore.getValue(route.key, "closing").get()) {
|
|
45
|
+
SystemStore.getBag(route.key).actions.requestLifecycleTransition(LifecycleTransitionRequestKind.Close, 0);
|
|
46
|
+
}
|
|
47
|
+
return true;
|
|
48
|
+
}, [isRemovePrevented, navigation, route, requestStackDismiss]);
|
|
28
49
|
return {
|
|
29
50
|
dismissScreen,
|
|
51
|
+
isRemovePrevented,
|
|
30
52
|
requestDismiss
|
|
31
53
|
};
|
|
32
54
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["StackActions","useCallback","useDescriptorsStore","useStack","useNavigationHelpers","route","store","current","navigation","requestStackDismiss","stack","requestDismiss","dismissScreen","state","getState","routeIndex","routes","findIndex","stateRoute","
|
|
1
|
+
{"version":3,"names":["StackActions","usePreventRemoveContext","useCallback","useDescriptorsStore","AnimationStore","LifecycleTransitionRequestKind","SystemStore","dispatchCloseAction","useStack","useNavigationHelpers","route","store","current","navigation","requestStackDismiss","stack","requestDismiss","preventedRoutes","isRemovePrevented","key","preventRemove","dismissScreen","state","getState","routeIndex","routes","findIndex","stateRoute","routeStillPresent","action","pop","source","target","closeAction","dispatch","getValue","get","getBag","actions","requestLifecycleTransition","Close"],"sourceRoot":"../../../../../src","sources":["shared/hooks/navigation/use-navigation-helpers.ts"],"mappings":";;AAAA,SACCA,YAAY,EACZC,uBAAuB,QACjB,0BAA0B;AACjC,SAASC,WAAW,QAAQ,OAAO;AACnC,SAASC,mBAAmB,QAAQ,oCAAoC;AACxE,SAASC,cAAc,QAAQ,8BAA8B;AAC7D,SACCC,8BAA8B,EAC9BC,WAAW,QACL,2BAA2B;AAClC,SAASC,mBAAmB,QAAQ,4CAA4C;AAChF,SAASC,QAAQ,QAAQ,aAAa;AAEtC,OAAO,SAASC,oBAAoBA,CAAA,EAAG;EACtC,MAAMC,KAAK,GAAGP,mBAAmB,CAAEQ,KAAK,IAAKA,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC;EACjE,MAAMG,UAAU,GAAGV,mBAAmB,CAAEQ,KAAK,IAAKA,KAAK,CAACC,OAAO,CAACC,UAAU,CAAC;EAC3E,MAAMC,mBAAmB,GAAGN,QAAQ,CAAEO,KAAK,IAAKA,KAAK,CAACC,cAAc,CAAC;EACrE,MAAM;IAAEC;EAAgB,CAAC,GAAGhB,uBAAuB,CAAC,CAAC;EACrD,MAAMiB,iBAAiB,GAAGD,eAAe,CAACP,KAAK,CAACS,GAAG,CAAC,EAAEC,aAAa,KAAK,IAAI;EAE5E,MAAMC,aAAa,GAAGnB,WAAW,CAAC,MAAe;IAChD,MAAMoB,KAAK,GAAGT,UAAU,CAACU,QAAQ,CAAC,CAAC;IACnC,MAAMC,UAAU,GAAGF,KAAK,CAACG,MAAM,CAACC,SAAS,CACvCC,UAAU,IAAKA,UAAU,CAACR,GAAG,KAAKT,KAAK,CAACS,GAC1C,CAAC;IACD,MAAMS,iBAAiB,GAAGJ,UAAU,KAAK,CAAC,CAAC;IAC3C,IAAI,CAACI,iBAAiB,IAAIJ,UAAU,KAAK,CAAC,EAAE,OAAO,KAAK;IAExD,MAAMK,MAAM,GAAG;MACd,GAAG7B,YAAY,CAAC8B,GAAG,CAAC,CAAC;MACrBC,MAAM,EAAErB,KAAK,CAACS,GAAG;MACjBa,MAAM,EAAEV,KAAK,CAACH;IACf,CAAC;IACDZ,mBAAmB,CAACsB,MAAM,EAAGI,WAAW,IAAK;MAC5CpB,UAAU,CAACqB,QAAQ,CAACD,WAAW,CAAC;IACjC,CAAC,CAAC;IACF,OAAO,IAAI;EACZ,CAAC,EAAE,CAACpB,UAAU,EAAEH,KAAK,CAACS,GAAG,CAAC,CAAC;EAE3B,MAAMH,cAAc,GAAGd,WAAW,CAAC,MAAe;IACjD,IAAIgB,iBAAiB,EAAE,OAAO,KAAK;IAEnC,IAAIJ,mBAAmB,EAAE;MACxB,IAAI,CAACA,mBAAmB,CAAC;QAAEJ;MAAM,CAAC,CAAC,EAAE,OAAO,KAAK;IAClD,CAAC,MAAM;MACN,MAAMY,KAAK,GAAGT,UAAU,CAACU,QAAQ,CAAC,CAAC;MACnC,MAAMC,UAAU,GAAGF,KAAK,CAACG,MAAM,CAACC,SAAS,CACvCC,UAAU,IAAKA,UAAU,CAACR,GAAG,KAAKT,KAAK,CAACS,GAC1C,CAAC;MACD,IAAIK,UAAU,IAAI,CAAC,EAAE,OAAO,KAAK;IAClC;IAEA,IAAI,CAACpB,cAAc,CAAC+B,QAAQ,CAACzB,KAAK,CAACS,GAAG,EAAE,SAAS,CAAC,CAACiB,GAAG,CAAC,CAAC,EAAE;MACzD9B,WAAW,CAAC+B,MAAM,CAAC3B,KAAK,CAACS,GAAG,CAAC,CAACmB,OAAO,CAACC,0BAA0B,CAC/DlC,8BAA8B,CAACmC,KAAK,EACpC,CACD,CAAC;IACF;IACA,OAAO,IAAI;EACZ,CAAC,EAAE,CAACtB,iBAAiB,EAAEL,UAAU,EAAEH,KAAK,EAAEI,mBAAmB,CAAC,CAAC;EAE/D,OAAO;IAAEO,aAAa;IAAEH,iBAAiB;IAAEF;EAAe,CAAC;AAC5D","ignoreList":[]}
|
|
@@ -30,8 +30,7 @@ export const applyMeasuredBoundsWrites = params => {
|
|
|
30
30
|
}
|
|
31
31
|
if (linkWrite?.type === "destination") {
|
|
32
32
|
setDestination(linkWrite.pairKey, linkId, currentScreenKey, measured, preparedStyles, group, {
|
|
33
|
-
handoff
|
|
34
|
-
escapeClipping
|
|
33
|
+
handoff
|
|
35
34
|
});
|
|
36
35
|
}
|
|
37
36
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["setEntry","setDestination","setSource","applyMeasuredBoundsWrites","params","entryTag","linkId","group","currentScreenKey","measured","preparedStyles","linkWrite","handoff","escapeClipping","bounds","type","pairKey"],"sourceRoot":"../../../../../src","sources":["shared/providers/helpers/measured-bounds-writes.ts"],"mappings":";;AACA,SAASA,QAAQ,QAAQ,uCAAuC;AAChE,SAASC,cAAc,EAAEC,SAAS,QAAQ,qCAAqC;AAyB/E,OAAO,MAAMC,yBAAyB,GACrCC,MAAuC,IACnC;EACJ,SAAS;;EACT,MAAM;IACLC,QAAQ;IACRC,MAAM;IACNC,KAAK;IACLC,gBAAgB;IAChBC,QAAQ;IACRC,cAAc;IACdC,SAAS;IACTC,OAAO;IACPC;EACD,CAAC,GAAGT,MAAM;;EAEV;EACA;EACAJ,QAAQ,CAACK,QAAQ,EAAEG,gBAAgB,EAAE;IACpCM,MAAM,EAAEL;EACT,CAAC,CAAC;EAEF,IAAIE,SAAS,EAAEI,IAAI,KAAK,QAAQ,EAAE;IACjCb,SAAS,CACRS,SAAS,CAACK,OAAO,EACjBV,MAAM,EACNE,gBAAgB,EAChBC,QAAQ,EACRC,cAAc,EACdH,KAAK,EACL;MAAEK,OAAO;MAAEC;IAAe,CAC3B,CAAC;EACF;EAEA,IAAIF,SAAS,EAAEI,IAAI,KAAK,aAAa,EAAE;IACtCd,cAAc,CACbU,SAAS,CAACK,OAAO,EACjBV,MAAM,EACNE,gBAAgB,EAChBC,QAAQ,EACRC,cAAc,EACdH,KAAK,EACL;MAAEK
|
|
1
|
+
{"version":3,"names":["setEntry","setDestination","setSource","applyMeasuredBoundsWrites","params","entryTag","linkId","group","currentScreenKey","measured","preparedStyles","linkWrite","handoff","escapeClipping","bounds","type","pairKey"],"sourceRoot":"../../../../../src","sources":["shared/providers/helpers/measured-bounds-writes.ts"],"mappings":";;AACA,SAASA,QAAQ,QAAQ,uCAAuC;AAChE,SAASC,cAAc,EAAEC,SAAS,QAAQ,qCAAqC;AAyB/E,OAAO,MAAMC,yBAAyB,GACrCC,MAAuC,IACnC;EACJ,SAAS;;EACT,MAAM;IACLC,QAAQ;IACRC,MAAM;IACNC,KAAK;IACLC,gBAAgB;IAChBC,QAAQ;IACRC,cAAc;IACdC,SAAS;IACTC,OAAO;IACPC;EACD,CAAC,GAAGT,MAAM;;EAEV;EACA;EACAJ,QAAQ,CAACK,QAAQ,EAAEG,gBAAgB,EAAE;IACpCM,MAAM,EAAEL;EACT,CAAC,CAAC;EAEF,IAAIE,SAAS,EAAEI,IAAI,KAAK,QAAQ,EAAE;IACjCb,SAAS,CACRS,SAAS,CAACK,OAAO,EACjBV,MAAM,EACNE,gBAAgB,EAChBC,QAAQ,EACRC,cAAc,EACdH,KAAK,EACL;MAAEK,OAAO;MAAEC;IAAe,CAC3B,CAAC;EACF;EAEA,IAAIF,SAAS,EAAEI,IAAI,KAAK,aAAa,EAAE;IACtCd,cAAc,CACbU,SAAS,CAACK,OAAO,EACjBV,MAAM,EACNE,gBAAgB,EAChBC,QAAQ,EACRC,cAAc,EACdH,KAAK,EACL;MAAEK;IAAQ,CACX,CAAC;EACF;AACD,CAAC","ignoreList":[]}
|
|
@@ -4,21 +4,23 @@ import { useCallback, useLayoutEffect, useMemo } from "react";
|
|
|
4
4
|
import { useSharedValue } from "react-native-reanimated";
|
|
5
5
|
import { createBoundsAccessor } from "../../../utils/bounds";
|
|
6
6
|
import createProvider from "../../../utils/create-provider";
|
|
7
|
+
import { useDescriptorsStore } from "../descriptors";
|
|
7
8
|
import { useScreenAnimationPipeline } from "./helpers/pipeline";
|
|
8
9
|
export const {
|
|
9
10
|
ScreenAnimationProvider,
|
|
10
11
|
useScreenAnimationStore
|
|
11
12
|
} = createProvider("ScreenAnimation", {
|
|
12
|
-
guarded: true
|
|
13
|
+
guarded: true,
|
|
14
|
+
global: true
|
|
13
15
|
})((_props, {
|
|
14
16
|
useParentStore
|
|
15
17
|
}) => {
|
|
16
|
-
const
|
|
17
|
-
const parentScreenInterpolatorProps = parentContext?.screenInterpolatorProps;
|
|
18
|
-
const parentScreenInterpolatorPropsRevision = parentContext?.screenInterpolatorPropsRevision;
|
|
19
|
-
const parentAncestorScreenAnimationSources = parentContext?.ancestorScreenAnimationSources;
|
|
20
|
-
const parentRegisterDescendantScreenAnimationSource = parentContext?.registerDescendantScreenAnimationSource;
|
|
21
|
-
const parentAncestorDescendantScreenAnimationRegistrars = parentContext?.ancestorDescendantScreenAnimationRegistrars;
|
|
18
|
+
const currentScreenKey = useDescriptorsStore(store => store.derivations.currentScreenKey);
|
|
19
|
+
const parentScreenInterpolatorProps = useParentStore(parentContext => parentContext?.screenInterpolatorProps);
|
|
20
|
+
const parentScreenInterpolatorPropsRevision = useParentStore(parentContext => parentContext?.screenInterpolatorPropsRevision);
|
|
21
|
+
const parentAncestorScreenAnimationSources = useParentStore(parentContext => parentContext?.ancestorScreenAnimationSources);
|
|
22
|
+
const parentRegisterDescendantScreenAnimationSource = useParentStore(parentContext => parentContext?.registerDescendantScreenAnimationSource);
|
|
23
|
+
const parentAncestorDescendantScreenAnimationRegistrars = useParentStore(parentContext => parentContext?.ancestorDescendantScreenAnimationRegistrars);
|
|
22
24
|
const {
|
|
23
25
|
screenInterpolatorProps,
|
|
24
26
|
screenInterpolatorPropsRevision,
|
|
@@ -97,6 +99,7 @@ export const {
|
|
|
97
99
|
};
|
|
98
100
|
}, [ancestorDescendantScreenAnimationRegistrars, selfScreenAnimationTransitionSource]);
|
|
99
101
|
return {
|
|
102
|
+
key: currentScreenKey,
|
|
100
103
|
value: {
|
|
101
104
|
screenInterpolatorProps,
|
|
102
105
|
screenInterpolatorPropsRevision,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","useLayoutEffect","useMemo","useSharedValue","createBoundsAccessor","createProvider","useScreenAnimationPipeline","ScreenAnimationProvider","useScreenAnimationStore","guarded","_props","useParentStore","
|
|
1
|
+
{"version":3,"names":["useCallback","useLayoutEffect","useMemo","useSharedValue","createBoundsAccessor","createProvider","useDescriptorsStore","useScreenAnimationPipeline","ScreenAnimationProvider","useScreenAnimationStore","guarded","global","_props","useParentStore","currentScreenKey","store","derivations","parentScreenInterpolatorProps","parentContext","screenInterpolatorProps","parentScreenInterpolatorPropsRevision","screenInterpolatorPropsRevision","parentAncestorScreenAnimationSources","ancestorScreenAnimationSources","parentRegisterDescendantScreenAnimationSource","registerDescendantScreenAnimationSource","parentAncestorDescendantScreenAnimationRegistrars","ancestorDescendantScreenAnimationRegistrars","selectedInterpolatorOptions","nextInterpolator","currentInterpolator","selfScreenAnimationSource","selfScreenAnimationTransitionSource","boundsAccessor","get","descendantScreenAnimationSources","source","depth","modify","currentSources","existingIndex","findIndex","currentSource","nextSources","map","index","sort","a","b","filter","register","registrar","cleanups","cleanup","key","value"],"sourceRoot":"../../../../../../src","sources":["shared/providers/screen/animation/animation.provider.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
import { useMemo } from "react";
|
|
4
4
|
import { createBoundsAccessor } from "../../../../../utils/bounds";
|
|
5
|
-
import { useScreenAnimationStore } from "../../animation.provider";
|
|
6
5
|
const resolveTargetIndex = (target, currentIndex, sourceCount) => {
|
|
7
6
|
"worklet";
|
|
8
7
|
|
|
@@ -75,13 +74,12 @@ const buildSourceBoundsAccessor = source => {
|
|
|
75
74
|
return source.screenInterpolatorProps.get();
|
|
76
75
|
});
|
|
77
76
|
};
|
|
78
|
-
export const useBuildTransitionAccessor = (
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
} = useScreenAnimationStore();
|
|
77
|
+
export const useBuildTransitionAccessor = ({
|
|
78
|
+
screenInterpolatorProps,
|
|
79
|
+
screenInterpolatorPropsRevision,
|
|
80
|
+
ancestorScreenAnimationSources,
|
|
81
|
+
descendantScreenAnimationSources
|
|
82
|
+
}) => {
|
|
85
83
|
return useMemo(() => {
|
|
86
84
|
const selfSource = {
|
|
87
85
|
screenInterpolatorProps,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useMemo","createBoundsAccessor","
|
|
1
|
+
{"version":3,"names":["useMemo","createBoundsAccessor","resolveTargetIndex","target","currentIndex","sourceCount","undefined","depth","Number","isInteger","resolvedIndex","createTransitionAccessor","sources","originIndex","descendantSources","getSources","descendants","get","length","currentSources","slice","index","push","source","buildScope","sourceIndex","screenInterpolatorPropsRevision","frame","screenInterpolatorProps","bounds","boundsAccessor","transition","targetIndex","buildSourceBoundsAccessor","useBuildTransitionAccessor","ancestorScreenAnimationSources","descendantScreenAnimationSources","selfSource","transitionSources","map","selfTransitionSource","reverse"],"sourceRoot":"../../../../../../../../src","sources":["shared/providers/screen/animation/helpers/accessors/use-build-transition-accessor.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
import { useRoute } from "@react-navigation/native";
|
|
3
4
|
import { useDerivedValue } from "react-native-reanimated";
|
|
4
5
|
import { useScreenAnimationStore } from "./animation.provider";
|
|
5
6
|
import { useBuildTransitionAccessor } from "./helpers/accessors/use-build-transition-accessor";
|
|
@@ -10,12 +11,17 @@ import { readScreenAnimationRevisions } from "./helpers/read-screen-animation-re
|
|
|
10
11
|
/** @deprecated Use `{ depth }`. */
|
|
11
12
|
|
|
12
13
|
export function useScreenAnimation(target) {
|
|
14
|
+
const route = useRoute();
|
|
15
|
+
const screenAnimationStore = useScreenAnimationStore(route.key);
|
|
16
|
+
if (!screenAnimationStore) {
|
|
17
|
+
throw new Error(`ScreenAnimation store for route "${route.key}" was not found`);
|
|
18
|
+
}
|
|
13
19
|
const {
|
|
14
20
|
screenInterpolatorPropsRevision,
|
|
15
21
|
ancestorScreenAnimationSources,
|
|
16
22
|
descendantScreenAnimationSources
|
|
17
|
-
} =
|
|
18
|
-
const transition = useBuildTransitionAccessor();
|
|
23
|
+
} = screenAnimationStore;
|
|
24
|
+
const transition = useBuildTransitionAccessor(screenAnimationStore);
|
|
19
25
|
const transitionTarget = normalizeScreenAnimationTarget(target, ancestorScreenAnimationSources.length);
|
|
20
26
|
const animation = useDerivedValue(() => {
|
|
21
27
|
"worklet";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useDerivedValue","useScreenAnimationStore","useBuildTransitionAccessor","readScreenAnimationRevisions","useScreenAnimation","target","screenInterpolatorPropsRevision","ancestorScreenAnimationSources","descendantScreenAnimationSources","transition","transitionTarget","normalizeScreenAnimationTarget","length","animation","isTransitionTarget","ancestorCount","undefined","depth","Number","isInteger","ancestor","NaN"],"sourceRoot":"../../../../../../src","sources":["shared/providers/screen/animation/use-screen-animation.tsx"],"mappings":";;AAAA,
|
|
1
|
+
{"version":3,"names":["useRoute","useDerivedValue","useScreenAnimationStore","useBuildTransitionAccessor","readScreenAnimationRevisions","useScreenAnimation","target","route","screenAnimationStore","key","Error","screenInterpolatorPropsRevision","ancestorScreenAnimationSources","descendantScreenAnimationSources","transition","transitionTarget","normalizeScreenAnimationTarget","length","animation","isTransitionTarget","ancestorCount","undefined","depth","Number","isInteger","ancestor","NaN"],"sourceRoot":"../../../../../../src","sources":["shared/providers/screen/animation/use-screen-animation.tsx"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,0BAA0B;AACnD,SAA4BC,eAAe,QAAQ,yBAAyB;AAK5E,SAASC,uBAAuB,QAAQ,sBAAsB;AAC9D,SAASC,0BAA0B,QAAQ,mDAAmD;AAC9F,SAASC,4BAA4B,QAAQ,2CAA2C;;AAYxF;;AAOA;;AAIA,OAAO,SAASC,kBAAkBA,CACjCC,MAA8B,EAGkB;EAChD,MAAMC,KAAK,GAAGP,QAAQ,CAAC,CAAC;EACxB,MAAMQ,oBAAoB,GAAGN,uBAAuB,CAACK,KAAK,CAACE,GAAG,CAAC;EAE/D,IAAI,CAACD,oBAAoB,EAAE;IAC1B,MAAM,IAAIE,KAAK,CACd,oCAAoCH,KAAK,CAACE,GAAG,iBAC9C,CAAC;EACF;EAEA,MAAM;IACLE,+BAA+B;IAC/BC,8BAA8B;IAC9BC;EACD,CAAC,GAAGL,oBAAoB;EACxB,MAAMM,UAAU,GAAGX,0BAA0B,CAACK,oBAAoB,CAAC;EACnE,MAAMO,gBAAgB,GAAGC,8BAA8B,CACtDV,MAAM,EACNM,8BAA8B,CAACK,MAChC,CAAC;EAED,MAAMC,SAAS,GAAGjB,eAAe,CAAkC,MAAM;IACxE,SAAS;;IACTG,4BAA4B,CAC3BO,+BAA+B,EAC/BC,8BAA8B,EAC9BC,gCACD,CAAC;IACD,OAAOC,UAAU,CAACC,gBAAgB,CAAC;EACpC,CAAC,CAAC;EAEF,OAAOG,SAAS;AACjB;AAEA,MAAMC,kBAAkB,GACvBb,MAA6B,IACS;EACtC,OAAO,OAAOA,MAAM,KAAK,QAAQ,IAAIA,MAAM,KAAK,IAAI,IAAI,OAAO,IAAIA,MAAM;AAC1E,CAAC;AAED,MAAMU,8BAA8B,GAAGA,CACtCV,MAAyC,EACzCc,aAAqB,KACmB;EACxC,IAAId,MAAM,KAAKe,SAAS,IAAIF,kBAAkB,CAACb,MAAM,CAAC,EAAE;IACvD,OAAOA,MAAM;EACd;EAEA,IAAIA,MAAM,KAAK,MAAM,EAAE;IACtB,OAAO;MAAEgB,KAAK,EAAE;IAAE,CAAC;EACpB;EAEA,IAAIhB,MAAM,KAAK,QAAQ,EAAE;IACxB,OAAO;MAAEgB,KAAK,EAAE,CAAC;IAAE,CAAC;EACrB;EAEA,IAAIhB,MAAM,KAAK,MAAM,EAAE;IACtB,OAAO;MAAEgB,KAAK,EAAEF,aAAa,GAAG,CAAC,GAAG,CAACA,aAAa,GAAG,CAAC;IAAE,CAAC;EAC1D;EAEA,IAAI,CAACG,MAAM,CAACC,SAAS,CAAClB,MAAM,CAACmB,QAAQ,CAAC,IAAInB,MAAM,CAACmB,QAAQ,GAAG,CAAC,EAAE;IAC9D,OAAO;MAAEH,KAAK,EAAEC,MAAM,CAACG;IAAI,CAAC;EAC7B;EAEA,OAAO;IAAEJ,KAAK,EAAE,CAAChB,MAAM,CAACmB;EAAS,CAAC;AACnC,CAAC","ignoreList":[]}
|
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { useMemo } from "react";
|
|
3
|
+
import { Fragment, useMemo } from "react";
|
|
4
4
|
import { Gesture } from "react-native-gesture-handler";
|
|
5
5
|
import { useSharedValue } from "react-native-reanimated";
|
|
6
6
|
import { ScrollStore } from "../../../stores/scroll.store";
|
|
7
7
|
import createProvider from "../../../utils/create-provider";
|
|
8
8
|
import { useDescriptorsStore } from "../descriptors";
|
|
9
9
|
import { useScreenGestureConfig } from "./hooks/use-screen-gesture-config";
|
|
10
|
-
import {
|
|
10
|
+
import { GestureOwnershipBridge } from "./ownership/gesture-ownership-bridge";
|
|
11
11
|
import { useBuildPanGesture } from "./pan/use-build-pan-gesture";
|
|
12
12
|
import { useBuildPinchGesture } from "./pinch/use-build-pinch-gesture";
|
|
13
13
|
import { NO_DIRECTION_CLAIMS } from "./types";
|
|
14
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
15
|
export const {
|
|
15
16
|
ScreenGestureProvider,
|
|
16
17
|
useScreenGestureStore: useGestureStore
|
|
@@ -21,9 +22,10 @@ export const {
|
|
|
21
22
|
}, {
|
|
22
23
|
useParentStore
|
|
23
24
|
}) => {
|
|
24
|
-
const gestureContext = useParentStore();
|
|
25
|
-
const gestureConfig = useScreenGestureConfig();
|
|
26
25
|
const currentScreenKey = useDescriptorsStore(store => store.derivations.currentScreenKey);
|
|
26
|
+
const isTopMostScreen = useDescriptorsStore(store => store.derivations.isTopMostScreen);
|
|
27
|
+
const gestureContext = useParentStore(parentContext => isTopMostScreen ? parentContext : null);
|
|
28
|
+
const gestureConfig = useScreenGestureConfig(gestureContext);
|
|
27
29
|
const scrollState = ScrollStore.getValue(currentScreenKey, "coordination");
|
|
28
30
|
|
|
29
31
|
// Ancestors read this before activating. If a nested screen claims the same
|
|
@@ -54,10 +56,12 @@ export const {
|
|
|
54
56
|
claimedDirections: gestureConfig.participation.claimedDirections,
|
|
55
57
|
childDirectionClaims
|
|
56
58
|
}), [currentScreenKey, detectorGesture, panGesture, pinchGesture, scrollState, gestureContext, gestureConfig.participation.claimedDirections, childDirectionClaims]);
|
|
57
|
-
|
|
59
|
+
const content = useMemo(() => /*#__PURE__*/_jsxs(Fragment, {
|
|
60
|
+
children: [/*#__PURE__*/_jsx(GestureOwnershipBridge, {}), children]
|
|
61
|
+
}), [children]);
|
|
58
62
|
return {
|
|
59
63
|
value,
|
|
60
|
-
children
|
|
64
|
+
children: content
|
|
61
65
|
};
|
|
62
66
|
});
|
|
63
67
|
//# sourceMappingURL=gestures.provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useMemo","Gesture","useSharedValue","ScrollStore","createProvider","useDescriptorsStore","useScreenGestureConfig","
|
|
1
|
+
{"version":3,"names":["Fragment","useMemo","Gesture","useSharedValue","ScrollStore","createProvider","useDescriptorsStore","useScreenGestureConfig","GestureOwnershipBridge","useBuildPanGesture","useBuildPinchGesture","NO_DIRECTION_CLAIMS","jsx","_jsx","jsxs","_jsxs","ScreenGestureProvider","useScreenGestureStore","useGestureStore","guarded","children","useParentStore","currentScreenKey","store","derivations","isTopMostScreen","gestureContext","parentContext","gestureConfig","scrollState","getValue","childDirectionClaims","gestureCompositionOwner","panGesture","pinchGesture","detectorGesture","Simultaneous","value","routeKey","claimedDirections","participation","content"],"sourceRoot":"../../../../../../src","sources":["shared/providers/screen/gestures/gestures.provider.tsx"],"mappings":";;AAAA,SAASA,QAAQ,EAAEC,OAAO,QAAQ,OAAO;AACzC,SAASC,OAAO,QAAQ,8BAA8B;AACtD,SAASC,cAAc,QAAQ,yBAAyB;AACxD,SAASC,WAAW,QAAQ,8BAA8B;AAC1D,OAAOC,cAAc,MAAM,gCAAgC;AAC3D,SAASC,mBAAmB,QAAQ,gBAAgB;AACpD,SAASC,sBAAsB,QAAQ,mCAAmC;AAC1E,SAASC,sBAAsB,QAAQ,sCAAsC;AAC7E,SAASC,kBAAkB,QAAQ,6BAA6B;AAChE,SAASC,oBAAoB,QAAQ,iCAAiC;AACtE,SAICC,mBAAmB,QACb,SAAS;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAMjB,OAAO,MAAM;EAAEC,qBAAqB;EAAEC,qBAAqB,EAAEC;AAAgB,CAAC,GAC7Eb,cAAc,CAAC,eAAe,EAAE;EAAEc,OAAO,EAAE;AAAM,CAAC,CAAC,CAIlD,CACC;EAAEC;AAAS,CAAC,EACZ;EAAEC;AAAe,CAAC,KAC4C;EAC9D,MAAMC,gBAAgB,GAAGhB,mBAAmB,CAC1CiB,KAAK,IAAKA,KAAK,CAACC,WAAW,CAACF,gBAC9B,CAAC;EACD,MAAMG,eAAe,GAAGnB,mBAAmB,CACzCiB,KAAK,IAAKA,KAAK,CAACC,WAAW,CAACC,eAC9B,CAAC;EACD,MAAMC,cAAc,GAAGL,cAAc,CAAEM,aAAa,IACnDF,eAAe,GAAGE,aAAa,GAAG,IACnC,CAAC;EACD,MAAMC,aAAa,GAAGrB,sBAAsB,CAACmB,cAAc,CAAC;EAE5D,MAAMG,WAAW,GAAGzB,WAAW,CAAC0B,QAAQ,CACvCR,gBAAgB,EAChB,cACD,CAAC;;EAED;EACA;EACA,MAAMS,oBAAoB,GACzB5B,cAAc,CAAoBQ,mBAAmB,CAAC;;EAEvD;EACA;EACA,MAAMqB,uBAAuB,GAC5B7B,cAAc,CAA0B,IAAI,CAAC;EAE9C,MAAM8B,UAAU,GAAGxB,kBAAkB,CAAC;IACrCoB,WAAW;IACXD,aAAa;IACbG,oBAAoB;IACpBC;EACD,CAAC,CAAC;EAEF,MAAME,YAAY,GAAGxB,oBAAoB,CAAC;IACzCkB,aAAa;IACbI;EACD,CAAC,CAAC;EAEF,MAAMG,eAAe,GAAGlC,OAAO,CAC9B,MAAMC,OAAO,CAACkC,YAAY,CAACH,UAAU,EAAEC,YAAY,CAAC,EACpD,CAACD,UAAU,EAAEC,YAAY,CAC1B,CAAC;EAED,MAAMG,KAAK,GAAGpC,OAAO,CACpB,OAAO;IACNqC,QAAQ,EAAEhB,gBAAgB;IAC1Ba,eAAe;IACfF,UAAU;IACVC,YAAY;IACZL,WAAW;IACXH,cAAc;IACda,iBAAiB,EAAEX,aAAa,CAACY,aAAa,CAACD,iBAAiB;IAChER;EACD,CAAC,CAAC,EACF,CACCT,gBAAgB,EAChBa,eAAe,EACfF,UAAU,EACVC,YAAY,EACZL,WAAW,EACXH,cAAc,EACdE,aAAa,CAACY,aAAa,CAACD,iBAAiB,EAC7CR,oBAAoB,CAEtB,CAAC;EAED,MAAMU,OAAO,GAAGxC,OAAO,CACtB,mBACCc,KAAA,CAACf,QAAQ;IAAAoB,QAAA,gBACRP,IAAA,CAACL,sBAAsB,IAAE,CAAC,EACzBY,QAAQ;EAAA,CACA,CACV,EACD,CAACA,QAAQ,CACV,CAAC;EAED,OAAO;IACNiB,KAAK;IACLjB,QAAQ,EAAEqB;EACX,CAAC;AACF,CACD,CAAC","ignoreList":[]}
|
|
@@ -1,17 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
import { usePreventRemoveContext } from "@react-navigation/native";
|
|
3
4
|
import { useMemo } from "react";
|
|
4
5
|
import { useDescriptorsStore } from "../../descriptors";
|
|
5
|
-
import { useGestureStore } from "../gestures.provider";
|
|
6
6
|
import { resolveScreenGestureConfig } from "../shared/policy";
|
|
7
|
-
export function useScreenGestureConfig() {
|
|
8
|
-
const gestureContext = useGestureStore();
|
|
7
|
+
export function useScreenGestureConfig(gestureContext) {
|
|
9
8
|
const options = useDescriptorsStore(store => store.options);
|
|
10
9
|
const isFirstKey = useDescriptorsStore(store => store.derivations.isFirstKey);
|
|
10
|
+
const currentScreenKey = useDescriptorsStore(store => store.derivations.currentScreenKey);
|
|
11
|
+
const {
|
|
12
|
+
preventedRoutes
|
|
13
|
+
} = usePreventRemoveContext();
|
|
14
|
+
const isRemovePrevented = preventedRoutes[currentScreenKey]?.preventRemove === true;
|
|
11
15
|
return useMemo(() => resolveScreenGestureConfig({
|
|
12
16
|
options,
|
|
13
17
|
isFirstKey,
|
|
14
|
-
gestureContext
|
|
15
|
-
|
|
18
|
+
gestureContext,
|
|
19
|
+
isRemovePrevented
|
|
20
|
+
}), [isFirstKey, options, gestureContext, isRemovePrevented]);
|
|
16
21
|
}
|
|
17
22
|
//# sourceMappingURL=use-screen-gesture-config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["usePreventRemoveContext","useMemo","useDescriptorsStore","resolveScreenGestureConfig","useScreenGestureConfig","gestureContext","options","store","isFirstKey","derivations","currentScreenKey","preventedRoutes","isRemovePrevented","preventRemove"],"sourceRoot":"../../../../../../../src","sources":["shared/providers/screen/gestures/hooks/use-screen-gesture-config.ts"],"mappings":";;AAAA,SAASA,uBAAuB,QAAQ,0BAA0B;AAClE,SAASC,OAAO,QAAQ,OAAO;AAC/B,SAASC,mBAAmB,QAAQ,mBAAmB;AACvD,SAASC,0BAA0B,QAAQ,kBAAkB;AAG7D,OAAO,SAASC,sBAAsBA,CACrCC,cAAyC,EACnB;EACtB,MAAMC,OAAO,GAAGJ,mBAAmB,CAAEK,KAAK,IAAKA,KAAK,CAACD,OAAO,CAAC;EAC7D,MAAME,UAAU,GAAGN,mBAAmB,CACpCK,KAAK,IAAKA,KAAK,CAACE,WAAW,CAACD,UAC9B,CAAC;EACD,MAAME,gBAAgB,GAAGR,mBAAmB,CAC1CK,KAAK,IAAKA,KAAK,CAACE,WAAW,CAACC,gBAC9B,CAAC;EACD,MAAM;IAAEC;EAAgB,CAAC,GAAGX,uBAAuB,CAAC,CAAC;EACrD,MAAMY,iBAAiB,GACtBD,eAAe,CAACD,gBAAgB,CAAC,EAAEG,aAAa,KAAK,IAAI;EAE1D,OAAOZ,OAAO,CACb,MACCE,0BAA0B,CAAC;IAC1BG,OAAO;IACPE,UAAU;IACVH,cAAc;IACdO;EACD,CAAC,CAAC,EACH,CAACJ,UAAU,EAAEF,OAAO,EAAED,cAAc,EAAEO,iBAAiB,CACxD,CAAC;AACF","ignoreList":[]}
|
|
@@ -9,12 +9,13 @@ import { useGestureStore } from "../gestures.provider";
|
|
|
9
9
|
import { walkGestureAncestors } from "../shared/ancestors";
|
|
10
10
|
import { resolveScreenGestureConfig } from "../shared/policy";
|
|
11
11
|
import { resolveShadowingClaimDirections } from "./shadowing-claims";
|
|
12
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
12
13
|
const NO_SHADOWED_ANCESTORS = [];
|
|
13
14
|
const findShadowedDirections = (claimedDirections, ancestorDirections) => {
|
|
14
15
|
const shadowedDirections = [];
|
|
15
|
-
for (const
|
|
16
|
-
if (claimedDirections[
|
|
17
|
-
shadowedDirections.push(
|
|
16
|
+
for (const direction of DIRECTIONS) {
|
|
17
|
+
if (claimedDirections[direction] && ancestorDirections[direction]) {
|
|
18
|
+
shadowedDirections.push(direction);
|
|
18
19
|
}
|
|
19
20
|
}
|
|
20
21
|
return shadowedDirections;
|
|
@@ -44,8 +45,8 @@ const registerShadowingClaims = (shadowedAncestors, currentScreenKey) => {
|
|
|
44
45
|
const newClaims = {
|
|
45
46
|
...ancestor.childDirectionClaims.get()
|
|
46
47
|
};
|
|
47
|
-
for (const
|
|
48
|
-
newClaims[
|
|
48
|
+
for (const direction of directions) {
|
|
49
|
+
newClaims[direction] = {
|
|
49
50
|
routeKey: currentScreenKey,
|
|
50
51
|
isDismissing
|
|
51
52
|
};
|
|
@@ -63,10 +64,9 @@ const clearShadowingClaims = (shadowedAncestors, currentScreenKey) => {
|
|
|
63
64
|
...currentClaims
|
|
64
65
|
};
|
|
65
66
|
let needsUpdate = false;
|
|
66
|
-
for (const
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
newClaims[dir] = null;
|
|
67
|
+
for (const direction of directions) {
|
|
68
|
+
if (currentClaims[direction]?.routeKey === currentScreenKey) {
|
|
69
|
+
newClaims[direction] = null;
|
|
70
70
|
needsUpdate = true;
|
|
71
71
|
}
|
|
72
72
|
}
|
|
@@ -90,44 +90,23 @@ const getDescriptorClaimedDirections = (descriptor, gestureContext) => {
|
|
|
90
90
|
gestureContext
|
|
91
91
|
}).participation.claimedDirections;
|
|
92
92
|
};
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
*
|
|
102
|
-
* C walks up the tree and writes itself into A.childDirectionClaims.vertical.
|
|
103
|
-
* B is skipped because it does not claim vertical.
|
|
104
|
-
*/
|
|
105
|
-
export function useWalkUpAndRegisterShadowingClaims(claimedDirections) {
|
|
106
|
-
const parentContext = useGestureStore();
|
|
93
|
+
const requireGestureContext = gestureContext => {
|
|
94
|
+
if (!gestureContext) {
|
|
95
|
+
throw new Error("GestureOwnershipBridge must be rendered within a ScreenGestureProvider");
|
|
96
|
+
}
|
|
97
|
+
return gestureContext;
|
|
98
|
+
};
|
|
99
|
+
function ActiveGestureOwnershipBridge() {
|
|
100
|
+
const gestureContext = requireGestureContext(useGestureStore());
|
|
107
101
|
const previous = useDescriptorsStore(store => store.previous);
|
|
108
|
-
const
|
|
109
|
-
const
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
* Overlay claims horizontal
|
|
117
|
-
* └─ A has no local horizontal claim
|
|
118
|
-
* └─ B claims horizontal (closing)
|
|
119
|
-
* └─ C claims horizontal (closing)
|
|
120
|
-
*
|
|
121
|
-
* Closing screens are still mounted, so they can still block parent gestures.
|
|
122
|
-
* But they cannot receive touches anymore.
|
|
123
|
-
*
|
|
124
|
-
* So when B/C are closing and the user is really touching A, B/C should not
|
|
125
|
-
* keep blocking the parent with their own gesture config.
|
|
126
|
-
*
|
|
127
|
-
* A closing screen should act like the visible screen underneath it:
|
|
128
|
-
* - if the screen underneath claims the gesture, keep blocking the parent
|
|
129
|
-
* - if the screen underneath does not claim it, let the parent handle it
|
|
130
|
-
*/
|
|
102
|
+
const isCurrentScreenClosing = useBlankStackStore(store => store?.scenesByKey[gestureContext.routeKey]?.activity === "closing");
|
|
103
|
+
const {
|
|
104
|
+
claimedDirections,
|
|
105
|
+
gestureContext: parentContext,
|
|
106
|
+
routeKey: currentScreenKey
|
|
107
|
+
} = gestureContext;
|
|
108
|
+
// A retained closing screen cannot receive touches, so its ownership must
|
|
109
|
+
// mirror the visible screen underneath instead of blocking an ancestor.
|
|
131
110
|
const effectiveClaimedDirections = useMemo(() => resolveShadowingClaimDirections({
|
|
132
111
|
isCurrentScreenClosing,
|
|
133
112
|
currentClaimedDirections: claimedDirections,
|
|
@@ -135,13 +114,20 @@ export function useWalkUpAndRegisterShadowingClaims(claimedDirections) {
|
|
|
135
114
|
}), [isCurrentScreenClosing, claimedDirections, previous, parentContext]);
|
|
136
115
|
const shadowedAncestors = useMemo(() => findShadowedAncestors(parentContext, effectiveClaimedDirections), [parentContext, effectiveClaimedDirections]);
|
|
137
116
|
useLayoutEffect(() => {
|
|
138
|
-
if (!
|
|
117
|
+
if (!shadowedAncestors.length) {
|
|
139
118
|
return;
|
|
140
119
|
}
|
|
141
120
|
registerShadowingClaims(shadowedAncestors, currentScreenKey);
|
|
142
121
|
return () => {
|
|
143
122
|
clearShadowingClaims(shadowedAncestors, currentScreenKey);
|
|
144
123
|
};
|
|
145
|
-
}, [shadowedAncestors, currentScreenKey
|
|
124
|
+
}, [shadowedAncestors, currentScreenKey]);
|
|
125
|
+
return null;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
/** Keeps gesture ownership subscriptions attached only to participating screens. */
|
|
129
|
+
export function GestureOwnershipBridge() {
|
|
130
|
+
const isTopMostScreen = useDescriptorsStore(store => store.derivations.isTopMostScreen);
|
|
131
|
+
return isTopMostScreen ? /*#__PURE__*/_jsx(ActiveGestureOwnershipBridge, {}) : null;
|
|
146
132
|
}
|
|
147
|
-
//# sourceMappingURL=
|
|
133
|
+
//# sourceMappingURL=gesture-ownership-bridge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useLayoutEffect","useMemo","GestureStore","DIRECTIONS","NO_CLAIMS","useDescriptorsStore","useBlankStackStore","useGestureStore","walkGestureAncestors","resolveScreenGestureConfig","resolveShadowingClaimDirections","jsx","_jsx","NO_SHADOWED_ANCESTORS","findShadowedDirections","claimedDirections","ancestorDirections","shadowedDirections","direction","push","findShadowedAncestors","parentContext","ancestors","ancestor","directions","length","registerShadowingClaims","shadowedAncestors","currentScreenKey","isDismissing","getValue","newClaims","childDirectionClaims","get","routeKey","set","clearShadowingClaims","currentClaims","needsUpdate","getDescriptorIsFirstKey","descriptor","navigationState","navigation","getState","routes","findIndex","route","key","getDescriptorClaimedDirections","gestureContext","options","isFirstKey","participation","requireGestureContext","Error","ActiveGestureOwnershipBridge","previous","store","isCurrentScreenClosing","scenesByKey","activity","effectiveClaimedDirections","currentClaimedDirections","previousClaimedDirections","GestureOwnershipBridge","isTopMostScreen","derivations"],"sourceRoot":"../../../../../../../src","sources":["shared/providers/screen/gestures/ownership/gesture-ownership-bridge.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -68,7 +68,7 @@ export const trackPanGesture = (event, rawEvent, gestures, dimensions) => {
|
|
|
68
68
|
velocity
|
|
69
69
|
};
|
|
70
70
|
};
|
|
71
|
-
export const finalizePanRelease = (release, runtime,
|
|
71
|
+
export const finalizePanRelease = (release, runtime, dimensions, rawEvent, requestDismiss, gestureCompositionOwner) => {
|
|
72
72
|
"worklet";
|
|
73
73
|
|
|
74
74
|
const {
|
|
@@ -111,12 +111,8 @@ export const finalizePanRelease = (release, runtime, dismissScreen, dimensions,
|
|
|
111
111
|
system.targetProgress.set(plan.target);
|
|
112
112
|
return;
|
|
113
113
|
}
|
|
114
|
-
if (plan.shouldDismiss && requestDismiss) {
|
|
115
|
-
runOnJS(requestDismiss)();
|
|
116
|
-
}
|
|
117
114
|
animateToProgress({
|
|
118
115
|
target: plan.target,
|
|
119
|
-
onAnimationFinish: plan.shouldDismiss ? dismissScreen : undefined,
|
|
120
116
|
spec: plan.transitionSpec,
|
|
121
117
|
emitWillAnimate: false,
|
|
122
118
|
markEntering: false,
|
|
@@ -125,5 +121,8 @@ export const finalizePanRelease = (release, runtime, dismissScreen, dimensions,
|
|
|
125
121
|
animations,
|
|
126
122
|
initialVelocity: plan.progressVelocity
|
|
127
123
|
});
|
|
124
|
+
if (plan.shouldDismiss && requestDismiss) {
|
|
125
|
+
runOnJS(requestDismiss)();
|
|
126
|
+
}
|
|
128
127
|
};
|
|
129
128
|
//# sourceMappingURL=pan-lifecycle.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clamp","runOnJS","EPSILON","TRUE","emitMotionStart","animateToProgress","normalizeGestureTranslation","resolveGestureVelocity","snapshotGestureHandoff","clearFocalPoint","clearPanTrackingValues","clearTransformTrackingValues","buildPanReleasePlan","resetPanGestureValues","startPanBase","runtime","stores","gestures","animations","dragging","set","dismissing","settling","internal","progressBaseline","transitionProgress","get","trackPanGesture","event","rawEvent","dimensions","translationX","x","translationY","y","rawX","rawY","velocityX","velocityY","width","height","normX","normY","rawNormX","rawNormY","velocity","Math","max","progressDeltaX","progressDeltaY","raw","finalizePanRelease","release","
|
|
1
|
+
{"version":3,"names":["clamp","runOnJS","EPSILON","TRUE","emitMotionStart","animateToProgress","normalizeGestureTranslation","resolveGestureVelocity","snapshotGestureHandoff","clearFocalPoint","clearPanTrackingValues","clearTransformTrackingValues","buildPanReleasePlan","resetPanGestureValues","startPanBase","runtime","stores","gestures","animations","dragging","set","dismissing","settling","internal","progressBaseline","transitionProgress","get","trackPanGesture","event","rawEvent","dimensions","translationX","x","translationY","y","rawX","rawY","velocityX","velocityY","width","height","normX","normY","rawNormX","rawNormY","velocity","Math","max","progressDeltaX","progressDeltaY","raw","finalizePanRelease","release","requestDismiss","gestureCompositionOwner","policy","system","canDriveRelease","plan","target","shouldDismiss","initialVelocity","transitionSpec","undefined","resetSpec","open","commitProgress","targetProgress","progressAlreadyAtTarget","abs","handoffVelocity","completeMotion","updateLifecycle","spec","emitWillAnimate","markEntering","animationProgress","progressVelocity"],"sourceRoot":"../../../../../../../../src","sources":["shared/providers/screen/gestures/pan/behavior/pan-lifecycle.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,7 +9,6 @@ import { finalizePanRelease, startPanBase, trackPanGesture } from "./pan-lifecyc
|
|
|
9
9
|
import { primeSnapPanRelease, resolvePanRelease, resolveSnapPanRelease } from "./pan-release";
|
|
10
10
|
export const usePanBehavior = (runtime, screenOptions, dimensions, gestureCompositionOwner, pendingDirection) => {
|
|
11
11
|
const {
|
|
12
|
-
dismissScreen,
|
|
13
12
|
requestDismiss
|
|
14
13
|
} = useNavigationHelpers();
|
|
15
14
|
const {
|
|
@@ -59,11 +58,11 @@ export const usePanBehavior = (runtime, screenOptions, dimensions, gestureCompos
|
|
|
59
58
|
resetSpec: latestRuntime.policy.transitionSpec?.open
|
|
60
59
|
} : latestRuntime.participation.effectiveSnapPoints.hasSnapPoints ? resolveSnapPanRelease(event, latestRuntime, dimensions) : resolvePanRelease(event, latestRuntime, dimensions);
|
|
61
60
|
const isPanCompositionOwner = gestureCompositionOwner.get() === "pan";
|
|
62
|
-
finalizePanRelease(release, latestRuntime,
|
|
61
|
+
finalizePanRelease(release, latestRuntime, dimensions, rawEvent, requestDismiss, gestureCompositionOwner);
|
|
63
62
|
if (isPanCompositionOwner) {
|
|
64
63
|
gestureCompositionOwner.set(null);
|
|
65
64
|
}
|
|
66
|
-
}, [runtime, screenOptions, dimensions,
|
|
65
|
+
}, [runtime, screenOptions, dimensions, requestDismiss, withSensitivity, gestureCompositionOwner]);
|
|
67
66
|
return useMemo(() => ({
|
|
68
67
|
onStart,
|
|
69
68
|
onUpdate,
|