react-native-screen-transitions 3.4.0-alpha.0 → 3.4.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +65 -2
- package/lib/commonjs/shared/animation/snap-to.js +5 -1
- package/lib/commonjs/shared/animation/snap-to.js.map +1 -1
- package/lib/commonjs/shared/components/create-boundary-component/utils/build-boundary-match-key.js +5 -10
- package/lib/commonjs/shared/components/create-boundary-component/utils/build-boundary-match-key.js.map +1 -1
- package/lib/commonjs/shared/components/overlay/helpers/get-active-overlay.js +2 -2
- package/lib/commonjs/shared/components/overlay/helpers/get-active-overlay.js.map +1 -1
- package/lib/commonjs/shared/components/overlay/index.js +1 -3
- package/lib/commonjs/shared/components/overlay/index.js.map +1 -1
- package/lib/commonjs/shared/components/overlay/variations/overlay-host.js +2 -16
- package/lib/commonjs/shared/components/overlay/variations/overlay-host.js.map +1 -1
- package/lib/commonjs/shared/components/scene-view.js +2 -4
- package/lib/commonjs/shared/components/scene-view.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/backdrop.js +9 -6
- package/lib/commonjs/shared/components/screen-container/layers/backdrop.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/content.js +47 -55
- package/lib/commonjs/shared/components/screen-container/layers/content.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/maybe-masked-navigation-container.js +77 -0
- package/lib/commonjs/shared/components/screen-container/layers/maybe-masked-navigation-container.js.map +1 -0
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-close-transition/index.js.map +1 -1
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-open-transition.js +17 -4
- package/lib/commonjs/shared/components/screen-lifecycle/hooks/use-open-transition.js.map +1 -1
- package/lib/commonjs/shared/constants.js +6 -2
- package/lib/commonjs/shared/constants.js.map +1 -1
- package/lib/commonjs/shared/hooks/gestures/resolve-screen-gesture-target.js +49 -0
- package/lib/commonjs/shared/hooks/gestures/resolve-screen-gesture-target.js.map +1 -0
- package/lib/commonjs/shared/hooks/gestures/types.js +2 -0
- package/lib/commonjs/shared/hooks/gestures/types.js.map +1 -0
- package/lib/commonjs/shared/hooks/gestures/use-screen-gesture.js +7 -3
- package/lib/commonjs/shared/hooks/gestures/use-screen-gesture.js.map +1 -1
- package/lib/commonjs/shared/hooks/navigation/use-stack.js.map +1 -1
- package/lib/commonjs/shared/index.js +15 -3
- package/lib/commonjs/shared/index.js.map +1 -1
- package/lib/commonjs/shared/providers/gestures/handlers/use-handlers.js +55 -18
- package/lib/commonjs/shared/providers/gestures/handlers/use-handlers.js.map +1 -1
- package/lib/commonjs/shared/providers/gestures/helpers/gesture-snap-points.js +44 -0
- package/lib/commonjs/shared/providers/gestures/helpers/gesture-snap-points.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/animation/animation.provider.js +31 -17
- package/lib/commonjs/shared/providers/screen/animation/animation.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/derivations.js +1 -9
- package/lib/commonjs/shared/providers/screen/animation/helpers/derivations.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js +11 -6
- package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/resolve-screen-animation-target.js +33 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/resolve-screen-animation-target.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/animation/types.js +2 -0
- package/lib/commonjs/shared/providers/screen/animation/types.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/animation/use-screen-animation.js +9 -3
- package/lib/commonjs/shared/providers/screen/animation/use-screen-animation.js.map +1 -1
- package/lib/commonjs/shared/providers/stack/direct.provider.js +1 -1
- package/lib/commonjs/shared/providers/stack/direct.provider.js.map +1 -1
- package/lib/commonjs/shared/providers/stack/helpers/use-processed-routes.js +1 -1
- package/lib/commonjs/shared/providers/stack/helpers/use-processed-routes.js.map +1 -1
- package/lib/commonjs/shared/stores/animation.store.js +8 -2
- package/lib/commonjs/shared/stores/animation.store.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/resolver.js +7 -0
- package/lib/commonjs/shared/stores/bounds/internals/resolver.js.map +1 -1
- package/lib/commonjs/shared/utils/animation/animate-to-progress.js +6 -0
- package/lib/commonjs/shared/utils/animation/animate-to-progress.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/compute-bounds-styles.js +24 -9
- package/lib/commonjs/shared/utils/bounds/helpers/compute-bounds-styles.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/geometry.js +3 -2
- package/lib/commonjs/shared/utils/bounds/helpers/geometry.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/interpolators.js +3 -2
- package/lib/commonjs/shared/utils/bounds/helpers/interpolators.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/link-accessor.js +2 -2
- package/lib/commonjs/shared/utils/bounds/helpers/link-accessor.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/resolve-bound-tag.js +6 -5
- package/lib/commonjs/shared/utils/bounds/helpers/resolve-bound-tag.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/style-composers.js +4 -3
- package/lib/commonjs/shared/utils/bounds/helpers/style-composers.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/index.js +3 -3
- package/lib/commonjs/shared/utils/bounds/index.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/zoom/accessor.js +54 -0
- package/lib/commonjs/shared/utils/bounds/zoom/accessor.js.map +1 -0
- package/lib/commonjs/shared/utils/bounds/zoom/build.js +541 -0
- package/lib/commonjs/shared/utils/bounds/zoom/build.js.map +1 -0
- package/lib/commonjs/shared/utils/bounds/zoom/config.js +118 -0
- package/lib/commonjs/shared/utils/bounds/zoom/config.js.map +1 -0
- package/lib/commonjs/shared/utils/bounds/zoom/index.js +20 -0
- package/lib/commonjs/shared/utils/bounds/zoom/index.js.map +1 -0
- package/lib/commonjs/shared/utils/bounds/zoom/types.js.map +1 -0
- package/lib/commonjs/shared/utils/gesture/validate-snap-points.js +11 -5
- package/lib/commonjs/shared/utils/gesture/validate-snap-points.js.map +1 -1
- package/lib/commonjs/shared/utils/overlay/visibility.js +2 -9
- package/lib/commonjs/shared/utils/overlay/visibility.js.map +1 -1
- package/lib/module/shared/animation/snap-to.js +5 -1
- package/lib/module/shared/animation/snap-to.js.map +1 -1
- package/lib/module/shared/components/create-boundary-component/utils/build-boundary-match-key.js +5 -10
- package/lib/module/shared/components/create-boundary-component/utils/build-boundary-match-key.js.map +1 -1
- package/lib/module/shared/components/overlay/helpers/get-active-overlay.js +3 -3
- package/lib/module/shared/components/overlay/helpers/get-active-overlay.js.map +1 -1
- package/lib/module/shared/components/overlay/index.js +1 -3
- package/lib/module/shared/components/overlay/index.js.map +1 -1
- package/lib/module/shared/components/overlay/variations/overlay-host.js +3 -17
- package/lib/module/shared/components/overlay/variations/overlay-host.js.map +1 -1
- package/lib/module/shared/components/scene-view.js +3 -5
- package/lib/module/shared/components/scene-view.js.map +1 -1
- package/lib/module/shared/components/screen-container/layers/backdrop.js +9 -6
- package/lib/module/shared/components/screen-container/layers/backdrop.js.map +1 -1
- package/lib/module/shared/components/screen-container/layers/content.js +52 -60
- package/lib/module/shared/components/screen-container/layers/content.js.map +1 -1
- package/lib/module/shared/components/screen-container/layers/maybe-masked-navigation-container.js +72 -0
- package/lib/module/shared/components/screen-container/layers/maybe-masked-navigation-container.js.map +1 -0
- package/lib/module/shared/components/screen-lifecycle/hooks/use-close-transition/index.js.map +1 -1
- package/lib/module/shared/components/screen-lifecycle/hooks/use-open-transition.js +17 -4
- package/lib/module/shared/components/screen-lifecycle/hooks/use-open-transition.js.map +1 -1
- package/lib/module/shared/constants.js +6 -2
- package/lib/module/shared/constants.js.map +1 -1
- package/lib/module/shared/hooks/gestures/resolve-screen-gesture-target.js +45 -0
- package/lib/module/shared/hooks/gestures/resolve-screen-gesture-target.js.map +1 -0
- package/lib/module/shared/hooks/gestures/types.js +2 -0
- package/lib/module/shared/hooks/gestures/types.js.map +1 -0
- package/lib/module/shared/hooks/gestures/use-screen-gesture.js +7 -4
- package/lib/module/shared/hooks/gestures/use-screen-gesture.js.map +1 -1
- package/lib/module/shared/hooks/navigation/use-stack.js.map +1 -1
- package/lib/module/shared/index.js +1 -2
- package/lib/module/shared/index.js.map +1 -1
- package/lib/module/shared/providers/gestures/handlers/use-handlers.js +55 -18
- package/lib/module/shared/providers/gestures/handlers/use-handlers.js.map +1 -1
- package/lib/module/shared/providers/gestures/helpers/gesture-snap-points.js +38 -0
- package/lib/module/shared/providers/gestures/helpers/gesture-snap-points.js.map +1 -0
- package/lib/module/shared/providers/screen/animation/animation.provider.js +30 -15
- package/lib/module/shared/providers/screen/animation/animation.provider.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/derivations.js +1 -9
- package/lib/module/shared/providers/screen/animation/helpers/derivations.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/pipeline.js +11 -6
- package/lib/module/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/resolve-screen-animation-target.js +29 -0
- package/lib/module/shared/providers/screen/animation/helpers/resolve-screen-animation-target.js.map +1 -0
- package/lib/module/shared/providers/screen/animation/index.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/types.js +2 -0
- package/lib/module/shared/providers/screen/animation/types.js.map +1 -0
- package/lib/module/shared/providers/screen/animation/use-screen-animation.js +9 -3
- package/lib/module/shared/providers/screen/animation/use-screen-animation.js.map +1 -1
- package/lib/module/shared/providers/stack/direct.provider.js +2 -2
- package/lib/module/shared/providers/stack/direct.provider.js.map +1 -1
- package/lib/module/shared/providers/stack/helpers/use-processed-routes.js +2 -2
- package/lib/module/shared/providers/stack/helpers/use-processed-routes.js.map +1 -1
- package/lib/module/shared/stores/animation.store.js +8 -2
- package/lib/module/shared/stores/animation.store.js.map +1 -1
- package/lib/module/shared/stores/bounds/internals/resolver.js +7 -0
- package/lib/module/shared/stores/bounds/internals/resolver.js.map +1 -1
- package/lib/module/shared/utils/animation/animate-to-progress.js +6 -0
- package/lib/module/shared/utils/animation/animate-to-progress.js.map +1 -1
- package/lib/module/shared/utils/bounds/helpers/compute-bounds-styles.js +24 -9
- package/lib/module/shared/utils/bounds/helpers/compute-bounds-styles.js.map +1 -1
- package/lib/module/shared/utils/bounds/helpers/geometry.js +3 -2
- package/lib/module/shared/utils/bounds/helpers/geometry.js.map +1 -1
- package/lib/module/shared/utils/bounds/helpers/interpolators.js +3 -2
- package/lib/module/shared/utils/bounds/helpers/interpolators.js.map +1 -1
- package/lib/module/shared/utils/bounds/helpers/link-accessor.js +2 -2
- package/lib/module/shared/utils/bounds/helpers/link-accessor.js.map +1 -1
- package/lib/module/shared/utils/bounds/helpers/resolve-bound-tag.js +6 -5
- package/lib/module/shared/utils/bounds/helpers/resolve-bound-tag.js.map +1 -1
- package/lib/module/shared/utils/bounds/helpers/style-composers.js +4 -3
- package/lib/module/shared/utils/bounds/helpers/style-composers.js.map +1 -1
- package/lib/module/shared/utils/bounds/index.js +3 -3
- package/lib/module/shared/utils/bounds/index.js.map +1 -1
- package/lib/module/shared/utils/bounds/zoom/accessor.js +49 -0
- package/lib/module/shared/utils/bounds/zoom/accessor.js.map +1 -0
- package/lib/module/shared/utils/bounds/zoom/build.js +536 -0
- package/lib/module/shared/utils/bounds/zoom/build.js.map +1 -0
- package/lib/module/shared/utils/bounds/zoom/config.js +112 -0
- package/lib/module/shared/utils/bounds/zoom/config.js.map +1 -0
- package/lib/module/shared/utils/bounds/zoom/index.js +5 -0
- package/lib/module/shared/utils/bounds/zoom/index.js.map +1 -0
- package/lib/module/shared/utils/bounds/zoom/types.js.map +1 -0
- package/lib/module/shared/utils/gesture/validate-snap-points.js +11 -5
- package/lib/module/shared/utils/gesture/validate-snap-points.js.map +1 -1
- package/lib/module/shared/utils/overlay/visibility.js +1 -7
- package/lib/module/shared/utils/overlay/visibility.js.map +1 -1
- package/lib/typescript/shared/animation/snap-to.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-boundary-component/utils/build-boundary-match-key.d.ts +0 -1
- package/lib/typescript/shared/components/create-boundary-component/utils/build-boundary-match-key.d.ts.map +1 -1
- package/lib/typescript/shared/components/overlay/helpers/get-active-overlay.d.ts +1 -1
- package/lib/typescript/shared/components/overlay/index.d.ts +0 -2
- package/lib/typescript/shared/components/overlay/index.d.ts.map +1 -1
- package/lib/typescript/shared/components/overlay/variations/overlay-host.d.ts.map +1 -1
- package/lib/typescript/shared/components/scene-view.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-container/layers/backdrop.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-container/layers/content.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-container/layers/maybe-masked-navigation-container.d.ts +7 -0
- package/lib/typescript/shared/components/screen-container/layers/maybe-masked-navigation-container.d.ts.map +1 -0
- package/lib/typescript/shared/components/screen-lifecycle/hooks/use-close-transition/index.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-lifecycle/hooks/use-open-transition.d.ts.map +1 -1
- package/lib/typescript/shared/constants.d.ts +3 -0
- package/lib/typescript/shared/constants.d.ts.map +1 -1
- package/lib/typescript/shared/hooks/gestures/resolve-screen-gesture-target.d.ts +10 -0
- package/lib/typescript/shared/hooks/gestures/resolve-screen-gesture-target.d.ts.map +1 -0
- package/lib/typescript/shared/hooks/gestures/types.d.ts +4 -0
- package/lib/typescript/shared/hooks/gestures/types.d.ts.map +1 -0
- package/lib/typescript/shared/hooks/gestures/use-screen-gesture.d.ts +4 -2
- package/lib/typescript/shared/hooks/gestures/use-screen-gesture.d.ts.map +1 -1
- package/lib/typescript/shared/hooks/navigation/use-stack.d.ts +1 -2
- package/lib/typescript/shared/hooks/navigation/use-stack.d.ts.map +1 -1
- package/lib/typescript/shared/index.d.ts +16 -17
- package/lib/typescript/shared/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/gestures/handlers/use-handlers.d.ts.map +1 -1
- package/lib/typescript/shared/providers/gestures/helpers/gesture-snap-points.d.ts +18 -0
- package/lib/typescript/shared/providers/gestures/helpers/gesture-snap-points.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/animation/animation.provider.d.ts +6 -3
- package/lib/typescript/shared/providers/screen/animation/animation.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/derivations.d.ts +0 -2
- package/lib/typescript/shared/providers/screen/animation/helpers/derivations.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/pipeline.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/resolve-screen-animation-target.d.ts +11 -0
- package/lib/typescript/shared/providers/screen/animation/helpers/resolve-screen-animation-target.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/animation/index.d.ts +1 -1
- package/lib/typescript/shared/providers/screen/animation/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/types.d.ts +4 -0
- package/lib/typescript/shared/providers/screen/animation/types.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/animation/use-screen-animation.d.ts +5 -1
- package/lib/typescript/shared/providers/screen/animation/use-screen-animation.d.ts.map +1 -1
- package/lib/typescript/shared/providers/stack/direct.provider.d.ts.map +1 -1
- package/lib/typescript/shared/stores/animation.store.d.ts +4 -0
- package/lib/typescript/shared/stores/animation.store.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/internals/resolver.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/types.d.ts +2 -0
- package/lib/typescript/shared/stores/bounds/types.d.ts.map +1 -1
- package/lib/typescript/shared/types/animation.types.d.ts +26 -51
- package/lib/typescript/shared/types/animation.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/bounds.types.d.ts +46 -9
- package/lib/typescript/shared/types/bounds.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/index.d.ts +3 -3
- package/lib/typescript/shared/types/index.d.ts.map +1 -1
- package/lib/typescript/shared/types/overlay.types.d.ts +1 -22
- package/lib/typescript/shared/types/overlay.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/screen.types.d.ts +16 -15
- package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
- package/lib/typescript/shared/utils/animation/animate-to-progress.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/helpers/build-bounds-options.d.ts +2 -2
- package/lib/typescript/shared/utils/bounds/helpers/build-bounds-options.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/helpers/compute-bounds-styles.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/helpers/geometry.d.ts +3 -2
- package/lib/typescript/shared/utils/bounds/helpers/geometry.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/helpers/interpolators.d.ts +3 -2
- package/lib/typescript/shared/utils/bounds/helpers/interpolators.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/helpers/link-accessor.d.ts +3 -2
- package/lib/typescript/shared/utils/bounds/helpers/link-accessor.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/helpers/resolve-bound-tag.d.ts +2 -1
- package/lib/typescript/shared/utils/bounds/helpers/resolve-bound-tag.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/helpers/style-composers.d.ts +4 -3
- package/lib/typescript/shared/utils/bounds/helpers/style-composers.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/index.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/types/options.d.ts +5 -4
- package/lib/typescript/shared/utils/bounds/types/options.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/zoom/accessor.d.ts +17 -0
- package/lib/typescript/shared/utils/bounds/zoom/accessor.d.ts.map +1 -0
- package/lib/typescript/shared/utils/bounds/zoom/build.d.ts +4 -0
- package/lib/typescript/shared/utils/bounds/zoom/build.d.ts.map +1 -0
- package/lib/typescript/shared/utils/bounds/zoom/config.d.ts +43 -0
- package/lib/typescript/shared/utils/bounds/zoom/config.d.ts.map +1 -0
- package/lib/typescript/shared/utils/bounds/zoom/index.d.ts +3 -0
- package/lib/typescript/shared/utils/bounds/zoom/index.d.ts.map +1 -0
- package/lib/typescript/shared/utils/bounds/zoom/types.d.ts +17 -0
- package/lib/typescript/shared/utils/bounds/zoom/types.d.ts.map +1 -0
- package/lib/typescript/shared/utils/gesture/validate-snap-points.d.ts +5 -3
- package/lib/typescript/shared/utils/gesture/validate-snap-points.d.ts.map +1 -1
- package/lib/typescript/shared/utils/overlay/visibility.d.ts +1 -4
- package/lib/typescript/shared/utils/overlay/visibility.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/shared/animation/snap-to.ts +12 -1
- package/src/shared/components/create-boundary-component/utils/build-boundary-match-key.ts +2 -14
- package/src/shared/components/overlay/helpers/get-active-overlay.ts +3 -3
- package/src/shared/components/overlay/index.ts +0 -2
- package/src/shared/components/overlay/variations/overlay-host.tsx +2 -16
- package/src/shared/components/scene-view.tsx +0 -3
- package/src/shared/components/screen-container/layers/backdrop.tsx +25 -6
- package/src/shared/components/screen-container/layers/content.tsx +80 -77
- package/src/shared/components/screen-container/layers/maybe-masked-navigation-container.tsx +93 -0
- package/src/shared/components/screen-lifecycle/hooks/use-close-transition/index.ts +1 -2
- package/src/shared/components/screen-lifecycle/hooks/use-open-transition.ts +20 -6
- package/src/shared/constants.ts +6 -2
- package/src/shared/hooks/gestures/resolve-screen-gesture-target.ts +66 -0
- package/src/shared/hooks/gestures/types.ts +5 -0
- package/src/shared/hooks/gestures/use-screen-gesture.ts +10 -3
- package/src/shared/hooks/navigation/use-stack.tsx +1 -2
- package/src/shared/index.ts +14 -16
- package/src/shared/providers/gestures/handlers/use-handlers.ts +67 -24
- package/src/shared/providers/gestures/helpers/gesture-snap-points.ts +72 -0
- package/src/shared/providers/screen/animation/animation.provider.tsx +46 -10
- package/src/shared/providers/screen/animation/helpers/derivations.ts +0 -8
- package/src/shared/providers/screen/animation/helpers/pipeline.ts +26 -5
- package/src/shared/providers/screen/animation/helpers/resolve-screen-animation-target.ts +44 -0
- package/src/shared/providers/screen/animation/index.tsx +4 -1
- package/src/shared/providers/screen/animation/types.ts +5 -0
- package/src/shared/providers/screen/animation/use-screen-animation.tsx +16 -3
- package/src/shared/providers/stack/direct.provider.tsx +2 -5
- package/src/shared/providers/stack/helpers/use-processed-routes.ts +2 -2
- package/src/shared/stores/animation.store.ts +13 -1
- package/src/shared/stores/bounds/internals/resolver.ts +13 -1
- package/src/shared/stores/bounds/types.ts +2 -0
- package/src/shared/types/animation.types.ts +25 -58
- package/src/shared/types/bounds.types.ts +30 -10
- package/src/shared/types/index.ts +2 -15
- package/src/shared/types/overlay.types.ts +1 -28
- package/src/shared/types/screen.types.ts +17 -16
- package/src/shared/utils/animation/animate-to-progress.ts +7 -0
- package/src/shared/utils/bounds/helpers/build-bounds-options.ts +2 -2
- package/src/shared/utils/bounds/helpers/compute-bounds-styles.ts +34 -8
- package/src/shared/utils/bounds/helpers/geometry.ts +3 -2
- package/src/shared/utils/bounds/helpers/interpolators.ts +8 -6
- package/src/shared/utils/bounds/helpers/link-accessor.ts +10 -6
- package/src/shared/utils/bounds/helpers/resolve-bound-tag.ts +9 -6
- package/src/shared/utils/bounds/helpers/style-composers.ts +4 -3
- package/src/shared/utils/bounds/index.ts +6 -8
- package/src/shared/utils/bounds/types/options.ts +6 -4
- package/src/shared/utils/bounds/zoom/accessor.ts +69 -0
- package/src/shared/utils/bounds/zoom/build.ts +705 -0
- package/src/shared/utils/bounds/zoom/config.ts +179 -0
- package/src/shared/utils/bounds/zoom/index.ts +2 -0
- package/src/shared/utils/bounds/zoom/types.ts +22 -0
- package/src/shared/utils/gesture/validate-snap-points.ts +20 -8
- package/src/shared/utils/overlay/visibility.ts +1 -16
- package/lib/commonjs/shared/components/overlay/variations/screen-overlay.js +0 -64
- package/lib/commonjs/shared/components/overlay/variations/screen-overlay.js.map +0 -1
- package/lib/commonjs/shared/utils/bounds/helpers/math.js +0 -132
- package/lib/commonjs/shared/utils/bounds/helpers/math.js.map +0 -1
- package/lib/commonjs/shared/utils/bounds/helpers/navigation-accessor.js +0 -45
- package/lib/commonjs/shared/utils/bounds/helpers/navigation-accessor.js.map +0 -1
- package/lib/commonjs/shared/utils/bounds/sugar/navigation/helpers.js +0 -60
- package/lib/commonjs/shared/utils/bounds/sugar/navigation/helpers.js.map +0 -1
- package/lib/commonjs/shared/utils/bounds/sugar/navigation/index.js +0 -20
- package/lib/commonjs/shared/utils/bounds/sugar/navigation/index.js.map +0 -1
- package/lib/commonjs/shared/utils/bounds/sugar/navigation/types.js.map +0 -1
- package/lib/commonjs/shared/utils/bounds/sugar/navigation/zoom.js +0 -295
- package/lib/commonjs/shared/utils/bounds/sugar/navigation/zoom.js.map +0 -1
- package/lib/module/shared/components/overlay/variations/screen-overlay.js +0 -61
- package/lib/module/shared/components/overlay/variations/screen-overlay.js.map +0 -1
- package/lib/module/shared/utils/bounds/helpers/math.js +0 -115
- package/lib/module/shared/utils/bounds/helpers/math.js.map +0 -1
- package/lib/module/shared/utils/bounds/helpers/navigation-accessor.js +0 -40
- package/lib/module/shared/utils/bounds/helpers/navigation-accessor.js.map +0 -1
- package/lib/module/shared/utils/bounds/sugar/navigation/helpers.js +0 -54
- package/lib/module/shared/utils/bounds/sugar/navigation/helpers.js.map +0 -1
- package/lib/module/shared/utils/bounds/sugar/navigation/index.js +0 -15
- package/lib/module/shared/utils/bounds/sugar/navigation/index.js.map +0 -1
- package/lib/module/shared/utils/bounds/sugar/navigation/types.js.map +0 -1
- package/lib/module/shared/utils/bounds/sugar/navigation/zoom.js +0 -290
- package/lib/module/shared/utils/bounds/sugar/navigation/zoom.js.map +0 -1
- package/lib/typescript/shared/components/overlay/variations/screen-overlay.d.ts +0 -10
- package/lib/typescript/shared/components/overlay/variations/screen-overlay.d.ts.map +0 -1
- package/lib/typescript/shared/utils/bounds/helpers/math.d.ts +0 -38
- package/lib/typescript/shared/utils/bounds/helpers/math.d.ts.map +0 -1
- package/lib/typescript/shared/utils/bounds/helpers/navigation-accessor.d.ts +0 -16
- package/lib/typescript/shared/utils/bounds/helpers/navigation-accessor.d.ts.map +0 -1
- package/lib/typescript/shared/utils/bounds/sugar/navigation/helpers.d.ts +0 -17
- package/lib/typescript/shared/utils/bounds/sugar/navigation/helpers.d.ts.map +0 -1
- package/lib/typescript/shared/utils/bounds/sugar/navigation/index.d.ts +0 -3
- package/lib/typescript/shared/utils/bounds/sugar/navigation/index.d.ts.map +0 -1
- package/lib/typescript/shared/utils/bounds/sugar/navigation/types.d.ts +0 -18
- package/lib/typescript/shared/utils/bounds/sugar/navigation/types.d.ts.map +0 -1
- package/lib/typescript/shared/utils/bounds/sugar/navigation/zoom.d.ts +0 -4
- package/lib/typescript/shared/utils/bounds/sugar/navigation/zoom.d.ts.map +0 -1
- package/src/shared/components/overlay/variations/screen-overlay.tsx +0 -68
- package/src/shared/utils/bounds/helpers/math.ts +0 -161
- package/src/shared/utils/bounds/helpers/navigation-accessor.ts +0 -61
- package/src/shared/utils/bounds/sugar/navigation/helpers.ts +0 -74
- package/src/shared/utils/bounds/sugar/navigation/index.ts +0 -14
- package/src/shared/utils/bounds/sugar/navigation/types.ts +0 -26
- package/src/shared/utils/bounds/sugar/navigation/zoom.ts +0 -348
- /package/lib/commonjs/shared/utils/bounds/{sugar/navigation → zoom}/types.js +0 -0
- /package/lib/module/shared/utils/bounds/{sugar/navigation → zoom}/types.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_bounds","require","DEFAULT_DRAG_RESISTANCE","DEFAULT_DRAG_DIRECTIONAL_SCALE_MIN","DEFAULT_DRAG_DIRECTIONAL_SCALE_MAX","DEFAULT_MASK_BORDER_RADIUS","ZERO_OUTSET","Object","freeze","top","right","bottom","left","toNumber","value","fallback","exports","isFiniteNumber","Number","isFinite","normalizeOutset","normalizeZoomOptions","zoomOptions","resolvedMaskRadius","mask","borderRadius","maskBorderRadius","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","borderCurve","outset","motion","dragResistance","dragDirectionalScaleMin","dragDirectionalScaleMax","resolveZoomConfig","id","group","currentRouteKey","resolveTag","defaultAnchor","resolvedTag","boundaryConfig","BoundStore","getBoundaryConfig","effectiveConfig","scopedLink","getActiveLink","link","source","screenKey","sharedOptions","anchor","scaleMode","explicitTarget","target","resolvedZoomOptions"],"sourceRoot":"../../../../../../src","sources":["shared/utils/bounds/zoom/config.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "buildZoomStyles", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _build.buildZoomStyles;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "createZoomAccessor", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _accessor.createZoomAccessor;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
var _accessor = require("./accessor");
|
|
19
|
+
var _build = require("./build");
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_accessor","require","_build"],"sourceRoot":"../../../../../../src","sources":["shared/utils/bounds/zoom/index.ts"],"mappings":";;;;;;;;;;;;;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../../../../src","sources":["shared/utils/bounds/zoom/types.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -6,13 +6,13 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.sanitizeSnapPoints = sanitizeSnapPoints;
|
|
7
7
|
exports.validateSnapPoints = void 0;
|
|
8
8
|
/**
|
|
9
|
-
* Filters snap points to only valid, finite values.
|
|
9
|
+
* Filters snap points to only valid, finite numeric values.
|
|
10
10
|
* Excludes zero (dismiss) when canDismiss is false.
|
|
11
11
|
*/
|
|
12
12
|
function sanitizeSnapPoints(snapPoints, canDismiss) {
|
|
13
13
|
"worklet";
|
|
14
14
|
|
|
15
|
-
return snapPoints.filter(point => canDismiss ? Number.isFinite(point) : Number.isFinite(point) && point > 0);
|
|
15
|
+
return snapPoints.filter(point => typeof point === "number" && (canDismiss ? Number.isFinite(point) : Number.isFinite(point) && point > 0));
|
|
16
16
|
}
|
|
17
17
|
const validateSnapPoints = ({
|
|
18
18
|
snapPoints,
|
|
@@ -21,15 +21,20 @@ const validateSnapPoints = ({
|
|
|
21
21
|
if (!snapPoints || snapPoints.length === 0) {
|
|
22
22
|
return {
|
|
23
23
|
hasSnapPoints: false,
|
|
24
|
+
hasAutoSnapPoint: false,
|
|
24
25
|
snapPoints: [],
|
|
25
26
|
minSnapPoint: -1,
|
|
26
27
|
maxSnapPoint: -1
|
|
27
28
|
};
|
|
28
29
|
}
|
|
30
|
+
const hasAuto = snapPoints.includes("auto");
|
|
29
31
|
const normalizedSnaps = sanitizeSnapPoints(snapPoints, canDismiss ?? false);
|
|
30
|
-
|
|
32
|
+
|
|
33
|
+
// hasSnapPoints is true if there are valid numeric points OR an 'auto' point
|
|
34
|
+
if (normalizedSnaps.length === 0 && !hasAuto) {
|
|
31
35
|
return {
|
|
32
36
|
hasSnapPoints: false,
|
|
37
|
+
hasAutoSnapPoint: false,
|
|
33
38
|
snapPoints: [],
|
|
34
39
|
minSnapPoint: -1,
|
|
35
40
|
maxSnapPoint: -1
|
|
@@ -37,10 +42,11 @@ const validateSnapPoints = ({
|
|
|
37
42
|
}
|
|
38
43
|
const sortedSnaps = normalizedSnaps.slice().sort((a, b) => a - b);
|
|
39
44
|
// Clamp to snap point bounds (dismiss at 0 only if allowed)
|
|
40
|
-
const minProgress = canDismiss ? 0 : sortedSnaps[0];
|
|
41
|
-
const maxProgress = sortedSnaps[sortedSnaps.length - 1];
|
|
45
|
+
const minProgress = canDismiss ? 0 : sortedSnaps[0] ?? -1;
|
|
46
|
+
const maxProgress = sortedSnaps[sortedSnaps.length - 1] ?? -1;
|
|
42
47
|
return {
|
|
43
48
|
hasSnapPoints: true,
|
|
49
|
+
hasAutoSnapPoint: hasAuto,
|
|
44
50
|
snapPoints: sortedSnaps,
|
|
45
51
|
minSnapPoint: minProgress,
|
|
46
52
|
maxSnapPoint: maxProgress
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["sanitizeSnapPoints","snapPoints","canDismiss","filter","point","Number","isFinite","validateSnapPoints","length","hasSnapPoints","minSnapPoint","maxSnapPoint","normalizedSnaps","sortedSnaps","slice","sort","a","b","minProgress","maxProgress","exports"],"sourceRoot":"../../../../../src","sources":["shared/utils/gesture/validate-snap-points.ts"],"mappings":";;;;;;;
|
|
1
|
+
{"version":3,"names":["sanitizeSnapPoints","snapPoints","canDismiss","filter","point","Number","isFinite","validateSnapPoints","length","hasSnapPoints","hasAutoSnapPoint","minSnapPoint","maxSnapPoint","hasAuto","includes","normalizedSnaps","sortedSnaps","slice","sort","a","b","minProgress","maxProgress","exports"],"sourceRoot":"../../../../../src","sources":["shared/utils/gesture/validate-snap-points.ts"],"mappings":";;;;;;;AAEA;AACA;AACA;AACA;AACO,SAASA,kBAAkBA,CACjCC,UAAuB,EACvBC,UAAmB,EACR;EACX,SAAS;;EACT,OAAOD,UAAU,CAACE,MAAM,CACtBC,KAAK,IACL,OAAOA,KAAK,KAAK,QAAQ,KACxBF,UAAU,GACRG,MAAM,CAACC,QAAQ,CAACF,KAAK,CAAC,GACtBC,MAAM,CAACC,QAAQ,CAACF,KAAK,CAAC,IAAIA,KAAK,GAAG,CAAC,CACxC,CAAC;AACF;AAeO,MAAMG,kBAAkB,GAAGA,CAAC;EAClCN,UAAU;EACVC;AAC0B,CAAC,KAAgC;EAC3D,IAAI,CAACD,UAAU,IAAIA,UAAU,CAACO,MAAM,KAAK,CAAC,EAAE;IAC3C,OAAO;MACNC,aAAa,EAAE,KAAK;MACpBC,gBAAgB,EAAE,KAAK;MACvBT,UAAU,EAAE,EAAE;MACdU,YAAY,EAAE,CAAC,CAAC;MAChBC,YAAY,EAAE,CAAC;IAChB,CAAC;EACF;EAEA,MAAMC,OAAO,GAAGZ,UAAU,CAACa,QAAQ,CAAC,MAAM,CAAC;EAC3C,MAAMC,eAAe,GAAGf,kBAAkB,CAACC,UAAU,EAAEC,UAAU,IAAI,KAAK,CAAC;;EAE3E;EACA,IAAIa,eAAe,CAACP,MAAM,KAAK,CAAC,IAAI,CAACK,OAAO,EAAE;IAC7C,OAAO;MACNJ,aAAa,EAAE,KAAK;MACpBC,gBAAgB,EAAE,KAAK;MACvBT,UAAU,EAAE,EAAE;MACdU,YAAY,EAAE,CAAC,CAAC;MAChBC,YAAY,EAAE,CAAC;IAChB,CAAC;EACF;EAEA,MAAMI,WAAW,GAAGD,eAAe,CAACE,KAAK,CAAC,CAAC,CAACC,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,GAAGC,CAAC,CAAC;EACjE;EACA,MAAMC,WAAW,GAAGnB,UAAU,GAAG,CAAC,GAAIc,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAE;EAC3D,MAAMM,WAAW,GAAGN,WAAW,CAACA,WAAW,CAACR,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;EAE7D,OAAO;IACNC,aAAa,EAAE,IAAI;IACnBC,gBAAgB,EAAEG,OAAO;IACzBZ,UAAU,EAAEe,WAAW;IACvBL,YAAY,EAAEU,WAAW;IACzBT,YAAY,EAAEU;EACf,CAAC;AACF,CAAC;AAACC,OAAA,CAAAhB,kBAAA,GAAAA,kBAAA","ignoreList":[]}
|
|
@@ -3,16 +3,9 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.isOverlayVisible = void 0;
|
|
7
7
|
const isOverlayVisible = options => {
|
|
8
8
|
return Boolean(options?.overlay) && options?.overlayShown !== false;
|
|
9
9
|
};
|
|
10
|
-
|
|
11
|
-
return isOverlayVisible(options) && options?.overlayMode !== "screen";
|
|
12
|
-
};
|
|
13
|
-
exports.isFloatOverlayVisible = isFloatOverlayVisible;
|
|
14
|
-
const isScreenOverlayVisible = options => {
|
|
15
|
-
return isOverlayVisible(options) && options?.overlayMode === "screen";
|
|
16
|
-
};
|
|
17
|
-
exports.isScreenOverlayVisible = isScreenOverlayVisible;
|
|
10
|
+
exports.isOverlayVisible = isOverlayVisible;
|
|
18
11
|
//# sourceMappingURL=visibility.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isOverlayVisible","options","Boolean","overlay","overlayShown","
|
|
1
|
+
{"version":3,"names":["isOverlayVisible","options","Boolean","overlay","overlayShown","exports"],"sourceRoot":"../../../../../src","sources":["shared/utils/overlay/visibility.ts"],"mappings":";;;;;;AAKO,MAAMA,gBAAgB,GAAIC,OAA4B,IAAc;EAC1E,OAAOC,OAAO,CAACD,OAAO,EAAEE,OAAO,CAAC,IAAIF,OAAO,EAAEG,YAAY,KAAK,KAAK;AACpE,CAAC;AAACC,OAAA,CAAAL,gBAAA,GAAAA,gBAAA","ignoreList":[]}
|
|
@@ -9,7 +9,11 @@ import { resolveSnapTargetEntry } from "./resolve-snap-target";
|
|
|
9
9
|
const getSortedSnapPoints = descriptor => {
|
|
10
10
|
const snapPoints = descriptor.options?.snapPoints;
|
|
11
11
|
if (!snapPoints || snapPoints.length === 0) return null;
|
|
12
|
-
|
|
12
|
+
|
|
13
|
+
// Resolve 'auto' to the measured fraction stored in AnimationStore
|
|
14
|
+
const autoVal = AnimationStore.getAnimation(descriptor.route.key, "autoSnapPoint").value;
|
|
15
|
+
const resolved = snapPoints.map(p => p === "auto" ? autoVal : p).filter(p => typeof p === "number" && p > 0);
|
|
16
|
+
return resolved.length > 0 ? resolved.sort((a, b) => a - b) : null;
|
|
13
17
|
};
|
|
14
18
|
export function snapDescriptorToIndex(descriptor, index) {
|
|
15
19
|
const sorted = getSortedSnapPoints(descriptor);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["runOnUI","DefaultSnapSpec","AnimationStore","animateToProgress","logger","resolveSnapTargetEntry","getSortedSnapPoints","descriptor","snapPoints","options","length","sort","a","b","snapDescriptorToIndex","index","sorted","warn","targetProgress","animations","getRouteAnimations","
|
|
1
|
+
{"version":3,"names":["runOnUI","DefaultSnapSpec","AnimationStore","animateToProgress","logger","resolveSnapTargetEntry","getSortedSnapPoints","descriptor","snapPoints","options","length","autoVal","getAnimation","route","key","value","resolved","map","p","filter","sort","a","b","snapDescriptorToIndex","index","sorted","warn","targetProgress","animations","getRouteAnimations","target","spec","open","transitionSpec","expand","close","collapse","snapTo","screenWithSnapPoints"],"sourceRoot":"../../../../src","sources":["shared/animation/snap-to.ts"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,yBAAyB;AACjD,SAASC,eAAe,QAAQ,kBAAkB;AAClD,SAASC,cAAc,QAAQ,2BAA2B;AAE1D,SAASC,iBAAiB,QAAQ,wCAAwC;AAC1E,SAASC,MAAM,QAAQ,iBAAiB;AACxC,SAASC,sBAAsB,QAAQ,uBAAuB;AAE9D,MAAMC,mBAAmB,GACxBC,UAAsC,IACjB;EACrB,MAAMC,UAAU,GAAGD,UAAU,CAACE,OAAO,EAAED,UAAU;EACjD,IAAI,CAACA,UAAU,IAAIA,UAAU,CAACE,MAAM,KAAK,CAAC,EAAE,OAAO,IAAI;;EAEvD;EACA,MAAMC,OAAO,GAAGT,cAAc,CAACU,YAAY,CAC1CL,UAAU,CAACM,KAAK,CAACC,GAAG,EACpB,eACD,CAAC,CAACC,KAAK;EAEP,MAAMC,QAAQ,GAAGR,UAAU,CACzBS,GAAG,CAAEC,CAAC,IAAMA,CAAC,KAAK,MAAM,GAAGP,OAAO,GAAGO,CAAE,CAAC,CACxCC,MAAM,CAAED,CAAC,IAAkB,OAAOA,CAAC,KAAK,QAAQ,IAAIA,CAAC,GAAG,CAAC,CAAC;EAE5D,OAAOF,QAAQ,CAACN,MAAM,GAAG,CAAC,GAAGM,QAAQ,CAACI,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,GAAGC,CAAC,CAAC,GAAG,IAAI;AACnE,CAAC;AAED,OAAO,SAASC,qBAAqBA,CACpChB,UAAsC,EACtCiB,KAAa,EACH;EACV,MAAMC,MAAM,GAAGnB,mBAAmB,CAACC,UAAU,CAAC;EAC9C,IAAI,CAACkB,MAAM,EAAE;IACZrB,MAAM,CAACsB,IAAI,CAAC,yCAAyC,CAAC;IACtD,OAAO,KAAK;EACb;EAEA,IAAIF,KAAK,GAAG,CAAC,IAAIA,KAAK,IAAIC,MAAM,CAACf,MAAM,EAAE;IACxCN,MAAM,CAACsB,IAAI,CACV,iBAAiBF,KAAK,qBAAqBC,MAAM,CAACf,MAAM,GAAG,CAAC,GAC7D,CAAC;IACD,OAAO,KAAK;EACb;EAEA,MAAMiB,cAAc,GAAGF,MAAM,CAACD,KAAK,CAAC;EACpC,MAAMI,UAAU,GAAG1B,cAAc,CAAC2B,kBAAkB,CAACtB,UAAU,CAACM,KAAK,CAACC,GAAG,CAAC;EAE1Ed,OAAO,CAAC,MAAM;IACb,SAAS;;IACTG,iBAAiB,CAAC;MACjB2B,MAAM,EAAEH,cAAc;MACtBC,UAAU;MACVG,IAAI,EAAE;QACLC,IAAI,EAAEzB,UAAU,CAACE,OAAO,CAACwB,cAAc,EAAEC,MAAM,IAAIjC,eAAe;QAClEkC,KAAK,EAAE5B,UAAU,CAACE,OAAO,CAACwB,cAAc,EAAEG,QAAQ,IAAInC;MACvD;IACD,CAAC,CAAC;EACH,CAAC,CAAC,CAAC,CAAC;EAEJ,OAAO,IAAI;AACZ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASoC,MAAMA,CAACb,KAAa,EAAQ;EAC3C,MAAMc,oBAAoB,GAAGjC,sBAAsB,CAAC,CAAC;EAErD,IAAI,CAACiC,oBAAoB,EAAE;IAC1BlC,MAAM,CAACsB,IAAI,CAAC,+CAA+C,CAAC;IAC5D;EACD;EAEAH,qBAAqB,CAACe,oBAAoB,CAAC/B,UAAU,EAAEiB,KAAK,CAAC;AAC9D","ignoreList":[]}
|
package/lib/module/shared/components/create-boundary-component/utils/build-boundary-match-key.js
CHANGED
|
@@ -1,17 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
export function buildBoundaryMatchKey(
|
|
3
|
+
export function buildBoundaryMatchKey(params) {
|
|
4
4
|
"worklet";
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
} = paramsOrGroup;
|
|
11
|
-
return group ? `${group}:${id}` : String(id);
|
|
12
|
-
}
|
|
13
|
-
const group = paramsOrGroup;
|
|
14
|
-
const id = legacyId;
|
|
6
|
+
const {
|
|
7
|
+
group,
|
|
8
|
+
id
|
|
9
|
+
} = params;
|
|
15
10
|
return group ? `${group}:${id}` : String(id);
|
|
16
11
|
}
|
|
17
12
|
//# sourceMappingURL=build-boundary-match-key.js.map
|
package/lib/module/shared/components/create-boundary-component/utils/build-boundary-match-key.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["buildBoundaryMatchKey","
|
|
1
|
+
{"version":3,"names":["buildBoundaryMatchKey","params","group","id","String"],"sourceRoot":"../../../../../../src","sources":["shared/components/create-boundary-component/utils/build-boundary-match-key.ts"],"mappings":";;AAUA,OAAO,SAASA,qBAAqBA,CACpCC,MAAmC,EAC1B;EACT,SAAS;;EACT,MAAM;IAAEC,KAAK;IAAEC;EAAG,CAAC,GAAGF,MAAM;EAC5B,OAAOC,KAAK,GAAG,GAAGA,KAAK,IAAIC,EAAE,EAAE,GAAGC,MAAM,CAACD,EAAE,CAAC;AAC7C","ignoreList":[]}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { isOverlayVisible } from "../../../utils/overlay/visibility";
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* Find the active float overlay from scenes.
|
|
7
7
|
* Scans from the top of the stack downward to find the first screen
|
|
8
|
-
* with a visible overlay
|
|
8
|
+
* with a visible overlay.
|
|
9
9
|
*/
|
|
10
10
|
export function getActiveFloatOverlay(scenes, index, transitionsAlwaysOn) {
|
|
11
11
|
if (scenes.length === 0) {
|
|
@@ -25,7 +25,7 @@ export function getActiveFloatOverlay(scenes, index, transitionsAlwaysOn) {
|
|
|
25
25
|
if (!transitionsAlwaysOn && !options?.enableTransitions) {
|
|
26
26
|
continue;
|
|
27
27
|
}
|
|
28
|
-
if (
|
|
28
|
+
if (isOverlayVisible(options)) {
|
|
29
29
|
return {
|
|
30
30
|
scene,
|
|
31
31
|
overlayIndex: i
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["isOverlayVisible","getActiveFloatOverlay","scenes","index","transitionsAlwaysOn","length","startIndex","Math","max","i","scene","options","descriptor","enableTransitions","overlayIndex"],"sourceRoot":"../../../../../../src","sources":["shared/components/overlay/helpers/get-active-overlay.ts"],"mappings":";;AACA,SAASA,gBAAgB,QAAQ,mCAAmC;;AAEpE;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,qBAAqBA,CACpCC,MAAoB,EACpBC,KAAa,EACbC,mBAA4B,EACyB;EACrD,IAAIF,MAAM,CAACG,MAAM,KAAK,CAAC,EAAE;IACxB,OAAO,IAAI;EACZ;;EAEA;EACA;EACA;EACA;EACA,MAAMC,UAAU,GAAGC,IAAI,CAACC,GAAG,CAACL,KAAK,EAAED,MAAM,CAACG,MAAM,GAAG,CAAC,CAAC;EAErD,KAAK,IAAII,CAAC,GAAGH,UAAU,EAAEG,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;IACrC,MAAMC,KAAK,GAAGR,MAAM,CAACO,CAAC,CAAC;IACvB,MAAME,OAAO,GAAGD,KAAK,EAAEE,UAAU,EAAED,OAAO;;IAE1C;IACA,IAAI,CAACP,mBAAmB,IAAI,CAACO,OAAO,EAAEE,iBAAiB,EAAE;MACxD;IACD;IAEA,IAAIb,gBAAgB,CAACW,OAAO,CAAC,EAAE;MAC9B,OAAO;QAAED,KAAK;QAAEI,YAAY,EAAEL;MAAE,CAAC;IAClC;EACD;EAEA,OAAO,IAAI;AACZ","ignoreList":[]}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { FloatOverlay } from "./variations/float-overlay";
|
|
4
|
-
import { ScreenOverlay } from "./variations/screen-overlay";
|
|
5
4
|
export const Overlay = {
|
|
6
|
-
Float: FloatOverlay
|
|
7
|
-
Screen: ScreenOverlay
|
|
5
|
+
Float: FloatOverlay
|
|
8
6
|
};
|
|
9
7
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["FloatOverlay","
|
|
1
|
+
{"version":3,"names":["FloatOverlay","Overlay","Float"],"sourceRoot":"../../../../../src","sources":["shared/components/overlay/index.ts"],"mappings":";;AAAA,SAASA,YAAY,QAAQ,4BAA4B;AAEzD,OAAO,MAAMC,OAAO,GAAG;EACtBC,KAAK,EAAEF;AACR,CAAC","ignoreList":[]}
|
|
@@ -2,9 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
import { NavigationContext, NavigationRouteContext } from "@react-navigation/native";
|
|
4
4
|
import { memo, useMemo } from "react";
|
|
5
|
-
import { Animated, StyleSheet,
|
|
5
|
+
import { Animated, StyleSheet, View } from "react-native";
|
|
6
6
|
import { useDerivedValue } from "react-native-reanimated";
|
|
7
|
-
import { useSafeAreaInsets } from "react-native-safe-area-context";
|
|
8
7
|
import { useScreenAnimation } from "../../../providers/screen/animation";
|
|
9
8
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
10
9
|
export const OverlayHost = /*#__PURE__*/memo(function OverlayHost({
|
|
@@ -12,29 +11,16 @@ export const OverlayHost = /*#__PURE__*/memo(function OverlayHost({
|
|
|
12
11
|
overlayScreenState
|
|
13
12
|
}) {
|
|
14
13
|
const OverlayComponent = scene.descriptor.options.overlay;
|
|
15
|
-
const screen = useWindowDimensions();
|
|
16
|
-
const insets = useSafeAreaInsets();
|
|
17
14
|
const screenAnimation = useScreenAnimation();
|
|
18
15
|
const relativeProgress = useDerivedValue(() => {
|
|
19
16
|
"worklet";
|
|
20
17
|
|
|
21
18
|
return screenAnimation.value.stackProgress;
|
|
22
19
|
});
|
|
23
|
-
const overlayAnimation = useDerivedValue(() => ({
|
|
24
|
-
progress: relativeProgress.value,
|
|
25
|
-
layouts: {
|
|
26
|
-
screen
|
|
27
|
-
},
|
|
28
|
-
insets
|
|
29
|
-
}));
|
|
30
20
|
const overlayProps = useMemo(() => ({
|
|
31
21
|
...overlayScreenState,
|
|
32
|
-
progress: relativeProgress
|
|
33
|
-
|
|
34
|
-
overlayAnimation,
|
|
35
|
-
/**@deprecated */
|
|
36
|
-
screenAnimation
|
|
37
|
-
}), [relativeProgress, overlayAnimation, screenAnimation, overlayScreenState]);
|
|
22
|
+
progress: relativeProgress
|
|
23
|
+
}), [relativeProgress, overlayScreenState]);
|
|
38
24
|
if (!OverlayComponent) {
|
|
39
25
|
return null;
|
|
40
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NavigationContext","NavigationRouteContext","memo","useMemo","Animated","StyleSheet","
|
|
1
|
+
{"version":3,"names":["NavigationContext","NavigationRouteContext","memo","useMemo","Animated","StyleSheet","View","useDerivedValue","useScreenAnimation","jsx","_jsx","OverlayHost","scene","overlayScreenState","OverlayComponent","descriptor","options","overlay","screenAnimation","relativeProgress","value","stackProgress","overlayProps","progress","pointerEvents","style","styles","container","floating","absolute","children","Provider","navigation","route","create","absoluteFillObject","zIndex","flex"],"sourceRoot":"../../../../../../src","sources":["shared/components/overlay/variations/overlay-host.tsx"],"mappings":";;AAAA,SACCA,iBAAiB,EACjBC,sBAAsB,QAChB,0BAA0B;AACjC,SAASC,IAAI,EAAEC,OAAO,QAAQ,OAAO;AACrC,SAASC,QAAQ,EAAEC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AACzD,SAASC,eAAe,QAAQ,yBAAyB;AAEzD,SAASC,kBAAkB,QAAQ,qCAAqC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAYzE,OAAO,MAAMC,WAAW,gBAAGT,IAAI,CAAC,SAASS,WAAWA,CAAC;EACpDC,KAAK;EACLC;AACiB,CAAC,EAAE;EACpB,MAAMC,gBAAgB,GAAGF,KAAK,CAACG,UAAU,CAACC,OAAO,CAACC,OAAO;EAEzD,MAAMC,eAAe,GAAGV,kBAAkB,CAAC,CAAC;EAC5C,MAAMW,gBAAgB,GAAGZ,eAAe,CAAC,MAAM;IAC9C,SAAS;;IACT,OAAOW,eAAe,CAACE,KAAK,CAACC,aAAa;EAC3C,CAAC,CAAC;EAEF,MAAMC,YAAwD,GAAGnB,OAAO,CACvE,OAAO;IACN,GAAGU,kBAAkB;IACrBU,QAAQ,EAAEJ;EACX,CAAC,CAAC,EACF,CAACA,gBAAgB,EAAEN,kBAAkB,CACtC,CAAC;EAED,IAAI,CAACC,gBAAgB,EAAE;IACtB,OAAO,IAAI;EACZ;EAEA,oBACCJ,IAAA,CAACN,QAAQ,CAACE,IAAI;IACbkB,aAAa,EAAC,UAAU;IACxBC,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAED,MAAM,CAACE,QAAQ,EAAEF,MAAM,CAACG,QAAQ,CAAE;IAAAC,QAAA,eAE5DpB,IAAA,CAACV,iBAAiB,CAAC+B,QAAQ;MAACX,KAAK,EAAER,KAAK,CAACG,UAAU,CAACiB,UAAkB;MAAAF,QAAA,eACrEpB,IAAA,CAACT,sBAAsB,CAAC8B,QAAQ;QAACX,KAAK,EAAER,KAAK,CAACqB,KAAM;QAAAH,QAAA,eACnDpB,IAAA,CAACJ,IAAI;UAACkB,aAAa,EAAC,UAAU;UAACC,KAAK,EAAEC,MAAM,CAACT,OAAQ;UAAAa,QAAA,eACpDpB,IAAA,CAACI,gBAAgB;YAAA,GAAKQ;UAAY,CAAG;QAAC,CACjC;MAAC,CACyB;IAAC,CACP;EAAC,CACf,CAAC;AAElB,CAAC,CAAC;AAEF,MAAMI,MAAM,GAAGrB,UAAU,CAAC6B,MAAM,CAAC;EAChCjB,OAAO,EAAE;IACR,GAAGZ,UAAU,CAAC8B,kBAAkB;IAChCC,MAAM,EAAE;EACT,CAAC;EACDT,SAAS,EAAE;IACVU,IAAI,EAAE;EACP,CAAC;EACDR,QAAQ,EAAExB,UAAU,CAAC8B,kBAAkB;EACvCP,QAAQ,EAAE;IACTQ,MAAM,EAAE;EACT;AACD,CAAC,CAAC","ignoreList":[]}
|
|
@@ -2,9 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { NavigationContext, NavigationRouteContext } from "@react-navigation/native";
|
|
4
4
|
import * as React from "react";
|
|
5
|
-
import {
|
|
6
|
-
import { Overlay } from "./overlay";
|
|
7
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
5
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
6
|
/**
|
|
9
7
|
* Shared scene view for managed stacks (blank-stack, component-stack).
|
|
10
8
|
* Wraps screen render output with navigation context providers
|
|
@@ -20,9 +18,9 @@ export const SceneView = /*#__PURE__*/React.memo(function SceneView({
|
|
|
20
18
|
} = descriptor;
|
|
21
19
|
return /*#__PURE__*/_jsx(NavigationContext.Provider, {
|
|
22
20
|
value: navigation,
|
|
23
|
-
children: /*#__PURE__*/
|
|
21
|
+
children: /*#__PURE__*/_jsx(NavigationRouteContext.Provider, {
|
|
24
22
|
value: route,
|
|
25
|
-
children:
|
|
23
|
+
children: render?.()
|
|
26
24
|
})
|
|
27
25
|
});
|
|
28
26
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NavigationContext","NavigationRouteContext","React","
|
|
1
|
+
{"version":3,"names":["NavigationContext","NavigationRouteContext","React","jsx","_jsx","SceneView","memo","descriptor","route","navigation","render","Provider","value","children"],"sourceRoot":"../../../../src","sources":["shared/components/scene-view.tsx"],"mappings":";;AAAA,SACCA,iBAAiB,EACjBC,sBAAsB,QAChB,0BAA0B;AACjC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAO/B;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,SAAS,gBAAGH,KAAK,CAACI,IAAI,CAAC,SAASD,SAASA,CAAC;EACtDE;AACe,CAAC,EAAE;EAClB,MAAM;IAAEC,KAAK;IAAEC,UAAU;IAAEC;EAAO,CAAC,GAAGH,UAAU;EAEhD,oBACCH,IAAA,CAACJ,iBAAiB,CAACW,QAAQ;IAACC,KAAK,EAAEH,UAAkB;IAAAI,QAAA,eACpDT,IAAA,CAACH,sBAAsB,CAACU,QAAQ;MAACC,KAAK,EAAEJ,KAAM;MAAAK,QAAA,EAC5CH,MAAM,GAAG;IAAC,CACqB;EAAC,CACP,CAAC;AAE/B,CAAC,CAAC","ignoreList":[]}
|
|
@@ -29,6 +29,9 @@ export const BackdropLayer = /*#__PURE__*/memo(function BackdropLayer() {
|
|
|
29
29
|
backdropBehavior
|
|
30
30
|
} = useBackdropPointerEvents();
|
|
31
31
|
const BackdropComponent = current.options.backdropComponent;
|
|
32
|
+
const routeKey = current.route.key;
|
|
33
|
+
const animations = AnimationStore.getRouteAnimations(routeKey);
|
|
34
|
+
const autoSnapPointValue = AnimationStore.getAnimation(routeKey, "autoSnapPoint");
|
|
32
35
|
const AnimatedBackdropComponent = useMemo(() => BackdropComponent ? Animated.createAnimatedComponent(BackdropComponent) : null, [BackdropComponent]);
|
|
33
36
|
const handleBackdropPress = useCallback(() => {
|
|
34
37
|
if (backdropBehavior === "dismiss") {
|
|
@@ -36,24 +39,24 @@ export const BackdropLayer = /*#__PURE__*/memo(function BackdropLayer() {
|
|
|
36
39
|
return;
|
|
37
40
|
}
|
|
38
41
|
if (backdropBehavior === "collapse") {
|
|
39
|
-
const
|
|
42
|
+
const rawSnapPoints = current.options.snapPoints;
|
|
40
43
|
const canDismiss = current.options.gestureEnabled !== false;
|
|
41
44
|
|
|
42
45
|
// No snap points → fallback to dismiss
|
|
43
|
-
if (!
|
|
46
|
+
if (!rawSnapPoints || rawSnapPoints.length === 0) {
|
|
44
47
|
dismissScreen();
|
|
45
48
|
return;
|
|
46
49
|
}
|
|
47
|
-
const
|
|
48
|
-
const gestures = GestureStore.getRouteGestures(current.route.key);
|
|
50
|
+
const gestures = GestureStore.getRouteGestures(routeKey);
|
|
49
51
|
const transitionSpec = current.options.transitionSpec;
|
|
50
52
|
runOnUI(() => {
|
|
51
53
|
"worklet";
|
|
52
54
|
|
|
55
|
+
const resolvedSnaps = rawSnapPoints.map(point => point === "auto" ? autoSnapPointValue.value : point).filter(point => typeof point === "number");
|
|
53
56
|
const {
|
|
54
57
|
target,
|
|
55
58
|
shouldDismiss
|
|
56
|
-
} = findCollapseTarget(animations.progress.value,
|
|
59
|
+
} = findCollapseTarget(animations.progress.value, resolvedSnaps, canDismiss);
|
|
57
60
|
|
|
58
61
|
// If already dismissing, skip
|
|
59
62
|
if (gestures.dismissing.value) return;
|
|
@@ -70,7 +73,7 @@ export const BackdropLayer = /*#__PURE__*/memo(function BackdropLayer() {
|
|
|
70
73
|
});
|
|
71
74
|
})();
|
|
72
75
|
}
|
|
73
|
-
}, [backdropBehavior, current, dismissScreen]);
|
|
76
|
+
}, [animations, autoSnapPointValue, backdropBehavior, current, dismissScreen, routeKey]);
|
|
74
77
|
const animatedBackdropStyle = useAnimatedStyle(() => {
|
|
75
78
|
"worklet";
|
|
76
79
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["memo","useCallback","useMemo","Pressable","StyleSheet","Animated","runOnUI","useAnimatedProps","useAnimatedStyle","DefaultSnapSpec","NO_PROPS","NO_STYLES","useNavigationHelpers","useDescriptors","useScreenStyles","AnimationStore","GestureStore","animateToProgress","findCollapseTarget","useBackdropPointerEvents","jsx","_jsx","jsxs","_jsxs","BackdropLayer","stylesMap","current","dismissScreen","isBackdropActive","backdropBehavior","BackdropComponent","options","backdropComponent","AnimatedBackdropComponent","createAnimatedComponent","handleBackdropPress","snapPoints","canDismiss","gestureEnabled","length","
|
|
1
|
+
{"version":3,"names":["memo","useCallback","useMemo","Pressable","StyleSheet","Animated","runOnUI","useAnimatedProps","useAnimatedStyle","DefaultSnapSpec","NO_PROPS","NO_STYLES","useNavigationHelpers","useDescriptors","useScreenStyles","AnimationStore","GestureStore","animateToProgress","findCollapseTarget","useBackdropPointerEvents","jsx","_jsx","jsxs","_jsxs","BackdropLayer","stylesMap","current","dismissScreen","isBackdropActive","backdropBehavior","BackdropComponent","options","backdropComponent","routeKey","route","key","animations","getRouteAnimations","autoSnapPointValue","getAnimation","AnimatedBackdropComponent","createAnimatedComponent","handleBackdropPress","rawSnapPoints","snapPoints","canDismiss","gestureEnabled","length","gestures","getRouteGestures","transitionSpec","resolvedSnaps","map","point","value","filter","target","shouldDismiss","progress","dismissing","spec","open","expand","close","collapse","onAnimationFinish","undefined","animatedBackdropStyle","backdrop","style","animatedBackdropProps","props","absoluteFillObject","pointerEvents","onPress","children","animatedProps","View"],"sourceRoot":"../../../../../../src","sources":["shared/components/screen-container/layers/backdrop.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,25 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
/** biome-ignore-all lint/style/noNonNullAssertion: <Screen gesture is under the gesture context, so this will always exist.> */
|
|
4
|
-
import { memo,
|
|
5
|
-
import { StyleSheet, View } from "react-native";
|
|
4
|
+
import { memo, useCallback } from "react";
|
|
5
|
+
import { StyleSheet, useWindowDimensions, View } from "react-native";
|
|
6
6
|
import { GestureDetector } from "react-native-gesture-handler";
|
|
7
|
-
import Animated, { useAnimatedProps, useAnimatedStyle } from "react-native-reanimated";
|
|
8
|
-
import {
|
|
7
|
+
import Animated, { runOnUI, useAnimatedProps, useAnimatedStyle } from "react-native-reanimated";
|
|
8
|
+
import { NO_PROPS, NO_STYLES } from "../../../constants";
|
|
9
9
|
import { useGestureContext } from "../../../providers/gestures";
|
|
10
|
-
import { useDescriptors } from "../../../providers/screen/descriptors";
|
|
10
|
+
import { useDescriptorDerivations, useDescriptors } from "../../../providers/screen/descriptors";
|
|
11
11
|
import { useScreenStyles } from "../../../providers/screen/styles.provider";
|
|
12
|
-
import {
|
|
12
|
+
import { AnimationStore } from "../../../stores/animation.store";
|
|
13
|
+
import { animateToProgress } from "../../../utils/animation/animate-to-progress";
|
|
13
14
|
import { useBackdropPointerEvents } from "../hooks/use-backdrop-pointer-events";
|
|
15
|
+
import { MaybeMaskedNavigationContainer } from "./maybe-masked-navigation-container";
|
|
14
16
|
import { SurfaceContainer } from "./surface-container";
|
|
15
17
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
16
|
-
let LazyMaskedView = View;
|
|
17
|
-
try {
|
|
18
|
-
LazyMaskedView = require("@react-native-masked-view/masked-view").default;
|
|
19
|
-
} catch (_) {
|
|
20
|
-
// optional peer dependency
|
|
21
|
-
}
|
|
22
|
-
let hasWarnedMissingMaskedView = false;
|
|
23
18
|
export const ContentLayer = /*#__PURE__*/memo(({
|
|
24
19
|
children
|
|
25
20
|
}) => {
|
|
@@ -29,15 +24,23 @@ export const ContentLayer = /*#__PURE__*/memo(({
|
|
|
29
24
|
const {
|
|
30
25
|
current
|
|
31
26
|
} = useDescriptors();
|
|
27
|
+
const {
|
|
28
|
+
isFirstKey
|
|
29
|
+
} = useDescriptorDerivations();
|
|
32
30
|
const {
|
|
33
31
|
pointerEvents,
|
|
34
32
|
isBackdropActive
|
|
35
33
|
} = useBackdropPointerEvents();
|
|
36
34
|
const gestureContext = useGestureContext();
|
|
35
|
+
const {
|
|
36
|
+
height: screenHeight
|
|
37
|
+
} = useWindowDimensions();
|
|
37
38
|
const isNavigationMaskEnabled = !!current.options.maskEnabled;
|
|
38
39
|
const contentPointerEvents = isBackdropActive ? "box-none" : pointerEvents;
|
|
39
|
-
|
|
40
|
-
|
|
40
|
+
const routeKey = current.route.key;
|
|
41
|
+
const animations = AnimationStore.getRouteAnimations(routeKey);
|
|
42
|
+
const autoSnapPointValue = AnimationStore.getAnimation(routeKey, "autoSnapPoint");
|
|
43
|
+
const hasAutoSnapPoint = current.options.snapPoints?.includes("auto") ?? false;
|
|
41
44
|
const animatedContentStyle = useAnimatedStyle(() => {
|
|
42
45
|
"worklet";
|
|
43
46
|
|
|
@@ -48,49 +51,47 @@ export const ContentLayer = /*#__PURE__*/memo(({
|
|
|
48
51
|
|
|
49
52
|
return stylesMap.value.content?.props ?? NO_PROPS;
|
|
50
53
|
});
|
|
54
|
+
const handleContentLayout = useCallback(event => {
|
|
55
|
+
const contentHeight = event.nativeEvent.layout.height;
|
|
56
|
+
if (contentHeight <= 0) return;
|
|
57
|
+
const fraction = Math.min(contentHeight / screenHeight, 1);
|
|
58
|
+
const transitionSpec = current.options.transitionSpec;
|
|
59
|
+
runOnUI((nextFraction, isInitialScreen, spec) => {
|
|
60
|
+
"worklet";
|
|
51
61
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
}, [isNavigationMaskEnabled]);
|
|
70
|
-
const contentChildren = isNavigationMaskEnabled ? LazyMaskedView !== View ? /*#__PURE__*/_jsx(LazyMaskedView, {
|
|
71
|
-
style: styles.navigationMaskedRoot
|
|
72
|
-
// @ts-expect-error masked-view package types are too strict here
|
|
73
|
-
,
|
|
74
|
-
maskElement: /*#__PURE__*/_jsx(Animated.View, {
|
|
75
|
-
style: [styles.navigationMaskElement, animatedNavigationMaskStyle]
|
|
76
|
-
}),
|
|
77
|
-
children: /*#__PURE__*/_jsx(Animated.View, {
|
|
78
|
-
style: [styles.navigationContainer, animatedNavigationContainerStyle],
|
|
79
|
-
children: children
|
|
80
|
-
})
|
|
81
|
-
}) : /*#__PURE__*/_jsx(Animated.View, {
|
|
82
|
-
style: [styles.navigationContainer, animatedNavigationContainerStyle],
|
|
83
|
-
children: children
|
|
84
|
-
}) : children;
|
|
62
|
+
const isFirstMeasurement = autoSnapPointValue.value <= 0;
|
|
63
|
+
autoSnapPointValue.value = nextFraction;
|
|
64
|
+
if (!isFirstMeasurement || animations.progress.value !== 0 || animations.animating.value !== 0) {
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
if (isInitialScreen) {
|
|
68
|
+
animations.targetProgress.value = nextFraction;
|
|
69
|
+
animations.progress.value = nextFraction;
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
animateToProgress({
|
|
73
|
+
target: nextFraction,
|
|
74
|
+
spec,
|
|
75
|
+
animations
|
|
76
|
+
});
|
|
77
|
+
})(fraction, isFirstKey, transitionSpec);
|
|
78
|
+
}, [animations, autoSnapPointValue, current.options.transitionSpec, isFirstKey, screenHeight]);
|
|
85
79
|
return /*#__PURE__*/_jsx(GestureDetector, {
|
|
86
80
|
gesture: gestureContext.panGesture,
|
|
87
81
|
children: /*#__PURE__*/_jsx(Animated.View, {
|
|
88
82
|
style: [styles.content, animatedContentStyle],
|
|
89
83
|
animatedProps: animatedContentProps,
|
|
90
84
|
pointerEvents: contentPointerEvents,
|
|
91
|
-
children: /*#__PURE__*/_jsx(
|
|
92
|
-
|
|
93
|
-
children:
|
|
85
|
+
children: /*#__PURE__*/_jsx(MaybeMaskedNavigationContainer, {
|
|
86
|
+
enabled: isNavigationMaskEnabled,
|
|
87
|
+
children: /*#__PURE__*/_jsx(SurfaceContainer, {
|
|
88
|
+
pointerEvents: contentPointerEvents,
|
|
89
|
+
children: hasAutoSnapPoint ? /*#__PURE__*/_jsx(View, {
|
|
90
|
+
collapsable: false,
|
|
91
|
+
onLayout: handleContentLayout,
|
|
92
|
+
children: children
|
|
93
|
+
}) : children
|
|
94
|
+
})
|
|
94
95
|
})
|
|
95
96
|
})
|
|
96
97
|
});
|
|
@@ -98,15 +99,6 @@ export const ContentLayer = /*#__PURE__*/memo(({
|
|
|
98
99
|
const styles = StyleSheet.create({
|
|
99
100
|
content: {
|
|
100
101
|
flex: 1
|
|
101
|
-
},
|
|
102
|
-
navigationMaskedRoot: {
|
|
103
|
-
flex: 1
|
|
104
|
-
},
|
|
105
|
-
navigationMaskElement: {
|
|
106
|
-
backgroundColor: "white"
|
|
107
|
-
},
|
|
108
|
-
navigationContainer: {
|
|
109
|
-
flex: 1
|
|
110
102
|
}
|
|
111
103
|
});
|
|
112
104
|
//# sourceMappingURL=content.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["memo","
|
|
1
|
+
{"version":3,"names":["memo","useCallback","StyleSheet","useWindowDimensions","View","GestureDetector","Animated","runOnUI","useAnimatedProps","useAnimatedStyle","NO_PROPS","NO_STYLES","useGestureContext","useDescriptorDerivations","useDescriptors","useScreenStyles","AnimationStore","animateToProgress","useBackdropPointerEvents","MaybeMaskedNavigationContainer","SurfaceContainer","jsx","_jsx","ContentLayer","children","stylesMap","current","isFirstKey","pointerEvents","isBackdropActive","gestureContext","height","screenHeight","isNavigationMaskEnabled","options","maskEnabled","contentPointerEvents","routeKey","route","key","animations","getRouteAnimations","autoSnapPointValue","getAnimation","hasAutoSnapPoint","snapPoints","includes","animatedContentStyle","value","content","style","animatedContentProps","props","handleContentLayout","event","contentHeight","nativeEvent","layout","fraction","Math","min","transitionSpec","nextFraction","isInitialScreen","spec","isFirstMeasurement","progress","animating","targetProgress","target","gesture","panGesture","styles","animatedProps","enabled","collapsable","onLayout","create","flex"],"sourceRoot":"../../../../../../src","sources":["shared/components/screen-container/layers/content.tsx"],"mappings":"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","ignoreList":[]}
|