@apexnative/navigation 1.0.0-alpha.0 → 1.0.0-alpha.10

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 (574) hide show
  1. package/ApexNavigation.podspec +2 -1
  2. package/CHANGELOG.md +128 -0
  3. package/README.md +147 -51
  4. package/android/CLAUDE.md +78 -25
  5. package/android/CORE.md +49 -25
  6. package/android/RECIPES.md +13 -6
  7. package/android/consumer-rules.pro +6 -0
  8. package/android/src/main/java/dev/apexnative/navigation/NavigationActivity.kt +85 -10
  9. package/android/src/main/java/dev/apexnative/navigation/NavigationApplication.kt +34 -13
  10. package/android/src/main/java/dev/apexnative/navigation/layout/LayoutChecks.kt +5 -1
  11. package/android/src/main/java/dev/apexnative/navigation/layout/LayoutNode.kt +6 -2
  12. package/android/src/main/java/dev/apexnative/navigation/nativescreen/NativeScreenContext.kt +2 -2
  13. package/android/src/main/java/dev/apexnative/navigation/options/AnimationsOptions.kt +2 -2
  14. package/android/src/main/java/dev/apexnative/navigation/options/BottomTabOptions.kt +1 -1
  15. package/android/src/main/java/dev/apexnative/navigation/options/BottomTabsOptions.kt +13 -8
  16. package/android/src/main/java/dev/apexnative/navigation/options/ButtonMenuOptions.kt +2 -2
  17. package/android/src/main/java/dev/apexnative/navigation/options/ButtonOptions.kt +3 -3
  18. package/android/src/main/java/dev/apexnative/navigation/options/HardwareBackButtonOptions.kt +9 -1
  19. package/android/src/main/java/dev/apexnative/navigation/options/LargeTitleOptions.kt +1 -1
  20. package/android/src/main/java/dev/apexnative/navigation/options/LayoutAnimation.kt +1 -1
  21. package/android/src/main/java/dev/apexnative/navigation/options/OptionKey.kt +18 -0
  22. package/android/src/main/java/dev/apexnative/navigation/options/OptionPaths.kt +91 -0
  23. package/android/src/main/java/dev/apexnative/navigation/options/OptionsCache.kt +8 -4
  24. package/android/src/main/java/dev/apexnative/navigation/options/SheetOptions.kt +7 -4
  25. package/android/src/main/java/dev/apexnative/navigation/options/SideMenuOptions.kt +6 -1
  26. package/android/src/main/java/dev/apexnative/navigation/options/StackAnimationOptions.kt +40 -2
  27. package/android/src/main/java/dev/apexnative/navigation/options/StatusBarOptions.kt +7 -3
  28. package/android/src/main/java/dev/apexnative/navigation/options/TitleOptions.kt +2 -2
  29. package/android/src/main/java/dev/apexnative/navigation/options/TopBarAppearanceOptions.kt +1 -1
  30. package/android/src/main/java/dev/apexnative/navigation/options/TopBarOptions.kt +16 -7
  31. package/android/src/main/java/dev/apexnative/navigation/options/UserChoices.kt +159 -0
  32. package/android/src/main/java/dev/apexnative/navigation/react/CommandAnswer.kt +29 -36
  33. package/android/src/main/java/dev/apexnative/navigation/react/CommandContract.kt +59 -0
  34. package/android/src/main/java/dev/apexnative/navigation/react/ContentHeights.kt +95 -0
  35. package/android/src/main/java/dev/apexnative/navigation/react/ContentMounts.kt +66 -0
  36. package/android/src/main/java/dev/apexnative/navigation/react/ErrorTexts.kt +75 -60
  37. package/android/src/main/java/dev/apexnative/navigation/react/Hinge.kt +35 -23
  38. package/android/src/main/java/dev/apexnative/navigation/react/NavigationTurboModule.kt +12 -7
  39. package/android/src/main/java/dev/apexnative/navigation/react/OptionsCommands.kt +42 -4
  40. package/android/src/main/java/dev/apexnative/navigation/react/PendingCalls.kt +48 -0
  41. package/android/src/main/java/dev/apexnative/navigation/react/ReactView.kt +54 -20
  42. package/android/src/main/java/dev/apexnative/navigation/react/ReloadCoordinator.kt +7 -6
  43. package/android/src/main/java/dev/apexnative/navigation/react/ScreenEnvironment.kt +177 -0
  44. package/android/src/main/java/dev/apexnative/navigation/react/ScreenRegions.kt +19 -50
  45. package/android/src/main/java/dev/apexnative/navigation/react/ScrollEvents.kt +49 -128
  46. package/android/src/main/java/dev/apexnative/navigation/react/events/AppearanceDispatcher.kt +50 -81
  47. package/android/src/main/java/dev/apexnative/navigation/react/events/EventContract.kt +226 -0
  48. package/android/src/main/java/dev/apexnative/navigation/react/events/EventEmitter.kt +135 -94
  49. package/android/src/main/java/dev/apexnative/navigation/react/events/NavigationState.kt +154 -0
  50. package/android/src/main/java/dev/apexnative/navigation/react/events/ScreenAppearance.kt +0 -6
  51. package/android/src/main/java/dev/apexnative/navigation/safearea/SafeAreaView.kt +12 -10
  52. package/android/src/main/java/dev/apexnative/navigation/slots/SlotContainers.kt +10 -7
  53. package/android/src/main/java/dev/apexnative/navigation/slots/SlotScreenView.kt +39 -19
  54. package/android/src/main/java/dev/apexnative/navigation/slots/SlotView.kt +16 -4
  55. package/android/src/main/java/dev/apexnative/navigation/slots/SlotViews.kt +40 -0
  56. package/android/src/main/java/dev/apexnative/navigation/utils/ImageKey.kt +66 -0
  57. package/android/src/main/java/dev/apexnative/navigation/utils/ImageLoader.kt +7 -89
  58. package/android/src/main/java/dev/apexnative/navigation/utils/ImageRequests.kt +76 -0
  59. package/android/src/main/java/dev/apexnative/navigation/utils/MaterialTheme.kt +5 -6
  60. package/android/src/main/java/dev/apexnative/navigation/utils/OptionImages.kt +262 -0
  61. package/android/src/main/java/dev/apexnative/navigation/utils/SystemAnimations.kt +36 -0
  62. package/android/src/main/java/dev/apexnative/navigation/utils/UiUtils.kt +3 -3
  63. package/android/src/main/java/dev/apexnative/navigation/utils/ViewController.kt +3 -1
  64. package/android/src/main/java/dev/apexnative/navigation/utils/ViewExtensions.kt +0 -13
  65. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/arrangement/ArrangementController.kt +10 -7
  66. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/arrangement/SecondaryScreenPresenter.kt +13 -5
  67. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/bottomtabs/AppliedTabCalls.kt +49 -0
  68. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/bottomtabs/BottomTabsCollapseBehavior.kt +5 -3
  69. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/bottomtabs/BottomTabsController.kt +108 -34
  70. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/bottomtabs/BottomTabsPresenter.kt +25 -24
  71. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/bottomtabs/CustomTabRowGeometry.kt +22 -0
  72. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/bottomtabs/TabItems.kt +3 -3
  73. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/bottomtabs/TabsRoom.kt +0 -5
  74. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/component/ComponentPresenter.kt +28 -7
  75. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/component/ComponentViewController.kt +12 -9
  76. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/component/ContentReadiness.kt +2 -2
  77. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/component/RenderWait.kt +27 -7
  78. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/component/ScreenFrame.kt +1 -1
  79. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/component/ScreenReadiness.kt +103 -56
  80. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/component/ScreenSafeArea.kt +29 -11
  81. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/externalcomponent/ExternalComponentViewController.kt +2 -6
  82. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/modal/ModalAnimations.kt +22 -24
  83. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/modal/ModalCoordinator.kt +109 -21
  84. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/modal/ModalRecord.kt +21 -6
  85. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/modal/ModalSheet.kt +476 -73
  86. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/modal/ModalViews.kt +57 -25
  87. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/modal/SheetBack.kt +42 -0
  88. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/modal/SheetStops.kt +83 -0
  89. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/navigator/BackCallbackCheck.kt +50 -0
  90. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/navigator/BackCallbackState.kt +49 -14
  91. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/navigator/Navigator.kt +71 -12
  92. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/navigator/RootCoordinator.kt +37 -11
  93. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/overlay/OverlayCoordinator.kt +10 -8
  94. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/parent/Capabilities.kt +11 -4
  95. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/parent/ContainerBackground.kt +3 -3
  96. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/parent/ParentController.kt +6 -6
  97. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/sidemenu/SideMenuController.kt +42 -9
  98. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/sidemenu/SideMenuMotion.kt +19 -8
  99. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/sidemenu/SideMenuPresenter.kt +16 -7
  100. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/sidemenu/SideMenuRules.kt +43 -4
  101. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/splitview/SplitPanes.kt +23 -0
  102. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/splitview/SplitViewController.kt +77 -17
  103. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/stack/BackPreview.kt +315 -0
  104. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/stack/PreparedFrame.kt +3 -3
  105. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/stack/StackCommands.kt +30 -20
  106. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/stack/StackController.kt +216 -18
  107. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/stack/StackDisplay.kt +26 -1
  108. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/stack/StackQueue.kt +149 -41
  109. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/stack/StackTransitions.kt +26 -8
  110. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/stack/StackViews.kt +115 -6
  111. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/stack/fab/FabMotion.kt +142 -0
  112. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/stack/fab/FabPresenter.kt +222 -48
  113. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/stack/search/ScreenSearch.kt +3 -5
  114. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/stack/search/StackSearchPresenter.kt +30 -34
  115. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/stack/topbar/BarComponents.kt +5 -51
  116. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/stack/topbar/BarRowTransition.kt +3 -2
  117. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/stack/topbar/ButtonPlaces.kt +11 -5
  118. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/stack/topbar/MenuChecks.kt +13 -56
  119. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/stack/topbar/TopBarPresenter.kt +219 -54
  120. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/stack/topbar/TopBarVisibility.kt +9 -2
  121. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/viewcontroller/ScrollEventListener.kt +6 -9
  122. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/viewcontroller/ViewController.kt +75 -21
  123. package/android/src/main/java/dev/apexnative/navigation/views/animations/AnimationLayer.kt +73 -0
  124. package/android/src/main/java/dev/apexnative/navigation/views/animations/Curves.kt +29 -11
  125. package/android/src/main/java/dev/apexnative/navigation/views/animations/ValueInterpolation.kt +14 -0
  126. package/android/src/main/java/dev/apexnative/navigation/views/bottomtabs/BottomTabs.kt +9 -7
  127. package/android/src/main/java/dev/apexnative/navigation/views/bottomtabs/BottomTabsLayout.kt +61 -2
  128. package/android/src/main/java/dev/apexnative/navigation/views/bottomtabs/CustomBottomTabItemView.kt +0 -5
  129. package/android/src/main/java/dev/apexnative/navigation/views/bottomtabs/CustomTabRow.kt +72 -10
  130. package/android/src/main/java/dev/apexnative/navigation/views/element/ElementStep.kt +31 -0
  131. package/android/src/main/java/dev/apexnative/navigation/views/element/ElementTransitions.kt +143 -135
  132. package/android/src/main/java/dev/apexnative/navigation/views/element/TargetsWait.kt +13 -5
  133. package/android/src/main/java/dev/apexnative/navigation/views/element/TransitionLayer.kt +37 -112
  134. package/android/src/main/java/dev/apexnative/navigation/views/element/TransitionTargets.kt +9 -6
  135. package/android/src/main/java/dev/apexnative/navigation/views/element/TransitionViews.kt +100 -0
  136. package/android/src/main/java/dev/apexnative/navigation/views/element/animators/ElementPictures.kt +112 -4
  137. package/android/src/main/java/dev/apexnative/navigation/views/element/animators/FlightGeometry.kt +346 -36
  138. package/android/src/main/java/dev/apexnative/navigation/views/element/animators/ImageMorph.kt +199 -0
  139. package/android/src/main/java/dev/apexnative/navigation/views/element/animators/SharedAnimatorFactory.kt +56 -41
  140. package/android/src/main/java/dev/apexnative/navigation/views/element/animators/TextMorph.kt +176 -0
  141. package/android/src/main/java/dev/apexnative/navigation/views/element/animators/ViewMorph.kt +108 -0
  142. package/android/src/main/java/dev/apexnative/navigation/views/sidemenu/SideMenuView.kt +12 -3
  143. package/android/src/main/java/dev/apexnative/navigation/views/stack/ScreenEdge.kt +45 -0
  144. package/android/src/main/java/dev/apexnative/navigation/views/stack/StackLayout.kt +140 -1
  145. package/android/src/main/java/dev/apexnative/navigation/views/stack/fab/Fab.kt +14 -10
  146. package/android/src/main/java/dev/apexnative/navigation/views/stack/fab/FabCopy.kt +85 -0
  147. package/android/src/main/java/dev/apexnative/navigation/views/stack/fab/FabMenu.kt +13 -0
  148. package/android/src/main/java/dev/apexnative/navigation/views/stack/topbar/TitleBar.kt +5 -17
  149. package/android/src/main/java/dev/apexnative/navigation/views/stack/topbar/TopBar.kt +73 -34
  150. package/android/src/main/java/dev/apexnative/navigation/views/stack/topbar/titlebar/BarButtonComponentCell.kt +6 -6
  151. package/android/src/main/java/dev/apexnative/navigation/views/stack/topbar/titlebar/BarButtonView.kt +113 -0
  152. package/android/src/main/java/dev/apexnative/navigation/views/stack/topbar/titlebar/BarMenu.kt +219 -0
  153. package/android/src/main/java/dev/apexnative/navigation/views/stack/topbar/titlebar/ButtonBar.kt +125 -178
  154. package/android/src/main/java/dev/apexnative/navigation/views/stack/topbar/titlebar/ButtonMenus.kt +34 -64
  155. package/android/src/main/java/dev/apexnative/navigation/views/stack/topbar/titlebar/ButtonRow.kt +216 -0
  156. package/android/src/main/jni/ANNContentHeights.cpp +82 -0
  157. package/android/src/main/res/drawable/apex_navigation_ic_arrow_right.xml +14 -0
  158. package/android/src/main/res/layout/apex_navigation_menu_header.xml +19 -0
  159. package/android/src/main/res/layout/apex_navigation_menu_item.xml +68 -0
  160. package/android/src/main/res/values/styles.xml +1 -1
  161. package/android/src/main/res/values-night/styles.xml +1 -1
  162. package/cli/app.js +1 -1
  163. package/cli/doctor/checks/app.js +77 -14
  164. package/cli/doctor/checks/splash.js +4 -22
  165. package/cli/migrate/native.js +18 -0
  166. package/cli/project.js +10 -2
  167. package/cli/setup/index.js +18 -0
  168. package/cli/setup/source.js +2 -1
  169. package/cli/setup/steps/appDelegate.js +66 -11
  170. package/cli/setup/steps/mainApplication.js +134 -19
  171. package/cli/setup/steps/metro.js +46 -0
  172. package/cli/setup/steps/sceneDelegate.js +108 -0
  173. package/cli/splash/index.js +3 -1
  174. package/cli/upgrade/changelog.js +2 -2
  175. package/docs-md/architecture/native-screens.md +4 -0
  176. package/docs-md/architecture/theme-and-context.md +131 -12
  177. package/docs-md/architecture/transitions.md +58 -12
  178. package/docs-md/containers/modals.md +8 -4
  179. package/docs-md/containers/overlays.md +3 -1
  180. package/docs-md/containers/side-menu.md +19 -2
  181. package/docs-md/containers/tabs.md +5 -1
  182. package/docs-md/flows/bottom-sheets.md +4 -2
  183. package/docs-md/flows/forms-in-a-modal.md +1 -1
  184. package/docs-md/fundamentals/screens-and-props.md +9 -1
  185. package/docs-md/fundamentals/starting-the-app.md +1 -1
  186. package/docs-md/guides/cli.md +4 -3
  187. package/docs-md/guides/deep-links.md +15 -33
  188. package/docs-md/help/glossary.md +4 -4
  189. package/docs-md/help/troubleshooting.md +44 -6
  190. package/docs-md/index.json +57 -1
  191. package/docs-md/migration/from-expo-router.md +1 -1
  192. package/docs-md/migration/from-react-native-navigation.md +9 -3
  193. package/docs-md/migration/from-react-navigation.md +2 -2
  194. package/docs-md/screen-ui/back-and-gestures.md +46 -2
  195. package/docs-md/screen-ui/bar-buttons.md +5 -5
  196. package/docs-md/screen-ui/search.md +1 -1
  197. package/docs-md/screen-ui/system-ui.md +17 -12
  198. package/docs-md/screen-ui/toolbar-and-fab.md +4 -2
  199. package/docs-md/screen-ui/top-bar.md +8 -4
  200. package/docs-md/start/installation.md +21 -3
  201. package/ios/Animations/ANNFrameDriver.h +55 -15
  202. package/ios/Animations/ANNFrameDriver.mm +216 -60
  203. package/ios/Animations/ANNTransitionAnimator.h +26 -5
  204. package/ios/Animations/ANNTransitionAnimator.mm +61 -13
  205. package/ios/Animations/ANNTransitionPlan.h +2 -2
  206. package/ios/Animations/ANNTransitionPlan.mm +10 -0
  207. package/ios/Animations/ANNTransitionWait.mm +6 -7
  208. package/ios/Animations/Elements/ANNElementFinder.h +57 -0
  209. package/ios/Animations/Elements/ANNElementFinder.mm +174 -2
  210. package/ios/Animations/Elements/ANNElementTransition.h +10 -8
  211. package/ios/Animations/Elements/ANNElementTransition.mm +19 -21
  212. package/ios/Animations/Elements/ANNSharedElementFlight.h +16 -11
  213. package/ios/Animations/Elements/ANNSharedElementFlight.mm +308 -69
  214. package/ios/Animations/Interpolators/ANNInterpolate.h +2 -30
  215. package/ios/Animations/Interpolators/ANNTransformParts.h +48 -0
  216. package/ios/Animations/Interpolators/ANNTransformParts.mm +507 -0
  217. package/ios/Animations/Interpolators/ANNViewTracks.h +9 -6
  218. package/ios/Animations/Interpolators/ANNViewTracks.mm +100 -30
  219. package/ios/CLAUDE.md +60 -24
  220. package/ios/CORE.md +44 -34
  221. package/ios/Contract/ANNCommandAnswer.h +13 -5
  222. package/ios/Contract/ANNCommandAnswer.mm +40 -32
  223. package/ios/Contract/ANNCommandContract.h +15 -0
  224. package/ios/Contract/ANNCommandContract.mm +78 -0
  225. package/ios/Contract/ANNCommandRunner.h +10 -9
  226. package/ios/Contract/ANNCommandRunner.mm +22 -28
  227. package/ios/Contract/ANNErrorTexts.h +6 -2
  228. package/ios/Contract/ANNErrorTexts.mm +18 -10
  229. package/ios/Contract/ANNLayoutNode.h +3 -3
  230. package/ios/Contract/ANNLayoutReader.h +3 -3
  231. package/ios/Core/ANNAppDelegate.mm +0 -2
  232. package/ios/Core/ANNAppearanceDispatcher.h +5 -4
  233. package/ios/Core/ANNAppearanceDispatcher.mm +12 -1
  234. package/ios/Core/ANNDeepLinkQueue.h +22 -2
  235. package/ios/Core/ANNDeepLinkQueue.mm +121 -14
  236. package/ios/Core/ANNErrorHandler.h +9 -4
  237. package/ios/Core/ANNErrorHandler.mm +20 -2
  238. package/ios/Core/ANNEventContract.h +246 -0
  239. package/ios/Core/ANNEventContract.mm +225 -0
  240. package/ios/Core/ANNEventEmitter.h +6 -2
  241. package/ios/Core/ANNEventEmitter.mm +117 -80
  242. package/ios/Core/ANNHinge.h +6 -0
  243. package/ios/Core/ANNHinge.mm +15 -4
  244. package/ios/Core/ANNJavaScriptCalls.h +33 -0
  245. package/ios/Core/ANNJavaScriptCalls.mm +52 -0
  246. package/ios/Core/ANNLayoutProtocol.h +5 -5
  247. package/ios/Core/ANNNavigationState.h +7 -5
  248. package/ios/Core/ANNNavigationState.mm +8 -7
  249. package/ios/Core/ANNNodeHelper.h +32 -12
  250. package/ios/Core/ANNNodeHelper.mm +100 -3
  251. package/ios/Core/ANNParking.h +5 -4
  252. package/ios/Core/ANNReloadCoordinator.mm +5 -12
  253. package/ios/Core/ANNRenderWait.h +20 -6
  254. package/ios/Core/ANNRenderWait.mm +143 -56
  255. package/ios/Core/ANNSceneDelegate.mm +25 -15
  256. package/ios/Core/ANNSystemUI.h +3 -2
  257. package/ios/Core/ANNSystemUI.mm +7 -0
  258. package/ios/Core/ANNUtils.h +7 -0
  259. package/ios/Core/ANNUtils.mm +10 -0
  260. package/ios/Core/ApexNavigation+Internal.h +1 -1
  261. package/ios/Core/ApexNavigation.mm +7 -6
  262. package/ios/Core/UIViewController+LayoutProtocol.h +9 -2
  263. package/ios/Core/UIViewController+LayoutProtocol.mm +8 -0
  264. package/ios/Layouts/Arrangement/ANNArrangementState.h +2 -17
  265. package/ios/Layouts/Arrangement/ANNArrangementState.mm +0 -38
  266. package/ios/Layouts/Arrangement/ANNArrangementViewController.mm +10 -8
  267. package/ios/Layouts/Modal/ANNModalCoordinator.h +1 -1
  268. package/ios/Layouts/Modal/ANNModalCoordinator.mm +57 -16
  269. package/ios/Layouts/Modal/ANNModalPresentation.h +8 -5
  270. package/ios/Layouts/Modal/ANNModalPresentation.mm +12 -12
  271. package/ios/Layouts/Modal/ANNSheetPresenter.mm +83 -1
  272. package/ios/Layouts/Overlay/ANNOverlayCoordinator.mm +2 -8
  273. package/ios/Layouts/Root/ANNRootCoordinator.mm +58 -19
  274. package/ios/Layouts/Root/ANNSplashViewController.h +5 -3
  275. package/ios/Layouts/Root/ANNSplashViewController.mm +147 -0
  276. package/ios/Layouts/Screen/ANNComponentPresenter.h +11 -3
  277. package/ios/Layouts/Screen/ANNComponentPresenter.mm +34 -6
  278. package/ios/Layouts/Screen/ANNComponentViewController.h +15 -13
  279. package/ios/Layouts/Screen/ANNComponentViewController.mm +130 -75
  280. package/ios/Layouts/Screen/ANNNativeScreenContext.mm +7 -5
  281. package/ios/Layouts/Screen/ANNPreviewInteraction.h +7 -4
  282. package/ios/Layouts/Screen/ANNPreviewInteraction.mm +72 -10
  283. package/ios/Layouts/Screen/ANNScreenEnvironment.h +63 -0
  284. package/ios/Layouts/Screen/ANNScreenEnvironment.mm +181 -0
  285. package/ios/Layouts/Screen/ANNScreenPlace.h +53 -0
  286. package/ios/Layouts/Screen/ANNScreenPlace.mm +205 -0
  287. package/ios/Layouts/Screen/ANNScreenRegions.h +3 -18
  288. package/ios/Layouts/Screen/ANNScreenRegions.mm +9 -44
  289. package/ios/Layouts/Screen/ANNScreenSafeArea.h +4 -9
  290. package/ios/Layouts/Screen/ANNScreenSafeArea.mm +14 -16
  291. package/ios/Layouts/Screen/ANNScreenSettling.h +32 -0
  292. package/ios/Layouts/Screen/ANNScreenSettling.mm +137 -0
  293. package/ios/Layouts/SideMenu/ANNSideMenuTypes.h +8 -0
  294. package/ios/Layouts/SideMenu/ANNSideMenuViewController.mm +83 -14
  295. package/ios/Layouts/SplitView/ANNSplitViewCommands.h +3 -2
  296. package/ios/Layouts/SplitView/ANNSplitViewCommands.mm +105 -39
  297. package/ios/Layouts/SplitView/ANNSplitViewController.mm +7 -8
  298. package/ios/Layouts/Stack/ANNPreviewPush.h +7 -6
  299. package/ios/Layouts/Stack/ANNPreviewPush.mm +142 -27
  300. package/ios/Layouts/Stack/ANNStackAnimatingDelegate.h +11 -2
  301. package/ios/Layouts/Stack/ANNStackAnimatingDelegate.mm +14 -7
  302. package/ios/Layouts/Stack/ANNStackCommands.mm +1 -0
  303. package/ios/Layouts/Stack/ANNStackController.h +8 -0
  304. package/ios/Layouts/Stack/ANNStackController.mm +184 -16
  305. package/ios/Layouts/Stack/ANNStackQueue.h +5 -2
  306. package/ios/Layouts/Stack/ANNStackQueue.mm +56 -43
  307. package/ios/Layouts/Stack/ANNSwipePopInteraction.h +26 -0
  308. package/ios/Layouts/Stack/ANNSwipePopInteraction.mm +185 -0
  309. package/ios/Layouts/Stack/InteractivePopGestureDelegate.mm +28 -4
  310. package/ios/Layouts/Stack/UINavigationController+ANNCommands.h +4 -2
  311. package/ios/Layouts/Stack/UINavigationController+ANNCommands.mm +2 -3
  312. package/ios/Layouts/Tabs/ANNBottomTabItemBuilder.h +4 -0
  313. package/ios/Layouts/Tabs/ANNBottomTabItemBuilder.mm +11 -0
  314. package/ios/Layouts/Tabs/ANNBottomTabsAccessoryView.h +12 -1
  315. package/ios/Layouts/Tabs/ANNBottomTabsAccessoryView.mm +23 -0
  316. package/ios/Layouts/Tabs/ANNBottomTabsController.h +3 -0
  317. package/ios/Layouts/Tabs/ANNBottomTabsController.mm +237 -57
  318. package/ios/Layouts/Tabs/ANNBottomTabsCustomRow.mm +8 -3
  319. package/ios/Layouts/Tabs/ANNBottomTabsPresenter.h +6 -2
  320. package/ios/Layouts/Tabs/ANNBottomTabsPresenter.mm +232 -43
  321. package/ios/Layouts/Tabs/ANNTabsDesign.h +6 -5
  322. package/ios/Layouts/Tabs/ANNTabsDesign.mm +9 -1
  323. package/ios/Layouts/Tabs/UITabBar+utils.h +5 -5
  324. package/ios/Layouts/Tabs/UITabBar+utils.mm +32 -13
  325. package/ios/Options/ANNAnimationOptions.h +2 -1
  326. package/ios/Options/ANNAnimationOptions.mm +1 -1
  327. package/ios/Options/ANNBottomTabsOptions.h +2 -0
  328. package/ios/Options/ANNBottomTabsOptions.mm +1 -0
  329. package/ios/Options/ANNOptions.h +25 -0
  330. package/ios/Options/ANNOptions.mm +157 -1
  331. package/ios/Options/ANNOptionsCache.h +7 -6
  332. package/ios/Options/ANNOptionsReader.mm +108 -0
  333. package/ios/Options/ANNSearchBarOptions.h +4 -3
  334. package/ios/Options/ANNSheetOptions.h +4 -1
  335. package/ios/Options/ANNSideMenuOptions.h +2 -0
  336. package/ios/Options/ANNSideMenuOptions.mm +2 -0
  337. package/ios/Options/ANNStackPopAnimationOptions.h +13 -0
  338. package/ios/Options/ANNStackPopAnimationOptions.mm +11 -0
  339. package/ios/Options/ANNUserChoice.h +57 -0
  340. package/ios/Options/ANNUserChoice.mm +44 -0
  341. package/ios/Options/Params/ANNImageSource.h +61 -0
  342. package/ios/Options/Params/ANNImageSource.mm +101 -0
  343. package/ios/Options/Params/ANNOptionImages.h +37 -0
  344. package/ios/Options/Params/ANNOptionImages.mm +284 -0
  345. package/ios/Options/Params/ANNParam.h +15 -0
  346. package/ios/Options/Params/ANNParam.mm +61 -0
  347. package/ios/Options/Params/Color.h +3 -0
  348. package/ios/Options/Params/Color.mm +21 -0
  349. package/ios/Options/Params/ColorParser.h +4 -3
  350. package/ios/Options/Params/ColorParser.mm +22 -4
  351. package/ios/Options/Params/Image.h +15 -2
  352. package/ios/Options/Params/Image.mm +35 -2
  353. package/ios/Options/Params/ImageParser.h +5 -5
  354. package/ios/Options/Params/ImageParser.mm +28 -46
  355. package/ios/Public/ApexNavigation/ANNSceneDelegate.h +3 -0
  356. package/ios/Public/ApexNavigation/ApexNavigation.h +1 -1
  357. package/ios/RECIPES.md +13 -6
  358. package/ios/React/ANNReactView.mm +6 -25
  359. package/ios/React/ANNSafeAreaViewComponentView.mm +28 -17
  360. package/ios/React/ANNSurfaceHostingView.h +14 -0
  361. package/ios/React/ANNSurfaceHostingView.mm +144 -1
  362. package/ios/React/Slots/ANNSlotComponentView.mm +24 -17
  363. package/ios/React/Slots/ANNSlotContainers.h +14 -6
  364. package/ios/React/Slots/ANNSlotContainers.mm +75 -2
  365. package/ios/React/Slots/ANNSlotHost.mm +1 -3
  366. package/ios/React/Slots/ANNSlotScreenView.mm +8 -2
  367. package/ios/TopBar/ANNBackButtonPresenter.mm +6 -5
  368. package/ios/TopBar/ANNBarAppearance.h +2 -1
  369. package/ios/TopBar/ANNBarAppearance.mm +111 -30
  370. package/ios/TopBar/ANNBarBackgroundComponent.mm +16 -0
  371. package/ios/TopBar/ANNBarButtonComponentView.h +4 -4
  372. package/ios/TopBar/ANNBarButtonComponentView.mm +1 -1
  373. package/ios/TopBar/ANNBarButtons.h +14 -8
  374. package/ios/TopBar/ANNBarButtons.mm +397 -80
  375. package/ios/TopBar/ANNIconButtonImage.h +1 -0
  376. package/ios/TopBar/ANNIconButtonImage.mm +34 -1
  377. package/ios/TopBar/ANNLargeTitlePresenter.h +13 -0
  378. package/ios/TopBar/ANNLargeTitlePresenter.mm +50 -7
  379. package/ios/TopBar/ANNMainList.h +3 -0
  380. package/ios/TopBar/ANNMainList.mm +4 -0
  381. package/ios/TopBar/ANNScrollEdgeEffects.h +22 -6
  382. package/ios/TopBar/ANNScrollEdgeEffects.mm +123 -16
  383. package/ios/TopBar/ANNSearchPresenter.mm +172 -21
  384. package/ios/TopBar/ANNSearchResultsViewController.mm +29 -6
  385. package/ios/TopBar/ANNTopBarPresenter.h +8 -2
  386. package/ios/TopBar/ANNTopBarPresenter.mm +155 -33
  387. package/ios/TurboModules/ANNTurboEventEmitter.mm +4 -35
  388. package/ios/TurboModules/ANNTurboModule.mm +104 -33
  389. package/ios/cpp/react/renderer/components/ApexNavigationSpec/ANNSlotState.cpp +20 -0
  390. package/ios/cpp/react/renderer/components/ApexNavigationSpec/ANNSlotState.h +5 -14
  391. package/lib/module/ARCHITECTURE.md +40 -27
  392. package/lib/module/adapters/NativeANNTurboModule.js.map +1 -1
  393. package/lib/module/api/app/AppRegistry.js +14 -2
  394. package/lib/module/api/app/AppRegistry.js.map +1 -1
  395. package/lib/module/api/app/createNavigation.js +190 -66
  396. package/lib/module/api/app/createNavigation.js.map +1 -1
  397. package/lib/module/api/commands/commands.js +54 -6
  398. package/lib/module/api/commands/commands.js.map +1 -1
  399. package/lib/module/api/events/navigationEvents.js +6 -2
  400. package/lib/module/api/events/navigationEvents.js.map +1 -1
  401. package/lib/module/api/hooks/useNavigation.js +8 -3
  402. package/lib/module/api/hooks/useNavigation.js.map +1 -1
  403. package/lib/module/api/hooks/useSafeAreaInsets.js +4 -3
  404. package/lib/module/api/hooks/useSafeAreaInsets.js.map +1 -1
  405. package/lib/module/api/linking/dispatchedLinks.js +23 -0
  406. package/lib/module/api/linking/dispatchedLinks.js.map +1 -0
  407. package/lib/module/api/linking/linking.js +11 -0
  408. package/lib/module/api/linking/linking.js.map +1 -1
  409. package/lib/module/api/navigation.js.map +1 -1
  410. package/lib/module/api/options/OptionsChain.js +2 -2
  411. package/lib/module/api/screens/defineScreen.js +45 -3
  412. package/lib/module/api/screens/defineScreen.js.map +1 -1
  413. package/lib/module/api/screens/nativeScreens.js +31 -6
  414. package/lib/module/api/screens/nativeScreens.js.map +1 -1
  415. package/lib/module/api/screens/registerScreens.js +193 -35
  416. package/lib/module/api/screens/registerScreens.js.map +1 -1
  417. package/lib/module/api/theme/theme.js +5 -0
  418. package/lib/module/api/theme/theme.js.map +1 -1
  419. package/lib/module/engine/commands.js +51 -9
  420. package/lib/module/engine/commands.js.map +1 -1
  421. package/lib/module/engine/layout.js +20 -11
  422. package/lib/module/engine/layout.js.map +1 -1
  423. package/lib/module/engine/nativeScreens.js +9 -0
  424. package/lib/module/engine/nativeScreens.js.map +1 -1
  425. package/lib/module/engine/options.js +49 -15
  426. package/lib/module/engine/options.js.map +1 -1
  427. package/lib/module/engine/optionsChange.js +102 -0
  428. package/lib/module/engine/optionsChange.js.map +1 -0
  429. package/lib/module/engine/places.js +52 -7
  430. package/lib/module/engine/places.js.map +1 -1
  431. package/lib/module/engine/props.js +30 -1
  432. package/lib/module/engine/props.js.map +1 -1
  433. package/lib/module/engine/refresh.js +85 -0
  434. package/lib/module/engine/refresh.js.map +1 -0
  435. package/lib/module/engine/rememberedOptions.js +61 -1
  436. package/lib/module/engine/rememberedOptions.js.map +1 -1
  437. package/lib/module/engine/screens.js +77 -16
  438. package/lib/module/engine/screens.js.map +1 -1
  439. package/lib/module/interfaces/contract/commands.json +101 -0
  440. package/lib/module/interfaces/contract/errors.json +275 -0
  441. package/lib/typescript/adapters/NativeANNTurboModule.d.ts +12 -2
  442. package/lib/typescript/adapters/NativeANNTurboModule.d.ts.map +1 -1
  443. package/lib/typescript/api/app/AppRegistry.d.ts.map +1 -1
  444. package/lib/typescript/api/app/createNavigation.d.ts +8 -3
  445. package/lib/typescript/api/app/createNavigation.d.ts.map +1 -1
  446. package/lib/typescript/api/commands/commands.d.ts.map +1 -1
  447. package/lib/typescript/api/commands/presentation.d.ts +4 -3
  448. package/lib/typescript/api/commands/presentation.d.ts.map +1 -1
  449. package/lib/typescript/api/events/navigationEvents.d.ts +3 -3
  450. package/lib/typescript/api/events/navigationEvents.d.ts.map +1 -1
  451. package/lib/typescript/api/hooks/useNavigation.d.ts +1 -1
  452. package/lib/typescript/api/hooks/useNavigation.d.ts.map +1 -1
  453. package/lib/typescript/api/hooks/useSafeAreaInsets.d.ts +4 -3
  454. package/lib/typescript/api/hooks/useSafeAreaInsets.d.ts.map +1 -1
  455. package/lib/typescript/api/index.d.ts +1 -1
  456. package/lib/typescript/api/index.d.ts.map +1 -1
  457. package/lib/typescript/api/linking/dispatchedLinks.d.ts +7 -0
  458. package/lib/typescript/api/linking/dispatchedLinks.d.ts.map +1 -0
  459. package/lib/typescript/api/linking/linking.d.ts +8 -0
  460. package/lib/typescript/api/linking/linking.d.ts.map +1 -1
  461. package/lib/typescript/api/navigation.d.ts +4 -1
  462. package/lib/typescript/api/navigation.d.ts.map +1 -1
  463. package/lib/typescript/api/options/OptionsChain.d.ts +2 -2
  464. package/lib/typescript/api/screens/defineScreen.d.ts +23 -4
  465. package/lib/typescript/api/screens/defineScreen.d.ts.map +1 -1
  466. package/lib/typescript/api/screens/nativeScreens.d.ts +8 -1
  467. package/lib/typescript/api/screens/nativeScreens.d.ts.map +1 -1
  468. package/lib/typescript/api/screens/registerScreens.d.ts.map +1 -1
  469. package/lib/typescript/api/theme/theme.d.ts +2 -0
  470. package/lib/typescript/api/theme/theme.d.ts.map +1 -1
  471. package/lib/typescript/engine/commands.d.ts +5 -0
  472. package/lib/typescript/engine/commands.d.ts.map +1 -1
  473. package/lib/typescript/engine/layout.d.ts.map +1 -1
  474. package/lib/typescript/engine/nativeScreens.d.ts +5 -0
  475. package/lib/typescript/engine/nativeScreens.d.ts.map +1 -1
  476. package/lib/typescript/engine/options.d.ts +5 -2
  477. package/lib/typescript/engine/options.d.ts.map +1 -1
  478. package/lib/typescript/engine/optionsChange.d.ts +28 -0
  479. package/lib/typescript/engine/optionsChange.d.ts.map +1 -0
  480. package/lib/typescript/engine/places.d.ts +7 -2
  481. package/lib/typescript/engine/places.d.ts.map +1 -1
  482. package/lib/typescript/engine/props.d.ts +8 -1
  483. package/lib/typescript/engine/props.d.ts.map +1 -1
  484. package/lib/typescript/engine/refresh.d.ts +35 -0
  485. package/lib/typescript/engine/refresh.d.ts.map +1 -0
  486. package/lib/typescript/engine/rememberedOptions.d.ts +13 -0
  487. package/lib/typescript/engine/rememberedOptions.d.ts.map +1 -1
  488. package/lib/typescript/engine/screens.d.ts +27 -6
  489. package/lib/typescript/engine/screens.d.ts.map +1 -1
  490. package/lib/typescript/interfaces/ComponentEvents.d.ts +4 -4
  491. package/lib/typescript/interfaces/ComponentEvents.d.ts.map +1 -1
  492. package/lib/typescript/interfaces/Events.d.ts +28 -10
  493. package/lib/typescript/interfaces/Events.d.ts.map +1 -1
  494. package/lib/typescript/interfaces/Options.d.ts +1 -1
  495. package/lib/typescript/interfaces/Options.d.ts.map +1 -1
  496. package/lib/typescript/interfaces/options/animations.d.ts +80 -22
  497. package/lib/typescript/interfaces/options/animations.d.ts.map +1 -1
  498. package/lib/typescript/interfaces/options/bottomTabs.d.ts +21 -7
  499. package/lib/typescript/interfaces/options/bottomTabs.d.ts.map +1 -1
  500. package/lib/typescript/interfaces/options/buttons.d.ts +23 -15
  501. package/lib/typescript/interfaces/options/buttons.d.ts.map +1 -1
  502. package/lib/typescript/interfaces/options/modals.d.ts +34 -26
  503. package/lib/typescript/interfaces/options/modals.d.ts.map +1 -1
  504. package/lib/typescript/interfaces/options/sideMenu.d.ts +23 -6
  505. package/lib/typescript/interfaces/options/sideMenu.d.ts.map +1 -1
  506. package/lib/typescript/interfaces/options/stack.d.ts +17 -3
  507. package/lib/typescript/interfaces/options/stack.d.ts.map +1 -1
  508. package/lib/typescript/interfaces/options/system.d.ts +18 -11
  509. package/lib/typescript/interfaces/options/system.d.ts.map +1 -1
  510. package/lib/typescript/interfaces/options/toolbar.d.ts +2 -2
  511. package/lib/typescript/interfaces/options/topBar.d.ts +68 -38
  512. package/lib/typescript/interfaces/options/topBar.d.ts.map +1 -1
  513. package/metro/acceptPlugin.js +57 -0
  514. package/metro/babelTransformer.js +45 -0
  515. package/metro/index.js +36 -0
  516. package/package.json +4 -25
  517. package/src/ARCHITECTURE.md +40 -27
  518. package/src/adapters/NativeANNTurboModule.ts +12 -2
  519. package/src/api/app/AppRegistry.ts +16 -2
  520. package/src/api/app/createNavigation.ts +203 -69
  521. package/src/api/commands/commands.ts +48 -7
  522. package/src/api/commands/presentation.ts +4 -3
  523. package/src/api/events/navigationEvents.ts +10 -4
  524. package/src/api/hooks/useNavigation.ts +9 -4
  525. package/src/api/hooks/useSafeAreaInsets.ts +4 -3
  526. package/src/api/index.ts +1 -0
  527. package/src/api/linking/dispatchedLinks.ts +18 -0
  528. package/src/api/linking/linking.ts +22 -1
  529. package/src/api/navigation.ts +4 -1
  530. package/src/api/options/OptionsChain.ts +2 -2
  531. package/src/api/screens/defineScreen.ts +49 -5
  532. package/src/api/screens/nativeScreens.ts +40 -4
  533. package/src/api/screens/registerScreens.tsx +185 -42
  534. package/src/api/theme/theme.ts +5 -0
  535. package/src/engine/commands.ts +70 -13
  536. package/src/engine/layout.ts +27 -11
  537. package/src/engine/nativeScreens.ts +10 -1
  538. package/src/engine/options.ts +45 -19
  539. package/src/engine/optionsChange.ts +107 -0
  540. package/src/engine/places.ts +65 -7
  541. package/src/engine/props.ts +30 -1
  542. package/src/engine/refresh.ts +97 -0
  543. package/src/engine/rememberedOptions.ts +74 -1
  544. package/src/engine/screens.tsx +76 -21
  545. package/src/interfaces/ComponentEvents.ts +4 -4
  546. package/src/interfaces/Events.ts +29 -10
  547. package/src/interfaces/Options.ts +1 -0
  548. package/src/interfaces/contract/commands.json +101 -0
  549. package/src/interfaces/contract/errors.json +275 -0
  550. package/src/interfaces/options/animations.ts +81 -22
  551. package/src/interfaces/options/bottomTabs.ts +21 -7
  552. package/src/interfaces/options/buttons.ts +23 -15
  553. package/src/interfaces/options/modals.ts +34 -26
  554. package/src/interfaces/options/sideMenu.ts +24 -6
  555. package/src/interfaces/options/stack.ts +17 -3
  556. package/src/interfaces/options/system.ts +18 -11
  557. package/src/interfaces/options/toolbar.ts +2 -2
  558. package/src/interfaces/options/topBar.ts +68 -38
  559. package/android/src/main/java/dev/apexnative/navigation/react/ArrangementStates.kt +0 -41
  560. package/android/src/main/java/dev/apexnative/navigation/react/ScreenInsets.kt +0 -69
  561. package/android/src/main/java/dev/apexnative/navigation/react/events/NavigationStateReporter.kt +0 -62
  562. package/android/src/main/java/dev/apexnative/navigation/react/events/StateHold.kt +0 -62
  563. package/android/src/main/java/dev/apexnative/navigation/viewcontrollers/bottomtabs/CustomTabRowPlacer.kt +0 -223
  564. package/android/src/main/java/dev/apexnative/navigation/views/element/ElementStub.kt +0 -31
  565. package/android/src/main/java/dev/apexnative/navigation/views/element/animators/ImageMatrixAnimator.kt +0 -138
  566. package/android/src/main/java/dev/apexnative/navigation/views/element/animators/PlainViewAnimator.kt +0 -88
  567. package/android/src/main/java/dev/apexnative/navigation/views/element/animators/PropertyAnimatorCreator.kt +0 -33
  568. package/android/src/main/java/dev/apexnative/navigation/views/element/animators/ReactImageAnimator.kt +0 -66
  569. package/android/src/main/java/dev/apexnative/navigation/views/element/animators/TextChangeAnimator.kt +0 -179
  570. package/android/src/main/java/dev/apexnative/navigation/views/element/animators/ViewChangeAnimator.kt +0 -139
  571. package/ios/Layouts/Screen/ANNScreenInsets.h +0 -30
  572. package/ios/Layouts/Screen/ANNScreenInsets.mm +0 -68
  573. package/ios/Layouts/Tabs/ANNTabsPreloadWindow.h +0 -27
  574. package/ios/Layouts/Tabs/ANNTabsPreloadWindow.mm +0 -55
@@ -1,14 +1,21 @@
1
1
  "use strict";
2
2
 
3
- import React, { Component, createContext, lazy, Suspense, useEffect, useMemo, useState } from 'react';
4
- import { Platform, StyleSheet } from 'react-native';
3
+ import React, { Component, createContext, lazy, Suspense, useMemo, useState } from 'react';
4
+ import { DevSettings, Platform, StyleSheet } from 'react-native';
5
5
  import ANNTurboModule from "../../adapters/NativeANNTurboModule.js";
6
6
  import { isButtonRoot } from "../../engine/props.js";
7
- import { checkArrangements, onScreenUnmounted, registerScreen as registerEngineScreen } from "../../engine/screens.js";
7
+ import { checkArrangements, onScreenUnmounted, registerScreen as registerEngineScreen, shownScreens } from "../../engine/screens.js";
8
8
  import { screenUnmounted } from "../events/screenLifecycle.js";
9
9
  import { mergeOptions } from "../../engine/mergeOptions.js";
10
10
  import { preparedPadding } from "../../engine/slots.js";
11
- import { buildScreenOptions } from "./defineScreen.js";
11
+ import { clearOptions, mergeOptions as sendMergeOptions } from "../../engine/commands.js";
12
+ import { changeOverOwn, optionsChange } from "../../engine/optionsChange.js";
13
+ import { notedScreens, ownOptionsOf } from "../../engine/rememberedOptions.js";
14
+ import { openNativeScreens } from "../../engine/nativeScreens.js";
15
+ import { placeOf } from "../../engine/places.js";
16
+ import { propsOf } from "../../engine/props.js";
17
+ import { familyOf, newestType, onRedefined } from "../../engine/refresh.js";
18
+ import { buildScreenOptions, definitionOf, ownDefinitionOf } from "./defineScreen.js";
12
19
  import { isNativeScreen } from "./nativeScreens.js";
13
20
  import { isArrangement, toEngineArrangement } from "./arrangement.js";
14
21
  import { ScreenBoundary } from "./ScreenBoundary.js";
@@ -36,6 +43,127 @@ export const ScreenContext = /*#__PURE__*/createContext(null);
36
43
 
37
44
  // The root of a screen tells when it unmounts: what the screen left behind goes.
38
45
  onScreenUnmounted(screenUnmounted);
46
+
47
+ // The screens of defineScreen by name, in development: what `screens` gives (a lazy screen's module once loaded) and
48
+ // the options of its group.
49
+ const editable = new Map();
50
+ onRedefined(applyEdit);
51
+
52
+ // Fast Refresh ran the module of a screen again: the screens of it that show take what the edit changed in their
53
+ // options, as a command would have shown them. The family's newest is still the version before the edit here, as React
54
+ // Refresh moves it on only after the update.
55
+ function applyEdit(next) {
56
+ const family = familyOf(next);
57
+ const edited = ownDefinitionOf(next) ?? (isNativeScreen(next) ? next : undefined);
58
+ if (!family || !edited) return;
59
+ for (const [name, {
60
+ screen,
61
+ groupOptions
62
+ }] of editable) {
63
+ const current = screen();
64
+ if (current === undefined || familyOf(current) !== family) continue;
65
+ const native = isNativeScreen(current);
66
+ const before = native ? newestType(current) : definitionOf(current);
67
+ // The screen as it was registered: its own module running, nothing edited yet.
68
+ if (before === edited) continue;
69
+ // What a native screen is made of goes to the native side when it is registered and shown: a change of it starts
70
+ // the app again.
71
+ if (native && isNativeScreen(edited) && madeOtherwise(newestType(current), edited)) {
72
+ DevSettings.reload('[navigation] A native screen changed its name or its useProps');
73
+ return;
74
+ }
75
+ applyChange(name, native, {
76
+ group: groupOptions,
77
+ definition: before
78
+ }, {
79
+ group: groupOptions,
80
+ definition: edited
81
+ });
82
+ }
83
+ }
84
+
85
+ /** The options a screen is shown with: those of its group, and those of its definition over them. */
86
+
87
+ // What an edit changed in a screen's options goes to every screen of it the native side has, a screen React hasn't
88
+ // mounted yet too (a tab not selected yet), as a command would have shown it; only where the screen still has what
89
+ // the definition before gave.
90
+ function applyChange(name, native, before, after) {
91
+ const shown = native ? openNativeScreens(name) : [...new Set([...shownScreens(name), ...notedScreens(name).filter(isPlaced)])].map(id => ({
92
+ id,
93
+ props: propsOf(id)
94
+ }));
95
+ for (const {
96
+ id,
97
+ props
98
+ } of shown) {
99
+ const options = ({
100
+ group,
101
+ definition
102
+ }) => mergeOptions(buildScreenOptions(group, props), buildScreenOptions(definition?.options, props));
103
+ const shownWith = options(before);
104
+ const change = optionsChange(shownWith, options(after));
105
+ const {
106
+ merge,
107
+ removed
108
+ } = changeOverOwn(change, shownWith, ownOptionsOf(id) ?? shownWith);
109
+ if (removed.length > 0) clearOptions(id, removed);
110
+ if (merge) sendMergeOptions(id, merge);
111
+ }
112
+ }
113
+
114
+ // The screens map registered again (Fast Refresh ran the module of the app): a screen written in the map itself, a
115
+ // definition no module exports, has no family to tell its edit, so its definition before and after are compared here.
116
+ // The options of its group too: a group is written in the app's module, and an edit of them leaves the screen as it was.
117
+ function applyRegisteredAgain(name, entry, group) {
118
+ const previous = editable.get(name);
119
+ const before = previous?.screen();
120
+ if (before === undefined) return;
121
+ if (before === entry) {
122
+ if (previous.groupOptions === group) return;
123
+ const native = isNativeScreen(entry);
124
+ const definition = native ? newestType(entry) : definitionOf(entry);
125
+ applyChange(name, native, {
126
+ group: previous.groupOptions,
127
+ definition
128
+ }, {
129
+ group,
130
+ definition
131
+ });
132
+ return;
133
+ }
134
+ if (isNativeScreen(before) && isNativeScreen(entry)) {
135
+ if (madeOtherwise(newestType(before), entry)) {
136
+ DevSettings.reload('[navigation] A native screen changed its name or its useProps');
137
+ return;
138
+ }
139
+ applyChange(name, true, {
140
+ group: previous.groupOptions,
141
+ definition: newestType(before)
142
+ }, {
143
+ group,
144
+ definition: entry
145
+ });
146
+ return;
147
+ }
148
+ const was = definitionOf(before);
149
+ const now = definitionOf(entry);
150
+ if (!was && !now && previous.groupOptions === group) return;
151
+ applyChange(name, false, {
152
+ group: previous.groupOptions,
153
+ definition: was
154
+ }, {
155
+ group,
156
+ definition: now
157
+ });
158
+ }
159
+
160
+ // A screen the engine knows the place of: one whose command failed after its layout was built has none.
161
+ function isPlaced(id) {
162
+ return placeOf(id) !== undefined;
163
+ }
164
+ function madeOtherwise(before, after) {
165
+ return before.nativeName !== after.nativeName || !before.useProps !== !after.useProps;
166
+ }
39
167
  export function registerScreens(sets, wrapper = {}) {
40
168
  // The screens of every set are in one namespace: a command names a screen without its group.
41
169
  const sources = new Map();
@@ -65,17 +193,40 @@ function registerScreen(name, entry, wrapper, groupOptions, ownRoot) {
65
193
  return;
66
194
  }
67
195
  if (isNativeScreen(entry)) {
196
+ // Read on every show, the newest after Fast Refresh, as for a screen of defineScreen.
197
+ const screen = () => newestType(entry);
198
+ if (__DEV__) {
199
+ applyRegisteredAgain(name, entry, groupOptions);
200
+ editable.set(name, {
201
+ screen: () => entry,
202
+ groupOptions
203
+ });
204
+ }
68
205
  registerEngineScreen(name, {
69
206
  nativeName: entry.nativeName,
70
- options: props => mergeOptions(buildScreenOptions(groupOptions, props), buildScreenOptions(entry.options, props)),
71
- controller: entry.useProps && wrapNativeScreen(name, entry.useProps, wrapper),
72
- arrangement: pairOf(name, entry.arrangement)
207
+ options: props => mergeOptions(buildScreenOptions(groupOptions, props), buildScreenOptions(screen().options, props)),
208
+ controller: entry.useProps && wrapNativeScreen(name, entry, wrapper),
209
+ arrangement: () => {
210
+ const arrangement = screen().arrangement;
211
+ return arrangement && toEngineArrangement(name, arrangement);
212
+ }
73
213
  });
74
214
  return;
75
215
  }
76
216
  // React.memo and forwardRef components are objects, so the kind of entry is told by its keys.
77
217
  if (isObject(entry) && 'load' in entry) {
78
218
  const screen = lazyScreen(entry.load);
219
+ if (__DEV__) {
220
+ // A lazy screen registered again loads its module on its next show: until then the one loaded before stands for
221
+ // it, so the screens of it that show take an edit of their group's options, and of their module, as before.
222
+ const before = editable.get(name)?.screen();
223
+ const loaded = () => screen.loaded() ?? before;
224
+ applyRegisteredAgain(name, loaded(), groupOptions);
225
+ editable.set(name, {
226
+ screen: loaded,
227
+ groupOptions
228
+ });
229
+ }
79
230
  registerEngineScreen(name, {
80
231
  component: () => wrapScreen(name, screen.component, wrapper),
81
232
  // A command loads the screen before it reads its options.
@@ -90,23 +241,34 @@ function registerScreen(name, entry, wrapper, groupOptions, ownRoot) {
90
241
  });
91
242
  return;
92
243
  }
93
- const definition = toDefinition(entry);
244
+ // Read on every show: after Fast Refresh a screen of defineScreen gives its new options, key and pair.
245
+ const definition = () => toDefinition(entry);
246
+ if (__DEV__) {
247
+ applyRegisteredAgain(name, entry, groupOptions);
248
+ editable.set(name, {
249
+ screen: () => entry,
250
+ groupOptions
251
+ });
252
+ }
94
253
  registerEngineScreen(name, {
95
- component: () => wrapScreen(name, definition.component, wrapper),
96
- options: props => mergeOptions(buildScreenOptions(groupOptions, props), buildScreenOptions(definition.options, props)),
97
- key: definition.key && (props => definition.key(props)),
254
+ component: () => wrapScreen(name, definition().component, wrapper),
255
+ options: props => mergeOptions(buildScreenOptions(groupOptions, props), buildScreenOptions(definition().options, props)),
256
+ key: props => definition().key?.(props),
98
257
  ownRoot,
99
- arrangement: pairOf(name, definition.arrangement)
258
+ arrangement: () => {
259
+ const arrangement = definition().arrangement;
260
+ return arrangement && toEngineArrangement(name, arrangement);
261
+ }
100
262
  });
101
263
  }
102
-
103
- // The pair of a screen whose `arrangement` is known at registration: checked and filled in once.
104
- function pairOf(name, arrangement) {
105
- if (!arrangement) return undefined;
106
- const pair = toEngineArrangement(name, arrangement);
107
- return () => pair;
108
- }
109
264
  function toDefinition(value) {
265
+ // A screen of defineScreen renders as itself: React Refresh knows it by its module's export, and the version of the
266
+ // newest definition renders in its place.
267
+ const defined = definitionOf(value);
268
+ if (defined) return {
269
+ ...defined,
270
+ component: value
271
+ };
110
272
  return isObject(value) && 'component' in value ? value : {
111
273
  component: value
112
274
  };
@@ -118,13 +280,15 @@ function toDefinition(value) {
118
280
  * screen) waits for it in Suspense.
119
281
  */
120
282
  function lazyScreen(loadModule) {
121
- let definition;
283
+ // The screen the module gives; its definition is read from it each time, the newest after Fast Refresh.
284
+ let loaded;
122
285
  let loading;
286
+ const definition = () => loaded ? toDefinition(loaded) : undefined;
123
287
  const load = () => {
124
- if (definition) return undefined;
288
+ if (loaded) return undefined;
125
289
  if (!loading) {
126
290
  loading = Promise.resolve().then(loadModule).then(module => {
127
- definition = toDefinition(unwrapModule(module));
291
+ loaded = unwrapModule(module);
128
292
  });
129
293
  loading.catch(() => {
130
294
  loading = undefined;
@@ -135,19 +299,20 @@ function lazyScreen(loadModule) {
135
299
  const Loaded = /*#__PURE__*/lazy(async () => {
136
300
  await load();
137
301
  return {
138
- default: definition.component
302
+ default: definition().component
139
303
  };
140
304
  });
141
305
  function LazyScreen(props) {
142
306
  // The same component for the life of the view, so that the load doesn't mount it again.
143
- const [Screen] = useState(() => definition?.component ?? Loaded);
307
+ const [Screen] = useState(() => definition()?.component ?? Loaded);
144
308
  return /*#__PURE__*/_jsx(Screen, {
145
309
  ...props
146
310
  });
147
311
  }
148
312
  return {
149
313
  load,
150
- definition: () => definition,
314
+ definition,
315
+ loaded: () => loaded,
151
316
  component: LazyScreen
152
317
  };
153
318
  }
@@ -227,19 +392,12 @@ function wrapScreen(name, Screen, wrapper) {
227
392
  * The controller of a native screen's `useProps`: the hook in a component of its own, with the screen's navigation
228
393
  * and inside the screen provider, as a React screen has them. It renders nothing.
229
394
  */
230
- function wrapNativeScreen(name, useProps, {
395
+ function wrapNativeScreen(name, entry, {
231
396
  provider: Provider,
232
397
  onError
233
398
  }) {
234
- function Hook({
235
- props,
236
- onProps
237
- }) {
238
- const result = useProps(props);
239
- // After each render React committed, so the native side never shows what the app did not.
240
- useEffect(() => onProps(result));
241
- return null;
242
- }
399
+ // The screen's own component runs the hook: Fast Refresh puts a new version of it in place.
400
+ const Hook = entry;
243
401
  function NativeScreenProps({
244
402
  componentId,
245
403
  props,
@@ -1 +1 @@
1
- {"version":3,"names":["React","Component","createContext","lazy","Suspense","useEffect","useMemo","useState","Platform","StyleSheet","ANNTurboModule","isButtonRoot","checkArrangements","onScreenUnmounted","registerScreen","registerEngineScreen","screenUnmounted","mergeOptions","preparedPadding","buildScreenOptions","isNativeScreen","isArrangement","toEngineArrangement","ScreenBoundary","ANNSafeAreaView","jsx","_jsx","ScreenContext","registerScreens","sets","wrapper","sources","Map","source","screens","options","ownRoot","name","entry","Object","entries","other","get","Error","set","groupOptions","pair","definition","primary","nativeName","props","controller","useProps","wrapNativeScreen","arrangement","pairOf","isObject","screen","lazyScreen","load","component","wrapScreen","key","toDefinition","undefined","value","loadModule","loading","Promise","resolve","then","module","unwrapModule","catch","Loaded","default","LazyScreen","Screen","loaded","WAITS_FOR_LAYOUT","provider","Provider","errorFallback","loadingFallback","Loading","onError","NavigationScreen","componentId","id","initialPadding","ready","setReady","barButton","OS","boundary","children","fallback","error","stack","content","screenId","onReady","contentRendered","pointerEvents","style","styles","safeArea","displayName","Hook","onProps","result","NativeScreenProps","failed","hook","HookBoundary","componentStack","state","getDerivedStateFromError","componentDidCatch","info","render","create","flex","justifyContent","alignItems"],"sourceRoot":"../../../../src","sources":["api/screens/registerScreens.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Component","createContext","lazy","Suspense","useMemo","useState","DevSettings","Platform","StyleSheet","ANNTurboModule","isButtonRoot","checkArrangements","onScreenUnmounted","registerScreen","registerEngineScreen","shownScreens","screenUnmounted","mergeOptions","preparedPadding","clearOptions","sendMergeOptions","changeOverOwn","optionsChange","notedScreens","ownOptionsOf","openNativeScreens","placeOf","propsOf","familyOf","newestType","onRedefined","buildScreenOptions","definitionOf","ownDefinitionOf","isNativeScreen","isArrangement","toEngineArrangement","ScreenBoundary","ANNSafeAreaView","jsx","_jsx","ScreenContext","editable","Map","applyEdit","next","family","edited","undefined","name","screen","groupOptions","current","native","before","madeOtherwise","reload","applyChange","group","definition","after","shown","Set","filter","isPlaced","map","id","props","options","shownWith","change","merge","removed","length","applyRegisteredAgain","entry","previous","get","was","now","nativeName","useProps","registerScreens","sets","wrapper","sources","source","screens","ownRoot","Object","entries","other","Error","set","pair","primary","__DEV__","controller","wrapNativeScreen","arrangement","isObject","lazyScreen","load","loaded","component","wrapScreen","key","toDefinition","value","defined","loadModule","loading","Promise","resolve","then","module","unwrapModule","catch","Loaded","default","LazyScreen","Screen","WAITS_FOR_LAYOUT","provider","Provider","errorFallback","loadingFallback","Loading","onError","NavigationScreen","componentId","initialPadding","ready","setReady","barButton","OS","boundary","children","fallback","error","stack","content","screenId","onReady","contentRendered","pointerEvents","style","styles","safeArea","displayName","Hook","NativeScreenProps","onProps","failed","hook","HookBoundary","componentStack","state","getDerivedStateFromError","componentDidCatch","info","render","create","flex","justifyContent","alignItems"],"sourceRoot":"../../../../src","sources":["api/screens/registerScreens.tsx"],"mappings":"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","ignoreList":[]}
@@ -103,6 +103,11 @@ export function setTheme(next) {
103
103
  listeners.forEach(listener => listener());
104
104
  }
105
105
 
106
+ /** The direction of the app now: the config's, or the one `setDirection` gave since. */
107
+ export function getDirection() {
108
+ return direction;
109
+ }
110
+
106
111
  /** Changes the direction of the app: the bars, the transitions and the swipe back follow at once. */
107
112
  export function setDirection(next) {
108
113
  direction = next;
@@ -1 +1 @@
1
- {"version":3,"names":["setDefaultOptions","launchState","mergeOptions","getAppContext","readScreenOptions","ScreenOptions","theme","appDefaults","direction","listeners","Set","getTheme","resolveTheme","colors","scheme","resolved","key","color","Object","entries","value","resolveColor","undefined","picked","subscribeTheme","listener","add","delete","initTheme","initial","defaults","initialDirection","themedDefaultOptions","under","options","over","own","context","app","layout","layers","themeOptions","filter","layer","keys","length","reduce","setTheme","next","applyDefaults","forEach","setDirection","launch","primary","background","bar","text","border","badge","withoutEmpty","backgroundColor","topBar","title","largeTitle","backButton","leftButtonColor","rightButtonColor","centerButtonColor","borderColor","searchBar","tintColor","bottomTabs","bottomTab","selectedIconColor","selectedTextColor","badgeColor","result","item","Array","isArray","inner"],"sourceRoot":"../../../../src","sources":["api/theme/theme.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["setDefaultOptions","launchState","mergeOptions","getAppContext","readScreenOptions","ScreenOptions","theme","appDefaults","direction","listeners","Set","getTheme","resolveTheme","colors","scheme","resolved","key","color","Object","entries","value","resolveColor","undefined","picked","subscribeTheme","listener","add","delete","initTheme","initial","defaults","initialDirection","themedDefaultOptions","under","options","over","own","context","app","layout","layers","themeOptions","filter","layer","keys","length","reduce","setTheme","next","applyDefaults","forEach","getDirection","setDirection","launch","primary","background","bar","text","border","badge","withoutEmpty","backgroundColor","topBar","title","largeTitle","backButton","leftButtonColor","rightButtonColor","centerButtonColor","borderColor","searchBar","tintColor","bottomTabs","bottomTab","selectedIconColor","selectedTextColor","badgeColor","result","item","Array","isArray","inner"],"sourceRoot":"../../../../src","sources":["api/theme/theme.ts"],"mappings":"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","ignoreList":[]}
@@ -9,10 +9,10 @@ import { whenNativeScreensReady } from "./nativeScreens.js";
9
9
  import { commands as native } from "./native.js";
10
10
  import { toNativeOptions } from "./options.js";
11
11
  import { dropReactRenderMeasures } from "./reactMeasures.js";
12
- import { columnOf, forgetPlace, notePlaces, placeOf, stackOfColumn } from "./places.js";
12
+ import { columnOf, forgetPlace, layoutsOf, notePlaces, placeOf, stackOfColumn } from "./places.js";
13
13
  import { forgetProps } from "./props.js";
14
- import { forgetMergedOptions, rememberMergedOptions, rootGoesOut, sentRoot } from "./rememberedOptions.js";
15
- import { afterLoading } from "./screens.js";
14
+ import { forgetMergedOptions, forgetMergedPaths, noteMergedOwnOptions, rememberMergedOptions, rootGoesOut, sentRoot } from "./rememberedOptions.js";
15
+ import { afterLoading, hasRoot, isReactScreen } from "./screens.js";
16
16
  import { holdSlot, isSlotName, removeSlots, showSlot } from "./slots.js";
17
17
  import { forgetTabsScreen, showScreensFrom } from "./tabs.js";
18
18
 
@@ -101,7 +101,7 @@ export function setRoot(root) {
101
101
  }
102
102
  export function setDefaultOptions(options) {
103
103
  rememberDefaultOptions(options);
104
- native.setDefaultOptions(toNativeOptions(options));
104
+ native.setDefaultOptions(toNativeOptions(options, 'defaultOptions'));
105
105
  }
106
106
 
107
107
  // The show commands that wait in JS, by number: for lazy screens to load, for the first props of native screens, for a
@@ -120,9 +120,10 @@ const preparedScreens = new Set();
120
120
  * engine remembers them by the node's id, so the root set again for a new launch of the native side shows them too.
121
121
  */
122
122
  export function mergeOptions(componentId, options) {
123
- const nativeOptions = toNativeOptions(options);
123
+ const nativeOptions = toNativeOptions(options, componentId);
124
124
  const send = () => {
125
125
  rememberMergedOptions(componentId, options);
126
+ noteMergedOwnOptions(componentId, options);
126
127
  native.mergeOptions(componentId, nativeOptions);
127
128
  };
128
129
  const prepared = preparedScreens.has(componentId) && !heldMerges.some(({
@@ -135,6 +136,25 @@ export function mergeOptions(componentId, options) {
135
136
  });
136
137
  }
137
138
 
139
+ /**
140
+ * Takes the options at the paths, such as `['topBar', 'subtitle']`, out of the own options of a node, so it shows what
141
+ * the layouts around it and the defaults give there (Fast Refresh, development). It waits for the shows as a merge does.
142
+ */
143
+ export function clearOptions(componentId, paths) {
144
+ const send = () => {
145
+ forgetMergedPaths(componentId, paths);
146
+ native.clearOptions(componentId, paths.map(path => path.join('.')));
147
+ };
148
+ const prepared = preparedScreens.has(componentId) && !heldMerges.some(({
149
+ id
150
+ }) => id === componentId);
151
+ if (waitingShows.size === 0 || prepared) send();else heldMerges.push({
152
+ id: componentId,
153
+ after: shows,
154
+ send
155
+ });
156
+ }
157
+
138
158
  // Runs a show command; the function `run` gets lets the mergeOptions made after the show go, once it went out. It is
139
159
  // called again when the command ends, so a command that fails before it goes out lets them go too.
140
160
  function show(run) {
@@ -196,15 +216,35 @@ export function push(componentId, layout, wanted = () => true) {
196
216
  showScreensFrom(componentId, node);
197
217
  // Over the screen it is pushed from, in its stack.
198
218
  const from = placeOf(componentId);
199
- notePlaces(node, from?.container ?? 'root', from?.stack ?? null, (from?.index ?? 0) + 1, from?.menu, from?.layer);
219
+ notePlaces(node, from?.container ?? 'root', from?.stack ?? null, (from?.index ?? 0) + 1, from?.menu, from?.layer, layoutsOf(componentId));
200
220
  return whenNativeScreensReady([node], () => sendPush(commandId, componentId, node, prepares, wanted, goneOut).then(shownId => {
201
221
  // A screen with a key went back to the one with the same key: the new screen never shows.
202
222
  if (shownId !== node.id) forgetNeverShown(node.id);
203
223
  return shownId;
224
+ }, error => {
225
+ if (rendersAtPress(node)) forgetUnmountedPreview(node.id);
226
+ throw error;
204
227
  }));
205
228
  }));
206
229
  }
207
230
 
231
+ // A preview's React screen with a root of its own renders only once the view is pressed (iOS): one whose preview went
232
+ // before that never mounts. A screen of the one tree mounts with its slot, a native screen has no root.
233
+ function rendersAtPress(node) {
234
+ return node.data.options?.preview?.nativeID !== undefined && isReactScreen(node.data.name ?? '');
235
+ }
236
+
237
+ // A root started at a press that came just before the preview went can reach JavaScript after its push failed: without
238
+ // its props it would render the screen with none. Its notes go after this time, when no root of it has mounted by
239
+ // then; one that has clears them as it unmounts.
240
+ const PREVIEW_FORGET_DELAY = 1000;
241
+ function forgetUnmountedPreview(screenId) {
242
+ if (hasRoot(screenId)) return;
243
+ setTimeout(() => {
244
+ if (!hasRoot(screenId)) forgetNeverShown(screenId);
245
+ }, PREVIEW_FORGET_DELAY);
246
+ }
247
+
208
248
  // Everything a push noted for a screen that never mounts, which an unmount would clear.
209
249
  function forgetNeverShown(screenId) {
210
250
  forgetProps(screenId);
@@ -303,7 +343,7 @@ export function setStackRoot(componentId, children) {
303
343
  const nodes = children.map(toNativeLayout);
304
344
  nodes.forEach(node => showScreensFrom(componentId, node));
305
345
  const from = placeOf(componentId);
306
- nodes.forEach((node, index) => notePlaces(node, from?.container ?? 'root', from?.stack ?? null, index, from?.menu, from?.layer));
346
+ nodes.forEach((node, index) => notePlaces(node, from?.container ?? 'root', from?.stack ?? null, index, from?.menu, from?.layer, layoutsOf(componentId)));
307
347
  return whenNativeScreensReady(nodes, () => inOrder(() => sendShow(goneOut, () => native.setStackRoot(commandId, componentId, nodes))));
308
348
  }));
309
349
  }
@@ -316,7 +356,9 @@ export function showInColumn(componentId, column, layout) {
316
356
  showScreensFrom(componentId, node);
317
357
  const from = placeOf(componentId);
318
358
  const at = columnPlace(componentId, column);
319
- notePlaces(node, from?.container ?? 'root', at.stack, at.index, from?.menu, from?.layer);
359
+ // In the split view of the screen it comes from, and in the column's stack.
360
+ const within = at.stack ? [...layoutsOf(componentId), at.stack] : layoutsOf(componentId);
361
+ notePlaces(node, from?.container ?? 'root', at.stack, at.index, from?.menu, from?.layer, within);
320
362
  return whenNativeScreensReady([node], () => inOrder(() => sendShow(goneOut, () => native.showInColumn(commandId, componentId, column, node))));
321
363
  }));
322
364
  }
@@ -358,7 +400,7 @@ export function showModal(layout) {
358
400
  export function dismissModal(componentId, options) {
359
401
  dropReactRenderMeasures();
360
402
  const commandId = nextId('dismissModal');
361
- return inOrder(() => native.dismissModal(commandId, componentId, options && toNativeOptions(options)));
403
+ return inOrder(() => native.dismissModal(commandId, componentId, options && toNativeOptions(options, componentId)));
362
404
  }
363
405
  export function dismissAllModals(options) {
364
406
  dropReactRenderMeasures();
@@ -1 +1 @@
1
- {"version":3,"names":["Platform","clearButtonHandlers","rememberDefaultOptions","rememberRoot","restoresRoot","nextId","toNativeLayout","whenNativeScreensReady","commands","native","toNativeOptions","dropReactRenderMeasures","columnOf","forgetPlace","notePlaces","placeOf","stackOfColumn","forgetProps","forgetMergedOptions","rememberMergedOptions","rootGoesOut","sentRoot","afterLoading","holdSlot","isSlotName","removeSlots","showSlot","forgetTabsScreen","showScreensFrom","NODE_KINDS","checkIds","layouts","stack","seen","Set","visit","value","Array","isArray","forEach","key","item","Object","entries","id","includes","undefined","has","Error","shown","add","screenNames","names","named","name","push","setRoot","root","again","commandId","show","goneOut","layout","modals","map","overlays","modal","overlay","nodes","inOrder","sendShow","setDefaultOptions","options","shows","waitingShows","heldMerges","preparedScreens","mergeOptions","componentId","nativeOptions","send","prepared","some","size","after","run","number","delete","sendHeldMerges","result","error","then","merge","showWaitsUntil","shift","waiting","wanted","node","prepares","preparesPush","from","container","index","menu","layer","sendPush","shownId","forgetNeverShown","screenId","OS","type","data","preparedPushesSent","Promise","reject","before","sent","mine","resolve","queued","prepareAndPush","frame","preparePush","cancelPreparedPush","dismissPreview","previewId","catch","pop","popTo","popToRoot","setStackRoot","children","showInColumn","column","at","columnPlace","fromId","fromColumn","target","split","setColumnShown","showModal","dismissModal","dismissAllModals","showOverlay","dismissOverlay","dismissAllOverlays"],"sourceRoot":"../../../src","sources":["engine/commands.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,cAAc;AACvC,SAASC,mBAAmB,QAAQ,cAAW;AAC/C,SAASC,sBAAsB,EAAEC,YAAY,EAAEC,YAAY,QAAQ,kBAAe;AAGlF,SAASC,MAAM,QAAQ,UAAO;AAC9B,SAA0BC,cAAc,QAAQ,aAAU;AAC1D,SAASC,sBAAsB,QAAQ,oBAAiB;AACxD,SAASC,QAAQ,IAAIC,MAAM,QAAQ,aAAU;AAC7C,SAASC,eAAe,QAAQ,cAAW;AAC3C,SAASC,uBAAuB,QAAQ,oBAAiB;AACzD,SAASC,QAAQ,EAAEC,WAAW,EAAEC,UAAU,EAAEC,OAAO,EAAEC,aAAa,QAAQ,aAAU;AACpF,SAASC,WAAW,QAAQ,YAAS;AACrC,SACEC,mBAAmB,EACnBC,qBAAqB,EACrBC,WAAW,EACXC,QAAQ,QACH,wBAAqB;AAC5B,SAASC,YAAY,QAAQ,cAAW;AACxC,SAASC,QAAQ,EAAEC,UAAU,EAAEC,WAAW,EAAEC,QAAQ,QAAwB,YAAS;AACrF,SAASC,gBAAgB,EAAEC,eAAe,QAAQ,WAAQ;;AAE1D;AACA;AACA;AACA;;AAEA,MAAMC,UAAU,GAAG,CACjB,WAAW,EACX,mBAAmB,EACnB,OAAO,EACP,YAAY,EACZ,UAAU,EACV,WAAW,CACZ;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,QAAQA,CAACC,OAAgB,EAAEC,KAAqB,EAAQ;EAC/D,MAAMC,IAAI,GAAG,IAAIC,GAAG,CAAS,CAAC;EAC9B,MAAMC,KAAK,GAAIC,KAAc,IAAK;IAChC,IAAIC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,EAAE;MACxBA,KAAK,CAACG,OAAO,CAACJ,KAAK,CAAC;IACtB,CAAC,MAAM,IAAI,OAAOC,KAAK,KAAK,QAAQ,IAAIA,KAAK,KAAK,IAAI,EAAE;MACtD,KAAK,MAAM,CAACI,GAAG,EAAEC,IAAI,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACP,KAAK,CAAC,EAAE;QAC/C,IAAII,GAAG,KAAK,SAAS,IAAIA,GAAG,KAAK,WAAW,EAAE;QAC9C,MAAMI,EAAE,GAAGf,UAAU,CAACgB,QAAQ,CAACL,GAAG,CAAC,GAAIC,IAAI,EAA8BG,EAAE,GAAGE,SAAS;QACvF,IAAI,OAAOF,EAAE,KAAK,QAAQ,EAAE;UAC1B,IAAIX,IAAI,CAACc,GAAG,CAACH,EAAE,CAAC,EAAE,MAAM,IAAII,KAAK,CAAC,wBAAwBJ,EAAE,uBAAuB,CAAC;UACpF,MAAMK,KAAK,GAAGjB,KAAK,KAAKc,SAAS,GAAGA,SAAS,GAAG/B,OAAO,CAAC6B,EAAE,CAAC;UAC3D,IAAIK,KAAK,KAAKjB,KAAK,KAAK,IAAI,IAAIiB,KAAK,CAACjB,KAAK,KAAKA,KAAK,CAAC,EAAE;YACtD,MAAM,IAAIgB,KAAK,CACb,4BAA4BJ,EAAE,2CAChC,CAAC;UACH;UACAX,IAAI,CAACiB,GAAG,CAACN,EAAE,CAAC;QACd;QACAT,KAAK,CAACM,IAAI,CAAC;MACb;IACF;EACF,CAAC;EACDN,KAAK,CAACJ,OAAO,CAAC;AAChB;;AAEA;AACA,SAASoB,WAAWA,CAACf,KAAc,EAAEgB,KAAe,GAAG,EAAE,EAAY;EACnE,IAAIf,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,EAAE;IACxBA,KAAK,CAACG,OAAO,CAAEE,IAAI,IAAKU,WAAW,CAACV,IAAI,EAAEW,KAAK,CAAC,CAAC;EACnD,CAAC,MAAM,IAAI,OAAOhB,KAAK,KAAK,QAAQ,IAAIA,KAAK,KAAK,IAAI,EAAE;IACtD,KAAK,MAAM,CAACI,GAAG,EAAEC,IAAI,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACP,KAAK,CAAC,EAAE;MAC/C;MACA,IAAII,GAAG,KAAK,WAAW,EAAE;MACzB,MAAMa,KAAK,GAAGZ,IAAiC;MAC/C,IAAI,CAACD,GAAG,KAAK,WAAW,IAAIA,GAAG,KAAK,kBAAkB,KAAK,OAAOa,KAAK,EAAEC,IAAI,KAAK,QAAQ,EAAE;QAC1FF,KAAK,CAACG,IAAI,CAACF,KAAK,CAACC,IAAI,CAAC;MACxB;MACAH,WAAW,CAACV,IAAI,EAAEW,KAAK,CAAC;IAC1B;EACF;EACA,OAAOA,KAAK;AACd;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASI,OAAOA,CAACC,IAAgB,EAAmB;EACzD9C,uBAAuB,CAAC,CAAC;EACzB;EACA,MAAM+C,KAAK,GAAGtD,YAAY,CAACqD,IAAI,CAAC,GAAGpC,QAAQ,CAAC,CAAC,GAAGyB,SAAS;EACzD3C,YAAY,CAACsD,IAAI,CAAC;EAClB,MAAME,SAAS,GAAGtD,MAAM,CAAC,SAAS,CAAC;EACnC,OAAOuD,IAAI,CAAEC,OAAO,IAClBvC,YAAY,CAAC6B,WAAW,CAACM,IAAI,CAAC,EAAE,MAAM;IACpC3B,QAAQ,CAAC2B,IAAI,CAAC;IACd,MAAMK,MAAM,GAAG;MACbL,IAAI,EAAEnD,cAAc,CAACmD,IAAI,CAACA,IAAI,CAAC;MAC/BM,MAAM,EAAE,CAACN,IAAI,CAACM,MAAM,IAAI,EAAE,EAAEC,GAAG,CAAC1D,cAAc,CAAC;MAC/C2D,QAAQ,EAAE,CAACR,IAAI,CAACQ,QAAQ,IAAI,EAAE,EAAED,GAAG,CAAC1D,cAAc;IACpD,CAAC;IACDQ,UAAU,CAACgD,MAAM,CAACL,IAAI,EAAE,MAAM,CAAC;IAC/BK,MAAM,CAACC,MAAM,CAACxB,OAAO,CAAE2B,KAAK,IAAKpD,UAAU,CAACoD,KAAK,EAAE,OAAO,CAAC,CAAC;IAC5DJ,MAAM,CAACG,QAAQ,CAAC1B,OAAO,CAAE4B,OAAO,IAAKrD,UAAU,CAACqD,OAAO,EAAE,SAAS,CAAC,CAAC;IACpE,MAAMC,KAAK,GAAG,CAACN,MAAM,CAACL,IAAI,EAAE,GAAGK,MAAM,CAACC,MAAM,EAAE,GAAGD,MAAM,CAACG,QAAQ,CAAC;IACjE,OAAO1D,sBAAsB,CAAC6D,KAAK,EAAE,MACnCC,OAAO,CAAC,MACNC,QAAQ,CAACT,OAAO,EAAE,MAAM;MACtB;MACAzC,WAAW,CAACgD,KAAK,EAAEV,KAAK,CAAC;MACzB,OAAOjD,MAAM,CAAC+C,OAAO,CAACG,SAAS,EAAEG,MAAM,CAAC;IAC1C,CAAC,CACH,CACF,CAAC;EACH,CAAC,CACH,CAAC;AACH;AAEA,OAAO,SAASS,iBAAiBA,CAACC,OAAgB,EAAQ;EACxDtE,sBAAsB,CAACsE,OAAO,CAAC;EAC/B/D,MAAM,CAAC8D,iBAAiB,CAAC7D,eAAe,CAAC8D,OAAO,CAAC,CAAC;AACpD;;AAEA;AACA;AACA;AACA;AACA,IAAIC,KAAK,GAAG,CAAC;AACb,MAAMC,YAAY,GAAG,IAAIxC,GAAG,CAAS,CAAC;AACtC,MAAMyC,UAA6D,GAAG,EAAE;AACxE;AACA;AACA,MAAMC,eAAe,GAAG,IAAI1C,GAAG,CAAS,CAAC;;AAEzC;AACA;AACA;AACA;AACA,OAAO,SAAS2C,YAAYA,CAACC,WAAmB,EAAEN,OAAgB,EAAQ;EACxE,MAAMO,aAAa,GAAGrE,eAAe,CAAC8D,OAAO,CAAC;EAC9C,MAAMQ,IAAI,GAAGA,CAAA,KAAM;IACjB7D,qBAAqB,CAAC2D,WAAW,EAAEN,OAAO,CAAC;IAC3C/D,MAAM,CAACoE,YAAY,CAACC,WAAW,EAAEC,aAAa,CAAC;EACjD,CAAC;EACD,MAAME,QAAQ,GACZL,eAAe,CAAC7B,GAAG,CAAC+B,WAAW,CAAC,IAAI,CAACH,UAAU,CAACO,IAAI,CAAC,CAAC;IAAEtC;EAAG,CAAC,KAAKA,EAAE,KAAKkC,WAAW,CAAC;EACtF,IAAIJ,YAAY,CAACS,IAAI,KAAK,CAAC,IAAIF,QAAQ,EAAED,IAAI,CAAC,CAAC,CAAC,KAC3CL,UAAU,CAACpB,IAAI,CAAC;IAAEX,EAAE,EAAEkC,WAAW;IAAEM,KAAK,EAAEX,KAAK;IAAEO;EAAK,CAAC,CAAC;AAC/D;;AAEA;AACA;AACA,SAASpB,IAAIA,CAASyB,GAA6C,EAAmB;EACpF,MAAMC,MAAM,GAAG,EAAEb,KAAK;EACtBC,YAAY,CAACxB,GAAG,CAACoC,MAAM,CAAC;EACxB,MAAMzB,OAAO,GAAGA,CAAA,KAAM;IACpB,IAAIa,YAAY,CAACa,MAAM,CAACD,MAAM,CAAC,EAAEE,cAAc,CAAC,CAAC;EACnD,CAAC;EACD,IAAIC,MAAuB;EAC3B,IAAI;IACFA,MAAM,GAAGJ,GAAG,CAACxB,OAAO,CAAC;EACvB,CAAC,CAAC,OAAO6B,KAAK,EAAE;IACd7B,OAAO,CAAC,CAAC;IACT,MAAM6B,KAAK;EACb;EACAD,MAAM,CAACE,IAAI,CAAC9B,OAAO,EAAEA,OAAO,CAAC;EAC7B,OAAO4B,MAAM;AACf;;AAEA;AACA,SAASnB,QAAQA,CAAST,OAAmB,EAAEmB,IAA2B,EAAmB;EAC3F,IAAI;IACF,OAAOA,IAAI,CAAC,CAAC;EACf,CAAC,SAAS;IACRnB,OAAO,CAAC,CAAC;EACX;AACF;AAEA,SAAS2B,cAAcA,CAAA,EAAS;EAC9B,KAAK,IAAII,KAAK,GAAGjB,UAAU,CAAC,CAAC,CAAC,EAAEiB,KAAK,IAAI,CAACC,cAAc,CAACD,KAAK,CAACR,KAAK,CAAC,EAAEQ,KAAK,GAAGjB,UAAU,CAAC,CAAC,CAAC,EAAE;IAC5FA,UAAU,CAACmB,KAAK,CAAC,CAAC;IAClB,IAAI;MACFF,KAAK,CAACZ,IAAI,CAAC,CAAC;IACd,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;AACF;;AAEA;AACA,SAASa,cAAcA,CAACP,MAAc,EAAW;EAC/C,KAAK,MAAMS,OAAO,IAAIrB,YAAY,EAAE,IAAIqB,OAAO,IAAIT,MAAM,EAAE,OAAO,IAAI;EACtE,OAAO,KAAK;AACd;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAAS/B,IAAIA,CAClBuB,WAAmB,EACnBhB,MAAc,EACdkC,MAAqB,GAAGA,CAAA,KAAM,IAAI,EACjB;EACjBrF,uBAAuB,CAAC,CAAC;EACzB,MAAMgD,SAAS,GAAGtD,MAAM,CAAC,MAAM,CAAC;EAChC,OAAOuD,IAAI,CAAEC,OAAO,IAClBvC,YAAY,CAAC6B,WAAW,CAACW,MAAM,CAAC,EAAE,MAAM;IACtChC,QAAQ,CAACgC,MAAM,CAAC;IAChB,MAAMmC,IAAI,GAAG3F,cAAc,CAACwD,MAAM,CAAC;IACnC;IACA,MAAMoC,QAAQ,GAAGC,YAAY,CAACF,IAAI,CAAC;IACnC,IAAIC,QAAQ,EAAE3E,QAAQ,CAAC0E,IAAI,CAACrD,EAAE,CAAC;IAC/BhB,eAAe,CAACkD,WAAW,EAAEmB,IAAI,CAAC;IAClC;IACA,MAAMG,IAAI,GAAGrF,OAAO,CAAC+D,WAAW,CAAC;IACjChE,UAAU,CACRmF,IAAI,EACJG,IAAI,EAAEC,SAAS,IAAI,MAAM,EACzBD,IAAI,EAAEpE,KAAK,IAAI,IAAI,EACnB,CAACoE,IAAI,EAAEE,KAAK,IAAI,CAAC,IAAI,CAAC,EACtBF,IAAI,EAAEG,IAAI,EACVH,IAAI,EAAEI,KACR,CAAC;IACD,OAAOjG,sBAAsB,CAAC,CAAC0F,IAAI,CAAC,EAAE,MACpCQ,QAAQ,CAAC9C,SAAS,EAAEmB,WAAW,EAAEmB,IAAI,EAAEC,QAAQ,EAAEF,MAAM,EAAEnC,OAAO,CAAC,CAAC8B,IAAI,CAAEe,OAAO,IAAK;MAClF;MACA,IAAIA,OAAO,KAAKT,IAAI,CAACrD,EAAE,EAAE+D,gBAAgB,CAACV,IAAI,CAACrD,EAAE,CAAC;MAClD,OAAO8D,OAAO;IAChB,CAAC,CACH,CAAC;EACH,CAAC,CACH,CAAC;AACH;;AAEA;AACA,SAASC,gBAAgBA,CAACC,QAAgB,EAAQ;EAChD3F,WAAW,CAAC2F,QAAQ,CAAC;EACrB/F,WAAW,CAAC+F,QAAQ,CAAC;EACrB1F,mBAAmB,CAAC0F,QAAQ,CAAC;EAC7BnF,WAAW,CAAC,CAACmF,QAAQ,CAAC,CAAC;EACvB3G,mBAAmB,CAAC2G,QAAQ,CAAC;EAC7BjF,gBAAgB,CAACiF,QAAQ,CAAC;AAC5B;;AAEA;AACA;AACA,SAAST,YAAYA,CAACF,IAAgB,EAAW;EAC/C,OAAOjG,QAAQ,CAAC6G,EAAE,KAAK,SAAS,IAAIZ,IAAI,CAACa,IAAI,KAAK,WAAW,IAAItF,UAAU,CAACyE,IAAI,CAACc,IAAI,CAACzD,IAAI,CAAC;AAC7F;;AAEA;AACA,IAAI0D,kBAA6C;;AAEjD;AACA;AACA,SAAS3C,OAAOA,CAASW,IAA2B,EAAmB;EACrE,OAAOgC,kBAAkB,GAAGA,kBAAkB,CAACrB,IAAI,CAACX,IAAI,CAAC,GAAGA,IAAI,CAAC,CAAC;AACpE;AAEA,SAASyB,QAAQA,CACf9C,SAAiB,EACjBmB,WAAmB,EACnBmB,IAAgB,EAChBC,QAAiB,EACjBF,MAAqB,EACrBnC,OAAmB,EACF;EACjB;EACA,IAAI,CAACqC,QAAQ,EAAE;IACb,OAAO7B,OAAO,CAAC,MAAM;MACnB,IAAI2B,MAAM,CAAC,CAAC,EAAE,OAAO1B,QAAQ,CAACT,OAAO,EAAE,MAAMpD,MAAM,CAAC8C,IAAI,CAACI,SAAS,EAAEmB,WAAW,EAAEmB,IAAI,CAAC,CAAC;MACvFU,gBAAgB,CAACV,IAAI,CAACrD,EAAE,CAAC;MACzB,OAAOqE,OAAO,CAACC,MAAM,CAAC,IAAIlE,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC7F,CAAC,CAAC;EACJ;EACA,MAAMmE,MAAM,GAAGH,kBAAkB;EACjC,IAAII,IAAiB;EACrB,MAAMC,IAAI,GAAG,IAAIJ,OAAO,CAAQK,OAAO,IAAK;IAC1CF,IAAI,GAAGE,OAAO;EAChB,CAAC,CAAC;EACF,MAAMC,MAAM,GAAGJ,MAAM,GAAGA,MAAM,CAACxB,IAAI,CAAC,MAAM0B,IAAI,CAAC,GAAGA,IAAI;EACtDL,kBAAkB,GAAGO,MAAM;EAC3BA,MAAM,CAAC5B,IAAI,CAAC,MAAM;IAChB,IAAIqB,kBAAkB,KAAKO,MAAM,EAAEP,kBAAkB,GAAGlE,SAAS;EACnE,CAAC,CAAC;EACF,OAAO0E,cAAc,CAAC7D,SAAS,EAAEmB,WAAW,EAAEmB,IAAI,EAAEkB,MAAM,EAAEC,IAAI,EAAEvD,OAAO,CAAC;AAC5E;AAEA,eAAe2D,cAAcA,CAC3B7D,SAAiB,EACjBmB,WAAmB,EACnBmB,IAAgB,EAChBkB,MAAiC,EACjCC,IAAgB,EAChBvD,OAAmB,EACF;EACjB;EACA,IAAI;IACF,MAAM4D,KAAK,GAAI,MAAMhH,MAAM,CAACiH,WAAW,CAAC/D,SAAS,EAAEmB,WAAW,EAAEmB,IAAI,CAAsB;IAC1F,IAAIwB,KAAK,EAAE7C,eAAe,CAAC1B,GAAG,CAAC+C,IAAI,CAACrD,EAAE,CAAC;IACvC,IAAI;MACF;MACA,MAAMlB,QAAQ,CAACuE,IAAI,CAACrD,EAAE,EAAE6E,KAAK,IAAI3E,SAAS,CAAC;MAC3C,MAAMqE,MAAM;IACd,CAAC,CAAC,OAAOzB,KAAK,EAAE;MACd,IAAI+B,KAAK,EAAEhH,MAAM,CAACkH,kBAAkB,CAAC1B,IAAI,CAACrD,EAAE,CAAC;MAC7C,MAAM8C,KAAK;IACb;IACA,OAAOjF,MAAM,CAAC8C,IAAI,CAACI,SAAS,EAAEmB,WAAW,EAAEmB,IAAI,CAAC;EAClD,CAAC,SAAS;IACRrB,eAAe,CAACW,MAAM,CAACU,IAAI,CAACrD,EAAE,CAAC;IAC/BwE,IAAI,CAAC,CAAC;IACNvD,OAAO,CAAC,CAAC;EACX;AACF;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAAS+D,cAAcA,CAACC,SAAiB,EAAQ;EACtDxD,OAAO,CAAC,YAAY5D,MAAM,CAACmH,cAAc,CAACC,SAAS,CAAC,CAAC,CAACC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;AACvE;;AAEA;AACA,OAAO,SAASC,GAAGA,CAACjD,WAAmB,EAAmB;EACxDnE,uBAAuB,CAAC,CAAC;EACzB,MAAMgD,SAAS,GAAGtD,MAAM,CAAC,KAAK,CAAC;EAC/B,OAAOgE,OAAO,CAAC,MAAM5D,MAAM,CAACsH,GAAG,CAACpE,SAAS,EAAEmB,WAAW,CAAC,CAAC;AAC1D;AAEA,OAAO,SAASkD,KAAKA,CAAClD,WAAmB,EAAmB;EAC1DnE,uBAAuB,CAAC,CAAC;EACzB,MAAMgD,SAAS,GAAGtD,MAAM,CAAC,OAAO,CAAC;EACjC,OAAOgE,OAAO,CAAC,MAAM5D,MAAM,CAACuH,KAAK,CAACrE,SAAS,EAAEmB,WAAW,CAAC,CAAC;AAC5D;AAEA,OAAO,SAASmD,SAASA,CAACnD,WAAmB,EAAmB;EAC9DnE,uBAAuB,CAAC,CAAC;EACzB,MAAMgD,SAAS,GAAGtD,MAAM,CAAC,WAAW,CAAC;EACrC,OAAOgE,OAAO,CAAC,MAAM5D,MAAM,CAACwH,SAAS,CAACtE,SAAS,EAAEmB,WAAW,CAAC,CAAC;AAChE;AAEA,OAAO,SAASoD,YAAYA,CAACpD,WAAmB,EAAEqD,QAAkB,EAAmB;EACrFxH,uBAAuB,CAAC,CAAC;EACzB,MAAMgD,SAAS,GAAGtD,MAAM,CAAC,cAAc,CAAC;EACxC,OAAOuD,IAAI,CAAEC,OAAO,IAClBvC,YAAY,CAAC6B,WAAW,CAACgF,QAAQ,CAAC,EAAE,MAAM;IACxCrG,QAAQ,CAACqG,QAAQ,EAAEpH,OAAO,CAAC+D,WAAW,CAAC,EAAE9C,KAAK,CAAC;IAC/C,MAAMoC,KAAK,GAAG+D,QAAQ,CAACnE,GAAG,CAAC1D,cAAc,CAAC;IAC1C8D,KAAK,CAAC7B,OAAO,CAAE0D,IAAI,IAAKrE,eAAe,CAACkD,WAAW,EAAEmB,IAAI,CAAC,CAAC;IAC3D,MAAMG,IAAI,GAAGrF,OAAO,CAAC+D,WAAW,CAAC;IACjCV,KAAK,CAAC7B,OAAO,CAAC,CAAC0D,IAAI,EAAEK,KAAK,KACxBxF,UAAU,CACRmF,IAAI,EACJG,IAAI,EAAEC,SAAS,IAAI,MAAM,EACzBD,IAAI,EAAEpE,KAAK,IAAI,IAAI,EACnBsE,KAAK,EACLF,IAAI,EAAEG,IAAI,EACVH,IAAI,EAAEI,KACR,CACF,CAAC;IACD,OAAOjG,sBAAsB,CAAC6D,KAAK,EAAE,MACnCC,OAAO,CAAC,MAAMC,QAAQ,CAACT,OAAO,EAAE,MAAMpD,MAAM,CAACyH,YAAY,CAACvE,SAAS,EAAEmB,WAAW,EAAEV,KAAK,CAAC,CAAC,CAC3F,CAAC;EACH,CAAC,CACH,CAAC;AACH;AAEA,OAAO,SAASgE,YAAYA,CAACtD,WAAmB,EAAEuD,MAAc,EAAEvE,MAAc,EAAmB;EACjGnD,uBAAuB,CAAC,CAAC;EACzB,MAAMgD,SAAS,GAAGtD,MAAM,CAAC,cAAc,CAAC;EACxC,OAAOuD,IAAI,CAAEC,OAAO,IAClBvC,YAAY,CAAC6B,WAAW,CAACW,MAAM,CAAC,EAAE,MAAM;IACtChC,QAAQ,CAACgC,MAAM,CAAC;IAChB,MAAMmC,IAAI,GAAG3F,cAAc,CAACwD,MAAM,CAAC;IACnClC,eAAe,CAACkD,WAAW,EAAEmB,IAAI,CAAC;IAClC,MAAMG,IAAI,GAAGrF,OAAO,CAAC+D,WAAW,CAAC;IACjC,MAAMwD,EAAE,GAAGC,WAAW,CAACzD,WAAW,EAAEuD,MAAM,CAAC;IAC3CvH,UAAU,CAACmF,IAAI,EAAEG,IAAI,EAAEC,SAAS,IAAI,MAAM,EAAEiC,EAAE,CAACtG,KAAK,EAAEsG,EAAE,CAAChC,KAAK,EAAEF,IAAI,EAAEG,IAAI,EAAEH,IAAI,EAAEI,KAAK,CAAC;IACxF,OAAOjG,sBAAsB,CAAC,CAAC0F,IAAI,CAAC,EAAE,MACpC5B,OAAO,CAAC,MACNC,QAAQ,CAACT,OAAO,EAAE,MAAMpD,MAAM,CAAC2H,YAAY,CAACzE,SAAS,EAAEmB,WAAW,EAAEuD,MAAM,EAAEpC,IAAI,CAAC,CACnF,CACF,CAAC;EACH,CAAC,CACH,CAAC;AACH;;AAEA;AACA;AACA;AACA,SAASsC,WAAWA,CAACC,MAAc,EAAEH,MAAc,EAA2C;EAC5F,MAAMjC,IAAI,GAAGrF,OAAO,CAACyH,MAAM,CAAC;EAC5B,MAAMC,UAAU,GAAG7H,QAAQ,CAAC4H,MAAM,CAAC;EACnC,IAAIpC,IAAI,IAAIA,IAAI,CAACpE,KAAK,KAAK,IAAI,KAAK,CAACyG,UAAU,IAAIA,UAAU,CAACJ,MAAM,KAAK,SAAS,CAAC,EAAE;IACnF,OAAO;MAAErG,KAAK,EAAEoE,IAAI,CAACpE,KAAK;MAAEsE,KAAK,EAAEF,IAAI,CAACE,KAAK,GAAG;IAAE,CAAC;EACrD;EACA,MAAMoC,MAAM,GAAG1I,QAAQ,CAAC6G,EAAE,KAAK,SAAS,GAAG,WAAW,GAAGwB,MAAM;EAC/D,OAAO;IAAErG,KAAK,EAAE,CAACyG,UAAU,IAAIzH,aAAa,CAACyH,UAAU,CAACE,KAAK,EAAED,MAAM,CAAC,KAAK,IAAI;IAAEpC,KAAK,EAAE;EAAE,CAAC;AAC7F;;AAEA;AACA,OAAO,SAASsC,cAAcA,CAAC9D,WAAmB,EAAEuD,MAAc,EAAEpF,KAAc,EAAiB;EACjG,MAAMU,SAAS,GAAGtD,MAAM,CAAC4C,KAAK,GAAG,YAAY,GAAG,YAAY,CAAC;EAC7D,OAAOoB,OAAO,CAAC,MAAM5D,MAAM,CAACmI,cAAc,CAACjF,SAAS,EAAEmB,WAAW,EAAEuD,MAAM,EAAEpF,KAAK,CAAC,CAAC;AACpF;AAEA,OAAO,SAAS4F,SAASA,CAAC/E,MAAc,EAAmB;EACzDnD,uBAAuB,CAAC,CAAC;EACzB,MAAMgD,SAAS,GAAGtD,MAAM,CAAC,WAAW,CAAC;EACrC,OAAOuD,IAAI,CAAEC,OAAO,IAClBvC,YAAY,CAAC6B,WAAW,CAACW,MAAM,CAAC,EAAE,MAAM;IACtChC,QAAQ,CAACgC,MAAM,CAAC;IAChB,MAAMmC,IAAI,GAAG3F,cAAc,CAACwD,MAAM,CAAC;IACnChD,UAAU,CAACmF,IAAI,EAAE,OAAO,CAAC;IACzB,OAAO1F,sBAAsB,CAAC,CAAC0F,IAAI,CAAC,EAAE,MACpC5B,OAAO,CAAC,MAAMC,QAAQ,CAACT,OAAO,EAAE,MAAMpD,MAAM,CAACoI,SAAS,CAAClF,SAAS,EAAEsC,IAAI,CAAC,CAAC,CAC1E,CAAC;EACH,CAAC,CACH,CAAC;AACH;AAEA,OAAO,SAAS6C,YAAYA,CAAChE,WAAmB,EAAEN,OAAiB,EAAmB;EACpF7D,uBAAuB,CAAC,CAAC;EACzB,MAAMgD,SAAS,GAAGtD,MAAM,CAAC,cAAc,CAAC;EACxC,OAAOgE,OAAO,CAAC,MACb5D,MAAM,CAACqI,YAAY,CAACnF,SAAS,EAAEmB,WAAW,EAAEN,OAAO,IAAI9D,eAAe,CAAC8D,OAAO,CAAC,CACjF,CAAC;AACH;AAEA,OAAO,SAASuE,gBAAgBA,CAACvE,OAAiB,EAAmB;EACnE7D,uBAAuB,CAAC,CAAC;EACzB,MAAMgD,SAAS,GAAGtD,MAAM,CAAC,kBAAkB,CAAC;EAC5C,OAAOgE,OAAO,CAAC,MAAM5D,MAAM,CAACsI,gBAAgB,CAACpF,SAAS,EAAEa,OAAO,IAAI9D,eAAe,CAAC8D,OAAO,CAAC,CAAC,CAAC;AAC/F;AAEA,OAAO,SAASwE,WAAWA,CAAClF,MAAc,EAAmB;EAC3DnD,uBAAuB,CAAC,CAAC;EACzB,MAAMgD,SAAS,GAAGtD,MAAM,CAAC,aAAa,CAAC;EACvC,OAAOuD,IAAI,CAAEC,OAAO,IAClBvC,YAAY,CAAC6B,WAAW,CAACW,MAAM,CAAC,EAAE,MAAM;IACtChC,QAAQ,CAACgC,MAAM,CAAC;IAChB,MAAMmC,IAAI,GAAG3F,cAAc,CAACwD,MAAM,CAAC;IACnChD,UAAU,CAACmF,IAAI,EAAE,SAAS,CAAC;IAC3B,OAAO1F,sBAAsB,CAAC,CAAC0F,IAAI,CAAC,EAAE,MACpC5B,OAAO,CAAC,MAAMC,QAAQ,CAACT,OAAO,EAAE,MAAMpD,MAAM,CAACuI,WAAW,CAACrF,SAAS,EAAEsC,IAAI,CAAC,CAAC,CAC5E,CAAC;EACH,CAAC,CACH,CAAC;AACH;AAEA,OAAO,SAASgD,cAAcA,CAACnE,WAAmB,EAAmB;EACnEnE,uBAAuB,CAAC,CAAC;EACzB,MAAMgD,SAAS,GAAGtD,MAAM,CAAC,gBAAgB,CAAC;EAC1C,OAAOgE,OAAO,CAAC,MAAM5D,MAAM,CAACwI,cAAc,CAACtF,SAAS,EAAEmB,WAAW,CAAC,CAAC;AACrE;AAEA,OAAO,SAASoE,kBAAkBA,CAAA,EAAoB;EACpDvI,uBAAuB,CAAC,CAAC;EACzB,MAAMgD,SAAS,GAAGtD,MAAM,CAAC,oBAAoB,CAAC;EAC9C,OAAOgE,OAAO,CAAC,MAAM5D,MAAM,CAACyI,kBAAkB,CAACvF,SAAS,CAAC,CAAC;AAC5D","ignoreList":[]}
1
+ {"version":3,"names":["Platform","clearButtonHandlers","rememberDefaultOptions","rememberRoot","restoresRoot","nextId","toNativeLayout","whenNativeScreensReady","commands","native","toNativeOptions","dropReactRenderMeasures","columnOf","forgetPlace","layoutsOf","notePlaces","placeOf","stackOfColumn","forgetProps","forgetMergedOptions","forgetMergedPaths","noteMergedOwnOptions","rememberMergedOptions","rootGoesOut","sentRoot","afterLoading","hasRoot","isReactScreen","holdSlot","isSlotName","removeSlots","showSlot","forgetTabsScreen","showScreensFrom","NODE_KINDS","checkIds","layouts","stack","seen","Set","visit","value","Array","isArray","forEach","key","item","Object","entries","id","includes","undefined","has","Error","shown","add","screenNames","names","named","name","push","setRoot","root","again","commandId","show","goneOut","layout","modals","map","overlays","modal","overlay","nodes","inOrder","sendShow","setDefaultOptions","options","shows","waitingShows","heldMerges","preparedScreens","mergeOptions","componentId","nativeOptions","send","prepared","some","size","after","clearOptions","paths","path","join","run","number","delete","sendHeldMerges","result","error","then","merge","showWaitsUntil","shift","waiting","wanted","node","prepares","preparesPush","from","container","index","menu","layer","sendPush","shownId","forgetNeverShown","rendersAtPress","forgetUnmountedPreview","data","preview","nativeID","PREVIEW_FORGET_DELAY","screenId","setTimeout","OS","type","preparedPushesSent","Promise","reject","before","sent","mine","resolve","queued","prepareAndPush","frame","preparePush","cancelPreparedPush","dismissPreview","previewId","catch","pop","popTo","popToRoot","setStackRoot","children","showInColumn","column","at","columnPlace","within","fromId","fromColumn","target","split","setColumnShown","showModal","dismissModal","dismissAllModals","showOverlay","dismissOverlay","dismissAllOverlays"],"sourceRoot":"../../../src","sources":["engine/commands.ts"],"mappings":"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","ignoreList":[]}