react-native-screens 5.0.0-alpha.1 → 5.0.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (436) hide show
  1. package/README.md +1 -2
  2. package/RNScreens.podspec +2 -6
  3. package/android/build.gradle +26 -1
  4. package/android/src/fabric/java/com/swmansion/rnscreens/NativeProxy.kt +5 -0
  5. package/android/src/main/java/com/swmansion/rnscreens/RNScreensPackage.kt +2 -2
  6. package/android/src/main/java/com/swmansion/rnscreens/legacy/Screen.kt +22 -6
  7. package/android/src/main/java/com/swmansion/rnscreens/legacy/ScreenStackFragment.kt +39 -10
  8. package/android/src/main/java/com/swmansion/rnscreens/legacy/ScreenViewManager.kt +5 -0
  9. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetAppearanceCoordinator.kt → native/coordinator/FormSheetAppearanceCoordinator.kt} +2 -1
  10. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetBehaviorController.kt → native/coordinator/FormSheetBehaviorController.kt} +25 -1
  11. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetDimensionsCoordinator.kt → native/coordinator/FormSheetDimensionsCoordinator.kt} +4 -1
  12. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/native/coordinator/FormSheetNativeDismissCoordinator.kt +50 -0
  13. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetContainer.kt → native/core/FormSheetContainer.kt} +1 -1
  14. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetDialog.kt → native/core/FormSheetDialog.kt} +24 -1
  15. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetDialogManager.kt → native/core/FormSheetDialogManager.kt} +25 -1
  16. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetContentSizeChangeDelegate.kt → native/interfaces/FormSheetContentSizeChangeDelegate.kt} +1 -1
  17. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetContentSizeChangeProvider.kt → native/interfaces/FormSheetContentSizeChangeProvider.kt} +1 -1
  18. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetDialogEventEmitter.kt → native/interfaces/FormSheetDialogEventEmitter.kt} +3 -1
  19. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetConfig.kt → native/model/FormSheetConfig.kt} +5 -1
  20. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetDetents.kt → native/model/FormSheetDetents.kt} +1 -1
  21. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetAnimatorFactory.kt → native/presentation/FormSheetAnimatorFactory.kt} +1 -1
  22. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetPresentationManager.kt → native/presentation/FormSheetPresentationManager.kt} +3 -12
  23. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetPresentationState.kt → native/presentation/FormSheetPresentationState.kt} +1 -1
  24. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetContentWrapper.kt → react/contentwrapper/FormSheetContentWrapper.kt} +3 -1
  25. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetContentWrapperViewManager.kt → react/contentwrapper/FormSheetContentWrapperViewManager.kt} +1 -1
  26. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetDetentChangedEvent.kt → react/event/FormSheetDetentChangedEvent.kt} +1 -1
  27. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetDidAppearEvent.kt → react/event/FormSheetDidAppearEvent.kt} +1 -1
  28. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetDidDisappearEvent.kt → react/event/FormSheetDidDisappearEvent.kt} +1 -1
  29. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetNativeDismissEvent.kt → react/event/FormSheetNativeDismissEvent.kt} +1 -1
  30. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/react/event/FormSheetNativeDismissPreventedEvent.kt +29 -0
  31. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetSyncFlushEvent.kt → react/event/FormSheetSyncFlushEvent.kt} +1 -1
  32. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetWillAppearEvent.kt → react/event/FormSheetWillAppearEvent.kt} +1 -1
  33. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetWillDisappearEvent.kt → react/event/FormSheetWillDisappearEvent.kt} +1 -1
  34. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetContentView.kt → react/host/FormSheetContentView.kt} +3 -1
  35. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetHost.kt → react/host/FormSheetHost.kt} +6 -1
  36. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetHostEventEmitter.kt → react/host/FormSheetHostEventEmitter.kt} +16 -1
  37. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/{FormSheetHostViewManager.kt → react/host/FormSheetHostViewManager.kt} +11 -2
  38. package/android/src/main/java/com/swmansion/rnscreens/stack/header/StackHeaderApplicator.kt +30 -418
  39. package/android/src/main/java/com/swmansion/rnscreens/stack/header/StackHeaderCoordinatorLayout.kt +36 -113
  40. package/android/src/main/java/com/swmansion/rnscreens/stack/header/StackHeaderFrameSynchronizer.kt +63 -0
  41. package/android/src/main/java/com/swmansion/rnscreens/stack/header/{StackHeaderAppBarLayout.kt → appbar/StackHeaderAppBarLayout.kt} +1 -6
  42. package/android/src/main/java/com/swmansion/rnscreens/stack/header/{StackHeaderAppBarLayoutBehavior.kt → appbar/StackHeaderAppBarLayoutBehavior.kt} +1 -1
  43. package/android/src/main/java/com/swmansion/rnscreens/stack/header/{StackHeaderScrollingViewBehavior.kt → appbar/StackHeaderScrollingViewBehavior.kt} +1 -1
  44. package/android/src/main/java/com/swmansion/rnscreens/stack/header/config/StackHeaderConfig.kt +28 -6
  45. package/android/src/main/java/com/swmansion/rnscreens/stack/header/config/StackHeaderConfigViewManager.kt +8 -1
  46. package/android/src/main/java/com/swmansion/rnscreens/stack/header/config/StackHeaderConfigurationObserver.kt +1 -1
  47. package/android/src/main/java/com/swmansion/rnscreens/stack/header/config/StackHeaderConfigurationProviding.kt +2 -1
  48. package/android/src/main/java/com/swmansion/rnscreens/stack/header/config/StackHeaderInvalidationFlags.kt +2 -1
  49. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/StackHeaderToolbarMenuApplicator.kt +448 -0
  50. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/StackHeaderToolbarMenuMapper.kt +17 -3
  51. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/StackHeaderToolbarMenuSelectionController.kt +83 -0
  52. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/{StackHeaderToolbarMenuConfig.kt → model/StackHeaderToolbarMenuConfig.kt} +1 -1
  53. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/{StackHeaderToolbarMenuElementConfig.kt → model/StackHeaderToolbarMenuElementConfig.kt} +1 -1
  54. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/{StackHeaderToolbarMenuGroupConfig.kt → model/StackHeaderToolbarMenuGroupConfig.kt} +1 -1
  55. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/{StackHeaderToolbarMenuGroupMetadata.kt → model/StackHeaderToolbarMenuGroupMetadata.kt} +5 -1
  56. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/{StackHeaderToolbarMenuItemConfig.kt → model/StackHeaderToolbarMenuItemConfig.kt} +1 -1
  57. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/{StackHeaderToolbarMenuItemDefaults.kt → model/StackHeaderToolbarMenuItemDefaults.kt} +1 -1
  58. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/{StackHeaderToolbarMenuItemIconSource.kt → model/StackHeaderToolbarMenuItemIconSource.kt} +1 -1
  59. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/{StackHeaderToolbarMenuItemShowAsAction.kt → model/StackHeaderToolbarMenuItemShowAsAction.kt} +1 -1
  60. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/{StackHeaderToolbarMenuItemType.kt → model/StackHeaderToolbarMenuItemType.kt} +1 -1
  61. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/{StackHeaderToolbarFieldUpdate.kt → update/StackHeaderToolbarFieldUpdate.kt} +1 -1
  62. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/{StackHeaderToolbarMenuElementOptions.kt → update/StackHeaderToolbarMenuElementOptions.kt} +2 -1
  63. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/update/StackHeaderToolbarMenuElementRawUpdate.kt +13 -0
  64. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/update/StackHeaderToolbarMenuElementUpdate.kt +10 -0
  65. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/update/StackHeaderToolbarMenuIconResolver.kt +17 -0
  66. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/{StackHeaderToolbarMenuUpdateQueue.kt → update/StackHeaderToolbarMenuUpdateQueue.kt} +1 -43
  67. package/android/src/main/java/com/swmansion/rnscreens/stack/header/toolbar/update/StackHeaderToolbarMenuUpdateQueueDelegate.kt +9 -0
  68. package/android/src/main/java/com/swmansion/rnscreens/stack/screen/StackScreen.kt +1 -0
  69. package/common/cpp/react/renderer/components/rnscreens/legacy/RNSScreenShadowNode.cpp +10 -5
  70. package/ios/RNSEnums.h +0 -2
  71. package/ios/RNSOrientationProviding.h +0 -2
  72. package/ios/RNSReactMountingTransactionObserving.h +15 -0
  73. package/ios/legacy/RNSBarButtonItem.mm +12 -5
  74. package/ios/legacy/RNSScreen.h +8 -1
  75. package/ios/legacy/RNSScreen.mm +39 -17
  76. package/ios/legacy/RNSScreenContentWrapper.mm +9 -0
  77. package/ios/legacy/RNSScreenFooter.mm +2 -0
  78. package/ios/legacy/RNSScreenStack.mm +9 -4
  79. package/ios/modals/form-sheet/RNSFormSheetContentWrapperComponentView.mm +9 -0
  80. package/ios/scroll-to-top-guard/RNSScrollToTopGuard.h +17 -0
  81. package/ios/scroll-to-top-guard/RNSScrollToTopGuard.mm +57 -0
  82. package/ios/scroll-to-top-guard/RNSScrollToTopGuardGestureRecognizer.h +28 -0
  83. package/ios/scroll-to-top-guard/RNSScrollToTopGuardGestureRecognizer.mm +64 -0
  84. package/ios/split/RNSSplitAppearanceApplicator.h +36 -0
  85. package/ios/split/RNSSplitAppearanceApplicator.mm +185 -0
  86. package/ios/split/RNSSplitAppearanceCoordinator.h +26 -0
  87. package/ios/split/RNSSplitAppearanceCoordinator.mm +27 -0
  88. package/ios/split/RNSSplitAppearanceUpdateFlags.h +14 -0
  89. package/ios/split/RNSSplitHostComponentView.mm +1 -1
  90. package/ios/split/RNSSplitHostController.h +86 -0
  91. package/ios/split/RNSSplitHostController.mm +560 -0
  92. package/ios/split/RNSSplitNavigationController.h +31 -0
  93. package/ios/split/RNSSplitNavigationController.mm +44 -0
  94. package/ios/split/RNSSplitNavigationControllerFrameObserver.h +32 -0
  95. package/ios/split/RNSSplitNavigationControllerFrameObserver.mm +80 -0
  96. package/ios/split/RNSSplitNavigationControllerFrameOriginChangeDelegate.h +15 -0
  97. package/ios/split/RNSSplitScreenComponentView.mm +8 -9
  98. package/ios/split/RNSSplitScreenController.h +45 -0
  99. package/ios/split/RNSSplitScreenController.mm +130 -0
  100. package/ios/stack/header/RNSStackHeaderConfigComponentView.h +1 -0
  101. package/ios/stack/header/RNSStackHeaderConfigComponentView.mm +47 -9
  102. package/ios/stack/header/RNSStackHeaderConfigDataProviding.h +3 -0
  103. package/ios/stack/header/RNSStackHeaderMenuCoordinator.h +9 -0
  104. package/ios/stack/header/RNSStackHeaderMenuCoordinator.mm +15 -0
  105. package/ios/stack/header/RNSStackHeaderMenuFinder.h +18 -3
  106. package/ios/stack/header/RNSStackHeaderMenuFinder.mm +21 -3
  107. package/ios/stack/host/RNSStackHostComponentView.mm +3 -1
  108. package/ios/stack/host/RNSStackNavigationController.mm +1 -1
  109. package/ios/stack/screen/RNSStackScreenComponentView.mm +0 -2
  110. package/ios/stack/screen/RNSStackScreenHeaderCoordinator.h +6 -1
  111. package/ios/stack/screen/RNSStackScreenHeaderCoordinator.mm +61 -12
  112. package/ios/tabs/bottom-accessory/RNSTabsBottomAccessoryComponentView.mm +3 -0
  113. package/ios/tabs/bottom-accessory/RNSTabsBottomAccessoryContentComponentView.mm +4 -1
  114. package/ios/tabs/host/RNSTabBarController.h +5 -12
  115. package/ios/tabs/host/RNSTabBarController.mm +1 -1
  116. package/lib/commonjs/components/scroll-to-top-guard/ScrollToTopGuard.ios.js +25 -0
  117. package/lib/commonjs/components/scroll-to-top-guard/ScrollToTopGuard.ios.js.map +1 -0
  118. package/lib/commonjs/components/scroll-to-top-guard/ScrollToTopGuard.js +24 -0
  119. package/lib/commonjs/components/scroll-to-top-guard/ScrollToTopGuard.js.map +1 -0
  120. package/lib/commonjs/components/scroll-to-top-guard/index.js +13 -0
  121. package/lib/commonjs/components/scroll-to-top-guard/index.js.map +1 -0
  122. package/lib/commonjs/components/stack/header/StackHeaderConfig.ios.js +11 -12
  123. package/lib/commonjs/components/stack/header/StackHeaderConfig.ios.js.map +1 -1
  124. package/lib/commonjs/components/stack/header/ios/StackHeaderItem.ios.js +1 -22
  125. package/lib/commonjs/components/stack/header/ios/StackHeaderItem.ios.js.map +1 -1
  126. package/lib/commonjs/components/stack/header/ios/iconUtils.ios.js +33 -2
  127. package/lib/commonjs/components/stack/header/ios/iconUtils.ios.js.map +1 -1
  128. package/lib/commonjs/components/stack/header/utils.js +6 -9
  129. package/lib/commonjs/components/stack/header/utils.js.map +1 -1
  130. package/lib/commonjs/experimental/index.js +11 -0
  131. package/lib/commonjs/experimental/index.js.map +1 -1
  132. package/lib/commonjs/fabric/ScrollViewMarkerNativeComponent.js.map +1 -1
  133. package/lib/commonjs/fabric/legacy/FullWindowOverlayNativeComponent.js.map +1 -1
  134. package/lib/commonjs/fabric/legacy/ModalScreenNativeComponent.js.map +1 -1
  135. package/lib/commonjs/fabric/legacy/ScreenContainerNativeComponent.js.map +1 -1
  136. package/lib/commonjs/fabric/legacy/ScreenFooterNativeComponent.js.map +1 -1
  137. package/lib/commonjs/fabric/legacy/ScreenNativeComponent.js.map +1 -1
  138. package/lib/commonjs/fabric/legacy/ScreenStackHeaderConfigNativeComponent.js.map +1 -1
  139. package/lib/commonjs/fabric/legacy/ScreenStackHeaderSubviewNativeComponent.js.map +1 -1
  140. package/lib/commonjs/fabric/legacy/ScreenStackNativeComponent.js.map +1 -1
  141. package/lib/commonjs/fabric/legacy/SearchBarNativeComponent.js.map +1 -1
  142. package/lib/commonjs/fabric/modals/form-sheet/FormSheetHostNativeComponent.js.map +1 -1
  143. package/lib/commonjs/fabric/safe-area/SafeAreaViewNativeComponent.js.map +1 -1
  144. package/lib/commonjs/fabric/scroll-to-top-guard/ScrollToTopGuardNativeComponent.js +12 -0
  145. package/lib/commonjs/fabric/scroll-to-top-guard/ScrollToTopGuardNativeComponent.js.map +1 -0
  146. package/lib/commonjs/fabric/split/SplitHostNativeComponent.js.map +1 -1
  147. package/lib/commonjs/fabric/split/SplitScreenNativeComponent.js.map +1 -1
  148. package/lib/commonjs/fabric/stack/StackHeaderConfigAndroidNativeComponent.js.map +1 -1
  149. package/lib/commonjs/fabric/stack/StackHeaderConfigIOSNativeComponent.js.map +1 -1
  150. package/lib/commonjs/fabric/stack/StackHeaderItemIOSNativeComponent.js.map +1 -1
  151. package/lib/commonjs/fabric/stack/StackHeaderItemSpacerIOSNativeComponent.js.map +1 -1
  152. package/lib/commonjs/fabric/stack/StackHeaderSubviewAndroidNativeComponent.js.map +1 -1
  153. package/lib/commonjs/fabric/stack/StackHostNativeComponent.js.map +1 -1
  154. package/lib/commonjs/fabric/stack/StackScreenNativeComponent.js.map +1 -1
  155. package/lib/commonjs/fabric/tabs/TabsBottomAccessoryContentNativeComponent.js.map +1 -1
  156. package/lib/commonjs/fabric/tabs/TabsBottomAccessoryNativeComponent.js.map +1 -1
  157. package/lib/commonjs/fabric/tabs/TabsHostAndroidNativeComponent.js.map +1 -1
  158. package/lib/commonjs/fabric/tabs/TabsHostIOSNativeComponent.js.map +1 -1
  159. package/lib/commonjs/fabric/tabs/TabsScreenAndroidNativeComponent.js.map +1 -1
  160. package/lib/commonjs/fabric/tabs/TabsScreenIOSNativeComponent.js.map +1 -1
  161. package/lib/commonjs/flags.js +22 -1
  162. package/lib/commonjs/flags.js.map +1 -1
  163. package/lib/commonjs/legacy/components/Screen.js +6 -1
  164. package/lib/commonjs/legacy/components/Screen.js.map +1 -1
  165. package/lib/commonjs/legacy/components/ScreenStackHeaderConfig.js +5 -0
  166. package/lib/commonjs/legacy/components/ScreenStackHeaderConfig.js.map +1 -1
  167. package/lib/commonjs/legacy/components/ScreenStackItem.js.map +1 -1
  168. package/lib/commonjs/legacy/components/SearchBar.js +16 -16
  169. package/lib/commonjs/legacy/components/SearchBar.js.map +1 -1
  170. package/lib/commonjs/legacy/components/helpers/prepareHeaderBarButtonItems.js +3 -0
  171. package/lib/commonjs/legacy/components/helpers/prepareHeaderBarButtonItems.js.map +1 -1
  172. package/lib/commonjs/legacy/gesture-handler/fabricUtils.js.map +1 -1
  173. package/lib/commonjs/legacy/useTransitionProgress.js.map +1 -1
  174. package/lib/module/components/scroll-to-top-guard/ScrollToTopGuard.ios.js +20 -0
  175. package/lib/module/components/scroll-to-top-guard/ScrollToTopGuard.ios.js.map +1 -0
  176. package/lib/module/components/scroll-to-top-guard/ScrollToTopGuard.js +18 -0
  177. package/lib/module/components/scroll-to-top-guard/ScrollToTopGuard.js.map +1 -0
  178. package/lib/module/components/scroll-to-top-guard/index.js +2 -0
  179. package/lib/module/components/scroll-to-top-guard/index.js.map +1 -0
  180. package/lib/module/components/stack/header/StackHeaderConfig.ios.js +14 -15
  181. package/lib/module/components/stack/header/StackHeaderConfig.ios.js.map +1 -1
  182. package/lib/module/components/stack/header/ios/StackHeaderItem.ios.js +1 -22
  183. package/lib/module/components/stack/header/ios/StackHeaderItem.ios.js.map +1 -1
  184. package/lib/module/components/stack/header/ios/iconUtils.ios.js +31 -2
  185. package/lib/module/components/stack/header/ios/iconUtils.ios.js.map +1 -1
  186. package/lib/module/components/stack/header/utils.js +5 -8
  187. package/lib/module/components/stack/header/utils.js.map +1 -1
  188. package/lib/module/experimental/index.js +1 -0
  189. package/lib/module/experimental/index.js.map +1 -1
  190. package/lib/module/fabric/ScrollViewMarkerNativeComponent.js.map +1 -1
  191. package/lib/module/fabric/legacy/FullWindowOverlayNativeComponent.js.map +1 -1
  192. package/lib/module/fabric/legacy/ModalScreenNativeComponent.js.map +1 -1
  193. package/lib/module/fabric/legacy/ScreenContainerNativeComponent.js.map +1 -1
  194. package/lib/module/fabric/legacy/ScreenFooterNativeComponent.js.map +1 -1
  195. package/lib/module/fabric/legacy/ScreenNativeComponent.js.map +1 -1
  196. package/lib/module/fabric/legacy/ScreenStackHeaderConfigNativeComponent.js.map +1 -1
  197. package/lib/module/fabric/legacy/ScreenStackHeaderSubviewNativeComponent.js.map +1 -1
  198. package/lib/module/fabric/legacy/ScreenStackNativeComponent.js.map +1 -1
  199. package/lib/module/fabric/legacy/SearchBarNativeComponent.js.map +1 -1
  200. package/lib/module/fabric/modals/form-sheet/FormSheetHostNativeComponent.js.map +1 -1
  201. package/lib/module/fabric/safe-area/SafeAreaViewNativeComponent.js.map +1 -1
  202. package/lib/module/fabric/scroll-to-top-guard/ScrollToTopGuardNativeComponent.js +7 -0
  203. package/lib/module/fabric/scroll-to-top-guard/ScrollToTopGuardNativeComponent.js.map +1 -0
  204. package/lib/module/fabric/split/SplitHostNativeComponent.js.map +1 -1
  205. package/lib/module/fabric/split/SplitScreenNativeComponent.js.map +1 -1
  206. package/lib/module/fabric/stack/StackHeaderConfigAndroidNativeComponent.js.map +1 -1
  207. package/lib/module/fabric/stack/StackHeaderConfigIOSNativeComponent.js.map +1 -1
  208. package/lib/module/fabric/stack/StackHeaderItemIOSNativeComponent.js.map +1 -1
  209. package/lib/module/fabric/stack/StackHeaderItemSpacerIOSNativeComponent.js.map +1 -1
  210. package/lib/module/fabric/stack/StackHeaderSubviewAndroidNativeComponent.js.map +1 -1
  211. package/lib/module/fabric/stack/StackHostNativeComponent.js.map +1 -1
  212. package/lib/module/fabric/stack/StackScreenNativeComponent.js.map +1 -1
  213. package/lib/module/fabric/tabs/TabsBottomAccessoryContentNativeComponent.js.map +1 -1
  214. package/lib/module/fabric/tabs/TabsBottomAccessoryNativeComponent.js.map +1 -1
  215. package/lib/module/fabric/tabs/TabsHostAndroidNativeComponent.js.map +1 -1
  216. package/lib/module/fabric/tabs/TabsHostIOSNativeComponent.js.map +1 -1
  217. package/lib/module/fabric/tabs/TabsScreenAndroidNativeComponent.js.map +1 -1
  218. package/lib/module/fabric/tabs/TabsScreenIOSNativeComponent.js.map +1 -1
  219. package/lib/module/flags.js +22 -1
  220. package/lib/module/flags.js.map +1 -1
  221. package/lib/module/legacy/components/Screen.js +6 -1
  222. package/lib/module/legacy/components/Screen.js.map +1 -1
  223. package/lib/module/legacy/components/ScreenStackHeaderConfig.js +5 -0
  224. package/lib/module/legacy/components/ScreenStackHeaderConfig.js.map +1 -1
  225. package/lib/module/legacy/components/ScreenStackItem.js.map +1 -1
  226. package/lib/module/legacy/components/SearchBar.js +17 -17
  227. package/lib/module/legacy/components/SearchBar.js.map +1 -1
  228. package/lib/module/legacy/components/helpers/prepareHeaderBarButtonItems.js +4 -0
  229. package/lib/module/legacy/components/helpers/prepareHeaderBarButtonItems.js.map +1 -1
  230. package/lib/module/legacy/gesture-handler/fabricUtils.js.map +1 -1
  231. package/lib/module/legacy/useTransitionProgress.js.map +1 -1
  232. package/lib/module/private/hooks/useRenderDebugInfo.js.map +1 -1
  233. package/lib/typescript/components/modals/form-sheet/FormSheet.types.d.ts +2 -2
  234. package/lib/typescript/components/safe-area/SafeAreaView.web.d.ts +5 -2
  235. package/lib/typescript/components/safe-area/SafeAreaView.web.d.ts.map +1 -1
  236. package/lib/typescript/components/scroll-to-top-guard/ScrollToTopGuard.d.ts +15 -0
  237. package/lib/typescript/components/scroll-to-top-guard/ScrollToTopGuard.d.ts.map +1 -0
  238. package/lib/typescript/components/scroll-to-top-guard/ScrollToTopGuard.ios.d.ts +12 -0
  239. package/lib/typescript/components/scroll-to-top-guard/ScrollToTopGuard.ios.d.ts.map +1 -0
  240. package/lib/typescript/components/scroll-to-top-guard/index.d.ts +2 -0
  241. package/lib/typescript/components/scroll-to-top-guard/index.d.ts.map +1 -0
  242. package/lib/typescript/components/stack/header/StackHeaderConfig.android.types.d.ts +24 -0
  243. package/lib/typescript/components/stack/header/StackHeaderConfig.android.types.d.ts.map +1 -1
  244. package/lib/typescript/components/stack/header/StackHeaderConfig.ios.d.ts.map +1 -1
  245. package/lib/typescript/components/stack/header/StackHeaderConfig.ios.types.d.ts +13 -0
  246. package/lib/typescript/components/stack/header/StackHeaderConfig.ios.types.d.ts.map +1 -1
  247. package/lib/typescript/components/stack/header/StackHeaderConfig.web.d.ts +5 -2
  248. package/lib/typescript/components/stack/header/StackHeaderConfig.web.d.ts.map +1 -1
  249. package/lib/typescript/components/stack/header/ios/StackHeaderItem.ios.d.ts.map +1 -1
  250. package/lib/typescript/components/stack/header/ios/iconUtils.ios.d.ts +3 -0
  251. package/lib/typescript/components/stack/header/ios/iconUtils.ios.d.ts.map +1 -1
  252. package/lib/typescript/components/stack/header/utils.d.ts +1 -2
  253. package/lib/typescript/components/stack/header/utils.d.ts.map +1 -1
  254. package/lib/typescript/components/stack/host/StackHost.types.d.ts +2 -2
  255. package/lib/typescript/components/stack/host/StackHost.types.d.ts.map +1 -1
  256. package/lib/typescript/components/stack/host/StackHost.web.d.ts +6 -2
  257. package/lib/typescript/components/stack/host/StackHost.web.d.ts.map +1 -1
  258. package/lib/typescript/components/stack/screen/StackScreen.web.d.ts +5 -2
  259. package/lib/typescript/components/stack/screen/StackScreen.web.d.ts.map +1 -1
  260. package/lib/typescript/components/tabs/host/TabsHost.web.d.ts +5 -2
  261. package/lib/typescript/components/tabs/host/TabsHost.web.d.ts.map +1 -1
  262. package/lib/typescript/components/tabs/screen/TabsScreen.types.d.ts +7 -3
  263. package/lib/typescript/components/tabs/screen/TabsScreen.types.d.ts.map +1 -1
  264. package/lib/typescript/components/tabs/screen/TabsScreen.web.d.ts +5 -2
  265. package/lib/typescript/components/tabs/screen/TabsScreen.web.d.ts.map +1 -1
  266. package/lib/typescript/experimental/index.d.ts +1 -0
  267. package/lib/typescript/experimental/index.d.ts.map +1 -1
  268. package/lib/typescript/fabric/NativeScreensModule.d.ts +1 -1
  269. package/lib/typescript/fabric/ScrollViewMarkerNativeComponent.d.ts +2 -2
  270. package/lib/typescript/fabric/ScrollViewMarkerNativeComponent.d.ts.map +1 -1
  271. package/lib/typescript/fabric/legacy/FullWindowOverlayNativeComponent.d.ts +2 -2
  272. package/lib/typescript/fabric/legacy/FullWindowOverlayNativeComponent.d.ts.map +1 -1
  273. package/lib/typescript/fabric/legacy/ModalScreenNativeComponent.d.ts +3 -2
  274. package/lib/typescript/fabric/legacy/ModalScreenNativeComponent.d.ts.map +1 -1
  275. package/lib/typescript/fabric/legacy/ScreenContainerNativeComponent.d.ts +2 -2
  276. package/lib/typescript/fabric/legacy/ScreenContainerNativeComponent.d.ts.map +1 -1
  277. package/lib/typescript/fabric/legacy/ScreenContentWrapperNativeComponent.d.ts +2 -2
  278. package/lib/typescript/fabric/legacy/ScreenContentWrapperNativeComponent.d.ts.map +1 -1
  279. package/lib/typescript/fabric/legacy/ScreenFooterNativeComponent.d.ts +2 -2
  280. package/lib/typescript/fabric/legacy/ScreenFooterNativeComponent.d.ts.map +1 -1
  281. package/lib/typescript/fabric/legacy/ScreenNativeComponent.d.ts +3 -2
  282. package/lib/typescript/fabric/legacy/ScreenNativeComponent.d.ts.map +1 -1
  283. package/lib/typescript/fabric/legacy/ScreenNavigationContainerNativeComponent.d.ts +2 -2
  284. package/lib/typescript/fabric/legacy/ScreenNavigationContainerNativeComponent.d.ts.map +1 -1
  285. package/lib/typescript/fabric/legacy/ScreenStackHeaderConfigNativeComponent.d.ts +3 -3
  286. package/lib/typescript/fabric/legacy/ScreenStackHeaderConfigNativeComponent.d.ts.map +1 -1
  287. package/lib/typescript/fabric/legacy/ScreenStackHeaderSubviewNativeComponent.d.ts +2 -2
  288. package/lib/typescript/fabric/legacy/ScreenStackHeaderSubviewNativeComponent.d.ts.map +1 -1
  289. package/lib/typescript/fabric/legacy/ScreenStackNativeComponent.d.ts +2 -2
  290. package/lib/typescript/fabric/legacy/ScreenStackNativeComponent.d.ts.map +1 -1
  291. package/lib/typescript/fabric/legacy/SearchBarNativeComponent.d.ts +6 -6
  292. package/lib/typescript/fabric/legacy/SearchBarNativeComponent.d.ts.map +1 -1
  293. package/lib/typescript/fabric/modals/form-sheet/FormSheetContentWrapperNativeComponent.d.ts +2 -2
  294. package/lib/typescript/fabric/modals/form-sheet/FormSheetContentWrapperNativeComponent.d.ts.map +1 -1
  295. package/lib/typescript/fabric/modals/form-sheet/FormSheetHostNativeComponent.d.ts +2 -2
  296. package/lib/typescript/fabric/modals/form-sheet/FormSheetHostNativeComponent.d.ts.map +1 -1
  297. package/lib/typescript/fabric/safe-area/SafeAreaViewNativeComponent.d.ts +2 -2
  298. package/lib/typescript/fabric/safe-area/SafeAreaViewNativeComponent.d.ts.map +1 -1
  299. package/lib/typescript/fabric/scroll-to-top-guard/ScrollToTopGuardNativeComponent.d.ts +6 -0
  300. package/lib/typescript/fabric/scroll-to-top-guard/ScrollToTopGuardNativeComponent.d.ts.map +1 -0
  301. package/lib/typescript/fabric/split/SplitHostNativeComponent.d.ts +1 -1
  302. package/lib/typescript/fabric/split/SplitHostNativeComponent.d.ts.map +1 -1
  303. package/lib/typescript/fabric/split/SplitScreenNativeComponent.d.ts +2 -2
  304. package/lib/typescript/fabric/split/SplitScreenNativeComponent.d.ts.map +1 -1
  305. package/lib/typescript/fabric/stack/StackHeaderConfigAndroidNativeComponent.d.ts +1 -0
  306. package/lib/typescript/fabric/stack/StackHeaderConfigAndroidNativeComponent.d.ts.map +1 -1
  307. package/lib/typescript/fabric/stack/StackHeaderConfigIOSNativeComponent.d.ts +2 -1
  308. package/lib/typescript/fabric/stack/StackHeaderConfigIOSNativeComponent.d.ts.map +1 -1
  309. package/lib/typescript/fabric/stack/StackHeaderItemIOSNativeComponent.d.ts +2 -2
  310. package/lib/typescript/fabric/stack/StackHeaderItemIOSNativeComponent.d.ts.map +1 -1
  311. package/lib/typescript/fabric/stack/StackHeaderItemSpacerIOSNativeComponent.d.ts +2 -2
  312. package/lib/typescript/fabric/stack/StackHeaderItemSpacerIOSNativeComponent.d.ts.map +1 -1
  313. package/lib/typescript/fabric/stack/StackHeaderSubviewAndroidNativeComponent.d.ts +2 -2
  314. package/lib/typescript/fabric/stack/StackHeaderSubviewAndroidNativeComponent.d.ts.map +1 -1
  315. package/lib/typescript/fabric/stack/StackHostNativeComponent.d.ts +2 -2
  316. package/lib/typescript/fabric/stack/StackHostNativeComponent.d.ts.map +1 -1
  317. package/lib/typescript/fabric/stack/StackScreenNativeComponent.d.ts +2 -2
  318. package/lib/typescript/fabric/stack/StackScreenNativeComponent.d.ts.map +1 -1
  319. package/lib/typescript/fabric/tabs/TabsBottomAccessoryContentNativeComponent.d.ts +2 -2
  320. package/lib/typescript/fabric/tabs/TabsBottomAccessoryContentNativeComponent.d.ts.map +1 -1
  321. package/lib/typescript/fabric/tabs/TabsBottomAccessoryNativeComponent.d.ts +2 -2
  322. package/lib/typescript/fabric/tabs/TabsBottomAccessoryNativeComponent.d.ts.map +1 -1
  323. package/lib/typescript/fabric/tabs/TabsHostAndroidNativeComponent.d.ts +2 -2
  324. package/lib/typescript/fabric/tabs/TabsHostAndroidNativeComponent.d.ts.map +1 -1
  325. package/lib/typescript/fabric/tabs/TabsHostIOSNativeComponent.d.ts +2 -2
  326. package/lib/typescript/fabric/tabs/TabsHostIOSNativeComponent.d.ts.map +1 -1
  327. package/lib/typescript/fabric/tabs/TabsScreenAndroidNativeComponent.d.ts +2 -2
  328. package/lib/typescript/fabric/tabs/TabsScreenAndroidNativeComponent.d.ts.map +1 -1
  329. package/lib/typescript/fabric/tabs/TabsScreenIOSNativeComponent.d.ts +2 -2
  330. package/lib/typescript/fabric/tabs/TabsScreenIOSNativeComponent.d.ts.map +1 -1
  331. package/lib/typescript/flags.d.ts +13 -0
  332. package/lib/typescript/flags.d.ts.map +1 -1
  333. package/lib/typescript/legacy/TransitionProgressContext.d.ts +1 -1
  334. package/lib/typescript/legacy/TransitionProgressContext.d.ts.map +1 -1
  335. package/lib/typescript/legacy/components/Screen.d.ts +5 -3
  336. package/lib/typescript/legacy/components/Screen.d.ts.map +1 -1
  337. package/lib/typescript/legacy/components/Screen.web.d.ts +10 -2
  338. package/lib/typescript/legacy/components/Screen.web.d.ts.map +1 -1
  339. package/lib/typescript/legacy/components/ScreenContainer.web.d.ts +5 -2
  340. package/lib/typescript/legacy/components/ScreenContainer.web.d.ts.map +1 -1
  341. package/lib/typescript/legacy/components/ScreenContentWrapper.web.d.ts +5 -2
  342. package/lib/typescript/legacy/components/ScreenContentWrapper.web.d.ts.map +1 -1
  343. package/lib/typescript/legacy/components/ScreenContentWrapper.windows.d.ts +5 -2
  344. package/lib/typescript/legacy/components/ScreenContentWrapper.windows.d.ts.map +1 -1
  345. package/lib/typescript/legacy/components/ScreenFooter.web.d.ts +10 -3
  346. package/lib/typescript/legacy/components/ScreenFooter.web.d.ts.map +1 -1
  347. package/lib/typescript/legacy/components/ScreenFooter.windows.d.ts +10 -3
  348. package/lib/typescript/legacy/components/ScreenFooter.windows.d.ts.map +1 -1
  349. package/lib/typescript/legacy/components/ScreenStack.web.d.ts +5 -2
  350. package/lib/typescript/legacy/components/ScreenStack.web.d.ts.map +1 -1
  351. package/lib/typescript/legacy/components/ScreenStackHeaderConfig.d.ts +3 -1
  352. package/lib/typescript/legacy/components/ScreenStackHeaderConfig.d.ts.map +1 -1
  353. package/lib/typescript/legacy/components/ScreenStackItem.d.ts +3 -2
  354. package/lib/typescript/legacy/components/ScreenStackItem.d.ts.map +1 -1
  355. package/lib/typescript/legacy/components/SearchBar.d.ts +3 -3
  356. package/lib/typescript/legacy/components/SearchBar.d.ts.map +1 -1
  357. package/lib/typescript/legacy/components/SearchBar.web.d.ts +5 -2
  358. package/lib/typescript/legacy/components/SearchBar.web.d.ts.map +1 -1
  359. package/lib/typescript/legacy/components/helpers/prepareHeaderBarButtonItems.d.ts +15 -12
  360. package/lib/typescript/legacy/components/helpers/prepareHeaderBarButtonItems.d.ts.map +1 -1
  361. package/lib/typescript/legacy/gesture-handler/fabricUtils.d.ts +3 -2
  362. package/lib/typescript/legacy/gesture-handler/fabricUtils.d.ts.map +1 -1
  363. package/lib/typescript/legacy/types.d.ts +25 -5
  364. package/lib/typescript/legacy/types.d.ts.map +1 -1
  365. package/lib/typescript/legacy/useTransitionProgress.d.ts +2 -5
  366. package/lib/typescript/legacy/useTransitionProgress.d.ts.map +1 -1
  367. package/lib/typescript/private/hooks/useRenderDebugInfo.d.ts +2 -2
  368. package/lib/typescript/private/hooks/useRenderDebugInfo.d.ts.map +1 -1
  369. package/package.json +17 -17
  370. package/src/components/modals/form-sheet/FormSheet.types.ts +2 -2
  371. package/src/components/scroll-to-top-guard/ScrollToTopGuard.ios.tsx +17 -0
  372. package/src/components/scroll-to-top-guard/ScrollToTopGuard.tsx +18 -0
  373. package/src/components/scroll-to-top-guard/index.ts +1 -0
  374. package/src/components/stack/header/StackHeaderConfig.android.types.ts +24 -0
  375. package/src/components/stack/header/StackHeaderConfig.ios.tsx +32 -22
  376. package/src/components/stack/header/StackHeaderConfig.ios.types.ts +13 -0
  377. package/src/components/stack/header/ios/StackHeaderItem.ios.tsx +1 -23
  378. package/src/components/stack/header/ios/iconUtils.ios.ts +38 -2
  379. package/src/components/stack/header/utils.ts +6 -11
  380. package/src/components/stack/host/StackHost.types.ts +2 -4
  381. package/src/components/tabs/screen/TabsScreen.types.ts +7 -3
  382. package/src/experimental/index.ts +1 -0
  383. package/src/fabric/ScrollViewMarkerNativeComponent.ts +8 -2
  384. package/src/fabric/legacy/FullWindowOverlayNativeComponent.ts +6 -2
  385. package/src/fabric/legacy/ModalScreenNativeComponent.ts +8 -2
  386. package/src/fabric/legacy/ScreenContainerNativeComponent.ts +5 -2
  387. package/src/fabric/legacy/ScreenContentWrapperNativeComponent.ts +2 -2
  388. package/src/fabric/legacy/ScreenFooterNativeComponent.ts +5 -2
  389. package/src/fabric/legacy/ScreenNativeComponent.ts +8 -2
  390. package/src/fabric/legacy/ScreenNavigationContainerNativeComponent.ts +2 -2
  391. package/src/fabric/legacy/ScreenStackHeaderConfigNativeComponent.ts +8 -3
  392. package/src/fabric/legacy/ScreenStackHeaderSubviewNativeComponent.ts +6 -2
  393. package/src/fabric/legacy/ScreenStackNativeComponent.ts +10 -2
  394. package/src/fabric/legacy/SearchBarNativeComponent.ts +10 -7
  395. package/src/fabric/modals/form-sheet/FormSheetContentWrapperNativeComponent.ts +2 -2
  396. package/src/fabric/modals/form-sheet/FormSheetHostNativeComponent.ts +7 -2
  397. package/src/fabric/safe-area/SafeAreaViewNativeComponent.ts +6 -2
  398. package/src/fabric/scroll-to-top-guard/ScrollToTopGuardNativeComponent.ts +10 -0
  399. package/src/fabric/split/SplitHostNativeComponent.ts +5 -2
  400. package/src/fabric/split/SplitScreenNativeComponent.ts +6 -2
  401. package/src/fabric/stack/StackHeaderConfigAndroidNativeComponent.ts +3 -1
  402. package/src/fabric/stack/StackHeaderConfigIOSNativeComponent.ts +7 -2
  403. package/src/fabric/stack/StackHeaderItemIOSNativeComponent.ts +2 -1
  404. package/src/fabric/stack/StackHeaderItemSpacerIOSNativeComponent.ts +6 -2
  405. package/src/fabric/stack/StackHeaderSubviewAndroidNativeComponent.ts +6 -2
  406. package/src/fabric/stack/StackHostNativeComponent.ts +5 -2
  407. package/src/fabric/stack/StackScreenNativeComponent.ts +6 -2
  408. package/src/fabric/tabs/TabsBottomAccessoryContentNativeComponent.ts +6 -2
  409. package/src/fabric/tabs/TabsBottomAccessoryNativeComponent.ts +6 -2
  410. package/src/fabric/tabs/TabsHostAndroidNativeComponent.ts +7 -2
  411. package/src/fabric/tabs/TabsHostIOSNativeComponent.ts +7 -2
  412. package/src/fabric/tabs/TabsScreenAndroidNativeComponent.ts +2 -1
  413. package/src/fabric/tabs/TabsScreenIOSNativeComponent.ts +2 -1
  414. package/src/flags.ts +26 -0
  415. package/src/legacy/TransitionProgressContext.tsx +1 -1
  416. package/src/legacy/components/Screen.tsx +14 -6
  417. package/src/legacy/components/ScreenStackHeaderConfig.tsx +7 -1
  418. package/src/legacy/components/ScreenStackItem.tsx +3 -4
  419. package/src/legacy/components/SearchBar.tsx +34 -44
  420. package/src/legacy/components/helpers/prepareHeaderBarButtonItems.ts +7 -1
  421. package/src/legacy/gesture-handler/fabricUtils.ts +5 -2
  422. package/src/legacy/types.ts +28 -5
  423. package/src/legacy/useTransitionProgress.tsx +4 -2
  424. package/src/private/hooks/useRenderDebugInfo.tsx +2 -2
  425. package/android/src/main/java/com/swmansion/rnscreens/modals/formsheet/FormSheetNativeDismissCoordinator.kt +0 -25
  426. package/ios/ReactMountingTransactionObserving.swift +0 -7
  427. package/ios/bridging/Swift-Bridging.h +0 -7
  428. package/ios/orientation/RNSOrientationProviding.swift +0 -6
  429. package/ios/orientation/RNSOrientationSwift.swift +0 -14
  430. package/ios/split/RNSSplitAppearanceApplicator.swift +0 -199
  431. package/ios/split/RNSSplitAppearanceCoordinator.swift +0 -26
  432. package/ios/split/RNSSplitAppearanceUpdateFlags.swift +0 -11
  433. package/ios/split/RNSSplitHostController.swift +0 -570
  434. package/ios/split/RNSSplitNavigationController.swift +0 -46
  435. package/ios/split/RNSSplitScreenController.swift +0 -133
  436. package/ios/utils/RNSLog.swift +0 -6
@@ -1,5 +1,6 @@
1
1
  #import "RNSStackScreenHeaderCoordinator.h"
2
- #import "RCTAssert.h"
2
+ #import <React/RCTAssert.h>
3
+ #import <React/RCTLog.h>
3
4
  #import "RNSDefines.h"
4
5
  #import "RNSStackHeaderContentFactory.h"
5
6
  #import "RNSStackHeaderItemDataProviding.h"
@@ -10,7 +11,6 @@
10
11
  #import "RNSStackNavigationBarCoordinator.h"
11
12
  #import "RNSStackNavigationController.h"
12
13
  #import "RNSStackScreenController.h"
13
- #import "React/RCTLog.h"
14
14
 
15
15
  @implementation RNSStackScreenHeaderCoordinator {
16
16
  __weak RNSStackScreenController *_Nullable _screenController;
@@ -103,6 +103,7 @@
103
103
  largeSubtitleView:largeSubtitleView
104
104
  forController:controller];
105
105
 
106
+ [self applyTitleMenuForController:controller];
106
107
  [self applyNavigationBarProperties];
107
108
  }
108
109
 
@@ -200,28 +201,37 @@
200
201
  }
201
202
  }
202
203
 
204
+ - (void)reapplyTitleMenu
205
+ {
206
+ if (_configDataProvider == nil) {
207
+ return;
208
+ }
209
+ [self applyTitleMenuForController:[self requireScreenController]];
210
+ }
211
+
212
+ - (void)resetTitleMenuTracker
213
+ {
214
+ [_trackerRegistry resetTrackerForItemId:RNSTitleMenuTrackerItemId];
215
+ }
216
+
203
217
  - (void)setToggleState:(BOOL)state
204
218
  forMenuElementId:(NSString *)elementId
205
- withItemId:(NSString *)itemId
219
+ trackerItemId:(NSString *)trackerItemId
220
+ rootMenu:(RNSStackHeaderMenuData *)rootMenu
206
221
  parentMenu:(nullable RNSStackHeaderMenuData *)parentMenu
207
222
  {
208
- if (_configDataProvider == nil || elementId == nil || itemId == nil) {
223
+ if (_configDataProvider == nil || elementId == nil || trackerItemId == nil || rootMenu == nil) {
209
224
  return;
210
225
  }
211
226
 
212
- RNSStackHeaderMenuToggleStateTracker *tracker = [_trackerRegistry trackerForItemId:itemId];
227
+ RNSStackHeaderMenuToggleStateTracker *tracker = [_trackerRegistry trackerForItemId:trackerItemId];
213
228
 
214
229
  if ([tracker toggleStateEquals:state forItemWithId:elementId]) {
215
230
  return;
216
231
  }
217
232
 
218
- id<RNSStackHeaderItemDataProviding> item = [self findItemWithId:itemId];
219
- if (item == nil || item.menu == nil) {
220
- return;
221
- }
222
-
223
- RNSStackHeaderMenuData *singleSelectionRoot =
224
- [RNSStackHeaderMenuFinder singleSelectionRootForElementWithId:elementId inMenu:item.menu];
233
+ RNSStackHeaderMenuData *singleSelectionRoot = [RNSStackHeaderMenuFinder singleSelectionRootForElementWithId:elementId
234
+ inMenu:rootMenu];
225
235
 
226
236
  NSString *eventMenuId = nil;
227
237
  NSArray<NSString *> *toggleIds = nil;
@@ -270,6 +280,12 @@
270
280
  [navItem setLeftBarButtonItems:@[] animated:YES];
271
281
  [navItem setRightBarButtonItems:@[] animated:YES];
272
282
 
283
+ #if !TARGET_OS_TV
284
+ if (@available(iOS 16.0, *)) {
285
+ navItem.titleMenuProvider = nil;
286
+ }
287
+ #endif // !TARGET_OS_TV
288
+
273
289
  #if RNS_IPHONE_OS_VERSION_AVAILABLE(26_0)
274
290
  if (@available(iOS 26.0, *)) {
275
291
  navItem.subtitle = nil;
@@ -415,6 +431,39 @@
415
431
  #endif // RNS_IPHONE_OS_VERSION_AVAILABLE(26_0)
416
432
  }
417
433
 
434
+ - (void)applyTitleMenuForController:(RNSStackScreenController *)controller
435
+ {
436
+ #if !TARGET_OS_TV
437
+ if (@available(iOS 16.0, *)) {
438
+ RNSStackHeaderMenuData *titleMenuData = _configDataProvider.titleMenu;
439
+ UINavigationItem *navItem = controller.navigationItem;
440
+
441
+ if (titleMenuData == nil) {
442
+ navItem.titleMenuProvider = nil;
443
+ return;
444
+ }
445
+
446
+ RNSStackHeaderMenuToggleStateTracker *tracker = [_trackerRegistry trackerForItemId:RNSTitleMenuTrackerItemId];
447
+ __weak auto weakSelf = self;
448
+ __weak auto weakEventsDelegate = _eventsDelegate;
449
+ __weak auto weakImageLoader = _imageLoader;
450
+
451
+ navItem.titleMenuProvider = ^UIMenu *(NSArray<UIMenuElement *> *suggestedActions) {
452
+ if (weakEventsDelegate == nil || weakImageLoader == nil) {
453
+ return nil;
454
+ }
455
+ return [RNSStackHeaderMenuCoordinator buildUIMenuFromData:titleMenuData
456
+ withHeaderEventsDelegate:weakEventsDelegate
457
+ stateTracker:tracker
458
+ withImageLoader:weakImageLoader
459
+ menuInvalidatedCallback:^{
460
+ [weakSelf reapplyTitleMenu];
461
+ }];
462
+ };
463
+ }
464
+ #endif // !TARGET_OS_TV
465
+ }
466
+
418
467
  - (UIBarButtonItem *)buildBarButtonItemForItem:(id<RNSStackHeaderItemDataProviding>)item
419
468
  {
420
469
  UIBarButtonItem *barButtonItem = [RNSStackHeaderContentFactory barButtonItemForHeaderItem:item
@@ -32,6 +32,9 @@ namespace react = facebook::react;
32
32
 
33
33
  - (void)initState
34
34
  {
35
+ static const auto defaultProps = std::make_shared<const react::RNSTabsBottomAccessoryProps>();
36
+ _props = defaultProps;
37
+
35
38
  #if RNS_TABS_BOTTOM_ACCESSORY_AVAILABLE
36
39
  if (@available(iOS 26, *)) {
37
40
  _helper = [[RNSTabsBottomAccessoryHelper alloc] initWithBottomAccessoryView:self];
@@ -17,7 +17,10 @@ namespace react = facebook::react;
17
17
 
18
18
  - (instancetype)initWithFrame:(CGRect)frame
19
19
  {
20
- self = [super initWithFrame:frame];
20
+ if (self = [super initWithFrame:frame]) {
21
+ static const auto defaultProps = std::make_shared<const react::RNSTabsBottomAccessoryContentProps>();
22
+ _props = defaultProps;
23
+ }
21
24
  return self;
22
25
  }
23
26
 
@@ -2,6 +2,7 @@
2
2
 
3
3
  #import <UIKit/UIKit.h>
4
4
  #import "RNSContainer.h"
5
+ #import "RNSReactMountingTransactionObserving.h"
5
6
  #import "RNSTabBarAppearanceCoordinator.h"
6
7
  #import "RNSTabsNavigationState.h"
7
8
  #import "RNSTabsScreenViewController.h"
@@ -15,14 +16,6 @@ NS_ASSUME_NONNULL_BEGIN
15
16
  @class RNSTabsHostComponentView;
16
17
  @class RNSTabBarController;
17
18
 
18
- @protocol RNSReactTransactionObserving
19
-
20
- - (void)reactMountingTransactionWillMount;
21
-
22
- - (void)reactMountingTransactionDidMount;
23
-
24
- @end
25
-
26
19
  /**
27
20
  * UITabBarController subclass that backs `<TabsHost>` on iOS.
28
21
  *
@@ -30,7 +23,7 @@ NS_ASSUME_NONNULL_BEGIN
30
23
  * fact of inheritance from `UITabBarController`. It is limited only to the child view controllers
31
24
  * of type `RNSTabsScreenViewController`, however.
32
25
  *
33
- * Updates made by this controller are synchronized by `RNSReactTransactionObserving` protocol,
26
+ * Updates made by this controller are synchronized by `RNSReactMountingTransactionObserving` protocol,
34
27
  * i.e. if you made changes through one of signals method, unless you flush them immediately, they
35
28
  * will be executed only after react finishes the transaction (from within transaction execution
36
29
  * block).
@@ -51,7 +44,7 @@ NS_ASSUME_NONNULL_BEGIN
51
44
  * Members under `#pragma mark - Internal API` are host-only (`RNSTabsHostComponentView`)
52
45
  * implementation detail and may change without notice. Do not call from third-party code.
53
46
  */
54
- @interface RNSTabBarController : UITabBarController <RNSReactTransactionObserving,
47
+ @interface RNSTabBarController : UITabBarController <RNSReactMountingTransactionObserving,
55
48
  RNSContainer
56
49
  #if !TARGET_OS_TV
57
50
  ,
@@ -75,7 +68,7 @@ NS_ASSUME_NONNULL_BEGIN
75
68
  * Request a tab change. The transition is recorded with `RNSTabsActionOriginProgrammaticNative`,
76
69
  * and is built against the current `navigationState.provenance` so it is never treated as stale.
77
70
  *
78
- * The update is applied on the next `RNSReactTransactionObserving` callback, or call
71
+ * The update is applied on the next `RNSReactMountingTransactionObserving` callback, or call
79
72
  * `flushPendingUpdates` to apply it immediately. If you want to execute multiple updates in
80
73
  * sequence you must flush the container after each one separately.
81
74
  */
@@ -154,7 +147,7 @@ NS_ASSUME_NONNULL_BEGIN
154
147
  *
155
148
  * Pass nil to clear any queued update.
156
149
  *
157
- * The update is applied on the next `RNSReactTransactionObserving` callback, or call
150
+ * The update is applied on the next `RNSReactMountingTransactionObserving` callback, or call
158
151
  * `flushPendingUpdates` to apply it immediately. If you want to execute multiple updates in
159
152
  * sequence you must flush the container after each one separately.
160
153
  *
@@ -257,7 +257,7 @@ static void rns_pushViewController(__unsafe_unretained id self,
257
257
  _needsLayoutDirectionUpdateBelowIOS17 = needsLayoutDirectionUpdate;
258
258
  }
259
259
 
260
- #pragma mark - RNSReactTransactionObserving
260
+ #pragma mark - RNSReactMountingTransactionObserving
261
261
 
262
262
  - (void)reactMountingTransactionWillMount
263
263
  {
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ 'use client';
3
+
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.ScrollToTopGuard = ScrollToTopGuard;
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _ScrollToTopGuardNativeComponent = _interopRequireDefault(require("../../fabric/scroll-to-top-guard/ScrollToTopGuardNativeComponent"));
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
12
+ /**
13
+ * EXPERIMENTAL API, MIGHT CHANGE W/O ANY NOTICE
14
+ *
15
+ * This is an **experimental, unstable** component which might be subject to
16
+ * breaking changes and will be removed in the future. It is meant to be used
17
+ * only as a temporary workaround until the issue is fixed on `react-native`'s
18
+ * side. The issue report: https://github.com/react/react-native/issues/56061.
19
+ */
20
+ function ScrollToTopGuard(props) {
21
+ return /*#__PURE__*/_react.default.createElement(_ScrollToTopGuardNativeComponent.default, _extends({}, props, {
22
+ collapsable: false
23
+ }));
24
+ }
25
+ //# sourceMappingURL=ScrollToTopGuard.ios.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Object","defineProperty","exports","value","ScrollToTopGuard","_react","_interopRequireDefault","require","_ScrollToTopGuardNativeComponent","e","__esModule","default","_extends","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","props","createElement","collapsable"],"sourceRoot":"../../../../src","sources":["components/scroll-to-top-guard/ScrollToTopGuard.ios.tsx"],"mappings":";AAAA,YAAY;;AAACA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,gBAAA,GAAAA,gBAAA;AAEb,IAAAC,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,gCAAA,GAAAF,sBAAA,CAAAC,OAAA;AAA+G,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,SAAA,WAAAA,QAAA,GAAAZ,MAAA,CAAAa,MAAA,GAAAb,MAAA,CAAAa,MAAA,CAAAC,IAAA,eAAAC,CAAA,aAAAN,CAAA,MAAAA,CAAA,GAAAO,SAAA,CAAAC,MAAA,EAAAR,CAAA,UAAAS,CAAA,GAAAF,SAAA,CAAAP,CAAA,YAAAU,CAAA,IAAAD,CAAA,OAAAE,cAAA,CAAAC,IAAA,CAAAH,CAAA,EAAAC,CAAA,MAAAJ,CAAA,CAAAI,CAAA,IAAAD,CAAA,CAAAC,CAAA,aAAAJ,CAAA,KAAAH,QAAA,CAAAU,KAAA,OAAAN,SAAA;AAE/G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASZ,gBAAgBA,CAACmB,KAAgB,EAAE;EACjD,oBAAOlB,MAAA,CAAAM,OAAA,CAAAa,aAAA,CAAChB,gCAAA,CAAAG,OAA+B,EAAAC,QAAA,KAAKW,KAAK;IAAEE,WAAW,EAAE;EAAM,EAAE,CAAC;AAC3E","ignoreList":[]}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ScrollToTopGuard = ScrollToTopGuard;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
+ /**
10
+ * EXPERIMENTAL API, MIGHT CHANGE W/O ANY NOTICE
11
+ *
12
+ * This is an **experimental, unstable** component which might be subject to
13
+ * breaking changes and will be removed in the future. It is meant to be used
14
+ * only as a temporary workaround until the issue is fixed on `react-native`'s
15
+ * side. The issue report: https://github.com/react/react-native/issues/56061.
16
+ *
17
+ * Falls back to `React.Fragment` on platforms other than iOS.
18
+ */
19
+ function ScrollToTopGuard({
20
+ children
21
+ }) {
22
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, children);
23
+ }
24
+ //# sourceMappingURL=ScrollToTopGuard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","e","__esModule","default","ScrollToTopGuard","children","createElement","Fragment"],"sourceRoot":"../../../../src","sources":["components/scroll-to-top-guard/ScrollToTopGuard.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA0B,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAG1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASG,gBAAgBA,CAAC;EAAEC;AAAoB,CAAC,EAAE;EACjD,oBAAOP,MAAA,CAAAK,OAAA,CAAAG,aAAA,CAAAR,MAAA,CAAAK,OAAA,CAAAI,QAAA,QAAGF,QAAW,CAAC;AACxB","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "ScrollToTopGuard", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _ScrollToTopGuard.ScrollToTopGuard;
10
+ }
11
+ });
12
+ var _ScrollToTopGuard = require("./ScrollToTopGuard");
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_ScrollToTopGuard","require"],"sourceRoot":"../../../../src","sources":["components/scroll-to-top-guard/index.ts"],"mappings":";;;;;;;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA","ignoreList":[]}
@@ -29,6 +29,7 @@ function StackHeaderConfig(props, forwardedRef) {
29
29
  leadingItems,
30
30
  trailingItems,
31
31
  titleItem,
32
+ titleMenu,
32
33
  subtitleItem,
33
34
  largeSubtitleItem,
34
35
  largeTitle,
@@ -54,32 +55,29 @@ function StackHeaderConfig(props, forwardedRef) {
54
55
  }
55
56
  }
56
57
  }));
58
+ const allMenus = (0, _react.useMemo)(() => [...(leadingItems ?? []).filter(it => it && it.type === 'item').map(it => it.menu), ...(trailingItems ?? []).filter(it => it && it.type === 'item').map(it => it.menu), titleMenu].filter(it => !!it), [leadingItems, trailingItems, titleMenu]);
57
59
  const handleMenuItemPress = (0, _react.useCallback)(event => {
58
- const items = Array.of(...(leadingItems ?? []).filter(it => it && it.type === 'item'), ...(trailingItems ?? []).filter(it => it && it.type === 'item'));
59
- const menuElement = (0, _utils.findMenuElementByIdInItems)(items, event.nativeEvent.menuItemId);
60
+ const menuElement = (0, _utils.findMenuElementByIdInMenus)(allMenus, event.nativeEvent.menuItemId);
60
61
  if (menuElement && menuElement.type === 'menuItem') {
61
62
  menuElement.onPress?.();
62
63
  }
63
- }, [leadingItems, trailingItems]);
64
- const allMenuItems = [...(leadingItems ?? []), ...(trailingItems ?? [])].filter(it => it && it.type === 'item');
64
+ }, [allMenus]);
65
65
  const handleSelectionChange = (0, _react.useCallback)(event => {
66
66
  const {
67
67
  menuId,
68
68
  selectedMenuItemIds
69
69
  } = event.nativeEvent;
70
- const menu = (0, _utils.findMenuElementByIdInItems)(allMenuItems, menuId);
70
+ const menu = (0, _utils.findMenuElementByIdInMenus)(allMenus, menuId);
71
71
  if (menu && menu.type === 'menu') {
72
72
  menu.onSelectionChange?.(selectedMenuItemIds);
73
73
  }
74
- }, [allMenuItems]);
74
+ }, [allMenus]);
75
75
  (0, _react.useEffect)(() => {
76
- for (const item of allMenuItems) {
77
- if ('menu' in item && item.menu) {
78
- (0, _utils.validateMenuCallbacks)(item.menu);
79
- }
76
+ for (const menu of allMenus) {
77
+ (0, _utils.validateMenuCallbacks)(menu);
80
78
  }
81
- // eslint-disable-next-line react-hooks/exhaustive-deps
82
- }, [leadingItems, trailingItems]);
79
+ }, [allMenus]);
80
+ const resolvedTitleMenu = (0, _react.useMemo)(() => titleMenu != null ? (0, _iconUtils.resolveMenuIcons)(titleMenu) : undefined, [titleMenu]);
83
81
  return /*#__PURE__*/_react.default.createElement(_StackHeaderConfigIOSNativeComponent.default, _extends({
84
82
  ref: nativeRef
85
83
  }, restProps, {
@@ -87,6 +85,7 @@ function StackHeaderConfig(props, forwardedRef) {
87
85
  largeTitle: largeTitle,
88
86
  largeSubtitle: largeSubtitle,
89
87
  largeTitleEnabled: !!largeTitleEnabled,
88
+ titleMenu: resolvedTitleMenu,
90
89
  style: styles.config,
91
90
  onMenuItemPress: handleMenuItemPress,
92
91
  onMenuSelectionChange: handleSelectionChange
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_StackHeaderConfigIOSNativeComponent","_StackHeaderItemSpacer","_interopRequireDefault","_StackHeaderItem","_reactNative","_utils","_iconUtils","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","StackHeaderConfig","props","forwardedRef","ios","android","restProps","leadingItems","trailingItems","titleItem","subtitleItem","largeSubtitleItem","largeTitle","largeSubtitle","largeTitleEnabled","nativeRef","useRef","useImperativeHandle","setMenuItemOptions","menuElementId","options","current","console","warn","StackHeaderConfigIOSNativeCommands","parseMenuElementOptionsToNative","setMenuOptions","handleMenuItemPress","useCallback","event","items","Array","of","filter","it","type","menuElement","findMenuElementByIdInItems","nativeEvent","menuItemId","onPress","allMenuItems","handleSelectionChange","menuId","selectedMenuItemIds","menu","onSelectionChange","useEffect","item","validateMenuCallbacks","createElement","ref","collapsable","style","styles","config","onMenuItemPress","onMenuSelectionChange","map","makeItemViewFromItem","placement","id","rest","key","itemId","nativeOptions","fromEntries","entries","flatMap","value","typedKey","icon","undefined","resolveIconAssetSources","isArray","Error","StyleSheet","create","position","left","top","_default","exports","forwardRef"],"sourceRoot":"../../../../../src","sources":["components/stack/header/StackHeaderConfig.ios.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_StackHeaderConfigIOSNativeComponent","_StackHeaderItemSpacer","_interopRequireDefault","_StackHeaderItem","_reactNative","_utils","_iconUtils","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","StackHeaderConfig","props","forwardedRef","ios","android","restProps","leadingItems","trailingItems","titleItem","titleMenu","subtitleItem","largeSubtitleItem","largeTitle","largeSubtitle","largeTitleEnabled","nativeRef","useRef","useImperativeHandle","setMenuItemOptions","menuElementId","options","current","console","warn","StackHeaderConfigIOSNativeCommands","parseMenuElementOptionsToNative","setMenuOptions","allMenus","useMemo","filter","it","type","map","menu","handleMenuItemPress","useCallback","event","menuElement","findMenuElementByIdInMenus","nativeEvent","menuItemId","onPress","handleSelectionChange","menuId","selectedMenuItemIds","onSelectionChange","useEffect","validateMenuCallbacks","resolvedTitleMenu","resolveMenuIcons","undefined","createElement","ref","collapsable","style","styles","config","onMenuItemPress","onMenuSelectionChange","item","makeItemViewFromItem","placement","id","rest","key","itemId","nativeOptions","fromEntries","entries","flatMap","value","typedKey","icon","resolveIconAssetSources","Array","isArray","Error","StyleSheet","create","position","left","top","_default","exports","forwardRef"],"sourceRoot":"../../../../../src","sources":["components/stack/header/StackHeaderConfig.ios.tsx"],"mappings":"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","ignoreList":[]}
@@ -11,27 +11,6 @@ var _iconUtils = require("./iconUtils.ios");
11
11
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
12
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
13
13
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
14
- function resolveMenuElementIcons(element) {
15
- if (element.type === 'menuItem') {
16
- if (element.icon == null) {
17
- return element;
18
- }
19
- return {
20
- ...element,
21
- icon: (0, _iconUtils.resolveIconAssetSources)(element.icon)
22
- };
23
- }
24
- return resolveMenuIcons(element);
25
- }
26
- function resolveMenuIcons(menu) {
27
- const resolvedIcon = (0, _iconUtils.resolveIconAssetSources)(menu.icon);
28
- const resolvedChildren = menu.children.map(resolveMenuElementIcons);
29
- return {
30
- ...menu,
31
- icon: resolvedIcon,
32
- children: resolvedChildren
33
- };
34
- }
35
14
  function StackHeaderItem(props) {
36
15
  const {
37
16
  render,
@@ -49,7 +28,7 @@ function StackHeaderItem(props) {
49
28
  onPress?.();
50
29
  }, [onPress]);
51
30
  const resolvedIcon = (0, _react.useMemo)(() => (0, _iconUtils.resolveIconAssetSources)(icon), [icon]);
52
- const resolvedMenu = (0, _react.useMemo)(() => menu != null ? resolveMenuIcons(menu) : undefined, [menu]);
31
+ const resolvedMenu = (0, _react.useMemo)(() => menu != null ? (0, _iconUtils.resolveMenuIcons)(menu) : undefined, [menu]);
53
32
  return /*#__PURE__*/_react.default.createElement(_StackHeaderItemIOSNativeComponent.default, _extends({}, rest, {
54
33
  icon: resolvedIcon,
55
34
  menu: resolvedMenu
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_StackHeaderItemIOSNativeComponent","_interopRequireDefault","_reactNative","_iconUtils","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","resolveMenuElementIcons","element","type","icon","resolveIconAssetSources","resolveMenuIcons","menu","resolvedIcon","resolvedChildren","children","map","StackHeaderItem","props","render","onPress","rest","handlePress","useCallback","_event","useMemo","resolvedMenu","undefined","createElement","respondsToOnPress","onHeaderItemPress","style","styles","config","StyleSheet","create","position","left","top"],"sourceRoot":"../../../../../../src","sources":["components/stack/header/ios/StackHeaderItem.ios.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_StackHeaderItemIOSNativeComponent","_interopRequireDefault","_reactNative","_iconUtils","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","StackHeaderItem","props","render","onPress","icon","menu","rest","handlePress","useCallback","_event","resolvedIcon","useMemo","resolveIconAssetSources","resolvedMenu","resolveMenuIcons","undefined","createElement","respondsToOnPress","onHeaderItemPress","style","styles","config","StyleSheet","create","position","left","top"],"sourceRoot":"../../../../../../src","sources":["components/stack/header/ios/StackHeaderItem.ios.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,kCAAA,GAAAC,sBAAA,CAAAF,OAAA;AAGA,IAAAG,YAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AAA4E,SAAAE,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAN,wBAAAM,CAAA,EAAAG,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAV,uBAAA,YAAAA,CAAAM,CAAA,EAAAG,CAAA,SAAAA,CAAA,IAAAH,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,MAAAO,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAR,OAAA,EAAAF,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAS,CAAA,MAAAF,CAAA,GAAAJ,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAE,CAAA,CAAAI,GAAA,CAAAX,CAAA,UAAAO,CAAA,CAAAK,GAAA,CAAAZ,CAAA,GAAAO,CAAA,CAAAM,GAAA,CAAAb,CAAA,EAAAS,CAAA,gBAAAN,CAAA,IAAAH,CAAA,gBAAAG,CAAA,OAAAW,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAG,CAAA,OAAAK,CAAA,IAAAD,CAAA,GAAAS,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAG,CAAA,OAAAK,CAAA,CAAAI,GAAA,IAAAJ,CAAA,CAAAK,GAAA,IAAAN,CAAA,CAAAE,CAAA,EAAAN,CAAA,EAAAK,CAAA,IAAAC,CAAA,CAAAN,CAAA,IAAAH,CAAA,CAAAG,CAAA,WAAAM,CAAA,KAAAT,CAAA,EAAAG,CAAA;AAAA,SAAAgB,SAAA,WAAAA,QAAA,GAAAH,MAAA,CAAAI,MAAA,GAAAJ,MAAA,CAAAI,MAAA,CAAAC,IAAA,eAAAf,CAAA,aAAAN,CAAA,MAAAA,CAAA,GAAAsB,SAAA,CAAAC,MAAA,EAAAvB,CAAA,UAAAG,CAAA,GAAAmB,SAAA,CAAAtB,CAAA,YAAAK,CAAA,IAAAF,CAAA,OAAAW,cAAA,CAAAC,IAAA,CAAAZ,CAAA,EAAAE,CAAA,MAAAC,CAAA,CAAAD,CAAA,IAAAF,CAAA,CAAAE,CAAA,aAAAC,CAAA,KAAAa,QAAA,CAAAK,KAAA,OAAAF,SAAA;AAE7D,SAASG,eAAeA,CAACC,KAA2B,EAAE;EACnE,MAAM;IAAEC,MAAM;IAAEC,OAAO;IAAEC,IAAI;IAAEC,IAAI;IAAE,GAAGC;EAAK,CAAC,GAAGL,KAAK;;EAEtD;EACA;EACA;;EAEA,MAAMM,WAAW,GAAG,IAAAC,kBAAW,EAC5BC,MAAkD,IAAK;IACtDN,OAAO,GAAG,CAAC;EACb,CAAC,EACD,CAACA,OAAO,CACV,CAAC;EAED,MAAMO,YAAY,GAAG,IAAAC,cAAO,EAAC,MAAM,IAAAC,kCAAuB,EAACR,IAAI,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EACzE,MAAMS,YAAY,GAAG,IAAAF,cAAO,EAC1B,MAAON,IAAI,IAAI,IAAI,GAAG,IAAAS,2BAAgB,EAACT,IAAI,CAAC,GAAGU,SAAU,EACzD,CAACV,IAAI,CACP,CAAC;EAED,oBACErC,MAAA,CAAAS,OAAA,CAAAuC,aAAA,CAAC7C,kCAAA,CAAAM,OAAiC,EAAAiB,QAAA,KAC5BY,IAAI;IACRF,IAAI,EAAEM,YAAa;IACnBL,IAAI,EAAEQ;IACN;IACA;IAAA;IACAI,iBAAiB,EAAE,CAAC,CAACd,OAAQ;IAC7Be,iBAAiB,EAAEX,WAAY;IAC/BY,KAAK,EAAEC,MAAM,CAACC;EAAO,IACpBnB,MAAM,GAAG,CACuB,CAAC;AAExC;AAEA,MAAMkB,MAAM,GAAGE,uBAAU,CAACC,MAAM,CAAC;EAC/BF,MAAM,EAAE;IACNG,QAAQ,EAAE,UAAU;IACpBC,IAAI,EAAE,CAAC;IACPC,GAAG,EAAE;EACP;AACF,CAAC,CAAC","ignoreList":[]}
@@ -4,23 +4,54 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.resolveIconAssetSources = resolveIconAssetSources;
7
+ exports.resolveMenuElementIcons = resolveMenuElementIcons;
8
+ exports.resolveMenuIcons = resolveMenuIcons;
7
9
  var _reactNative = require("react-native");
8
10
  function resolveIconAssetSources(icon) {
9
11
  if (icon == null) {
10
12
  return undefined;
11
13
  }
12
14
  if (icon.type === 'imageSource') {
15
+ const resolvedImageSource = _reactNative.Image.resolveAssetSource(icon.imageSource);
16
+ if (!resolvedImageSource) {
17
+ return undefined;
18
+ }
13
19
  return {
14
20
  type: 'imageSource',
15
- imageSource: _reactNative.Image.resolveAssetSource(icon.imageSource)
21
+ imageSource: resolvedImageSource
16
22
  };
17
23
  }
18
24
  if (icon.type === 'templateSource') {
25
+ const resolvedTemplateSource = _reactNative.Image.resolveAssetSource(icon.templateSource);
26
+ if (!resolvedTemplateSource) {
27
+ return undefined;
28
+ }
19
29
  return {
20
30
  type: 'templateSource',
21
- templateSource: _reactNative.Image.resolveAssetSource(icon.templateSource)
31
+ templateSource: resolvedTemplateSource
22
32
  };
23
33
  }
24
34
  return icon;
25
35
  }
36
+ function resolveMenuElementIcons(element) {
37
+ if (element.type === 'menuItem') {
38
+ if (element.icon == null) {
39
+ return element;
40
+ }
41
+ return {
42
+ ...element,
43
+ icon: resolveIconAssetSources(element.icon)
44
+ };
45
+ }
46
+ return resolveMenuIcons(element);
47
+ }
48
+ function resolveMenuIcons(menu) {
49
+ const resolvedIcon = resolveIconAssetSources(menu.icon);
50
+ const resolvedChildren = menu.children.map(resolveMenuElementIcons);
51
+ return {
52
+ ...menu,
53
+ icon: resolvedIcon,
54
+ children: resolvedChildren
55
+ };
56
+ }
26
57
  //# sourceMappingURL=iconUtils.ios.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","resolveIconAssetSources","icon","undefined","type","imageSource","Image","resolveAssetSource","templateSource"],"sourceRoot":"../../../../../../src","sources":["components/stack/header/ios/iconUtils.ios.ts"],"mappings":";;;;;;AAEA,IAAAA,YAAA,GAAAC,OAAA;AAEO,SAASC,uBAAuBA,CACrCC,IAAiC,EACI;EACrC,IAAIA,IAAI,IAAI,IAAI,EAAE;IAChB,OAAOC,SAAS;EAClB;EACA,IAAID,IAAI,CAACE,IAAI,KAAK,aAAa,EAAE;IAC/B,OAAO;MACLA,IAAI,EAAE,aAAa;MACnBC,WAAW,EAAEC,kBAAK,CAACC,kBAAkB,CAACL,IAAI,CAACG,WAAW;IACxD,CAAC;EACH;EACA,IAAIH,IAAI,CAACE,IAAI,KAAK,gBAAgB,EAAE;IAClC,OAAO;MACLA,IAAI,EAAE,gBAAgB;MACtBI,cAAc,EAAEF,kBAAK,CAACC,kBAAkB,CAACL,IAAI,CAACM,cAAc;IAC9D,CAAC;EACH;EACA,OAAON,IAAI;AACb","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","resolveIconAssetSources","icon","undefined","type","resolvedImageSource","Image","resolveAssetSource","imageSource","resolvedTemplateSource","templateSource","resolveMenuElementIcons","element","resolveMenuIcons","menu","resolvedIcon","resolvedChildren","children","map"],"sourceRoot":"../../../../../../src","sources":["components/stack/header/ios/iconUtils.ios.ts"],"mappings":";;;;;;;;AAMA,IAAAA,YAAA,GAAAC,OAAA;AAEO,SAASC,uBAAuBA,CACrCC,IAAiC,EACI;EACrC,IAAIA,IAAI,IAAI,IAAI,EAAE;IAChB,OAAOC,SAAS;EAClB;EACA,IAAID,IAAI,CAACE,IAAI,KAAK,aAAa,EAAE;IAC/B,MAAMC,mBAAmB,GAAGC,kBAAK,CAACC,kBAAkB,CAACL,IAAI,CAACM,WAAW,CAAC;IAEtE,IAAI,CAACH,mBAAmB,EAAE;MACxB,OAAOF,SAAS;IAClB;IAEA,OAAO;MACLC,IAAI,EAAE,aAAa;MACnBI,WAAW,EAAEH;IACf,CAAC;EACH;EACA,IAAIH,IAAI,CAACE,IAAI,KAAK,gBAAgB,EAAE;IAClC,MAAMK,sBAAsB,GAAGH,kBAAK,CAACC,kBAAkB,CACrDL,IAAI,CAACQ,cACP,CAAC;IAED,IAAI,CAACD,sBAAsB,EAAE;MAC3B,OAAON,SAAS;IAClB;IAEA,OAAO;MACLC,IAAI,EAAE,gBAAgB;MACtBM,cAAc,EAAED;IAClB,CAAC;EACH;EACA,OAAOP,IAAI;AACb;AAEO,SAASS,uBAAuBA,CACrCC,OAAkC,EACP;EAC3B,IAAIA,OAAO,CAACR,IAAI,KAAK,UAAU,EAAE;IAC/B,IAAIQ,OAAO,CAACV,IAAI,IAAI,IAAI,EAAE;MACxB,OAAOU,OAAO;IAChB;IACA,OAAO;MAAE,GAAGA,OAAO;MAAEV,IAAI,EAAED,uBAAuB,CAACW,OAAO,CAACV,IAAI;IAAE,CAAC;EACpE;EACA,OAAOW,gBAAgB,CAACD,OAAO,CAAC;AAClC;AAEO,SAASC,gBAAgBA,CAACC,IAAwB,EAAsB;EAC7E,MAAMC,YAAY,GAAGd,uBAAuB,CAACa,IAAI,CAACZ,IAAI,CAAC;EACvD,MAAMc,gBAAgB,GAAGF,IAAI,CAACG,QAAQ,CAACC,GAAG,CAACP,uBAAuB,CAAC;EACnE,OAAO;IAAE,GAAGG,IAAI;IAAEZ,IAAI,EAAEa,YAAY;IAAEE,QAAQ,EAAED;EAAiB,CAAC;AACpE","ignoreList":[]}
@@ -4,16 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.findMenuElementById = findMenuElementById;
7
- exports.findMenuElementByIdInItems = findMenuElementByIdInItems;
7
+ exports.findMenuElementByIdInMenus = findMenuElementByIdInMenus;
8
8
  exports.validateMenuCallbacks = validateMenuCallbacks;
9
- function findMenuElementByIdInItems(items, id) {
10
- for (const item of items) {
11
- if (item.menu === undefined) {
12
- continue;
13
- }
14
- const menu = findMenuElementById(item.menu, id);
15
- if (menu !== null) {
16
- return menu;
9
+ function findMenuElementByIdInMenus(menus, id) {
10
+ for (const menu of menus) {
11
+ const element = findMenuElementById(menu, id);
12
+ if (element !== null) {
13
+ return element;
17
14
  }
18
15
  }
19
16
  return null;
@@ -1 +1 @@
1
- {"version":3,"names":["findMenuElementByIdInItems","items","id","item","menu","undefined","findMenuElementById","type","child","children","result","validateMenuCallbacks","walkMenuTreeAndValidateCallbacks","insideSingleSelection","isInsideSingleSelection","singleSelection","itemType","onPress","console","warn","onSelectionChange"],"sourceRoot":"../../../../../src","sources":["components/stack/header/utils.ts"],"mappings":";;;;;;;;AAMO,SAASA,0BAA0BA,CACxCC,KAAwB,EACxBC,EAAU,EACwB;EAClC,KAAK,MAAMC,IAAI,IAAIF,KAAK,EAAE;IACxB,IAAIE,IAAI,CAACC,IAAI,KAAKC,SAAS,EAAE;MAC3B;IACF;IAEA,MAAMD,IAAI,GAAGE,mBAAmB,CAACH,IAAI,CAACC,IAAI,EAAEF,EAAE,CAAC;IAC/C,IAAIE,IAAI,KAAK,IAAI,EAAE;MACjB,OAAOA,IAAI;IACb;EACF;EAEA,OAAO,IAAI;AACb;AAEO,SAASE,mBAAmBA,CACjCF,IAA+B,EAC/BF,EAAU,EACwB;EAClC,IAAIE,IAAI,CAACF,EAAE,KAAKA,EAAE,EAAE;IAClB,OAAOE,IAAI;EACb;EAEA,IAAIA,IAAI,CAACG,IAAI,KAAK,MAAM,EAAE;IACxB,KAAK,MAAMC,KAAK,IAAIJ,IAAI,CAACK,QAAQ,EAAE;MACjC,MAAMC,MAAM,GAAGJ,mBAAmB,CAACE,KAAK,EAAEN,EAAE,CAAC;MAC7C,IAAIQ,MAAM,KAAK,IAAI,EAAE;QACnB,OAAOA,MAAM;MACf;IACF;EACF;EAEA,OAAO,IAAI;AACb;AAEO,SAASC,qBAAqBA,CAACP,IAAwB,EAAQ;EACpEQ,gCAAgC,CAACR,IAAI,EAAE,KAAK,CAAC;AAC/C;AAEA,SAASQ,gCAAgCA,CACvCR,IAAwB,EACxBS,qBAA8B,EACxB;EACN;EACA;EACA,MAAMC,uBAAuB,GAC3BD,qBAAqB,IAAI,CAAC,CAACT,IAAI,CAACW,eAAe;EAEjD,KAAK,MAAMP,KAAK,IAAIJ,IAAI,CAACK,QAAQ,EAAE;IACjC,IAAID,KAAK,CAACD,IAAI,KAAK,UAAU,EAAE;MAC7B,IACE,CAACC,KAAK,CAACQ,QAAQ,KAAK,QAAQ,IACzBF,uBAAuB,IACtB,CAACN,KAAK,CAACQ,QAAQ,IAAI,WAAW,MAAM,WAAY,KACpDR,KAAK,CAACS,OAAO,EACb;QACAC,OAAO,CAACC,IAAI,CACV,qCAAqCX,KAAK,CAACN,EAAE,kBAAkB,GAC7D,uEACJ,CAAC;MACH;IACF;IAEA,IAAIM,KAAK,CAACD,IAAI,KAAK,MAAM,EAAE;MACzB,IAAIO,uBAAuB,IAAIN,KAAK,CAACY,iBAAiB,EAAE;QACtDF,OAAO,CAACC,IAAI,CACV,0CAA0CX,KAAK,CAACN,EAAE,kBAAkB,GAClE,2DAA2D,GAC3D,sEACJ,CAAC;MACH;MAEAU,gCAAgC,CAACJ,KAAK,EAAEM,uBAAuB,CAAC;IAClE;EACF;AACF","ignoreList":[]}
1
+ {"version":3,"names":["findMenuElementByIdInMenus","menus","id","menu","element","findMenuElementById","type","child","children","result","validateMenuCallbacks","walkMenuTreeAndValidateCallbacks","insideSingleSelection","isInsideSingleSelection","singleSelection","itemType","onPress","console","warn","onSelectionChange"],"sourceRoot":"../../../../../src","sources":["components/stack/header/utils.ts"],"mappings":";;;;;;;;AAKO,SAASA,0BAA0BA,CACxCC,KAA2B,EAC3BC,EAAU,EACwB;EAClC,KAAK,MAAMC,IAAI,IAAIF,KAAK,EAAE;IACxB,MAAMG,OAAO,GAAGC,mBAAmB,CAACF,IAAI,EAAED,EAAE,CAAC;IAC7C,IAAIE,OAAO,KAAK,IAAI,EAAE;MACpB,OAAOA,OAAO;IAChB;EACF;EAEA,OAAO,IAAI;AACb;AAEO,SAASC,mBAAmBA,CACjCF,IAA+B,EAC/BD,EAAU,EACwB;EAClC,IAAIC,IAAI,CAACD,EAAE,KAAKA,EAAE,EAAE;IAClB,OAAOC,IAAI;EACb;EAEA,IAAIA,IAAI,CAACG,IAAI,KAAK,MAAM,EAAE;IACxB,KAAK,MAAMC,KAAK,IAAIJ,IAAI,CAACK,QAAQ,EAAE;MACjC,MAAMC,MAAM,GAAGJ,mBAAmB,CAACE,KAAK,EAAEL,EAAE,CAAC;MAC7C,IAAIO,MAAM,KAAK,IAAI,EAAE;QACnB,OAAOA,MAAM;MACf;IACF;EACF;EAEA,OAAO,IAAI;AACb;AAEO,SAASC,qBAAqBA,CAACP,IAAwB,EAAQ;EACpEQ,gCAAgC,CAACR,IAAI,EAAE,KAAK,CAAC;AAC/C;AAEA,SAASQ,gCAAgCA,CACvCR,IAAwB,EACxBS,qBAA8B,EACxB;EACN;EACA;EACA,MAAMC,uBAAuB,GAC3BD,qBAAqB,IAAI,CAAC,CAACT,IAAI,CAACW,eAAe;EAEjD,KAAK,MAAMP,KAAK,IAAIJ,IAAI,CAACK,QAAQ,EAAE;IACjC,IAAID,KAAK,CAACD,IAAI,KAAK,UAAU,EAAE;MAC7B,IACE,CAACC,KAAK,CAACQ,QAAQ,KAAK,QAAQ,IACzBF,uBAAuB,IACtB,CAACN,KAAK,CAACQ,QAAQ,IAAI,WAAW,MAAM,WAAY,KACpDR,KAAK,CAACS,OAAO,EACb;QACAC,OAAO,CAACC,IAAI,CACV,qCAAqCX,KAAK,CAACL,EAAE,kBAAkB,GAC7D,uEACJ,CAAC;MACH;IACF;IAEA,IAAIK,KAAK,CAACD,IAAI,KAAK,MAAM,EAAE;MACzB,IAAIO,uBAAuB,IAAIN,KAAK,CAACY,iBAAiB,EAAE;QACtDF,OAAO,CAACC,IAAI,CACV,0CAA0CX,KAAK,CAACL,EAAE,kBAAkB,GAClE,2DAA2D,GAC3D,sEACJ,CAAC;MACH;MAEAS,gCAAgC,CAACJ,KAAK,EAAEM,uBAAuB,CAAC;IAClE;EACF;AACF","ignoreList":[]}
@@ -14,4 +14,15 @@ Object.keys(_safeArea).forEach(function (key) {
14
14
  }
15
15
  });
16
16
  });
17
+ var _scrollToTopGuard = require("../components/scroll-to-top-guard");
18
+ Object.keys(_scrollToTopGuard).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _scrollToTopGuard[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function () {
24
+ return _scrollToTopGuard[key];
25
+ }
26
+ });
27
+ });
17
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_safeArea","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sourceRoot":"../../../src","sources":["experimental/index.ts"],"mappings":";;;;;AAOA,IAAAA,SAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,SAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,SAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,SAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["_safeArea","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_scrollToTopGuard"],"sourceRoot":"../../../src","sources":["experimental/index.ts"],"mappings":";;;;;AAOA,IAAAA,SAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,SAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,SAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,SAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,iBAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,iBAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,iBAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,iBAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["Object","defineProperty","exports","value","default","_reactNative","require","_default","codegenNativeComponent"],"sourceRoot":"../../../src","sources":["fabric/ScrollViewMarkerNativeComponent.ts"],"mappings":";AAAA,YAAY;;AAACA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,OAAA;AAGb,IAAAC,YAAA,GAAAC,OAAA;AAAsD,IAAAC,QAAA,GAAAL,OAAA,CAAAE,OAAA,GAWvC,IAAAI,mCAAsB,EAAc,qBAAqB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Object","defineProperty","exports","value","default","_reactNative","require","_default","codegenNativeComponent"],"sourceRoot":"../../../src","sources":["fabric/ScrollViewMarkerNativeComponent.ts"],"mappings":";AAAA,YAAY;;AAACA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,OAAA;AAOb,IAAAC,YAAA,GAAAC,OAAA;AAAsD,IAAAC,QAAA,GAAAL,OAAA,CAAAE,OAAA,GAWvC,IAAAI,mCAAsB,EACnC,qBACF,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["Object","defineProperty","exports","value","default","_reactNative","require","_default","codegenNativeComponent","interfaceOnly"],"sourceRoot":"../../../../src","sources":["fabric/legacy/FullWindowOverlayNativeComponent.ts"],"mappings":";AAAA,YAAY;;AAACA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,OAAA;AAEb,IAAAC,YAAA,GAAAC,OAAA;AAGA;AAAA,IAAAC,QAAA,GAAAL,OAAA,CAAAE,OAAA,GAKe,IAAAI,mCAAsB,EAAc,sBAAsB,EAAE;EACzEC,aAAa,EAAE;AACjB,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Object","defineProperty","exports","value","default","_reactNative","require","_default","codegenNativeComponent","interfaceOnly"],"sourceRoot":"../../../../src","sources":["fabric/legacy/FullWindowOverlayNativeComponent.ts"],"mappings":";AAAA,YAAY;;AAACA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,OAAA;AAEb,IAAAC,YAAA,GAAAC,OAAA;AAOA;AAAA,IAAAC,QAAA,GAAAL,OAAA,CAAAE,OAAA,GAKe,IAAAI,mCAAsB,EAAc,sBAAsB,EAAE;EACzEC,aAAa,EAAE;AACjB,CAAC,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["Object","defineProperty","exports","value","default","_reactNative","require","_default","codegenNativeComponent","interfaceOnly"],"sourceRoot":"../../../../src","sources":["fabric/legacy/ModalScreenNativeComponent.ts"],"mappings":";AAAA,YAAY;;AAACA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,OAAA;AAEb,IAAAC,YAAA,GAAAC,OAAA;AAGA;AAAA,IAAAC,QAAA,GAAAL,OAAA,CAAAE,OAAA,GAyHe,IAAAI,mCAAsB,EAAc,gBAAgB,EAAE;EACnEC,aAAa,EAAE;AACjB,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Object","defineProperty","exports","value","default","_reactNative","require","_default","codegenNativeComponent","interfaceOnly"],"sourceRoot":"../../../../src","sources":["fabric/legacy/ModalScreenNativeComponent.ts"],"mappings":";AAAA,YAAY;;AAACA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,OAAA;AAEb,IAAAC,YAAA,GAAAC,OAAA;AAQA;AAAA,IAAAC,QAAA,GAAAL,OAAA,CAAAE,OAAA,GA0He,IAAAI,mCAAsB,EAAc,gBAAgB,EAAE;EACnEC,aAAa,EAAE;AACjB,CAAC,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["Object","defineProperty","exports","value","default","_reactNative","require","_default","codegenNativeComponent"],"sourceRoot":"../../../../src","sources":["fabric/legacy/ScreenContainerNativeComponent.ts"],"mappings":";AAAA,YAAY;;AAACA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,OAAA;AAEb,IAAAC,YAAA,GAAAC,OAAA;AAAsD,IAAAC,QAAA,GAAAL,OAAA,CAAAE,OAAA,GAKvC,IAAAI,mCAAsB,EAAc,oBAAoB,EAAE,CAAC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Object","defineProperty","exports","value","default","_reactNative","require","_default","codegenNativeComponent"],"sourceRoot":"../../../../src","sources":["fabric/legacy/ScreenContainerNativeComponent.ts"],"mappings":";AAAA,YAAY;;AAACA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,OAAA;AAEb,IAAAC,YAAA,GAAAC,OAAA;AAAsD,IAAAC,QAAA,GAAAL,OAAA,CAAAE,OAAA,GAKvC,IAAAI,mCAAsB,EACnC,oBAAoB,EACpB,CAAC,CACH,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_default","exports","default","codegenNativeComponent"],"sourceRoot":"../../../../src","sources":["fabric/legacy/ScreenFooterNativeComponent.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAsD,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAKvC,IAAAC,mCAAsB,EAAc,iBAAiB,EAAE,CAAC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_default","exports","default","codegenNativeComponent"],"sourceRoot":"../../../../src","sources":["fabric/legacy/ScreenFooterNativeComponent.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAsD,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAKvC,IAAAC,mCAAsB,EACnC,iBAAiB,EACjB,CAAC,CACH,CAAC","ignoreList":[]}