react-native-screens 3.9.0 → 3.10.0

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 (77) hide show
  1. package/README.md +38 -0
  2. package/android/src/main/java/com/swmansion/rnscreens/CustomSearchView.kt +71 -0
  3. package/android/src/main/java/com/swmansion/rnscreens/CustomToolbar.kt +7 -0
  4. package/android/src/main/java/com/swmansion/rnscreens/FragmentBackPressOverrider.kt +29 -0
  5. package/android/src/main/java/com/swmansion/rnscreens/RNScreensPackage.kt +2 -1
  6. package/android/src/main/java/com/swmansion/rnscreens/Screen.kt +7 -41
  7. package/android/src/main/java/com/swmansion/rnscreens/ScreenFragment.kt +19 -1
  8. package/android/src/main/java/com/swmansion/rnscreens/ScreenStack.kt +29 -2
  9. package/android/src/main/java/com/swmansion/rnscreens/ScreenStackFragment.kt +76 -12
  10. package/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderConfig.kt +13 -4
  11. package/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderConfigViewManager.kt +8 -0
  12. package/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderSubview.kt +7 -1
  13. package/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderSubviewManager.kt +1 -0
  14. package/android/src/main/java/com/swmansion/rnscreens/SearchBarManager.kt +90 -0
  15. package/android/src/main/java/com/swmansion/rnscreens/SearchBarView.kt +150 -0
  16. package/android/src/main/java/com/swmansion/rnscreens/SearchViewFormatter.kt +40 -0
  17. package/createNativeStackNavigator/README.md +33 -9
  18. package/ios/RNSScreen.m +4 -0
  19. package/ios/RNSScreenStack.m +7 -6
  20. package/lib/commonjs/index.js +17 -1
  21. package/lib/commonjs/index.js.map +1 -1
  22. package/lib/commonjs/index.native.js +66 -18
  23. package/lib/commonjs/index.native.js.map +1 -1
  24. package/lib/commonjs/native-stack/utils/useBackPressSubscription.js +67 -0
  25. package/lib/commonjs/native-stack/utils/useBackPressSubscription.js.map +1 -0
  26. package/lib/commonjs/native-stack/views/HeaderConfig.js +46 -4
  27. package/lib/commonjs/native-stack/views/HeaderConfig.js.map +1 -1
  28. package/lib/commonjs/reanimated/ReanimatedNativeStackScreen.js +60 -0
  29. package/lib/commonjs/reanimated/ReanimatedNativeStackScreen.js.map +1 -0
  30. package/lib/commonjs/reanimated/ReanimatedScreen.js +7 -79
  31. package/lib/commonjs/reanimated/ReanimatedScreen.js.map +1 -1
  32. package/lib/commonjs/reanimated/ReanimatedScreenProvider.js +61 -0
  33. package/lib/commonjs/reanimated/ReanimatedScreenProvider.js.map +1 -0
  34. package/lib/commonjs/reanimated/index.js +2 -2
  35. package/lib/commonjs/reanimated/index.js.map +1 -1
  36. package/lib/commonjs/utils.js +20 -0
  37. package/lib/commonjs/utils.js.map +1 -0
  38. package/lib/module/index.js +1 -0
  39. package/lib/module/index.js.map +1 -1
  40. package/lib/module/index.native.js +65 -19
  41. package/lib/module/index.native.js.map +1 -1
  42. package/lib/module/native-stack/utils/useBackPressSubscription.js +50 -0
  43. package/lib/module/native-stack/utils/useBackPressSubscription.js.map +1 -0
  44. package/lib/module/native-stack/views/HeaderConfig.js +46 -5
  45. package/lib/module/native-stack/views/HeaderConfig.js.map +1 -1
  46. package/lib/module/reanimated/ReanimatedNativeStackScreen.js +40 -0
  47. package/lib/module/reanimated/ReanimatedNativeStackScreen.js.map +1 -0
  48. package/lib/module/reanimated/ReanimatedScreen.js +6 -73
  49. package/lib/module/reanimated/ReanimatedScreen.js.map +1 -1
  50. package/lib/module/reanimated/ReanimatedScreenProvider.js +49 -0
  51. package/lib/module/reanimated/ReanimatedScreenProvider.js.map +1 -0
  52. package/lib/module/reanimated/index.js +1 -1
  53. package/lib/module/reanimated/index.js.map +1 -1
  54. package/lib/module/utils.js +8 -0
  55. package/lib/module/utils.js.map +1 -0
  56. package/lib/typescript/index.d.ts +1 -0
  57. package/lib/typescript/native-stack/types.d.ts +0 -2
  58. package/lib/typescript/native-stack/utils/useBackPressSubscription.d.ts +16 -0
  59. package/lib/typescript/reanimated/ReanimatedNativeStackScreen.d.ts +5 -0
  60. package/lib/typescript/reanimated/ReanimatedScreen.d.ts +5 -2
  61. package/lib/typescript/reanimated/ReanimatedScreenProvider.d.ts +2 -0
  62. package/lib/typescript/reanimated/index.d.ts +1 -1
  63. package/lib/typescript/types.d.ts +46 -1
  64. package/lib/typescript/utils.d.ts +2 -0
  65. package/native-stack/README.md +31 -5
  66. package/package.json +2 -1
  67. package/src/index.native.tsx +94 -36
  68. package/src/index.tsx +4 -0
  69. package/src/native-stack/types.tsx +0 -2
  70. package/src/native-stack/utils/useBackPressSubscription.tsx +66 -0
  71. package/src/native-stack/views/HeaderConfig.tsx +46 -3
  72. package/src/reanimated/ReanimatedNativeStackScreen.tsx +61 -0
  73. package/src/reanimated/ReanimatedScreen.tsx +6 -84
  74. package/src/reanimated/ReanimatedScreenProvider.tsx +42 -0
  75. package/src/reanimated/index.tsx +1 -1
  76. package/src/types.tsx +46 -1
  77. package/src/utils.ts +12 -0
package/src/utils.ts ADDED
@@ -0,0 +1,12 @@
1
+ import { BackHandler, Platform } from 'react-native';
2
+
3
+ export const isSearchBarAvailableForCurrentPlatform = [
4
+ 'ios',
5
+ 'android',
6
+ ].includes(Platform.OS);
7
+
8
+ export function executeNativeBackPress() {
9
+ // This function invokes the native back press event
10
+ BackHandler.exitApp();
11
+ return true;
12
+ }