react-native-screens 4.0.0-beta.8 → 4.0.0-beta.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/android/src/main/java/com/swmansion/rnscreens/InsetsObserverProxy.kt +2 -4
- package/android/src/main/java/com/swmansion/rnscreens/Screen.kt +7 -4
- package/android/src/main/java/com/swmansion/rnscreens/ScreenStack.kt +24 -6
- package/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt +1 -0
- package/android/src/main/java/com/swmansion/rnscreens/ext/ViewExt.kt +17 -0
- package/ios/RNSScreen.mm +4 -0
- package/ios/RNSScreenStack.mm +2 -1
- package/lib/commonjs/components/Screen.js +7 -0
- package/lib/commonjs/components/Screen.js.map +1 -1
- package/lib/commonjs/components/ScreenStackHeaderConfig.js +7 -3
- package/lib/commonjs/components/ScreenStackHeaderConfig.js.map +1 -1
- package/lib/commonjs/components/helpers/usePrevious.js +15 -0
- package/lib/commonjs/components/helpers/usePrevious.js.map +1 -0
- package/lib/module/components/Screen.js +7 -0
- package/lib/module/components/Screen.js.map +1 -1
- package/lib/module/components/ScreenStackHeaderConfig.js +7 -3
- package/lib/module/components/ScreenStackHeaderConfig.js.map +1 -1
- package/lib/module/components/helpers/usePrevious.js +9 -0
- package/lib/module/components/helpers/usePrevious.js.map +1 -0
- package/lib/typescript/components/Screen.d.ts.map +1 -1
- package/lib/typescript/components/ScreenStackHeaderConfig.d.ts.map +1 -1
- package/lib/typescript/components/helpers/usePrevious.d.ts +2 -0
- package/lib/typescript/components/helpers/usePrevious.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/components/Screen.tsx +14 -0
- package/src/components/ScreenStackHeaderConfig.tsx +5 -1
- package/src/components/helpers/usePrevious.tsx +11 -0
|
@@ -57,10 +57,8 @@ object InsetsObserverProxy : OnApplyWindowInsetsListener {
|
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
59
|
|
|
60
|
-
fun
|
|
61
|
-
|
|
62
|
-
ViewCompat.setOnApplyWindowInsetsListener(it, null)
|
|
63
|
-
}
|
|
60
|
+
fun unregisterOnView(view: View) {
|
|
61
|
+
ViewCompat.setOnApplyWindowInsetsListener(view, null)
|
|
64
62
|
}
|
|
65
63
|
|
|
66
64
|
private fun getObservedView(): View? = eventSourceView.get()
|
|
@@ -20,13 +20,13 @@ import com.facebook.react.uimanager.PixelUtil
|
|
|
20
20
|
import com.facebook.react.uimanager.UIManagerHelper
|
|
21
21
|
import com.facebook.react.uimanager.UIManagerModule
|
|
22
22
|
import com.facebook.react.uimanager.events.EventDispatcher
|
|
23
|
-
import com.facebook.react.views.scroll.ReactScrollView
|
|
24
23
|
import com.google.android.material.bottomsheet.BottomSheetBehavior
|
|
25
24
|
import com.google.android.material.shape.CornerFamily
|
|
26
25
|
import com.google.android.material.shape.MaterialShapeDrawable
|
|
27
26
|
import com.google.android.material.shape.ShapeAppearanceModel
|
|
28
27
|
import com.swmansion.rnscreens.events.HeaderHeightChangeEvent
|
|
29
28
|
import com.swmansion.rnscreens.events.SheetDetentChangedEvent
|
|
29
|
+
import com.swmansion.rnscreens.ext.isInsideScrollViewWithRemoveClippedSubviews
|
|
30
30
|
|
|
31
31
|
@SuppressLint("ViewConstructor") // Only we construct this view, it is never inflated.
|
|
32
32
|
class Screen(
|
|
@@ -234,6 +234,9 @@ class Screen(
|
|
|
234
234
|
if (activityState == this.activityState) {
|
|
235
235
|
return
|
|
236
236
|
}
|
|
237
|
+
if (container is ScreenStack && this.activityState != null && activityState < this.activityState!!) {
|
|
238
|
+
throw IllegalStateException("[RNScreens] activityState can only progress in NativeStack")
|
|
239
|
+
}
|
|
237
240
|
this.activityState = activityState
|
|
238
241
|
container?.notifyChildUpdate()
|
|
239
242
|
}
|
|
@@ -393,10 +396,10 @@ class Screen(
|
|
|
393
396
|
}
|
|
394
397
|
if (child is ViewGroup) {
|
|
395
398
|
// The children are miscounted when there's a FlatList with
|
|
396
|
-
//
|
|
399
|
+
// removeClippedSubviews set to true (default).
|
|
397
400
|
// We add a simple view for each item in the list to make it work as expected.
|
|
398
|
-
// See https://github.com/software-mansion/react-native-screens/
|
|
399
|
-
if (
|
|
401
|
+
// See https://github.com/software-mansion/react-native-screens/pull/2383
|
|
402
|
+
if (child.isInsideScrollViewWithRemoveClippedSubviews()) {
|
|
400
403
|
for (j in 0 until child.childCount) {
|
|
401
404
|
child.addView(View(context))
|
|
402
405
|
}
|
|
@@ -104,7 +104,7 @@ class ScreenStack(
|
|
|
104
104
|
|
|
105
105
|
for (i in screenWrappers.indices.reversed()) {
|
|
106
106
|
val screenWrapper = getScreenFragmentWrapperAt(i)
|
|
107
|
-
if (!dismissedWrappers.contains(screenWrapper)) {
|
|
107
|
+
if (!dismissedWrappers.contains(screenWrapper) && screenWrapper.screen.activityState !== Screen.ActivityState.INACTIVE) {
|
|
108
108
|
if (newTop == null) {
|
|
109
109
|
newTop = screenWrapper
|
|
110
110
|
} else {
|
|
@@ -182,8 +182,16 @@ class ScreenStack(
|
|
|
182
182
|
R.anim.rns_no_animation_medium,
|
|
183
183
|
)
|
|
184
184
|
StackAnimation.FADE_FROM_BOTTOM -> it.setCustomAnimations(R.anim.rns_fade_from_bottom, R.anim.rns_no_animation_350)
|
|
185
|
-
StackAnimation.IOS_FROM_RIGHT ->
|
|
186
|
-
|
|
185
|
+
StackAnimation.IOS_FROM_RIGHT ->
|
|
186
|
+
it.setCustomAnimations(
|
|
187
|
+
R.anim.rns_ios_from_right_foreground_open,
|
|
188
|
+
R.anim.rns_ios_from_right_background_open,
|
|
189
|
+
)
|
|
190
|
+
StackAnimation.IOS_FROM_LEFT ->
|
|
191
|
+
it.setCustomAnimations(
|
|
192
|
+
R.anim.rns_ios_from_left_foreground_open,
|
|
193
|
+
R.anim.rns_ios_from_left_background_open,
|
|
194
|
+
)
|
|
187
195
|
}
|
|
188
196
|
} else {
|
|
189
197
|
when (stackAnimation) {
|
|
@@ -221,8 +229,16 @@ class ScreenStack(
|
|
|
221
229
|
R.anim.rns_slide_out_to_bottom,
|
|
222
230
|
)
|
|
223
231
|
StackAnimation.FADE_FROM_BOTTOM -> it.setCustomAnimations(R.anim.rns_no_animation_250, R.anim.rns_fade_to_bottom)
|
|
224
|
-
StackAnimation.IOS_FROM_RIGHT ->
|
|
225
|
-
|
|
232
|
+
StackAnimation.IOS_FROM_RIGHT ->
|
|
233
|
+
it.setCustomAnimations(
|
|
234
|
+
R.anim.rns_ios_from_right_background_close,
|
|
235
|
+
R.anim.rns_ios_from_right_foreground_close,
|
|
236
|
+
)
|
|
237
|
+
StackAnimation.IOS_FROM_LEFT ->
|
|
238
|
+
it.setCustomAnimations(
|
|
239
|
+
R.anim.rns_ios_from_left_background_close,
|
|
240
|
+
R.anim.rns_ios_from_left_foreground_close,
|
|
241
|
+
)
|
|
226
242
|
}
|
|
227
243
|
}
|
|
228
244
|
}
|
|
@@ -258,7 +274,9 @@ class ScreenStack(
|
|
|
258
274
|
break
|
|
259
275
|
}
|
|
260
276
|
// detach all screens that should not be visible
|
|
261
|
-
if (fragmentWrapper !== newTop && !dismissedWrappers.contains(fragmentWrapper))
|
|
277
|
+
if ((fragmentWrapper !== newTop && !dismissedWrappers.contains(fragmentWrapper)) ||
|
|
278
|
+
fragmentWrapper.screen.activityState === Screen.ActivityState.INACTIVE
|
|
279
|
+
) {
|
|
262
280
|
it.remove(fragmentWrapper.fragment)
|
|
263
281
|
}
|
|
264
282
|
}
|
|
@@ -163,6 +163,7 @@ object ScreenWindowTraits {
|
|
|
163
163
|
InsetsObserverProxy.registerOnView(decorView)
|
|
164
164
|
InsetsObserverProxy.addOnApplyWindowInsetsListener(windowInsetsListener)
|
|
165
165
|
} else {
|
|
166
|
+
InsetsObserverProxy.unregisterOnView(decorView)
|
|
166
167
|
InsetsObserverProxy.removeOnApplyWindowInsetsListener(windowInsetsListener)
|
|
167
168
|
}
|
|
168
169
|
ViewCompat.requestApplyInsets(decorView)
|
|
@@ -3,6 +3,9 @@ package com.swmansion.rnscreens.ext
|
|
|
3
3
|
import android.graphics.drawable.ColorDrawable
|
|
4
4
|
import android.view.View
|
|
5
5
|
import android.view.ViewGroup
|
|
6
|
+
import com.facebook.react.views.scroll.ReactHorizontalScrollView
|
|
7
|
+
import com.facebook.react.views.scroll.ReactScrollView
|
|
8
|
+
import com.swmansion.rnscreens.ScreenStack
|
|
6
9
|
|
|
7
10
|
internal fun View.parentAsView() = this.parent as? View
|
|
8
11
|
|
|
@@ -30,3 +33,17 @@ internal fun View.maybeBgColor(): Int? {
|
|
|
30
33
|
}
|
|
31
34
|
return null
|
|
32
35
|
}
|
|
36
|
+
|
|
37
|
+
internal fun View.isInsideScrollViewWithRemoveClippedSubviews(): Boolean {
|
|
38
|
+
if (this is ReactHorizontalScrollView || this is ReactScrollView) {
|
|
39
|
+
return false
|
|
40
|
+
}
|
|
41
|
+
var parentView = this.parent
|
|
42
|
+
while (parentView is ViewGroup && parentView !is ScreenStack) {
|
|
43
|
+
if (parentView is ReactScrollView) {
|
|
44
|
+
return parentView.removeClippedSubviews
|
|
45
|
+
}
|
|
46
|
+
parentView = parentView.parent
|
|
47
|
+
}
|
|
48
|
+
return false
|
|
49
|
+
}
|
package/ios/RNSScreen.mm
CHANGED
|
@@ -304,6 +304,10 @@ constexpr NSInteger SHEET_LARGEST_UNDIMMED_DETENT_NONE = -1;
|
|
|
304
304
|
{
|
|
305
305
|
int activityState = [activityStateOrNil intValue];
|
|
306
306
|
if (activityStateOrNil != nil && activityState != -1 && activityState != _activityState) {
|
|
307
|
+
if ([_controller.navigationController isKindOfClass:RNSNavigationController.class] &&
|
|
308
|
+
_activityState < activityState) {
|
|
309
|
+
RCTLogError(@"[RNScreens] activityState can only progress in NativeStack");
|
|
310
|
+
}
|
|
307
311
|
_activityState = activityState;
|
|
308
312
|
[_reactSuperview markChildUpdated];
|
|
309
313
|
}
|
package/ios/RNSScreenStack.mm
CHANGED
|
@@ -673,7 +673,7 @@ namespace react = facebook::react;
|
|
|
673
673
|
NSMutableArray<UIViewController *> *pushControllers = [NSMutableArray new];
|
|
674
674
|
NSMutableArray<UIViewController *> *modalControllers = [NSMutableArray new];
|
|
675
675
|
for (RNSScreenView *screen in _reactSubviews) {
|
|
676
|
-
if (!screen.dismissed && screen.controller != nil) {
|
|
676
|
+
if (!screen.dismissed && screen.controller != nil && screen.activityState != RNSActivityStateInactive) {
|
|
677
677
|
if (pushControllers.count == 0) {
|
|
678
678
|
// first screen on the list needs to be places as "push controller"
|
|
679
679
|
[pushControllers addObject:screen.controller];
|
|
@@ -947,6 +947,7 @@ namespace react = facebook::react;
|
|
|
947
947
|
- (void)markChildUpdated
|
|
948
948
|
{
|
|
949
949
|
// do nothing
|
|
950
|
+
[self updateContainer];
|
|
950
951
|
}
|
|
951
952
|
|
|
952
953
|
- (void)didUpdateChildren
|
|
@@ -12,6 +12,7 @@ var _DelayedFreeze = _interopRequireDefault(require("./helpers/DelayedFreeze"));
|
|
|
12
12
|
var _core = require("../core");
|
|
13
13
|
var _ScreenNativeComponent = _interopRequireDefault(require("../fabric/ScreenNativeComponent"));
|
|
14
14
|
var _ModalScreenNativeComponent = _interopRequireDefault(require("../fabric/ModalScreenNativeComponent"));
|
|
15
|
+
var _usePrevious = require("./helpers/usePrevious");
|
|
15
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
16
17
|
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); } // Native components
|
|
17
18
|
const NativeScreen = exports.NativeScreen = _ScreenNativeComponent.default;
|
|
@@ -108,6 +109,7 @@ function isIndexInClosedRange(value, lowerBound, upperBound) {
|
|
|
108
109
|
const InnerScreen = exports.InnerScreen = /*#__PURE__*/_react.default.forwardRef(function InnerScreen(props, ref) {
|
|
109
110
|
const innerRef = _react.default.useRef(null);
|
|
110
111
|
_react.default.useImperativeHandle(ref, () => innerRef.current, []);
|
|
112
|
+
const prevActivityState = (0, _usePrevious.usePrevious)(props.activityState);
|
|
111
113
|
const setRef = ref => {
|
|
112
114
|
innerRef.current = ref;
|
|
113
115
|
props.onComponentRef?.(ref);
|
|
@@ -159,6 +161,11 @@ const InnerScreen = exports.InnerScreen = /*#__PURE__*/_react.default.forwardRef
|
|
|
159
161
|
activityState = active !== 0 ? 2 : 0; // in the new version, we need one of the screens to have value of 2 after the transition
|
|
160
162
|
}
|
|
161
163
|
|
|
164
|
+
if (isNativeStack && prevActivityState !== undefined && activityState !== undefined) {
|
|
165
|
+
if (prevActivityState > activityState) {
|
|
166
|
+
throw new Error('[RNScreens] activityState cannot be decreased in NativeStack');
|
|
167
|
+
}
|
|
168
|
+
}
|
|
162
169
|
const handleRef = ref => {
|
|
163
170
|
if (ref?.viewConfig?.validAttributes?.style) {
|
|
164
171
|
ref.viewConfig.validAttributes.style = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Object","defineProperty","exports","value","default","ScreenContext","NativeScreen","InnerScreen","_react","_interopRequireDefault","require","_reactNative","_TransitionProgressContext","_DelayedFreeze","_core","_ScreenNativeComponent","_ModalScreenNativeComponent","obj","__esModule","_extends","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ScreenNativeComponent","AnimatedNativeScreen","Animated","createAnimatedComponent","AnimatedNativeModalScreen","ModalScreenNativeComponent","SHEET_FIT_TO_CONTENTS","SHEET_COMPAT_LARGE","SHEET_COMPAT_MEDIUM","SHEET_COMPAT_ALL","SHEET_DIMMED_ALWAYS","assertDetentsArrayIsSorted","array","Error","resolveSheetAllowedDetents","allowedDetentsCompat","Array","isArray","Platform","OS","__DEV__","console","warn","slice","resolveSheetLargestUndimmedDetent","lud","lastDetentIndex","isIndexInClosedRange","resolveSheetInitialDetentIndex","index","lowerBound","upperBound","Number","isInteger","React","forwardRef","props","ref","innerRef","useRef","useImperativeHandle","current","setRef","onComponentRef","closing","Value","progress","goingForward","enabled","screensEnabled","freezeOnBlur","freezeEnabled","rest","sheetAllowedDetents","sheetLargestUndimmedDetentIndex","sheetGrabberVisible","sheetCornerRadius","sheetExpandsWhenScrolledToEdge","sheetElevation","sheetInitialDetentIndex","stackPresentation","isNativePlatformSupported","resolvedSheetAllowedDetents","resolvedSheetLargestUndimmedDetent","resolvedSheetInitialDetentIndex","AnimatedScreen","undefined","active","
|
|
1
|
+
{"version":3,"names":["Object","defineProperty","exports","value","default","ScreenContext","NativeScreen","InnerScreen","_react","_interopRequireDefault","require","_reactNative","_TransitionProgressContext","_DelayedFreeze","_core","_ScreenNativeComponent","_ModalScreenNativeComponent","_usePrevious","obj","__esModule","_extends","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ScreenNativeComponent","AnimatedNativeScreen","Animated","createAnimatedComponent","AnimatedNativeModalScreen","ModalScreenNativeComponent","SHEET_FIT_TO_CONTENTS","SHEET_COMPAT_LARGE","SHEET_COMPAT_MEDIUM","SHEET_COMPAT_ALL","SHEET_DIMMED_ALWAYS","assertDetentsArrayIsSorted","array","Error","resolveSheetAllowedDetents","allowedDetentsCompat","Array","isArray","Platform","OS","__DEV__","console","warn","slice","resolveSheetLargestUndimmedDetent","lud","lastDetentIndex","isIndexInClosedRange","resolveSheetInitialDetentIndex","index","lowerBound","upperBound","Number","isInteger","React","forwardRef","props","ref","innerRef","useRef","useImperativeHandle","current","prevActivityState","usePrevious","activityState","setRef","onComponentRef","closing","Value","progress","goingForward","enabled","screensEnabled","freezeOnBlur","freezeEnabled","rest","sheetAllowedDetents","sheetLargestUndimmedDetentIndex","sheetGrabberVisible","sheetCornerRadius","sheetExpandsWhenScrolledToEdge","sheetElevation","sheetInitialDetentIndex","stackPresentation","isNativePlatformSupported","resolvedSheetAllowedDetents","resolvedSheetLargestUndimmedDetent","resolvedSheetInitialDetentIndex","AnimatedScreen","undefined","active","children","isNativeStack","gestureResponseDistance","onGestureCancel","style","handleRef","viewConfig","validAttributes","display","_viewConfig","createElement","freeze","zIndex","sheetLargestUndimmedDetent","sheetInitialDetent","start","end","top","bottom","onTransitionProgress","event","nativeEvent","useNativeDriver","Provider","View","createContext","Screen","ScreenWrapper","useContext","_default"],"sourceRoot":"../../../src","sources":["components/Screen.tsx"],"mappings":"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"}
|
|
@@ -16,7 +16,8 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
|
|
|
16
16
|
const ScreenStackHeaderSubview = exports.ScreenStackHeaderSubview = _ScreenStackHeaderSubviewNativeComponent.default;
|
|
17
17
|
function ScreenStackHeaderConfig(props) {
|
|
18
18
|
return /*#__PURE__*/_react.default.createElement(_ScreenStackHeaderConfigNativeComponent.default, _extends({}, props, {
|
|
19
|
-
style: styles.headerConfig
|
|
19
|
+
style: styles.headerConfig,
|
|
20
|
+
pointerEvents: "box-none"
|
|
20
21
|
}));
|
|
21
22
|
}
|
|
22
23
|
const ScreenStackHeaderBackButtonImage = props => /*#__PURE__*/_react.default.createElement(ScreenStackHeaderSubview, {
|
|
@@ -78,9 +79,12 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
78
79
|
flexShrink: 1
|
|
79
80
|
},
|
|
80
81
|
headerConfig: {
|
|
81
|
-
|
|
82
|
+
position: 'absolute',
|
|
83
|
+
top: '-100%',
|
|
82
84
|
width: '100%',
|
|
83
|
-
|
|
85
|
+
flexDirection: 'row',
|
|
86
|
+
justifyContent: 'space-between',
|
|
87
|
+
alignItems: 'center'
|
|
84
88
|
}
|
|
85
89
|
});
|
|
86
90
|
//# sourceMappingURL=ScreenStackHeaderConfig.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Object","defineProperty","exports","value","ScreenStackHeaderCenterView","ScreenStackHeaderBackButtonImage","ScreenStackHeaderConfig","ScreenStackHeaderSubview","ScreenStackHeaderSearchBarView","ScreenStackHeaderRightView","ScreenStackHeaderLeftView","_react","_interopRequireDefault","require","_reactNative","_ScreenStackHeaderConfigNativeComponent","_ScreenStackHeaderSubviewNativeComponent","obj","__esModule","default","_extends","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ScreenStackHeaderSubviewNativeComponent","props","createElement","style","styles","headerConfig","type","headerSubview","Image","resizeMode","fadeDuration","rest","headerSubviewCenter","StyleSheet","create","flexDirection","alignItems","justifyContent","flexShrink","width"],"sourceRoot":"../../../src","sources":["components/ScreenStackHeaderConfig.tsx"],"mappings":";AAAA,YAAY;;AAACA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,2BAAA,GAAAF,OAAA,CAAAG,gCAAA;AAAAH,OAAA,CAAAI,uBAAA,GAAAA,uBAAA;AAAAJ,OAAA,CAAAK,wBAAA,GAAAL,OAAA,CAAAM,8BAAA,GAAAN,OAAA,CAAAO,0BAAA,GAAAP,OAAA,CAAAQ,yBAAA;AAEb,IAAAC,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAMA,IAAAC,YAAA,GAAAD,OAAA;AAGA,IAAAE,uCAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,wCAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAAwG,SAAAD,uBAAAK,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,SAAA,IAAAA,QAAA,GAAApB,MAAA,CAAAqB,MAAA,GAAArB,MAAA,CAAAqB,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAI,GAAA,IAAAD,MAAA,QAAA3B,MAAA,CAAA6B,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAJ,MAAA,EAAAC,GAAA,KAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAL,MAAA,YAAAH,QAAA,CAAAY,KAAA,OAAAP,SAAA,KAFxG;AAIO,MAAMlB,wBAEZ,GAAAL,OAAA,CAAAK,wBAAA,GAAG0B,gDAA8C;AAE3C,SAAS3B,uBAAuBA,CACrC4B,KAAmC,EAChB;EACnB,oBACEvB,MAAA,CAAAQ,OAAA,CAAAgB,aAAA,CAACpB,uCAAA,CAAAI,OAAsC,EAAAC,QAAA,KACjCc,KAAK;IACTE,KAAK,EAAEC,MAAM,CAACC;
|
|
1
|
+
{"version":3,"names":["Object","defineProperty","exports","value","ScreenStackHeaderCenterView","ScreenStackHeaderBackButtonImage","ScreenStackHeaderConfig","ScreenStackHeaderSubview","ScreenStackHeaderSearchBarView","ScreenStackHeaderRightView","ScreenStackHeaderLeftView","_react","_interopRequireDefault","require","_reactNative","_ScreenStackHeaderConfigNativeComponent","_ScreenStackHeaderSubviewNativeComponent","obj","__esModule","default","_extends","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ScreenStackHeaderSubviewNativeComponent","props","createElement","style","styles","headerConfig","pointerEvents","type","headerSubview","Image","resizeMode","fadeDuration","rest","headerSubviewCenter","StyleSheet","create","flexDirection","alignItems","justifyContent","flexShrink","position","top","width"],"sourceRoot":"../../../src","sources":["components/ScreenStackHeaderConfig.tsx"],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.usePrevious = usePrevious;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
function usePrevious(state) {
|
|
9
|
+
const ref = (0, _react.useRef)();
|
|
10
|
+
(0, _react.useEffect)(() => {
|
|
11
|
+
ref.current = state;
|
|
12
|
+
});
|
|
13
|
+
return ref.current;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=usePrevious.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","usePrevious","state","ref","useRef","useEffect","current"],"sourceRoot":"../../../../src","sources":["components/helpers/usePrevious.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEO,SAASC,WAAWA,CAAIC,KAAQ,EAAiB;EACtD,MAAMC,GAAG,GAAG,IAAAC,aAAM,EAAI,CAAC;EAEvB,IAAAC,gBAAS,EAAC,MAAM;IACdF,GAAG,CAACG,OAAO,GAAGJ,KAAK;EACrB,CAAC,CAAC;EAEF,OAAOC,GAAG,CAACG,OAAO;AACpB"}
|
|
@@ -10,6 +10,7 @@ import { freezeEnabled, isNativePlatformSupported, screensEnabled } from '../cor
|
|
|
10
10
|
// Native components
|
|
11
11
|
import ScreenNativeComponent from '../fabric/ScreenNativeComponent';
|
|
12
12
|
import ModalScreenNativeComponent from '../fabric/ModalScreenNativeComponent';
|
|
13
|
+
import { usePrevious } from './helpers/usePrevious';
|
|
13
14
|
export const NativeScreen = ScreenNativeComponent;
|
|
14
15
|
const AnimatedNativeScreen = Animated.createAnimatedComponent(NativeScreen);
|
|
15
16
|
const AnimatedNativeModalScreen = Animated.createAnimatedComponent(ModalScreenNativeComponent);
|
|
@@ -104,6 +105,7 @@ function isIndexInClosedRange(value, lowerBound, upperBound) {
|
|
|
104
105
|
export const InnerScreen = /*#__PURE__*/React.forwardRef(function InnerScreen(props, ref) {
|
|
105
106
|
const innerRef = React.useRef(null);
|
|
106
107
|
React.useImperativeHandle(ref, () => innerRef.current, []);
|
|
108
|
+
const prevActivityState = usePrevious(props.activityState);
|
|
107
109
|
const setRef = ref => {
|
|
108
110
|
innerRef.current = ref;
|
|
109
111
|
props.onComponentRef?.(ref);
|
|
@@ -155,6 +157,11 @@ export const InnerScreen = /*#__PURE__*/React.forwardRef(function InnerScreen(pr
|
|
|
155
157
|
activityState = active !== 0 ? 2 : 0; // in the new version, we need one of the screens to have value of 2 after the transition
|
|
156
158
|
}
|
|
157
159
|
|
|
160
|
+
if (isNativeStack && prevActivityState !== undefined && activityState !== undefined) {
|
|
161
|
+
if (prevActivityState > activityState) {
|
|
162
|
+
throw new Error('[RNScreens] activityState cannot be decreased in NativeStack');
|
|
163
|
+
}
|
|
164
|
+
}
|
|
158
165
|
const handleRef = ref => {
|
|
159
166
|
if (ref?.viewConfig?.validAttributes?.style) {
|
|
160
167
|
ref.viewConfig.validAttributes.style = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","React","Animated","Platform","TransitionProgressContext","DelayedFreeze","freezeEnabled","isNativePlatformSupported","screensEnabled","ScreenNativeComponent","ModalScreenNativeComponent","NativeScreen","AnimatedNativeScreen","createAnimatedComponent","AnimatedNativeModalScreen","SHEET_FIT_TO_CONTENTS","SHEET_COMPAT_LARGE","SHEET_COMPAT_MEDIUM","SHEET_COMPAT_ALL","SHEET_DIMMED_ALWAYS","assertDetentsArrayIsSorted","array","Error","resolveSheetAllowedDetents","allowedDetentsCompat","Array","isArray","OS","__DEV__","console","warn","slice","resolveSheetLargestUndimmedDetent","lud","lastDetentIndex","isIndexInClosedRange","resolveSheetInitialDetentIndex","index","value","lowerBound","upperBound","Number","isInteger","InnerScreen","forwardRef","props","ref","innerRef","useRef","useImperativeHandle","current","setRef","onComponentRef","closing","Value","progress","goingForward","enabled","freezeOnBlur","rest","sheetAllowedDetents","sheetLargestUndimmedDetentIndex","sheetGrabberVisible","sheetCornerRadius","sheetExpandsWhenScrolledToEdge","sheetElevation","sheetInitialDetentIndex","stackPresentation","resolvedSheetAllowedDetents","resolvedSheetLargestUndimmedDetent","resolvedSheetInitialDetentIndex","AnimatedScreen","undefined","active","
|
|
1
|
+
{"version":3,"names":["_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","React","Animated","Platform","TransitionProgressContext","DelayedFreeze","freezeEnabled","isNativePlatformSupported","screensEnabled","ScreenNativeComponent","ModalScreenNativeComponent","usePrevious","NativeScreen","AnimatedNativeScreen","createAnimatedComponent","AnimatedNativeModalScreen","SHEET_FIT_TO_CONTENTS","SHEET_COMPAT_LARGE","SHEET_COMPAT_MEDIUM","SHEET_COMPAT_ALL","SHEET_DIMMED_ALWAYS","assertDetentsArrayIsSorted","array","Error","resolveSheetAllowedDetents","allowedDetentsCompat","Array","isArray","OS","__DEV__","console","warn","slice","resolveSheetLargestUndimmedDetent","lud","lastDetentIndex","isIndexInClosedRange","resolveSheetInitialDetentIndex","index","value","lowerBound","upperBound","Number","isInteger","InnerScreen","forwardRef","props","ref","innerRef","useRef","useImperativeHandle","current","prevActivityState","activityState","setRef","onComponentRef","closing","Value","progress","goingForward","enabled","freezeOnBlur","rest","sheetAllowedDetents","sheetLargestUndimmedDetentIndex","sheetGrabberVisible","sheetCornerRadius","sheetExpandsWhenScrolledToEdge","sheetElevation","sheetInitialDetentIndex","stackPresentation","resolvedSheetAllowedDetents","resolvedSheetLargestUndimmedDetent","resolvedSheetInitialDetentIndex","AnimatedScreen","undefined","active","children","isNativeStack","gestureResponseDistance","onGestureCancel","style","handleRef","viewConfig","validAttributes","display","_viewConfig","createElement","freeze","zIndex","sheetLargestUndimmedDetent","sheetInitialDetent","start","end","top","bottom","onTransitionProgress","event","nativeEvent","useNativeDriver","Provider","View","ScreenContext","createContext","Screen","ScreenWrapper","useContext"],"sourceRoot":"../../../src","sources":["components/Screen.tsx"],"mappings":"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"}
|
|
@@ -10,7 +10,8 @@ import ScreenStackHeaderSubviewNativeComponent from '../fabric/ScreenStackHeader
|
|
|
10
10
|
export const ScreenStackHeaderSubview = ScreenStackHeaderSubviewNativeComponent;
|
|
11
11
|
export function ScreenStackHeaderConfig(props) {
|
|
12
12
|
return /*#__PURE__*/React.createElement(ScreenStackHeaderConfigNativeComponent, _extends({}, props, {
|
|
13
|
-
style: styles.headerConfig
|
|
13
|
+
style: styles.headerConfig,
|
|
14
|
+
pointerEvents: "box-none"
|
|
14
15
|
}));
|
|
15
16
|
}
|
|
16
17
|
export const ScreenStackHeaderBackButtonImage = props => /*#__PURE__*/React.createElement(ScreenStackHeaderSubview, {
|
|
@@ -67,9 +68,12 @@ const styles = StyleSheet.create({
|
|
|
67
68
|
flexShrink: 1
|
|
68
69
|
},
|
|
69
70
|
headerConfig: {
|
|
70
|
-
|
|
71
|
+
position: 'absolute',
|
|
72
|
+
top: '-100%',
|
|
71
73
|
width: '100%',
|
|
72
|
-
|
|
74
|
+
flexDirection: 'row',
|
|
75
|
+
justifyContent: 'space-between',
|
|
76
|
+
alignItems: 'center'
|
|
73
77
|
}
|
|
74
78
|
});
|
|
75
79
|
//# sourceMappingURL=ScreenStackHeaderConfig.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","React","Image","StyleSheet","ScreenStackHeaderConfigNativeComponent","ScreenStackHeaderSubviewNativeComponent","ScreenStackHeaderSubview","ScreenStackHeaderConfig","props","createElement","style","styles","headerConfig","ScreenStackHeaderBackButtonImage","type","headerSubview","resizeMode","fadeDuration","ScreenStackHeaderRightView","rest","ScreenStackHeaderLeftView","ScreenStackHeaderCenterView","headerSubviewCenter","ScreenStackHeaderSearchBarView","create","flexDirection","alignItems","justifyContent","flexShrink","width"],"sourceRoot":"../../../src","sources":["components/ScreenStackHeaderConfig.tsx"],"mappings":"AAAA,YAAY;;AAAC,SAAAA,SAAA,IAAAA,QAAA,GAAAC,MAAA,CAAAC,MAAA,GAAAD,MAAA,CAAAC,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAI,GAAA,IAAAD,MAAA,QAAAP,MAAA,CAAAS,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAJ,MAAA,EAAAC,GAAA,KAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAL,MAAA,YAAAJ,QAAA,CAAAa,KAAA,OAAAP,SAAA;AAEb,OAAOQ,KAAK,MAAM,OAAO;AAMzB,SAASC,KAAK,EAAcC,UAAU,QAAmB,cAAc;;AAEvE;AACA,OAAOC,sCAAsC,MAAM,kDAAkD;AACrG,OAAOC,uCAAuC,MAAM,mDAAmD;AAEvG,OAAO,MAAMC,wBAEZ,GAAGD,uCAA8C;AAElD,OAAO,SAASE,uBAAuBA,CACrCC,KAAmC,EAChB;EACnB,oBACEP,KAAA,CAAAQ,aAAA,CAACL,sCAAsC,EAAAjB,QAAA,KACjCqB,KAAK;IACTE,KAAK,EAAEC,MAAM,CAACC;
|
|
1
|
+
{"version":3,"names":["_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","React","Image","StyleSheet","ScreenStackHeaderConfigNativeComponent","ScreenStackHeaderSubviewNativeComponent","ScreenStackHeaderSubview","ScreenStackHeaderConfig","props","createElement","style","styles","headerConfig","pointerEvents","ScreenStackHeaderBackButtonImage","type","headerSubview","resizeMode","fadeDuration","ScreenStackHeaderRightView","rest","ScreenStackHeaderLeftView","ScreenStackHeaderCenterView","headerSubviewCenter","ScreenStackHeaderSearchBarView","create","flexDirection","alignItems","justifyContent","flexShrink","position","top","width"],"sourceRoot":"../../../src","sources":["components/ScreenStackHeaderConfig.tsx"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useEffect","useRef","usePrevious","state","ref","current"],"sourceRoot":"../../../../src","sources":["components/helpers/usePrevious.tsx"],"mappings":"AAAA,SAASA,SAAS,EAAEC,MAAM,QAAQ,OAAO;AAEzC,OAAO,SAASC,WAAWA,CAAIC,KAAQ,EAAiB;EACtD,MAAMC,GAAG,GAAGH,MAAM,CAAI,CAAC;EAEvBD,SAAS,CAAC,MAAM;IACdI,GAAG,CAACC,OAAO,GAAGF,KAAK;EACrB,CAAC,CAAC;EAEF,OAAOC,GAAG,CAACC,OAAO;AACpB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Screen.d.ts","sourceRoot":"","sources":["../../../src/components/Screen.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAY,IAAI,EAAY,MAAM,cAAc,CAAC;AAIxD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"Screen.d.ts","sourceRoot":"","sources":["../../../src/components/Screen.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAY,IAAI,EAAY,MAAM,cAAc,CAAC;AAIxD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAanD,KAAK,iBAAiB,GAAG,IAAI,CAC3B,WAAW,EACX,yBAAyB,GAAG,iCAAiC,CAC9D,GAAG;IACF,kBAAkB,EAAE,MAAM,CAAC;IAC3B,0BAA0B,EAAE,MAAM,CAAC;CACpC,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,aAAa,CAAC,iBAAiB,CACC,CAAC;AAuIlE,eAAO,MAAM,WAAW,uFAiMvB,CAAC;AAIF,eAAO,MAAM,aAAa,sGAAmC,CAAC;AAE9D,QAAA,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAIjC,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScreenStackHeaderConfig.d.ts","sourceRoot":"","sources":["../../../src/components/ScreenStackHeaderConfig.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,kBAAkB,EAClB,4BAA4B,EAC5B,cAAc,EACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAS,UAAU,EAAc,SAAS,EAAE,MAAM,cAAc,CAAC;AAMxE,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,aAAa,CACxD,KAAK,CAAC,iBAAiB,CAAC,SAAS,GAAG;IAAE,IAAI,CAAC,EAAE,kBAAkB,CAAA;CAAE,CAAC,CAClB,CAAC;AAEnD,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,4BAA4B,GAClC,KAAK,CAAC,GAAG,CAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"ScreenStackHeaderConfig.d.ts","sourceRoot":"","sources":["../../../src/components/ScreenStackHeaderConfig.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,kBAAkB,EAClB,4BAA4B,EAC5B,cAAc,EACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAS,UAAU,EAAc,SAAS,EAAE,MAAM,cAAc,CAAC;AAMxE,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,aAAa,CACxD,KAAK,CAAC,iBAAiB,CAAC,SAAS,GAAG;IAAE,IAAI,CAAC,EAAE,kBAAkB,CAAA;CAAE,CAAC,CAClB,CAAC;AAEnD,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,4BAA4B,GAClC,KAAK,CAAC,GAAG,CAAC,OAAO,CAQnB;AAED,eAAO,MAAM,gCAAgC,UACpC,UAAU,KAChB,WAIF,CAAC;AAEF,eAAO,MAAM,0BAA0B,UAC9B,MAAM,iBAAiB,CAAC,SAAS,CAAC,KACxC,WAUF,CAAC;AAEF,eAAO,MAAM,yBAAyB,UAC7B,MAAM,iBAAiB,CAAC,SAAS,CAAC,KACxC,WAUF,CAAC;AAEF,eAAO,MAAM,2BAA2B,UAC/B,MAAM,iBAAiB,CAAC,SAAS,CAAC,KACxC,WAUF,CAAC;AAEF,eAAO,MAAM,8BAA8B,UAClC,MAAM,iBAAiB,CAAC,cAAc,CAAC,KAC7C,WAMF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePrevious.d.ts","sourceRoot":"","sources":["../../../../src/components/helpers/usePrevious.tsx"],"names":[],"mappings":"AAEA,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS,CAQtD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-screens",
|
|
3
|
-
"version": "4.0.0-beta.
|
|
3
|
+
"version": "4.0.0-beta.9",
|
|
4
4
|
"description": "Native navigation primitives for your React Native app.",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"submodules": "git submodule update --init --recursive && (cd react-navigation && yarn)",
|
|
@@ -16,6 +16,7 @@ import {
|
|
|
16
16
|
// Native components
|
|
17
17
|
import ScreenNativeComponent from '../fabric/ScreenNativeComponent';
|
|
18
18
|
import ModalScreenNativeComponent from '../fabric/ModalScreenNativeComponent';
|
|
19
|
+
import { usePrevious } from './helpers/usePrevious';
|
|
19
20
|
|
|
20
21
|
type NativeScreenProps = Omit<
|
|
21
22
|
ScreenProps,
|
|
@@ -165,6 +166,7 @@ export const InnerScreen = React.forwardRef<View, ScreenProps>(
|
|
|
165
166
|
function InnerScreen(props, ref) {
|
|
166
167
|
const innerRef = React.useRef<ViewConfig | null>(null);
|
|
167
168
|
React.useImperativeHandle(ref, () => innerRef.current!, []);
|
|
169
|
+
const prevActivityState = usePrevious(props.activityState);
|
|
168
170
|
|
|
169
171
|
const setRef = (ref: ViewConfig) => {
|
|
170
172
|
innerRef.current = ref;
|
|
@@ -239,6 +241,18 @@ export const InnerScreen = React.forwardRef<View, ScreenProps>(
|
|
|
239
241
|
activityState = active !== 0 ? 2 : 0; // in the new version, we need one of the screens to have value of 2 after the transition
|
|
240
242
|
}
|
|
241
243
|
|
|
244
|
+
if (
|
|
245
|
+
isNativeStack &&
|
|
246
|
+
prevActivityState !== undefined &&
|
|
247
|
+
activityState !== undefined
|
|
248
|
+
) {
|
|
249
|
+
if (prevActivityState > activityState) {
|
|
250
|
+
throw new Error(
|
|
251
|
+
'[RNScreens] activityState cannot be decreased in NativeStack',
|
|
252
|
+
);
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
|
|
242
256
|
const handleRef = (ref: ViewConfig) => {
|
|
243
257
|
if (ref?.viewConfig?.validAttributes?.style) {
|
|
244
258
|
ref.viewConfig.validAttributes.style = {
|
|
@@ -23,6 +23,7 @@ export function ScreenStackHeaderConfig(
|
|
|
23
23
|
<ScreenStackHeaderConfigNativeComponent
|
|
24
24
|
{...props}
|
|
25
25
|
style={styles.headerConfig}
|
|
26
|
+
pointerEvents="box-none"
|
|
26
27
|
/>
|
|
27
28
|
);
|
|
28
29
|
}
|
|
@@ -100,8 +101,11 @@ const styles = StyleSheet.create({
|
|
|
100
101
|
flexShrink: 1,
|
|
101
102
|
},
|
|
102
103
|
headerConfig: {
|
|
103
|
-
|
|
104
|
+
position: 'absolute',
|
|
105
|
+
top: '-100%',
|
|
104
106
|
width: '100%',
|
|
107
|
+
flexDirection: 'row',
|
|
105
108
|
justifyContent: 'space-between',
|
|
109
|
+
alignItems: 'center',
|
|
106
110
|
},
|
|
107
111
|
});
|