react-native-screens 4.0.0-beta.1 → 4.0.0-beta.11

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.
Files changed (107) hide show
  1. package/android/src/fabric/java/com/swmansion/rnscreens/FabricEnabledHeaderConfigViewGroup.kt +61 -0
  2. package/android/src/main/java/com/swmansion/rnscreens/CustomToolbar.kt +14 -0
  3. package/android/src/main/java/com/swmansion/rnscreens/InsetsObserverProxy.kt +2 -4
  4. package/android/src/main/java/com/swmansion/rnscreens/Screen.kt +46 -7
  5. package/android/src/main/java/com/swmansion/rnscreens/ScreenStack.kt +24 -9
  6. package/android/src/main/java/com/swmansion/rnscreens/ScreenStackFragment.kt +37 -17
  7. package/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderConfig.kt +1 -2
  8. package/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderConfigShadowNode.kt +25 -0
  9. package/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderConfigViewManager.kt +18 -0
  10. package/android/src/main/java/com/swmansion/rnscreens/ScreenViewManager.kt +6 -1
  11. package/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt +1 -0
  12. package/android/src/main/java/com/swmansion/rnscreens/ext/ViewExt.kt +24 -0
  13. package/android/src/main/java/com/swmansion/rnscreens/utils/PaddingBundle.kt +8 -0
  14. package/android/src/main/jni/rnscreens.h +2 -0
  15. package/android/src/paper/java/com/swmansion/rnscreens/FabricEnabledHeaderConfigViewGroup.kt +39 -0
  16. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderConfigComponentDescriptor.h +44 -0
  17. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderConfigShadowNode.cpp +8 -0
  18. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderConfigShadowNode.h +32 -0
  19. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderConfigState.cpp +23 -0
  20. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderConfigState.h +50 -0
  21. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderSubviewComponentDescriptor.h +27 -0
  22. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderSubviewShadowNode.cpp +8 -0
  23. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderSubviewShadowNode.h +32 -0
  24. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderSubviewState.cpp +15 -0
  25. package/common/cpp/react/renderer/components/rnscreens/RNSScreenStackHeaderSubviewState.h +40 -0
  26. package/ios/RNSConvert.mm +0 -1
  27. package/ios/RNSScreen.h +15 -0
  28. package/ios/RNSScreen.mm +55 -8
  29. package/ios/RNSScreenStack.mm +81 -2
  30. package/ios/RNSScreenStackHeaderConfig.h +63 -0
  31. package/ios/RNSScreenStackHeaderConfig.mm +135 -13
  32. package/ios/RNSScreenStackHeaderSubview.mm +26 -0
  33. package/ios/utils/UINavigationBar+RNSUtility.h +37 -0
  34. package/ios/utils/UINavigationBar+RNSUtility.mm +44 -0
  35. package/ios/utils/UIView+RNSUtility.mm +0 -1
  36. package/lib/commonjs/components/Screen.js +58 -7
  37. package/lib/commonjs/components/Screen.js.map +1 -1
  38. package/lib/commonjs/components/ScreenContentWrapper.web.js +11 -0
  39. package/lib/commonjs/components/ScreenContentWrapper.web.js.map +1 -0
  40. package/lib/commonjs/components/ScreenFooter.web.js +11 -0
  41. package/lib/commonjs/components/ScreenFooter.web.js.map +1 -0
  42. package/lib/commonjs/components/ScreenStackHeaderConfig.js +53 -17
  43. package/lib/commonjs/components/ScreenStackHeaderConfig.js.map +1 -1
  44. package/lib/commonjs/components/helpers/usePrevious.js +15 -0
  45. package/lib/commonjs/components/helpers/usePrevious.js.map +1 -0
  46. package/lib/commonjs/fabric/ModalScreenNativeComponent.js.map +1 -1
  47. package/lib/commonjs/fabric/ScreenNativeComponent.js.map +1 -1
  48. package/lib/commonjs/fabric/ScreenStackHeaderConfigNativeComponent.js +3 -1
  49. package/lib/commonjs/fabric/ScreenStackHeaderConfigNativeComponent.js.map +1 -1
  50. package/lib/commonjs/fabric/ScreenStackHeaderSubviewNativeComponent.js +3 -1
  51. package/lib/commonjs/fabric/ScreenStackHeaderSubviewNativeComponent.js.map +1 -1
  52. package/lib/commonjs/native-stack/views/NativeStackView.js +4 -10
  53. package/lib/commonjs/native-stack/views/NativeStackView.js.map +1 -1
  54. package/lib/module/components/Screen.js +58 -7
  55. package/lib/module/components/Screen.js.map +1 -1
  56. package/lib/module/components/ScreenContentWrapper.web.js +5 -0
  57. package/lib/module/components/ScreenContentWrapper.web.js.map +1 -0
  58. package/lib/module/components/ScreenFooter.web.js +5 -0
  59. package/lib/module/components/ScreenFooter.web.js.map +1 -0
  60. package/lib/module/components/ScreenStackHeaderConfig.js +50 -16
  61. package/lib/module/components/ScreenStackHeaderConfig.js.map +1 -1
  62. package/lib/module/components/helpers/usePrevious.js +9 -0
  63. package/lib/module/components/helpers/usePrevious.js.map +1 -0
  64. package/lib/module/fabric/ModalScreenNativeComponent.js.map +1 -1
  65. package/lib/module/fabric/ScreenNativeComponent.js.map +1 -1
  66. package/lib/module/fabric/ScreenStackHeaderConfigNativeComponent.js +3 -1
  67. package/lib/module/fabric/ScreenStackHeaderConfigNativeComponent.js.map +1 -1
  68. package/lib/module/fabric/ScreenStackHeaderSubviewNativeComponent.js +3 -1
  69. package/lib/module/fabric/ScreenStackHeaderSubviewNativeComponent.js.map +1 -1
  70. package/lib/module/native-stack/views/NativeStackView.js +4 -10
  71. package/lib/module/native-stack/views/NativeStackView.js.map +1 -1
  72. package/lib/typescript/components/Screen.d.ts +5 -1
  73. package/lib/typescript/components/Screen.d.ts.map +1 -1
  74. package/lib/typescript/components/ScreenContentWrapper.web.d.ts +5 -0
  75. package/lib/typescript/components/ScreenContentWrapper.web.d.ts.map +1 -0
  76. package/lib/typescript/components/ScreenFooter.web.d.ts +5 -0
  77. package/lib/typescript/components/ScreenFooter.web.d.ts.map +1 -0
  78. package/lib/typescript/components/ScreenStackHeaderConfig.d.ts +1 -1
  79. package/lib/typescript/components/ScreenStackHeaderConfig.d.ts.map +1 -1
  80. package/lib/typescript/components/helpers/usePrevious.d.ts +2 -0
  81. package/lib/typescript/components/helpers/usePrevious.d.ts.map +1 -0
  82. package/lib/typescript/fabric/ModalScreenNativeComponent.d.ts +1 -0
  83. package/lib/typescript/fabric/ModalScreenNativeComponent.d.ts.map +1 -1
  84. package/lib/typescript/fabric/ScreenNativeComponent.d.ts +1 -1
  85. package/lib/typescript/fabric/ScreenNativeComponent.d.ts.map +1 -1
  86. package/lib/typescript/fabric/ScreenStackHeaderConfigNativeComponent.d.ts.map +1 -1
  87. package/lib/typescript/fabric/ScreenStackHeaderSubviewNativeComponent.d.ts.map +1 -1
  88. package/lib/typescript/native-stack/types.d.ts +2 -3
  89. package/lib/typescript/native-stack/types.d.ts.map +1 -1
  90. package/lib/typescript/native-stack/views/NativeStackView.d.ts.map +1 -1
  91. package/lib/typescript/types.d.ts +26 -9
  92. package/lib/typescript/types.d.ts.map +1 -1
  93. package/native-stack/README.md +3 -2
  94. package/package.json +1 -1
  95. package/src/components/Screen.tsx +97 -12
  96. package/src/components/ScreenContentWrapper.web.tsx +6 -0
  97. package/src/components/ScreenFooter.web.tsx +6 -0
  98. package/src/components/ScreenStackHeaderConfig.tsx +59 -26
  99. package/src/components/helpers/usePrevious.tsx +11 -0
  100. package/src/fabric/ModalScreenNativeComponent.ts +1 -0
  101. package/src/fabric/ScreenNativeComponent.ts +0 -1
  102. package/src/fabric/ScreenStackHeaderConfigNativeComponent.ts +3 -1
  103. package/src/fabric/ScreenStackHeaderSubviewNativeComponent.ts +3 -1
  104. package/src/native-stack/types.tsx +2 -3
  105. package/src/native-stack/views/NativeStackView.tsx +4 -10
  106. package/src/types.tsx +29 -13
  107. package/windows/RNScreens/Screen.h +0 -1
@@ -11,7 +11,7 @@ export type SearchBarCommands = {
11
11
  };
12
12
  export type BackButtonDisplayMode = 'default' | 'generic' | 'minimal';
13
13
  export type StackPresentationTypes = 'push' | 'modal' | 'transparentModal' | 'containedModal' | 'containedTransparentModal' | 'fullScreenModal' | 'formSheet';
14
- export type StackAnimationTypes = 'default' | 'fade' | 'fade_from_bottom' | 'flip' | 'none' | 'simple_push' | 'slide_from_bottom' | 'slide_from_right' | 'slide_from_left' | 'ios' | 'ios_from_right' | 'ios_from_left';
14
+ export type StackAnimationTypes = 'default' | 'fade' | 'fade_from_bottom' | 'flip' | 'none' | 'simple_push' | 'slide_from_bottom' | 'slide_from_right' | 'slide_from_left' | 'ios_from_right' | 'ios_from_left';
15
15
  export type BlurEffectTypes = 'extraLight' | 'light' | 'dark' | 'regular' | 'prominent' | 'systemUltraThinMaterial' | 'systemThinMaterial' | 'systemMaterial' | 'systemThickMaterial' | 'systemChromeMaterial' | 'systemUltraThinMaterialLight' | 'systemThinMaterialLight' | 'systemMaterialLight' | 'systemThickMaterialLight' | 'systemChromeMaterialLight' | 'systemUltraThinMaterialDark' | 'systemThinMaterialDark' | 'systemMaterialDark' | 'systemThickMaterialDark' | 'systemChromeMaterialDark';
16
16
  export type ScreenReplaceTypes = 'push' | 'pop';
17
17
  export type SwipeDirectionTypes = 'vertical' | 'horizontal';
@@ -221,13 +221,19 @@ export interface ScreenProps extends ViewProps {
221
221
  unstable_screenStyle?: Pick<ViewStyle, 'backgroundColor'>;
222
222
  /**
223
223
  * Describes heights where a sheet can rest.
224
- * Works only when `stackPresentation` is set to `formSheet`.
224
+ * Works only when `presentation` is set to `formSheet`.
225
225
  *
226
226
  * Heights should be described as fraction (a number from `[0, 1]` interval) of screen height / maximum detent height.
227
- * There is also possibility to specify `[-1]` literal array with single element, which intets to set the sheet height
227
+ * You can pass an array of ascending values each defining allowed sheet detent. iOS accepts any number of detents,
228
+ * while **Android is limited to three**.
229
+ *
230
+ * There is also possibility to specify `fitToContents` literal, which intents to set the sheet height
228
231
  * to the height of its contents.
229
232
  *
230
- * Please note that the array **must** be sorted in ascending order.
233
+ * Please note that the array **must** be sorted in ascending order. This invariant is verified only in developement mode,
234
+ * where violation results in error.
235
+ *
236
+ * **Android is limited to up 3 values in the array** -- any surplus values, beside first three are ignored.
231
237
  *
232
238
  * There are also legacy & **deprecated** options available:
233
239
  *
@@ -235,7 +241,9 @@ export interface ScreenProps extends ViewProps {
235
241
  * * 'large' - corresponds to `[1.0]` detent value, maximum height,
236
242
  * * 'all' - corresponds to `[0.5, 1.0]` value, the name is deceiving due to compatibility reasons.
237
243
  *
238
- * Defaults to `[1.0]` literal.
244
+ * These are provided solely for **temporary** backward compatibility and are destined for removal in future versions.
245
+ *
246
+ * Defaults to `[1.0]`.
239
247
  */
240
248
  sheetAllowedDetents?: number[] | 'fitToContents' | 'medium' | 'large' | 'all';
241
249
  /**
@@ -282,24 +290,34 @@ export interface ScreenProps extends ViewProps {
282
290
  * This prop can be set to an number, which indicates index of detent in `sheetAllowedDetents` array for which
283
291
  * there won't be a dimming view beneath the sheet.
284
292
  *
293
+ * If the specified index is out of bounds of `sheetAllowedDetents` array, in dev environment mode error will be thrown,
294
+ * in production the value will be reset to default value.
295
+ *
285
296
  * Additionaly there are following options available:
286
297
  *
287
298
  * * `none` - there will be dimming view for all detents levels,
288
- * * `largest` - there won't be a dimming view for any detent level.
299
+ * * `last` - there won't be a dimming view for any detent level.
289
300
  *
290
301
  * There also legacy & **deprecated** prop values available: `medium`, `large` (don't confuse with `largest`), `all`, which work in tandem with
291
302
  * corresponding legacy prop values for `sheetAllowedDetents` prop.
292
303
  *
304
+ * These are provided solely for **temporary** backward compatibility and are destined for removal in future versions.
305
+ *
293
306
  * Defaults to `none`, indicating that the dimming view should be always present.
294
307
  */
295
- sheetLargestUndimmedDetent?: number | 'none' | 'largest' | 'medium' | 'large' | 'all';
308
+ sheetLargestUndimmedDetentIndex?: number | 'none' | 'last' | 'medium' | 'large' | 'all';
296
309
  /**
297
310
  * Index of the detent the sheet should expand to after being opened.
298
311
  * Works only when `stackPresentation` is set to `formSheet`.
299
312
  *
313
+ * If the specified index is out of bounds of `sheetAllowedDetents` array, in dev environment more error will be thrown,
314
+ * in production the value will be reset to default value.
315
+ *
316
+ * Additionaly there is `last` value available, when set the sheet will expand initially to last (largest) detent.
317
+ *
300
318
  * Defaults to `0` - which represents first detent in the detents array.
301
319
  */
302
- sheetInitialDetent?: number;
320
+ sheetInitialDetentIndex?: number | 'last';
303
321
  /**
304
322
  * How the screen should appear/disappear when pushed or popped at the top of the stack.
305
323
  * The following values are currently supported:
@@ -311,7 +329,6 @@ export interface ScreenProps extends ViewProps {
311
329
  * - `slide_from_bottom` – performs a slide from bottom animation
312
330
  * - "slide_from_right" - slide in the new screen from right to left (Android only, resolves to default transition on iOS)
313
331
  * - "slide_from_left" - slide in the new screen from left to right
314
- * - "ios" - @deprecated iOS like slide in animation. pushes in the new screen from right to left (Android only, resolves to default transition on iOS) (will be removed in v4.0.0 in favor of `ios_from_right`)
315
332
  * - "ios_from_right" - iOS like slide in animation. pushes in the new screen from right to left (Android only, resolves to default transition on iOS)
316
333
  * - "ios_from_left" - iOS like slide in animation. pushes in the new screen from left to right (Android only, resolves to default transition on iOS)
317
334
  * - "none" – the screen appears/dissapears without an animation
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.tsx"],"names":[],"mappings":"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"}
@@ -287,9 +287,11 @@ Defaults to system default.
287
287
 
288
288
  #### `sheetInitialDetent`
289
289
 
290
- Initial detent for the sheet.
290
+ Index of the detent the sheet should expand to after being opened.
291
291
  Works only when `presentation` is set to `formSheet`.
292
292
 
293
+ Defaults to `0` - which represents first detent in the detents array.
294
+
293
295
  #### `sheetGrabberVisible` (iOS only)
294
296
 
295
297
  Boolean indicating whether the sheet shows a grabber at the top.
@@ -326,7 +328,6 @@ How the given screen should appear/disappear when pushed or popped at the top of
326
328
  - `slide_from_bottom` – performs a slide from bottom animation
327
329
  - `slide_from_right` - slide in the new screen from right to left (Android only, resolves to default transition on iOS)
328
330
  - `slide_from_left` - slide in the new screen from left to right
329
- - `"ios"` - @deprecated iOS like slide in animation. pushes in the new screen from right to left (Android only, resolves to default transition on iOS) (will be removed in v4.0.0 in favor of `ios_from_right`)
330
331
  - `"ios_from_right"` - iOS like slide in animation. pushes in the new screen from right to left (Android only, resolves to default transition on iOS)
331
332
  - `"ios_from_left"` - iOS like slide in animation. pushes in the new screen from left to right (Android only, resolves to default transition on iOS)
332
333
  - `none` - the screen appears/disappears without an animation.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-screens",
3
- "version": "4.0.0-beta.1",
3
+ "version": "4.0.0-beta.11",
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,12 +16,21 @@ 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
- export const NativeScreen: React.ComponentType<ScreenProps> =
21
- ScreenNativeComponent as React.ComponentType<ScreenProps>;
21
+ type NativeScreenProps = Omit<
22
+ ScreenProps,
23
+ 'sheetInitialDetentIndex' | 'sheetLargestUndimmedDetentIndex'
24
+ > & {
25
+ sheetInitialDetent: number;
26
+ sheetLargestUndimmedDetent: number;
27
+ };
28
+
29
+ export const NativeScreen: React.ComponentType<NativeScreenProps> =
30
+ ScreenNativeComponent as React.ComponentType<NativeScreenProps>;
22
31
  const AnimatedNativeScreen = Animated.createAnimatedComponent(NativeScreen);
23
32
  const AnimatedNativeModalScreen = Animated.createAnimatedComponent(
24
- ModalScreenNativeComponent as React.ComponentType<ScreenProps>,
33
+ ModalScreenNativeComponent as React.ComponentType<NativeScreenProps>,
25
34
  );
26
35
 
27
36
  // Incomplete type, all accessible properties available at:
@@ -52,12 +61,33 @@ const SHEET_COMPAT_ALL = [0.5, 1.0];
52
61
  const SHEET_DIMMED_ALWAYS = -1;
53
62
  // const SHEET_DIMMED_NEVER = 9999;
54
63
 
64
+ function assertDetentsArrayIsSorted(array: number[]) {
65
+ for (let i = 1; i < array.length; i++) {
66
+ if (array[i - 1] > array[i]) {
67
+ throw new Error(
68
+ '[RNScreens] The detent array is not sorted in ascending order!',
69
+ );
70
+ }
71
+ }
72
+ }
73
+
55
74
  // These exist to transform old 'legacy' values used by the formsheet API to the new API shape.
56
75
  // We can get rid of it, once we get rid of support for legacy values: 'large', 'medium', 'all'.
57
76
  function resolveSheetAllowedDetents(
58
77
  allowedDetentsCompat: ScreenProps['sheetAllowedDetents'],
59
78
  ): number[] {
60
79
  if (Array.isArray(allowedDetentsCompat)) {
80
+ if (Platform.OS === 'android' && allowedDetentsCompat.length > 3) {
81
+ if (__DEV__) {
82
+ console.warn(
83
+ '[RNScreens] Sheets API on Android do accept only up to 3 values. Any surplus value are ignored.',
84
+ );
85
+ }
86
+ allowedDetentsCompat = allowedDetentsCompat.slice(0, 3);
87
+ }
88
+ if (__DEV__) {
89
+ assertDetentsArrayIsSorted(allowedDetentsCompat);
90
+ }
61
91
  return allowedDetentsCompat;
62
92
  } else if (allowedDetentsCompat === 'fitToContents') {
63
93
  return SHEET_FIT_TO_CONTENTS;
@@ -74,13 +104,22 @@ function resolveSheetAllowedDetents(
74
104
  }
75
105
 
76
106
  function resolveSheetLargestUndimmedDetent(
77
- lud: ScreenProps['sheetLargestUndimmedDetent'],
78
- largestDetentIndex: number,
107
+ lud: ScreenProps['sheetLargestUndimmedDetentIndex'],
108
+ lastDetentIndex: number,
79
109
  ): number {
80
110
  if (typeof lud === 'number') {
111
+ if (!isIndexInClosedRange(lud, SHEET_DIMMED_ALWAYS, lastDetentIndex)) {
112
+ if (__DEV__) {
113
+ throw new Error(
114
+ "[RNScreens] Provided value of 'sheetLargestUndimmedDetentIndex' prop is out of bounds of 'sheetAllowedDetents' array.",
115
+ );
116
+ }
117
+ // Return default in production
118
+ return SHEET_DIMMED_ALWAYS;
119
+ }
81
120
  return lud;
82
- } else if (lud === 'largest') {
83
- return largestDetentIndex;
121
+ } else if (lud === 'last') {
122
+ return lastDetentIndex;
84
123
  } else if (lud === 'none' || lud === 'all') {
85
124
  return SHEET_DIMMED_ALWAYS;
86
125
  } else if (lud === 'large') {
@@ -93,10 +132,41 @@ function resolveSheetLargestUndimmedDetent(
93
132
  }
94
133
  }
95
134
 
135
+ function resolveSheetInitialDetentIndex(
136
+ index: ScreenProps['sheetInitialDetentIndex'],
137
+ lastDetentIndex: number,
138
+ ): number {
139
+ if (index === 'last') {
140
+ index = lastDetentIndex;
141
+ } else if (index == null) {
142
+ // Intentional check for undefined & null ^
143
+ index = 0;
144
+ }
145
+ if (!isIndexInClosedRange(index, 0, lastDetentIndex)) {
146
+ if (__DEV__) {
147
+ throw new Error(
148
+ "[RNScreens] Provided value of 'sheetInitialDetentIndex' prop is out of bounds of 'sheetAllowedDetents' array.",
149
+ );
150
+ }
151
+ // Return default in production
152
+ return 0;
153
+ }
154
+ return index;
155
+ }
156
+
157
+ function isIndexInClosedRange(
158
+ value: number,
159
+ lowerBound: number,
160
+ upperBound: number,
161
+ ): boolean {
162
+ return Number.isInteger(value) && value >= lowerBound && value <= upperBound;
163
+ }
164
+
96
165
  export const InnerScreen = React.forwardRef<View, ScreenProps>(
97
166
  function InnerScreen(props, ref) {
98
167
  const innerRef = React.useRef<ViewConfig | null>(null);
99
168
  React.useImperativeHandle(ref, () => innerRef.current!, []);
169
+ const prevActivityState = usePrevious(props.activityState);
100
170
 
101
171
  const setRef = (ref: ViewConfig) => {
102
172
  innerRef.current = ref;
@@ -118,13 +188,12 @@ export const InnerScreen = React.forwardRef<View, ScreenProps>(
118
188
  const {
119
189
  // formSheet presentation related props
120
190
  sheetAllowedDetents = [1.0],
121
- sheetLargestUndimmedDetent = SHEET_DIMMED_ALWAYS,
191
+ sheetLargestUndimmedDetentIndex = SHEET_DIMMED_ALWAYS,
122
192
  sheetGrabberVisible = false,
123
193
  sheetCornerRadius = -1.0,
124
194
  sheetExpandsWhenScrolledToEdge = true,
125
195
  sheetElevation = 24,
126
- sheetInitialDetent = 0,
127
-
196
+ sheetInitialDetentIndex = 0,
128
197
  // Other
129
198
  stackPresentation,
130
199
  } = rest;
@@ -134,9 +203,13 @@ export const InnerScreen = React.forwardRef<View, ScreenProps>(
134
203
  resolveSheetAllowedDetents(sheetAllowedDetents);
135
204
  const resolvedSheetLargestUndimmedDetent =
136
205
  resolveSheetLargestUndimmedDetent(
137
- sheetLargestUndimmedDetent,
206
+ sheetLargestUndimmedDetentIndex,
138
207
  resolvedSheetAllowedDetents.length - 1,
139
208
  );
209
+ const resolvedSheetInitialDetentIndex = resolveSheetInitialDetentIndex(
210
+ sheetInitialDetentIndex,
211
+ resolvedSheetAllowedDetents.length - 1,
212
+ );
140
213
  // Due to how Yoga resolves layout, we need to have different components for modal nad non-modal screens
141
214
  const AnimatedScreen =
142
215
  Platform.OS === 'android' ||
@@ -168,6 +241,18 @@ export const InnerScreen = React.forwardRef<View, ScreenProps>(
168
241
  activityState = active !== 0 ? 2 : 0; // in the new version, we need one of the screens to have value of 2 after the transition
169
242
  }
170
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
+
171
256
  const handleRef = (ref: ViewConfig) => {
172
257
  if (ref?.viewConfig?.validAttributes?.style) {
173
258
  ref.viewConfig.validAttributes.style = {
@@ -200,7 +285,7 @@ export const InnerScreen = React.forwardRef<View, ScreenProps>(
200
285
  sheetGrabberVisible={sheetGrabberVisible}
201
286
  sheetCornerRadius={sheetCornerRadius}
202
287
  sheetExpandsWhenScrolledToEdge={sheetExpandsWhenScrolledToEdge}
203
- sheetInitialDetent={sheetInitialDetent}
288
+ sheetInitialDetent={resolvedSheetInitialDetentIndex}
204
289
  gestureResponseDistance={{
205
290
  start: gestureResponseDistance?.start ?? -1,
206
291
  end: gestureResponseDistance?.end ?? -1,
@@ -0,0 +1,6 @@
1
+ import { View } from 'react-native';
2
+
3
+ export const NativeScreenContentWrapper = View;
4
+
5
+ const ScreenContentWrapper = View;
6
+ export default ScreenContentWrapper;
@@ -0,0 +1,6 @@
1
+ import { View } from 'react-native';
2
+
3
+ export const NativeScreenFooter = View;
4
+
5
+ const ScreenFooter = View;
6
+ export default ScreenFooter;
@@ -12,12 +12,22 @@ import { Image, ImageProps, StyleSheet, ViewProps } from 'react-native';
12
12
  import ScreenStackHeaderConfigNativeComponent from '../fabric/ScreenStackHeaderConfigNativeComponent';
13
13
  import ScreenStackHeaderSubviewNativeComponent from '../fabric/ScreenStackHeaderSubviewNativeComponent';
14
14
 
15
- export const ScreenStackHeaderConfig: React.ComponentType<ScreenStackHeaderConfigProps> =
16
- ScreenStackHeaderConfigNativeComponent as any;
17
15
  export const ScreenStackHeaderSubview: React.ComponentType<
18
16
  React.PropsWithChildren<ViewProps & { type?: HeaderSubviewTypes }>
19
17
  > = ScreenStackHeaderSubviewNativeComponent as any;
20
18
 
19
+ export function ScreenStackHeaderConfig(
20
+ props: ScreenStackHeaderConfigProps,
21
+ ): React.JSX.Element {
22
+ return (
23
+ <ScreenStackHeaderConfigNativeComponent
24
+ {...props}
25
+ style={styles.headerConfig}
26
+ pointerEvents="box-none"
27
+ />
28
+ );
29
+ }
30
+
21
31
  export const ScreenStackHeaderBackButtonImage = (
22
32
  props: ImageProps,
23
33
  ): JSX.Element => (
@@ -28,33 +38,45 @@ export const ScreenStackHeaderBackButtonImage = (
28
38
 
29
39
  export const ScreenStackHeaderRightView = (
30
40
  props: React.PropsWithChildren<ViewProps>,
31
- ): JSX.Element => (
32
- <ScreenStackHeaderSubview
33
- {...props}
34
- type="right"
35
- style={styles.headerSubview}
36
- />
37
- );
41
+ ): JSX.Element => {
42
+ const { style, ...rest } = props;
43
+
44
+ return (
45
+ <ScreenStackHeaderSubview
46
+ {...rest}
47
+ type="right"
48
+ style={[styles.headerSubview, style]}
49
+ />
50
+ );
51
+ };
38
52
 
39
53
  export const ScreenStackHeaderLeftView = (
40
54
  props: React.PropsWithChildren<ViewProps>,
41
- ): JSX.Element => (
42
- <ScreenStackHeaderSubview
43
- {...props}
44
- type="left"
45
- style={styles.headerSubview}
46
- />
47
- );
55
+ ): JSX.Element => {
56
+ const { style, ...rest } = props;
57
+
58
+ return (
59
+ <ScreenStackHeaderSubview
60
+ {...rest}
61
+ type="left"
62
+ style={[styles.headerSubview, style]}
63
+ />
64
+ );
65
+ };
48
66
 
49
67
  export const ScreenStackHeaderCenterView = (
50
68
  props: React.PropsWithChildren<ViewProps>,
51
- ): JSX.Element => (
52
- <ScreenStackHeaderSubview
53
- {...props}
54
- type="center"
55
- style={styles.headerSubview}
56
- />
57
- );
69
+ ): JSX.Element => {
70
+ const { style, ...rest } = props;
71
+
72
+ return (
73
+ <ScreenStackHeaderSubview
74
+ {...rest}
75
+ type="center"
76
+ style={[styles.headerSubviewCenter, style]}
77
+ />
78
+ );
79
+ };
58
80
 
59
81
  export const ScreenStackHeaderSearchBarView = (
60
82
  props: React.PropsWithChildren<SearchBarProps>,
@@ -68,11 +90,22 @@ export const ScreenStackHeaderSearchBarView = (
68
90
 
69
91
  const styles = StyleSheet.create({
70
92
  headerSubview: {
71
- position: 'absolute',
72
- top: 0,
73
- right: 0,
74
93
  flexDirection: 'row',
75
94
  alignItems: 'center',
76
95
  justifyContent: 'center',
77
96
  },
97
+ headerSubviewCenter: {
98
+ flexDirection: 'row',
99
+ alignItems: 'center',
100
+ justifyContent: 'center',
101
+ flexShrink: 1,
102
+ },
103
+ headerConfig: {
104
+ position: 'absolute',
105
+ top: '-100%',
106
+ width: '100%',
107
+ flexDirection: 'row',
108
+ justifyContent: 'space-between',
109
+ alignItems: 'center',
110
+ },
78
111
  });
@@ -0,0 +1,11 @@
1
+ import { useEffect, useRef } from 'react';
2
+
3
+ export function usePrevious<T>(state: T): T | undefined {
4
+ const ref = useRef<T>();
5
+
6
+ useEffect(() => {
7
+ ref.current = state;
8
+ });
9
+
10
+ return ref.current;
11
+ }
@@ -75,6 +75,7 @@ export interface NativeProps extends ViewProps {
75
75
  sheetGrabberVisible?: WithDefault<boolean, false>;
76
76
  sheetCornerRadius?: WithDefault<Float, -1.0>;
77
77
  sheetExpandsWhenScrolledToEdge?: WithDefault<boolean, false>;
78
+ sheetInitialDetent?: WithDefault<Int32, 0>;
78
79
  customAnimationOnSwipe?: boolean;
79
80
  fullScreenSwipeEnabled?: boolean;
80
81
  fullScreenSwipeShadowEnabled?: boolean;
@@ -58,7 +58,6 @@ type StackAnimation =
58
58
  | 'slide_from_left'
59
59
  | 'slide_from_bottom'
60
60
  | 'fade_from_bottom'
61
- | 'ios'
62
61
  | 'ios_from_right'
63
62
  | 'ios_from_left';
64
63
 
@@ -75,5 +75,7 @@ export interface NativeProps extends ViewProps {
75
75
 
76
76
  export default codegenNativeComponent<NativeProps>(
77
77
  'RNSScreenStackHeaderConfig',
78
- {},
78
+ {
79
+ interfaceOnly: true,
80
+ },
79
81
  );
@@ -18,5 +18,7 @@ export interface NativeProps extends ViewProps {
18
18
 
19
19
  export default codegenNativeComponent<NativeProps>(
20
20
  'RNSScreenStackHeaderSubview',
21
- {},
21
+ {
22
+ interfaceOnly: true,
23
+ },
22
24
  );
@@ -418,7 +418,7 @@ export type NativeStackNavigationOptions = {
418
418
  *
419
419
  * Defaults to `0` - which represents first detent in the detents array.
420
420
  */
421
- sheetInitialDetent?: ScreenProps['sheetInitialDetent'];
421
+ sheetInitialDetentIndex?: ScreenProps['sheetInitialDetentIndex'];
422
422
  /**
423
423
  * The largest sheet detent for which a view underneath won't be dimmed.
424
424
  * Works only when `stackPresentation` is set to `formSheet`.
@@ -436,7 +436,7 @@ export type NativeStackNavigationOptions = {
436
436
  *
437
437
  * Defaults to `none`, indicating that the dimming view should be always present.
438
438
  */
439
- sheetLargestUndimmedDetent?: ScreenProps['sheetLargestUndimmedDetent'];
439
+ sheetLargestUndimmedDetentIndex?: ScreenProps['sheetLargestUndimmedDetentIndex'];
440
440
  /**
441
441
  * How the screen should appear/disappear when pushed or popped at the top of the stack.
442
442
  * The following values are currently supported:
@@ -448,7 +448,6 @@ export type NativeStackNavigationOptions = {
448
448
  * - "slide_from_bottom" – performs a slide from bottom animation
449
449
  * - "slide_from_right" - slide in the new screen from right to left (Android only, resolves to default transition on iOS)
450
450
  * - "slide_from_left" - slide in the new screen from left to right
451
- * - "ios" - @deprecated iOS like slide in animation. pushes in the new screen from right to left (Android only, resolves to default transition on iOS) (will be removed in v4.0.0 in favor of `ios_from_right`)
452
451
  * - "ios_from_right" - iOS like slide in animation. pushes in the new screen from right to left (Android only, resolves to default transition on iOS)
453
452
  * - "ios_from_left" - iOS like slide in animation. pushes in the new screen from left to right (Android only, resolves to default transition on iOS)
454
453
  * - "none" – the screen appears/dissapears without an animation
@@ -195,12 +195,12 @@ const RouteView = ({
195
195
  headerShown,
196
196
  hideKeyboardOnSwipe,
197
197
  homeIndicatorHidden,
198
- sheetLargestUndimmedDetent = 'none',
198
+ sheetLargestUndimmedDetentIndex = 'none',
199
199
  sheetGrabberVisible = false,
200
200
  sheetCornerRadius = -1.0,
201
201
  sheetElevation = 24,
202
202
  sheetExpandsWhenScrolledToEdge = true,
203
- sheetInitialDetent = 0,
203
+ sheetInitialDetentIndex = 0,
204
204
  nativeBackButtonDismissalEnabled = false,
205
205
  navigationBarColor,
206
206
  navigationBarTranslucent,
@@ -318,9 +318,9 @@ const RouteView = ({
318
318
  hasLargeHeader={hasLargeHeader}
319
319
  style={[StyleSheet.absoluteFill, unstable_screenStyle]}
320
320
  sheetAllowedDetents={sheetAllowedDetents}
321
- sheetLargestUndimmedDetent={sheetLargestUndimmedDetent}
321
+ sheetLargestUndimmedDetentIndex={sheetLargestUndimmedDetentIndex}
322
322
  sheetGrabberVisible={sheetGrabberVisible}
323
- sheetInitialDetent={sheetInitialDetent}
323
+ sheetInitialDetentIndex={sheetInitialDetentIndex}
324
324
  sheetCornerRadius={sheetCornerRadius}
325
325
  sheetElevation={sheetElevation}
326
326
  sheetExpandsWhenScrolledToEdge={sheetExpandsWhenScrolledToEdge}
@@ -355,7 +355,6 @@ const RouteView = ({
355
355
  });
356
356
  }}
357
357
  onWillAppear={() => {
358
- console.log(`onWillAppear/transitionStart route: ${route.key}`);
359
358
  navigation.emit({
360
359
  type: 'transitionStart',
361
360
  data: { closing: false },
@@ -363,7 +362,6 @@ const RouteView = ({
363
362
  });
364
363
  }}
365
364
  onWillDisappear={() => {
366
- console.log(`onWillDisappear/transitionStart route: ${route.key}`);
367
365
  navigation.emit({
368
366
  type: 'transitionStart',
369
367
  data: { closing: true },
@@ -371,12 +369,10 @@ const RouteView = ({
371
369
  });
372
370
  }}
373
371
  onAppear={() => {
374
- console.log(`onAppear/appear route: ${route.key}`);
375
372
  navigation.emit({
376
373
  type: 'appear',
377
374
  target: route.key,
378
375
  });
379
- console.log(`onAppear/transitionEnd route: ${route.key}`);
380
376
  navigation.emit({
381
377
  type: 'transitionEnd',
382
378
  data: { closing: false },
@@ -384,7 +380,6 @@ const RouteView = ({
384
380
  });
385
381
  }}
386
382
  onDisappear={() => {
387
- console.log(`onDisappear/transitionEnd route: ${route.key}`);
388
383
  navigation.emit({
389
384
  type: 'transitionEnd',
390
385
  data: { closing: true },
@@ -404,7 +399,6 @@ const RouteView = ({
404
399
  }
405
400
  }}
406
401
  onDismissed={e => {
407
- console.log(`onDismissed/dismiss route: ${route.key}`);
408
402
  navigation.emit({
409
403
  type: 'dismiss',
410
404
  target: route.key,