react-native-screen-transitions 3.0.0-rc.1 → 3.0.0-rc.3
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 +421 -371
- package/lib/commonjs/blank-stack/components/{Overlay.js → overlay.js} +11 -12
- package/lib/commonjs/blank-stack/components/overlay.js.map +1 -0
- package/lib/commonjs/blank-stack/components/{Screens.js → screens.js} +8 -10
- package/lib/commonjs/blank-stack/components/screens.js.map +1 -0
- package/lib/commonjs/blank-stack/components/stack-view.js +95 -0
- package/lib/commonjs/blank-stack/components/stack-view.js.map +1 -0
- package/lib/commonjs/blank-stack/hooks/use-overlay-animation.js +2 -3
- package/lib/commonjs/blank-stack/hooks/use-overlay-animation.js.map +1 -1
- package/lib/commonjs/blank-stack/index.js +1 -8
- package/lib/commonjs/blank-stack/index.js.map +1 -1
- package/lib/commonjs/blank-stack/navigators/{createBlankStackNavigator.js → create-blank-stack-navigator.js} +3 -3
- package/lib/commonjs/blank-stack/navigators/create-blank-stack-navigator.js.map +1 -0
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/helpers/are-descriptors-equal.js.map +1 -0
- package/lib/{module/blank-stack/utils/with-stack-navigation/_utils → commonjs/blank-stack/utils/with-stack-navigation/helpers}/calculate-active-screens-limit.js.map +1 -1
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/helpers/compose-descriptors.js +15 -0
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/helpers/compose-descriptors.js.map +1 -0
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/helpers/have-same-route-keys.js.map +1 -0
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/helpers/routes-are-identical.js.map +1 -0
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-closing-route-keys.js +1 -12
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/hooks/use-closing-route-keys.js.map +1 -0
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/hooks/use-previous.js.map +1 -0
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-stack-navigation-state.js +4 -4
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/hooks/use-stack-navigation-state.js.map +1 -0
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/index.js +50 -56
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/index.js.map +1 -1
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/{_types.js → types.js} +1 -1
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/types.js.map +1 -0
- package/lib/commonjs/shared/configs/presets.js +8 -2
- package/lib/commonjs/shared/configs/presets.js.map +1 -1
- package/lib/commonjs/shared/hooks/animation/use-screen-animation.js +42 -21
- package/lib/commonjs/shared/hooks/animation/use-screen-animation.js.map +1 -1
- package/lib/commonjs/shared/hooks/gestures/use-build-gestures.js.map +1 -1
- package/lib/commonjs/shared/providers/flags.provider.js +25 -0
- package/lib/commonjs/shared/providers/flags.provider.js.map +1 -0
- package/lib/commonjs/shared/providers/register-bounds.provider.js +71 -45
- package/lib/commonjs/shared/providers/register-bounds.provider.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds.store.js +91 -47
- package/lib/commonjs/shared/stores/bounds.store.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/is-bounds-equal.js +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/is-bounds-equal.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/index.js +4 -5
- package/lib/commonjs/shared/utils/bounds/index.js.map +1 -1
- package/lib/commonjs/shared/utils/create-provider.js +20 -1
- package/lib/commonjs/shared/utils/create-provider.js.map +1 -1
- package/lib/commonjs/shared/utils/reset-stores-for-screen.js +2 -0
- package/lib/commonjs/shared/utils/reset-stores-for-screen.js.map +1 -1
- package/lib/module/blank-stack/components/{Overlay.js → overlay.js} +11 -12
- package/lib/module/blank-stack/components/overlay.js.map +1 -0
- package/lib/module/blank-stack/components/{Screens.js → screens.js} +8 -10
- package/lib/module/blank-stack/components/screens.js.map +1 -0
- package/lib/module/blank-stack/components/stack-view.js +90 -0
- package/lib/module/blank-stack/components/stack-view.js.map +1 -0
- package/lib/module/blank-stack/hooks/use-overlay-animation.js +2 -3
- package/lib/module/blank-stack/hooks/use-overlay-animation.js.map +1 -1
- package/lib/module/blank-stack/index.js +1 -2
- package/lib/module/blank-stack/index.js.map +1 -1
- package/lib/module/blank-stack/navigators/{createBlankStackNavigator.js → create-blank-stack-navigator.js} +2 -2
- package/lib/module/blank-stack/navigators/create-blank-stack-navigator.js.map +1 -0
- package/lib/module/blank-stack/utils/with-stack-navigation/helpers/are-descriptors-equal.js.map +1 -0
- package/lib/module/blank-stack/utils/with-stack-navigation/helpers/calculate-active-screens-limit.js.map +1 -0
- package/lib/module/blank-stack/utils/with-stack-navigation/helpers/compose-descriptors.js +10 -0
- package/lib/module/blank-stack/utils/with-stack-navigation/helpers/compose-descriptors.js.map +1 -0
- package/lib/module/blank-stack/utils/with-stack-navigation/helpers/have-same-route-keys.js.map +1 -0
- package/lib/module/blank-stack/utils/with-stack-navigation/helpers/routes-are-identical.js.map +1 -0
- package/lib/module/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-closing-route-keys.js +1 -12
- package/lib/module/blank-stack/utils/with-stack-navigation/hooks/use-closing-route-keys.js.map +1 -0
- package/lib/module/blank-stack/utils/with-stack-navigation/hooks/use-previous.js.map +1 -0
- package/lib/module/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-stack-navigation-state.js +4 -4
- package/lib/module/blank-stack/utils/with-stack-navigation/hooks/use-stack-navigation-state.js.map +1 -0
- package/lib/module/blank-stack/utils/with-stack-navigation/index.js +49 -55
- package/lib/module/blank-stack/utils/with-stack-navigation/index.js.map +1 -1
- package/lib/module/blank-stack/utils/with-stack-navigation/types.js +4 -0
- package/lib/module/blank-stack/utils/with-stack-navigation/types.js.map +1 -0
- package/lib/module/shared/configs/presets.js +8 -2
- package/lib/module/shared/configs/presets.js.map +1 -1
- package/lib/module/shared/hooks/animation/use-screen-animation.js +42 -21
- package/lib/module/shared/hooks/animation/use-screen-animation.js.map +1 -1
- package/lib/module/shared/hooks/gestures/use-build-gestures.js.map +1 -1
- package/lib/module/shared/providers/flags.provider.js +19 -0
- package/lib/module/shared/providers/flags.provider.js.map +1 -0
- package/lib/module/shared/providers/register-bounds.provider.js +71 -45
- package/lib/module/shared/providers/register-bounds.provider.js.map +1 -1
- package/lib/module/shared/stores/bounds.store.js +91 -47
- package/lib/module/shared/stores/bounds.store.js.map +1 -1
- package/lib/module/shared/utils/bounds/helpers/is-bounds-equal.js +1 -1
- package/lib/module/shared/utils/bounds/helpers/is-bounds-equal.js.map +1 -1
- package/lib/module/shared/utils/bounds/index.js +4 -5
- package/lib/module/shared/utils/bounds/index.js.map +1 -1
- package/lib/module/shared/utils/create-provider.js +20 -1
- package/lib/module/shared/utils/create-provider.js.map +1 -1
- package/lib/module/shared/utils/reset-stores-for-screen.js +2 -0
- package/lib/module/shared/utils/reset-stores-for-screen.js.map +1 -1
- package/lib/typescript/blank-stack/components/{Overlay.d.ts → overlay.d.ts} +1 -1
- package/lib/typescript/blank-stack/components/overlay.d.ts.map +1 -0
- package/lib/typescript/blank-stack/components/{Screens.d.ts → screens.d.ts} +1 -1
- package/lib/typescript/blank-stack/components/{Screens.d.ts.map → screens.d.ts.map} +1 -1
- package/lib/typescript/blank-stack/components/stack-view.d.ts +3 -0
- package/lib/typescript/blank-stack/components/stack-view.d.ts.map +1 -0
- package/lib/typescript/blank-stack/index.d.ts +1 -2
- package/lib/typescript/blank-stack/index.d.ts.map +1 -1
- package/lib/typescript/blank-stack/navigators/{createBlankStackNavigator.d.ts → create-blank-stack-navigator.d.ts} +1 -1
- package/lib/typescript/blank-stack/navigators/create-blank-stack-navigator.d.ts.map +1 -0
- package/lib/typescript/blank-stack/types.d.ts +23 -105
- package/lib/typescript/blank-stack/types.d.ts.map +1 -1
- package/lib/typescript/blank-stack/utils/with-stack-navigation/helpers/are-descriptors-equal.d.ts.map +1 -0
- package/lib/typescript/blank-stack/utils/with-stack-navigation/helpers/calculate-active-screens-limit.d.ts.map +1 -0
- package/lib/typescript/blank-stack/utils/with-stack-navigation/helpers/compose-descriptors.d.ts.map +1 -0
- package/lib/typescript/blank-stack/utils/with-stack-navigation/helpers/have-same-route-keys.d.ts.map +1 -0
- package/lib/typescript/blank-stack/utils/with-stack-navigation/helpers/routes-are-identical.d.ts.map +1 -0
- package/lib/typescript/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-closing-route-keys.d.ts.map +1 -1
- package/lib/typescript/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-previous.d.ts.map +1 -1
- package/lib/typescript/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-stack-navigation-state.d.ts +1 -1
- package/lib/typescript/blank-stack/utils/with-stack-navigation/hooks/use-stack-navigation-state.d.ts.map +1 -0
- package/lib/typescript/blank-stack/utils/with-stack-navigation/index.d.ts +3 -5
- package/lib/typescript/blank-stack/utils/with-stack-navigation/index.d.ts.map +1 -1
- package/lib/typescript/blank-stack/utils/with-stack-navigation/{_types.d.ts → types.d.ts} +1 -1
- package/lib/typescript/blank-stack/utils/with-stack-navigation/types.d.ts.map +1 -0
- package/lib/typescript/native-stack/types.d.ts +7 -1
- package/lib/typescript/native-stack/types.d.ts.map +1 -1
- package/lib/typescript/shared/configs/index.d.ts.map +1 -1
- package/lib/typescript/shared/configs/presets.d.ts.map +1 -1
- package/lib/typescript/shared/hooks/animation/use-screen-animation.d.ts.map +1 -1
- package/lib/typescript/shared/hooks/gestures/use-build-gestures.d.ts.map +1 -1
- package/lib/typescript/shared/index.d.ts +32 -32
- package/lib/typescript/shared/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/flags.provider.d.ts +10 -0
- package/lib/typescript/shared/providers/flags.provider.d.ts.map +1 -0
- package/lib/typescript/shared/providers/register-bounds.provider.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds.store.d.ts +23 -11
- package/lib/typescript/shared/stores/bounds.store.d.ts.map +1 -1
- package/lib/typescript/shared/types/bounds.types.d.ts +2 -2
- package/lib/typescript/shared/types/bounds.types.d.ts.map +1 -1
- package/lib/typescript/shared/types/core.types.d.ts +0 -4
- package/lib/typescript/shared/types/core.types.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/index.d.ts.map +1 -1
- package/lib/typescript/shared/utils/create-provider.d.ts +2 -2
- package/lib/typescript/shared/utils/create-provider.d.ts.map +1 -1
- package/lib/typescript/shared/utils/reset-stores-for-screen.d.ts.map +1 -1
- package/package.json +2 -1
- package/src/blank-stack/components/{Overlay.tsx → overlay.tsx} +9 -12
- package/src/blank-stack/components/{Screens.tsx → screens.tsx} +7 -9
- package/src/blank-stack/components/stack-view.tsx +104 -0
- package/src/blank-stack/hooks/use-overlay-animation.tsx +11 -11
- package/src/blank-stack/index.ts +1 -2
- package/src/blank-stack/navigators/{createBlankStackNavigator.tsx → create-blank-stack-navigator.tsx} +1 -1
- package/src/blank-stack/types.ts +31 -109
- package/src/blank-stack/utils/with-stack-navigation/{_utils → helpers}/compose-descriptors.ts +1 -8
- package/src/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-closing-route-keys.tsx +1 -12
- package/src/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-stack-navigation-state.tsx +5 -5
- package/src/blank-stack/utils/with-stack-navigation/index.tsx +43 -63
- package/src/native-stack/types.ts +8 -1
- package/src/shared/__tests__/bounds.store.test.ts +398 -167
- package/src/shared/__tests__/determine-dismissal.test.ts +2 -12
- package/src/shared/__tests__/geometry.test.ts +1 -1
- package/src/shared/__tests__/gesture.velocity.test.ts +2 -10
- package/src/shared/configs/presets.ts +8 -2
- package/src/shared/hooks/animation/use-screen-animation.tsx +65 -31
- package/src/shared/hooks/gestures/use-build-gestures.tsx +4 -1
- package/src/shared/providers/flags.provider.tsx +21 -0
- package/src/shared/providers/register-bounds.provider.tsx +85 -54
- package/src/shared/stores/bounds.store.ts +90 -54
- package/src/shared/types/bounds.types.ts +2 -2
- package/src/shared/types/core.types.ts +4 -6
- package/src/shared/utils/bounds/helpers/is-bounds-equal.ts +1 -1
- package/src/shared/utils/bounds/index.ts +7 -10
- package/src/shared/utils/create-provider.tsx +35 -1
- package/src/shared/utils/reset-stores-for-screen.ts +2 -0
- package/lib/commonjs/blank-stack/components/Overlay.js.map +0 -1
- package/lib/commonjs/blank-stack/components/Screens.js.map +0 -1
- package/lib/commonjs/blank-stack/components/StackView.js +0 -93
- package/lib/commonjs/blank-stack/components/StackView.js.map +0 -1
- package/lib/commonjs/blank-stack/navigators/createBlankStackNavigator.js.map +0 -1
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/_hooks/use-closing-route-keys.js.map +0 -1
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/_hooks/use-previous.js.map +0 -1
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/_hooks/use-stack-navigation-state.js.map +0 -1
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/_types.js.map +0 -1
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/_utils/are-descriptors-equal.js.map +0 -1
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/_utils/calculate-active-screens-limit.js.map +0 -1
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.js +0 -25
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.js.map +0 -1
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/_utils/have-same-route-keys.js.map +0 -1
- package/lib/commonjs/blank-stack/utils/with-stack-navigation/_utils/routes-are-identical.js.map +0 -1
- package/lib/module/blank-stack/components/Overlay.js.map +0 -1
- package/lib/module/blank-stack/components/Screens.js.map +0 -1
- package/lib/module/blank-stack/components/StackView.js +0 -88
- package/lib/module/blank-stack/components/StackView.js.map +0 -1
- package/lib/module/blank-stack/navigators/createBlankStackNavigator.js.map +0 -1
- package/lib/module/blank-stack/utils/with-stack-navigation/_hooks/use-closing-route-keys.js.map +0 -1
- package/lib/module/blank-stack/utils/with-stack-navigation/_hooks/use-previous.js.map +0 -1
- package/lib/module/blank-stack/utils/with-stack-navigation/_hooks/use-stack-navigation-state.js.map +0 -1
- package/lib/module/blank-stack/utils/with-stack-navigation/_types.js +0 -4
- package/lib/module/blank-stack/utils/with-stack-navigation/_types.js.map +0 -1
- package/lib/module/blank-stack/utils/with-stack-navigation/_utils/are-descriptors-equal.js.map +0 -1
- package/lib/module/blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.js +0 -20
- package/lib/module/blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.js.map +0 -1
- package/lib/module/blank-stack/utils/with-stack-navigation/_utils/have-same-route-keys.js.map +0 -1
- package/lib/module/blank-stack/utils/with-stack-navigation/_utils/routes-are-identical.js.map +0 -1
- package/lib/typescript/blank-stack/components/Overlay.d.ts.map +0 -1
- package/lib/typescript/blank-stack/components/StackView.d.ts +0 -2
- package/lib/typescript/blank-stack/components/StackView.d.ts.map +0 -1
- package/lib/typescript/blank-stack/navigators/createBlankStackNavigator.d.ts.map +0 -1
- package/lib/typescript/blank-stack/utils/with-stack-navigation/_hooks/use-stack-navigation-state.d.ts.map +0 -1
- package/lib/typescript/blank-stack/utils/with-stack-navigation/_types.d.ts.map +0 -1
- package/lib/typescript/blank-stack/utils/with-stack-navigation/_utils/are-descriptors-equal.d.ts.map +0 -1
- package/lib/typescript/blank-stack/utils/with-stack-navigation/_utils/calculate-active-screens-limit.d.ts.map +0 -1
- package/lib/typescript/blank-stack/utils/with-stack-navigation/_utils/compose-descriptors.d.ts.map +0 -1
- package/lib/typescript/blank-stack/utils/with-stack-navigation/_utils/have-same-route-keys.d.ts.map +0 -1
- package/lib/typescript/blank-stack/utils/with-stack-navigation/_utils/routes-are-identical.d.ts.map +0 -1
- package/src/blank-stack/components/StackView.tsx +0 -108
- /package/lib/commonjs/blank-stack/utils/with-stack-navigation/{_utils → helpers}/are-descriptors-equal.js +0 -0
- /package/lib/commonjs/blank-stack/utils/with-stack-navigation/{_utils → helpers}/calculate-active-screens-limit.js +0 -0
- /package/lib/commonjs/blank-stack/utils/with-stack-navigation/{_utils → helpers}/have-same-route-keys.js +0 -0
- /package/lib/commonjs/blank-stack/utils/with-stack-navigation/{_utils → helpers}/routes-are-identical.js +0 -0
- /package/lib/commonjs/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-previous.js +0 -0
- /package/lib/module/blank-stack/utils/with-stack-navigation/{_utils → helpers}/are-descriptors-equal.js +0 -0
- /package/lib/module/blank-stack/utils/with-stack-navigation/{_utils → helpers}/calculate-active-screens-limit.js +0 -0
- /package/lib/module/blank-stack/utils/with-stack-navigation/{_utils → helpers}/have-same-route-keys.js +0 -0
- /package/lib/module/blank-stack/utils/with-stack-navigation/{_utils → helpers}/routes-are-identical.js +0 -0
- /package/lib/module/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-previous.js +0 -0
- /package/lib/typescript/blank-stack/utils/with-stack-navigation/{_utils → helpers}/are-descriptors-equal.d.ts +0 -0
- /package/lib/typescript/blank-stack/utils/with-stack-navigation/{_utils → helpers}/calculate-active-screens-limit.d.ts +0 -0
- /package/lib/typescript/blank-stack/utils/with-stack-navigation/{_utils → helpers}/compose-descriptors.d.ts +0 -0
- /package/lib/typescript/blank-stack/utils/with-stack-navigation/{_utils → helpers}/have-same-route-keys.d.ts +0 -0
- /package/lib/typescript/blank-stack/utils/with-stack-navigation/{_utils → helpers}/routes-are-identical.d.ts +0 -0
- /package/lib/typescript/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-closing-route-keys.d.ts +0 -0
- /package/lib/typescript/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-previous.d.ts +0 -0
- /package/src/blank-stack/utils/with-stack-navigation/{_utils → helpers}/are-descriptors-equal.ts +0 -0
- /package/src/blank-stack/utils/with-stack-navigation/{_utils → helpers}/calculate-active-screens-limit.ts +0 -0
- /package/src/blank-stack/utils/with-stack-navigation/{_utils → helpers}/have-same-route-keys.ts +0 -0
- /package/src/blank-stack/utils/with-stack-navigation/{_utils → helpers}/routes-are-identical.ts +0 -0
- /package/src/blank-stack/utils/with-stack-navigation/{_hooks → hooks}/use-previous.tsx +0 -0
- /package/src/blank-stack/utils/with-stack-navigation/{_types.ts → types.ts} +0 -0
|
@@ -5,30 +5,42 @@ import { useWindowDimensions } from "react-native";
|
|
|
5
5
|
import { useDerivedValue } from "react-native-reanimated";
|
|
6
6
|
import { useSafeAreaInsets } from "react-native-safe-area-context";
|
|
7
7
|
import { DEFAULT_SCREEN_TRANSITION_STATE } from "../../constants";
|
|
8
|
+
import { useFlagsContext } from "../../providers/flags.provider";
|
|
8
9
|
import { useKeys } from "../../providers/keys.provider";
|
|
9
10
|
import { AnimationStore } from "../../stores/animation.store";
|
|
10
11
|
import { GestureStore } from "../../stores/gesture.store";
|
|
11
12
|
import { derivations } from "../../utils/animation/derivations";
|
|
12
13
|
import { createBounds } from "../../utils/bounds";
|
|
13
|
-
const
|
|
14
|
+
const createScreenTransitionState = route => ({
|
|
15
|
+
progress: 0,
|
|
16
|
+
closing: 0,
|
|
17
|
+
animating: 0,
|
|
18
|
+
gesture: {
|
|
19
|
+
x: 0,
|
|
20
|
+
y: 0,
|
|
21
|
+
normalizedX: 0,
|
|
22
|
+
normalizedY: 0,
|
|
23
|
+
isDismissing: 0,
|
|
24
|
+
isDragging: 0,
|
|
25
|
+
direction: null
|
|
26
|
+
},
|
|
27
|
+
route
|
|
28
|
+
});
|
|
29
|
+
const unwrapInto = s => {
|
|
14
30
|
"worklet";
|
|
15
31
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
direction: s.gesture.direction.value
|
|
29
|
-
},
|
|
30
|
-
route: s.route
|
|
31
|
-
};
|
|
32
|
+
const out = s.unwrapped;
|
|
33
|
+
out.progress = s.progress.value;
|
|
34
|
+
out.closing = s.closing.value;
|
|
35
|
+
out.animating = s.animating.value;
|
|
36
|
+
out.gesture.x = s.gesture.x.value;
|
|
37
|
+
out.gesture.y = s.gesture.y.value;
|
|
38
|
+
out.gesture.normalizedX = s.gesture.normalizedX.value;
|
|
39
|
+
out.gesture.normalizedY = s.gesture.normalizedY.value;
|
|
40
|
+
out.gesture.isDismissing = s.gesture.isDismissing.value;
|
|
41
|
+
out.gesture.isDragging = s.gesture.isDragging.value;
|
|
42
|
+
out.gesture.direction = s.gesture.direction.value;
|
|
43
|
+
return out;
|
|
32
44
|
};
|
|
33
45
|
const useBuildScreenTransitionState = descriptor => {
|
|
34
46
|
const key = descriptor?.route.key;
|
|
@@ -39,13 +51,22 @@ const useBuildScreenTransitionState = descriptor => {
|
|
|
39
51
|
closing: AnimationStore.getAnimation(key, "closing"),
|
|
40
52
|
animating: AnimationStore.getAnimation(key, "animating"),
|
|
41
53
|
gesture: GestureStore.getRouteGestures(key),
|
|
42
|
-
route: descriptor.route
|
|
54
|
+
route: descriptor.route,
|
|
55
|
+
unwrapped: createScreenTransitionState(descriptor.route)
|
|
43
56
|
};
|
|
44
57
|
}, [key, descriptor?.route]);
|
|
45
58
|
};
|
|
59
|
+
const hasTransitionsEnabled = (options, alwaysOn) => {
|
|
60
|
+
"worklet";
|
|
61
|
+
|
|
62
|
+
if (alwaysOn) return true;
|
|
63
|
+
return !!options?.enableTransitions;
|
|
64
|
+
};
|
|
46
65
|
export function _useScreenAnimation() {
|
|
47
66
|
const dimensions = useWindowDimensions();
|
|
48
67
|
const insets = useSafeAreaInsets();
|
|
68
|
+
const flags = useFlagsContext();
|
|
69
|
+
const transitionsAlwaysOn = flags?.TRANSITIONS_ALWAYS_ON ?? false;
|
|
49
70
|
const {
|
|
50
71
|
current: currentDescriptor,
|
|
51
72
|
next: nextDescriptor,
|
|
@@ -57,9 +78,9 @@ export function _useScreenAnimation() {
|
|
|
57
78
|
const screenInterpolatorProps = useDerivedValue(() => {
|
|
58
79
|
"worklet";
|
|
59
80
|
|
|
60
|
-
const previous =
|
|
61
|
-
const next = nextDescriptor?.options
|
|
62
|
-
const current =
|
|
81
|
+
const previous = prevAnimation ? unwrapInto(prevAnimation) : undefined;
|
|
82
|
+
const next = nextAnimation && hasTransitionsEnabled(nextDescriptor?.options, transitionsAlwaysOn) ? unwrapInto(nextAnimation) : undefined;
|
|
83
|
+
const current = currentAnimation ? unwrapInto(currentAnimation) : DEFAULT_SCREEN_TRANSITION_STATE;
|
|
63
84
|
const helpers = derivations({
|
|
64
85
|
current,
|
|
65
86
|
next
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useMemo","useWindowDimensions","useDerivedValue","useSafeAreaInsets","DEFAULT_SCREEN_TRANSITION_STATE","useKeys","AnimationStore","GestureStore","derivations","createBounds","
|
|
1
|
+
{"version":3,"names":["useMemo","useWindowDimensions","useDerivedValue","useSafeAreaInsets","DEFAULT_SCREEN_TRANSITION_STATE","useFlagsContext","useKeys","AnimationStore","GestureStore","derivations","createBounds","createScreenTransitionState","route","progress","closing","animating","gesture","x","y","normalizedX","normalizedY","isDismissing","isDragging","direction","unwrapInto","s","out","unwrapped","value","useBuildScreenTransitionState","descriptor","key","undefined","getAnimation","getRouteGestures","hasTransitionsEnabled","options","alwaysOn","enableTransitions","_useScreenAnimation","dimensions","insets","flags","transitionsAlwaysOn","TRANSITIONS_ALWAYS_ON","current","currentDescriptor","next","nextDescriptor","previous","previousDescriptor","currentAnimation","nextAnimation","prevAnimation","screenInterpolatorProps","helpers","layouts","screen","nextInterpolator","screenStyleInterpolator","currentInterpolator","useScreenAnimation","props","bounds"],"sourceRoot":"../../../../../src","sources":["shared/hooks/animation/use-screen-animation.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["StackActions","useCallback","useMemo","useWindowDimensions","Gesture","useSharedValue","DEFAULT_GESTURE_ACTIVATION_AREA","DEFAULT_GESTURE_DIRECTION","DEFAULT_GESTURE_DRIVES_PROGRESS","DEFAULT_GESTURE_ENABLED","GESTURE_VELOCITY_IMPACT","useKeys","AnimationStore","GestureStore","GestureOffsetState","startScreenTransition","applyOffsetRules","determineDismissal","mapGestureToProgress","resetGestureValues","velocity","useStableCallbackValue","useBuildGestures","scrollConfig","parentContext","dimensions","current","initialTouch","x","y","gestureOffsetState","PENDING","gestureAnimationValues","getRouteGestures","route","key","animations","getAll","gestureDirection","gestureEnabled","gestureVelocityImpact","gestureDrivesProgress","gestureActivationArea","gestureResponseDistance","transitionSpec","options","directions","directionsArray","Array","isArray","isBidirectional","includes","vertical","verticalInverted","horizontal","horizontalInverted","handleDismiss","isDismissing","value","state","navigation","getState","routeStillPresent","routes","some","dispatch","pop","source","target","onTouchesDown","e","firstTouch","changedTouches","onTouchesMove","manager","FAILED","fail","touch","isSwipingDown","isSwipingUp","isSwipingRight","isSwipingLeft","activationArea","responseDistance","isDragging","activate","maxScrollY","contentHeight","layoutHeight","maxScrollX","contentWidth","layoutWidth","recognizedDirection","scrollCfg","shouldActivate","activatedDirection","PASSED","direction","onStart","onUpdate","event","gestureProgress","translationX","translationY","width","height","normalizedX","Math","max","min","normalizedY","maxProgress","allowedDown","allowedUp","allowedRight","allowedLeft","currentProgress","progress","onEnd","shouldDismiss","spec","close","open","gestures","initialVelocity","calculateProgressVelocity","onAnimationFinish","undefined","nativeGesture","Native","panGesture","Pan","enabled","manualActivation","blocksExternalGesture"],"sourceRoot":"../../../../../src","sources":["shared/hooks/gestures/use-build-gestures.tsx"],"mappings":";;AAAA,SAASA,YAAY,QAAQ,0BAA0B;AACvD,SAASC,WAAW,EAAEC,OAAO,QAAQ,OAAO;AAC5C,SAASC,mBAAmB,QAAQ,cAAc;AAClD,SACCC,OAAO,QAMD,8BAA8B;AAErC,SAA2BC,cAAc,QAAQ,yBAAyB;AAC1E,SACCC,+BAA+B,EAC/BC,yBAAyB,EACzBC,+BAA+B,EAC/BC,uBAAuB,EACvBC,uBAAuB,QACjB,iBAAiB;AAKxB,SAASC,OAAO,QAAQ,+BAA+B;AACvD,SAASC,cAAc,QAAQ,8BAA8B;AAC7D,SAASC,YAAY,QAA8B,4BAA4B;AAE/E,
|
|
1
|
+
{"version":3,"names":["StackActions","useCallback","useMemo","useWindowDimensions","Gesture","useSharedValue","DEFAULT_GESTURE_ACTIVATION_AREA","DEFAULT_GESTURE_DIRECTION","DEFAULT_GESTURE_DRIVES_PROGRESS","DEFAULT_GESTURE_ENABLED","GESTURE_VELOCITY_IMPACT","useKeys","AnimationStore","GestureStore","GestureOffsetState","startScreenTransition","applyOffsetRules","determineDismissal","mapGestureToProgress","resetGestureValues","velocity","useStableCallbackValue","useBuildGestures","scrollConfig","parentContext","dimensions","current","initialTouch","x","y","gestureOffsetState","PENDING","gestureAnimationValues","getRouteGestures","route","key","animations","getAll","gestureDirection","gestureEnabled","gestureVelocityImpact","gestureDrivesProgress","gestureActivationArea","gestureResponseDistance","transitionSpec","options","directions","directionsArray","Array","isArray","isBidirectional","includes","vertical","verticalInverted","horizontal","horizontalInverted","handleDismiss","isDismissing","value","state","navigation","getState","routeStillPresent","routes","some","dispatch","pop","source","target","onTouchesDown","e","firstTouch","changedTouches","onTouchesMove","manager","FAILED","fail","touch","isSwipingDown","isSwipingUp","isSwipingRight","isSwipingLeft","activationArea","responseDistance","isDragging","activate","maxScrollY","contentHeight","layoutHeight","maxScrollX","contentWidth","layoutWidth","recognizedDirection","scrollCfg","shouldActivate","activatedDirection","PASSED","direction","onStart","onUpdate","event","gestureProgress","translationX","translationY","width","height","normalizedX","Math","max","min","normalizedY","maxProgress","allowedDown","allowedUp","allowedRight","allowedLeft","currentProgress","progress","onEnd","shouldDismiss","spec","close","open","gestures","initialVelocity","calculateProgressVelocity","onAnimationFinish","undefined","nativeGesture","Native","panGesture","Pan","enabled","manualActivation","blocksExternalGesture"],"sourceRoot":"../../../../../src","sources":["shared/hooks/gestures/use-build-gestures.tsx"],"mappings":";;AAAA,SAASA,YAAY,QAAQ,0BAA0B;AACvD,SAASC,WAAW,EAAEC,OAAO,QAAQ,OAAO;AAC5C,SAASC,mBAAmB,QAAQ,cAAc;AAClD,SACCC,OAAO,QAMD,8BAA8B;AAErC,SAA2BC,cAAc,QAAQ,yBAAyB;AAC1E,SACCC,+BAA+B,EAC/BC,yBAAyB,EACzBC,+BAA+B,EAC/BC,uBAAuB,EACvBC,uBAAuB,QACjB,iBAAiB;AAKxB,SAASC,OAAO,QAAQ,+BAA+B;AACvD,SAASC,cAAc,QAAQ,8BAA8B;AAC7D,SAASC,YAAY,QAA8B,4BAA4B;AAE/E,SAECC,kBAAkB,QACZ,2BAA2B;AAClC,SAASC,qBAAqB,QAAQ,+CAA+C;AACrF,SAASC,gBAAgB,QAAQ,8CAA8C;AAC/E,SAASC,kBAAkB,QAAQ,yCAAyC;AAC5E,SAASC,oBAAoB,QAAQ,6CAA6C;AAClF,SAASC,kBAAkB,QAAQ,0CAA0C;AAC7E,SAASC,QAAQ,QAAQ,8BAA8B;AACvD,OAAOC,sBAAsB,MAAM,8BAA8B;AAOjE,OAAO,MAAMC,gBAAgB,GAAGA,CAAC;EAChCC,YAAY;EACZC;AACuB,CAAC,KAIpB;EACJ,MAAMC,UAAU,GAAGtB,mBAAmB,CAAC,CAAC;EACxC,MAAM;IAAEuB;EAAQ,CAAC,GAAGf,OAAO,CAAC,CAAC;EAE7B,MAAMgB,YAAY,GAAGtB,cAAc,CAAC;IACnCuB,CAAC,EAAE,CAAC;IACJC,CAAC,EAAE;EACJ,CAAC,CAAC;EAEF,MAAMC,kBAAkB,GAAGzB,cAAc,CACxCS,kBAAkB,CAACiB,OACpB,CAAC;EAED,MAAMC,sBAAsB,GAAGnB,YAAY,CAACoB,gBAAgB,CAC3DP,OAAO,CAACQ,KAAK,CAACC,GACf,CAAC;EACD,MAAMC,UAAU,GAAGxB,cAAc,CAACyB,MAAM,CAACX,OAAO,CAACQ,KAAK,CAACC,GAAG,CAAC;EAE3D,MAAM;IACLG,gBAAgB,GAAG/B,yBAAyB;IAC5CgC,cAAc,GAAG9B,uBAAuB;IACxC+B,qBAAqB,GAAG9B,uBAAuB;IAC/C+B,qBAAqB,GAAGjC,+BAA+B;IACvDkC,qBAAqB,GAAGpC,+BAA+B;IACvDqC,uBAAuB;IACvBC;EACD,CAAC,GAAGlB,OAAO,CAACmB,OAAO;EAEnB,MAAMC,UAAU,GAAG5C,OAAO,CAAC,MAAM;IAChC,MAAM6C,eAAe,GAAGC,KAAK,CAACC,OAAO,CAACX,gBAAgB,CAAC,GACpDA,gBAAgB,GAChB,CAACA,gBAAgB,CAAC;IACrB,MAAMY,eAAe,GAAGH,eAAe,CAACI,QAAQ,CAAC,eAAe,CAAC;IAEjE,OAAO;MACNC,QAAQ,EAAEL,eAAe,CAACI,QAAQ,CAAC,UAAU,CAAC,IAAID,eAAe;MACjEG,gBAAgB,EACfN,eAAe,CAACI,QAAQ,CAAC,mBAAmB,CAAC,IAAID,eAAe;MACjEI,UAAU,EAAEP,eAAe,CAACI,QAAQ,CAAC,YAAY,CAAC,IAAID,eAAe;MACrEK,kBAAkB,EACjBR,eAAe,CAACI,QAAQ,CAAC,qBAAqB,CAAC,IAAID;IACrD,CAAC;EACF,CAAC,EAAE,CAACZ,gBAAgB,CAAC,CAAC;EAEtB,MAAMkB,aAAa,GAAGvD,WAAW,CAAC,MAAM;IACvC;IACA;IACA,IAAIuB,aAAa,EAAEQ,sBAAsB,CAACyB,YAAY,EAAEC,KAAK,EAAE;MAC9D;IACD;IAEA,MAAMC,KAAK,GAAGjC,OAAO,CAACkC,UAAU,CAACC,QAAQ,CAAC,CAAC;IAE3C,MAAMC,iBAAiB,GAAGH,KAAK,CAACI,MAAM,CAACC,IAAI,CACzC9B,KAAK,IAAKA,KAAK,CAACC,GAAG,KAAKT,OAAO,CAACQ,KAAK,CAACC,GACxC,CAAC;IAED,IAAI,CAAC2B,iBAAiB,EAAE;MACvB;IACD;IAEApC,OAAO,CAACkC,UAAU,CAACK,QAAQ,CAAC;MAC3B,GAAGjE,YAAY,CAACkE,GAAG,CAAC,CAAC;MACrBC,MAAM,EAAEzC,OAAO,CAACQ,KAAK,CAACC,GAAG;MACzBiC,MAAM,EAAET,KAAK,CAACxB;IACf,CAAC,CAAC;EACH,CAAC,EAAE,CAACT,OAAO,EAAEF,aAAa,CAAC,CAAC;EAE5B,MAAM6C,aAAa,GAAGhD,sBAAsB,CAAEiD,CAAoB,IAAK;IACtE,SAAS;;IACT,MAAMC,UAAU,GAAGD,CAAC,CAACE,cAAc,CAAC,CAAC,CAAC;IACtC7C,YAAY,CAAC+B,KAAK,GAAG;MAAE9B,CAAC,EAAE2C,UAAU,CAAC3C,CAAC;MAAEC,CAAC,EAAE0C,UAAU,CAAC1C;IAAE,CAAC;IACzDC,kBAAkB,CAAC4B,KAAK,GAAG5C,kBAAkB,CAACiB,OAAO;EACtD,CAAC,CAAC;EAEF,MAAM0C,aAAa,GAAGpD,sBAAsB,CAC3C,CAACiD,CAAoB,EAAEI,OAAgC,KAAK;IAC3D,SAAS;;IAET;IACA,IAAIlD,aAAa,EAAEQ,sBAAsB,CAACyB,YAAY,EAAEC,KAAK,EAAE;MAC9D5B,kBAAkB,CAAC4B,KAAK,GAAG5C,kBAAkB,CAAC6D,MAAM;MACpDD,OAAO,CAACE,IAAI,CAAC,CAAC;MACd;IACD;IAEA,MAAMC,KAAK,GAAGP,CAAC,CAACE,cAAc,CAAC,CAAC,CAAC;IAEjC,MAAM;MAAEM,aAAa;MAAEC,WAAW;MAAEC,cAAc;MAAEC;IAAc,CAAC,GAClEjE,gBAAgB,CAAC;MAChB6D,KAAK;MACL/B,UAAU;MACV4B,OAAO;MACPjD,UAAU;MACVK,kBAAkB;MAClBH,YAAY,EAAEA,YAAY,CAAC+B,KAAK;MAChCwB,cAAc,EAAExC,qBAAqB;MACrCyC,gBAAgB,EAAExC;IACnB,CAAC,CAAC;IAEH,IAAIb,kBAAkB,CAAC4B,KAAK,KAAK5C,kBAAkB,CAAC6D,MAAM,EAAE;MAC3DD,OAAO,CAACE,IAAI,CAAC,CAAC;MACd;IACD;;IAEA;IACA,IAAI5C,sBAAsB,CAACoD,UAAU,EAAE1B,KAAK,EAAE;MAC7CgB,OAAO,CAACW,QAAQ,CAAC,CAAC;MAClB;IACD;IAEA,MAAMC,UAAU,GAAG/D,YAAY,CAACmC,KAAK,EAAE6B,aAAa,GACjDhE,YAAY,CAACmC,KAAK,CAAC6B,aAAa,GAAGhE,YAAY,CAACmC,KAAK,CAAC8B,YAAY,GAClE,CAAC;IAEJ,MAAMC,UAAU,GAAGlE,YAAY,CAACmC,KAAK,EAAEgC,YAAY,GAChDnE,YAAY,CAACmC,KAAK,CAACgC,YAAY,GAAGnE,YAAY,CAACmC,KAAK,CAACiC,WAAW,GAChE,CAAC;IAEJ,MAAMC,mBAAmB,GACxBd,aAAa,IAAIC,WAAW,IAAIC,cAAc,IAAIC,aAAa;IAEhE,MAAMY,SAAS,GAAGtE,YAAY,CAACmC,KAAK;IAEpC,IAAIoC,cAAc,GAAG,KAAK;IAC1B,IAAIC,kBAA2C,GAAG,IAAI;IAEtD,IAAIH,mBAAmB,EAAE;MACxB,IAAI9C,UAAU,CAACM,QAAQ,IAAI0B,aAAa,EAAE;QACzCgB,cAAc,GAAGD,SAAS,GAAGA,SAAS,CAAChE,CAAC,IAAI,CAAC,GAAG,IAAI;QACpD,IAAIiE,cAAc,EAAEC,kBAAkB,GAAG,UAAU;MACpD;MACA,IAAIjD,UAAU,CAACQ,UAAU,IAAI0B,cAAc,EAAE;QAC5Cc,cAAc,GAAGD,SAAS,GAAGA,SAAS,CAACjE,CAAC,IAAI,CAAC,GAAG,IAAI;QACpD,IAAIkE,cAAc,EAAEC,kBAAkB,GAAG,YAAY;MACtD;MACA,IAAIjD,UAAU,CAACO,gBAAgB,IAAI0B,WAAW,EAAE;QAC/Ce,cAAc,GAAGD,SAAS,GAAGA,SAAS,CAAChE,CAAC,IAAIyD,UAAU,GAAG,IAAI;QAC7D,IAAIQ,cAAc,EAAEC,kBAAkB,GAAG,mBAAmB;MAC7D;MACA,IAAIjD,UAAU,CAACS,kBAAkB,IAAI0B,aAAa,EAAE;QACnDa,cAAc,GAAGD,SAAS,GAAGA,SAAS,CAACjE,CAAC,IAAI6D,UAAU,GAAG,IAAI;QAC7D,IAAIK,cAAc,EAAEC,kBAAkB,GAAG,qBAAqB;MAC/D;IACD;IAEA,IAAIH,mBAAmB,IAAI,CAACE,cAAc,EAAE;MAC3CpB,OAAO,CAACE,IAAI,CAAC,CAAC;MACd;IACD;IAEA,IACCkB,cAAc,IACdhE,kBAAkB,CAAC4B,KAAK,KAAK5C,kBAAkB,CAACkF,MAAM,IACtD,CAAChE,sBAAsB,CAACyB,YAAY,EAAEC,KAAK,EAC1C;MACD1B,sBAAsB,CAACiE,SAAS,CAACvC,KAAK,GAAGqC,kBAAkB;MAC3DrB,OAAO,CAACW,QAAQ,CAAC,CAAC;MAClB;IACD;EACD,CACD,CAAC;EAED,MAAMa,OAAO,GAAG7E,sBAAsB,CAAC,MAAM;IAC5C,SAAS;;IACTW,sBAAsB,CAACoD,UAAU,CAAC1B,KAAK,GAAG,CAAC;IAC3C1B,sBAAsB,CAACyB,YAAY,CAACC,KAAK,GAAG,CAAC;EAC9C,CAAC,CAAC;EAEF,MAAMyC,QAAQ,GAAG9E,sBAAsB,CACrC+E,KAAwD,IAAK;IAC7D,SAAS;;IAET,IAAIC,eAAe,GAAG,CAAC;IAEvB,MAAM;MAAEC,YAAY;MAAEC;IAAa,CAAC,GAAGH,KAAK;IAC5C,MAAM;MAAEI,KAAK;MAAEC;IAAO,CAAC,GAAGhF,UAAU;IAEpCO,sBAAsB,CAACJ,CAAC,CAAC8B,KAAK,GAAG4C,YAAY;IAC7CtE,sBAAsB,CAACH,CAAC,CAAC6B,KAAK,GAAG6C,YAAY;IAC7CvE,sBAAsB,CAAC0E,WAAW,CAAChD,KAAK,GAAGiD,IAAI,CAACC,GAAG,CAClD,CAAC,CAAC,EACFD,IAAI,CAACE,GAAG,CAAC,CAAC,EAAEP,YAAY,GAAGE,KAAK,CACjC,CAAC;IACDxE,sBAAsB,CAAC8E,WAAW,CAACpD,KAAK,GAAGiD,IAAI,CAACC,GAAG,CAClD,CAAC,CAAC,EACFD,IAAI,CAACE,GAAG,CAAC,CAAC,EAAEN,YAAY,GAAGE,MAAM,CAClC,CAAC;IAED,IAAIM,WAAW,GAAG,CAAC;IAEnB,MAAMC,WAAW,GAAGlE,UAAU,CAACM,QAAQ;IACvC,MAAM6D,SAAS,GAAGnE,UAAU,CAACO,gBAAgB;IAC7C,MAAM6D,YAAY,GAAGpE,UAAU,CAACQ,UAAU;IAC1C,MAAM6D,WAAW,GAAGrE,UAAU,CAACS,kBAAkB;IAEjD,IAAI2D,YAAY,IAAId,KAAK,CAACE,YAAY,GAAG,CAAC,EAAE;MAC3C,MAAMc,eAAe,GAAGlG,oBAAoB,CAC3CoF,YAAY,EACZ7E,UAAU,CAAC+E,KACZ,CAAC;MACDO,WAAW,GAAGJ,IAAI,CAACC,GAAG,CAACG,WAAW,EAAEK,eAAe,CAAC;IACrD;IAEA,IAAID,WAAW,IAAIf,KAAK,CAACE,YAAY,GAAG,CAAC,EAAE;MAC1C,MAAMc,eAAe,GAAGlG,oBAAoB,CAC3C,CAACoF,YAAY,EACb7E,UAAU,CAAC+E,KACZ,CAAC;MACDO,WAAW,GAAGJ,IAAI,CAACC,GAAG,CAACG,WAAW,EAAEK,eAAe,CAAC;IACrD;IAEA,IAAIJ,WAAW,IAAIZ,KAAK,CAACG,YAAY,GAAG,CAAC,EAAE;MAC1C,MAAMa,eAAe,GAAGlG,oBAAoB,CAC3CqF,YAAY,EACZ9E,UAAU,CAACgF,MACZ,CAAC;MACDM,WAAW,GAAGJ,IAAI,CAACC,GAAG,CAACG,WAAW,EAAEK,eAAe,CAAC;IACrD;IAEA,IAAIH,SAAS,IAAIb,KAAK,CAACG,YAAY,GAAG,CAAC,EAAE;MACxC,MAAMa,eAAe,GAAGlG,oBAAoB,CAC3C,CAACqF,YAAY,EACb9E,UAAU,CAACgF,MACZ,CAAC;MACDM,WAAW,GAAGJ,IAAI,CAACC,GAAG,CAACG,WAAW,EAAEK,eAAe,CAAC;IACrD;IAEAf,eAAe,GAAGU,WAAW;IAE7B,IAAItE,qBAAqB,EAAE;MAC1BL,UAAU,CAACiF,QAAQ,CAAC3D,KAAK,GAAG,CAAC,GAAG2C,eAAe;IAChD;EACD,CACD,CAAC;EAED,MAAMiB,KAAK,GAAGjG,sBAAsB,CAClC+E,KAA6D,IAAK;IAClE,SAAS;;IAET,MAAM;MAAEmB;IAAc,CAAC,GAAGtG,kBAAkB,CAAC;MAC5CmF,KAAK;MACLtD,UAAU;MACVrB,UAAU;MACVe;IACD,CAAC,CAAC;IAEF,MAAMgF,IAAI,GAAGD,aAAa,GAAG3E,cAAc,EAAE6E,KAAK,GAAG7E,cAAc,EAAE8E,IAAI;IAEzEvG,kBAAkB,CAAC;MAClBqG,IAAI;MACJG,QAAQ,EAAE3F,sBAAsB;MAChCuF,aAAa;MACbnB,KAAK;MACL3E;IACD,CAAC,CAAC;IAEF,MAAMmG,eAAe,GAAGxG,QAAQ,CAACyG,yBAAyB,CAAC;MAC1DzF,UAAU;MACVmF,aAAa;MACbnB,KAAK;MACL3E,UAAU;MACVqB;IACD,CAAC,CAAC;IAEF/B,qBAAqB,CAAC;MACrBqD,MAAM,EAAEmD,aAAa,GAAG,OAAO,GAAG,MAAM;MACxCO,iBAAiB,EAAEP,aAAa,GAAG/D,aAAa,GAAGuE,SAAS;MAC5DP,IAAI,EAAE5E,cAAc;MACpBR,UAAU;MACVwF;IACD,CAAC,CAAC;EACH,CACD,CAAC;EAED,OAAO1H,OAAO,CAAC,MAAM;IACpB,MAAM8H,aAAa,GAAG5H,OAAO,CAAC6H,MAAM,CAAC,CAAC;IAEtC,MAAMC,UAAU,GAAG9H,OAAO,CAAC+H,GAAG,CAAC,CAAC,CAC9BC,OAAO,CAAC7F,cAAc,CAAC,CACvB8F,gBAAgB,CAAC,IAAI,CAAC,CACtBhE,aAAa,CAACA,aAAa,CAAC,CAC5BI,aAAa,CAACA,aAAa,CAAC,CAC5ByB,OAAO,CAACA,OAAO,CAAC,CAChBC,QAAQ,CAACA,QAAQ,CAAC,CAClBmB,KAAK,CAACA,KAAK,CAAC,CACZgB,qBAAqB,CAACN,aAAa,CAAC;IAEtC,OAAO;MACNE,UAAU;MACVF,aAAa;MACbhG;IACD,CAAC;EACF,CAAC,EAAE,CACFO,cAAc,EACd8B,aAAa,EACbI,aAAa,EACbyB,OAAO,EACPC,QAAQ,EACRmB,KAAK,EACLtF,sBAAsB,CACtB,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import createProvider from "../utils/create-provider";
|
|
4
|
+
const {
|
|
5
|
+
FlagsProvider,
|
|
6
|
+
useFlagsContext
|
|
7
|
+
} = createProvider("Flags", {
|
|
8
|
+
guarded: false
|
|
9
|
+
})(({
|
|
10
|
+
TRANSITIONS_ALWAYS_ON = false,
|
|
11
|
+
children
|
|
12
|
+
}) => ({
|
|
13
|
+
value: {
|
|
14
|
+
TRANSITIONS_ALWAYS_ON
|
|
15
|
+
},
|
|
16
|
+
children
|
|
17
|
+
}));
|
|
18
|
+
export { FlagsProvider, useFlagsContext };
|
|
19
|
+
//# sourceMappingURL=flags.provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createProvider","FlagsProvider","useFlagsContext","guarded","TRANSITIONS_ALWAYS_ON","children","value"],"sourceRoot":"../../../../src","sources":["shared/providers/flags.provider.tsx"],"mappings":";;AAAA,OAAOA,cAAc,MAAM,0BAA0B;AAWrD,MAAM;EAAEC,aAAa;EAAEC;AAAgB,CAAC,GAAGF,cAAc,CAAC,OAAO,EAAE;EAClEG,OAAO,EAAE;AACV,CAAC,CAAC,CACD,CAAC;EAAEC,qBAAqB,GAAG,KAAK;EAAEC;AAAS,CAAC,MAAM;EACjDC,KAAK,EAAE;IAAEF;EAAsB,CAAC;EAChCC;AACD,CAAC,CACF,CAAC;AAED,SAASJ,aAAa,EAAEC,eAAe","ignoreList":[]}
|
|
@@ -11,23 +11,24 @@ import { prepareStyleForBounds } from "../utils/bounds/helpers/styles";
|
|
|
11
11
|
import createProvider from "../utils/create-provider";
|
|
12
12
|
import { useKeys } from "./keys.provider";
|
|
13
13
|
/**
|
|
14
|
-
*
|
|
15
|
-
* Returns
|
|
14
|
+
* Builds the full ancestor key chain for nested navigators.
|
|
15
|
+
* Returns an array of screen keys from immediate parent to root.
|
|
16
|
+
* [parentKey, grandparentKey, greatGrandparentKey, ...]
|
|
16
17
|
*/
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
18
|
+
const getAncestorKeys = current => {
|
|
19
|
+
const ancestors = [];
|
|
20
|
+
let nav = current.navigation.getParent();
|
|
21
|
+
while (nav) {
|
|
22
|
+
const state = nav.getState();
|
|
23
|
+
if (state?.routes && state.index !== undefined) {
|
|
24
|
+
const focusedRoute = state.routes[state.index];
|
|
25
|
+
if (focusedRoute?.key) {
|
|
26
|
+
ancestors.push(focusedRoute.key);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
nav = nav.getParent();
|
|
29
30
|
}
|
|
30
|
-
return
|
|
31
|
+
return ancestors;
|
|
31
32
|
};
|
|
32
33
|
|
|
33
34
|
/**
|
|
@@ -38,48 +39,72 @@ const useInitialLayoutHandler = params => {
|
|
|
38
39
|
const {
|
|
39
40
|
sharedBoundTag,
|
|
40
41
|
currentScreenKey,
|
|
41
|
-
|
|
42
|
+
ancestorKeys,
|
|
42
43
|
maybeMeasureAndStore
|
|
43
44
|
} = params;
|
|
44
45
|
const isAnimating = AnimationStore.getAnimation(currentScreenKey, "animating");
|
|
45
|
-
|
|
46
|
+
|
|
47
|
+
// Check if any ancestor is animating
|
|
48
|
+
const ancestorAnimations = ancestorKeys.map(key => AnimationStore.getAnimation(key, "animating"));
|
|
46
49
|
const hasMeasuredOnLayout = useSharedValue(false);
|
|
47
50
|
return useCallback(() => {
|
|
48
51
|
"worklet";
|
|
49
52
|
|
|
50
|
-
if (!sharedBoundTag || hasMeasuredOnLayout.
|
|
51
|
-
|
|
53
|
+
if (!sharedBoundTag || hasMeasuredOnLayout.get()) return;
|
|
54
|
+
|
|
55
|
+
// Check if current or any ancestor is animating
|
|
56
|
+
let isAnyAnimating = isAnimating.get();
|
|
57
|
+
for (let i = 0; i < ancestorAnimations.length; i++) {
|
|
58
|
+
if (ancestorAnimations[i].get()) {
|
|
59
|
+
isAnyAnimating = 1;
|
|
60
|
+
break;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
if (!isAnyAnimating) return;
|
|
52
64
|
maybeMeasureAndStore({
|
|
53
65
|
shouldSetSource: false,
|
|
54
66
|
shouldSetDestination: true
|
|
55
67
|
});
|
|
56
|
-
hasMeasuredOnLayout.
|
|
57
|
-
}, [sharedBoundTag, hasMeasuredOnLayout, isAnimating,
|
|
68
|
+
hasMeasuredOnLayout.set(true);
|
|
69
|
+
}, [sharedBoundTag, hasMeasuredOnLayout, isAnimating, ancestorAnimations, maybeMeasureAndStore]);
|
|
58
70
|
};
|
|
59
71
|
|
|
72
|
+
/**
|
|
73
|
+
* Measures non-pressable elements when screen becomes blurred.
|
|
74
|
+
* Captures bounds right before transition starts.
|
|
75
|
+
*/
|
|
60
76
|
/**
|
|
61
77
|
* Measures non-pressable elements when screen becomes blurred.
|
|
62
78
|
* Captures bounds right before transition starts.
|
|
63
79
|
*/
|
|
64
80
|
const useBlurMeasurement = params => {
|
|
81
|
+
const {
|
|
82
|
+
current
|
|
83
|
+
} = useKeys();
|
|
65
84
|
const {
|
|
66
85
|
sharedBoundTag,
|
|
86
|
+
ancestorKeys,
|
|
67
87
|
maybeMeasureAndStore
|
|
68
88
|
} = params;
|
|
69
|
-
const isFocused = useRef(true);
|
|
70
89
|
const hasCapturedSource = useRef(false);
|
|
90
|
+
const ancestorClosing = [current.route.key, ...ancestorKeys].map(key => AnimationStore.getAnimation(key, "closing"));
|
|
91
|
+
const maybeMeasureOnBlur = useStableCallbackValue(() => {
|
|
92
|
+
"worklet";
|
|
93
|
+
|
|
94
|
+
// Don't measure if current / any ancestor is closing
|
|
95
|
+
const isOneClosing = ancestorClosing.some(closing => closing.get());
|
|
96
|
+
if (isOneClosing) return;
|
|
97
|
+
maybeMeasureAndStore({
|
|
98
|
+
shouldSetSource: true
|
|
99
|
+
});
|
|
100
|
+
});
|
|
71
101
|
useFocusEffect(useCallback(() => {
|
|
72
|
-
isFocused.current = true;
|
|
73
102
|
hasCapturedSource.current = false;
|
|
74
103
|
return () => {
|
|
75
|
-
if (!sharedBoundTag) return;
|
|
76
|
-
|
|
77
|
-
isFocused.current = false;
|
|
78
|
-
runOnUI(maybeMeasureAndStore)({
|
|
79
|
-
shouldSetSource: true
|
|
80
|
-
});
|
|
104
|
+
if (!sharedBoundTag || hasCapturedSource.current) return;
|
|
105
|
+
runOnUI(maybeMeasureOnBlur)();
|
|
81
106
|
};
|
|
82
|
-
}, [sharedBoundTag,
|
|
107
|
+
}, [sharedBoundTag, maybeMeasureOnBlur]));
|
|
83
108
|
return {
|
|
84
109
|
markSourceCaptured: () => {
|
|
85
110
|
hasCapturedSource.current = true;
|
|
@@ -95,7 +120,7 @@ const useParentSyncReaction = params => {
|
|
|
95
120
|
parentContext,
|
|
96
121
|
maybeMeasureAndStore
|
|
97
122
|
} = params;
|
|
98
|
-
useAnimatedReaction(() => parentContext?.updateSignal.
|
|
123
|
+
useAnimatedReaction(() => parentContext?.updateSignal.get(), value => {
|
|
99
124
|
"worklet";
|
|
100
125
|
|
|
101
126
|
if (value === 0 || value === undefined) return;
|
|
@@ -118,7 +143,7 @@ const {
|
|
|
118
143
|
current
|
|
119
144
|
} = useKeys();
|
|
120
145
|
const currentScreenKey = current.route.key;
|
|
121
|
-
const
|
|
146
|
+
const ancestorKeys = useMemo(() => getAncestorKeys(current), [current]);
|
|
122
147
|
|
|
123
148
|
// Context & signals
|
|
124
149
|
const parentContext = useRegisterBoundsContext();
|
|
@@ -130,7 +155,7 @@ const {
|
|
|
130
155
|
"worklet";
|
|
131
156
|
|
|
132
157
|
const isRoot = !parentContext;
|
|
133
|
-
if (isRoot) updateSignal.
|
|
158
|
+
if (isRoot) updateSignal.set(updateSignal.get() + 1);
|
|
134
159
|
});
|
|
135
160
|
const maybeMeasureAndStore = useStableCallbackValue(({
|
|
136
161
|
onPress,
|
|
@@ -143,30 +168,30 @@ const {
|
|
|
143
168
|
const measured = measure(animatedRef);
|
|
144
169
|
if (!measured) return;
|
|
145
170
|
emitUpdate();
|
|
146
|
-
|
|
147
|
-
// Always register occurrence
|
|
148
|
-
BoundStore.registerOccurrence(sharedBoundTag, currentScreenKey, measured, preparedStyles);
|
|
149
|
-
|
|
150
|
-
// Set as source (on press or blur)
|
|
171
|
+
BoundStore.registerSnapshot(sharedBoundTag, currentScreenKey, measured, preparedStyles, ancestorKeys);
|
|
151
172
|
if (shouldSetSource) {
|
|
152
|
-
if (isAnimating.
|
|
153
|
-
|
|
154
|
-
|
|
173
|
+
if (isAnimating.get()) {
|
|
174
|
+
// If animation is already in progress,
|
|
175
|
+
// lets use the existing measuremenets.
|
|
176
|
+
const existing = BoundStore.getSnapshot(sharedBoundTag, currentScreenKey);
|
|
177
|
+
if (existing) {
|
|
178
|
+
BoundStore.setLinkSource(sharedBoundTag, currentScreenKey, existing.bounds, preparedStyles, ancestorKeys);
|
|
179
|
+
}
|
|
155
180
|
return;
|
|
156
181
|
}
|
|
157
|
-
BoundStore.setLinkSource(sharedBoundTag, currentScreenKey, measured, preparedStyles,
|
|
182
|
+
BoundStore.setLinkSource(sharedBoundTag, currentScreenKey, measured, preparedStyles, ancestorKeys);
|
|
158
183
|
}
|
|
159
184
|
|
|
160
185
|
// Set as destination (on mount during animation)
|
|
161
186
|
if (shouldSetDestination) {
|
|
162
|
-
BoundStore.setLinkDestination(sharedBoundTag, currentScreenKey, measured, preparedStyles,
|
|
187
|
+
BoundStore.setLinkDestination(sharedBoundTag, currentScreenKey, measured, preparedStyles, ancestorKeys);
|
|
163
188
|
}
|
|
164
189
|
if (onPress) runOnJS(onPress)();
|
|
165
190
|
});
|
|
166
191
|
const handleInitialLayout = useInitialLayoutHandler({
|
|
167
192
|
sharedBoundTag,
|
|
168
193
|
currentScreenKey,
|
|
169
|
-
|
|
194
|
+
ancestorKeys,
|
|
170
195
|
maybeMeasureAndStore
|
|
171
196
|
});
|
|
172
197
|
|
|
@@ -175,7 +200,8 @@ const {
|
|
|
175
200
|
markSourceCaptured
|
|
176
201
|
} = useBlurMeasurement({
|
|
177
202
|
sharedBoundTag,
|
|
178
|
-
maybeMeasureAndStore
|
|
203
|
+
maybeMeasureAndStore,
|
|
204
|
+
ancestorKeys
|
|
179
205
|
});
|
|
180
206
|
useParentSyncReaction({
|
|
181
207
|
parentContext,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useFocusEffect","useCallback","useMemo","useRef","measure","runOnJS","runOnUI","useAnimatedReaction","useSharedValue","useStableCallback","useStableCallbackValue","AnimationStore","BoundStore","prepareStyleForBounds","createProvider","useKeys","
|
|
1
|
+
{"version":3,"names":["useFocusEffect","useCallback","useMemo","useRef","measure","runOnJS","runOnUI","useAnimatedReaction","useSharedValue","useStableCallback","useStableCallbackValue","AnimationStore","BoundStore","prepareStyleForBounds","createProvider","useKeys","getAncestorKeys","current","ancestors","nav","navigation","getParent","state","getState","routes","index","undefined","focusedRoute","key","push","useInitialLayoutHandler","params","sharedBoundTag","currentScreenKey","ancestorKeys","maybeMeasureAndStore","isAnimating","getAnimation","ancestorAnimations","map","hasMeasuredOnLayout","get","isAnyAnimating","i","length","shouldSetSource","shouldSetDestination","set","useBlurMeasurement","hasCapturedSource","ancestorClosing","route","maybeMeasureOnBlur","isOneClosing","some","closing","markSourceCaptured","useParentSyncReaction","parentContext","updateSignal","value","RegisterBoundsProvider","useRegisterBoundsContext","guarded","style","onPress","animatedRef","children","ownSignal","preparedStyles","emitUpdate","isRoot","measured","registerSnapshot","existing","getSnapshot","setLinkSource","bounds","setLinkDestination","handleInitialLayout","captureActiveOnPress"],"sourceRoot":"../../../../src","sources":["shared/providers/register-bounds.provider.tsx"],"mappings":"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","ignoreList":[]}
|