react-native-screen-transitions 2.4.2-beta.1 → 2.4.2-beta.2
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/hooks/animation/use-screen-animation.js +4 -2
- package/lib/commonjs/hooks/animation/use-screen-animation.js.map +1 -1
- package/lib/commonjs/integrations/blank-stack/components/StackView.js +3 -3
- package/lib/commonjs/integrations/blank-stack/components/StackView.js.map +1 -1
- package/lib/commonjs/integrations/blank-stack/providers/screen-transition-provider.js +3 -1
- package/lib/commonjs/integrations/blank-stack/providers/screen-transition-provider.js.map +1 -1
- package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/index.js +6 -11
- package/lib/commonjs/integrations/blank-stack/utils/with-stack-navigation/index.js.map +1 -1
- package/lib/commonjs/providers/create-screen-transition-provider.js +4 -1
- package/lib/commonjs/providers/create-screen-transition-provider.js.map +1 -1
- package/lib/commonjs/providers/transition-styles.js +3 -2
- package/lib/commonjs/providers/transition-styles.js.map +1 -1
- package/lib/module/hooks/animation/use-screen-animation.js +4 -2
- package/lib/module/hooks/animation/use-screen-animation.js.map +1 -1
- package/lib/module/integrations/blank-stack/components/StackView.js +3 -3
- package/lib/module/integrations/blank-stack/components/StackView.js.map +1 -1
- package/lib/module/integrations/blank-stack/providers/screen-transition-provider.js +3 -1
- package/lib/module/integrations/blank-stack/providers/screen-transition-provider.js.map +1 -1
- package/lib/module/integrations/blank-stack/utils/with-stack-navigation/index.js +7 -12
- package/lib/module/integrations/blank-stack/utils/with-stack-navigation/index.js.map +1 -1
- package/lib/module/providers/create-screen-transition-provider.js +4 -1
- package/lib/module/providers/create-screen-transition-provider.js.map +1 -1
- package/lib/module/providers/transition-styles.js +3 -2
- package/lib/module/providers/transition-styles.js.map +1 -1
- package/lib/typescript/hooks/animation/use-screen-animation.d.ts +1 -1
- package/lib/typescript/hooks/animation/use-screen-animation.d.ts.map +1 -1
- package/lib/typescript/integrations/blank-stack/providers/screen-transition-provider.d.ts.map +1 -1
- package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_types.d.ts +1 -2
- package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/_types.d.ts.map +1 -1
- package/lib/typescript/integrations/blank-stack/utils/with-stack-navigation/index.d.ts.map +1 -1
- package/lib/typescript/providers/create-screen-transition-provider.d.ts +4 -1
- package/lib/typescript/providers/create-screen-transition-provider.d.ts.map +1 -1
- package/lib/typescript/providers/transition-styles.d.ts +2 -1
- package/lib/typescript/providers/transition-styles.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/hooks/animation/use-screen-animation.tsx +8 -2
- package/src/integrations/blank-stack/components/StackView.tsx +2 -2
- package/src/integrations/blank-stack/providers/screen-transition-provider.tsx +2 -1
- package/src/integrations/blank-stack/utils/with-stack-navigation/_types.ts +1 -2
- package/src/integrations/blank-stack/utils/with-stack-navigation/index.tsx +7 -20
- package/src/providers/create-screen-transition-provider.tsx +38 -29
- package/src/providers/transition-styles.tsx +6 -2
|
@@ -50,7 +50,7 @@ const useBuildScreenTransitionState = descriptor => {
|
|
|
50
50
|
};
|
|
51
51
|
}, [key, descriptor?.route]);
|
|
52
52
|
};
|
|
53
|
-
function _useScreenAnimation() {
|
|
53
|
+
function _useScreenAnimation(defaultEnableTransitions = false) {
|
|
54
54
|
const dimensions = (0, _reactNative.useWindowDimensions)();
|
|
55
55
|
const insets = (0, _reactNativeSafeAreaContext.useSafeAreaInsets)();
|
|
56
56
|
const {
|
|
@@ -65,7 +65,9 @@ function _useScreenAnimation() {
|
|
|
65
65
|
"worklet";
|
|
66
66
|
|
|
67
67
|
const previous = unwrap(prevAnimation, previousDescriptor?.route.key);
|
|
68
|
-
const
|
|
68
|
+
const nextEnableTransitions = nextDescriptor?.options?.enableTransitions;
|
|
69
|
+
const shouldEnableNext = nextEnableTransitions === undefined ? defaultEnableTransitions : nextEnableTransitions;
|
|
70
|
+
const next = shouldEnableNext ? unwrap(nextAnimation, nextDescriptor?.route.key) : undefined;
|
|
69
71
|
const current = unwrap(currentAnimation, currentDescriptor?.route.key) ?? _constants.DEFAULT_SCREEN_TRANSITION_STATE;
|
|
70
72
|
const {
|
|
71
73
|
progress,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","_reactNativeReanimated","_reactNativeSafeAreaContext","_constants","_keys","_animations","_bounds","_gestures","_derivations","_bounds2","unwrap","s","key","undefined","progress","value","closing","animating","gesture","x","y","normalizedX","normalizedY","isDismissing","isDragging","direction","bounds","Bounds","getBounds","NO_BOUNDS_MAP","route","useBuildScreenTransitionState","descriptor","useMemo","Animations","getAnimation","Gestures","getRouteGestures","_useScreenAnimation","dimensions","useWindowDimensions","insets","useSafeAreaInsets","current","currentDescriptor","next","nextDescriptor","previous","previousDescriptor","useKeys","currentAnimation","nextAnimation","prevAnimation","screenInterpolatorProps","useDerivedValue","options","enableTransitions","DEFAULT_SCREEN_TRANSITION_STATE","focused","activeBoundId","active","isActiveTransitioning","derivations","layouts","screen","nextInterpolator","screenStyleInterpolator","currentInterpolator","useScreenAnimation","props","createBounds"],"sourceRoot":"../../../../src","sources":["hooks/animation/use-screen-animation.tsx"],"mappings":";;;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAF,OAAA;AACA,IAAAG,2BAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AAIA,IAAAK,KAAA,GAAAL,OAAA;AACA,IAAAM,WAAA,GAAAN,OAAA;AACA,IAAAO,OAAA,GAAAP,OAAA;AACA,IAAAQ,SAAA,GAAAR,OAAA;AAOA,IAAAS,YAAA,GAAAT,OAAA;AACA,IAAAU,QAAA,GAAAV,OAAA;AAUA,MAAMW,MAAM,GAAGA,CACdC,CAAyB,EACzBC,GAAuB,KACgB;EACvC,SAAS;;EACT,IAAI,CAACD,CAAC,IAAI,CAACC,GAAG,EAAE,OAAOC,SAAS;EAEhC,OAAO;IACNC,QAAQ,EAAEH,CAAC,CAACG,QAAQ,CAACC,KAAK;IAC1BC,OAAO,EAAEL,CAAC,CAACK,OAAO,CAACD,KAAK;IACxBE,SAAS,EAAEN,CAAC,CAACM,SAAS,CAACF,KAAK;IAC5BG,OAAO,EAAE;MACRC,CAAC,EAAER,CAAC,CAACO,OAAO,CAACC,CAAC,CAACJ,KAAK;MACpBK,CAAC,EAAET,CAAC,CAACO,OAAO,CAACE,CAAC,CAACL,KAAK;MACpBM,WAAW,EAAEV,CAAC,CAACO,OAAO,CAACG,WAAW,CAACN,KAAK;MACxCO,WAAW,EAAEX,CAAC,CAACO,OAAO,CAACI,WAAW,CAACP,KAAK;MACxCQ,YAAY,EAAEZ,CAAC,CAACO,OAAO,CAACK,YAAY,CAACR,KAAK;MAC1CS,UAAU,EAAEb,CAAC,CAACO,OAAO,CAACM,UAAU,CAACT,KAAK;MACtCU,SAAS,EAAEd,CAAC,CAACO,OAAO,CAACO,SAAS,CAACV;IAChC,CAAC;IACDW,MAAM,EAAEC,cAAM,CAACC,SAAS,CAAChB,GAAG,CAAC,IAAIiB,wBAAa;IAC9CC,KAAK,EAAEnB,CAAC,CAACmB;EACV,CAAC;AACF,CAAC;AAED,MAAMC,6BAA6B,GAClCC,UAA6C,IACjB;EAC5B,MAAMpB,GAAG,GAAGoB,UAAU,EAAEF,KAAK,CAAClB,GAAG;EAEjC,OAAO,IAAAqB,cAAO,EAAC,MAAM;IACpB,IAAI,CAACrB,GAAG,EAAE,OAAOC,SAAS;IAE1B,OAAO;MACNC,QAAQ,EAAEoB,sBAAU,CAACC,YAAY,CAACvB,GAAG,EAAE,UAAU,CAAC;MAClDI,OAAO,EAAEkB,sBAAU,CAACC,YAAY,CAACvB,GAAG,EAAE,SAAS,CAAC;MAChDK,SAAS,EAAEiB,sBAAU,CAACC,YAAY,CAACvB,GAAG,EAAE,WAAW,CAAC;MACpDM,OAAO,EAAEkB,kBAAQ,CAACC,gBAAgB,CAACzB,GAAG,CAAC;MACvCkB,KAAK,EAAEE,UAAU,CAACF;IACnB,CAAC;EACF,CAAC,EAAE,CAAClB,GAAG,EAAEoB,UAAU,EAAEF,KAAK,CAAC,CAAC;AAC7B,CAAC;AAEM,SAASQ,mBAAmBA,
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_reactNativeReanimated","_reactNativeSafeAreaContext","_constants","_keys","_animations","_bounds","_gestures","_derivations","_bounds2","unwrap","s","key","undefined","progress","value","closing","animating","gesture","x","y","normalizedX","normalizedY","isDismissing","isDragging","direction","bounds","Bounds","getBounds","NO_BOUNDS_MAP","route","useBuildScreenTransitionState","descriptor","useMemo","Animations","getAnimation","Gestures","getRouteGestures","_useScreenAnimation","defaultEnableTransitions","dimensions","useWindowDimensions","insets","useSafeAreaInsets","current","currentDescriptor","next","nextDescriptor","previous","previousDescriptor","useKeys","currentAnimation","nextAnimation","prevAnimation","screenInterpolatorProps","useDerivedValue","nextEnableTransitions","options","enableTransitions","shouldEnableNext","DEFAULT_SCREEN_TRANSITION_STATE","focused","activeBoundId","active","isActiveTransitioning","derivations","layouts","screen","nextInterpolator","screenStyleInterpolator","currentInterpolator","useScreenAnimation","props","createBounds"],"sourceRoot":"../../../../src","sources":["hooks/animation/use-screen-animation.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -35,14 +35,14 @@ const SceneView = ({
|
|
|
35
35
|
const StackView = exports.StackView = (0, _withStackNavigation.withStackNavigationProvider)(({
|
|
36
36
|
activeScreensLimit,
|
|
37
37
|
descriptors,
|
|
38
|
-
FloatHeader,
|
|
39
38
|
focusedIndex,
|
|
40
39
|
routes,
|
|
41
|
-
scenes
|
|
40
|
+
scenes,
|
|
41
|
+
shouldShowFloatHeader
|
|
42
42
|
}) => {
|
|
43
43
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeGestureHandler.GestureHandlerRootView, {
|
|
44
44
|
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_elements.SafeAreaProviderCompat, {
|
|
45
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
45
|
+
children: [shouldShowFloatHeader ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Header.Header.Float, {}) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeScreens.ScreenContainer, {
|
|
46
46
|
style: {
|
|
47
47
|
flex: 1
|
|
48
48
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_elements","require","_native","_reactNativeGestureHandler","_reactNativeScreens","_withStackNavigation","_Header","_Screens","_screenTransitionProvider","_jsxRuntime","isFabric","global","SceneView","descriptor","route","navigation","render","jsx","NavigationContext","Provider","value","children","jsxs","NavigationRouteContext","options","headerMode","Header","Screen","StackView","exports","withStackNavigationProvider","activeScreensLimit","descriptors","
|
|
1
|
+
{"version":3,"names":["_elements","require","_native","_reactNativeGestureHandler","_reactNativeScreens","_withStackNavigation","_Header","_Screens","_screenTransitionProvider","_jsxRuntime","isFabric","global","SceneView","descriptor","route","navigation","render","jsx","NavigationContext","Provider","value","children","jsxs","NavigationRouteContext","options","headerMode","Header","Screen","StackView","exports","withStackNavigationProvider","activeScreensLimit","descriptors","focusedIndex","routes","scenes","shouldShowFloatHeader","GestureHandlerRootView","SafeAreaProviderCompat","Float","ScreenContainer","style","flex","map","scene","sceneIndex","isFocused","isBelowFocused","previousDescriptor","undefined","nextDescriptor","isPreloaded","key","shouldFreeze","index","routeKey","freezeOnBlur","ScreenTransitionProvider","previous","current","next"],"sourceRoot":"../../../../../src","sources":["integrations/blank-stack/components/StackView.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,5 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.ScreenTransitionProvider = void 0;
|
|
7
7
|
var _screenLifecycle = require("../../../components/controllers/screen-lifecycle.blank");
|
|
8
8
|
var _createScreenTransitionProvider = require("../../../providers/create-screen-transition-provider");
|
|
9
|
-
const ScreenTransitionProvider = exports.ScreenTransitionProvider = (0, _createScreenTransitionProvider.createScreenTransitionProvider)(_screenLifecycle.ScreenLifecycleController
|
|
9
|
+
const ScreenTransitionProvider = exports.ScreenTransitionProvider = (0, _createScreenTransitionProvider.createScreenTransitionProvider)(_screenLifecycle.ScreenLifecycleController, {
|
|
10
|
+
defaultEnableTransitions: true
|
|
11
|
+
});
|
|
10
12
|
//# sourceMappingURL=screen-transition-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_screenLifecycle","require","_createScreenTransitionProvider","ScreenTransitionProvider","exports","createScreenTransitionProvider","ScreenLifecycleController"],"sourceRoot":"../../../../../src","sources":["integrations/blank-stack/providers/screen-transition-provider.tsx"],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"names":["_screenLifecycle","require","_createScreenTransitionProvider","ScreenTransitionProvider","exports","createScreenTransitionProvider","ScreenLifecycleController","defaultEnableTransitions"],"sourceRoot":"../../../../../src","sources":["integrations/blank-stack/providers/screen-transition-provider.tsx"],"mappings":";;;;;;AAAA,IAAAA,gBAAA,GAAAC,OAAA;AACA,IAAAC,+BAAA,GAAAD,OAAA;AAGO,MAAME,wBAAwB,GAAAC,OAAA,CAAAD,wBAAA,GACpC,IAAAE,8DAA8B,EAC7BC,0CAAyB,EACzB;EAAEC,wBAAwB,EAAE;AAAK,CAClC,CAAC","ignoreList":[]}
|
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.useStackNavigationContext = exports.StackNavigationContext = void 0;
|
|
7
7
|
exports.withStackNavigationProvider = withStackNavigationProvider;
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var _Header = require("../../components/Header");
|
|
10
9
|
var _useStackNavigationState = require("./_hooks/use-stack-navigation-state");
|
|
11
10
|
var _calculateActiveScreensLimit = require("./_utils/calculate-active-screens-limit");
|
|
12
11
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
@@ -30,16 +29,12 @@ function withStackNavigationProvider(Component) {
|
|
|
30
29
|
const activeScreensLimit = (0, _react.useMemo)(() => {
|
|
31
30
|
return (0, _calculateActiveScreensLimit.calculateActiveScreensLimit)(state.routes, state.descriptors);
|
|
32
31
|
}, [state.routes, state.descriptors]);
|
|
33
|
-
const
|
|
34
|
-
|
|
35
|
-
const options =
|
|
32
|
+
const shouldShowFloatHeader = (0, _react.useMemo)(() => {
|
|
33
|
+
return state.routes.some(route => {
|
|
34
|
+
const options = state.descriptors[route.key]?.options;
|
|
36
35
|
return options?.headerMode === "float" && options?.headerShown;
|
|
37
36
|
});
|
|
38
|
-
|
|
39
|
-
return null;
|
|
40
|
-
}
|
|
41
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Header.Header.Float, {});
|
|
42
|
-
});
|
|
37
|
+
}, [state.routes, state.descriptors]);
|
|
43
38
|
const contextValue = (0, _react.useMemo)(() => {
|
|
44
39
|
return {
|
|
45
40
|
routes: state.routes,
|
|
@@ -49,9 +44,9 @@ function withStackNavigationProvider(Component) {
|
|
|
49
44
|
activeScreensLimit,
|
|
50
45
|
handleCloseRoute,
|
|
51
46
|
scenes,
|
|
52
|
-
|
|
47
|
+
shouldShowFloatHeader
|
|
53
48
|
};
|
|
54
|
-
}, [state, scenes, activeScreensLimit, closingRouteKeys, handleCloseRoute, props.state.index,
|
|
49
|
+
}, [state, scenes, activeScreensLimit, closingRouteKeys, handleCloseRoute, props.state.index, shouldShowFloatHeader]);
|
|
55
50
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(StackNavigationContext.Provider, {
|
|
56
51
|
value: contextValue,
|
|
57
52
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Component, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","
|
|
1
|
+
{"version":3,"names":["_react","require","_useStackNavigationState","_calculateActiveScreensLimit","_jsxRuntime","StackNavigationContext","exports","createContext","withStackNavigationProvider","Component","StackNavigationWrapper","props","state","handleCloseRoute","closingRouteKeys","useStackNavigationState","scenes","useMemo","routes","reduce","acc","route","push","descriptor","descriptors","key","activeScreensLimit","calculateActiveScreensLimit","shouldShowFloatHeader","some","options","headerMode","headerShown","contextValue","focusedIndex","index","closingRouteKeysShared","shared","jsx","Provider","value","children","useStackNavigationContext","context","useContext","Error"],"sourceRoot":"../../../../../../src","sources":["integrations/blank-stack/utils/with-stack-navigation/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,7 +9,9 @@ var _gestures = require("./gestures");
|
|
|
9
9
|
var _keys = require("./keys");
|
|
10
10
|
var _transitionStyles = require("./transition-styles");
|
|
11
11
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
|
-
function createScreenTransitionProvider(ScreenLifecycleComponent
|
|
12
|
+
function createScreenTransitionProvider(ScreenLifecycleComponent, {
|
|
13
|
+
defaultEnableTransitions = false
|
|
14
|
+
} = {}) {
|
|
13
15
|
return function ScreenTransitionProvider({
|
|
14
16
|
previous,
|
|
15
17
|
current,
|
|
@@ -23,6 +25,7 @@ function createScreenTransitionProvider(ScreenLifecycleComponent) {
|
|
|
23
25
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_gestures.ScreenGestureProvider, {
|
|
24
26
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(ScreenLifecycleComponent, {
|
|
25
27
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_transitionStyles.TransitionStylesProvider, {
|
|
28
|
+
defaultEnableTransitions: defaultEnableTransitions,
|
|
26
29
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_rootTransitionAware.RootTransitionAware, {
|
|
27
30
|
children: children
|
|
28
31
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_rootTransitionAware","require","_gestures","_keys","_transitionStyles","_jsxRuntime","createScreenTransitionProvider","ScreenLifecycleComponent","ScreenTransitionProvider","previous","current","next","children","jsx","KeysProvider","ScreenGestureProvider","TransitionStylesProvider","RootTransitionAware"],"sourceRoot":"../../../src","sources":["providers/create-screen-transition-provider.tsx"],"mappings":";;;;;;AAEA,IAAAA,oBAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAH,OAAA;AAA+D,IAAAI,WAAA,GAAAJ,OAAA;
|
|
1
|
+
{"version":3,"names":["_rootTransitionAware","require","_gestures","_keys","_transitionStyles","_jsxRuntime","createScreenTransitionProvider","ScreenLifecycleComponent","defaultEnableTransitions","ScreenTransitionProvider","previous","current","next","children","jsx","KeysProvider","ScreenGestureProvider","TransitionStylesProvider","RootTransitionAware"],"sourceRoot":"../../../src","sources":["providers/create-screen-transition-provider.tsx"],"mappings":";;;;;;AAEA,IAAAA,oBAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAH,OAAA;AAA+D,IAAAI,WAAA,GAAAJ,OAAA;AAmBxD,SAASK,8BAA8BA,CAG5CC,wBAAkD,EAClD;EAAEC,wBAAwB,GAAG;AAA6C,CAAC,GAAG,CAAC,CAAC,EAChF;EACA,OAAO,SAASC,wBAAwBA,CAAC;IACvCC,QAAQ;IACRC,OAAO;IACPC,IAAI;IACJC;EAC6C,CAAC,EAAE;IAChD,oBACE,IAAAR,WAAA,CAAAS,GAAA,EAACX,KAAA,CAAAY,YAAY;MACXL,QAAQ,EAAEA,QAAS;MACnBC,OAAO,EAAEA,OAAQ;MACjBC,IAAI,EAAEA,IAAK;MAAAC,QAAA,eAEX,IAAAR,WAAA,CAAAS,GAAA,EAACZ,SAAA,CAAAc,qBAAqB;QAAAH,QAAA,eACpB,IAAAR,WAAA,CAAAS,GAAA,EAACP,wBAAwB;UAAAM,QAAA,eACvB,IAAAR,WAAA,CAAAS,GAAA,EAACV,iBAAA,CAAAa,wBAAwB;YACvBT,wBAAwB,EAAEA,wBAAyB;YAAAK,QAAA,eAEnD,IAAAR,WAAA,CAAAS,GAAA,EAACd,oBAAA,CAAAkB,mBAAmB;cAAAL,QAAA,EAAEA;YAAQ,CAAsB;UAAC,CAC7B;QAAC,CACH;MAAC,CACN;IAAC,CACZ,CAAC;EAEnB,CAAC;AACH","ignoreList":[]}
|
|
@@ -13,12 +13,13 @@ var _bounds = require("../utils/bounds");
|
|
|
13
13
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
14
14
|
const TransitionStylesContext = /*#__PURE__*/(0, _react.createContext)(null);
|
|
15
15
|
function TransitionStylesProvider({
|
|
16
|
-
children
|
|
16
|
+
children,
|
|
17
|
+
defaultEnableTransitions = false
|
|
17
18
|
}) {
|
|
18
19
|
const {
|
|
19
20
|
screenInterpolatorProps,
|
|
20
21
|
screenStyleInterpolator
|
|
21
|
-
} = (0, _useScreenAnimation2._useScreenAnimation)();
|
|
22
|
+
} = (0, _useScreenAnimation2._useScreenAnimation)(defaultEnableTransitions);
|
|
22
23
|
const stylesMap = (0, _reactNativeReanimated.useDerivedValue)(() => {
|
|
23
24
|
"worklet";
|
|
24
25
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNativeReanimated","_constants","_useScreenAnimation2","_bounds","_jsxRuntime","TransitionStylesContext","createContext","TransitionStylesProvider","children","screenInterpolatorProps","screenStyleInterpolator","_useScreenAnimation","stylesMap","useDerivedValue","props","value","bounds","createBounds","NO_STYLES","err","__DEV__","console","warn","useMemo","jsx","Provider","useTransitionStyles","ctx","useContext","Error"],"sourceRoot":"../../../src","sources":["providers/transition-styles.tsx"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,oBAAA,GAAAH,OAAA;AAEA,IAAAI,OAAA,GAAAJ,OAAA;AAA+C,IAAAK,WAAA,GAAAL,OAAA;
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNativeReanimated","_constants","_useScreenAnimation2","_bounds","_jsxRuntime","TransitionStylesContext","createContext","TransitionStylesProvider","children","defaultEnableTransitions","screenInterpolatorProps","screenStyleInterpolator","_useScreenAnimation","stylesMap","useDerivedValue","props","value","bounds","createBounds","NO_STYLES","err","__DEV__","console","warn","useMemo","jsx","Provider","useTransitionStyles","ctx","useContext","Error"],"sourceRoot":"../../../src","sources":["providers/transition-styles.tsx"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,oBAAA,GAAAH,OAAA;AAEA,IAAAI,OAAA,GAAAJ,OAAA;AAA+C,IAAAK,WAAA,GAAAL,OAAA;AAO/C,MAAMM,uBAAuB,gBAAG,IAAAC,oBAAa,EAInC,IAAI,CAAC;AAER,SAASC,wBAAwBA,CAAC;EACxCC,QAAQ;EACRC,wBAAwB,GAAG;AACrB,CAAC,EAAE;EACT,MAAM;IAAEC,uBAAuB;IAAEC;EAAwB,CAAC,GACzD,IAAAC,wCAAmB,EAACH,wBAAwB,CAAC;EAE9C,MAAMI,SAAS,GAAG,IAAAC,sCAAe,EAA8B,MAAM;IACpE,SAAS;;IAET;AACF;AACA;AACA;AACA;IACE,MAAMC,KAAK,GAAGL,uBAAuB,CAACM,KAAK;IAE3C,MAAMC,MAAM,GAAG,IAAAC,oBAAY,EAACH,KAAK,CAAC;IAClC,IAAI;MACH,IAAI,CAACJ,uBAAuB,EAAE,OAAOQ,oBAAS;MAE9C,OAAOR,uBAAuB,CAAC;QAC9B,GAAGI,KAAK;QACRE;MACD,CAAC,CAAC;IACH,CAAC,CAAC,OAAOG,GAAG,EAAE;MACb,IAAIC,OAAO,EAAE;QACZC,OAAO,CAACC,IAAI,CACX,6EAA6E,EAC7EH,GACD,CAAC;MACF;MACA,OAAOD,oBAAS;IACjB;EACD,CAAC,CAAC;EAEF,MAAMH,KAAK,GAAG,IAAAQ,cAAO,EAAC,MAAM;IAC3B,OAAO;MACNX;IACD,CAAC;EACF,CAAC,EAAE,CAACA,SAAS,CAAC,CAAC;EAEf,oBACC,IAAAT,WAAA,CAAAqB,GAAA,EAACpB,uBAAuB,CAACqB,QAAQ;IAACV,KAAK,EAAEA,KAAM;IAAAR,QAAA,EAC7CA;EAAQ,CACwB,CAAC;AAErC;AAEO,SAASmB,mBAAmBA,CAAA,EAAG;EACrC,MAAMC,GAAG,GAAG,IAAAC,iBAAU,EAACxB,uBAAuB,CAAC;EAC/C,IAAI,CAACuB,GAAG,EAAE;IACT,MAAM,IAAIE,KAAK,CACd,oEACD,CAAC;EACF;EACA,OAAOF,GAAG;AACX","ignoreList":[]}
|
|
@@ -45,7 +45,7 @@ const useBuildScreenTransitionState = descriptor => {
|
|
|
45
45
|
};
|
|
46
46
|
}, [key, descriptor?.route]);
|
|
47
47
|
};
|
|
48
|
-
export function _useScreenAnimation() {
|
|
48
|
+
export function _useScreenAnimation(defaultEnableTransitions = false) {
|
|
49
49
|
const dimensions = useWindowDimensions();
|
|
50
50
|
const insets = useSafeAreaInsets();
|
|
51
51
|
const {
|
|
@@ -60,7 +60,9 @@ export function _useScreenAnimation() {
|
|
|
60
60
|
"worklet";
|
|
61
61
|
|
|
62
62
|
const previous = unwrap(prevAnimation, previousDescriptor?.route.key);
|
|
63
|
-
const
|
|
63
|
+
const nextEnableTransitions = nextDescriptor?.options?.enableTransitions;
|
|
64
|
+
const shouldEnableNext = nextEnableTransitions === undefined ? defaultEnableTransitions : nextEnableTransitions;
|
|
65
|
+
const next = shouldEnableNext ? unwrap(nextAnimation, nextDescriptor?.route.key) : undefined;
|
|
64
66
|
const current = unwrap(currentAnimation, currentDescriptor?.route.key) ?? DEFAULT_SCREEN_TRANSITION_STATE;
|
|
65
67
|
const {
|
|
66
68
|
progress,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useMemo","useWindowDimensions","useDerivedValue","useSafeAreaInsets","DEFAULT_SCREEN_TRANSITION_STATE","NO_BOUNDS_MAP","useKeys","Animations","Bounds","Gestures","derivations","createBounds","unwrap","s","key","undefined","progress","value","closing","animating","gesture","x","y","normalizedX","normalizedY","isDismissing","isDragging","direction","bounds","getBounds","route","useBuildScreenTransitionState","descriptor","getAnimation","getRouteGestures","_useScreenAnimation","dimensions","insets","current","currentDescriptor","next","nextDescriptor","previous","previousDescriptor","currentAnimation","nextAnimation","prevAnimation","screenInterpolatorProps","options","enableTransitions","focused","activeBoundId","active","isActiveTransitioning","layouts","screen","nextInterpolator","screenStyleInterpolator","currentInterpolator","useScreenAnimation","props"],"sourceRoot":"../../../../src","sources":["hooks/animation/use-screen-animation.tsx"],"mappings":";;AACA,SAASA,OAAO,QAAQ,OAAO;AAC/B,SAASC,mBAAmB,QAAQ,cAAc;AAClD,SAA2BC,eAAe,QAAQ,yBAAyB;AAC3E,SAASC,iBAAiB,QAAQ,gCAAgC;AAClE,SACCC,+BAA+B,EAC/BC,aAAa,QACP,iBAAiB;AACxB,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,SAASC,UAAU,QAAQ,yBAAyB;AACpD,SAASC,MAAM,QAAQ,qBAAqB;AAC5C,SAA0BC,QAAQ,QAAQ,uBAAuB;AAOjE,SAASC,WAAW,QAAQ,mCAAmC;AAC/D,SAASC,YAAY,QAAQ,oBAAoB;AAUjD,MAAMC,MAAM,GAAGA,CACdC,CAAyB,EACzBC,GAAuB,KACgB;EACvC,SAAS;;EACT,IAAI,CAACD,CAAC,IAAI,CAACC,GAAG,EAAE,OAAOC,SAAS;EAEhC,OAAO;IACNC,QAAQ,EAAEH,CAAC,CAACG,QAAQ,CAACC,KAAK;IAC1BC,OAAO,EAAEL,CAAC,CAACK,OAAO,CAACD,KAAK;IACxBE,SAAS,EAAEN,CAAC,CAACM,SAAS,CAACF,KAAK;IAC5BG,OAAO,EAAE;MACRC,CAAC,EAAER,CAAC,CAACO,OAAO,CAACC,CAAC,CAACJ,KAAK;MACpBK,CAAC,EAAET,CAAC,CAACO,OAAO,CAACE,CAAC,CAACL,KAAK;MACpBM,WAAW,EAAEV,CAAC,CAACO,OAAO,CAACG,WAAW,CAACN,KAAK;MACxCO,WAAW,EAAEX,CAAC,CAACO,OAAO,CAACI,WAAW,CAACP,KAAK;MACxCQ,YAAY,EAAEZ,CAAC,CAACO,OAAO,CAACK,YAAY,CAACR,KAAK;MAC1CS,UAAU,EAAEb,CAAC,CAACO,OAAO,CAACM,UAAU,CAACT,KAAK;MACtCU,SAAS,EAAEd,CAAC,CAACO,OAAO,CAACO,SAAS,CAACV;IAChC,CAAC;IACDW,MAAM,EAAEpB,MAAM,CAACqB,SAAS,CAACf,GAAG,CAAC,IAAIT,aAAa;IAC9CyB,KAAK,EAAEjB,CAAC,CAACiB;EACV,CAAC;AACF,CAAC;AAED,MAAMC,6BAA6B,GAClCC,UAA6C,IACjB;EAC5B,MAAMlB,GAAG,GAAGkB,UAAU,EAAEF,KAAK,CAAChB,GAAG;EAEjC,OAAOd,OAAO,CAAC,MAAM;IACpB,IAAI,CAACc,GAAG,EAAE,OAAOC,SAAS;IAE1B,OAAO;MACNC,QAAQ,EAAET,UAAU,CAAC0B,YAAY,CAACnB,GAAG,EAAE,UAAU,CAAC;MAClDI,OAAO,EAAEX,UAAU,CAAC0B,YAAY,CAACnB,GAAG,EAAE,SAAS,CAAC;MAChDK,SAAS,EAAEZ,UAAU,CAAC0B,YAAY,CAACnB,GAAG,EAAE,WAAW,CAAC;MACpDM,OAAO,EAAEX,QAAQ,CAACyB,gBAAgB,CAACpB,GAAG,CAAC;MACvCgB,KAAK,EAAEE,UAAU,CAACF;IACnB,CAAC;EACF,CAAC,EAAE,CAAChB,GAAG,EAAEkB,UAAU,EAAEF,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED,OAAO,SAASK,mBAAmBA,
|
|
1
|
+
{"version":3,"names":["useMemo","useWindowDimensions","useDerivedValue","useSafeAreaInsets","DEFAULT_SCREEN_TRANSITION_STATE","NO_BOUNDS_MAP","useKeys","Animations","Bounds","Gestures","derivations","createBounds","unwrap","s","key","undefined","progress","value","closing","animating","gesture","x","y","normalizedX","normalizedY","isDismissing","isDragging","direction","bounds","getBounds","route","useBuildScreenTransitionState","descriptor","getAnimation","getRouteGestures","_useScreenAnimation","defaultEnableTransitions","dimensions","insets","current","currentDescriptor","next","nextDescriptor","previous","previousDescriptor","currentAnimation","nextAnimation","prevAnimation","screenInterpolatorProps","nextEnableTransitions","options","enableTransitions","shouldEnableNext","focused","activeBoundId","active","isActiveTransitioning","layouts","screen","nextInterpolator","screenStyleInterpolator","currentInterpolator","useScreenAnimation","props"],"sourceRoot":"../../../../src","sources":["hooks/animation/use-screen-animation.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -31,14 +31,14 @@ const SceneView = ({
|
|
|
31
31
|
export const StackView = withStackNavigationProvider(({
|
|
32
32
|
activeScreensLimit,
|
|
33
33
|
descriptors,
|
|
34
|
-
FloatHeader,
|
|
35
34
|
focusedIndex,
|
|
36
35
|
routes,
|
|
37
|
-
scenes
|
|
36
|
+
scenes,
|
|
37
|
+
shouldShowFloatHeader
|
|
38
38
|
}) => {
|
|
39
39
|
return /*#__PURE__*/_jsx(GestureHandlerRootView, {
|
|
40
40
|
children: /*#__PURE__*/_jsxs(SafeAreaProviderCompat, {
|
|
41
|
-
children: [/*#__PURE__*/_jsx(
|
|
41
|
+
children: [shouldShowFloatHeader ? /*#__PURE__*/_jsx(Header.Float, {}) : null, /*#__PURE__*/_jsx(ScreenContainer, {
|
|
42
42
|
style: {
|
|
43
43
|
flex: 1
|
|
44
44
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["SafeAreaProviderCompat","NavigationContext","NavigationRouteContext","GestureHandlerRootView","ScreenContainer","withStackNavigationProvider","Header","Screen","ScreenTransitionProvider","jsx","_jsx","jsxs","_jsxs","isFabric","global","SceneView","descriptor","route","navigation","render","Provider","value","children","options","headerMode","StackView","activeScreensLimit","descriptors","
|
|
1
|
+
{"version":3,"names":["SafeAreaProviderCompat","NavigationContext","NavigationRouteContext","GestureHandlerRootView","ScreenContainer","withStackNavigationProvider","Header","Screen","ScreenTransitionProvider","jsx","_jsx","jsxs","_jsxs","isFabric","global","SceneView","descriptor","route","navigation","render","Provider","value","children","options","headerMode","StackView","activeScreensLimit","descriptors","focusedIndex","routes","scenes","shouldShowFloatHeader","Float","style","flex","map","scene","sceneIndex","isFocused","isBelowFocused","previousDescriptor","undefined","nextDescriptor","isPreloaded","key","shouldFreeze","index","routeKey","freezeOnBlur","previous","current","next"],"sourceRoot":"../../../../../src","sources":["integrations/blank-stack/components/StackView.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,5 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { ScreenLifecycleController } from "../../../components/controllers/screen-lifecycle.blank";
|
|
4
4
|
import { createScreenTransitionProvider } from "../../../providers/create-screen-transition-provider";
|
|
5
|
-
export const ScreenTransitionProvider = createScreenTransitionProvider(ScreenLifecycleController
|
|
5
|
+
export const ScreenTransitionProvider = createScreenTransitionProvider(ScreenLifecycleController, {
|
|
6
|
+
defaultEnableTransitions: true
|
|
7
|
+
});
|
|
6
8
|
//# sourceMappingURL=screen-transition-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ScreenLifecycleController","createScreenTransitionProvider","ScreenTransitionProvider"],"sourceRoot":"../../../../../src","sources":["integrations/blank-stack/providers/screen-transition-provider.tsx"],"mappings":";;
|
|
1
|
+
{"version":3,"names":["ScreenLifecycleController","createScreenTransitionProvider","ScreenTransitionProvider","defaultEnableTransitions"],"sourceRoot":"../../../../../src","sources":["integrations/blank-stack/providers/screen-transition-provider.tsx"],"mappings":";;AAAA,SAASA,yBAAyB,QAAQ,wDAAwD;AAClG,SAASC,8BAA8B,QAAQ,sDAAsD;AAGrG,OAAO,MAAMC,wBAAwB,GACpCD,8BAA8B,CAC7BD,yBAAyB,EACzB;EAAEG,wBAAwB,EAAE;AAAK,CAClC,CAAC","ignoreList":[]}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { createContext,
|
|
4
|
-
import { Header } from "../../components/Header";
|
|
3
|
+
import { createContext, useContext, useMemo } from "react";
|
|
5
4
|
import { useStackNavigationState } from "./_hooks/use-stack-navigation-state";
|
|
6
5
|
import { calculateActiveScreensLimit } from "./_utils/calculate-active-screens-limit";
|
|
7
6
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -25,16 +24,12 @@ export function withStackNavigationProvider(Component) {
|
|
|
25
24
|
const activeScreensLimit = useMemo(() => {
|
|
26
25
|
return calculateActiveScreensLimit(state.routes, state.descriptors);
|
|
27
26
|
}, [state.routes, state.descriptors]);
|
|
28
|
-
const
|
|
29
|
-
|
|
30
|
-
const options =
|
|
27
|
+
const shouldShowFloatHeader = useMemo(() => {
|
|
28
|
+
return state.routes.some(route => {
|
|
29
|
+
const options = state.descriptors[route.key]?.options;
|
|
31
30
|
return options?.headerMode === "float" && options?.headerShown;
|
|
32
31
|
});
|
|
33
|
-
|
|
34
|
-
return null;
|
|
35
|
-
}
|
|
36
|
-
return /*#__PURE__*/_jsx(Header.Float, {});
|
|
37
|
-
});
|
|
32
|
+
}, [state.routes, state.descriptors]);
|
|
38
33
|
const contextValue = useMemo(() => {
|
|
39
34
|
return {
|
|
40
35
|
routes: state.routes,
|
|
@@ -44,9 +39,9 @@ export function withStackNavigationProvider(Component) {
|
|
|
44
39
|
activeScreensLimit,
|
|
45
40
|
handleCloseRoute,
|
|
46
41
|
scenes,
|
|
47
|
-
|
|
42
|
+
shouldShowFloatHeader
|
|
48
43
|
};
|
|
49
|
-
}, [state, scenes, activeScreensLimit, closingRouteKeys, handleCloseRoute, props.state.index,
|
|
44
|
+
}, [state, scenes, activeScreensLimit, closingRouteKeys, handleCloseRoute, props.state.index, shouldShowFloatHeader]);
|
|
50
45
|
return /*#__PURE__*/_jsx(StackNavigationContext.Provider, {
|
|
51
46
|
value: contextValue,
|
|
52
47
|
children: /*#__PURE__*/_jsx(Component, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createContext","
|
|
1
|
+
{"version":3,"names":["createContext","useContext","useMemo","useStackNavigationState","calculateActiveScreensLimit","jsx","_jsx","StackNavigationContext","withStackNavigationProvider","Component","StackNavigationWrapper","props","state","handleCloseRoute","closingRouteKeys","scenes","routes","reduce","acc","route","push","descriptor","descriptors","key","activeScreensLimit","shouldShowFloatHeader","some","options","headerMode","headerShown","contextValue","focusedIndex","index","closingRouteKeysShared","shared","Provider","value","children","useStackNavigationContext","context","Error"],"sourceRoot":"../../../../../../src","sources":["integrations/blank-stack/utils/with-stack-navigation/index.tsx"],"mappings":";;AAAA,SAA6BA,aAAa,EAAEC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAE9E,SAASC,uBAAuB,QAAQ,qCAAqC;AAK7E,SAASC,2BAA2B,QAAQ,yCAAyC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEtF,OAAO,MAAMC,sBAAsB,gBACjCP,aAAa,CAAqC,IAAI,CAAC;AAEzD,OAAO,SAASQ,2BAA2BA,CACzCC,SAAqD,EACrD;EACA,OAAO,SAASC,sBAAsBA,CAACC,KAAkC,EAAE;IACzE,MAAM;MAAEC,KAAK;MAAEC,gBAAgB;MAAEC;IAAiB,CAAC,GACjDX,uBAAuB,CAACQ,KAAK,CAAC;IAEhC,MAAMI,MAAM,GAAGb,OAAO,CAAC,MAAM;MAC3B,OAAOU,KAAK,CAACI,MAAM,CAACC,MAAM,CAAC,CAACC,GAAG,EAAEC,KAAK,KAAK;QACzCD,GAAG,CAACE,IAAI,CAAC;UACPD,KAAK;UACLE,UAAU,EAAET,KAAK,CAACU,WAAW,CAACH,KAAK,CAACI,GAAG;QACzC,CAAC,CAAC;QACF,OAAOL,GAAG;MACZ,CAAC,EAAE,EAAuB,CAAC;IAC7B,CAAC,EAAE,CAACN,KAAK,CAACI,MAAM,EAAEJ,KAAK,CAACU,WAAW,CAAC,CAAC;IAErC,MAAME,kBAAkB,GAAGtB,OAAO,CAAC,MAAM;MACvC,OAAOE,2BAA2B,CAACQ,KAAK,CAACI,MAAM,EAAEJ,KAAK,CAACU,WAAW,CAAC;IACrE,CAAC,EAAE,CAACV,KAAK,CAACI,MAAM,EAAEJ,KAAK,CAACU,WAAW,CAAC,CAAC;IAErC,MAAMG,qBAAqB,GAAGvB,OAAO,CAAC,MAAM;MAC1C,OAAOU,KAAK,CAACI,MAAM,CAACU,IAAI,CAAEP,KAAK,IAAK;QAClC,MAAMQ,OAAO,GAAGf,KAAK,CAACU,WAAW,CAACH,KAAK,CAACI,GAAG,CAAC,EAAEI,OAAO;QACrD,OAAOA,OAAO,EAAEC,UAAU,KAAK,OAAO,IAAID,OAAO,EAAEE,WAAW;MAChE,CAAC,CAAC;IACJ,CAAC,EAAE,CAACjB,KAAK,CAACI,MAAM,EAAEJ,KAAK,CAACU,WAAW,CAAC,CAAC;IAErC,MAAMQ,YAAY,GAAG5B,OAAO,CAA8B,MAAM;MAC9D,OAAO;QACLc,MAAM,EAAEJ,KAAK,CAACI,MAAM;QACpBe,YAAY,EAAEpB,KAAK,CAACC,KAAK,CAACoB,KAAK;QAC/BV,WAAW,EAAEV,KAAK,CAACU,WAAW;QAC9BW,sBAAsB,EAAEnB,gBAAgB,CAACoB,MAAM;QAC/CV,kBAAkB;QAClBX,gBAAgB;QAChBE,MAAM;QACNU;MACF,CAAC;IACH,CAAC,EAAE,CACDb,KAAK,EACLG,MAAM,EACNS,kBAAkB,EAClBV,gBAAgB,EAChBD,gBAAgB,EAChBF,KAAK,CAACC,KAAK,CAACoB,KAAK,EACjBP,qBAAqB,CACtB,CAAC;IAEF,oBACEnB,IAAA,CAACC,sBAAsB,CAAC4B,QAAQ;MAACC,KAAK,EAAEN,YAAa;MAAAO,QAAA,eACnD/B,IAAA,CAACG,SAAS;QAAA,GAAKqB;MAAY,CAAG;IAAC,CACA,CAAC;EAEtC,CAAC;AACH;AAEA,OAAO,MAAMQ,yBAAyB,GAAGA,CAAA,KAAM;EAC7C,MAAMC,OAAO,GAAGtC,UAAU,CAACM,sBAAsB,CAAC;EAElD,IAAI,CAACgC,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CACb,mEACF,CAAC;EACH;EAEA,OAAOD,OAAO;AAChB,CAAC","ignoreList":[]}
|
|
@@ -5,7 +5,9 @@ import { ScreenGestureProvider } from "./gestures";
|
|
|
5
5
|
import { KeysProvider } from "./keys";
|
|
6
6
|
import { TransitionStylesProvider } from "./transition-styles";
|
|
7
7
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
|
-
export function createScreenTransitionProvider(ScreenLifecycleComponent
|
|
8
|
+
export function createScreenTransitionProvider(ScreenLifecycleComponent, {
|
|
9
|
+
defaultEnableTransitions = false
|
|
10
|
+
} = {}) {
|
|
9
11
|
return function ScreenTransitionProvider({
|
|
10
12
|
previous,
|
|
11
13
|
current,
|
|
@@ -19,6 +21,7 @@ export function createScreenTransitionProvider(ScreenLifecycleComponent) {
|
|
|
19
21
|
children: /*#__PURE__*/_jsx(ScreenGestureProvider, {
|
|
20
22
|
children: /*#__PURE__*/_jsx(ScreenLifecycleComponent, {
|
|
21
23
|
children: /*#__PURE__*/_jsx(TransitionStylesProvider, {
|
|
24
|
+
defaultEnableTransitions: defaultEnableTransitions,
|
|
22
25
|
children: /*#__PURE__*/_jsx(RootTransitionAware, {
|
|
23
26
|
children: children
|
|
24
27
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["RootTransitionAware","ScreenGestureProvider","KeysProvider","TransitionStylesProvider","jsx","_jsx","createScreenTransitionProvider","ScreenLifecycleComponent","ScreenTransitionProvider","previous","current","next","children"],"sourceRoot":"../../../src","sources":["providers/create-screen-transition-provider.tsx"],"mappings":";;AAEA,SAASA,mBAAmB,QAAQ,qCAAqC;AACzE,SAASC,qBAAqB,QAAQ,YAAY;AAClD,SAASC,YAAY,QAAQ,QAAQ;AACrC,SAASC,wBAAwB,QAAQ,qBAAqB;AAAC,SAAAC,GAAA,IAAAC,IAAA;
|
|
1
|
+
{"version":3,"names":["RootTransitionAware","ScreenGestureProvider","KeysProvider","TransitionStylesProvider","jsx","_jsx","createScreenTransitionProvider","ScreenLifecycleComponent","defaultEnableTransitions","ScreenTransitionProvider","previous","current","next","children"],"sourceRoot":"../../../src","sources":["providers/create-screen-transition-provider.tsx"],"mappings":";;AAEA,SAASA,mBAAmB,QAAQ,qCAAqC;AACzE,SAASC,qBAAqB,QAAQ,YAAY;AAClD,SAASC,YAAY,QAAQ,QAAQ;AACrC,SAASC,wBAAwB,QAAQ,qBAAqB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAmB/D,OAAO,SAASC,8BAA8BA,CAG5CC,wBAAkD,EAClD;EAAEC,wBAAwB,GAAG;AAA6C,CAAC,GAAG,CAAC,CAAC,EAChF;EACA,OAAO,SAASC,wBAAwBA,CAAC;IACvCC,QAAQ;IACRC,OAAO;IACPC,IAAI;IACJC;EAC6C,CAAC,EAAE;IAChD,oBACER,IAAA,CAACH,YAAY;MACXQ,QAAQ,EAAEA,QAAS;MACnBC,OAAO,EAAEA,OAAQ;MACjBC,IAAI,EAAEA,IAAK;MAAAC,QAAA,eAEXR,IAAA,CAACJ,qBAAqB;QAAAY,QAAA,eACpBR,IAAA,CAACE,wBAAwB;UAAAM,QAAA,eACvBR,IAAA,CAACF,wBAAwB;YACvBK,wBAAwB,EAAEA,wBAAyB;YAAAK,QAAA,eAEnDR,IAAA,CAACL,mBAAmB;cAAAa,QAAA,EAAEA;YAAQ,CAAsB;UAAC,CAC7B;QAAC,CACH;MAAC,CACN;IAAC,CACZ,CAAC;EAEnB,CAAC;AACH","ignoreList":[]}
|
|
@@ -8,12 +8,13 @@ import { createBounds } from "../utils/bounds";
|
|
|
8
8
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
9
9
|
const TransitionStylesContext = /*#__PURE__*/createContext(null);
|
|
10
10
|
export function TransitionStylesProvider({
|
|
11
|
-
children
|
|
11
|
+
children,
|
|
12
|
+
defaultEnableTransitions = false
|
|
12
13
|
}) {
|
|
13
14
|
const {
|
|
14
15
|
screenInterpolatorProps,
|
|
15
16
|
screenStyleInterpolator
|
|
16
|
-
} = _useScreenAnimation();
|
|
17
|
+
} = _useScreenAnimation(defaultEnableTransitions);
|
|
17
18
|
const stylesMap = useDerivedValue(() => {
|
|
18
19
|
"worklet";
|
|
19
20
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createContext","useContext","useMemo","useDerivedValue","NO_STYLES","_useScreenAnimation","createBounds","jsx","_jsx","TransitionStylesContext","TransitionStylesProvider","children","screenInterpolatorProps","screenStyleInterpolator","stylesMap","props","value","bounds","err","__DEV__","console","warn","Provider","useTransitionStyles","ctx","Error"],"sourceRoot":"../../../src","sources":["providers/transition-styles.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAC1D,SAASC,eAAe,QAAQ,yBAAyB;AACzD,SAASC,SAAS,QAAQ,cAAc;AACxC,SAASC,mBAAmB,QAAQ,yCAAyC;AAE7E,SAASC,YAAY,QAAQ,iBAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA;
|
|
1
|
+
{"version":3,"names":["createContext","useContext","useMemo","useDerivedValue","NO_STYLES","_useScreenAnimation","createBounds","jsx","_jsx","TransitionStylesContext","TransitionStylesProvider","children","defaultEnableTransitions","screenInterpolatorProps","screenStyleInterpolator","stylesMap","props","value","bounds","err","__DEV__","console","warn","Provider","useTransitionStyles","ctx","Error"],"sourceRoot":"../../../src","sources":["providers/transition-styles.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAC1D,SAASC,eAAe,QAAQ,yBAAyB;AACzD,SAASC,SAAS,QAAQ,cAAc;AACxC,SAASC,mBAAmB,QAAQ,yCAAyC;AAE7E,SAASC,YAAY,QAAQ,iBAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAO/C,MAAMC,uBAAuB,gBAAGT,aAAa,CAInC,IAAI,CAAC;AAEf,OAAO,SAASU,wBAAwBA,CAAC;EACxCC,QAAQ;EACRC,wBAAwB,GAAG;AACrB,CAAC,EAAE;EACT,MAAM;IAAEC,uBAAuB;IAAEC;EAAwB,CAAC,GACzDT,mBAAmB,CAACO,wBAAwB,CAAC;EAE9C,MAAMG,SAAS,GAAGZ,eAAe,CAA8B,MAAM;IACpE,SAAS;;IAET;AACF;AACA;AACA;AACA;IACE,MAAMa,KAAK,GAAGH,uBAAuB,CAACI,KAAK;IAE3C,MAAMC,MAAM,GAAGZ,YAAY,CAACU,KAAK,CAAC;IAClC,IAAI;MACH,IAAI,CAACF,uBAAuB,EAAE,OAAOV,SAAS;MAE9C,OAAOU,uBAAuB,CAAC;QAC9B,GAAGE,KAAK;QACRE;MACD,CAAC,CAAC;IACH,CAAC,CAAC,OAAOC,GAAG,EAAE;MACb,IAAIC,OAAO,EAAE;QACZC,OAAO,CAACC,IAAI,CACX,6EAA6E,EAC7EH,GACD,CAAC;MACF;MACA,OAAOf,SAAS;IACjB;EACD,CAAC,CAAC;EAEF,MAAMa,KAAK,GAAGf,OAAO,CAAC,MAAM;IAC3B,OAAO;MACNa;IACD,CAAC;EACF,CAAC,EAAE,CAACA,SAAS,CAAC,CAAC;EAEf,oBACCP,IAAA,CAACC,uBAAuB,CAACc,QAAQ;IAACN,KAAK,EAAEA,KAAM;IAAAN,QAAA,EAC7CA;EAAQ,CACwB,CAAC;AAErC;AAEA,OAAO,SAASa,mBAAmBA,CAAA,EAAG;EACrC,MAAMC,GAAG,GAAGxB,UAAU,CAACQ,uBAAuB,CAAC;EAC/C,IAAI,CAACgB,GAAG,EAAE;IACT,MAAM,IAAIC,KAAK,CACd,oEACD,CAAC;EACF;EACA,OAAOD,GAAG;AACX","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ScreenInterpolationProps } from "../../types/animation";
|
|
2
|
-
export declare function _useScreenAnimation(): {
|
|
2
|
+
export declare function _useScreenAnimation(defaultEnableTransitions?: boolean): {
|
|
3
3
|
screenInterpolatorProps: import("react-native-reanimated").DerivedValue<Omit<ScreenInterpolationProps, "bounds">>;
|
|
4
4
|
screenStyleInterpolator: import("../../types/animation").ScreenStyleInterpolator | undefined;
|
|
5
5
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-screen-animation.d.ts","sourceRoot":"","sources":["../../../../src/hooks/animation/use-screen-animation.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACX,wBAAwB,EAExB,MAAM,uBAAuB,CAAC;AAyD/B,wBAAgB,mBAAmB;;;
|
|
1
|
+
{"version":3,"file":"use-screen-animation.d.ts","sourceRoot":"","sources":["../../../../src/hooks/animation/use-screen-animation.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACX,wBAAwB,EAExB,MAAM,uBAAuB,CAAC;AAyD/B,wBAAgB,mBAAmB,CAAC,wBAAwB,UAAQ;;;EAuEnE;AAED,wBAAgB,kBAAkB,6EAUjC"}
|
package/lib/typescript/integrations/blank-stack/providers/screen-transition-provider.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"screen-transition-provider.d.ts","sourceRoot":"","sources":["../../../../../src/integrations/blank-stack/providers/screen-transition-provider.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"screen-transition-provider.d.ts","sourceRoot":"","sources":["../../../../../src/integrations/blank-stack/providers/screen-transition-provider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAEjF,eAAO,MAAM,wBAAwB;;;;;6CAInC,CAAC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { NavigationRoute, ParamListBase, Route, RouteProp, StackNavigationState } from "@react-navigation/native";
|
|
2
|
-
import type React from "react";
|
|
3
2
|
import type { SharedValue } from "react-native-reanimated";
|
|
4
3
|
import type { BlankStackDescriptor, BlankStackDescriptorMap, BlankStackNavigationHelpers, BlankStackScene } from "../../../../types/blank-stack.navigator";
|
|
5
4
|
export interface StackNavigationContextValue {
|
|
@@ -11,7 +10,7 @@ export interface StackNavigationContextValue {
|
|
|
11
10
|
handleCloseRoute: (payload: {
|
|
12
11
|
route: Route<string>;
|
|
13
12
|
}) => void;
|
|
14
|
-
|
|
13
|
+
shouldShowFloatHeader: boolean;
|
|
15
14
|
focusedIndex: number;
|
|
16
15
|
}
|
|
17
16
|
export interface StackNavigationContextProps {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_types.d.ts","sourceRoot":"","sources":["../../../../../../src/integrations/blank-stack/utils/with-stack-navigation/_types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,aAAa,EACb,KAAK,EACL,SAAS,EACT,oBAAoB,EACrB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"_types.d.ts","sourceRoot":"","sources":["../../../../../../src/integrations/blank-stack/utils/with-stack-navigation/_types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,aAAa,EACb,KAAK,EACL,SAAS,EACT,oBAAoB,EACrB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EACV,oBAAoB,EACpB,uBAAuB,EACvB,2BAA2B,EAC3B,eAAe,EAChB,MAAM,yCAAyC,CAAC;AAEjD,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,eAAe,CAAC,aAAa,EAAE,MAAM,CAAC,EAAE,CAAC;IACjD,WAAW,EAAE,uBAAuB,CAAC;IACrC,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,sBAAsB,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;IAC9C,gBAAgB,EAAE,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;KAAE,KAAK,IAAI,CAAC;IAC9D,qBAAqB,EAAE,OAAO,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,2BAA2B;IAC1C,KAAK,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAC3C,UAAU,EAAE,2BAA2B,CAAC;IACxC,WAAW,EAAE,uBAAuB,CAAC;IACrC,QAAQ,EAAE,CACR,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,EAC/B,WAAW,EAAE,OAAO,KACjB,oBAAoB,CAAC;CAC3B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/integrations/blank-stack/utils/with-stack-navigation/index.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/integrations/blank-stack/utils/with-stack-navigation/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAsC,MAAM,OAAO,CAAC;AAG/E,OAAO,KAAK,EACV,2BAA2B,EAC3B,2BAA2B,EAC5B,MAAM,UAAU,CAAC;AAGlB,eAAO,MAAM,sBAAsB,6DACsB,CAAC;AAE1D,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,aAAa,CAAC,2BAA2B,CAAC,IAEd,OAAO,2BAA2B,6CAoD1E;AAED,eAAO,MAAM,yBAAyB,mCAUrC,CAAC"}
|
|
@@ -10,6 +10,9 @@ type ScreenTransitionProviderProps<DescriptorType extends AnyDescriptor> = {
|
|
|
10
10
|
next?: DescriptorType;
|
|
11
11
|
children: React.ReactNode;
|
|
12
12
|
};
|
|
13
|
-
|
|
13
|
+
type CreateScreenTransitionProviderOptions = {
|
|
14
|
+
defaultEnableTransitions?: boolean;
|
|
15
|
+
};
|
|
16
|
+
export declare function createScreenTransitionProvider<DescriptorType extends AnyDescriptor>(ScreenLifecycleComponent: ScreenLifecycleComponent, { defaultEnableTransitions }?: CreateScreenTransitionProviderOptions): ({ previous, current, next, children, }: ScreenTransitionProviderProps<DescriptorType>) => import("react/jsx-runtime").JSX.Element;
|
|
14
17
|
export {};
|
|
15
18
|
//# sourceMappingURL=create-screen-transition-provider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-screen-transition-provider.d.ts","sourceRoot":"","sources":["../../../src/providers/create-screen-transition-provider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAM3D,KAAK,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAE/C,KAAK,wBAAwB,GAAG,KAAK,CAAC,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"create-screen-transition-provider.d.ts","sourceRoot":"","sources":["../../../src/providers/create-screen-transition-provider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAM3D,KAAK,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAE/C,KAAK,wBAAwB,GAAG,KAAK,CAAC,aAAa,CAAC;IAClD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC,CAAC;AAEH,KAAK,6BAA6B,CAAC,cAAc,SAAS,aAAa,IAAI;IACzE,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAEF,KAAK,qCAAqC,GAAG;IAC3C,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC,CAAC;AAEF,wBAAgB,8BAA8B,CAC5C,cAAc,SAAS,aAAa,EAEpC,wBAAwB,EAAE,wBAAwB,EAClD,EAAE,wBAAgC,EAAE,GAAE,qCAA0C,IAEvC,wCAKtC,6BAA6B,CAAC,cAAc,CAAC,6CAmBjD"}
|
|
@@ -2,8 +2,9 @@ import { useDerivedValue } from "react-native-reanimated";
|
|
|
2
2
|
import type { TransitionInterpolatedStyle } from "../types/animation";
|
|
3
3
|
type Props = {
|
|
4
4
|
children: React.ReactNode;
|
|
5
|
+
defaultEnableTransitions?: boolean;
|
|
5
6
|
};
|
|
6
|
-
export declare function TransitionStylesProvider({ children }: Props): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export declare function TransitionStylesProvider({ children, defaultEnableTransitions, }: Props): import("react/jsx-runtime").JSX.Element;
|
|
7
8
|
export declare function useTransitionStyles(): {
|
|
8
9
|
stylesMap: ReturnType<typeof useDerivedValue<TransitionInterpolatedStyle>>;
|
|
9
10
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transition-styles.d.ts","sourceRoot":"","sources":["../../../src/providers/transition-styles.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG1D,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAGtE,KAAK,KAAK,GAAG;IACZ,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"transition-styles.d.ts","sourceRoot":"","sources":["../../../src/providers/transition-styles.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG1D,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAGtE,KAAK,KAAK,GAAG;IACZ,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACnC,CAAC;AAQF,wBAAgB,wBAAwB,CAAC,EACxC,QAAQ,EACR,wBAAgC,GAChC,EAAE,KAAK,2CA4CP;AAED,wBAAgB,mBAAmB;eArDtB,UAAU,CAAC,OAAO,eAAe,CAAC,2BAA2B,CAAC,CAAC;EA6D3E"}
|
package/package.json
CHANGED
|
@@ -71,7 +71,7 @@ const useBuildScreenTransitionState = (
|
|
|
71
71
|
}, [key, descriptor?.route]);
|
|
72
72
|
};
|
|
73
73
|
|
|
74
|
-
export function _useScreenAnimation() {
|
|
74
|
+
export function _useScreenAnimation(defaultEnableTransitions = false) {
|
|
75
75
|
const dimensions = useWindowDimensions();
|
|
76
76
|
const insets = useSafeAreaInsets();
|
|
77
77
|
|
|
@@ -92,7 +92,13 @@ export function _useScreenAnimation() {
|
|
|
92
92
|
|
|
93
93
|
const previous = unwrap(prevAnimation, previousDescriptor?.route.key);
|
|
94
94
|
|
|
95
|
-
const
|
|
95
|
+
const nextEnableTransitions = nextDescriptor?.options?.enableTransitions;
|
|
96
|
+
const shouldEnableNext =
|
|
97
|
+
nextEnableTransitions === undefined
|
|
98
|
+
? defaultEnableTransitions
|
|
99
|
+
: nextEnableTransitions;
|
|
100
|
+
|
|
101
|
+
const next = shouldEnableNext
|
|
96
102
|
? unwrap(nextAnimation, nextDescriptor?.route.key)
|
|
97
103
|
: undefined;
|
|
98
104
|
|
|
@@ -38,15 +38,15 @@ export const StackView = withStackNavigationProvider(
|
|
|
38
38
|
({
|
|
39
39
|
activeScreensLimit,
|
|
40
40
|
descriptors,
|
|
41
|
-
FloatHeader,
|
|
42
41
|
focusedIndex,
|
|
43
42
|
routes,
|
|
44
43
|
scenes,
|
|
44
|
+
shouldShowFloatHeader,
|
|
45
45
|
}) => {
|
|
46
46
|
return (
|
|
47
47
|
<GestureHandlerRootView>
|
|
48
48
|
<SafeAreaProviderCompat>
|
|
49
|
-
<
|
|
49
|
+
{shouldShowFloatHeader ? <Header.Float /> : null}
|
|
50
50
|
<ScreenContainer style={{ flex: 1 }}>
|
|
51
51
|
{scenes.map((scene, sceneIndex) => {
|
|
52
52
|
const descriptor = scene.descriptor;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import type { BlankStackDescriptor } from "../../../types/blank-stack.navigator";
|
|
2
1
|
import { ScreenLifecycleController } from "../../../components/controllers/screen-lifecycle.blank";
|
|
3
2
|
import { createScreenTransitionProvider } from "../../../providers/create-screen-transition-provider";
|
|
3
|
+
import type { BlankStackDescriptor } from "../../../types/blank-stack.navigator";
|
|
4
4
|
|
|
5
5
|
export const ScreenTransitionProvider =
|
|
6
6
|
createScreenTransitionProvider<BlankStackDescriptor>(
|
|
7
7
|
ScreenLifecycleController,
|
|
8
|
+
{ defaultEnableTransitions: true },
|
|
8
9
|
);
|
|
@@ -5,7 +5,6 @@ import type {
|
|
|
5
5
|
RouteProp,
|
|
6
6
|
StackNavigationState,
|
|
7
7
|
} from "@react-navigation/native";
|
|
8
|
-
import type React from "react";
|
|
9
8
|
import type { SharedValue } from "react-native-reanimated";
|
|
10
9
|
import type {
|
|
11
10
|
BlankStackDescriptor,
|
|
@@ -21,7 +20,7 @@ export interface StackNavigationContextValue {
|
|
|
21
20
|
activeScreensLimit: number;
|
|
22
21
|
closingRouteKeysShared: SharedValue<string[]>;
|
|
23
22
|
handleCloseRoute: (payload: { route: Route<string> }) => void;
|
|
24
|
-
|
|
23
|
+
shouldShowFloatHeader: boolean;
|
|
25
24
|
focusedIndex: number;
|
|
26
25
|
}
|
|
27
26
|
|
|
@@ -1,11 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
type ComponentType,
|
|
3
|
-
createContext,
|
|
4
|
-
memo,
|
|
5
|
-
useContext,
|
|
6
|
-
useMemo,
|
|
7
|
-
} from "react";
|
|
8
|
-
import { Header } from "../../components/Header";
|
|
1
|
+
import { type ComponentType, createContext, useContext, useMemo } from "react";
|
|
9
2
|
import type { BlankStackScene } from "../../../../types/blank-stack.navigator";
|
|
10
3
|
import { useStackNavigationState } from "./_hooks/use-stack-navigation-state";
|
|
11
4
|
import type {
|
|
@@ -38,18 +31,12 @@ export function withStackNavigationProvider(
|
|
|
38
31
|
return calculateActiveScreensLimit(state.routes, state.descriptors);
|
|
39
32
|
}, [state.routes, state.descriptors]);
|
|
40
33
|
|
|
41
|
-
const
|
|
42
|
-
|
|
43
|
-
const options =
|
|
34
|
+
const shouldShowFloatHeader = useMemo(() => {
|
|
35
|
+
return state.routes.some((route) => {
|
|
36
|
+
const options = state.descriptors[route.key]?.options;
|
|
44
37
|
return options?.headerMode === "float" && options?.headerShown;
|
|
45
38
|
});
|
|
46
|
-
|
|
47
|
-
if (!shouldShowFloatHeader) {
|
|
48
|
-
return null;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
return <Header.Float />;
|
|
52
|
-
});
|
|
39
|
+
}, [state.routes, state.descriptors]);
|
|
53
40
|
|
|
54
41
|
const contextValue = useMemo<StackNavigationContextValue>(() => {
|
|
55
42
|
return {
|
|
@@ -60,7 +47,7 @@ export function withStackNavigationProvider(
|
|
|
60
47
|
activeScreensLimit,
|
|
61
48
|
handleCloseRoute,
|
|
62
49
|
scenes,
|
|
63
|
-
|
|
50
|
+
shouldShowFloatHeader,
|
|
64
51
|
};
|
|
65
52
|
}, [
|
|
66
53
|
state,
|
|
@@ -69,7 +56,7 @@ export function withStackNavigationProvider(
|
|
|
69
56
|
closingRouteKeys,
|
|
70
57
|
handleCloseRoute,
|
|
71
58
|
props.state.index,
|
|
72
|
-
|
|
59
|
+
shouldShowFloatHeader,
|
|
73
60
|
]);
|
|
74
61
|
|
|
75
62
|
return (
|
|
@@ -8,39 +8,48 @@ import { TransitionStylesProvider } from "./transition-styles";
|
|
|
8
8
|
type AnyDescriptor = Descriptor<any, any, any>;
|
|
9
9
|
|
|
10
10
|
type ScreenLifecycleComponent = React.ComponentType<{
|
|
11
|
-
|
|
11
|
+
children: React.ReactNode;
|
|
12
12
|
}>;
|
|
13
13
|
|
|
14
14
|
type ScreenTransitionProviderProps<DescriptorType extends AnyDescriptor> = {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
15
|
+
previous?: DescriptorType;
|
|
16
|
+
current: DescriptorType;
|
|
17
|
+
next?: DescriptorType;
|
|
18
|
+
children: React.ReactNode;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
type CreateScreenTransitionProviderOptions = {
|
|
22
|
+
defaultEnableTransitions?: boolean;
|
|
19
23
|
};
|
|
20
24
|
|
|
21
25
|
export function createScreenTransitionProvider<
|
|
22
|
-
|
|
23
|
-
>(
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
26
|
+
DescriptorType extends AnyDescriptor
|
|
27
|
+
>(
|
|
28
|
+
ScreenLifecycleComponent: ScreenLifecycleComponent,
|
|
29
|
+
{ defaultEnableTransitions = false }: CreateScreenTransitionProviderOptions = {}
|
|
30
|
+
) {
|
|
31
|
+
return function ScreenTransitionProvider({
|
|
32
|
+
previous,
|
|
33
|
+
current,
|
|
34
|
+
next,
|
|
35
|
+
children,
|
|
36
|
+
}: ScreenTransitionProviderProps<DescriptorType>) {
|
|
37
|
+
return (
|
|
38
|
+
<KeysProvider<DescriptorType>
|
|
39
|
+
previous={previous}
|
|
40
|
+
current={current}
|
|
41
|
+
next={next}
|
|
42
|
+
>
|
|
43
|
+
<ScreenGestureProvider>
|
|
44
|
+
<ScreenLifecycleComponent>
|
|
45
|
+
<TransitionStylesProvider
|
|
46
|
+
defaultEnableTransitions={defaultEnableTransitions}
|
|
47
|
+
>
|
|
48
|
+
<RootTransitionAware>{children}</RootTransitionAware>
|
|
49
|
+
</TransitionStylesProvider>
|
|
50
|
+
</ScreenLifecycleComponent>
|
|
51
|
+
</ScreenGestureProvider>
|
|
52
|
+
</KeysProvider>
|
|
53
|
+
);
|
|
54
|
+
};
|
|
46
55
|
}
|
|
@@ -7,6 +7,7 @@ import { createBounds } from "../utils/bounds";
|
|
|
7
7
|
|
|
8
8
|
type Props = {
|
|
9
9
|
children: React.ReactNode;
|
|
10
|
+
defaultEnableTransitions?: boolean;
|
|
10
11
|
};
|
|
11
12
|
|
|
12
13
|
const TransitionStylesContext = createContext<ReturnType<
|
|
@@ -15,9 +16,12 @@ const TransitionStylesContext = createContext<ReturnType<
|
|
|
15
16
|
}>
|
|
16
17
|
> | null>(null);
|
|
17
18
|
|
|
18
|
-
export function TransitionStylesProvider({
|
|
19
|
+
export function TransitionStylesProvider({
|
|
20
|
+
children,
|
|
21
|
+
defaultEnableTransitions = false,
|
|
22
|
+
}: Props) {
|
|
19
23
|
const { screenInterpolatorProps, screenStyleInterpolator } =
|
|
20
|
-
_useScreenAnimation();
|
|
24
|
+
_useScreenAnimation(defaultEnableTransitions);
|
|
21
25
|
|
|
22
26
|
const stylesMap = useDerivedValue<TransitionInterpolatedStyle>(() => {
|
|
23
27
|
"worklet";
|