react-native-screen-transitions 3.6.0 → 3.7.0-alpha.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/README.md +2 -2
- package/lib/commonjs/blank-stack/components/stack-view.js +35 -39
- package/lib/commonjs/blank-stack/components/stack-view.js.map +1 -1
- package/lib/commonjs/blank-stack/navigators/create-blank-stack-navigator.js +7 -14
- package/lib/commonjs/blank-stack/navigators/create-blank-stack-navigator.js.map +1 -1
- package/lib/commonjs/component-stack/components/stack-view.js +4 -11
- package/lib/commonjs/component-stack/components/stack-view.js.map +1 -1
- package/lib/commonjs/component-stack/navigators/create-component-stack-navigator.js +1 -1
- package/lib/commonjs/native-stack/navigators/createNativeStackNavigator.js +6 -0
- package/lib/commonjs/native-stack/navigators/createNativeStackNavigator.js.map +1 -1
- package/lib/commonjs/shared/adapters/with-screen-transitions/context.js +28 -0
- package/lib/commonjs/shared/adapters/with-screen-transitions/context.js.map +1 -0
- package/lib/commonjs/shared/adapters/with-screen-transitions/index.js +75 -0
- package/lib/commonjs/shared/adapters/with-screen-transitions/index.js.map +1 -0
- package/lib/commonjs/shared/adapters/with-screen-transitions/options.js +103 -0
- package/lib/commonjs/shared/adapters/with-screen-transitions/options.js.map +1 -0
- package/lib/commonjs/shared/adapters/with-screen-transitions/stack-layout.js +143 -0
- package/lib/commonjs/shared/adapters/with-screen-transitions/stack-layout.js.map +1 -0
- package/lib/commonjs/shared/adapters/with-screen-transitions/types.js +6 -0
- package/lib/commonjs/shared/adapters/with-screen-transitions/types.js.map +1 -0
- package/lib/commonjs/shared/components/activity/helpers.js +9 -0
- package/lib/commonjs/shared/components/activity/helpers.js.map +1 -0
- package/lib/commonjs/shared/components/activity/index.js +20 -0
- package/lib/commonjs/shared/components/activity/index.js.map +1 -0
- package/lib/commonjs/shared/components/activity/variants/activity-container.js +29 -0
- package/lib/commonjs/shared/components/activity/variants/activity-container.js.map +1 -0
- package/lib/commonjs/shared/components/activity/variants/activity-screen.js +107 -0
- package/lib/commonjs/shared/components/activity/variants/activity-screen.js.map +1 -0
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-measurer.js +10 -4
- package/lib/commonjs/shared/components/create-boundary-component/hooks/use-measurer.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/utils/measured-bounds.js +13 -1
- package/lib/commonjs/shared/components/create-boundary-component/utils/measured-bounds.js.map +1 -1
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +8 -17
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
- package/lib/commonjs/shared/components/screen-lifecycle/index.js +1 -1
- package/lib/commonjs/shared/components/screen-lifecycle/index.js.map +1 -1
- package/lib/commonjs/shared/hooks/navigation/use-navigation-helpers.js +10 -4
- package/lib/commonjs/shared/hooks/navigation/use-navigation-helpers.js.map +1 -1
- package/lib/commonjs/shared/hooks/navigation/use-stack.js +63 -6
- package/lib/commonjs/shared/hooks/navigation/use-stack.js.map +1 -1
- package/lib/commonjs/shared/index.js +8 -0
- package/lib/commonjs/shared/index.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/descriptors/descriptors.provider.js +18 -29
- package/lib/commonjs/shared/providers/screen/descriptors/descriptors.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/descriptors/index.js +6 -0
- package/lib/commonjs/shared/providers/screen/descriptors/index.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/ownership/resolve-ownership.js +2 -1
- package/lib/commonjs/shared/providers/screen/gestures/ownership/resolve-ownership.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/pan-lifecycle.js +4 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/pan-lifecycle.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pan/use-pan-behavior.js +4 -3
- package/lib/commonjs/shared/providers/screen/gestures/pan/use-pan-behavior.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-lifecycle.js +4 -1
- package/lib/commonjs/shared/providers/screen/gestures/pinch/pinch-lifecycle.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/gestures/pinch/use-pinch-behavior.js +4 -3
- package/lib/commonjs/shared/providers/screen/gestures/pinch/use-pinch-behavior.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +16 -1
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
- package/lib/commonjs/shared/providers/stack/direct.provider.js +4 -3
- package/lib/commonjs/shared/providers/stack/direct.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.js +199 -0
- package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.js.map +1 -0
- package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.js +62 -0
- package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.js.map +1 -0
- package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.js +81 -0
- package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.js.map +1 -0
- package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.js +123 -0
- package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.js.map +1 -0
- package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/types.js +6 -0
- package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/helpers/types.js.map +1 -0
- package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/index.js +24 -0
- package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/index.js.map +1 -0
- package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.js +131 -0
- package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.js.map +1 -0
- package/lib/commonjs/shared/providers/stack/managed.provider.js +18 -29
- package/lib/commonjs/shared/providers/stack/managed.provider.js.map +1 -1
- package/lib/commonjs/shared/types/stack.types.js.map +1 -1
- package/lib/commonjs/shared/utils/create-provider.js +99 -10
- package/lib/commonjs/shared/utils/create-provider.js.map +1 -1
- package/lib/commonjs/shared/utils/navigation/resolve-scene-neighbors.js +8 -5
- package/lib/commonjs/shared/utils/navigation/resolve-scene-neighbors.js.map +1 -1
- package/lib/commonjs/shared/utils/navigation/sync-routes-with-removed.js +23 -6
- package/lib/commonjs/shared/utils/navigation/sync-routes-with-removed.js.map +1 -1
- package/lib/commonjs/shared/utils/visibility-block-offset.js +13 -0
- package/lib/commonjs/shared/utils/visibility-block-offset.js.map +1 -0
- package/lib/module/blank-stack/components/stack-view.js +36 -40
- package/lib/module/blank-stack/components/stack-view.js.map +1 -1
- package/lib/module/blank-stack/navigators/create-blank-stack-navigator.js +7 -14
- package/lib/module/blank-stack/navigators/create-blank-stack-navigator.js.map +1 -1
- package/lib/module/component-stack/components/stack-view.js +4 -11
- package/lib/module/component-stack/components/stack-view.js.map +1 -1
- package/lib/module/component-stack/navigators/create-component-stack-navigator.js +1 -1
- package/lib/module/native-stack/navigators/createNativeStackNavigator.js +6 -0
- package/lib/module/native-stack/navigators/createNativeStackNavigator.js.map +1 -1
- package/lib/module/shared/adapters/with-screen-transitions/context.js +23 -0
- package/lib/module/shared/adapters/with-screen-transitions/context.js.map +1 -0
- package/lib/module/shared/adapters/with-screen-transitions/index.js +66 -0
- package/lib/module/shared/adapters/with-screen-transitions/index.js.map +1 -0
- package/lib/module/shared/adapters/with-screen-transitions/options.js +98 -0
- package/lib/module/shared/adapters/with-screen-transitions/options.js.map +1 -0
- package/lib/module/shared/adapters/with-screen-transitions/stack-layout.js +138 -0
- package/lib/module/shared/adapters/with-screen-transitions/stack-layout.js.map +1 -0
- package/lib/module/shared/adapters/with-screen-transitions/types.js +4 -0
- package/lib/module/shared/adapters/with-screen-transitions/types.js.map +1 -0
- package/lib/module/shared/components/activity/helpers.js +5 -0
- package/lib/module/shared/components/activity/helpers.js.map +1 -0
- package/lib/module/shared/components/activity/index.js +5 -0
- package/lib/module/shared/components/activity/index.js.map +1 -0
- package/lib/module/shared/components/activity/variants/activity-container.js +24 -0
- package/lib/module/shared/components/activity/variants/activity-container.js.map +1 -0
- package/lib/module/shared/components/activity/variants/activity-screen.js +103 -0
- package/lib/module/shared/components/activity/variants/activity-screen.js.map +1 -0
- package/lib/module/shared/components/create-boundary-component/hooks/use-measurer.js +11 -5
- package/lib/module/shared/components/create-boundary-component/hooks/use-measurer.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/utils/measured-bounds.js +11 -0
- package/lib/module/shared/components/create-boundary-component/utils/measured-bounds.js.map +1 -1
- package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js +8 -17
- package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition-intent.js.map +1 -1
- package/lib/module/shared/components/screen-lifecycle/index.js +1 -1
- package/lib/module/shared/components/screen-lifecycle/index.js.map +1 -1
- package/lib/module/shared/hooks/navigation/use-navigation-helpers.js +11 -5
- package/lib/module/shared/hooks/navigation/use-navigation-helpers.js.map +1 -1
- package/lib/module/shared/hooks/navigation/use-stack.js +63 -6
- package/lib/module/shared/hooks/navigation/use-stack.js.map +1 -1
- package/lib/module/shared/index.js +3 -0
- package/lib/module/shared/index.js.map +1 -1
- package/lib/module/shared/providers/screen/descriptors/descriptors.provider.js +17 -29
- package/lib/module/shared/providers/screen/descriptors/descriptors.provider.js.map +1 -1
- package/lib/module/shared/providers/screen/descriptors/index.js +1 -1
- package/lib/module/shared/providers/screen/descriptors/index.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/ownership/resolve-ownership.js +2 -1
- package/lib/module/shared/providers/screen/gestures/ownership/resolve-ownership.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js +2 -2
- package/lib/module/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pan/pan-lifecycle.js +5 -2
- package/lib/module/shared/providers/screen/gestures/pan/pan-lifecycle.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pan/use-pan-behavior.js +4 -3
- package/lib/module/shared/providers/screen/gestures/pan/use-pan-behavior.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pinch/pinch-lifecycle.js +5 -2
- package/lib/module/shared/providers/screen/gestures/pinch/pinch-lifecycle.js.map +1 -1
- package/lib/module/shared/providers/screen/gestures/pinch/use-pinch-behavior.js +4 -3
- package/lib/module/shared/providers/screen/gestures/pinch/use-pinch-behavior.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +16 -1
- package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
- package/lib/module/shared/providers/stack/direct.provider.js +5 -4
- package/lib/module/shared/providers/stack/direct.provider.js.map +1 -1
- package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.js +194 -0
- package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.js.map +1 -0
- package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.js +57 -0
- package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.js.map +1 -0
- package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.js +69 -0
- package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.js.map +1 -0
- package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.js +118 -0
- package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.js.map +1 -0
- package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/types.js +4 -0
- package/lib/module/shared/providers/stack/helpers/managed-stack-state/helpers/types.js.map +1 -0
- package/lib/module/shared/providers/stack/helpers/managed-stack-state/index.js +19 -0
- package/lib/module/shared/providers/stack/helpers/managed-stack-state/index.js.map +1 -0
- package/lib/module/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.js +126 -0
- package/lib/module/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.js.map +1 -0
- package/lib/module/shared/providers/stack/managed.provider.js +19 -30
- package/lib/module/shared/providers/stack/managed.provider.js.map +1 -1
- package/lib/module/shared/types/stack.types.js.map +1 -1
- package/lib/module/shared/utils/create-provider.js +100 -11
- package/lib/module/shared/utils/create-provider.js.map +1 -1
- package/lib/module/shared/utils/navigation/resolve-scene-neighbors.js +8 -5
- package/lib/module/shared/utils/navigation/resolve-scene-neighbors.js.map +1 -1
- package/lib/module/shared/utils/navigation/sync-routes-with-removed.js +23 -6
- package/lib/module/shared/utils/navigation/sync-routes-with-removed.js.map +1 -1
- package/lib/module/shared/utils/visibility-block-offset.js +8 -0
- package/lib/module/shared/utils/visibility-block-offset.js.map +1 -0
- package/lib/typescript/blank-stack/components/stack-view.d.ts.map +1 -1
- package/lib/typescript/blank-stack/index.d.ts +1 -1
- package/lib/typescript/blank-stack/index.d.ts.map +1 -1
- package/lib/typescript/blank-stack/navigators/create-blank-stack-navigator.d.ts +4 -6
- package/lib/typescript/blank-stack/navigators/create-blank-stack-navigator.d.ts.map +1 -1
- package/lib/typescript/blank-stack/types.d.ts +41 -29
- 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/navigators/create-component-stack-navigator.d.ts +1 -1
- package/lib/typescript/native-stack/navigators/createNativeStackNavigator.d.ts +5 -0
- package/lib/typescript/native-stack/navigators/createNativeStackNavigator.d.ts.map +1 -1
- package/lib/typescript/native-stack/types.d.ts +25 -0
- package/lib/typescript/native-stack/types.d.ts.map +1 -1
- package/lib/typescript/shared/adapters/with-screen-transitions/context.d.ts +15 -0
- package/lib/typescript/shared/adapters/with-screen-transitions/context.d.ts.map +1 -0
- package/lib/typescript/shared/adapters/with-screen-transitions/index.d.ts +11 -0
- package/lib/typescript/shared/adapters/with-screen-transitions/index.d.ts.map +1 -0
- package/lib/typescript/shared/adapters/with-screen-transitions/options.d.ts +16 -0
- package/lib/typescript/shared/adapters/with-screen-transitions/options.d.ts.map +1 -0
- package/lib/typescript/shared/adapters/with-screen-transitions/stack-layout.d.ts +12 -0
- package/lib/typescript/shared/adapters/with-screen-transitions/stack-layout.d.ts.map +1 -0
- package/lib/typescript/shared/adapters/with-screen-transitions/types.d.ts +24 -0
- package/lib/typescript/shared/adapters/with-screen-transitions/types.d.ts.map +1 -0
- package/lib/typescript/shared/components/activity/helpers.d.ts +4 -0
- package/lib/typescript/shared/components/activity/helpers.d.ts.map +1 -0
- package/lib/typescript/shared/components/activity/index.d.ts +3 -0
- package/lib/typescript/shared/components/activity/index.d.ts.map +1 -0
- package/lib/typescript/shared/components/activity/variants/activity-container.d.ts +6 -0
- package/lib/typescript/shared/components/activity/variants/activity-container.d.ts.map +1 -0
- package/lib/typescript/shared/components/activity/variants/activity-screen.d.ts +13 -0
- package/lib/typescript/shared/components/activity/variants/activity-screen.d.ts.map +1 -0
- package/lib/typescript/shared/components/create-boundary-component/hooks/use-measurer.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/index.d.ts +2 -2
- package/lib/typescript/shared/components/create-boundary-component/utils/measured-bounds.d.ts +1 -0
- package/lib/typescript/shared/components/create-boundary-component/utils/measured-bounds.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-lifecycle/hooks/use-close-transition-intent.d.ts +1 -2
- package/lib/typescript/shared/components/screen-lifecycle/hooks/use-close-transition-intent.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/hooks/navigation/use-stack.d.ts +13 -1
- package/lib/typescript/shared/hooks/navigation/use-stack.d.ts.map +1 -1
- package/lib/typescript/shared/index.d.ts +15 -11
- package/lib/typescript/shared/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/descriptors/descriptors.provider.d.ts +11 -3
- package/lib/typescript/shared/providers/screen/descriptors/descriptors.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/descriptors/index.d.ts +1 -1
- package/lib/typescript/shared/providers/screen/descriptors/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/ownership/resolve-ownership.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pan/pan-lifecycle.d.ts +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pan/pan-lifecycle.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pan/use-pan-behavior.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-lifecycle.d.ts +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/pinch-lifecycle.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/gestures/pinch/use-pinch-behavior.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts +3 -1
- package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts.map +1 -1
- package/lib/typescript/shared/providers/stack/direct.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.d.ts +13 -0
- package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.d.ts.map +1 -0
- package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.d.ts +12 -0
- package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.d.ts.map +1 -0
- package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.d.ts +11 -0
- package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.d.ts.map +1 -0
- package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.d.ts +12 -0
- package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.d.ts.map +1 -0
- package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/types.d.ts +40 -0
- package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/helpers/types.d.ts.map +1 -0
- package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/index.d.ts +12 -0
- package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/index.d.ts.map +1 -0
- package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.d.ts +13 -0
- package/lib/typescript/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.d.ts.map +1 -0
- package/lib/typescript/shared/providers/stack/managed.provider.d.ts.map +1 -1
- package/lib/typescript/shared/types/index.d.ts +2 -2
- package/lib/typescript/shared/types/index.d.ts.map +1 -1
- package/lib/typescript/shared/types/providers/managed-stack.types.d.ts +3 -9
- package/lib/typescript/shared/types/providers/managed-stack.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/screen.types.d.ts +24 -0
- package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/stack.types.d.ts +7 -0
- package/lib/typescript/shared/types/stack.types.d.ts.map +1 -1
- package/lib/typescript/shared/utils/create-provider.d.ts +17 -3
- package/lib/typescript/shared/utils/create-provider.d.ts.map +1 -1
- package/lib/typescript/shared/utils/navigation/resolve-scene-neighbors.d.ts +2 -1
- package/lib/typescript/shared/utils/navigation/resolve-scene-neighbors.d.ts.map +1 -1
- package/lib/typescript/shared/utils/navigation/sync-routes-with-removed.d.ts +2 -1
- package/lib/typescript/shared/utils/navigation/sync-routes-with-removed.d.ts.map +1 -1
- package/lib/typescript/shared/utils/visibility-block-offset.d.ts +2 -0
- package/lib/typescript/shared/utils/visibility-block-offset.d.ts.map +1 -0
- package/package.json +11 -1
- package/src/blank-stack/components/stack-view.tsx +54 -48
- package/src/blank-stack/index.ts +1 -0
- package/src/blank-stack/navigators/create-blank-stack-navigator.tsx +7 -15
- package/src/blank-stack/types.ts +44 -29
- package/src/component-stack/components/stack-view.tsx +4 -11
- package/src/component-stack/navigators/create-component-stack-navigator.tsx +1 -1
- package/src/native-stack/navigators/createNativeStackNavigator.tsx +5 -0
- package/src/native-stack/types.ts +25 -0
- package/src/shared/adapters/with-screen-transitions/context.tsx +42 -0
- package/src/shared/adapters/with-screen-transitions/index.tsx +155 -0
- package/src/shared/adapters/with-screen-transitions/options.ts +172 -0
- package/src/shared/adapters/with-screen-transitions/stack-layout.tsx +233 -0
- package/src/shared/adapters/with-screen-transitions/types.ts +28 -0
- package/src/shared/components/activity/helpers.ts +8 -0
- package/src/shared/components/activity/index.tsx +2 -0
- package/src/shared/components/activity/variants/activity-container.tsx +25 -0
- package/src/shared/components/activity/variants/activity-screen.tsx +133 -0
- package/src/shared/components/create-boundary-component/hooks/use-measurer.ts +23 -4
- package/src/shared/components/create-boundary-component/utils/measured-bounds.ts +15 -0
- package/src/shared/components/screen-lifecycle/hooks/use-close-transition-intent.ts +9 -26
- package/src/shared/components/screen-lifecycle/index.tsx +1 -1
- package/src/shared/hooks/navigation/use-navigation-helpers.ts +9 -3
- package/src/shared/hooks/navigation/use-stack.tsx +115 -6
- package/src/shared/index.ts +9 -0
- package/src/shared/providers/screen/descriptors/descriptors.provider.tsx +31 -31
- package/src/shared/providers/screen/descriptors/index.tsx +1 -0
- package/src/shared/providers/screen/gestures/ownership/resolve-ownership.ts +2 -1
- package/src/shared/providers/screen/gestures/ownership/use-walk-up-and-register-shadowing-claims.ts +2 -2
- package/src/shared/providers/screen/gestures/pan/pan-lifecycle.ts +7 -2
- package/src/shared/providers/screen/gestures/pan/use-pan-behavior.ts +10 -2
- package/src/shared/providers/screen/gestures/pinch/pinch-lifecycle.ts +7 -2
- package/src/shared/providers/screen/gestures/pinch/use-pinch-behavior.ts +8 -3
- package/src/shared/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +17 -1
- package/src/shared/providers/stack/direct.provider.tsx +13 -4
- package/src/shared/providers/stack/helpers/managed-stack-state/helpers/build-managed-stack-state.ts +368 -0
- package/src/shared/providers/stack/helpers/managed-stack-state/helpers/derive-managed-stack-state.ts +129 -0
- package/src/shared/providers/stack/helpers/managed-stack-state/helpers/helpers.ts +139 -0
- package/src/shared/providers/stack/helpers/managed-stack-state/helpers/reconcile-managed-routes.ts +198 -0
- package/src/shared/providers/stack/helpers/managed-stack-state/helpers/types.ts +57 -0
- package/src/shared/providers/stack/helpers/managed-stack-state/index.ts +40 -0
- package/src/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.ts +160 -0
- package/src/shared/providers/stack/managed.provider.tsx +23 -39
- package/src/shared/types/index.ts +3 -0
- package/src/shared/types/providers/managed-stack.types.ts +6 -8
- package/src/shared/types/screen.types.ts +25 -0
- package/src/shared/types/stack.types.ts +11 -0
- package/src/shared/utils/create-provider.tsx +183 -8
- package/src/shared/utils/navigation/resolve-scene-neighbors.ts +9 -4
- package/src/shared/utils/navigation/sync-routes-with-removed.ts +38 -7
- package/src/shared/utils/visibility-block-offset.ts +4 -0
- package/lib/commonjs/blank-stack/components/stack-view.native.js +0 -64
- package/lib/commonjs/blank-stack/components/stack-view.native.js.map +0 -1
- package/lib/commonjs/shared/components/native-screen-container.js +0 -42
- package/lib/commonjs/shared/components/native-screen-container.js.map +0 -1
- package/lib/commonjs/shared/components/native-screen.js +0 -125
- package/lib/commonjs/shared/components/native-screen.js.map +0 -1
- package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.js +0 -51
- package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.js.map +0 -1
- package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.js +0 -15
- package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.js.map +0 -1
- package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.js +0 -14
- package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.js.map +0 -1
- package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.js +0 -13
- package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.js.map +0 -1
- package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/index.js +0 -101
- package/lib/commonjs/shared/providers/stack/helpers/use-local-routes/index.js.map +0 -1
- package/lib/module/blank-stack/components/stack-view.native.js +0 -60
- package/lib/module/blank-stack/components/stack-view.native.js.map +0 -1
- package/lib/module/shared/components/native-screen-container.js +0 -37
- package/lib/module/shared/components/native-screen-container.js.map +0 -1
- package/lib/module/shared/components/native-screen.js +0 -119
- package/lib/module/shared/components/native-screen.js.map +0 -1
- package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.js +0 -47
- package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.js.map +0 -1
- package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.js +0 -10
- package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.js.map +0 -1
- package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.js +0 -9
- package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.js.map +0 -1
- package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.js +0 -8
- package/lib/module/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.js.map +0 -1
- package/lib/module/shared/providers/stack/helpers/use-local-routes/index.js +0 -95
- package/lib/module/shared/providers/stack/helpers/use-local-routes/index.js.map +0 -1
- package/lib/typescript/blank-stack/components/stack-view.native.d.ts +0 -3
- package/lib/typescript/blank-stack/components/stack-view.native.d.ts.map +0 -1
- package/lib/typescript/shared/components/native-screen-container.d.ts +0 -6
- package/lib/typescript/shared/components/native-screen-container.d.ts.map +0 -1
- package/lib/typescript/shared/components/native-screen.d.ts +0 -12
- package/lib/typescript/shared/components/native-screen.d.ts.map +0 -1
- package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.d.ts +0 -10
- package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.d.ts.map +0 -1
- package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.d.ts +0 -2
- package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.d.ts.map +0 -1
- package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.d.ts +0 -3
- package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.d.ts.map +0 -1
- package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.d.ts +0 -3
- package/lib/typescript/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.d.ts.map +0 -1
- package/lib/typescript/shared/providers/stack/helpers/use-local-routes/index.d.ts +0 -19
- package/lib/typescript/shared/providers/stack/helpers/use-local-routes/index.d.ts.map +0 -1
- package/src/blank-stack/components/stack-view.native.tsx +0 -74
- package/src/shared/components/native-screen-container.tsx +0 -33
- package/src/shared/components/native-screen.tsx +0 -176
- package/src/shared/providers/stack/helpers/use-local-routes/helpers/align-routes-with-latest.ts +0 -65
- package/src/shared/providers/stack/helpers/use-local-routes/helpers/are-descriptors-equal.ts +0 -15
- package/src/shared/providers/stack/helpers/use-local-routes/helpers/have-same-route-keys.ts +0 -12
- package/src/shared/providers/stack/helpers/use-local-routes/helpers/routes-are-identical.ts +0 -11
- package/src/shared/providers/stack/helpers/use-local-routes/index.ts +0 -147
package/lib/commonjs/shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.js
ADDED
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createManagedStackController = void 0;
|
|
7
|
+
var _native = require("@react-navigation/native");
|
|
8
|
+
var _buildManagedStackState = require("./helpers/build-managed-stack-state");
|
|
9
|
+
var _deriveManagedStackState = require("./helpers/derive-managed-stack-state");
|
|
10
|
+
/**
|
|
11
|
+
* Maintains the stack-local route snapshot used while managed transitions run.
|
|
12
|
+
*
|
|
13
|
+
* React Navigation remains the source of truth for settled routes, but it can
|
|
14
|
+
* remove descriptors before our close animation has finished. This controller
|
|
15
|
+
* keeps those closing routes locally until their lifecycle reports completion.
|
|
16
|
+
*/
|
|
17
|
+
const createManagedStackController = initialProps => {
|
|
18
|
+
const closingRouteKeys = new Set();
|
|
19
|
+
let props = initialProps;
|
|
20
|
+
let previousPropRoutes = initialProps.state.routes;
|
|
21
|
+
let snapshot = {
|
|
22
|
+
state: (0, _buildManagedStackState.buildManagedStackState)({
|
|
23
|
+
props,
|
|
24
|
+
routes: initialProps.state.routes,
|
|
25
|
+
descriptors: initialProps.descriptors,
|
|
26
|
+
closingRouteKeys
|
|
27
|
+
})
|
|
28
|
+
};
|
|
29
|
+
const listeners = new Set();
|
|
30
|
+
const emit = () => {
|
|
31
|
+
for (const listener of listeners) {
|
|
32
|
+
listener();
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
const subscribe = listener => {
|
|
36
|
+
listeners.add(listener);
|
|
37
|
+
return () => {
|
|
38
|
+
listeners.delete(listener);
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
const getSnapshot = () => {
|
|
42
|
+
return snapshot;
|
|
43
|
+
};
|
|
44
|
+
const update = nextProps => {
|
|
45
|
+
const previousRoutesSnapshot = previousPropRoutes;
|
|
46
|
+
props = nextProps;
|
|
47
|
+
const nextState = (0, _deriveManagedStackState.deriveManagedStackState)({
|
|
48
|
+
props,
|
|
49
|
+
current: snapshot.state,
|
|
50
|
+
previousRoutesSnapshot,
|
|
51
|
+
closingRouteKeys
|
|
52
|
+
});
|
|
53
|
+
previousPropRoutes = nextProps.state.routes;
|
|
54
|
+
if (nextState === snapshot.state) {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
snapshot = {
|
|
58
|
+
state: nextState
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
const handleCloseRoute = ({
|
|
62
|
+
route
|
|
63
|
+
}) => {
|
|
64
|
+
const {
|
|
65
|
+
state,
|
|
66
|
+
navigation
|
|
67
|
+
} = props;
|
|
68
|
+
if (state.routes.some(candidate => candidate.key === route.key)) {
|
|
69
|
+
navigation.dispatch({
|
|
70
|
+
..._native.StackActions.pop(),
|
|
71
|
+
source: route.key,
|
|
72
|
+
target: state.key
|
|
73
|
+
});
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
closingRouteKeys.delete(route.key);
|
|
77
|
+
const current = snapshot.state;
|
|
78
|
+
const routeExists = current.routes.some(candidate => candidate.key === route.key);
|
|
79
|
+
if (!routeExists) {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
const nextRoutes = current.routes.filter(candidate => candidate.key !== route.key);
|
|
83
|
+
const nextDescriptors = {
|
|
84
|
+
...current.sourceDescriptors
|
|
85
|
+
};
|
|
86
|
+
delete nextDescriptors[route.key];
|
|
87
|
+
snapshot = {
|
|
88
|
+
state: (0, _buildManagedStackState.buildManagedStackState)({
|
|
89
|
+
props,
|
|
90
|
+
routes: nextRoutes,
|
|
91
|
+
descriptors: nextDescriptors,
|
|
92
|
+
closingRouteKeys,
|
|
93
|
+
previousState: current
|
|
94
|
+
})
|
|
95
|
+
};
|
|
96
|
+
emit();
|
|
97
|
+
};
|
|
98
|
+
const requestDismiss = ({
|
|
99
|
+
route
|
|
100
|
+
}) => {
|
|
101
|
+
const current = snapshot.state;
|
|
102
|
+
const routeIndex = current.routes.findIndex(candidate => candidate.key === route.key);
|
|
103
|
+
if (routeIndex <= 0) {
|
|
104
|
+
return false;
|
|
105
|
+
}
|
|
106
|
+
if (closingRouteKeys.has(route.key)) {
|
|
107
|
+
return true;
|
|
108
|
+
}
|
|
109
|
+
closingRouteKeys.add(route.key);
|
|
110
|
+
snapshot = {
|
|
111
|
+
state: (0, _buildManagedStackState.buildManagedStackState)({
|
|
112
|
+
props,
|
|
113
|
+
routes: current.routes,
|
|
114
|
+
descriptors: current.sourceDescriptors,
|
|
115
|
+
closingRouteKeys,
|
|
116
|
+
previousState: current
|
|
117
|
+
})
|
|
118
|
+
};
|
|
119
|
+
emit();
|
|
120
|
+
return true;
|
|
121
|
+
};
|
|
122
|
+
return {
|
|
123
|
+
subscribe,
|
|
124
|
+
getSnapshot,
|
|
125
|
+
update,
|
|
126
|
+
handleCloseRoute,
|
|
127
|
+
requestDismiss
|
|
128
|
+
};
|
|
129
|
+
};
|
|
130
|
+
exports.createManagedStackController = createManagedStackController;
|
|
131
|
+
//# sourceMappingURL=managed-stack-controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_native","require","_buildManagedStackState","_deriveManagedStackState","createManagedStackController","initialProps","closingRouteKeys","Set","props","previousPropRoutes","state","routes","snapshot","buildManagedStackState","descriptors","listeners","emit","listener","subscribe","add","delete","getSnapshot","update","nextProps","previousRoutesSnapshot","nextState","deriveManagedStackState","current","handleCloseRoute","route","navigation","some","candidate","key","dispatch","StackActions","pop","source","target","routeExists","nextRoutes","filter","nextDescriptors","sourceDescriptors","previousState","requestDismiss","routeIndex","findIndex","has","exports"],"sourceRoot":"../../../../../../../src","sources":["shared/providers/stack/helpers/managed-stack-state/managed-stack-controller.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -8,10 +8,9 @@ exports.withManagedStack = withManagedStack;
|
|
|
8
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
9
|
var React = _react;
|
|
10
10
|
var _useStack = require("../../hooks/navigation/use-stack");
|
|
11
|
+
var _animation = require("../../stores/animation.store");
|
|
11
12
|
var _core = require("./core.provider");
|
|
12
|
-
var
|
|
13
|
-
var _useLocalRoutes = require("./helpers/use-local-routes");
|
|
14
|
-
var _useProcessedRoutes = require("./helpers/use-processed-routes");
|
|
13
|
+
var _managedStackState = require("./helpers/managed-stack-state");
|
|
15
14
|
var _useStackDerived = require("./helpers/use-stack-derived");
|
|
16
15
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
16
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
@@ -31,42 +30,32 @@ function useManagedStackValue(props) {
|
|
|
31
30
|
const {
|
|
32
31
|
state,
|
|
33
32
|
handleCloseRoute,
|
|
34
|
-
|
|
35
|
-
} = (0,
|
|
33
|
+
requestDismiss
|
|
34
|
+
} = (0, _managedStackState.useManagedStackState)(props);
|
|
36
35
|
const navigatorKey = props.state.key;
|
|
37
|
-
const
|
|
36
|
+
const animationMaps = (0, _react.useMemo)(() => state.routeKeys.map(routeKey => _animation.AnimationStore.getBag(routeKey)), [state.routeKeys]);
|
|
38
37
|
const {
|
|
39
38
|
optimisticFocusedIndex
|
|
40
|
-
} = (0, _useStackDerived.useStackDerived)(
|
|
41
|
-
const closingRouteMap = (0, _useClosingRouteMap.useClosingRouteMap)(processed.routeKeys, processed.animationMaps);
|
|
39
|
+
} = (0, _useStackDerived.useStackDerived)(animationMaps);
|
|
42
40
|
const focusedIndex = props.state.index;
|
|
43
|
-
|
|
44
|
-
// Common stack context (consumed by useStack())
|
|
45
41
|
const stackContextValue = (0, _react.useMemo)(() => ({
|
|
46
42
|
flags,
|
|
47
43
|
navigatorKey,
|
|
48
|
-
routeKeys:
|
|
44
|
+
routeKeys: state.routeKeys,
|
|
49
45
|
routes: state.routes,
|
|
50
|
-
scenes:
|
|
51
|
-
optimisticFocusedIndex
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
46
|
+
scenes: state.scenes,
|
|
47
|
+
optimisticFocusedIndex,
|
|
48
|
+
focusedIndex,
|
|
49
|
+
requestDismiss
|
|
50
|
+
}), [flags, navigatorKey, state.routeKeys, state.routes, state.scenes, optimisticFocusedIndex, focusedIndex, requestDismiss]);
|
|
55
51
|
const managedContextValue = (0, _react.useMemo)(() => ({
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
handleCloseRoute,
|
|
59
|
-
backdropBehaviors: processed.backdropBehaviors
|
|
60
|
-
}), [processed.activeScreensLimit, closingRouteKeys.shared, handleCloseRoute, processed.backdropBehaviors]);
|
|
61
|
-
|
|
62
|
-
// Combined props for render children (stack-view components)
|
|
52
|
+
handleCloseRoute
|
|
53
|
+
}), [handleCloseRoute]);
|
|
63
54
|
const renderProps = (0, _react.useMemo)(() => ({
|
|
64
|
-
|
|
65
|
-
scenes: processed.scenes,
|
|
55
|
+
scenes: state.scenes,
|
|
66
56
|
focusedIndex,
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
}), [state.descriptors, processed.scenes, focusedIndex, closingRouteMap, processed.shouldShowFloatOverlay]);
|
|
57
|
+
shouldShowFloatOverlay: state.shouldShowFloatOverlay
|
|
58
|
+
}), [state.scenes, focusedIndex, state.shouldShowFloatOverlay]);
|
|
70
59
|
return {
|
|
71
60
|
stackContextValue,
|
|
72
61
|
managedContextValue,
|
|
@@ -80,7 +69,7 @@ function withManagedStack(Component) {
|
|
|
80
69
|
managedContextValue,
|
|
81
70
|
renderProps
|
|
82
71
|
} = useManagedStackValue(props);
|
|
83
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_useStack.
|
|
72
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_useStack.StackProvider, {
|
|
84
73
|
value: stackContextValue,
|
|
85
74
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(ManagedStackContext.Provider, {
|
|
86
75
|
value: managedContextValue,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","React","_useStack","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","React","_useStack","_animation","_core","_managedStackState","_useStackDerived","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ManagedStackContext","createContext","displayName","useManagedStackContext","context","useContext","Error","useManagedStackValue","props","flags","useStackCoreContext","state","handleCloseRoute","requestDismiss","useManagedStackState","navigatorKey","key","animationMaps","useMemo","routeKeys","map","routeKey","AnimationStore","getBag","optimisticFocusedIndex","useStackDerived","focusedIndex","index","stackContextValue","routes","scenes","managedContextValue","renderProps","shouldShowFloatOverlay","withManagedStack","Component","ManagedStackProvider","jsx","StackProvider","value","children","Provider"],"sourceRoot":"../../../../../src","sources":["shared/providers/stack/managed.provider.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["StackType","exports"],"sourceRoot":"../../../../src","sources":["shared/types/stack.types.ts"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AAKA;AACA;AACA;AACA;
|
|
1
|
+
{"version":3,"names":["StackType","exports"],"sourceRoot":"../../../../src","sources":["shared/types/stack.types.ts"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AAKA;AACA;AACA;AACA;AASA;AACA;AACA;AACA;AAYA;AACA;AACA;AACA;AAmBA;AACA;AACA;AACA;AAUA;AACA;AACA;AACA;AASA;AACA;AACA;AACA;AAHA,IAUYA,SAAS,GAAAC,OAAA,CAAAD,SAAA,0BAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAAA,OAATA,SAAS;AAAA","ignoreList":[]}
|
|
@@ -12,13 +12,46 @@ var _jsxRuntime = require("react/jsx-runtime");
|
|
|
12
12
|
* SUPER COOL AMAZING UTILITY
|
|
13
13
|
*/
|
|
14
14
|
|
|
15
|
+
const NullProviderStore = {
|
|
16
|
+
getSnapshot: () => null,
|
|
17
|
+
subscribe: () => () => {}
|
|
18
|
+
};
|
|
19
|
+
const createProviderStore = initialSnapshot => {
|
|
20
|
+
let snapshot = initialSnapshot;
|
|
21
|
+
const listeners = new Set();
|
|
22
|
+
return {
|
|
23
|
+
getSnapshot: () => snapshot,
|
|
24
|
+
notify: () => {
|
|
25
|
+
for (const listener of listeners) {
|
|
26
|
+
listener();
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
setSnapshot: nextSnapshot => {
|
|
30
|
+
if (Object.is(snapshot, nextSnapshot)) {
|
|
31
|
+
return false;
|
|
32
|
+
}
|
|
33
|
+
snapshot = nextSnapshot;
|
|
34
|
+
return true;
|
|
35
|
+
},
|
|
36
|
+
subscribe: listener => {
|
|
37
|
+
listeners.add(listener);
|
|
38
|
+
return () => {
|
|
39
|
+
listeners.delete(listener);
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
};
|
|
15
44
|
function createProvider(name, options) {
|
|
16
45
|
return factory => {
|
|
17
46
|
const {
|
|
18
47
|
guarded = true
|
|
19
48
|
} = options ?? {};
|
|
49
|
+
const providerDisplayName = `${name}Provider`;
|
|
50
|
+
const innerProviderDisplayName = `${name}InnerProvider`;
|
|
20
51
|
const Context = /*#__PURE__*/(0, _react.createContext)(null);
|
|
21
52
|
Context.displayName = name;
|
|
53
|
+
const StoreContext = /*#__PURE__*/(0, _react.createContext)(null);
|
|
54
|
+
StoreContext.displayName = `${name}Store`;
|
|
22
55
|
const Provider = props => {
|
|
23
56
|
const {
|
|
24
57
|
children = props.children,
|
|
@@ -29,27 +62,52 @@ function createProvider(name, options) {
|
|
|
29
62
|
throw new Error(`${name}Context value must be provided. You likely forgot to return it from the factory function.`);
|
|
30
63
|
}
|
|
31
64
|
const memoValue = (0, _react.useMemo)(() => enabled ? value : null, [enabled, value]);
|
|
65
|
+
const storeRef = (0, _react.useRef)(null);
|
|
66
|
+
const pendingNotifyRef = (0, _react.useRef)(false);
|
|
67
|
+
if (storeRef.current === null) {
|
|
68
|
+
storeRef.current = createProviderStore(memoValue);
|
|
69
|
+
}
|
|
70
|
+
const store = storeRef.current;
|
|
71
|
+
pendingNotifyRef.current = store.setSnapshot(memoValue) || pendingNotifyRef.current;
|
|
72
|
+
(0, _react.useLayoutEffect)(() => {
|
|
73
|
+
if (!pendingNotifyRef.current) {
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
pendingNotifyRef.current = false;
|
|
77
|
+
store.notify();
|
|
78
|
+
});
|
|
32
79
|
|
|
33
80
|
// Per-instance ref ensures InnerProvider reads latest value while keeping
|
|
34
81
|
// a stable component reference.
|
|
35
82
|
const valueRef = (0, _react.useRef)(memoValue);
|
|
36
83
|
valueRef.current = memoValue;
|
|
37
|
-
const InnerProvider = (0, _react.useMemo)(() =>
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
84
|
+
const InnerProvider = (0, _react.useMemo)(() => {
|
|
85
|
+
const NamedInnerProvider = ({
|
|
86
|
+
children
|
|
87
|
+
}) => /*#__PURE__*/(0, _jsxRuntime.jsx)(StoreContext.Provider, {
|
|
88
|
+
value: store,
|
|
89
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Context.Provider, {
|
|
90
|
+
value: valueRef.current,
|
|
91
|
+
children: children
|
|
92
|
+
})
|
|
93
|
+
});
|
|
94
|
+
NamedInnerProvider.displayName = innerProviderDisplayName;
|
|
95
|
+
return NamedInnerProvider;
|
|
96
|
+
}, [store]);
|
|
43
97
|
if (typeof children === "function") {
|
|
44
98
|
return children({
|
|
45
99
|
[`${name}Provider`]: InnerProvider
|
|
46
100
|
});
|
|
47
101
|
}
|
|
48
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
49
|
-
value:
|
|
50
|
-
children:
|
|
102
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(StoreContext.Provider, {
|
|
103
|
+
value: store,
|
|
104
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Context.Provider, {
|
|
105
|
+
value: memoValue,
|
|
106
|
+
children: children
|
|
107
|
+
})
|
|
51
108
|
});
|
|
52
109
|
};
|
|
110
|
+
Provider.displayName = providerDisplayName;
|
|
53
111
|
const useEnhancedContext = () => {
|
|
54
112
|
const context = (0, _react.useContext)(Context);
|
|
55
113
|
if (guarded && context === null) {
|
|
@@ -57,10 +115,41 @@ function createProvider(name, options) {
|
|
|
57
115
|
}
|
|
58
116
|
return context;
|
|
59
117
|
};
|
|
118
|
+
const useStoreSelector = selector => {
|
|
119
|
+
const store = (0, _react.useContext)(StoreContext);
|
|
120
|
+
const resolvedStore = store ?? NullProviderStore;
|
|
121
|
+
const selectorRef = (0, _react.useRef)(selector);
|
|
122
|
+
selectorRef.current = selector;
|
|
123
|
+
const getSelectedSnapshot = (0, _react.useCallback)(() => {
|
|
124
|
+
if (guarded && store === null) {
|
|
125
|
+
throw new Error(`${name} store must be used within a ${name}Provider`);
|
|
126
|
+
}
|
|
127
|
+
const snapshot = resolvedStore.getSnapshot();
|
|
128
|
+
if (guarded && snapshot === null) {
|
|
129
|
+
throw new Error(`${name} store must be used within an enabled ${name}Provider`);
|
|
130
|
+
}
|
|
131
|
+
return selectorRef.current ? selectorRef.current(snapshot) : snapshot;
|
|
132
|
+
}, [resolvedStore, store]);
|
|
133
|
+
return (0, _react.useSyncExternalStore)(resolvedStore.subscribe, getSelectedSnapshot, getSelectedSnapshot);
|
|
134
|
+
};
|
|
135
|
+
const useOptionalStoreSelector = selector => {
|
|
136
|
+
const store = (0, _react.useContext)(StoreContext);
|
|
137
|
+
const resolvedStore = store ?? NullProviderStore;
|
|
138
|
+
const selectorRef = (0, _react.useRef)(selector);
|
|
139
|
+
selectorRef.current = selector;
|
|
140
|
+
const getSelectedSnapshot = (0, _react.useCallback)(() => {
|
|
141
|
+
const snapshot = resolvedStore.getSnapshot();
|
|
142
|
+
return selectorRef.current ? selectorRef.current(snapshot) : snapshot;
|
|
143
|
+
}, [resolvedStore]);
|
|
144
|
+
return (0, _react.useSyncExternalStore)(resolvedStore.subscribe, getSelectedSnapshot, getSelectedSnapshot);
|
|
145
|
+
};
|
|
60
146
|
return {
|
|
61
147
|
[`${name}Context`]: Context,
|
|
148
|
+
[`${name}StoreContext`]: StoreContext,
|
|
62
149
|
[`${name}Provider`]: Provider,
|
|
63
|
-
[`use${name}Context`]: useEnhancedContext
|
|
150
|
+
[`use${name}Context`]: useEnhancedContext,
|
|
151
|
+
[`use${name}Store`]: useStoreSelector,
|
|
152
|
+
[`use${name}OptionalStore`]: useOptionalStoreSelector
|
|
64
153
|
};
|
|
65
154
|
};
|
|
66
155
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_jsxRuntime","createProvider","name","options","factory","guarded","Context","createContext","displayName","Provider","props","children","enabled","value","Error","memoValue","useMemo","
|
|
1
|
+
{"version":3,"names":["_react","require","_jsxRuntime","NullProviderStore","getSnapshot","subscribe","createProviderStore","initialSnapshot","snapshot","listeners","Set","notify","listener","setSnapshot","nextSnapshot","Object","is","add","delete","createProvider","name","options","factory","guarded","providerDisplayName","innerProviderDisplayName","Context","createContext","displayName","StoreContext","Provider","props","children","enabled","value","Error","memoValue","useMemo","storeRef","useRef","pendingNotifyRef","current","store","useLayoutEffect","valueRef","InnerProvider","NamedInnerProvider","jsx","useEnhancedContext","context","useContext","useStoreSelector","selector","resolvedStore","selectorRef","getSelectedSnapshot","useCallback","useSyncExternalStore","useOptionalStoreSelector"],"sourceRoot":"../../../../src","sources":["shared/utils/create-provider.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -32,7 +32,7 @@ const findPreviousDescriptor = (scenes, sceneIndex, isRouteClosing) => {
|
|
|
32
32
|
* - If there is no non-closing neighbor above/below, we fall back to the first
|
|
33
33
|
* closing neighbor (needed for normal back transitions).
|
|
34
34
|
*/
|
|
35
|
-
function resolveSceneNeighbors(scenes, sceneIndex, isRouteClosing) {
|
|
35
|
+
function resolveSceneNeighbors(scenes, sceneIndex, isRouteClosing, getRouteClosingOrder) {
|
|
36
36
|
const current = scenes[sceneIndex];
|
|
37
37
|
if (!current) {
|
|
38
38
|
return {
|
|
@@ -47,7 +47,8 @@ function resolveSceneNeighbors(scenes, sceneIndex, isRouteClosing) {
|
|
|
47
47
|
};
|
|
48
48
|
}
|
|
49
49
|
let nextDescriptor;
|
|
50
|
-
let
|
|
50
|
+
let latestClosingAbove;
|
|
51
|
+
let latestClosingAboveOrder = Number.NEGATIVE_INFINITY;
|
|
51
52
|
for (let i = sceneIndex + 1; i < scenes.length; i++) {
|
|
52
53
|
const candidate = scenes[i];
|
|
53
54
|
if (!candidate) continue;
|
|
@@ -55,12 +56,14 @@ function resolveSceneNeighbors(scenes, sceneIndex, isRouteClosing) {
|
|
|
55
56
|
nextDescriptor = candidate.descriptor;
|
|
56
57
|
break;
|
|
57
58
|
}
|
|
58
|
-
|
|
59
|
-
|
|
59
|
+
const closeOrder = getRouteClosingOrder?.(candidate.route.key) ?? i;
|
|
60
|
+
if (closeOrder >= latestClosingAboveOrder) {
|
|
61
|
+
latestClosingAbove = candidate.descriptor;
|
|
62
|
+
latestClosingAboveOrder = closeOrder;
|
|
60
63
|
}
|
|
61
64
|
}
|
|
62
65
|
if (nextDescriptor === undefined) {
|
|
63
|
-
nextDescriptor =
|
|
66
|
+
nextDescriptor = latestClosingAbove;
|
|
64
67
|
}
|
|
65
68
|
const previousDescriptor = findPreviousDescriptor(scenes, sceneIndex, isRouteClosing);
|
|
66
69
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["findPreviousDescriptor","scenes","sceneIndex","isRouteClosing","firstClosingBelow","i","candidate","route","key","descriptor","undefined","resolveSceneNeighbors","current","previousDescriptor","nextDescriptor","
|
|
1
|
+
{"version":3,"names":["findPreviousDescriptor","scenes","sceneIndex","isRouteClosing","firstClosingBelow","i","candidate","route","key","descriptor","undefined","resolveSceneNeighbors","getRouteClosingOrder","current","previousDescriptor","nextDescriptor","latestClosingAbove","latestClosingAboveOrder","Number","NEGATIVE_INFINITY","length","closeOrder"],"sourceRoot":"../../../../../src","sources":["shared/utils/navigation/resolve-scene-neighbors.ts"],"mappings":";;;;;;AAQA,MAAMA,sBAAsB,GAAGA,CAC9BC,MAAW,EACXC,UAAkB,EAClBC,cAA8B,KACG;EACjC,IAAIC,iBAA8C;EAElD,KAAK,IAAIC,CAAC,GAAGH,UAAU,GAAG,CAAC,EAAEG,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;IACzC,MAAMC,SAAS,GAAGL,MAAM,CAACI,CAAC,CAAC;IAC3B,IAAI,CAACC,SAAS,EAAE;IAEhB,IAAI,CAACH,cAAc,CAACG,SAAS,CAACC,KAAK,CAACC,GAAG,CAAC,EAAE;MACzC,OAAOF,SAAS,CAACG,UAAU;IAC5B;IAEA,IAAIL,iBAAiB,KAAKM,SAAS,EAAE;MACpCN,iBAAiB,GAAGE,SAAS,CAACG,UAAU;IACzC;EACD;EAEA,OAAOL,iBAAiB;AACzB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASO,qBAAqBA,CACpCV,MAAW,EACXC,UAAkB,EAClBC,cAA8B,EAC9BS,oBAA2C,EAI1C;EACD,MAAMC,OAAO,GAAGZ,MAAM,CAACC,UAAU,CAAC;EAClC,IAAI,CAACW,OAAO,EAAE;IACb,OAAO;MACNC,kBAAkB,EAAEJ,SAAS;MAC7BK,cAAc,EAAEL;IACjB,CAAC;EACF;EAEA,IAAIP,cAAc,CAACU,OAAO,CAACN,KAAK,CAACC,GAAG,CAAC,EAAE;IACtC,OAAO;MACNM,kBAAkB,EAAEd,sBAAsB,CACzCC,MAAM,EACNC,UAAU,EACVC,cACD,CAAC;MACDY,cAAc,EAAEL;IACjB,CAAC;EACF;EAEA,IAAIK,cAA2C;EAC/C,IAAIC,kBAA+C;EACnD,IAAIC,uBAAuB,GAAGC,MAAM,CAACC,iBAAiB;EAEtD,KAAK,IAAId,CAAC,GAAGH,UAAU,GAAG,CAAC,EAAEG,CAAC,GAAGJ,MAAM,CAACmB,MAAM,EAAEf,CAAC,EAAE,EAAE;IACpD,MAAMC,SAAS,GAAGL,MAAM,CAACI,CAAC,CAAC;IAC3B,IAAI,CAACC,SAAS,EAAE;IAEhB,IAAI,CAACH,cAAc,CAACG,SAAS,CAACC,KAAK,CAACC,GAAG,CAAC,EAAE;MACzCO,cAAc,GAAGT,SAAS,CAACG,UAAU;MACrC;IACD;IAEA,MAAMY,UAAU,GAAGT,oBAAoB,GAAGN,SAAS,CAACC,KAAK,CAACC,GAAG,CAAC,IAAIH,CAAC;IACnE,IAAIgB,UAAU,IAAIJ,uBAAuB,EAAE;MAC1CD,kBAAkB,GAAGV,SAAS,CAACG,UAAU;MACzCQ,uBAAuB,GAAGI,UAAU;IACrC;EACD;EAEA,IAAIN,cAAc,KAAKL,SAAS,EAAE;IACjCK,cAAc,GAAGC,kBAAkB;EACpC;EAEA,MAAMF,kBAAkB,GAAGd,sBAAsB,CAChDC,MAAM,EACNC,UAAU,EACVC,cACD,CAAC;EAED,OAAO;IACNW,kBAAkB;IAClBC;EACD,CAAC;AACF","ignoreList":[]}
|
|
@@ -5,6 +5,23 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.syncRoutesWithRemoved = void 0;
|
|
7
7
|
var _composeDescriptors = require("./compose-descriptors");
|
|
8
|
+
const addClosingRouteKey = (closingRouteKeys, key) => {
|
|
9
|
+
closingRouteKeys.add(key);
|
|
10
|
+
};
|
|
11
|
+
const deleteClosingRouteKey = (closingRouteKeys, key) => {
|
|
12
|
+
if (closingRouteKeys instanceof Set) {
|
|
13
|
+
closingRouteKeys.delete(key);
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
closingRouteKeys.remove(key);
|
|
17
|
+
};
|
|
18
|
+
const getClosingRouteKeyValues = closingRouteKeys => {
|
|
19
|
+
if (closingRouteKeys instanceof Set) {
|
|
20
|
+
return closingRouteKeys;
|
|
21
|
+
}
|
|
22
|
+
return closingRouteKeys.ref.current;
|
|
23
|
+
};
|
|
24
|
+
|
|
8
25
|
/**
|
|
9
26
|
* Synchronizes routes while handling removed routes that may still be animating out.
|
|
10
27
|
* This manages the complex logic of keeping closing routes visible during transitions.
|
|
@@ -37,28 +54,28 @@ const syncRoutesWithRemoved = ({
|
|
|
37
54
|
const previousRouteStillPresent = nextRoutes.some(route => route.key === previousFocusedRoute.key);
|
|
38
55
|
if (nextRouteWasPresent && !previousRouteStillPresent) {
|
|
39
56
|
// Previous route was removed, mark as closing
|
|
40
|
-
closingRouteKeys
|
|
57
|
+
addClosingRouteKey(closingRouteKeys, previousFocusedRoute.key);
|
|
41
58
|
derivedRoutes.push(previousFocusedRoute);
|
|
42
59
|
} else {
|
|
43
60
|
// Next route is now active, not closing
|
|
44
|
-
closingRouteKeys
|
|
61
|
+
deleteClosingRouteKey(closingRouteKeys, nextFocusedRoute.key);
|
|
45
62
|
if (!previousRouteStillPresent) {
|
|
46
63
|
// Previous route needs to be inserted for transition
|
|
47
|
-
closingRouteKeys
|
|
64
|
+
deleteClosingRouteKey(closingRouteKeys, previousFocusedRoute.key);
|
|
48
65
|
const insertIndex = Math.max(derivedRoutes.length - 1, 0);
|
|
49
66
|
derivedRoutes.splice(insertIndex, 0, previousFocusedRoute);
|
|
50
67
|
}
|
|
51
68
|
}
|
|
52
69
|
} else if (nextFocusedRoute) {
|
|
53
70
|
// Same focused route, ensure it's not marked as closing
|
|
54
|
-
closingRouteKeys
|
|
71
|
+
deleteClosingRouteKey(closingRouteKeys, nextFocusedRoute.key);
|
|
55
72
|
}
|
|
56
73
|
|
|
57
74
|
// Clean up closing keys that are no longer in the route list
|
|
58
75
|
const activeKeys = new Set(derivedRoutes.map(route => route.key));
|
|
59
|
-
for (const key of Array.from(closingRouteKeys
|
|
76
|
+
for (const key of Array.from(getClosingRouteKeyValues(closingRouteKeys))) {
|
|
60
77
|
if (!activeKeys.has(key)) {
|
|
61
|
-
closingRouteKeys
|
|
78
|
+
deleteClosingRouteKey(closingRouteKeys, key);
|
|
62
79
|
}
|
|
63
80
|
}
|
|
64
81
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_composeDescriptors","require","syncRoutesWithRemoved","prevRoutes","prevDescriptors","nextRoutes","nextDescriptors","
|
|
1
|
+
{"version":3,"names":["_composeDescriptors","require","addClosingRouteKey","closingRouteKeys","key","add","deleteClosingRouteKey","Set","delete","remove","getClosingRouteKeyValues","ref","current","syncRoutesWithRemoved","prevRoutes","prevDescriptors","nextRoutes","nextDescriptors","length","clear","routes","descriptors","derivedRoutes","slice","previousFocusedRoute","nextFocusedRoute","nextRouteWasPresent","some","route","previousRouteStillPresent","push","insertIndex","Math","max","splice","activeKeys","map","Array","from","has","composeDescriptors","exports"],"sourceRoot":"../../../../../src","sources":["shared/utils/navigation/sync-routes-with-removed.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getVisibilityBlockOffset = void 0;
|
|
7
|
+
const getVisibilityBlockOffset = viewportHeight => {
|
|
8
|
+
"worklet";
|
|
9
|
+
|
|
10
|
+
return viewportHeight * 2 + 1;
|
|
11
|
+
};
|
|
12
|
+
exports.getVisibilityBlockOffset = getVisibilityBlockOffset;
|
|
13
|
+
//# sourceMappingURL=visibility-block-offset.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["getVisibilityBlockOffset","viewportHeight","exports"],"sourceRoot":"../../../../src","sources":["shared/utils/visibility-block-offset.ts"],"mappings":";;;;;;AAAO,MAAMA,wBAAwB,GAAIC,cAAsB,IAAa;EAC3E,SAAS;;EACT,OAAOA,cAAc,GAAG,CAAC,GAAG,CAAC;AAC9B,CAAC;AAACC,OAAA,CAAAF,wBAAA,GAAAA,wBAAA","ignoreList":[]}
|