@react-navigation/stack 6.3.7 → 6.3.9
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/TransitionConfigs/CardStyleInterpolators.js +12 -22
- package/lib/commonjs/TransitionConfigs/CardStyleInterpolators.js.map +1 -1
- package/lib/commonjs/TransitionConfigs/HeaderStyleInterpolators.js +11 -16
- package/lib/commonjs/TransitionConfigs/HeaderStyleInterpolators.js.map +1 -1
- package/lib/commonjs/TransitionConfigs/TransitionPresets.js +10 -19
- package/lib/commonjs/TransitionConfigs/TransitionPresets.js.map +1 -1
- package/lib/commonjs/TransitionConfigs/TransitionSpecs.js +6 -8
- package/lib/commonjs/TransitionConfigs/TransitionSpecs.js.map +1 -1
- package/lib/commonjs/index.js +0 -18
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/navigators/createStackNavigator.js +9 -17
- package/lib/commonjs/navigators/createStackNavigator.js.map +1 -1
- package/lib/commonjs/types.js.map +1 -1
- package/lib/commonjs/utils/CardAnimationContext.js +0 -5
- package/lib/commonjs/utils/CardAnimationContext.js.map +1 -1
- package/lib/commonjs/utils/GestureHandlerRefContext.js +0 -5
- package/lib/commonjs/utils/GestureHandlerRefContext.js.map +1 -1
- package/lib/commonjs/utils/ModalPresentationContext.js +0 -4
- package/lib/commonjs/utils/ModalPresentationContext.js.map +1 -1
- package/lib/commonjs/utils/conditional.js +1 -3
- package/lib/commonjs/utils/conditional.js.map +1 -1
- package/lib/commonjs/utils/debounce.js +0 -2
- package/lib/commonjs/utils/debounce.js.map +1 -1
- package/lib/commonjs/utils/getDistanceForDirection.js +0 -5
- package/lib/commonjs/utils/getDistanceForDirection.js.map +1 -1
- package/lib/commonjs/utils/getInvertedMultiplier.js +0 -5
- package/lib/commonjs/utils/getInvertedMultiplier.js.map +1 -1
- package/lib/commonjs/utils/memoize.js +0 -6
- package/lib/commonjs/utils/memoize.js.map +1 -1
- package/lib/commonjs/utils/useCardAnimation.js +0 -8
- package/lib/commonjs/utils/useCardAnimation.js.map +1 -1
- package/lib/commonjs/utils/useGestureHandlerRef.js +0 -8
- package/lib/commonjs/utils/useGestureHandlerRef.js.map +1 -1
- package/lib/commonjs/utils/useKeyboardManager.js +14 -20
- package/lib/commonjs/utils/useKeyboardManager.js.map +1 -1
- package/lib/commonjs/views/GestureHandler.android.js +0 -2
- package/lib/commonjs/views/GestureHandler.android.js.map +1 -1
- package/lib/commonjs/views/GestureHandler.ios.js +0 -2
- package/lib/commonjs/views/GestureHandler.ios.js.map +1 -1
- package/lib/commonjs/views/GestureHandler.js +0 -6
- package/lib/commonjs/views/GestureHandler.js.map +1 -1
- package/lib/commonjs/views/GestureHandlerNative.js +0 -8
- package/lib/commonjs/views/GestureHandlerNative.js.map +1 -1
- package/lib/commonjs/views/Header/Header.js +7 -18
- package/lib/commonjs/views/Header/Header.js.map +1 -1
- package/lib/commonjs/views/Header/HeaderContainer.js +10 -23
- package/lib/commonjs/views/Header/HeaderContainer.js.map +1 -1
- package/lib/commonjs/views/Header/HeaderSegment.js +6 -20
- package/lib/commonjs/views/Header/HeaderSegment.js.map +1 -1
- package/lib/commonjs/views/ModalStatusBarManager.js +1 -11
- package/lib/commonjs/views/ModalStatusBarManager.js.map +1 -1
- package/lib/commonjs/views/Screens.js +2 -16
- package/lib/commonjs/views/Screens.js.map +1 -1
- package/lib/commonjs/views/Stack/Card.js +17 -80
- package/lib/commonjs/views/Stack/Card.js.map +1 -1
- package/lib/commonjs/views/Stack/CardContainer.js +3 -30
- package/lib/commonjs/views/Stack/CardContainer.js.map +1 -1
- package/lib/commonjs/views/Stack/CardSheet.js +2 -11
- package/lib/commonjs/views/Stack/CardSheet.js.map +1 -1
- package/lib/commonjs/views/Stack/CardStack.js +23 -78
- package/lib/commonjs/views/Stack/CardStack.js.map +1 -1
- package/lib/commonjs/views/Stack/StackView.js +33 -65
- package/lib/commonjs/views/Stack/StackView.js.map +1 -1
- package/lib/module/TransitionConfigs/CardStyleInterpolators.js +12 -10
- package/lib/module/TransitionConfigs/CardStyleInterpolators.js.map +1 -1
- package/lib/module/TransitionConfigs/HeaderStyleInterpolators.js +11 -9
- package/lib/module/TransitionConfigs/HeaderStyleInterpolators.js.map +1 -1
- package/lib/module/TransitionConfigs/TransitionPresets.js +10 -10
- package/lib/module/TransitionConfigs/TransitionPresets.js.map +1 -1
- package/lib/module/TransitionConfigs/TransitionSpecs.js +6 -7
- package/lib/module/TransitionConfigs/TransitionSpecs.js.map +1 -1
- package/lib/module/index.js +5 -4
- package/lib/module/index.js.map +1 -1
- package/lib/module/navigators/createStackNavigator.js +9 -9
- package/lib/module/navigators/createStackNavigator.js.map +1 -1
- package/lib/module/types.js.map +1 -1
- package/lib/module/utils/CardAnimationContext.js.map +1 -1
- package/lib/module/utils/GestureHandlerRefContext.js.map +1 -1
- package/lib/module/utils/ModalPresentationContext.js.map +1 -1
- package/lib/module/utils/conditional.js +1 -1
- package/lib/module/utils/conditional.js.map +1 -1
- package/lib/module/utils/debounce.js +0 -1
- package/lib/module/utils/debounce.js.map +1 -1
- package/lib/module/utils/getDistanceForDirection.js +0 -2
- package/lib/module/utils/getDistanceForDirection.js.map +1 -1
- package/lib/module/utils/getInvertedMultiplier.js +0 -3
- package/lib/module/utils/getInvertedMultiplier.js.map +1 -1
- package/lib/module/utils/memoize.js +0 -5
- package/lib/module/utils/memoize.js.map +1 -1
- package/lib/module/utils/useCardAnimation.js +0 -2
- package/lib/module/utils/useCardAnimation.js.map +1 -1
- package/lib/module/utils/useGestureHandlerRef.js +0 -2
- package/lib/module/utils/useGestureHandlerRef.js.map +1 -1
- package/lib/module/utils/useKeyboardManager.js +14 -13
- package/lib/module/utils/useKeyboardManager.js.map +1 -1
- package/lib/module/views/GestureHandler.android.js.map +1 -1
- package/lib/module/views/GestureHandler.ios.js.map +1 -1
- package/lib/module/views/GestureHandler.js +0 -2
- package/lib/module/views/GestureHandler.js.map +1 -1
- package/lib/module/views/GestureHandlerNative.js +0 -1
- package/lib/module/views/GestureHandlerNative.js.map +1 -1
- package/lib/module/views/Header/Header.js +7 -6
- package/lib/module/views/Header/Header.js.map +1 -1
- package/lib/module/views/Header/HeaderContainer.js +10 -12
- package/lib/module/views/Header/HeaderContainer.js.map +1 -1
- package/lib/module/views/Header/HeaderSegment.js +6 -10
- package/lib/module/views/Header/HeaderSegment.js.map +1 -1
- package/lib/module/views/ModalStatusBarManager.js +1 -3
- package/lib/module/views/ModalStatusBarManager.js.map +1 -1
- package/lib/module/views/Screens.js +2 -8
- package/lib/module/views/Screens.js.map +1 -1
- package/lib/module/views/Stack/Card.js +17 -58
- package/lib/module/views/Stack/Card.js.map +1 -1
- package/lib/module/views/Stack/CardContainer.js +3 -17
- package/lib/module/views/Stack/CardContainer.js.map +1 -1
- package/lib/module/views/Stack/CardSheet.js +2 -4
- package/lib/module/views/Stack/CardSheet.js.map +1 -1
- package/lib/module/views/Stack/CardStack.js +23 -60
- package/lib/module/views/Stack/CardStack.js.map +1 -1
- package/lib/module/views/Stack/StackView.js +34 -51
- package/lib/module/views/Stack/StackView.js.map +1 -1
- package/lib/typescript/src/TransitionConfigs/CardStyleInterpolators.d.ts +1 -0
- package/lib/typescript/src/TransitionConfigs/CardStyleInterpolators.d.ts.map +1 -0
- package/lib/typescript/src/TransitionConfigs/HeaderStyleInterpolators.d.ts +1 -0
- package/lib/typescript/src/TransitionConfigs/HeaderStyleInterpolators.d.ts.map +1 -0
- package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts +1 -0
- package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts.map +1 -0
- package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts +1 -0
- package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +1 -0
- package/lib/typescript/src/index.d.ts.map +1 -0
- package/lib/typescript/src/navigators/createStackNavigator.d.ts +1 -0
- package/lib/typescript/src/navigators/createStackNavigator.d.ts.map +1 -0
- package/lib/typescript/src/types.d.ts +1 -0
- package/lib/typescript/src/types.d.ts.map +1 -0
- package/lib/typescript/src/utils/CardAnimationContext.d.ts +1 -0
- package/lib/typescript/src/utils/CardAnimationContext.d.ts.map +1 -0
- package/lib/typescript/src/utils/GestureHandlerRefContext.d.ts +1 -0
- package/lib/typescript/src/utils/GestureHandlerRefContext.d.ts.map +1 -0
- package/lib/typescript/src/utils/ModalPresentationContext.d.ts +1 -0
- package/lib/typescript/src/utils/ModalPresentationContext.d.ts.map +1 -0
- package/lib/typescript/src/utils/conditional.d.ts +1 -0
- package/lib/typescript/src/utils/conditional.d.ts.map +1 -0
- package/lib/typescript/src/utils/debounce.d.ts +1 -0
- package/lib/typescript/src/utils/debounce.d.ts.map +1 -0
- package/lib/typescript/src/utils/getDistanceForDirection.d.ts +1 -0
- package/lib/typescript/src/utils/getDistanceForDirection.d.ts.map +1 -0
- package/lib/typescript/src/utils/getInvertedMultiplier.d.ts +1 -0
- package/lib/typescript/src/utils/getInvertedMultiplier.d.ts.map +1 -0
- package/lib/typescript/src/utils/memoize.d.ts +1 -0
- package/lib/typescript/src/utils/memoize.d.ts.map +1 -0
- package/lib/typescript/src/utils/useCardAnimation.d.ts +1 -0
- package/lib/typescript/src/utils/useCardAnimation.d.ts.map +1 -0
- package/lib/typescript/src/utils/useGestureHandlerRef.d.ts +1 -0
- package/lib/typescript/src/utils/useGestureHandlerRef.d.ts.map +1 -0
- package/lib/typescript/src/utils/useKeyboardManager.d.ts +1 -0
- package/lib/typescript/src/utils/useKeyboardManager.d.ts.map +1 -0
- package/lib/typescript/src/views/GestureHandler.android.d.ts +1 -0
- package/lib/typescript/src/views/GestureHandler.android.d.ts.map +1 -0
- package/lib/typescript/src/views/GestureHandler.d.ts +1 -0
- package/lib/typescript/src/views/GestureHandler.d.ts.map +1 -0
- package/lib/typescript/src/views/GestureHandler.ios.d.ts +1 -0
- package/lib/typescript/src/views/GestureHandler.ios.d.ts.map +1 -0
- package/lib/typescript/src/views/GestureHandlerNative.d.ts +1 -0
- package/lib/typescript/src/views/GestureHandlerNative.d.ts.map +1 -0
- package/lib/typescript/src/views/Header/Header.d.ts +1 -0
- package/lib/typescript/src/views/Header/Header.d.ts.map +1 -0
- package/lib/typescript/src/views/Header/HeaderContainer.d.ts +1 -0
- package/lib/typescript/src/views/Header/HeaderContainer.d.ts.map +1 -0
- package/lib/typescript/src/views/Header/HeaderSegment.d.ts +1 -0
- package/lib/typescript/src/views/Header/HeaderSegment.d.ts.map +1 -0
- package/lib/typescript/src/views/ModalStatusBarManager.d.ts +1 -0
- package/lib/typescript/src/views/ModalStatusBarManager.d.ts.map +1 -0
- package/lib/typescript/src/views/Screens.d.ts +1 -0
- package/lib/typescript/src/views/Screens.d.ts.map +1 -0
- package/lib/typescript/src/views/Stack/Card.d.ts +1 -0
- package/lib/typescript/src/views/Stack/Card.d.ts.map +1 -0
- package/lib/typescript/src/views/Stack/CardContainer.d.ts +1 -0
- package/lib/typescript/src/views/Stack/CardContainer.d.ts.map +1 -0
- package/lib/typescript/src/views/Stack/CardSheet.d.ts +1 -0
- package/lib/typescript/src/views/Stack/CardSheet.d.ts.map +1 -0
- package/lib/typescript/src/views/Stack/CardStack.d.ts +1 -0
- package/lib/typescript/src/views/Stack/CardStack.d.ts.map +1 -0
- package/lib/typescript/src/views/Stack/StackView.d.ts +1 -0
- package/lib/typescript/src/views/Stack/StackView.d.ts.map +1 -0
- package/package.json +5 -5
|
@@ -3,7 +3,6 @@ import * as React from 'react';
|
|
|
3
3
|
import { StatusBar, StyleSheet } from 'react-native';
|
|
4
4
|
export default function ModalStatusBarManager(_ref) {
|
|
5
5
|
var _flattenedStyle$trans, _flattenedStyle$trans2;
|
|
6
|
-
|
|
7
6
|
let {
|
|
8
7
|
dark,
|
|
9
8
|
layout,
|
|
@@ -25,11 +24,10 @@ export default function ModalStatusBarManager(_ref) {
|
|
|
25
24
|
} = _ref2;
|
|
26
25
|
setOverlapping(value < offset);
|
|
27
26
|
};
|
|
28
|
-
|
|
29
27
|
const sub = translateY === null || translateY === void 0 ? void 0 : translateY.addListener(listener);
|
|
30
28
|
return () => translateY === null || translateY === void 0 ? void 0 : translateY.removeListener(sub);
|
|
31
29
|
}, [offset, translateY]);
|
|
32
|
-
const darkContent = dark
|
|
30
|
+
const darkContent = dark ?? !darkTheme;
|
|
33
31
|
return /*#__PURE__*/React.createElement(StatusBar, {
|
|
34
32
|
animated: true,
|
|
35
33
|
barStyle: overlapping && darkContent ? 'dark-content' : 'light-content'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useTheme","React","StatusBar","StyleSheet","ModalStatusBarManager","dark","layout","insets","style","darkTheme","overlapping","setOverlapping","useState","scale","width","offset","top","flattenedStyle","flatten","translateY","transform","find","s","undefined","useEffect","listener","value","sub","addListener","removeListener","darkContent"],"
|
|
1
|
+
{"version":3,"names":["useTheme","React","StatusBar","StyleSheet","ModalStatusBarManager","dark","layout","insets","style","darkTheme","overlapping","setOverlapping","useState","scale","width","offset","top","flattenedStyle","flatten","translateY","transform","find","s","undefined","useEffect","listener","value","sub","addListener","removeListener","darkContent"],"sourceRoot":"../../src","sources":["ModalStatusBarManager.tsx"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,0BAA0B;AACnD,OAAO,KAAKC,KAAK,MAAM,OAAO;AAC9B,SAASC,SAAS,EAAEC,UAAU,QAAQ,cAAc;AAYpD,eAAe,SAASC,qBAAqB,OAKnC;EAAA;EAAA,IALoC;IAC5CC,IAAI;IACJC,MAAM;IACNC,MAAM;IACNC;EACK,CAAC;EACN,MAAM;IAAEH,IAAI,EAAEI;EAAU,CAAC,GAAGT,QAAQ,EAAE;EACtC,MAAM,CAACU,WAAW,EAAEC,cAAc,CAAC,GAAGV,KAAK,CAACW,QAAQ,CAAC,IAAI,CAAC;EAE1D,MAAMC,KAAK,GAAG,CAAC,GAAG,EAAE,GAAGP,MAAM,CAACQ,KAAK;EACnC,MAAMC,MAAM,GAAG,CAACR,MAAM,CAACS,GAAG,GAAG,EAAE,IAAIH,KAAK;EAExC,MAAMI,cAAc,GAAGd,UAAU,CAACe,OAAO,CAACV,KAAK,CAAC;EAChD,MAAMW,UAAU,GAAGF,cAAc,aAAdA,cAAc,gDAAdA,cAAc,CAAEG,SAAS,oFAAzB,sBAA2BC,IAAI,CAC/CC,CAAM,IAAKA,CAAC,CAACH,UAAU,KAAKI,SAAS,CACvC,2DAFkB,uBAEhBJ,UAAU;EAEblB,KAAK,CAACuB,SAAS,CAAC,MAAM;IACpB,MAAMC,QAAQ,GAAG,SAAkC;MAAA,IAAjC;QAAEC;MAAyB,CAAC;MAC5Cf,cAAc,CAACe,KAAK,GAAGX,MAAM,CAAC;IAChC,CAAC;IAED,MAAMY,GAAG,GAAGR,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAES,WAAW,CAACH,QAAQ,CAAC;IAE7C,OAAO,MAAMN,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEU,cAAc,CAACF,GAAG,CAAC;EAC9C,CAAC,EAAE,CAACZ,MAAM,EAAEI,UAAU,CAAC,CAAC;EAExB,MAAMW,WAAW,GAAGzB,IAAI,IAAI,CAACI,SAAS;EAEtC,oBACE,oBAAC,SAAS;IACR,QAAQ;IACR,QAAQ,EAAEC,WAAW,IAAIoB,WAAW,GAAG,cAAc,GAAG;EAAgB,EACxE;AAEN"}
|
|
@@ -1,26 +1,22 @@
|
|
|
1
1
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
-
|
|
3
2
|
import * as React from 'react';
|
|
4
3
|
import { View } from 'react-native';
|
|
5
4
|
let Screens;
|
|
6
|
-
|
|
7
5
|
try {
|
|
8
6
|
Screens = require('react-native-screens');
|
|
9
|
-
} catch (e) {
|
|
7
|
+
} catch (e) {
|
|
8
|
+
// Ignore
|
|
10
9
|
}
|
|
11
|
-
|
|
12
10
|
export const MaybeScreenContainer = _ref => {
|
|
13
11
|
let {
|
|
14
12
|
enabled,
|
|
15
13
|
...rest
|
|
16
14
|
} = _ref;
|
|
17
|
-
|
|
18
15
|
if (Screens != null) {
|
|
19
16
|
return /*#__PURE__*/React.createElement(Screens.ScreenContainer, _extends({
|
|
20
17
|
enabled: enabled
|
|
21
18
|
}, rest));
|
|
22
19
|
}
|
|
23
|
-
|
|
24
20
|
return /*#__PURE__*/React.createElement(View, rest);
|
|
25
21
|
};
|
|
26
22
|
export const MaybeScreen = _ref2 => {
|
|
@@ -29,14 +25,12 @@ export const MaybeScreen = _ref2 => {
|
|
|
29
25
|
active,
|
|
30
26
|
...rest
|
|
31
27
|
} = _ref2;
|
|
32
|
-
|
|
33
28
|
if (Screens != null) {
|
|
34
29
|
return /*#__PURE__*/React.createElement(Screens.Screen, _extends({
|
|
35
30
|
enabled: enabled,
|
|
36
31
|
activityState: active
|
|
37
32
|
}, rest));
|
|
38
33
|
}
|
|
39
|
-
|
|
40
34
|
return /*#__PURE__*/React.createElement(View, rest);
|
|
41
35
|
};
|
|
42
36
|
//# sourceMappingURL=Screens.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","Screens","require","e","MaybeScreenContainer","enabled","rest","MaybeScreen","active"],"
|
|
1
|
+
{"version":3,"names":["React","View","Screens","require","e","MaybeScreenContainer","enabled","rest","MaybeScreen","active"],"sourceRoot":"../../src","sources":["Screens.tsx"],"mappings":";AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAAmBC,IAAI,QAAmB,cAAc;AAExD,IAAIC,OAA0D;AAE9D,IAAI;EACFA,OAAO,GAAGC,OAAO,CAAC,sBAAsB,CAAC;AAC3C,CAAC,CAAC,OAAOC,CAAC,EAAE;EACV;AAAA;AAGF,OAAO,MAAMC,oBAAoB,GAAG,QAM9B;EAAA,IAN+B;IACnCC,OAAO;IACP,GAAGC;EAIL,CAAC;EACC,IAAIL,OAAO,IAAI,IAAI,EAAE;IACnB,oBAAO,oBAAC,OAAO,CAAC,eAAe;MAAC,OAAO,EAAEI;IAAQ,GAAKC,IAAI,EAAI;EAChE;EAEA,oBAAO,oBAAC,IAAI,EAAKA,IAAI,CAAI;AAC3B,CAAC;AAED,OAAO,MAAMC,WAAW,GAAG,SASrB;EAAA,IATsB;IAC1BF,OAAO;IACPG,MAAM;IACN,GAAGF;EAML,CAAC;EACC,IAAIL,OAAO,IAAI,IAAI,EAAE;IACnB,oBACE,oBAAC,OAAO,CAAC,MAAM;MAAC,OAAO,EAAEI,OAAQ;MAAC,aAAa,EAAEG;IAAO,GAAKF,IAAI,EAAI;EAEzE;EAEA,oBAAO,oBAAC,IAAI,EAAKA,IAAI,CAAI;AAC3B,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
-
|
|
3
|
-
function
|
|
4
|
-
|
|
2
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
3
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
4
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
5
5
|
import Color from 'color';
|
|
6
6
|
import * as React from 'react';
|
|
7
7
|
import { Animated, InteractionManager, Platform, StyleSheet, View } from 'react-native';
|
|
@@ -16,46 +16,34 @@ import CardSheet from './CardSheet';
|
|
|
16
16
|
const GESTURE_VELOCITY_IMPACT = 0.3;
|
|
17
17
|
const TRUE = 1;
|
|
18
18
|
const FALSE = 0;
|
|
19
|
+
|
|
19
20
|
/**
|
|
20
21
|
* The distance of touch start from the edge of the screen where the gesture will be recognized
|
|
21
22
|
*/
|
|
22
|
-
|
|
23
23
|
const GESTURE_RESPONSE_DISTANCE_HORIZONTAL = 50;
|
|
24
24
|
const GESTURE_RESPONSE_DISTANCE_VERTICAL = 135;
|
|
25
25
|
const useNativeDriver = Platform.OS !== 'web';
|
|
26
|
-
|
|
27
26
|
const hasOpacityStyle = style => {
|
|
28
27
|
if (style) {
|
|
29
28
|
const flattenedStyle = StyleSheet.flatten(style);
|
|
30
29
|
return flattenedStyle.opacity != null;
|
|
31
30
|
}
|
|
32
|
-
|
|
33
31
|
return false;
|
|
34
32
|
};
|
|
35
|
-
|
|
36
33
|
export default class Card extends React.Component {
|
|
37
34
|
constructor() {
|
|
38
35
|
super(...arguments);
|
|
39
|
-
|
|
40
36
|
_defineProperty(this, "isCurrentlyMounted", false);
|
|
41
|
-
|
|
42
37
|
_defineProperty(this, "isClosing", new Animated.Value(FALSE));
|
|
43
|
-
|
|
44
38
|
_defineProperty(this, "inverted", new Animated.Value(getInvertedMultiplier(this.props.gestureDirection)));
|
|
45
|
-
|
|
46
39
|
_defineProperty(this, "layout", {
|
|
47
40
|
width: new Animated.Value(this.props.layout.width),
|
|
48
41
|
height: new Animated.Value(this.props.layout.height)
|
|
49
42
|
});
|
|
50
|
-
|
|
51
43
|
_defineProperty(this, "isSwiping", new Animated.Value(FALSE));
|
|
52
|
-
|
|
53
44
|
_defineProperty(this, "interactionHandle", void 0);
|
|
54
|
-
|
|
55
45
|
_defineProperty(this, "pendingGestureCallback", void 0);
|
|
56
|
-
|
|
57
46
|
_defineProperty(this, "lastToValue", void 0);
|
|
58
|
-
|
|
59
47
|
_defineProperty(this, "animate", _ref => {
|
|
60
48
|
let {
|
|
61
49
|
closing,
|
|
@@ -68,7 +56,8 @@ export default class Card extends React.Component {
|
|
|
68
56
|
onClose,
|
|
69
57
|
onTransition
|
|
70
58
|
} = this.props;
|
|
71
|
-
const toValue = this.getAnimateToValue({
|
|
59
|
+
const toValue = this.getAnimateToValue({
|
|
60
|
+
...this.props,
|
|
72
61
|
closing
|
|
73
62
|
});
|
|
74
63
|
this.lastToValue = toValue;
|
|
@@ -82,7 +71,8 @@ export default class Card extends React.Component {
|
|
|
82
71
|
closing,
|
|
83
72
|
gesture: velocity !== undefined
|
|
84
73
|
});
|
|
85
|
-
animation(gesture, {
|
|
74
|
+
animation(gesture, {
|
|
75
|
+
...spec.config,
|
|
86
76
|
velocity,
|
|
87
77
|
toValue,
|
|
88
78
|
useNativeDriver,
|
|
@@ -93,14 +83,12 @@ export default class Card extends React.Component {
|
|
|
93
83
|
} = _ref2;
|
|
94
84
|
this.handleEndInteraction();
|
|
95
85
|
clearTimeout(this.pendingGestureCallback);
|
|
96
|
-
|
|
97
86
|
if (finished) {
|
|
98
87
|
if (closing) {
|
|
99
88
|
onClose();
|
|
100
89
|
} else {
|
|
101
90
|
onOpen();
|
|
102
91
|
}
|
|
103
|
-
|
|
104
92
|
if (this.isCurrentlyMounted) {
|
|
105
93
|
// Make sure to re-open screen if it wasn't removed
|
|
106
94
|
this.forceUpdate();
|
|
@@ -108,41 +96,33 @@ export default class Card extends React.Component {
|
|
|
108
96
|
}
|
|
109
97
|
});
|
|
110
98
|
});
|
|
111
|
-
|
|
112
99
|
_defineProperty(this, "getAnimateToValue", _ref3 => {
|
|
113
100
|
let {
|
|
114
101
|
closing,
|
|
115
102
|
layout,
|
|
116
103
|
gestureDirection
|
|
117
104
|
} = _ref3;
|
|
118
|
-
|
|
119
105
|
if (!closing) {
|
|
120
106
|
return 0;
|
|
121
107
|
}
|
|
122
|
-
|
|
123
108
|
return getDistanceForDirection(layout, gestureDirection);
|
|
124
109
|
});
|
|
125
|
-
|
|
126
110
|
_defineProperty(this, "setPointerEventsEnabled", enabled => {
|
|
127
111
|
var _this$ref$current;
|
|
128
|
-
|
|
129
112
|
const pointerEvents = enabled ? 'box-none' : 'none';
|
|
130
113
|
(_this$ref$current = this.ref.current) === null || _this$ref$current === void 0 ? void 0 : _this$ref$current.setPointerEvents(pointerEvents);
|
|
131
114
|
});
|
|
132
|
-
|
|
133
115
|
_defineProperty(this, "handleStartInteraction", () => {
|
|
134
116
|
if (this.interactionHandle === undefined) {
|
|
135
117
|
this.interactionHandle = InteractionManager.createInteractionHandle();
|
|
136
118
|
}
|
|
137
119
|
});
|
|
138
|
-
|
|
139
120
|
_defineProperty(this, "handleEndInteraction", () => {
|
|
140
121
|
if (this.interactionHandle !== undefined) {
|
|
141
122
|
InteractionManager.clearInteractionHandle(this.interactionHandle);
|
|
142
123
|
this.interactionHandle = undefined;
|
|
143
124
|
}
|
|
144
125
|
});
|
|
145
|
-
|
|
146
126
|
_defineProperty(this, "handleGestureStateChange", _ref4 => {
|
|
147
127
|
let {
|
|
148
128
|
nativeEvent
|
|
@@ -156,14 +136,12 @@ export default class Card extends React.Component {
|
|
|
156
136
|
gestureDirection,
|
|
157
137
|
gestureVelocityImpact
|
|
158
138
|
} = this.props;
|
|
159
|
-
|
|
160
139
|
switch (nativeEvent.state) {
|
|
161
140
|
case GestureState.ACTIVE:
|
|
162
141
|
this.isSwiping.setValue(TRUE);
|
|
163
142
|
this.handleStartInteraction();
|
|
164
143
|
onGestureBegin === null || onGestureBegin === void 0 ? void 0 : onGestureBegin();
|
|
165
144
|
break;
|
|
166
|
-
|
|
167
145
|
case GestureState.CANCELLED:
|
|
168
146
|
{
|
|
169
147
|
this.isSwiping.setValue(FALSE);
|
|
@@ -176,14 +154,12 @@ export default class Card extends React.Component {
|
|
|
176
154
|
onGestureCanceled === null || onGestureCanceled === void 0 ? void 0 : onGestureCanceled();
|
|
177
155
|
break;
|
|
178
156
|
}
|
|
179
|
-
|
|
180
157
|
case GestureState.END:
|
|
181
158
|
{
|
|
182
159
|
this.isSwiping.setValue(FALSE);
|
|
183
160
|
let distance;
|
|
184
161
|
let translation;
|
|
185
162
|
let velocity;
|
|
186
|
-
|
|
187
163
|
if (gestureDirection === 'vertical' || gestureDirection === 'vertical-inverted') {
|
|
188
164
|
distance = layout.height;
|
|
189
165
|
translation = nativeEvent.translationY;
|
|
@@ -193,32 +169,28 @@ export default class Card extends React.Component {
|
|
|
193
169
|
translation = nativeEvent.translationX;
|
|
194
170
|
velocity = nativeEvent.velocityX;
|
|
195
171
|
}
|
|
196
|
-
|
|
197
172
|
const closing = (translation + velocity * gestureVelocityImpact) * getInvertedMultiplier(gestureDirection) > distance / 2 ? velocity !== 0 || translation !== 0 : this.props.closing;
|
|
198
173
|
this.animate({
|
|
199
174
|
closing,
|
|
200
175
|
velocity
|
|
201
176
|
});
|
|
202
|
-
|
|
203
177
|
if (closing) {
|
|
204
178
|
// We call onClose with a delay to make sure that the animation has already started
|
|
205
179
|
// This will make sure that the state update caused by this doesn't affect start of animation
|
|
206
180
|
this.pendingGestureCallback = setTimeout(() => {
|
|
207
|
-
onClose();
|
|
208
|
-
// This will make sure that we check if the screen didn't get removed so we can cancel the animation
|
|
181
|
+
onClose();
|
|
209
182
|
|
|
183
|
+
// Trigger an update after we dispatch the action to remove the screen
|
|
184
|
+
// This will make sure that we check if the screen didn't get removed so we can cancel the animation
|
|
210
185
|
this.forceUpdate();
|
|
211
186
|
}, 32);
|
|
212
187
|
}
|
|
213
|
-
|
|
214
188
|
onGestureEnd === null || onGestureEnd === void 0 ? void 0 : onGestureEnd();
|
|
215
189
|
break;
|
|
216
190
|
}
|
|
217
191
|
}
|
|
218
192
|
});
|
|
219
|
-
|
|
220
193
|
_defineProperty(this, "getInterpolatedStyle", memoize((styleInterpolator, animation) => styleInterpolator(animation)));
|
|
221
|
-
|
|
222
194
|
_defineProperty(this, "getCardAnimation", memoize((interpolationIndex, current, next, layout, insetTop, insetRight, insetBottom, insetLeft) => ({
|
|
223
195
|
index: interpolationIndex,
|
|
224
196
|
current: {
|
|
@@ -240,17 +212,14 @@ export default class Card extends React.Component {
|
|
|
240
212
|
left: insetLeft
|
|
241
213
|
}
|
|
242
214
|
})));
|
|
243
|
-
|
|
244
215
|
_defineProperty(this, "ref", /*#__PURE__*/React.createRef());
|
|
245
216
|
}
|
|
246
|
-
|
|
247
217
|
componentDidMount() {
|
|
248
218
|
this.animate({
|
|
249
219
|
closing: this.props.closing
|
|
250
220
|
});
|
|
251
221
|
this.isCurrentlyMounted = true;
|
|
252
222
|
}
|
|
253
|
-
|
|
254
223
|
componentDidUpdate(prevProps) {
|
|
255
224
|
const {
|
|
256
225
|
layout,
|
|
@@ -261,21 +230,16 @@ export default class Card extends React.Component {
|
|
|
261
230
|
width,
|
|
262
231
|
height
|
|
263
232
|
} = layout;
|
|
264
|
-
|
|
265
233
|
if (width !== prevProps.layout.width) {
|
|
266
234
|
this.layout.width.setValue(width);
|
|
267
235
|
}
|
|
268
|
-
|
|
269
236
|
if (height !== prevProps.layout.height) {
|
|
270
237
|
this.layout.height.setValue(height);
|
|
271
238
|
}
|
|
272
|
-
|
|
273
239
|
if (gestureDirection !== prevProps.gestureDirection) {
|
|
274
240
|
this.inverted.setValue(getInvertedMultiplier(gestureDirection));
|
|
275
241
|
}
|
|
276
|
-
|
|
277
242
|
const toValue = this.getAnimateToValue(this.props);
|
|
278
|
-
|
|
279
243
|
if (this.getAnimateToValue(prevProps) !== toValue || this.lastToValue !== toValue) {
|
|
280
244
|
// We need to trigger the animation when route was closed
|
|
281
245
|
// Thr route might have been closed by a `POP` action or by a gesture
|
|
@@ -287,13 +251,11 @@ export default class Card extends React.Component {
|
|
|
287
251
|
});
|
|
288
252
|
}
|
|
289
253
|
}
|
|
290
|
-
|
|
291
254
|
componentWillUnmount() {
|
|
292
255
|
this.props.gesture.stopAnimation();
|
|
293
256
|
this.isCurrentlyMounted = false;
|
|
294
257
|
this.handleEndInteraction();
|
|
295
258
|
}
|
|
296
|
-
|
|
297
259
|
gestureActivationCriteria() {
|
|
298
260
|
const {
|
|
299
261
|
layout,
|
|
@@ -302,7 +264,6 @@ export default class Card extends React.Component {
|
|
|
302
264
|
} = this.props;
|
|
303
265
|
const enableTrackpadTwoFingerGesture = true;
|
|
304
266
|
const distance = gestureResponseDistance !== undefined ? gestureResponseDistance : gestureDirection === 'vertical' || gestureDirection === 'vertical-inverted' ? GESTURE_RESPONSE_DISTANCE_VERTICAL : GESTURE_RESPONSE_DISTANCE_HORIZONTAL;
|
|
305
|
-
|
|
306
267
|
if (gestureDirection === 'vertical') {
|
|
307
268
|
return {
|
|
308
269
|
maxDeltaX: 15,
|
|
@@ -324,7 +285,6 @@ export default class Card extends React.Component {
|
|
|
324
285
|
} else {
|
|
325
286
|
const hitSlop = -layout.width + distance;
|
|
326
287
|
const invertedMultiplier = getInvertedMultiplier(gestureDirection);
|
|
327
|
-
|
|
328
288
|
if (invertedMultiplier === 1) {
|
|
329
289
|
return {
|
|
330
290
|
minOffsetX: 5,
|
|
@@ -346,7 +306,6 @@ export default class Card extends React.Component {
|
|
|
346
306
|
}
|
|
347
307
|
}
|
|
348
308
|
}
|
|
349
|
-
|
|
350
309
|
render() {
|
|
351
310
|
const {
|
|
352
311
|
styleInterpolator,
|
|
@@ -391,7 +350,8 @@ export default class Card extends React.Component {
|
|
|
391
350
|
const isTransparent = typeof backgroundColor === 'string' ? Color(backgroundColor).alpha() === 0 : false;
|
|
392
351
|
return /*#__PURE__*/React.createElement(CardAnimationContext.Provider, {
|
|
393
352
|
value: interpolationProps
|
|
394
|
-
},
|
|
353
|
+
},
|
|
354
|
+
// StatusBar messes with translucent status bar on Android
|
|
395
355
|
// So we should only enable it on iOS
|
|
396
356
|
Platform.OS === 'ios' && overlayEnabled && next && getIsModalPresentation(styleInterpolator) ? /*#__PURE__*/React.createElement(ModalStatusBarManager, {
|
|
397
357
|
dark: headerDarkContent,
|
|
@@ -405,7 +365,8 @@ export default class Card extends React.Component {
|
|
|
405
365
|
// If we disable animations and hide header, it could end up making the value unused.
|
|
406
366
|
// So we have this dummy style that will always be used regardless of what else changed.
|
|
407
367
|
opacity: current
|
|
408
|
-
}
|
|
368
|
+
}
|
|
369
|
+
// Make sure that this view isn't removed. If this view is removed, our style with animated value won't apply
|
|
409
370
|
,
|
|
410
371
|
collapsable: false
|
|
411
372
|
}), /*#__PURE__*/React.createElement(View, _extends({
|
|
@@ -437,9 +398,7 @@ export default class Card extends React.Component {
|
|
|
437
398
|
style: contentStyle
|
|
438
399
|
}, children))))));
|
|
439
400
|
}
|
|
440
|
-
|
|
441
401
|
}
|
|
442
|
-
|
|
443
402
|
_defineProperty(Card, "defaultProps", {
|
|
444
403
|
shadowEnabled: false,
|
|
445
404
|
gestureEnabled: true,
|
|
@@ -454,9 +413,9 @@ _defineProperty(Card, "defaultProps", {
|
|
|
454
413
|
}) : null;
|
|
455
414
|
}
|
|
456
415
|
});
|
|
457
|
-
|
|
458
416
|
export const getIsModalPresentation = cardStyleInterpolator => {
|
|
459
|
-
return cardStyleInterpolator === forModalPresentationIOS ||
|
|
417
|
+
return cardStyleInterpolator === forModalPresentationIOS ||
|
|
418
|
+
// Handle custom modal presentation interpolators as well
|
|
460
419
|
cardStyleInterpolator.name === 'forModalPresentationIOS';
|
|
461
420
|
};
|
|
462
421
|
const styles = StyleSheet.create({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Color","React","Animated","InteractionManager","Platform","StyleSheet","View","forModalPresentationIOS","CardAnimationContext","getDistanceForDirection","getInvertedMultiplier","memoize","GestureState","PanGestureHandler","ModalStatusBarManager","CardSheet","GESTURE_VELOCITY_IMPACT","TRUE","FALSE","GESTURE_RESPONSE_DISTANCE_HORIZONTAL","GESTURE_RESPONSE_DISTANCE_VERTICAL","useNativeDriver","OS","hasOpacityStyle","style","flattenedStyle","flatten","opacity","Card","Component","Value","props","gestureDirection","width","layout","height","closing","velocity","gesture","transitionSpec","onOpen","onClose","onTransition","toValue","getAnimateToValue","lastToValue","isClosing","setValue","spec","close","open","animation","spring","timing","setPointerEventsEnabled","handleStartInteraction","clearTimeout","pendingGestureCallback","undefined","config","isInteraction","start","finished","handleEndInteraction","isCurrentlyMounted","forceUpdate","enabled","pointerEvents","ref","current","setPointerEvents","interactionHandle","createInteractionHandle","clearInteractionHandle","nativeEvent","onGestureBegin","onGestureCanceled","onGestureEnd","gestureVelocityImpact","state","ACTIVE","isSwiping","CANCELLED","velocityY","velocityX","animate","END","distance","translation","translationY","translationX","setTimeout","styleInterpolator","interpolationIndex","next","insetTop","insetRight","insetBottom","insetLeft","index","progress","swiping","inverted","layouts","screen","insets","top","right","bottom","left","createRef","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","stopAnimation","gestureActivationCriteria","gestureResponseDistance","enableTrackpadTwoFingerGesture","maxDeltaX","minOffsetY","hitSlop","invertedMultiplier","minOffsetX","maxDeltaY","render","overlay","overlayEnabled","shadowEnabled","gestureEnabled","pageOverflowEnabled","headerDarkContent","children","containerStyle","customContainerStyle","contentStyle","rest","interpolationProps","getCardAnimation","interpolatedStyle","getInterpolatedStyle","cardStyle","overlayStyle","shadowStyle","handleGestureEvent","event","backgroundColor","isTransparent","alpha","getIsModalPresentation","absoluteFill","styles","container","handleGestureStateChange","shadow","shadowHorizontal","shadowLeft","shadowRight","shadowVertical","shadowTop","shadowBottom","cardStyleInterpolator","name","create","flex","position","shadowRadius","shadowColor","shadowOpacity","shadowOffset"],"sources":["Card.tsx"],"sourcesContent":["import Color from 'color';\nimport * as React from 'react';\nimport {\n Animated,\n InteractionManager,\n Platform,\n StyleProp,\n StyleSheet,\n View,\n ViewProps,\n ViewStyle,\n} from 'react-native';\nimport type { EdgeInsets } from 'react-native-safe-area-context';\n\nimport { forModalPresentationIOS } from '../../TransitionConfigs/CardStyleInterpolators';\nimport type {\n GestureDirection,\n Layout,\n StackCardInterpolationProps,\n StackCardStyleInterpolator,\n TransitionSpec,\n} from '../../types';\nimport CardAnimationContext from '../../utils/CardAnimationContext';\nimport getDistanceForDirection from '../../utils/getDistanceForDirection';\nimport getInvertedMultiplier from '../../utils/getInvertedMultiplier';\nimport memoize from '../../utils/memoize';\nimport {\n GestureState,\n PanGestureHandler,\n PanGestureHandlerGestureEvent,\n} from '../GestureHandler';\nimport ModalStatusBarManager from '../ModalStatusBarManager';\nimport CardSheet, { CardSheetRef } from './CardSheet';\n\ntype Props = ViewProps & {\n interpolationIndex: number;\n closing: boolean;\n next?: Animated.AnimatedInterpolation;\n current: Animated.AnimatedInterpolation;\n gesture: Animated.Value;\n layout: Layout;\n insets: EdgeInsets;\n headerDarkContent: boolean | undefined;\n pageOverflowEnabled: boolean;\n gestureDirection: GestureDirection;\n onOpen: () => void;\n onClose: () => void;\n onTransition: (props: { closing: boolean; gesture: boolean }) => void;\n onGestureBegin: () => void;\n onGestureCanceled: () => void;\n onGestureEnd: () => void;\n children: React.ReactNode;\n overlay: (props: {\n style: Animated.WithAnimatedValue<StyleProp<ViewStyle>>;\n }) => React.ReactNode;\n overlayEnabled: boolean;\n shadowEnabled: boolean;\n gestureEnabled: boolean;\n gestureResponseDistance?: number;\n gestureVelocityImpact: number;\n transitionSpec: {\n open: TransitionSpec;\n close: TransitionSpec;\n };\n styleInterpolator: StackCardStyleInterpolator;\n containerStyle?: StyleProp<ViewStyle>;\n contentStyle?: StyleProp<ViewStyle>;\n};\n\nconst GESTURE_VELOCITY_IMPACT = 0.3;\n\nconst TRUE = 1;\nconst FALSE = 0;\n\n/**\n * The distance of touch start from the edge of the screen where the gesture will be recognized\n */\nconst GESTURE_RESPONSE_DISTANCE_HORIZONTAL = 50;\nconst GESTURE_RESPONSE_DISTANCE_VERTICAL = 135;\n\nconst useNativeDriver = Platform.OS !== 'web';\n\nconst hasOpacityStyle = (style: any) => {\n if (style) {\n const flattenedStyle = StyleSheet.flatten(style);\n return flattenedStyle.opacity != null;\n }\n\n return false;\n};\n\nexport default class Card extends React.Component<Props> {\n static defaultProps = {\n shadowEnabled: false,\n gestureEnabled: true,\n gestureVelocityImpact: GESTURE_VELOCITY_IMPACT,\n overlay: ({\n style,\n }: {\n style: Animated.WithAnimatedValue<StyleProp<ViewStyle>>;\n }) =>\n style ? (\n <Animated.View pointerEvents=\"none\" style={[styles.overlay, style]} />\n ) : null,\n };\n\n componentDidMount() {\n this.animate({ closing: this.props.closing });\n this.isCurrentlyMounted = true;\n }\n\n componentDidUpdate(prevProps: Props) {\n const { layout, gestureDirection, closing } = this.props;\n const { width, height } = layout;\n\n if (width !== prevProps.layout.width) {\n this.layout.width.setValue(width);\n }\n\n if (height !== prevProps.layout.height) {\n this.layout.height.setValue(height);\n }\n\n if (gestureDirection !== prevProps.gestureDirection) {\n this.inverted.setValue(getInvertedMultiplier(gestureDirection));\n }\n\n const toValue = this.getAnimateToValue(this.props);\n\n if (\n this.getAnimateToValue(prevProps) !== toValue ||\n this.lastToValue !== toValue\n ) {\n // We need to trigger the animation when route was closed\n // Thr route might have been closed by a `POP` action or by a gesture\n // When route was closed due to a gesture, the animation would've happened already\n // It's still important to trigger the animation so that `onClose` is called\n // If `onClose` is not called, cleanup step won't be performed for gestures\n this.animate({ closing });\n }\n }\n\n componentWillUnmount() {\n this.props.gesture.stopAnimation();\n this.isCurrentlyMounted = false;\n this.handleEndInteraction();\n }\n\n private isCurrentlyMounted = false;\n\n private isClosing = new Animated.Value(FALSE);\n\n private inverted = new Animated.Value(\n getInvertedMultiplier(this.props.gestureDirection)\n );\n\n private layout = {\n width: new Animated.Value(this.props.layout.width),\n height: new Animated.Value(this.props.layout.height),\n };\n\n private isSwiping = new Animated.Value(FALSE);\n\n private interactionHandle: number | undefined;\n\n private pendingGestureCallback: number | undefined;\n\n private lastToValue: number | undefined;\n\n private animate = ({\n closing,\n velocity,\n }: {\n closing: boolean;\n velocity?: number;\n }) => {\n const { gesture, transitionSpec, onOpen, onClose, onTransition } =\n this.props;\n\n const toValue = this.getAnimateToValue({\n ...this.props,\n closing,\n });\n\n this.lastToValue = toValue;\n\n this.isClosing.setValue(closing ? TRUE : FALSE);\n\n const spec = closing ? transitionSpec.close : transitionSpec.open;\n\n const animation =\n spec.animation === 'spring' ? Animated.spring : Animated.timing;\n\n this.setPointerEventsEnabled(!closing);\n this.handleStartInteraction();\n\n clearTimeout(this.pendingGestureCallback);\n\n onTransition?.({ closing, gesture: velocity !== undefined });\n animation(gesture, {\n ...spec.config,\n velocity,\n toValue,\n useNativeDriver,\n isInteraction: false,\n }).start(({ finished }) => {\n this.handleEndInteraction();\n\n clearTimeout(this.pendingGestureCallback);\n\n if (finished) {\n if (closing) {\n onClose();\n } else {\n onOpen();\n }\n\n if (this.isCurrentlyMounted) {\n // Make sure to re-open screen if it wasn't removed\n this.forceUpdate();\n }\n }\n });\n };\n\n private getAnimateToValue = ({\n closing,\n layout,\n gestureDirection,\n }: {\n closing?: boolean;\n layout: Layout;\n gestureDirection: GestureDirection;\n }) => {\n if (!closing) {\n return 0;\n }\n\n return getDistanceForDirection(layout, gestureDirection);\n };\n\n private setPointerEventsEnabled = (enabled: boolean) => {\n const pointerEvents = enabled ? 'box-none' : 'none';\n\n this.ref.current?.setPointerEvents(pointerEvents);\n };\n\n private handleStartInteraction = () => {\n if (this.interactionHandle === undefined) {\n this.interactionHandle = InteractionManager.createInteractionHandle();\n }\n };\n\n private handleEndInteraction = () => {\n if (this.interactionHandle !== undefined) {\n InteractionManager.clearInteractionHandle(this.interactionHandle);\n this.interactionHandle = undefined;\n }\n };\n\n private handleGestureStateChange = ({\n nativeEvent,\n }: PanGestureHandlerGestureEvent) => {\n const {\n layout,\n onClose,\n onGestureBegin,\n onGestureCanceled,\n onGestureEnd,\n gestureDirection,\n gestureVelocityImpact,\n } = this.props;\n\n switch (nativeEvent.state) {\n case GestureState.ACTIVE:\n this.isSwiping.setValue(TRUE);\n this.handleStartInteraction();\n onGestureBegin?.();\n break;\n case GestureState.CANCELLED: {\n this.isSwiping.setValue(FALSE);\n this.handleEndInteraction();\n\n const velocity =\n gestureDirection === 'vertical' ||\n gestureDirection === 'vertical-inverted'\n ? nativeEvent.velocityY\n : nativeEvent.velocityX;\n\n this.animate({ closing: this.props.closing, velocity });\n\n onGestureCanceled?.();\n break;\n }\n case GestureState.END: {\n this.isSwiping.setValue(FALSE);\n\n let distance;\n let translation;\n let velocity;\n\n if (\n gestureDirection === 'vertical' ||\n gestureDirection === 'vertical-inverted'\n ) {\n distance = layout.height;\n translation = nativeEvent.translationY;\n velocity = nativeEvent.velocityY;\n } else {\n distance = layout.width;\n translation = nativeEvent.translationX;\n velocity = nativeEvent.velocityX;\n }\n\n const closing =\n (translation + velocity * gestureVelocityImpact) *\n getInvertedMultiplier(gestureDirection) >\n distance / 2\n ? velocity !== 0 || translation !== 0\n : this.props.closing;\n\n this.animate({ closing, velocity });\n\n if (closing) {\n // We call onClose with a delay to make sure that the animation has already started\n // This will make sure that the state update caused by this doesn't affect start of animation\n this.pendingGestureCallback = setTimeout(() => {\n onClose();\n\n // Trigger an update after we dispatch the action to remove the screen\n // This will make sure that we check if the screen didn't get removed so we can cancel the animation\n this.forceUpdate();\n }, 32) as any as number;\n }\n\n onGestureEnd?.();\n break;\n }\n }\n };\n\n // Memoize this to avoid extra work on re-render\n private getInterpolatedStyle = memoize(\n (\n styleInterpolator: StackCardStyleInterpolator,\n animation: StackCardInterpolationProps\n ) => styleInterpolator(animation)\n );\n\n // Keep track of the animation context when deps changes.\n private getCardAnimation = memoize(\n (\n interpolationIndex: number,\n current: Animated.AnimatedInterpolation,\n next: Animated.AnimatedInterpolation | undefined,\n layout: Layout,\n insetTop: number,\n insetRight: number,\n insetBottom: number,\n insetLeft: number\n ) => ({\n index: interpolationIndex,\n current: { progress: current },\n next: next && { progress: next },\n closing: this.isClosing,\n swiping: this.isSwiping,\n inverted: this.inverted,\n layouts: {\n screen: layout,\n },\n insets: {\n top: insetTop,\n right: insetRight,\n bottom: insetBottom,\n left: insetLeft,\n },\n })\n );\n\n private gestureActivationCriteria() {\n const { layout, gestureDirection, gestureResponseDistance } = this.props;\n const enableTrackpadTwoFingerGesture = true;\n\n const distance =\n gestureResponseDistance !== undefined\n ? gestureResponseDistance\n : gestureDirection === 'vertical' ||\n gestureDirection === 'vertical-inverted'\n ? GESTURE_RESPONSE_DISTANCE_VERTICAL\n : GESTURE_RESPONSE_DISTANCE_HORIZONTAL;\n\n if (gestureDirection === 'vertical') {\n return {\n maxDeltaX: 15,\n minOffsetY: 5,\n hitSlop: { bottom: -layout.height + distance },\n enableTrackpadTwoFingerGesture,\n };\n } else if (gestureDirection === 'vertical-inverted') {\n return {\n maxDeltaX: 15,\n minOffsetY: -5,\n hitSlop: { top: -layout.height + distance },\n enableTrackpadTwoFingerGesture,\n };\n } else {\n const hitSlop = -layout.width + distance;\n const invertedMultiplier = getInvertedMultiplier(gestureDirection);\n\n if (invertedMultiplier === 1) {\n return {\n minOffsetX: 5,\n maxDeltaY: 20,\n hitSlop: { right: hitSlop },\n enableTrackpadTwoFingerGesture,\n };\n } else {\n return {\n minOffsetX: -5,\n maxDeltaY: 20,\n hitSlop: { left: hitSlop },\n enableTrackpadTwoFingerGesture,\n };\n }\n }\n }\n\n private ref = React.createRef<CardSheetRef>();\n\n render() {\n const {\n styleInterpolator,\n interpolationIndex,\n current,\n gesture,\n next,\n layout,\n insets,\n overlay,\n overlayEnabled,\n shadowEnabled,\n gestureEnabled,\n gestureDirection,\n pageOverflowEnabled,\n headerDarkContent,\n children,\n containerStyle: customContainerStyle,\n contentStyle,\n ...rest\n } = this.props;\n\n const interpolationProps = this.getCardAnimation(\n interpolationIndex,\n current,\n next,\n layout,\n insets.top,\n insets.right,\n insets.bottom,\n insets.left\n );\n\n const interpolatedStyle = this.getInterpolatedStyle(\n styleInterpolator,\n interpolationProps\n );\n\n const { containerStyle, cardStyle, overlayStyle, shadowStyle } =\n interpolatedStyle;\n\n const handleGestureEvent = gestureEnabled\n ? Animated.event(\n [\n {\n nativeEvent:\n gestureDirection === 'vertical' ||\n gestureDirection === 'vertical-inverted'\n ? { translationY: gesture }\n : { translationX: gesture },\n },\n ],\n { useNativeDriver }\n )\n : undefined;\n\n const { backgroundColor } = StyleSheet.flatten(contentStyle || {});\n const isTransparent =\n typeof backgroundColor === 'string'\n ? Color(backgroundColor).alpha() === 0\n : false;\n\n return (\n <CardAnimationContext.Provider value={interpolationProps}>\n {\n // StatusBar messes with translucent status bar on Android\n // So we should only enable it on iOS\n Platform.OS === 'ios' &&\n overlayEnabled &&\n next &&\n getIsModalPresentation(styleInterpolator) ? (\n <ModalStatusBarManager\n dark={headerDarkContent}\n layout={layout}\n insets={insets}\n style={cardStyle}\n />\n ) : null\n }\n <Animated.View\n style={{\n // This is a dummy style that doesn't actually change anything visually.\n // Animated needs the animated value to be used somewhere, otherwise things don't update properly.\n // If we disable animations and hide header, it could end up making the value unused.\n // So we have this dummy style that will always be used regardless of what else changed.\n opacity: current,\n }}\n // Make sure that this view isn't removed. If this view is removed, our style with animated value won't apply\n collapsable={false}\n />\n <View pointerEvents=\"box-none\" {...rest}>\n {overlayEnabled ? (\n <View pointerEvents=\"box-none\" style={StyleSheet.absoluteFill}>\n {overlay({ style: overlayStyle })}\n </View>\n ) : null}\n <Animated.View\n style={[styles.container, containerStyle, customContainerStyle]}\n pointerEvents=\"box-none\"\n >\n <PanGestureHandler\n enabled={layout.width !== 0 && gestureEnabled}\n onGestureEvent={handleGestureEvent}\n onHandlerStateChange={this.handleGestureStateChange}\n {...this.gestureActivationCriteria()}\n >\n <Animated.View\n needsOffscreenAlphaCompositing={hasOpacityStyle(cardStyle)}\n style={[styles.container, cardStyle]}\n >\n {shadowEnabled && shadowStyle && !isTransparent ? (\n <Animated.View\n style={[\n styles.shadow,\n gestureDirection === 'horizontal'\n ? [styles.shadowHorizontal, styles.shadowLeft]\n : gestureDirection === 'horizontal-inverted'\n ? [styles.shadowHorizontal, styles.shadowRight]\n : gestureDirection === 'vertical'\n ? [styles.shadowVertical, styles.shadowTop]\n : [styles.shadowVertical, styles.shadowBottom],\n { backgroundColor },\n shadowStyle,\n ]}\n pointerEvents=\"none\"\n />\n ) : null}\n <CardSheet\n ref={this.ref}\n enabled={pageOverflowEnabled}\n layout={layout}\n style={contentStyle}\n >\n {children}\n </CardSheet>\n </Animated.View>\n </PanGestureHandler>\n </Animated.View>\n </View>\n </CardAnimationContext.Provider>\n );\n }\n}\n\nexport const getIsModalPresentation = (\n cardStyleInterpolator: StackCardStyleInterpolator\n) => {\n return (\n cardStyleInterpolator === forModalPresentationIOS ||\n // Handle custom modal presentation interpolators as well\n cardStyleInterpolator.name === 'forModalPresentationIOS'\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n },\n overlay: {\n flex: 1,\n backgroundColor: '#000',\n },\n shadow: {\n position: 'absolute',\n shadowRadius: 5,\n shadowColor: '#000',\n shadowOpacity: 0.3,\n },\n shadowHorizontal: {\n top: 0,\n bottom: 0,\n width: 3,\n shadowOffset: { width: -1, height: 1 },\n },\n shadowLeft: {\n left: 0,\n },\n shadowRight: {\n right: 0,\n },\n shadowVertical: {\n left: 0,\n right: 0,\n height: 3,\n shadowOffset: { width: 1, height: -1 },\n },\n shadowTop: {\n top: 0,\n },\n shadowBottom: {\n bottom: 0,\n },\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["Color","React","Animated","InteractionManager","Platform","StyleSheet","View","forModalPresentationIOS","CardAnimationContext","getDistanceForDirection","getInvertedMultiplier","memoize","GestureState","PanGestureHandler","ModalStatusBarManager","CardSheet","GESTURE_VELOCITY_IMPACT","TRUE","FALSE","GESTURE_RESPONSE_DISTANCE_HORIZONTAL","GESTURE_RESPONSE_DISTANCE_VERTICAL","useNativeDriver","OS","hasOpacityStyle","style","flattenedStyle","flatten","opacity","Card","Component","Value","props","gestureDirection","width","layout","height","closing","velocity","gesture","transitionSpec","onOpen","onClose","onTransition","toValue","getAnimateToValue","lastToValue","isClosing","setValue","spec","close","open","animation","spring","timing","setPointerEventsEnabled","handleStartInteraction","clearTimeout","pendingGestureCallback","undefined","config","isInteraction","start","finished","handleEndInteraction","isCurrentlyMounted","forceUpdate","enabled","pointerEvents","ref","current","setPointerEvents","interactionHandle","createInteractionHandle","clearInteractionHandle","nativeEvent","onGestureBegin","onGestureCanceled","onGestureEnd","gestureVelocityImpact","state","ACTIVE","isSwiping","CANCELLED","velocityY","velocityX","animate","END","distance","translation","translationY","translationX","setTimeout","styleInterpolator","interpolationIndex","next","insetTop","insetRight","insetBottom","insetLeft","index","progress","swiping","inverted","layouts","screen","insets","top","right","bottom","left","createRef","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","stopAnimation","gestureActivationCriteria","gestureResponseDistance","enableTrackpadTwoFingerGesture","maxDeltaX","minOffsetY","hitSlop","invertedMultiplier","minOffsetX","maxDeltaY","render","overlay","overlayEnabled","shadowEnabled","gestureEnabled","pageOverflowEnabled","headerDarkContent","children","containerStyle","customContainerStyle","contentStyle","rest","interpolationProps","getCardAnimation","interpolatedStyle","getInterpolatedStyle","cardStyle","overlayStyle","shadowStyle","handleGestureEvent","event","backgroundColor","isTransparent","alpha","getIsModalPresentation","absoluteFill","styles","container","handleGestureStateChange","shadow","shadowHorizontal","shadowLeft","shadowRight","shadowVertical","shadowTop","shadowBottom","cardStyleInterpolator","name","create","flex","position","shadowRadius","shadowColor","shadowOpacity","shadowOffset"],"sourceRoot":"../../src","sources":["Card.tsx"],"mappings":"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"}
|
|
@@ -6,7 +6,6 @@ import ModalPresentationContext from '../../utils/ModalPresentationContext';
|
|
|
6
6
|
import useKeyboardManager from '../../utils/useKeyboardManager';
|
|
7
7
|
import Card from './Card';
|
|
8
8
|
const EPSILON = 0.1;
|
|
9
|
-
|
|
10
9
|
function CardContainer(_ref) {
|
|
11
10
|
let {
|
|
12
11
|
interpolationIndex,
|
|
@@ -53,7 +52,6 @@ function CardContainer(_ref) {
|
|
|
53
52
|
} = scene.descriptor;
|
|
54
53
|
return navigation.isFocused() && options.keyboardHandlingEnabled !== false;
|
|
55
54
|
}, [scene.descriptor]));
|
|
56
|
-
|
|
57
55
|
const handleOpen = () => {
|
|
58
56
|
const {
|
|
59
57
|
route
|
|
@@ -65,7 +63,6 @@ function CardContainer(_ref) {
|
|
|
65
63
|
route
|
|
66
64
|
});
|
|
67
65
|
};
|
|
68
|
-
|
|
69
66
|
const handleClose = () => {
|
|
70
67
|
const {
|
|
71
68
|
route
|
|
@@ -77,7 +74,6 @@ function CardContainer(_ref) {
|
|
|
77
74
|
route
|
|
78
75
|
});
|
|
79
76
|
};
|
|
80
|
-
|
|
81
77
|
const handleGestureBegin = () => {
|
|
82
78
|
const {
|
|
83
79
|
route
|
|
@@ -87,7 +83,6 @@ function CardContainer(_ref) {
|
|
|
87
83
|
route
|
|
88
84
|
});
|
|
89
85
|
};
|
|
90
|
-
|
|
91
86
|
const handleGestureCanceled = () => {
|
|
92
87
|
const {
|
|
93
88
|
route
|
|
@@ -97,7 +92,6 @@ function CardContainer(_ref) {
|
|
|
97
92
|
route
|
|
98
93
|
});
|
|
99
94
|
};
|
|
100
|
-
|
|
101
95
|
const handleGestureEnd = () => {
|
|
102
96
|
const {
|
|
103
97
|
route
|
|
@@ -106,7 +100,6 @@ function CardContainer(_ref) {
|
|
|
106
100
|
route
|
|
107
101
|
});
|
|
108
102
|
};
|
|
109
|
-
|
|
110
103
|
const handleTransition = _ref2 => {
|
|
111
104
|
let {
|
|
112
105
|
closing,
|
|
@@ -115,7 +108,6 @@ function CardContainer(_ref) {
|
|
|
115
108
|
const {
|
|
116
109
|
route
|
|
117
110
|
} = scene.descriptor;
|
|
118
|
-
|
|
119
111
|
if (!gesture) {
|
|
120
112
|
onPageChangeConfirm === null || onPageChangeConfirm === void 0 ? void 0 : onPageChangeConfirm(true);
|
|
121
113
|
} else if (active && closing) {
|
|
@@ -123,12 +115,10 @@ function CardContainer(_ref) {
|
|
|
123
115
|
} else {
|
|
124
116
|
onPageChangeCancel === null || onPageChangeCancel === void 0 ? void 0 : onPageChangeCancel();
|
|
125
117
|
}
|
|
126
|
-
|
|
127
118
|
onTransitionStart === null || onTransitionStart === void 0 ? void 0 : onTransitionStart({
|
|
128
119
|
route
|
|
129
120
|
}, closing);
|
|
130
121
|
};
|
|
131
|
-
|
|
132
122
|
const insets = {
|
|
133
123
|
top: safeAreaInsetTop,
|
|
134
124
|
right: safeAreaInsetRight,
|
|
@@ -141,7 +131,6 @@ function CardContainer(_ref) {
|
|
|
141
131
|
const [pointerEvents, setPointerEvents] = React.useState('box-none');
|
|
142
132
|
React.useEffect(() => {
|
|
143
133
|
var _scene$progress$next, _scene$progress$next$;
|
|
144
|
-
|
|
145
134
|
const listener = (_scene$progress$next = scene.progress.next) === null || _scene$progress$next === void 0 ? void 0 : (_scene$progress$next$ = _scene$progress$next.addListener) === null || _scene$progress$next$ === void 0 ? void 0 : _scene$progress$next$.call(_scene$progress$next, _ref3 => {
|
|
146
135
|
let {
|
|
147
136
|
value
|
|
@@ -151,7 +140,6 @@ function CardContainer(_ref) {
|
|
|
151
140
|
return () => {
|
|
152
141
|
if (listener) {
|
|
153
142
|
var _scene$progress$next2, _scene$progress$next3;
|
|
154
|
-
|
|
155
143
|
(_scene$progress$next2 = scene.progress.next) === null || _scene$progress$next2 === void 0 ? void 0 : (_scene$progress$next3 = _scene$progress$next2.removeListener) === null || _scene$progress$next3 === void 0 ? void 0 : _scene$progress$next3.call(_scene$progress$next2, listener);
|
|
156
144
|
}
|
|
157
145
|
};
|
|
@@ -176,7 +164,6 @@ function CardContainer(_ref) {
|
|
|
176
164
|
route: scene.descriptor.route
|
|
177
165
|
});
|
|
178
166
|
let backTitle;
|
|
179
|
-
|
|
180
167
|
if (previousScene) {
|
|
181
168
|
const {
|
|
182
169
|
options,
|
|
@@ -184,7 +171,6 @@ function CardContainer(_ref) {
|
|
|
184
171
|
} = previousScene.descriptor;
|
|
185
172
|
backTitle = getHeaderTitle(options, route.name);
|
|
186
173
|
}
|
|
187
|
-
|
|
188
174
|
const headerBack = React.useMemo(() => backTitle !== undefined ? {
|
|
189
175
|
title: backTitle
|
|
190
176
|
} : undefined, [backTitle]);
|
|
@@ -226,7 +212,8 @@ function CardContainer(_ref) {
|
|
|
226
212
|
// This is necessary to avoid unfocused larger pages increasing scroll area
|
|
227
213
|
// The issue can be seen on the web when a smaller screen is pushed over a larger one
|
|
228
214
|
overflow: active ? undefined : 'hidden',
|
|
229
|
-
display:
|
|
215
|
+
display:
|
|
216
|
+
// Hide unfocused screens when animation isn't enabled
|
|
230
217
|
// This is also necessary for a11y on web
|
|
231
218
|
animationEnabled === false && isNextScreenTransparent === false && detachCurrentScreen !== false && !focused ? 'none' : 'flex'
|
|
232
219
|
}, StyleSheet.absoluteFill]
|
|
@@ -241,7 +228,7 @@ function CardContainer(_ref) {
|
|
|
241
228
|
}, /*#__PURE__*/React.createElement(HeaderShownContext.Provider, {
|
|
242
229
|
value: isParentHeaderShown || headerShown !== false
|
|
243
230
|
}, /*#__PURE__*/React.createElement(HeaderHeightContext.Provider, {
|
|
244
|
-
value: headerShown ? headerHeight : parentHeaderHeight
|
|
231
|
+
value: headerShown ? headerHeight : parentHeaderHeight ?? 0
|
|
245
232
|
}, renderScene({
|
|
246
233
|
route: scene.descriptor.route
|
|
247
234
|
}))))), headerMode !== 'float' ? renderHeader({
|
|
@@ -253,7 +240,6 @@ function CardContainer(_ref) {
|
|
|
253
240
|
onContentHeightChange: onHeaderHeightChange
|
|
254
241
|
}) : null)));
|
|
255
242
|
}
|
|
256
|
-
|
|
257
243
|
export default /*#__PURE__*/React.memo(CardContainer);
|
|
258
244
|
const styles = StyleSheet.create({
|
|
259
245
|
container: {
|