react-native-screen-transitions 2.1.0 → 2.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/components/bound-capture.js +7 -2
- package/lib/commonjs/components/bound-capture.js.map +1 -1
- package/lib/commonjs/components/controllers/screen-lifecycle.js +3 -9
- package/lib/commonjs/components/controllers/screen-lifecycle.js.map +1 -1
- package/lib/commonjs/components/create-transition-aware-component.js +12 -2
- package/lib/commonjs/components/create-transition-aware-component.js.map +1 -1
- package/lib/commonjs/components/root-transition-aware.js +3 -1
- package/lib/commonjs/components/root-transition-aware.js.map +1 -1
- package/lib/commonjs/hooks/animation/use-associated-style.js +41 -6
- package/lib/commonjs/hooks/animation/use-associated-style.js.map +1 -1
- package/lib/commonjs/hooks/bounds/use-bound-registry.js +9 -16
- package/lib/commonjs/hooks/bounds/use-bound-registry.js.map +1 -1
- package/lib/commonjs/providers/transition-styles.js +5 -1
- package/lib/commonjs/providers/transition-styles.js.map +1 -1
- package/lib/commonjs/stores/bounds/_utils.js +118 -0
- package/lib/commonjs/stores/bounds/_utils.js.map +1 -0
- package/lib/commonjs/stores/bounds/index.js +116 -0
- package/lib/commonjs/stores/bounds/index.js.map +1 -0
- package/lib/commonjs/stores/utils/reset-stores-for-screen.js +1 -4
- package/lib/commonjs/stores/utils/reset-stores-for-screen.js.map +1 -1
- package/lib/module/components/bound-capture.js +7 -2
- package/lib/module/components/bound-capture.js.map +1 -1
- package/lib/module/components/controllers/screen-lifecycle.js +3 -9
- package/lib/module/components/controllers/screen-lifecycle.js.map +1 -1
- package/lib/module/components/create-transition-aware-component.js +12 -2
- package/lib/module/components/create-transition-aware-component.js.map +1 -1
- package/lib/module/components/root-transition-aware.js +3 -1
- package/lib/module/components/root-transition-aware.js.map +1 -1
- package/lib/module/hooks/animation/use-associated-style.js +42 -7
- package/lib/module/hooks/animation/use-associated-style.js.map +1 -1
- package/lib/module/hooks/bounds/use-bound-registry.js +9 -16
- package/lib/module/hooks/bounds/use-bound-registry.js.map +1 -1
- package/lib/module/providers/transition-styles.js +5 -1
- package/lib/module/providers/transition-styles.js.map +1 -1
- package/lib/module/stores/bounds/_utils.js +113 -0
- package/lib/module/stores/bounds/_utils.js.map +1 -0
- package/lib/module/stores/bounds/index.js +112 -0
- package/lib/module/stores/bounds/index.js.map +1 -0
- package/lib/module/stores/utils/reset-stores-for-screen.js +1 -4
- package/lib/module/stores/utils/reset-stores-for-screen.js.map +1 -1
- package/lib/typescript/components/bound-capture.d.ts.map +1 -1
- package/lib/typescript/components/create-transition-aware-component.d.ts.map +1 -1
- package/lib/typescript/hooks/animation/use-associated-style.d.ts +4 -4
- package/lib/typescript/hooks/animation/use-associated-style.d.ts.map +1 -1
- package/lib/typescript/hooks/bounds/use-bound-registry.d.ts +0 -1
- package/lib/typescript/hooks/bounds/use-bound-registry.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +4 -0
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/providers/transition-styles.d.ts +4 -1
- package/lib/typescript/providers/transition-styles.d.ts.map +1 -1
- package/lib/typescript/stores/bounds/_utils.d.ts +24 -0
- package/lib/typescript/stores/bounds/_utils.d.ts.map +1 -0
- package/lib/typescript/stores/{bounds.d.ts → bounds/index.d.ts} +3 -13
- package/lib/typescript/stores/bounds/index.d.ts.map +1 -0
- package/lib/typescript/stores/utils/reset-stores-for-screen.d.ts +1 -3
- package/lib/typescript/stores/utils/reset-stores-for-screen.d.ts.map +1 -1
- package/lib/typescript/types/core.d.ts +8 -0
- package/lib/typescript/types/core.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/__tests__/bounds.store.test.ts +185 -0
- package/src/components/bound-capture.tsx +5 -2
- package/src/components/controllers/screen-lifecycle.tsx +3 -3
- package/src/components/create-transition-aware-component.tsx +19 -3
- package/src/components/root-transition-aware.tsx +1 -1
- package/src/hooks/animation/use-associated-style.tsx +42 -7
- package/src/hooks/bounds/use-bound-registry.tsx +10 -21
- package/src/providers/transition-styles.tsx +8 -2
- package/src/stores/bounds/_utils.ts +161 -0
- package/src/stores/bounds/index.ts +125 -0
- package/src/stores/utils/reset-stores-for-screen.ts +1 -7
- package/src/types/core.ts +9 -0
- package/LICENSE +0 -21
- package/lib/commonjs/stores/bounds.js +0 -205
- package/lib/commonjs/stores/bounds.js.map +0 -1
- package/lib/module/stores/bounds.js +0 -201
- package/lib/module/stores/bounds.js.map +0 -1
- package/lib/typescript/stores/bounds.d.ts.map +0 -1
- package/src/stores/bounds.ts +0 -227
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { useMemo } from "react";
|
|
4
4
|
import { Gesture, GestureDetector } from "react-native-gesture-handler";
|
|
5
|
+
import { useKeys } from "../providers/keys";
|
|
5
6
|
import { Bounds } from "../stores/bounds";
|
|
6
7
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
8
|
export const BoundCapture = ({
|
|
@@ -9,16 +10,20 @@ export const BoundCapture = ({
|
|
|
9
10
|
children,
|
|
10
11
|
measure
|
|
11
12
|
}) => {
|
|
13
|
+
const {
|
|
14
|
+
current
|
|
15
|
+
} = useKeys();
|
|
16
|
+
const routeKey = current.route.key;
|
|
12
17
|
const tapGesture = useMemo(() => {
|
|
13
18
|
return Gesture.Tap().onStart(() => {
|
|
14
19
|
"worklet";
|
|
15
20
|
|
|
16
21
|
if (sharedBoundTag) {
|
|
17
|
-
Bounds.
|
|
22
|
+
Bounds.setRouteActive(routeKey, sharedBoundTag);
|
|
18
23
|
measure();
|
|
19
24
|
}
|
|
20
25
|
});
|
|
21
|
-
}, [sharedBoundTag, measure]);
|
|
26
|
+
}, [sharedBoundTag, measure, routeKey]);
|
|
22
27
|
if (!sharedBoundTag) return children;
|
|
23
28
|
return /*#__PURE__*/_jsx(GestureDetector, {
|
|
24
29
|
gesture: tapGesture,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useMemo","Gesture","GestureDetector","Bounds","jsx","_jsx","BoundCapture","sharedBoundTag","children","measure","tapGesture","Tap","onStart","
|
|
1
|
+
{"version":3,"names":["useMemo","Gesture","GestureDetector","useKeys","Bounds","jsx","_jsx","BoundCapture","sharedBoundTag","children","measure","current","routeKey","route","key","tapGesture","Tap","onStart","setRouteActive","gesture"],"sourceRoot":"../../../src","sources":["components/bound-capture.tsx"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,OAAO;AAC/B,SAASC,OAAO,EAAEC,eAAe,QAAQ,8BAA8B;AACvE,SAASC,OAAO,QAAQ,mBAAmB;AAC3C,SAASC,MAAM,QAAQ,kBAAkB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAQ1C,OAAO,MAAMC,YAAY,GAAGA,CAAC;EAC5BC,cAAc;EACdC,QAAQ;EACRC;AACoB,CAAC,KAAK;EAC1B,MAAM;IAAEC;EAAQ,CAAC,GAAGR,OAAO,CAAC,CAAC;EAC7B,MAAMS,QAAQ,GAAGD,OAAO,CAACE,KAAK,CAACC,GAAG;EAClC,MAAMC,UAAU,GAAGf,OAAO,CAAC,MAAM;IAChC,OAAOC,OAAO,CAACe,GAAG,CAAC,CAAC,CAACC,OAAO,CAAC,MAAM;MAClC,SAAS;;MACT,IAAIT,cAAc,EAAE;QACnBJ,MAAM,CAACc,cAAc,CAACN,QAAQ,EAAEJ,cAAc,CAAC;QAC/CE,OAAO,CAAC,CAAC;MACV;IACD,CAAC,CAAC;EACH,CAAC,EAAE,CAACF,cAAc,EAAEE,OAAO,EAAEE,QAAQ,CAAC,CAAC;EAEvC,IAAI,CAACJ,cAAc,EAAE,OAAOC,QAAQ;EAEpC,oBAAOH,IAAA,CAACJ,eAAe;IAACiB,OAAO,EAAEJ,UAAW;IAAAN,QAAA,EAAEA;EAAQ,CAAkB,CAAC;AAC1E,CAAC","ignoreList":[]}
|
|
@@ -21,17 +21,13 @@ export const ScreenLifecycleController = ({
|
|
|
21
21
|
|
|
22
22
|
// Don't run e.preventDefault when the dismissal was on the local root
|
|
23
23
|
if (requestedDismissOnNavigator) {
|
|
24
|
-
resetStoresForScreen(current
|
|
25
|
-
clearActive: true
|
|
26
|
-
});
|
|
24
|
+
resetStoresForScreen(current);
|
|
27
25
|
return;
|
|
28
26
|
}
|
|
29
27
|
|
|
30
28
|
// Don't run e.preventDefault when this is the first screen of the stack
|
|
31
29
|
if (current.navigation.getState().index === 0) {
|
|
32
|
-
resetStoresForScreen(current
|
|
33
|
-
clearActive: true
|
|
34
|
-
});
|
|
30
|
+
resetStoresForScreen(current);
|
|
35
31
|
return;
|
|
36
32
|
}
|
|
37
33
|
e.preventDefault();
|
|
@@ -41,9 +37,7 @@ export const ScreenLifecycleController = ({
|
|
|
41
37
|
|
|
42
38
|
// we'll ensure the dispatch is complete before resetting stores
|
|
43
39
|
requestAnimationFrame(() => {
|
|
44
|
-
resetStoresForScreen(current
|
|
45
|
-
clearActive: false
|
|
46
|
-
});
|
|
40
|
+
resetStoresForScreen(current);
|
|
47
41
|
});
|
|
48
42
|
}
|
|
49
43
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","useLayoutEffect","useParentGestureRegistry","useStableCallback","useKeys","Animations","NavigatorDismissState","resetStoresForScreen","runTransition","ScreenLifecycleController","children","current","animations","getAll","route","key","handleBeforeRemove","e","navigation","getParent","getState","requestedDismissOnNavigator","get","
|
|
1
|
+
{"version":3,"names":["useEffect","useLayoutEffect","useParentGestureRegistry","useStableCallback","useKeys","Animations","NavigatorDismissState","resetStoresForScreen","runTransition","ScreenLifecycleController","children","current","animations","getAll","route","key","handleBeforeRemove","e","navigation","getParent","getState","requestedDismissOnNavigator","get","index","preventDefault","onFinish","finished","dispatch","data","action","requestAnimationFrame","target","spec","options","transitionSpec","handleInitialize","unsubscribe","addListener"],"sourceRoot":"../../../../src","sources":["components/controllers/screen-lifecycle.tsx"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,eAAe,QAAQ,OAAO;AAClD,SAASC,wBAAwB,QAAQ,kDAAkD;AAC3F,OAAOC,iBAAiB,MAAM,iCAAiC;AAC/D,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,SAASC,UAAU,QAAQ,yBAAyB;AACpD,SAASC,qBAAqB,QAAQ,sCAAsC;AAC5E,SAASC,oBAAoB,QAAQ,4CAA4C;AACjF,SAASC,aAAa,QAAQ,sCAAsC;AAMpE,OAAO,MAAMC,yBAAyB,GAAGA,CAAC;EACzCC;AACqB,CAAC,KAAK;EAC3B,MAAM;IAAEC;EAAQ,CAAC,GAAGP,OAAO,CAAC,CAAC;EAE7B,MAAMQ,UAAU,GAAGP,UAAU,CAACQ,MAAM,CAACF,OAAO,CAACG,KAAK,CAACC,GAAG,CAAC;EAEvD,MAAMC,kBAAkB,GAAGb,iBAAiB,CAAEc,CAAM,IAAK;IACxD,MAAMF,GAAG,GAAGJ,OAAO,CAACO,UAAU,CAACC,SAAS,CAAC,CAAC,EAAEC,QAAQ,CAAC,CAAC,CAACL,GAAG;IAC1D,MAAMM,2BAA2B,GAAGf,qBAAqB,CAACgB,GAAG,CAACP,GAAG,CAAC;;IAElE;IACA,IAAIM,2BAA2B,EAAE;MAChCd,oBAAoB,CAACI,OAAO,CAAC;MAC7B;IACD;;IAEA;IACA,IAAIA,OAAO,CAACO,UAAU,CAACE,QAAQ,CAAC,CAAC,CAACG,KAAK,KAAK,CAAC,EAAE;MAC9ChB,oBAAoB,CAACI,OAAO,CAAC;MAC7B;IACD;IAEAM,CAAC,CAACO,cAAc,CAAC,CAAC;IAClB,MAAMC,QAAQ,GAAIC,QAAiB,IAAK;MACvC,IAAIA,QAAQ,EAAE;QACbf,OAAO,CAACO,UAAU,CAACS,QAAQ,CAACV,CAAC,CAACW,IAAI,CAACC,MAAM,CAAC;;QAE1C;QACAC,qBAAqB,CAAC,MAAM;UAC3BvB,oBAAoB,CAACI,OAAO,CAAC;QAC9B,CAAC,CAAC;MACH;IACD,CAAC;IAEDH,aAAa,CAAC;MACbuB,MAAM,EAAE,OAAO;MACfC,IAAI,EAAErB,OAAO,CAACsB,OAAO,CAACC,cAAc;MACpCT,QAAQ;MACRb;IACD,CAAC,CAAC;EACH,CAAC,CAAC;EAEF,MAAMuB,gBAAgB,GAAGhC,iBAAiB,CAAC,MAAM;IAChDK,aAAa,CAAC;MACbuB,MAAM,EAAE,MAAM;MACdC,IAAI,EAAErB,OAAO,CAACsB,OAAO,CAACC,cAAc;MACpCtB;IACD,CAAC,CAAC;EACH,CAAC,CAAC;EAEFZ,SAAS,CAAC,MAAM;IACf,MAAMoC,WAAW,GAAGzB,OAAO,CAACO,UAAU,CAACmB,WAAW,CACjD,cAAc,EACdrB,kBACD,CAAC;IAED,OAAOoB,WAAW;EACnB,CAAC,EAAE,CAACzB,OAAO,CAACO,UAAU,EAAEF,kBAAkB,CAAC,CAAC;EAE5Cf,eAAe,CAACkC,gBAAgB,EAAE,EAAE,CAAC;;EAErC;EACAjC,wBAAwB,CAAC,CAAC;EAE1B,OAAOQ,QAAQ;AAChB,CAAC","ignoreList":[]}
|
|
@@ -47,6 +47,7 @@ export function createTransitionAwareComponent(Wrapped, options = {}) {
|
|
|
47
47
|
sharedBoundTag,
|
|
48
48
|
styleId,
|
|
49
49
|
onPress,
|
|
50
|
+
measureOnLayout,
|
|
50
51
|
...rest
|
|
51
52
|
} = props;
|
|
52
53
|
const animatedRef = useAnimatedRef();
|
|
@@ -56,7 +57,8 @@ export function createTransitionAwareComponent(Wrapped, options = {}) {
|
|
|
56
57
|
const {
|
|
57
58
|
associatedStyles
|
|
58
59
|
} = useAssociatedStyles({
|
|
59
|
-
id: sharedBoundTag || styleId
|
|
60
|
+
id: sharedBoundTag || styleId,
|
|
61
|
+
style
|
|
60
62
|
});
|
|
61
63
|
const {
|
|
62
64
|
measureBounds,
|
|
@@ -75,6 +77,14 @@ export function createTransitionAwareComponent(Wrapped, options = {}) {
|
|
|
75
77
|
handleLayout: handleLayout
|
|
76
78
|
});
|
|
77
79
|
}
|
|
80
|
+
const onLayoutHandler = runOnUI(() => {
|
|
81
|
+
"worklet";
|
|
82
|
+
|
|
83
|
+
handleLayout();
|
|
84
|
+
if (measureOnLayout && sharedBoundTag) {
|
|
85
|
+
measureBounds();
|
|
86
|
+
}
|
|
87
|
+
});
|
|
78
88
|
return /*#__PURE__*/_jsx(BoundCapture, {
|
|
79
89
|
sharedBoundTag: sharedBoundTag,
|
|
80
90
|
measure: measureBounds,
|
|
@@ -83,7 +93,7 @@ export function createTransitionAwareComponent(Wrapped, options = {}) {
|
|
|
83
93
|
ref: animatedRef,
|
|
84
94
|
style: [style, associatedStyles],
|
|
85
95
|
onPress: onPress,
|
|
86
|
-
onLayout:
|
|
96
|
+
onLayout: onLayoutHandler,
|
|
87
97
|
children: children
|
|
88
98
|
})
|
|
89
99
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["forwardRef","memo","GestureDetector","Animated","runOnUI","useAnimatedRef","useAssociatedStyles","useBoundsRegistry","useScrollRegistry","useGestureContext","useKeys","BoundCapture","jsx","_jsx","createTransitionAwareComponent","Wrapped","options","isScrollable","AnimatedComponent","createAnimatedComponent","ScrollableInner","props","ref","nativeGesture","scrollHandler","onContentSizeChange","onLayout","onScroll","gesture","children","scrollEventThrottle","Inner","style","sharedBoundTag","styleId","onPress","rest","animatedRef","current","associatedStyles","id","measureBounds","handleLayout","measure"],"sourceRoot":"../../../src","sources":["components/create-transition-aware-component.tsx"],"mappings":";;AACA,SAA6BA,UAAU,EAAEC,IAAI,QAAQ,OAAO;AAE5D,SAASC,eAAe,QAAQ,8BAA8B;AAC9D,OAAOC,QAAQ,IAAIC,OAAO,EAAEC,cAAc,QAAQ,yBAAyB;AAC3E,SAASC,mBAAmB,QAAQ,yCAAyC;AAC7E,SAASC,iBAAiB,QAAQ,oCAAoC;AACtE,SAASC,iBAAiB,QAAQ,uCAAuC;AACzE,SAASC,iBAAiB,QAAQ,uBAAuB;AACzD,SAASC,OAAO,QAAQ,mBAAmB;AAG3C,SAASC,YAAY,QAAQ,iBAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAM/C,OAAO,SAASC,8BAA8BA,CAC7CC,OAAyB,EACzBC,OAA8C,GAAG,CAAC,CAAC,EAClD;EACD,MAAM;IAAEC,YAAY,GAAG;EAAM,CAAC,GAAGD,OAAO;EAExC,MAAME,iBAAiB,GAAGf,QAAQ,CAACgB,uBAAuB,CAACJ,OAAO,CAAC;EAEnE,MAAMK,eAAe,gBAAGpB,UAAU,CAGhC,CAACqB,KAAU,EAAEC,GAAG,KAAK;IACtB,MAAM;MAAEC;IAAc,CAAC,GAAGd,iBAAiB,CAAC,CAAC;IAC7C,MAAM;MAAEe,aAAa;MAAEC,mBAAmB;MAAEC;IAAS,CAAC,GAAGlB,iBAAiB,CAAC;MAC1EmB,QAAQ,EAAEN,KAAK,CAACM,QAAQ;MACxBF,mBAAmB,EAAEJ,KAAK,CAACI,mBAAmB;MAC9CC,QAAQ,EAAEL,KAAK,CAACK;IACjB,CAAC,CAAC;IAEF,oBACCb,IAAA,CAACX,eAAe;MAAC0B,OAAO,EAAEL,aAAc;MAAAM,QAAA,eACvChB,IAAA,CAACK,iBAAiB;QAAA,GACZG,KAAK;QACVC,GAAG,EAAEA,GAAI;QACTK,QAAQ,EAAEH,aAAc;QACxBC,mBAAmB,EAAEA,mBAAoB;QACzCC,QAAQ,EAAEA,QAAS;QACnBI,mBAAmB,EAAET,KAAK,CAACS,mBAAmB,IAAI;MAAG,CACrD;IAAC,CACc,CAAC;EAEpB,CAAC,CAAC;EAEF,MAAMC,KAAK,gBAAG/B,UAAU,CAGtB,CAACqB,KAAK,EAAEC,GAAG,KAAK;IACjB,MAAM;
|
|
1
|
+
{"version":3,"names":["forwardRef","memo","GestureDetector","Animated","runOnUI","useAnimatedRef","useAssociatedStyles","useBoundsRegistry","useScrollRegistry","useGestureContext","useKeys","BoundCapture","jsx","_jsx","createTransitionAwareComponent","Wrapped","options","isScrollable","AnimatedComponent","createAnimatedComponent","ScrollableInner","props","ref","nativeGesture","scrollHandler","onContentSizeChange","onLayout","onScroll","gesture","children","scrollEventThrottle","Inner","style","sharedBoundTag","styleId","onPress","measureOnLayout","rest","animatedRef","current","associatedStyles","id","measureBounds","handleLayout","onLayoutHandler","measure"],"sourceRoot":"../../../src","sources":["components/create-transition-aware-component.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,7 +9,9 @@ const EMPTY_STYLE = Object.freeze({});
|
|
|
9
9
|
export const RootTransitionAware = /*#__PURE__*/memo(({
|
|
10
10
|
children
|
|
11
11
|
}) => {
|
|
12
|
-
const
|
|
12
|
+
const {
|
|
13
|
+
stylesMap
|
|
14
|
+
} = useTransitionStyles();
|
|
13
15
|
const animatedContentStyle = useAnimatedStyle(() => {
|
|
14
16
|
"worklet";
|
|
15
17
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["memo","StyleSheet","View","Animated","useAnimatedStyle","useTransitionStyles","jsx","_jsx","jsxs","_jsxs","EMPTY_STYLE","Object","freeze","RootTransitionAware","children","stylesMap","animatedContentStyle","value","contentStyle","animatedOverlayStyle","overlayStyle","style","styles","container","absoluteFillObject","pointerEvents","content","create","flex"],"sourceRoot":"../../../src","sources":["components/root-transition-aware.tsx"],"mappings":";;AAAA,SAASA,IAAI,QAAQ,OAAO;AAC5B,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,OAAOC,QAAQ,IAEdC,gBAAgB,QACV,yBAAyB;AAChC,SAASC,mBAAmB,QAAQ,gCAAgC;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAMrE,MAAMC,WAAW,GAAGC,MAAM,CAACC,MAAM,CAAC,CAAC,CAAe,CAAC;AAEnD,OAAO,MAAMC,mBAAmB,gBAAGb,IAAI,CAAC,CAAC;EAAEc;AAAgB,CAAC,KAAK;EAChE,
|
|
1
|
+
{"version":3,"names":["memo","StyleSheet","View","Animated","useAnimatedStyle","useTransitionStyles","jsx","_jsx","jsxs","_jsxs","EMPTY_STYLE","Object","freeze","RootTransitionAware","children","stylesMap","animatedContentStyle","value","contentStyle","animatedOverlayStyle","overlayStyle","style","styles","container","absoluteFillObject","pointerEvents","content","create","flex"],"sourceRoot":"../../../src","sources":["components/root-transition-aware.tsx"],"mappings":";;AAAA,SAASA,IAAI,QAAQ,OAAO;AAC5B,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,OAAOC,QAAQ,IAEdC,gBAAgB,QACV,yBAAyB;AAChC,SAASC,mBAAmB,QAAQ,gCAAgC;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAMrE,MAAMC,WAAW,GAAGC,MAAM,CAACC,MAAM,CAAC,CAAC,CAAe,CAAC;AAEnD,OAAO,MAAMC,mBAAmB,gBAAGb,IAAI,CAAC,CAAC;EAAEc;AAAgB,CAAC,KAAK;EAChE,MAAM;IAAEC;EAAU,CAAC,GAAGV,mBAAmB,CAAC,CAAC;EAE3C,MAAMW,oBAAoB,GAAGZ,gBAAgB,CAAC,MAAM;IACnD,SAAS;;IACT,OAAOW,SAAS,CAACE,KAAK,CAACC,YAAY,IAAIR,WAAW;EACnD,CAAC,CAAC;EAEF,MAAMS,oBAAoB,GAAGf,gBAAgB,CAAC,MAAM;IACnD,SAAS;;IACT,OAAOW,SAAS,CAACE,KAAK,CAACG,YAAY,IAAIV,WAAW;EACnD,CAAC,CAAC;EAEF,oBACCD,KAAA,CAACP,IAAI;IAACmB,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAT,QAAA,gBAC7BP,IAAA,CAACJ,QAAQ,CAACD,IAAI;MACbmB,KAAK,EAAE,CAACpB,UAAU,CAACuB,kBAAkB,EAAEL,oBAAoB,CAAE;MAC7DM,aAAa,EAAC;IAAM,CACpB,CAAC,eACFlB,IAAA,CAACJ,QAAQ,CAACD,IAAI;MAACmB,KAAK,EAAE,CAACC,MAAM,CAACI,OAAO,EAAEV,oBAAoB,CAAE;MAAAF,QAAA,EAC3DA;IAAQ,CACK,CAAC;EAAA,CACX,CAAC;AAET,CAAC,CAAC;AAEF,MAAMQ,MAAM,GAAGrB,UAAU,CAAC0B,MAAM,CAAC;EAChCJ,SAAS,EAAE;IACVK,IAAI,EAAE;EACP,CAAC;EACDF,OAAO,EAAE;IACRE,IAAI,EAAE;EACP;AACD,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1,25 +1,60 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { useAnimatedStyle } from "react-native-reanimated";
|
|
3
|
+
import { useAnimatedStyle, useDerivedValue, useSharedValue } from "react-native-reanimated";
|
|
4
4
|
import { useTransitionStyles } from "../../providers/transition-styles";
|
|
5
5
|
const EMPTY_STYLE = Object.freeze({});
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
|
-
* This hook is used to get the associated styles for a given styleId.
|
|
9
|
-
* It is used to get the associated styles for a given styleId.
|
|
10
|
-
* It is used to get the associated styles for a given styleId.
|
|
8
|
+
* This hook is used to get the associated styles for a given styleId / boundTag.
|
|
11
9
|
*/
|
|
12
10
|
export const useAssociatedStyles = ({
|
|
13
|
-
id
|
|
11
|
+
id,
|
|
12
|
+
style
|
|
14
13
|
} = {}) => {
|
|
15
|
-
const
|
|
14
|
+
const {
|
|
15
|
+
stylesMap
|
|
16
|
+
} = useTransitionStyles();
|
|
17
|
+
const showAfterFirstFrame = useSharedValue(false);
|
|
18
|
+
useDerivedValue(() => {
|
|
19
|
+
"worklet";
|
|
20
|
+
|
|
21
|
+
if (!id) {
|
|
22
|
+
showAfterFirstFrame.value = true;
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
if (!showAfterFirstFrame.value) {
|
|
26
|
+
requestAnimationFrame(() => {
|
|
27
|
+
showAfterFirstFrame.value = true;
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
});
|
|
16
31
|
const associatedStyles = useAnimatedStyle(() => {
|
|
17
32
|
"worklet";
|
|
18
33
|
|
|
19
34
|
if (!id || !stylesMap) {
|
|
20
35
|
return EMPTY_STYLE;
|
|
21
36
|
}
|
|
22
|
-
|
|
37
|
+
const base = stylesMap.value[id] || EMPTY_STYLE;
|
|
38
|
+
let opacity = 1;
|
|
39
|
+
if ("opacity" in base) {
|
|
40
|
+
opacity = base.opacity;
|
|
41
|
+
}
|
|
42
|
+
if (style && "opacity" in style) {
|
|
43
|
+
opacity = style.opacity;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
// Only force opacity to 0 during the initial frame; once ready,
|
|
47
|
+
// return base unchanged so we never override user-provided opacity.
|
|
48
|
+
if (!showAfterFirstFrame.value) {
|
|
49
|
+
return {
|
|
50
|
+
...base,
|
|
51
|
+
opacity: 0
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
return {
|
|
55
|
+
...base,
|
|
56
|
+
opacity
|
|
57
|
+
};
|
|
23
58
|
});
|
|
24
59
|
return {
|
|
25
60
|
associatedStyles
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useAnimatedStyle","useTransitionStyles","EMPTY_STYLE","Object","freeze","useAssociatedStyles","id","stylesMap","
|
|
1
|
+
{"version":3,"names":["useAnimatedStyle","useDerivedValue","useSharedValue","useTransitionStyles","EMPTY_STYLE","Object","freeze","useAssociatedStyles","id","style","stylesMap","showAfterFirstFrame","value","requestAnimationFrame","associatedStyles","base","opacity"],"sourceRoot":"../../../../src","sources":["hooks/animation/use-associated-style.tsx"],"mappings":";;AAAA,SAECA,gBAAgB,EAChBC,eAAe,EACfC,cAAc,QACR,yBAAyB;AAChC,SAASC,mBAAmB,QAAQ,mCAAmC;AAOvE,MAAMC,WAAW,GAAGC,MAAM,CAACC,MAAM,CAAC,CAAC,CAAC,CAAC;;AAErC;AACA;AACA;AACA,OAAO,MAAMC,mBAAmB,GAAGA,CAAC;EAAEC,EAAE;EAAEC;AAAa,CAAC,GAAG,CAAC,CAAC,KAAK;EACjE,MAAM;IAAEC;EAAU,CAAC,GAAGP,mBAAmB,CAAC,CAAC;EAC3C,MAAMQ,mBAAmB,GAAGT,cAAc,CAAC,KAAK,CAAC;EAEjDD,eAAe,CAAC,MAAM;IACrB,SAAS;;IACT,IAAI,CAACO,EAAE,EAAE;MACRG,mBAAmB,CAACC,KAAK,GAAG,IAAI;MAChC;IACD;IACA,IAAI,CAACD,mBAAmB,CAACC,KAAK,EAAE;MAC/BC,qBAAqB,CAAC,MAAM;QAC3BF,mBAAmB,CAACC,KAAK,GAAG,IAAI;MACjC,CAAC,CAAC;IACH;EACD,CAAC,CAAC;EAEF,MAAME,gBAAgB,GAAGd,gBAAgB,CAAC,MAAM;IAC/C,SAAS;;IAET,IAAI,CAACQ,EAAE,IAAI,CAACE,SAAS,EAAE;MACtB,OAAON,WAAW;IACnB;IACA,MAAMW,IAAI,GACRL,SAAS,CAACE,KAAK,CAACJ,EAAE,CAAC,IAAgCJ,WAAW;IAEhE,IAAIY,OAAO,GAAG,CAAC;IAEf,IAAI,SAAS,IAAID,IAAI,EAAE;MACtBC,OAAO,GAAGD,IAAI,CAACC,OAAiB;IACjC;IACA,IAAIP,KAAK,IAAI,SAAS,IAAIA,KAAK,EAAE;MAChCO,OAAO,GAAGP,KAAK,CAACO,OAAiB;IAClC;;IAEA;IACA;IACA,IAAI,CAACL,mBAAmB,CAACC,KAAK,EAAE;MAC/B,OAAO;QAAE,GAAGG,IAAI;QAAEC,OAAO,EAAE;MAAE,CAAC;IAC/B;IAEA,OAAO;MAAE,GAAGD,IAAI;MAAEC;IAAQ,CAAC;EAC5B,CAAC,CAAC;EAEF,OAAO;IAAEF;EAAiB,CAAC;AAC5B,CAAC","ignoreList":[]}
|
|
@@ -6,7 +6,6 @@ import { useKeys } from "../../providers/keys";
|
|
|
6
6
|
import { Bounds } from "../../stores/bounds";
|
|
7
7
|
import { flattenStyle } from "../../utils/bounds/_utils/flatten-styles";
|
|
8
8
|
import { isBoundsEqual } from "../../utils/bounds/_utils/is-bounds-equal";
|
|
9
|
-
import { useScreenAnimation } from "../animation/use-screen-animation";
|
|
10
9
|
export const useBoundsRegistry = ({
|
|
11
10
|
sharedBoundTag,
|
|
12
11
|
animatedRef,
|
|
@@ -16,7 +15,6 @@ export const useBoundsRegistry = ({
|
|
|
16
15
|
const {
|
|
17
16
|
previous
|
|
18
17
|
} = useKeys();
|
|
19
|
-
const interpolatorProps = useScreenAnimation();
|
|
20
18
|
const isMeasured = useSharedValue(false);
|
|
21
19
|
const measureBounds = useCallback(() => {
|
|
22
20
|
"worklet";
|
|
@@ -30,11 +28,15 @@ export const useBoundsRegistry = ({
|
|
|
30
28
|
key,
|
|
31
29
|
sharedBoundTag
|
|
32
30
|
})) {
|
|
33
|
-
Bounds.
|
|
31
|
+
if (Bounds.getRouteActive(key) === sharedBoundTag) {
|
|
32
|
+
Bounds.setRouteActive(key, sharedBoundTag);
|
|
33
|
+
}
|
|
34
34
|
return;
|
|
35
35
|
}
|
|
36
36
|
Bounds.setBounds(key, sharedBoundTag, measured, flattenStyle(style));
|
|
37
|
-
Bounds.
|
|
37
|
+
if (Bounds.getRouteActive(key) === sharedBoundTag) {
|
|
38
|
+
Bounds.setRouteActive(key, sharedBoundTag);
|
|
39
|
+
}
|
|
38
40
|
}
|
|
39
41
|
}, [sharedBoundTag, animatedRef, current.route.key, style]);
|
|
40
42
|
const handleLayout = useCallback(() => {
|
|
@@ -46,23 +48,14 @@ export const useBoundsRegistry = ({
|
|
|
46
48
|
}
|
|
47
49
|
const previousBounds = Bounds.getBounds(previousRouteKey);
|
|
48
50
|
const hasPreviousBoundForTag = previousBounds[sharedBoundTag];
|
|
49
|
-
if (
|
|
51
|
+
if (hasPreviousBoundForTag) {
|
|
50
52
|
measureBounds();
|
|
51
53
|
isMeasured.value = true;
|
|
52
54
|
}
|
|
53
|
-
}, [measureBounds,
|
|
54
|
-
const measureOnTouchStart = useCallback(() => {
|
|
55
|
-
"worklet";
|
|
56
|
-
|
|
57
|
-
if (sharedBoundTag) {
|
|
58
|
-
Bounds.setActiveBoundId(sharedBoundTag);
|
|
59
|
-
measure(animatedRef);
|
|
60
|
-
}
|
|
61
|
-
}, [sharedBoundTag, animatedRef]);
|
|
55
|
+
}, [measureBounds, sharedBoundTag, previous?.route.key, isMeasured]);
|
|
62
56
|
return {
|
|
63
57
|
measureBounds,
|
|
64
|
-
handleLayout
|
|
65
|
-
measureOnTouchStart
|
|
58
|
+
handleLayout
|
|
66
59
|
};
|
|
67
60
|
};
|
|
68
61
|
//# sourceMappingURL=use-bound-registry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","measure","useSharedValue","useKeys","Bounds","flattenStyle","isBoundsEqual","
|
|
1
|
+
{"version":3,"names":["useCallback","measure","useSharedValue","useKeys","Bounds","flattenStyle","isBoundsEqual","useBoundsRegistry","sharedBoundTag","animatedRef","current","style","previous","isMeasured","measureBounds","measured","key","route","getRouteActive","setRouteActive","setBounds","handleLayout","previousRouteKey","value","previousBounds","getBounds","hasPreviousBoundForTag"],"sourceRoot":"../../../../src","sources":["hooks/bounds/use-bound-registry.tsx"],"mappings":";;AAAA,SAASA,WAAW,QAAQ,OAAO;AAEnC,SAECC,OAAO,EAEPC,cAAc,QACR,yBAAyB;AAChC,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,SAASC,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,YAAY,QAAQ,0CAA0C;AACvE,SAASC,aAAa,QAAQ,2CAA2C;AASzE,OAAO,MAAMC,iBAAiB,GAAGA,CAAC;EACjCC,cAAc;EACdC,WAAW;EACXC,OAAO;EACPC;AACuB,CAAC,KAAK;EAC7B,MAAM;IAAEC;EAAS,CAAC,GAAGT,OAAO,CAAC,CAAC;EAE9B,MAAMU,UAAU,GAAGX,cAAc,CAAC,KAAK,CAAC;EAExC,MAAMY,aAAa,GAAGd,WAAW,CAAC,MAAM;IACvC,SAAS;;IACT,IAAI,CAACQ,cAAc,EAAE;IACrB,MAAMO,QAAQ,GAAGd,OAAO,CAACQ,WAAW,CAAC;IACrC,IAAIM,QAAQ,EAAE;MACb,MAAMC,GAAG,GAAGN,OAAO,CAACO,KAAK,CAACD,GAAG;MAC7B,IAAIV,aAAa,CAAC;QAAES,QAAQ;QAAEC,GAAG;QAAER;MAAe,CAAC,CAAC,EAAE;QACrD,IAAIJ,MAAM,CAACc,cAAc,CAACF,GAAG,CAAC,KAAKR,cAAc,EAAE;UAClDJ,MAAM,CAACe,cAAc,CAACH,GAAG,EAAER,cAAc,CAAC;QAC3C;QACA;MACD;MAEAJ,MAAM,CAACgB,SAAS,CAACJ,GAAG,EAAER,cAAc,EAAEO,QAAQ,EAAEV,YAAY,CAACM,KAAK,CAAC,CAAC;MACpE,IAAIP,MAAM,CAACc,cAAc,CAACF,GAAG,CAAC,KAAKR,cAAc,EAAE;QAClDJ,MAAM,CAACe,cAAc,CAACH,GAAG,EAAER,cAAc,CAAC;MAC3C;IACD;EACD,CAAC,EAAE,CAACA,cAAc,EAAEC,WAAW,EAAEC,OAAO,CAACO,KAAK,CAACD,GAAG,EAAEL,KAAK,CAAC,CAAC;EAE3D,MAAMU,YAAY,GAAGrB,WAAW,CAAC,MAAM;IACtC,SAAS;;IACT,MAAMsB,gBAAgB,GAAGV,QAAQ,EAAEK,KAAK,CAACD,GAAG;IAE5C,IAAI,CAACR,cAAc,IAAIK,UAAU,CAACU,KAAK,IAAI,CAACD,gBAAgB,EAAE;MAC7D;IACD;IAEA,MAAME,cAAc,GAAGpB,MAAM,CAACqB,SAAS,CAACH,gBAAgB,CAAC;IACzD,MAAMI,sBAAsB,GAAGF,cAAc,CAAChB,cAAc,CAAC;IAE7D,IAAIkB,sBAAsB,EAAE;MAC3BZ,aAAa,CAAC,CAAC;MACfD,UAAU,CAACU,KAAK,GAAG,IAAI;IACxB;EACD,CAAC,EAAE,CAACT,aAAa,EAAEN,cAAc,EAAEI,QAAQ,EAAEK,KAAK,CAACD,GAAG,EAAEH,UAAU,CAAC,CAAC;EAEpE,OAAO;IACNC,aAAa;IACbO;EACD,CAAC;AACF,CAAC","ignoreList":[]}
|
|
@@ -23,7 +23,11 @@ export function TransitionStylesProvider({
|
|
|
23
23
|
}
|
|
24
24
|
return screenStyleInterpolator ? screenStyleInterpolator(screenInterpolatorProps.value) : EMPTY_MAP;
|
|
25
25
|
});
|
|
26
|
-
const value = useMemo(() =>
|
|
26
|
+
const value = useMemo(() => {
|
|
27
|
+
return {
|
|
28
|
+
stylesMap
|
|
29
|
+
};
|
|
30
|
+
}, [stylesMap]);
|
|
27
31
|
return /*#__PURE__*/_jsx(TransitionStylesContext.Provider, {
|
|
28
32
|
value: value,
|
|
29
33
|
children: children
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createContext","useContext","useMemo","isWorkletFunction","useDerivedValue","_useScreenAnimation","jsx","_jsx","EMPTY_MAP","Object","freeze","TransitionStylesContext","TransitionStylesProvider","children","screenInterpolatorProps","screenStyleInterpolator","isFunctionWorklet","stylesMap","__DEV__","console","warn","value","Provider","useTransitionStyles","ctx","Error"],"sourceRoot":"../../../src","sources":["providers/transition-styles.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAC1D,SAASC,iBAAiB,EAAEC,eAAe,QAAQ,yBAAyB;AAC5E,SAASC,mBAAmB,QAAQ,yCAAyC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAO9E,MAAMC,SAAS,GAAGC,MAAM,CAACC,MAAM,CAAC,CAAC,CAAC,CAAC;AAEnC,MAAMC,uBAAuB,gBAAGX,aAAa,
|
|
1
|
+
{"version":3,"names":["createContext","useContext","useMemo","isWorkletFunction","useDerivedValue","_useScreenAnimation","jsx","_jsx","EMPTY_MAP","Object","freeze","TransitionStylesContext","TransitionStylesProvider","children","screenInterpolatorProps","screenStyleInterpolator","isFunctionWorklet","stylesMap","__DEV__","console","warn","value","Provider","useTransitionStyles","ctx","Error"],"sourceRoot":"../../../src","sources":["providers/transition-styles.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAC1D,SAASC,iBAAiB,EAAEC,eAAe,QAAQ,yBAAyB;AAC5E,SAASC,mBAAmB,QAAQ,yCAAyC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAO9E,MAAMC,SAAS,GAAGC,MAAM,CAACC,MAAM,CAAC,CAAC,CAAC,CAAC;AAEnC,MAAMC,uBAAuB,gBAAGX,aAAa,CAInC,IAAI,CAAC;AAEf,OAAO,SAASY,wBAAwBA,CAAC;EAAEC;AAAgB,CAAC,EAAE;EAC7D,MAAM;IAAEC,uBAAuB;IAAEC;EAAwB,CAAC,GACzDV,mBAAmB,CAAC,CAAC;EAEtB,MAAMW,iBAAiB,GAAGb,iBAAiB,CAACY,uBAAuB,CAAC;EAEpE,MAAME,SAAS,GAAGb,eAAe,CAA8B,MAAM;IACpE,SAAS;;IAET,IAAIW,uBAAuB,IAAI,CAACC,iBAAiB,IAAIE,OAAO,EAAE;MAC7DC,OAAO,CAACC,IAAI,CAAC,mDAAmD,CAAC;MACjE,OAAOZ,SAAS;IACjB;IAEA,OAAOO,uBAAuB,GAC3BA,uBAAuB,CAACD,uBAAuB,CAACO,KAAK,CAAC,GACtDb,SAAS;EACb,CAAC,CAAC;EAEF,MAAMa,KAAK,GAAGnB,OAAO,CAAC,MAAM;IAC3B,OAAO;MACNe;IACD,CAAC;EACF,CAAC,EAAE,CAACA,SAAS,CAAC,CAAC;EAEf,oBACCV,IAAA,CAACI,uBAAuB,CAACW,QAAQ;IAACD,KAAK,EAAEA,KAAM;IAAAR,QAAA,EAC7CA;EAAQ,CACwB,CAAC;AAErC;AAEA,OAAO,SAASU,mBAAmBA,CAAA,EAAG;EACrC,MAAMC,GAAG,GAAGvB,UAAU,CAACU,uBAAuB,CAAC;EAC/C,IAAI,CAACa,GAAG,EAAE;IACT,MAAM,IAAIC,KAAK,CACd,oEACD,CAAC;EACF;EACA,OAAOD,GAAG;AACX","ignoreList":[]}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export function pairKey(fromKey, toKey) {
|
|
4
|
+
"worklet";
|
|
5
|
+
|
|
6
|
+
return fromKey && toKey ? `${fromKey}|${toKey}` : "";
|
|
7
|
+
}
|
|
8
|
+
const hasBound = (s, id) => {
|
|
9
|
+
"worklet";
|
|
10
|
+
|
|
11
|
+
return !!id && !!s && !!s.bounds && !!s.bounds[id];
|
|
12
|
+
};
|
|
13
|
+
const getRoutePair = (current, next, previous) => {
|
|
14
|
+
"worklet";
|
|
15
|
+
|
|
16
|
+
const isClosing = !!next;
|
|
17
|
+
const fromKey = isClosing ? current.route.key : previous?.route.key;
|
|
18
|
+
const toKey = isClosing ? next?.route.key : current.route.key;
|
|
19
|
+
const other = next ?? previous;
|
|
20
|
+
return {
|
|
21
|
+
fromKey,
|
|
22
|
+
toKey,
|
|
23
|
+
other
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
const resolveFromPairCache = (fromKey, toKey, other, getPairCache) => {
|
|
27
|
+
"worklet";
|
|
28
|
+
|
|
29
|
+
if (fromKey && toKey) {
|
|
30
|
+
const cached = getPairCache(fromKey, toKey);
|
|
31
|
+
if (hasBound(other, cached)) return cached;
|
|
32
|
+
}
|
|
33
|
+
return "";
|
|
34
|
+
};
|
|
35
|
+
const resolveFromRequested = (reqId, current, other) => {
|
|
36
|
+
"worklet";
|
|
37
|
+
|
|
38
|
+
if (hasBound(other, reqId)) return reqId;
|
|
39
|
+
if (hasBound(current, reqId)) return reqId;
|
|
40
|
+
return "";
|
|
41
|
+
};
|
|
42
|
+
const resolveFromInteresection = (current, other, fromKey, getRouteActive) => {
|
|
43
|
+
"worklet";
|
|
44
|
+
|
|
45
|
+
if (!other) return "";
|
|
46
|
+
const a = Object.keys(current.bounds);
|
|
47
|
+
const b = Object.keys(other.bounds);
|
|
48
|
+
const inter = a.filter(k => b.includes(k));
|
|
49
|
+
const otherHasAny = b.length > 0;
|
|
50
|
+
const routeActive = fromKey ? getRouteActive(fromKey) : null;
|
|
51
|
+
if (inter.length > 0) {
|
|
52
|
+
if (routeActive && inter.includes(routeActive)) return routeActive;
|
|
53
|
+
return inter[0];
|
|
54
|
+
}
|
|
55
|
+
if (routeActive && hasBound(other, routeActive)) return routeActive;
|
|
56
|
+
if (b.length === 1) return b[0];
|
|
57
|
+
if (!otherHasAny) {
|
|
58
|
+
if (routeActive && hasBound(current, routeActive)) return routeActive;
|
|
59
|
+
if (a.length === 1) return a[0];
|
|
60
|
+
}
|
|
61
|
+
return "";
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Util function to get the active bound id for a given transition state.
|
|
66
|
+
*
|
|
67
|
+
* It will check by ( priority from highest to lowest ):
|
|
68
|
+
* 1. Requested id
|
|
69
|
+
* 2. Cache
|
|
70
|
+
* 3. Intersection
|
|
71
|
+
*/
|
|
72
|
+
export function resolveActiveBound({
|
|
73
|
+
current,
|
|
74
|
+
next,
|
|
75
|
+
previous,
|
|
76
|
+
getPairCache,
|
|
77
|
+
setPairCache,
|
|
78
|
+
getRouteActive
|
|
79
|
+
}) {
|
|
80
|
+
"worklet";
|
|
81
|
+
|
|
82
|
+
const {
|
|
83
|
+
fromKey,
|
|
84
|
+
toKey,
|
|
85
|
+
other
|
|
86
|
+
} = getRoutePair(current, next, previous);
|
|
87
|
+
|
|
88
|
+
// Resolve requested from per-route most recently used (last active bound by route)
|
|
89
|
+
const requestedId = fromKey ? getRouteActive(fromKey) : null;
|
|
90
|
+
const byRequested = resolveFromRequested(requestedId, current, other);
|
|
91
|
+
if (byRequested) {
|
|
92
|
+
if (fromKey && toKey && hasBound(current, byRequested) && hasBound(other, byRequested)) {
|
|
93
|
+
setPairCache(fromKey, toKey, byRequested);
|
|
94
|
+
}
|
|
95
|
+
return byRequested;
|
|
96
|
+
}
|
|
97
|
+
const byPairCache = resolveFromPairCache(fromKey, toKey, other, getPairCache);
|
|
98
|
+
if (byPairCache) {
|
|
99
|
+
if (fromKey && toKey && hasBound(current, byPairCache) && hasBound(other, byPairCache)) {
|
|
100
|
+
setPairCache(fromKey, toKey, byPairCache);
|
|
101
|
+
}
|
|
102
|
+
return byPairCache;
|
|
103
|
+
}
|
|
104
|
+
const byIntersection = resolveFromInteresection(current, other, fromKey, getRouteActive);
|
|
105
|
+
if (byIntersection) {
|
|
106
|
+
if (fromKey && toKey && hasBound(current, byIntersection) && hasBound(other, byIntersection)) {
|
|
107
|
+
setPairCache(fromKey, toKey, byIntersection);
|
|
108
|
+
}
|
|
109
|
+
return byIntersection;
|
|
110
|
+
}
|
|
111
|
+
return "";
|
|
112
|
+
}
|
|
113
|
+
//# sourceMappingURL=_utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["pairKey","fromKey","toKey","hasBound","s","id","bounds","getRoutePair","current","next","previous","isClosing","route","key","other","resolveFromPairCache","getPairCache","cached","resolveFromRequested","reqId","resolveFromInteresection","getRouteActive","a","Object","keys","b","inter","filter","k","includes","otherHasAny","length","routeActive","resolveActiveBound","setPairCache","requestedId","byRequested","byPairCache","byIntersection"],"sourceRoot":"../../../../src","sources":["stores/bounds/_utils.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { makeMutable } from "react-native-reanimated";
|
|
4
|
+
import { pairKey, resolveActiveBound } from "./_utils";
|
|
5
|
+
const registry = makeMutable({});
|
|
6
|
+
const pairCache = makeMutable({});
|
|
7
|
+
const lastActiveByRoute = makeMutable({});
|
|
8
|
+
function setBounds(screenId, boundId, bounds = null, styles = {}) {
|
|
9
|
+
"worklet";
|
|
10
|
+
|
|
11
|
+
registry.modify(state => {
|
|
12
|
+
"worklet";
|
|
13
|
+
|
|
14
|
+
if (!state[screenId]) {
|
|
15
|
+
state[screenId] = {};
|
|
16
|
+
}
|
|
17
|
+
state[screenId][boundId] = {
|
|
18
|
+
bounds,
|
|
19
|
+
styles
|
|
20
|
+
};
|
|
21
|
+
return state;
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
function getBounds(screenId) {
|
|
25
|
+
"worklet";
|
|
26
|
+
|
|
27
|
+
return registry.value[screenId] ?? {};
|
|
28
|
+
}
|
|
29
|
+
function setRouteActive(routeKey, boundId) {
|
|
30
|
+
"worklet";
|
|
31
|
+
|
|
32
|
+
lastActiveByRoute.modify(state => {
|
|
33
|
+
"worklet";
|
|
34
|
+
|
|
35
|
+
state[routeKey] = boundId;
|
|
36
|
+
return state;
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
function getRouteActive(routeKey) {
|
|
40
|
+
"worklet";
|
|
41
|
+
|
|
42
|
+
return lastActiveByRoute.value[routeKey] ?? null;
|
|
43
|
+
}
|
|
44
|
+
function setPairCache(fromKey, toKey, boundId) {
|
|
45
|
+
"worklet";
|
|
46
|
+
|
|
47
|
+
const key = pairKey(fromKey, toKey);
|
|
48
|
+
if (!key) return;
|
|
49
|
+
pairCache.modify(state => {
|
|
50
|
+
"worklet";
|
|
51
|
+
|
|
52
|
+
state[key] = boundId;
|
|
53
|
+
return state;
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
function getPairCache(fromKey, toKey) {
|
|
57
|
+
"worklet";
|
|
58
|
+
|
|
59
|
+
const key = pairKey(fromKey, toKey);
|
|
60
|
+
if (!key) return null;
|
|
61
|
+
return pairCache.value[key] ?? null;
|
|
62
|
+
}
|
|
63
|
+
function clear(routeKey) {
|
|
64
|
+
"worklet";
|
|
65
|
+
|
|
66
|
+
registry.modify(state => {
|
|
67
|
+
"worklet";
|
|
68
|
+
|
|
69
|
+
delete state[routeKey];
|
|
70
|
+
return state;
|
|
71
|
+
});
|
|
72
|
+
lastActiveByRoute.modify(state => {
|
|
73
|
+
"worklet";
|
|
74
|
+
|
|
75
|
+
if (state[routeKey]) delete state[routeKey];
|
|
76
|
+
return state;
|
|
77
|
+
});
|
|
78
|
+
pairCache.modify(state => {
|
|
79
|
+
"worklet";
|
|
80
|
+
|
|
81
|
+
const keys = Object.keys(state);
|
|
82
|
+
for (let i = 0; i < keys.length; i++) {
|
|
83
|
+
const k = keys[i];
|
|
84
|
+
const [from, to] = k.split("|");
|
|
85
|
+
if (from === routeKey || to === routeKey) {
|
|
86
|
+
delete state[k];
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
return state;
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
function getActiveBound(current, next, previous) {
|
|
93
|
+
"worklet";
|
|
94
|
+
|
|
95
|
+
return resolveActiveBound({
|
|
96
|
+
current,
|
|
97
|
+
next,
|
|
98
|
+
previous,
|
|
99
|
+
getPairCache,
|
|
100
|
+
setPairCache,
|
|
101
|
+
getRouteActive
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
export const Bounds = {
|
|
105
|
+
setBounds,
|
|
106
|
+
getBounds,
|
|
107
|
+
setRouteActive,
|
|
108
|
+
getRouteActive,
|
|
109
|
+
clear,
|
|
110
|
+
getActiveBound
|
|
111
|
+
};
|
|
112
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["makeMutable","pairKey","resolveActiveBound","registry","pairCache","lastActiveByRoute","setBounds","screenId","boundId","bounds","styles","modify","state","getBounds","value","setRouteActive","routeKey","getRouteActive","setPairCache","fromKey","toKey","key","getPairCache","clear","keys","Object","i","length","k","from","to","split","getActiveBound","current","next","previous","Bounds"],"sourceRoot":"../../../../src","sources":["stores/bounds/index.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -7,12 +7,9 @@ import { Gestures } from "../gestures";
|
|
|
7
7
|
/**
|
|
8
8
|
* Reset all stores for a given screen
|
|
9
9
|
*/
|
|
10
|
-
export const resetStoresForScreen =
|
|
10
|
+
export const resetStoresForScreen = current => {
|
|
11
11
|
Animations.clear(current.route.key);
|
|
12
12
|
Gestures.clear(current.route.key);
|
|
13
13
|
Bounds.clear(current.route.key);
|
|
14
|
-
if (options.clearActive) {
|
|
15
|
-
Bounds.clearActive();
|
|
16
|
-
}
|
|
17
14
|
};
|
|
18
15
|
//# sourceMappingURL=reset-stores-for-screen.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Animations","Bounds","Gestures","resetStoresForScreen","current","
|
|
1
|
+
{"version":3,"names":["Animations","Bounds","Gestures","resetStoresForScreen","current","clear","route","key"],"sourceRoot":"../../../../src","sources":["stores/utils/reset-stores-for-screen.ts"],"mappings":";;AACA,SAASA,UAAU,QAAQ,eAAe;AAC1C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,QAAQ,QAAQ,aAAa;;AAEtC;AACA;AACA;AACA,OAAO,MAAMC,oBAAoB,GAAIC,OAA8B,IAAK;EACvEJ,UAAU,CAACK,KAAK,CAACD,OAAO,CAACE,KAAK,CAACC,GAAG,CAAC;EACnCL,QAAQ,CAACG,KAAK,CAACD,OAAO,CAACE,KAAK,CAACC,GAAG,CAAC;EACjCN,MAAM,CAACI,KAAK,CAACD,OAAO,CAACE,KAAK,CAACC,GAAG,CAAC;AAChC,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bound-capture.d.ts","sourceRoot":"","sources":["../../../src/components/bound-capture.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"bound-capture.d.ts","sourceRoot":"","sources":["../../../src/components/bound-capture.tsx"],"names":[],"mappings":"AAKA,UAAU,mBAAmB;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,eAAO,MAAM,YAAY,GAAI,wCAI1B,mBAAmB,4WAgBrB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-transition-aware-component.d.ts","sourceRoot":"","sources":["../../../src/components/create-transition-aware-component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,aAAa,EAAoB,MAAM,OAAO,CAAC;AAS7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAI1D,UAAU,qCAAqC;IAC9C,YAAY,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,8BAA8B,CAAC,CAAC,SAAS,MAAM,EAC9D,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,EACzB,OAAO,GAAE,qCAA0C,
|
|
1
|
+
{"version":3,"file":"create-transition-aware-component.d.ts","sourceRoot":"","sources":["../../../src/components/create-transition-aware-component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,aAAa,EAAoB,MAAM,OAAO,CAAC;AAS7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAI1D,UAAU,qCAAqC;IAC9C,YAAY,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,8BAA8B,CAAC,CAAC,SAAS,MAAM,EAC9D,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,EACzB,OAAO,GAAE,qCAA0C,GA8F7B,KAAK,CAAC,mBAAmB,CAC9C,KAAK,CAAC,yBAAyB,CAC9B,oBAAoB,CAAC,CAAC,CAAC,GACtB,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,OAAO,CAAC,CAAC,CACxD,CACD,CACD"}
|