@react-navigation/core 7.0.0-alpha.0 → 7.0.0-alpha.1

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 (444) hide show
  1. package/lib/commonjs/BaseNavigationContainer.js +35 -36
  2. package/lib/commonjs/BaseNavigationContainer.js.map +1 -1
  3. package/lib/commonjs/CurrentRenderContext.js +2 -3
  4. package/lib/commonjs/CurrentRenderContext.js.map +1 -1
  5. package/lib/commonjs/DeprecatedNavigationInChildContext.js +2 -3
  6. package/lib/commonjs/DeprecatedNavigationInChildContext.js.map +1 -1
  7. package/lib/commonjs/EnsureSingleNavigator.js +1 -1
  8. package/lib/commonjs/EnsureSingleNavigator.js.map +1 -1
  9. package/lib/commonjs/Group.js +1 -1
  10. package/lib/commonjs/Group.js.map +1 -1
  11. package/lib/commonjs/NavigationBuilderContext.js +2 -3
  12. package/lib/commonjs/NavigationBuilderContext.js.map +1 -1
  13. package/lib/commonjs/NavigationContainerRefContext.js +2 -3
  14. package/lib/commonjs/NavigationContainerRefContext.js.map +1 -1
  15. package/lib/commonjs/NavigationContext.js +2 -3
  16. package/lib/commonjs/NavigationContext.js.map +1 -1
  17. package/lib/commonjs/NavigationHelpersContext.js +2 -3
  18. package/lib/commonjs/NavigationHelpersContext.js.map +1 -1
  19. package/lib/commonjs/NavigationIndependentTree.js +7 -8
  20. package/lib/commonjs/NavigationIndependentTree.js.map +1 -1
  21. package/lib/commonjs/NavigationIndependentTreeContext.js +2 -3
  22. package/lib/commonjs/NavigationIndependentTreeContext.js.map +1 -1
  23. package/lib/commonjs/NavigationRouteContext.js +2 -3
  24. package/lib/commonjs/NavigationRouteContext.js.map +1 -1
  25. package/lib/commonjs/NavigationStateContext.js +3 -3
  26. package/lib/commonjs/NavigationStateContext.js.map +1 -1
  27. package/lib/commonjs/PreventRemoveContext.js +2 -3
  28. package/lib/commonjs/PreventRemoveContext.js.map +1 -1
  29. package/lib/commonjs/PreventRemoveProvider.js +8 -8
  30. package/lib/commonjs/PreventRemoveProvider.js.map +1 -1
  31. package/lib/commonjs/SceneView.js +8 -9
  32. package/lib/commonjs/SceneView.js.map +1 -1
  33. package/lib/commonjs/Screen.js +1 -1
  34. package/lib/commonjs/Screen.js.map +1 -1
  35. package/lib/commonjs/StaticContainer.js +4 -5
  36. package/lib/commonjs/StaticContainer.js.map +1 -1
  37. package/lib/commonjs/StaticNavigation.js +4 -5
  38. package/lib/commonjs/StaticNavigation.js.map +1 -1
  39. package/lib/commonjs/UnhandledActionContext.js +2 -3
  40. package/lib/commonjs/UnhandledActionContext.js.map +1 -1
  41. package/lib/commonjs/checkDuplicateRouteNames.js +1 -1
  42. package/lib/commonjs/checkDuplicateRouteNames.js.map +1 -1
  43. package/lib/commonjs/checkSerializable.js +1 -1
  44. package/lib/commonjs/checkSerializable.js.map +1 -1
  45. package/lib/commonjs/createNavigationContainerRef.js +1 -1
  46. package/lib/commonjs/createNavigationContainerRef.js.map +1 -1
  47. package/lib/commonjs/createNavigatorFactory.js +7 -8
  48. package/lib/commonjs/createNavigatorFactory.js.map +1 -1
  49. package/lib/commonjs/findFocusedRoute.js +1 -1
  50. package/lib/commonjs/findFocusedRoute.js.map +1 -1
  51. package/lib/commonjs/fromEntries.js +1 -1
  52. package/lib/commonjs/fromEntries.js.map +1 -1
  53. package/lib/commonjs/getActionFromState.js +1 -1
  54. package/lib/commonjs/getActionFromState.js.map +1 -1
  55. package/lib/commonjs/getFocusedRouteNameFromRoute.js +1 -1
  56. package/lib/commonjs/getFocusedRouteNameFromRoute.js.map +1 -1
  57. package/lib/commonjs/getPathFromState.js +6 -7
  58. package/lib/commonjs/getPathFromState.js.map +1 -1
  59. package/lib/commonjs/getStateFromPath.js +5 -5
  60. package/lib/commonjs/getStateFromPath.js.map +1 -1
  61. package/lib/commonjs/index.js +56 -78
  62. package/lib/commonjs/index.js.map +1 -1
  63. package/lib/commonjs/isArrayEqual.js +1 -1
  64. package/lib/commonjs/isArrayEqual.js.map +1 -1
  65. package/lib/commonjs/isRecordEqual.js +1 -1
  66. package/lib/commonjs/isRecordEqual.js.map +1 -1
  67. package/lib/commonjs/types.js +1 -8
  68. package/lib/commonjs/types.js.map +1 -1
  69. package/lib/commonjs/useChildListeners.js +1 -1
  70. package/lib/commonjs/useChildListeners.js.map +1 -1
  71. package/lib/commonjs/useComponent.js +1 -1
  72. package/lib/commonjs/useComponent.js.map +1 -1
  73. package/lib/commonjs/useCurrentRender.js +3 -4
  74. package/lib/commonjs/useCurrentRender.js.map +1 -1
  75. package/lib/commonjs/useDescriptors.js +14 -15
  76. package/lib/commonjs/useDescriptors.js.map +1 -1
  77. package/lib/commonjs/useEventEmitter.js +1 -1
  78. package/lib/commonjs/useEventEmitter.js.map +1 -1
  79. package/lib/commonjs/useFocusEffect.js +3 -4
  80. package/lib/commonjs/useFocusEffect.js.map +1 -1
  81. package/lib/commonjs/useFocusEvents.js +3 -4
  82. package/lib/commonjs/useFocusEvents.js.map +1 -1
  83. package/lib/commonjs/useFocusedListenersChildrenAdapter.js +3 -4
  84. package/lib/commonjs/useFocusedListenersChildrenAdapter.js.map +1 -1
  85. package/lib/commonjs/useIsFocused.js +3 -4
  86. package/lib/commonjs/useIsFocused.js.map +1 -1
  87. package/lib/commonjs/useKeyedChildListeners.js +1 -1
  88. package/lib/commonjs/useKeyedChildListeners.js.map +1 -1
  89. package/lib/commonjs/useNavigation.js +5 -6
  90. package/lib/commonjs/useNavigation.js.map +1 -1
  91. package/lib/commonjs/useNavigationBuilder.js +44 -45
  92. package/lib/commonjs/useNavigationBuilder.js.map +1 -1
  93. package/lib/commonjs/useNavigationCache.js +3 -4
  94. package/lib/commonjs/useNavigationCache.js.map +1 -1
  95. package/lib/commonjs/useNavigationContainerRef.js +3 -4
  96. package/lib/commonjs/useNavigationContainerRef.js.map +1 -1
  97. package/lib/commonjs/useNavigationHelpers.js +5 -6
  98. package/lib/commonjs/useNavigationHelpers.js.map +1 -1
  99. package/lib/commonjs/useNavigationIndependentTree.js +3 -4
  100. package/lib/commonjs/useNavigationIndependentTree.js.map +1 -1
  101. package/lib/commonjs/useNavigationState.js +3 -4
  102. package/lib/commonjs/useNavigationState.js.map +1 -1
  103. package/lib/commonjs/useOnAction.js +7 -8
  104. package/lib/commonjs/useOnAction.js.map +1 -1
  105. package/lib/commonjs/useOnGetState.js +7 -8
  106. package/lib/commonjs/useOnGetState.js.map +1 -1
  107. package/lib/commonjs/useOnPreventRemove.js +5 -6
  108. package/lib/commonjs/useOnPreventRemove.js.map +1 -1
  109. package/lib/commonjs/useOnRouteFocus.js +3 -4
  110. package/lib/commonjs/useOnRouteFocus.js.map +1 -1
  111. package/lib/commonjs/useOptionsGetters.js +5 -6
  112. package/lib/commonjs/useOptionsGetters.js.map +1 -1
  113. package/lib/commonjs/usePreventRemove.js +8 -8
  114. package/lib/commonjs/usePreventRemove.js.map +1 -1
  115. package/lib/commonjs/usePreventRemoveContext.js +3 -4
  116. package/lib/commonjs/usePreventRemoveContext.js.map +1 -1
  117. package/lib/commonjs/useRegisterNavigator.js +1 -1
  118. package/lib/commonjs/useRegisterNavigator.js.map +1 -1
  119. package/lib/commonjs/useRoute.js +3 -4
  120. package/lib/commonjs/useRoute.js.map +1 -1
  121. package/lib/commonjs/useRouteCache.js +1 -1
  122. package/lib/commonjs/useRouteCache.js.map +1 -1
  123. package/lib/commonjs/useScheduleUpdate.js +1 -1
  124. package/lib/commonjs/useScheduleUpdate.js.map +1 -1
  125. package/lib/commonjs/useSyncState.js +1 -1
  126. package/lib/commonjs/useSyncState.js.map +1 -1
  127. package/lib/commonjs/validatePathConfig.js +1 -1
  128. package/lib/commonjs/validatePathConfig.js.map +1 -1
  129. package/lib/module/BaseNavigationContainer.js +17 -18
  130. package/lib/module/BaseNavigationContainer.js.map +1 -1
  131. package/lib/module/CurrentRenderContext.js +1 -2
  132. package/lib/module/CurrentRenderContext.js.map +1 -1
  133. package/lib/module/DeprecatedNavigationInChildContext.js +1 -2
  134. package/lib/module/DeprecatedNavigationInChildContext.js.map +1 -1
  135. package/lib/module/EnsureSingleNavigator.js +1 -1
  136. package/lib/module/EnsureSingleNavigator.js.map +1 -1
  137. package/lib/module/Group.js +1 -1
  138. package/lib/module/Group.js.map +1 -1
  139. package/lib/module/NavigationBuilderContext.js +1 -2
  140. package/lib/module/NavigationBuilderContext.js.map +1 -1
  141. package/lib/module/NavigationContainerRefContext.js +1 -2
  142. package/lib/module/NavigationContainerRefContext.js.map +1 -1
  143. package/lib/module/NavigationContext.js +1 -2
  144. package/lib/module/NavigationContext.js.map +1 -1
  145. package/lib/module/NavigationHelpersContext.js +1 -2
  146. package/lib/module/NavigationHelpersContext.js.map +1 -1
  147. package/lib/module/NavigationIndependentTree.js +4 -4
  148. package/lib/module/NavigationIndependentTree.js.map +1 -1
  149. package/lib/module/NavigationIndependentTreeContext.js +1 -2
  150. package/lib/module/NavigationIndependentTreeContext.js.map +1 -1
  151. package/lib/module/NavigationRouteContext.js +1 -2
  152. package/lib/module/NavigationRouteContext.js.map +1 -1
  153. package/lib/module/NavigationStateContext.js +1 -1
  154. package/lib/module/NavigationStateContext.js.map +1 -1
  155. package/lib/module/PreventRemoveContext.js +1 -2
  156. package/lib/module/PreventRemoveContext.js.map +1 -1
  157. package/lib/module/PreventRemoveProvider.js +4 -4
  158. package/lib/module/PreventRemoveProvider.js.map +1 -1
  159. package/lib/module/SceneView.js +5 -5
  160. package/lib/module/SceneView.js.map +1 -1
  161. package/lib/module/Screen.js +1 -1
  162. package/lib/module/Screen.js.map +1 -1
  163. package/lib/module/StaticContainer.js +2 -3
  164. package/lib/module/StaticContainer.js.map +1 -1
  165. package/lib/module/StaticNavigation.js +2 -2
  166. package/lib/module/StaticNavigation.js.map +1 -1
  167. package/lib/module/UnhandledActionContext.js +1 -2
  168. package/lib/module/UnhandledActionContext.js.map +1 -1
  169. package/lib/module/checkDuplicateRouteNames.js +1 -1
  170. package/lib/module/checkDuplicateRouteNames.js.map +1 -1
  171. package/lib/module/checkSerializable.js +1 -1
  172. package/lib/module/checkSerializable.js.map +1 -1
  173. package/lib/module/createNavigationContainerRef.js +1 -1
  174. package/lib/module/createNavigationContainerRef.js.map +1 -1
  175. package/lib/module/createNavigatorFactory.js +3 -3
  176. package/lib/module/createNavigatorFactory.js.map +1 -1
  177. package/lib/module/findFocusedRoute.js +1 -1
  178. package/lib/module/findFocusedRoute.js.map +1 -1
  179. package/lib/module/fromEntries.js +1 -1
  180. package/lib/module/fromEntries.js.map +1 -1
  181. package/lib/module/getActionFromState.js +1 -1
  182. package/lib/module/getActionFromState.js.map +1 -1
  183. package/lib/module/getFocusedRouteNameFromRoute.js +1 -1
  184. package/lib/module/getFocusedRouteNameFromRoute.js.map +1 -1
  185. package/lib/module/getPathFromState.js +3 -3
  186. package/lib/module/getPathFromState.js.map +1 -1
  187. package/lib/module/getStateFromPath.js +3 -3
  188. package/lib/module/getStateFromPath.js.map +1 -1
  189. package/lib/module/index.js +28 -28
  190. package/lib/module/index.js.map +1 -1
  191. package/lib/module/isArrayEqual.js +1 -1
  192. package/lib/module/isArrayEqual.js.map +1 -1
  193. package/lib/module/isRecordEqual.js +1 -1
  194. package/lib/module/isRecordEqual.js.map +1 -1
  195. package/lib/module/types.js +1 -8
  196. package/lib/module/types.js.map +1 -1
  197. package/lib/module/useChildListeners.js +1 -1
  198. package/lib/module/useChildListeners.js.map +1 -1
  199. package/lib/module/useComponent.js +1 -1
  200. package/lib/module/useComponent.js.map +1 -1
  201. package/lib/module/useCurrentRender.js +2 -2
  202. package/lib/module/useCurrentRender.js.map +1 -1
  203. package/lib/module/useDescriptors.js +7 -7
  204. package/lib/module/useDescriptors.js.map +1 -1
  205. package/lib/module/useEventEmitter.js +1 -1
  206. package/lib/module/useEventEmitter.js.map +1 -1
  207. package/lib/module/useFocusEffect.js +2 -2
  208. package/lib/module/useFocusEffect.js.map +1 -1
  209. package/lib/module/useFocusEvents.js +2 -2
  210. package/lib/module/useFocusEvents.js.map +1 -1
  211. package/lib/module/useFocusedListenersChildrenAdapter.js +2 -2
  212. package/lib/module/useFocusedListenersChildrenAdapter.js.map +1 -1
  213. package/lib/module/useIsFocused.js +2 -2
  214. package/lib/module/useIsFocused.js.map +1 -1
  215. package/lib/module/useKeyedChildListeners.js +1 -1
  216. package/lib/module/useKeyedChildListeners.js.map +1 -1
  217. package/lib/module/useNavigation.js +3 -3
  218. package/lib/module/useNavigation.js.map +1 -1
  219. package/lib/module/useNavigationBuilder.js +23 -23
  220. package/lib/module/useNavigationBuilder.js.map +1 -1
  221. package/lib/module/useNavigationCache.js +2 -2
  222. package/lib/module/useNavigationCache.js.map +1 -1
  223. package/lib/module/useNavigationContainerRef.js +2 -2
  224. package/lib/module/useNavigationContainerRef.js.map +1 -1
  225. package/lib/module/useNavigationHelpers.js +3 -3
  226. package/lib/module/useNavigationHelpers.js.map +1 -1
  227. package/lib/module/useNavigationIndependentTree.js +2 -2
  228. package/lib/module/useNavigationIndependentTree.js.map +1 -1
  229. package/lib/module/useNavigationState.js +2 -2
  230. package/lib/module/useNavigationState.js.map +1 -1
  231. package/lib/module/useOnAction.js +4 -4
  232. package/lib/module/useOnAction.js.map +1 -1
  233. package/lib/module/useOnGetState.js +4 -4
  234. package/lib/module/useOnGetState.js.map +1 -1
  235. package/lib/module/useOnPreventRemove.js +3 -3
  236. package/lib/module/useOnPreventRemove.js.map +1 -1
  237. package/lib/module/useOnRouteFocus.js +2 -2
  238. package/lib/module/useOnRouteFocus.js.map +1 -1
  239. package/lib/module/useOptionsGetters.js +3 -3
  240. package/lib/module/useOptionsGetters.js.map +1 -1
  241. package/lib/module/usePreventRemove.js +4 -4
  242. package/lib/module/usePreventRemove.js.map +1 -1
  243. package/lib/module/usePreventRemoveContext.js +2 -2
  244. package/lib/module/usePreventRemoveContext.js.map +1 -1
  245. package/lib/module/useRegisterNavigator.js +1 -1
  246. package/lib/module/useRegisterNavigator.js.map +1 -1
  247. package/lib/module/useRoute.js +2 -2
  248. package/lib/module/useRoute.js.map +1 -1
  249. package/lib/module/useRouteCache.js +1 -1
  250. package/lib/module/useRouteCache.js.map +1 -1
  251. package/lib/module/useScheduleUpdate.js +1 -1
  252. package/lib/module/useScheduleUpdate.js.map +1 -1
  253. package/lib/module/useSyncState.js +1 -1
  254. package/lib/module/useSyncState.js.map +1 -1
  255. package/lib/module/validatePathConfig.js +1 -1
  256. package/lib/module/validatePathConfig.js.map +1 -1
  257. package/lib/typescript/src/BaseNavigationContainer.d.ts +1 -2
  258. package/lib/typescript/src/BaseNavigationContainer.d.ts.map +1 -1
  259. package/lib/typescript/src/CurrentRenderContext.d.ts +1 -2
  260. package/lib/typescript/src/CurrentRenderContext.d.ts.map +1 -1
  261. package/lib/typescript/src/DeprecatedNavigationInChildContext.d.ts +1 -2
  262. package/lib/typescript/src/DeprecatedNavigationInChildContext.d.ts.map +1 -1
  263. package/lib/typescript/src/EnsureSingleNavigator.d.ts +1 -1
  264. package/lib/typescript/src/EnsureSingleNavigator.d.ts.map +1 -1
  265. package/lib/typescript/src/Group.d.ts +1 -1
  266. package/lib/typescript/src/Group.d.ts.map +1 -1
  267. package/lib/typescript/src/NavigationBuilderContext.d.ts +1 -2
  268. package/lib/typescript/src/NavigationBuilderContext.d.ts.map +1 -1
  269. package/lib/typescript/src/NavigationContainerRefContext.d.ts +1 -2
  270. package/lib/typescript/src/NavigationContainerRefContext.d.ts.map +1 -1
  271. package/lib/typescript/src/NavigationContext.d.ts +1 -2
  272. package/lib/typescript/src/NavigationContext.d.ts.map +1 -1
  273. package/lib/typescript/src/NavigationHelpersContext.d.ts +1 -2
  274. package/lib/typescript/src/NavigationHelpersContext.d.ts.map +1 -1
  275. package/lib/typescript/src/NavigationIndependentTree.d.ts +1 -1
  276. package/lib/typescript/src/NavigationIndependentTree.d.ts.map +1 -1
  277. package/lib/typescript/src/NavigationIndependentTreeContext.d.ts +1 -2
  278. package/lib/typescript/src/NavigationIndependentTreeContext.d.ts.map +1 -1
  279. package/lib/typescript/src/NavigationRouteContext.d.ts +1 -2
  280. package/lib/typescript/src/NavigationRouteContext.d.ts.map +1 -1
  281. package/lib/typescript/src/NavigationStateContext.d.ts +1 -2
  282. package/lib/typescript/src/NavigationStateContext.d.ts.map +1 -1
  283. package/lib/typescript/src/PreventRemoveContext.d.ts +1 -2
  284. package/lib/typescript/src/PreventRemoveContext.d.ts.map +1 -1
  285. package/lib/typescript/src/PreventRemoveProvider.d.ts +1 -1
  286. package/lib/typescript/src/PreventRemoveProvider.d.ts.map +1 -1
  287. package/lib/typescript/src/SceneView.d.ts +1 -1
  288. package/lib/typescript/src/SceneView.d.ts.map +1 -1
  289. package/lib/typescript/src/Screen.d.ts +1 -1
  290. package/lib/typescript/src/Screen.d.ts.map +1 -1
  291. package/lib/typescript/src/StaticContainer.d.ts +1 -3
  292. package/lib/typescript/src/StaticContainer.d.ts.map +1 -1
  293. package/lib/typescript/src/UnhandledActionContext.d.ts +1 -2
  294. package/lib/typescript/src/UnhandledActionContext.d.ts.map +1 -1
  295. package/lib/typescript/src/checkDuplicateRouteNames.d.ts +1 -1
  296. package/lib/typescript/src/checkDuplicateRouteNames.d.ts.map +1 -1
  297. package/lib/typescript/src/checkSerializable.d.ts +1 -1
  298. package/lib/typescript/src/checkSerializable.d.ts.map +1 -1
  299. package/lib/typescript/src/createNavigationContainerRef.d.ts +1 -1
  300. package/lib/typescript/src/createNavigationContainerRef.d.ts.map +1 -1
  301. package/lib/typescript/src/createNavigatorFactory.d.ts +1 -1
  302. package/lib/typescript/src/createNavigatorFactory.d.ts.map +1 -1
  303. package/lib/typescript/src/findFocusedRoute.d.ts +1 -1
  304. package/lib/typescript/src/findFocusedRoute.d.ts.map +1 -1
  305. package/lib/typescript/src/fromEntries.d.ts +1 -1
  306. package/lib/typescript/src/fromEntries.d.ts.map +1 -1
  307. package/lib/typescript/src/getActionFromState.d.ts +1 -1
  308. package/lib/typescript/src/getActionFromState.d.ts.map +1 -1
  309. package/lib/typescript/src/getFocusedRouteNameFromRoute.d.ts +1 -1
  310. package/lib/typescript/src/getFocusedRouteNameFromRoute.d.ts.map +1 -1
  311. package/lib/typescript/src/getPathFromState.d.ts +1 -1
  312. package/lib/typescript/src/getPathFromState.d.ts.map +1 -1
  313. package/lib/typescript/src/getStateFromPath.d.ts +1 -1
  314. package/lib/typescript/src/getStateFromPath.d.ts.map +1 -1
  315. package/lib/typescript/src/index.d.ts +28 -28
  316. package/lib/typescript/src/index.d.ts.map +1 -1
  317. package/lib/typescript/src/isArrayEqual.d.ts +1 -1
  318. package/lib/typescript/src/isArrayEqual.d.ts.map +1 -1
  319. package/lib/typescript/src/isRecordEqual.d.ts +1 -1
  320. package/lib/typescript/src/isRecordEqual.d.ts.map +1 -1
  321. package/lib/typescript/src/useChildListeners.d.ts +1 -1
  322. package/lib/typescript/src/useChildListeners.d.ts.map +1 -1
  323. package/lib/typescript/src/useComponent.d.ts +1 -1
  324. package/lib/typescript/src/useComponent.d.ts.map +1 -1
  325. package/lib/typescript/src/useCurrentRender.d.ts +1 -1
  326. package/lib/typescript/src/useCurrentRender.d.ts.map +1 -1
  327. package/lib/typescript/src/useDescriptors.d.ts +1 -1
  328. package/lib/typescript/src/useDescriptors.d.ts.map +1 -1
  329. package/lib/typescript/src/useEventEmitter.d.ts +1 -1
  330. package/lib/typescript/src/useEventEmitter.d.ts.map +1 -1
  331. package/lib/typescript/src/useFocusEffect.d.ts +1 -1
  332. package/lib/typescript/src/useFocusEffect.d.ts.map +1 -1
  333. package/lib/typescript/src/useFocusEvents.d.ts +1 -1
  334. package/lib/typescript/src/useFocusEvents.d.ts.map +1 -1
  335. package/lib/typescript/src/useFocusedListenersChildrenAdapter.d.ts +1 -1
  336. package/lib/typescript/src/useFocusedListenersChildrenAdapter.d.ts.map +1 -1
  337. package/lib/typescript/src/useIsFocused.d.ts +1 -1
  338. package/lib/typescript/src/useIsFocused.d.ts.map +1 -1
  339. package/lib/typescript/src/useKeyedChildListeners.d.ts +1 -1
  340. package/lib/typescript/src/useKeyedChildListeners.d.ts.map +1 -1
  341. package/lib/typescript/src/useNavigation.d.ts +1 -1
  342. package/lib/typescript/src/useNavigation.d.ts.map +1 -1
  343. package/lib/typescript/src/useNavigationBuilder.d.ts +1 -1
  344. package/lib/typescript/src/useNavigationBuilder.d.ts.map +1 -1
  345. package/lib/typescript/src/useNavigationCache.d.ts +1 -1
  346. package/lib/typescript/src/useNavigationCache.d.ts.map +1 -1
  347. package/lib/typescript/src/useNavigationContainerRef.d.ts +1 -1
  348. package/lib/typescript/src/useNavigationContainerRef.d.ts.map +1 -1
  349. package/lib/typescript/src/useNavigationHelpers.d.ts +17 -1
  350. package/lib/typescript/src/useNavigationHelpers.d.ts.map +1 -1
  351. package/lib/typescript/src/useNavigationIndependentTree.d.ts +1 -1
  352. package/lib/typescript/src/useNavigationIndependentTree.d.ts.map +1 -1
  353. package/lib/typescript/src/useNavigationState.d.ts +1 -1
  354. package/lib/typescript/src/useNavigationState.d.ts.map +1 -1
  355. package/lib/typescript/src/useOnAction.d.ts +1 -1
  356. package/lib/typescript/src/useOnAction.d.ts.map +1 -1
  357. package/lib/typescript/src/useOnGetState.d.ts +1 -1
  358. package/lib/typescript/src/useOnGetState.d.ts.map +1 -1
  359. package/lib/typescript/src/useOnPreventRemove.d.ts +1 -1
  360. package/lib/typescript/src/useOnPreventRemove.d.ts.map +1 -1
  361. package/lib/typescript/src/useOnRouteFocus.d.ts +1 -1
  362. package/lib/typescript/src/useOnRouteFocus.d.ts.map +1 -1
  363. package/lib/typescript/src/useOptionsGetters.d.ts +1 -1
  364. package/lib/typescript/src/useOptionsGetters.d.ts.map +1 -1
  365. package/lib/typescript/src/usePreventRemove.d.ts +1 -1
  366. package/lib/typescript/src/usePreventRemove.d.ts.map +1 -1
  367. package/lib/typescript/src/usePreventRemoveContext.d.ts +1 -1
  368. package/lib/typescript/src/usePreventRemoveContext.d.ts.map +1 -1
  369. package/lib/typescript/src/useRegisterNavigator.d.ts +1 -1
  370. package/lib/typescript/src/useRegisterNavigator.d.ts.map +1 -1
  371. package/lib/typescript/src/useRoute.d.ts +1 -1
  372. package/lib/typescript/src/useRoute.d.ts.map +1 -1
  373. package/lib/typescript/src/useRouteCache.d.ts +1 -1
  374. package/lib/typescript/src/useRouteCache.d.ts.map +1 -1
  375. package/lib/typescript/src/useScheduleUpdate.d.ts +1 -1
  376. package/lib/typescript/src/useScheduleUpdate.d.ts.map +1 -1
  377. package/lib/typescript/src/useSyncState.d.ts +1 -1
  378. package/lib/typescript/src/useSyncState.d.ts.map +1 -1
  379. package/lib/typescript/src/validatePathConfig.d.ts +1 -1
  380. package/lib/typescript/src/validatePathConfig.d.ts.map +1 -1
  381. package/package.json +4 -4
  382. package/src/BaseNavigationContainer.tsx +17 -19
  383. package/src/CurrentRenderContext.tsx +1 -3
  384. package/src/DeprecatedNavigationInChildContext.tsx +1 -3
  385. package/src/EnsureSingleNavigator.tsx +1 -1
  386. package/src/Group.tsx +1 -1
  387. package/src/NavigationBuilderContext.tsx +1 -3
  388. package/src/NavigationContainerRefContext.tsx +1 -3
  389. package/src/NavigationContext.tsx +1 -3
  390. package/src/NavigationHelpersContext.tsx +1 -3
  391. package/src/NavigationIndependentTree.tsx +4 -4
  392. package/src/NavigationIndependentTreeContext.tsx +1 -3
  393. package/src/NavigationRouteContext.tsx +3 -5
  394. package/src/NavigationStateContext.tsx +1 -1
  395. package/src/PreventRemoveContext.tsx +1 -3
  396. package/src/PreventRemoveProvider.tsx +4 -4
  397. package/src/SceneView.tsx +5 -5
  398. package/src/Screen.tsx +1 -1
  399. package/src/StaticContainer.tsx +19 -18
  400. package/src/StaticNavigation.tsx +2 -2
  401. package/src/UnhandledActionContext.tsx +1 -3
  402. package/src/checkDuplicateRouteNames.tsx +1 -1
  403. package/src/checkSerializable.tsx +1 -1
  404. package/src/createNavigationContainerRef.tsx +1 -1
  405. package/src/createNavigatorFactory.tsx +3 -3
  406. package/src/findFocusedRoute.tsx +1 -1
  407. package/src/fromEntries.tsx +1 -3
  408. package/src/getActionFromState.tsx +1 -1
  409. package/src/getFocusedRouteNameFromRoute.tsx +1 -1
  410. package/src/getPathFromState.tsx +3 -3
  411. package/src/getStateFromPath.tsx +3 -3
  412. package/src/index.tsx +30 -30
  413. package/src/isArrayEqual.tsx +1 -1
  414. package/src/isRecordEqual.tsx +1 -4
  415. package/src/useChildListeners.tsx +1 -1
  416. package/src/useComponent.tsx +1 -1
  417. package/src/useCurrentRender.tsx +2 -6
  418. package/src/useDescriptors.tsx +8 -7
  419. package/src/useEventEmitter.tsx +1 -1
  420. package/src/useFocusEffect.tsx +2 -2
  421. package/src/useFocusEvents.tsx +2 -2
  422. package/src/useFocusedListenersChildrenAdapter.tsx +3 -2
  423. package/src/useIsFocused.tsx +2 -2
  424. package/src/useKeyedChildListeners.tsx +1 -1
  425. package/src/useNavigation.tsx +3 -3
  426. package/src/useNavigationBuilder.tsx +23 -23
  427. package/src/useNavigationCache.tsx +2 -2
  428. package/src/useNavigationContainerRef.tsx +2 -2
  429. package/src/useNavigationHelpers.tsx +3 -3
  430. package/src/useNavigationIndependentTree.tsx +2 -2
  431. package/src/useNavigationState.tsx +2 -2
  432. package/src/useOnAction.tsx +5 -4
  433. package/src/useOnGetState.tsx +5 -7
  434. package/src/useOnPreventRemove.tsx +4 -3
  435. package/src/useOnRouteFocus.tsx +2 -2
  436. package/src/useOptionsGetters.tsx +3 -7
  437. package/src/usePreventRemove.tsx +4 -4
  438. package/src/usePreventRemoveContext.tsx +2 -2
  439. package/src/useRegisterNavigator.tsx +1 -1
  440. package/src/useRoute.tsx +2 -2
  441. package/src/useRouteCache.tsx +1 -1
  442. package/src/useScheduleUpdate.tsx +1 -1
  443. package/src/useSyncState.tsx +1 -1
  444. package/src/validatePathConfig.tsx +1 -1
@@ -10,29 +10,29 @@ import {
10
10
  import * as React from 'react';
11
11
  import useLatestCallback from 'use-latest-callback';
12
12
 
13
- import checkDuplicateRouteNames from './checkDuplicateRouteNames';
14
- import checkSerializable from './checkSerializable';
13
+ import { checkDuplicateRouteNames } from './checkDuplicateRouteNames';
14
+ import { checkSerializable } from './checkSerializable';
15
15
  import { NOT_INITIALIZED_ERROR } from './createNavigationContainerRef';
16
- import DeprecatedNavigationInChildContext from './DeprecatedNavigationInChildContext';
17
- import EnsureSingleNavigator from './EnsureSingleNavigator';
18
- import findFocusedRoute from './findFocusedRoute';
19
- import NavigationBuilderContext from './NavigationBuilderContext';
20
- import NavigationContainerRefContext from './NavigationContainerRefContext';
21
- import NavigationIndependentTreeContext from './NavigationIndependentTreeContext';
22
- import NavigationStateContext from './NavigationStateContext';
16
+ import { DeprecatedNavigationInChildContext } from './DeprecatedNavigationInChildContext';
17
+ import { EnsureSingleNavigator } from './EnsureSingleNavigator';
18
+ import { findFocusedRoute } from './findFocusedRoute';
19
+ import { NavigationBuilderContext } from './NavigationBuilderContext';
20
+ import { NavigationContainerRefContext } from './NavigationContainerRefContext';
21
+ import { NavigationIndependentTreeContext } from './NavigationIndependentTreeContext';
22
+ import { NavigationStateContext } from './NavigationStateContext';
23
23
  import type {
24
24
  NavigationContainerEventMap,
25
25
  NavigationContainerProps,
26
26
  NavigationContainerRef,
27
27
  } from './types';
28
- import UnhandledActionContext from './UnhandledActionContext';
29
- import useChildListeners from './useChildListeners';
30
- import useEventEmitter from './useEventEmitter';
31
- import useKeyedChildListeners from './useKeyedChildListeners';
32
- import useNavigationIndependentTree from './useNavigationIndependentTree';
33
- import useOptionsGetters from './useOptionsGetters';
28
+ import { UnhandledActionContext } from './UnhandledActionContext';
29
+ import { useChildListeners } from './useChildListeners';
30
+ import { useEventEmitter } from './useEventEmitter';
31
+ import { useKeyedChildListeners } from './useKeyedChildListeners';
32
+ import { useNavigationIndependentTree } from './useNavigationIndependentTree';
33
+ import { useOptionsGetters } from './useOptionsGetters';
34
34
  import { ScheduleUpdateContext } from './useScheduleUpdate';
35
- import useSyncState from './useSyncState';
35
+ import { useSyncState } from './useSyncState';
36
36
 
37
37
  type State = NavigationState | PartialState<NavigationState> | undefined;
38
38
 
@@ -80,7 +80,7 @@ const getPartialState = (
80
80
  * @param props.children Child elements to render the content.
81
81
  * @param props.ref Ref object which refers to the navigation object containing helper methods.
82
82
  */
83
- const BaseNavigationContainer = React.forwardRef(
83
+ export const BaseNavigationContainer = React.forwardRef(
84
84
  function BaseNavigationContainer(
85
85
  {
86
86
  initialState,
@@ -453,5 +453,3 @@ const BaseNavigationContainer = React.forwardRef(
453
453
  );
454
454
  }
455
455
  );
456
-
457
- export default BaseNavigationContainer;
@@ -4,8 +4,6 @@ import * as React from 'react';
4
4
  * Context which holds the values for the current navigation tree.
5
5
  * Intended for use in SSR. This is not safe to use on the client.
6
6
  */
7
- const CurrentRenderContext = React.createContext<
7
+ export const CurrentRenderContext = React.createContext<
8
8
  { options?: object } | undefined
9
9
  >(undefined);
10
-
11
- export default CurrentRenderContext;
@@ -3,6 +3,4 @@ import * as React from 'react';
3
3
  /**
4
4
  * Context which enables deprecated bubbling to child navigators.
5
5
  */
6
- const DeprecatedNavigationInChildContext = React.createContext(false);
7
-
8
- export default DeprecatedNavigationInChildContext;
6
+ export const DeprecatedNavigationInChildContext = React.createContext(false);
@@ -17,7 +17,7 @@ export const SingleNavigatorContext = React.createContext<
17
17
  /**
18
18
  * Component which ensures that there's only one navigator nested under it.
19
19
  */
20
- export default function EnsureSingleNavigator({ children }: Props) {
20
+ export function EnsureSingleNavigator({ children }: Props) {
21
21
  const navigatorKeyRef = React.useRef<string | undefined>();
22
22
 
23
23
  const value = React.useMemo(
package/src/Group.tsx CHANGED
@@ -5,7 +5,7 @@ import type { RouteGroupConfig } from './types';
5
5
  /**
6
6
  * Empty component used for grouping screen configs.
7
7
  */
8
- export default function Group<
8
+ export function Group<
9
9
  ParamList extends ParamListBase,
10
10
  ScreenOptions extends {}
11
11
  >(_: RouteGroupConfig<ParamList, ScreenOptions>) {
@@ -51,7 +51,7 @@ export type ChildBeforeRemoveListener = (action: NavigationAction) => boolean;
51
51
  /**
52
52
  * Context which holds the required helpers needed to build nested navigators.
53
53
  */
54
- const NavigationBuilderContext = React.createContext<{
54
+ export const NavigationBuilderContext = React.createContext<{
55
55
  onAction?: (
56
56
  action: NavigationAction,
57
57
  visitedNavigators?: Set<string>
@@ -66,5 +66,3 @@ const NavigationBuilderContext = React.createContext<{
66
66
  onDispatchAction: () => undefined,
67
67
  onOptionsChange: () => undefined,
68
68
  });
69
-
70
- export default NavigationBuilderContext;
@@ -6,8 +6,6 @@ import type { NavigationContainerRef } from './types';
6
6
  /**
7
7
  * Context which holds the route prop for a screen.
8
8
  */
9
- const NavigationContainerRefContext = React.createContext<
9
+ export const NavigationContainerRefContext = React.createContext<
10
10
  NavigationContainerRef<ParamListBase> | undefined
11
11
  >(undefined);
12
-
13
- export default NavigationContainerRefContext;
@@ -6,8 +6,6 @@ import type { NavigationProp } from './types';
6
6
  /**
7
7
  * Context which holds the navigation prop for a screen.
8
8
  */
9
- const NavigationContext = React.createContext<
9
+ export const NavigationContext = React.createContext<
10
10
  NavigationProp<ParamListBase> | undefined
11
11
  >(undefined);
12
-
13
- export default NavigationContext;
@@ -7,8 +7,6 @@ import type { NavigationHelpers } from './types';
7
7
  * Context which holds the navigation helpers of the parent navigator.
8
8
  * Navigators should use this context in their view component.
9
9
  */
10
- const NavigationHelpersContext = React.createContext<
10
+ export const NavigationHelpersContext = React.createContext<
11
11
  NavigationHelpers<ParamListBase> | undefined
12
12
  >(undefined);
13
-
14
- export default NavigationHelpersContext;
@@ -1,13 +1,13 @@
1
1
  import * as React from 'react';
2
2
 
3
- import NavigationContext from './NavigationContext';
4
- import NavigationIndependentTreeContext from './NavigationIndependentTreeContext';
5
- import NavigationRouteContext from './NavigationRouteContext';
3
+ import { NavigationContext } from './NavigationContext';
4
+ import { NavigationIndependentTreeContext } from './NavigationIndependentTreeContext';
5
+ import { NavigationRouteContext } from './NavigationRouteContext';
6
6
 
7
7
  /**
8
8
  * Component to make the child navigation container independent of parent containers.
9
9
  */
10
- export default function NavigationIndependentTree({
10
+ export function NavigationIndependentTree({
11
11
  children,
12
12
  }: {
13
13
  children: React.ReactNode;
@@ -3,6 +3,4 @@ import * as React from 'react';
3
3
  /**
4
4
  * Context which marks the navigation tree as independent.
5
5
  */
6
- const NavigationIndependentTreeContext = React.createContext(false);
7
-
8
- export default NavigationIndependentTreeContext;
6
+ export const NavigationIndependentTreeContext = React.createContext(false);
@@ -4,8 +4,6 @@ import * as React from 'react';
4
4
  /**
5
5
  * Context which holds the route prop for a screen.
6
6
  */
7
- const NavigationRouteContext = React.createContext<Route<string> | undefined>(
8
- undefined
9
- );
10
-
11
- export default NavigationRouteContext;
7
+ export const NavigationRouteContext = React.createContext<
8
+ Route<string> | undefined
9
+ >(undefined);
@@ -4,7 +4,7 @@ import * as React from 'react';
4
4
  const MISSING_CONTEXT_ERROR =
5
5
  "Couldn't find a navigation context. Have you wrapped your app with 'NavigationContainer'? See https://reactnavigation.org/docs/getting-started for setup instructions.";
6
6
 
7
- export default React.createContext<{
7
+ export const NavigationStateContext = React.createContext<{
8
8
  isDefault?: true;
9
9
  state?: NavigationState | PartialState<NavigationState>;
10
10
  getKey: () => string | undefined;
@@ -6,7 +6,7 @@ import * as React from 'react';
6
6
  */
7
7
  export type PreventedRoutes = Record<string, { preventRemove: boolean }>;
8
8
 
9
- const PreventRemoveContext = React.createContext<
9
+ export const PreventRemoveContext = React.createContext<
10
10
  | {
11
11
  preventedRoutes: PreventedRoutes;
12
12
  setPreventRemove: (
@@ -17,5 +17,3 @@ const PreventRemoveContext = React.createContext<
17
17
  }
18
18
  | undefined
19
19
  >(undefined);
20
-
21
- export default PreventRemoveContext;
@@ -2,9 +2,9 @@ import { nanoid } from 'nanoid/non-secure';
2
2
  import * as React from 'react';
3
3
  import useLatestCallback from 'use-latest-callback';
4
4
 
5
- import NavigationHelpersContext from './NavigationHelpersContext';
6
- import NavigationRouteContext from './NavigationRouteContext';
7
- import PreventRemoveContext, { PreventedRoutes } from './PreventRemoveContext';
5
+ import { NavigationHelpersContext } from './NavigationHelpersContext';
6
+ import { NavigationRouteContext } from './NavigationRouteContext';
7
+ import { PreventedRoutes, PreventRemoveContext } from './PreventRemoveContext';
8
8
 
9
9
  type Props = {
10
10
  children: React.ReactNode;
@@ -42,7 +42,7 @@ const transformPreventedRoutes = (
42
42
  /**
43
43
  * Component used for managing which routes have to be prevented from removal in native-stack.
44
44
  */
45
- export default function PreventRemoveProvider({ children }: Props) {
45
+ export function PreventRemoveProvider({ children }: Props) {
46
46
  const [parentId] = React.useState(() => nanoid());
47
47
  const [preventedRoutesMap, setPreventedRoutesMap] =
48
48
  React.useState<PreventedRoutesMap>(new Map());
package/src/SceneView.tsx CHANGED
@@ -6,11 +6,11 @@ import type {
6
6
  } from '@react-navigation/routers';
7
7
  import * as React from 'react';
8
8
 
9
- import EnsureSingleNavigator from './EnsureSingleNavigator';
10
- import NavigationStateContext from './NavigationStateContext';
11
- import StaticContainer from './StaticContainer';
9
+ import { EnsureSingleNavigator } from './EnsureSingleNavigator';
10
+ import { NavigationStateContext } from './NavigationStateContext';
11
+ import { StaticContainer } from './StaticContainer';
12
12
  import type { NavigationProp, RouteConfigComponent } from './types';
13
- import useOptionsGetters from './useOptionsGetters';
13
+ import { useOptionsGetters } from './useOptionsGetters';
14
14
 
15
15
  type Props<State extends NavigationState, ScreenOptions extends {}> = {
16
16
  screen: RouteConfigComponent<ParamListBase, string> & { name: string };
@@ -33,7 +33,7 @@ type Props<State extends NavigationState, ScreenOptions extends {}> = {
33
33
  * Component which takes care of rendering the screen for a route.
34
34
  * It provides all required contexts and applies optimizations when applicable.
35
35
  */
36
- export default function SceneView<
36
+ export function SceneView<
37
37
  State extends NavigationState,
38
38
  ScreenOptions extends {}
39
39
  >({
package/src/Screen.tsx CHANGED
@@ -5,7 +5,7 @@ import type { EventMapBase, RouteConfig } from './types';
5
5
  /**
6
6
  * Empty component used for specifying route configuration.
7
7
  */
8
- export default function Screen<
8
+ export function Screen<
9
9
  ParamList extends ParamListBase,
10
10
  RouteName extends keyof ParamList,
11
11
  State extends NavigationState,
@@ -3,27 +3,28 @@ import * as React from 'react';
3
3
  /**
4
4
  * Component which prevents updates for children if no props changed
5
5
  */
6
- function StaticContainer(props: any) {
7
- return props.children;
8
- }
6
+ export const StaticContainer = React.memo(
7
+ function StaticContainer(props: any) {
8
+ return props.children;
9
+ },
10
+ (prevProps: any, nextProps: any) => {
11
+ const prevPropKeys = Object.keys(prevProps);
12
+ const nextPropKeys = Object.keys(nextProps);
9
13
 
10
- export default React.memo(StaticContainer, (prevProps: any, nextProps: any) => {
11
- const prevPropKeys = Object.keys(prevProps);
12
- const nextPropKeys = Object.keys(nextProps);
14
+ if (prevPropKeys.length !== nextPropKeys.length) {
15
+ return false;
16
+ }
13
17
 
14
- if (prevPropKeys.length !== nextPropKeys.length) {
15
- return false;
16
- }
18
+ for (const key of prevPropKeys) {
19
+ if (key === 'children') {
20
+ continue;
21
+ }
17
22
 
18
- for (const key of prevPropKeys) {
19
- if (key === 'children') {
20
- continue;
23
+ if (prevProps[key] !== nextProps[key]) {
24
+ return false;
25
+ }
21
26
  }
22
27
 
23
- if (prevProps[key] !== nextProps[key]) {
24
- return false;
25
- }
28
+ return true;
26
29
  }
27
-
28
- return true;
29
- });
30
+ );
@@ -1,7 +1,7 @@
1
1
  import type { NavigationState, ParamListBase } from '@react-navigation/routers';
2
2
  import * as React from 'react';
3
3
 
4
- import fromEntries from './fromEntries';
4
+ import { fromEntries } from './fromEntries';
5
5
  import type {
6
6
  DefaultNavigatorOptions,
7
7
  EventMapBase,
@@ -10,7 +10,7 @@ import type {
10
10
  RouteConfig,
11
11
  RouteGroupConfig,
12
12
  } from './types';
13
- import useRoute from './useRoute';
13
+ import { useRoute } from './useRoute';
14
14
 
15
15
  /**
16
16
  * Flatten a type to remove all type alias names, unions etc.
@@ -1,8 +1,6 @@
1
1
  import type { NavigationAction } from '@react-navigation/routers';
2
2
  import * as React from 'react';
3
3
 
4
- const UnhandledActionContext = React.createContext<
4
+ export const UnhandledActionContext = React.createContext<
5
5
  ((action: NavigationAction) => void) | undefined
6
6
  >(undefined);
7
-
8
- export default UnhandledActionContext;
@@ -1,6 +1,6 @@
1
1
  import type { NavigationState, PartialState } from '@react-navigation/routers';
2
2
 
3
- export default function checkDuplicateRouteNames(state: NavigationState) {
3
+ export function checkDuplicateRouteNames(state: NavigationState) {
4
4
  const duplicates: string[][] = [];
5
5
 
6
6
  const getRouteNames = (
@@ -69,6 +69,6 @@ const checkSerializableWithoutCircularReference = (
69
69
  return { serializable: true };
70
70
  };
71
71
 
72
- export default function checkSerializable(o: { [key: string]: any }) {
72
+ export function checkSerializable(o: { [key: string]: any }) {
73
73
  return checkSerializableWithoutCircularReference(o, new Set<any>(), []);
74
74
  }
@@ -9,7 +9,7 @@ import type {
9
9
  export const NOT_INITIALIZED_ERROR =
10
10
  "The 'navigation' object hasn't been initialized yet. This might happen if you don't have a navigator mounted, or if the navigator hasn't finished mounting. See https://reactnavigation.org/docs/navigating-without-navigation-prop#handling-initialization for more details.";
11
11
 
12
- export default function createNavigationContainerRef<
12
+ export function createNavigationContainerRef<
13
13
  ParamList extends {} = ReactNavigation.RootParamList
14
14
  >(): NavigationContainerRefWithCurrent<ParamList> {
15
15
  const methods = [
@@ -1,8 +1,8 @@
1
1
  import type { NavigationState, ParamListBase } from '@react-navigation/routers';
2
2
  import type * as React from 'react';
3
3
 
4
- import Group from './Group';
5
- import Screen from './Screen';
4
+ import { Group } from './Group';
5
+ import { Screen } from './Screen';
6
6
  import type { StaticConfig } from './StaticNavigation';
7
7
  import type { EventMapBase, TypedNavigator } from './types';
8
8
 
@@ -13,7 +13,7 @@ import type { EventMapBase, TypedNavigator } from './types';
13
13
  * @param Navigator The navigator component to wrap.
14
14
  * @returns Factory method to create a `Navigator` and `Screen` pair.
15
15
  */
16
- export default function createNavigatorFactory<
16
+ export function createNavigatorFactory<
17
17
  State extends NavigationState,
18
18
  ScreenOptions extends {},
19
19
  EventMap extends EventMapBase,
@@ -1,6 +1,6 @@
1
1
  import type { InitialState } from '@react-navigation/routers';
2
2
 
3
- export default function findFocusedRoute(state: InitialState) {
3
+ export function findFocusedRoute(state: InitialState) {
4
4
  let current: InitialState | undefined = state;
5
5
 
6
6
  while (current?.routes[current.index ?? 0].state != null) {
@@ -1,7 +1,5 @@
1
1
  // Object.fromEntries is not available in older iOS versions
2
- export default function fromEntries<K extends string, V>(
3
- entries: (readonly [K, V])[]
4
- ) {
2
+ export function fromEntries<K extends string, V>(entries: (readonly [K, V])[]) {
5
3
  return entries.reduce((acc, [k, v]) => {
6
4
  if (acc.hasOwnProperty(k)) {
7
5
  throw new Error(`A value for key '${k}' already exists in the object.`);
@@ -28,7 +28,7 @@ type NavigateAction<State extends NavigationState> = {
28
28
  };
29
29
  };
30
30
 
31
- export default function getActionFromState(
31
+ export function getActionFromState(
32
32
  state: PartialState<NavigationState>,
33
33
  options?: Options
34
34
  ): NavigateAction<NavigationState> | CommonActions.Action | undefined {
@@ -2,7 +2,7 @@ import type { Route } from '@react-navigation/routers';
2
2
 
3
3
  import { CHILD_STATE } from './useRouteCache';
4
4
 
5
- export default function getFocusedRouteNameFromRoute(
5
+ export function getFocusedRouteNameFromRoute(
6
6
  route: Partial<Route<string>>
7
7
  ): string | undefined {
8
8
  // @ts-expect-error: this isn't in type definitions coz we want this private
@@ -5,9 +5,9 @@ import type {
5
5
  } from '@react-navigation/routers';
6
6
  import * as queryString from 'query-string';
7
7
 
8
- import fromEntries from './fromEntries';
8
+ import { fromEntries } from './fromEntries';
9
9
  import type { PathConfig, PathConfigMap } from './types';
10
- import validatePathConfig from './validatePathConfig';
10
+ import { validatePathConfig } from './validatePathConfig';
11
11
 
12
12
  type Options<ParamList extends {}> = {
13
13
  initialRouteName?: string;
@@ -66,7 +66,7 @@ const getActiveRoute = (state: State): { name: string; params?: object } => {
66
66
  * @param options Extra options to fine-tune how to serialize the path.
67
67
  * @returns Path representing the state, e.g. /foo/bar?count=42.
68
68
  */
69
- export default function getPathFromState<ParamList extends {}>(
69
+ export function getPathFromState<ParamList extends {}>(
70
70
  state: State,
71
71
  options?: Options<ParamList>
72
72
  ): string {
@@ -6,9 +6,9 @@ import type {
6
6
  import escape from 'escape-string-regexp';
7
7
  import * as queryString from 'query-string';
8
8
 
9
- import findFocusedRoute from './findFocusedRoute';
9
+ import { findFocusedRoute } from './findFocusedRoute';
10
10
  import type { PathConfigMap } from './types';
11
- import validatePathConfig from './validatePathConfig';
11
+ import { validatePathConfig } from './validatePathConfig';
12
12
 
13
13
  type Options<ParamList extends {}> = {
14
14
  initialRouteName?: string;
@@ -62,7 +62,7 @@ type ParsedRoute = {
62
62
  * @param path Path string to parse and convert, e.g. /foo/bar?count=42.
63
63
  * @param options Extra options to fine-tune how to parse the path.
64
64
  */
65
- export default function getStateFromPath<ParamList extends {}>(
65
+ export function getStateFromPath<ParamList extends {}>(
66
66
  path: string,
67
67
  options?: Options<ParamList>
68
68
  ): ResultState | undefined {
package/src/index.tsx CHANGED
@@ -1,36 +1,36 @@
1
- export { default as BaseNavigationContainer } from './BaseNavigationContainer';
2
- export { default as createNavigationContainerRef } from './createNavigationContainerRef';
3
- export { default as createNavigatorFactory } from './createNavigatorFactory';
4
- export { default as CurrentRenderContext } from './CurrentRenderContext';
5
- export { default as findFocusedRoute } from './findFocusedRoute';
6
- export { default as getActionFromState } from './getActionFromState';
7
- export { default as getFocusedRouteNameFromRoute } from './getFocusedRouteNameFromRoute';
8
- export { default as getPathFromState } from './getPathFromState';
9
- export { default as getStateFromPath } from './getStateFromPath';
10
- export { default as NavigationContainerRefContext } from './NavigationContainerRefContext';
11
- export { default as NavigationContext } from './NavigationContext';
12
- export { default as NavigationHelpersContext } from './NavigationHelpersContext';
13
- export { default as NavigationIndependentTree } from './NavigationIndependentTree';
14
- export { default as NavigationRouteContext } from './NavigationRouteContext';
15
- export { default as PreventRemoveContext } from './PreventRemoveContext';
16
- export { default as PreventRemoveProvider } from './PreventRemoveProvider';
1
+ export { BaseNavigationContainer } from './BaseNavigationContainer';
2
+ export { createNavigationContainerRef } from './createNavigationContainerRef';
3
+ export { createNavigatorFactory } from './createNavigatorFactory';
4
+ export { CurrentRenderContext } from './CurrentRenderContext';
5
+ export { findFocusedRoute } from './findFocusedRoute';
6
+ export { getActionFromState } from './getActionFromState';
7
+ export { getFocusedRouteNameFromRoute } from './getFocusedRouteNameFromRoute';
8
+ export { getPathFromState } from './getPathFromState';
9
+ export { getStateFromPath } from './getStateFromPath';
10
+ export { NavigationContainerRefContext } from './NavigationContainerRefContext';
11
+ export { NavigationContext } from './NavigationContext';
12
+ export { NavigationHelpersContext } from './NavigationHelpersContext';
13
+ export { NavigationIndependentTree } from './NavigationIndependentTree';
14
+ export { NavigationRouteContext } from './NavigationRouteContext';
15
+ export { PreventRemoveContext } from './PreventRemoveContext';
16
+ export { PreventRemoveProvider } from './PreventRemoveProvider';
17
17
  export {
18
+ type StaticNavigation,
19
+ type StaticParamList,
20
+ type StaticScreenProps,
18
21
  createComponentForStaticNavigation,
19
22
  createPathConfigForStaticNavigation,
20
- StaticNavigation,
21
- StaticParamList,
22
- StaticScreenProps,
23
23
  } from './StaticNavigation';
24
24
  export * from './types';
25
- export { default as useFocusEffect } from './useFocusEffect';
26
- export { default as useIsFocused } from './useIsFocused';
27
- export { default as useNavigation } from './useNavigation';
28
- export { default as useNavigationBuilder } from './useNavigationBuilder';
29
- export { default as useNavigationContainerRef } from './useNavigationContainerRef';
30
- export { default as useNavigationIndependentTree } from './useNavigationIndependentTree';
31
- export { default as useNavigationState } from './useNavigationState';
32
- export { default as UNSTABLE_usePreventRemove } from './usePreventRemove';
33
- export { default as usePreventRemoveContext } from './usePreventRemoveContext';
34
- export { default as useRoute } from './useRoute';
35
- export { default as validatePathConfig } from './validatePathConfig';
25
+ export { useFocusEffect } from './useFocusEffect';
26
+ export { useIsFocused } from './useIsFocused';
27
+ export { useNavigation } from './useNavigation';
28
+ export { useNavigationBuilder } from './useNavigationBuilder';
29
+ export { useNavigationContainerRef } from './useNavigationContainerRef';
30
+ export { useNavigationIndependentTree } from './useNavigationIndependentTree';
31
+ export { useNavigationState } from './useNavigationState';
32
+ export { UNSTABLE_usePreventRemove } from './usePreventRemove';
33
+ export { usePreventRemoveContext } from './usePreventRemoveContext';
34
+ export { useRoute } from './useRoute';
35
+ export { validatePathConfig } from './validatePathConfig';
36
36
  export * from '@react-navigation/routers';
@@ -2,7 +2,7 @@
2
2
  * Compare two arrays with primitive values as the content.
3
3
  * We need to make sure that both values and order match.
4
4
  */
5
- export default function isArrayEqual(a: any[], b: any[]) {
5
+ export function isArrayEqual(a: any[], b: any[]) {
6
6
  if (a === b) {
7
7
  return true;
8
8
  }
@@ -1,10 +1,7 @@
1
1
  /**
2
2
  * Compare two records with primitive values as the content.
3
3
  */
4
- export default function isRecordEqual(
5
- a: Record<string, any>,
6
- b: Record<string, any>
7
- ) {
4
+ export function isRecordEqual(a: Record<string, any>, b: Record<string, any>) {
8
5
  if (a === b) {
9
6
  return true;
10
7
  }
@@ -5,7 +5,7 @@ import type { ListenerMap } from './NavigationBuilderContext';
5
5
  /**
6
6
  * Hook which lets child navigators add action listeners.
7
7
  */
8
- export default function useChildListeners() {
8
+ export function useChildListeners() {
9
9
  const { current: listeners } = React.useRef<{
10
10
  [K in keyof ListenerMap]: ListenerMap[K][];
11
11
  }>({
@@ -11,7 +11,7 @@ const NavigationContent = ({ render, children }: Props) => {
11
11
  return render(children);
12
12
  };
13
13
 
14
- export default function useComponent(render: Render) {
14
+ export function useComponent(render: Render) {
15
15
  const renderRef = React.useRef<Render | null>(render);
16
16
 
17
17
  // Normally refs shouldn't be mutated in render
@@ -1,7 +1,7 @@
1
1
  import type { NavigationState, ParamListBase } from '@react-navigation/routers';
2
2
  import * as React from 'react';
3
3
 
4
- import CurrentRenderContext from './CurrentRenderContext';
4
+ import { CurrentRenderContext } from './CurrentRenderContext';
5
5
  import type {
6
6
  Descriptor,
7
7
  NavigationHelpers,
@@ -22,11 +22,7 @@ type Options = {
22
22
  * Write the current options, so that server renderer can get current values
23
23
  * Mutating values like this is not safe in async mode, but it doesn't apply to SSR
24
24
  */
25
- export default function useCurrentRender({
26
- state,
27
- navigation,
28
- descriptors,
29
- }: Options) {
25
+ export function useCurrentRender({ state, navigation, descriptors }: Options) {
30
26
  const current = React.useContext(CurrentRenderContext);
31
27
 
32
28
  if (current && navigation.isFocused()) {