@react-navigation/core 6.4.3 → 6.4.5

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 (351) hide show
  1. package/lib/commonjs/BaseNavigationContainer.js +17 -69
  2. package/lib/commonjs/BaseNavigationContainer.js.map +1 -1
  3. package/lib/commonjs/CurrentRenderContext.js +0 -4
  4. package/lib/commonjs/CurrentRenderContext.js.map +1 -1
  5. package/lib/commonjs/EnsureSingleNavigator.js +1 -12
  6. package/lib/commonjs/EnsureSingleNavigator.js.map +1 -1
  7. package/lib/commonjs/Group.js +0 -1
  8. package/lib/commonjs/Group.js.map +1 -1
  9. package/lib/commonjs/NavigationBuilderContext.js +0 -4
  10. package/lib/commonjs/NavigationBuilderContext.js.map +1 -1
  11. package/lib/commonjs/NavigationContainerRefContext.js +0 -4
  12. package/lib/commonjs/NavigationContainerRefContext.js.map +1 -1
  13. package/lib/commonjs/NavigationContext.js +0 -4
  14. package/lib/commonjs/NavigationContext.js.map +1 -1
  15. package/lib/commonjs/NavigationHelpersContext.js +0 -4
  16. package/lib/commonjs/NavigationHelpersContext.js.map +1 -1
  17. package/lib/commonjs/NavigationRouteContext.js +0 -4
  18. package/lib/commonjs/NavigationRouteContext.js.map +1 -1
  19. package/lib/commonjs/NavigationStateContext.js +0 -12
  20. package/lib/commonjs/NavigationStateContext.js.map +1 -1
  21. package/lib/commonjs/PreventRemoveContext.js +0 -4
  22. package/lib/commonjs/PreventRemoveContext.js.map +1 -1
  23. package/lib/commonjs/PreventRemoveProvider.js +3 -21
  24. package/lib/commonjs/PreventRemoveProvider.js.map +1 -1
  25. package/lib/commonjs/SceneView.js +8 -13
  26. package/lib/commonjs/SceneView.js.map +1 -1
  27. package/lib/commonjs/Screen.js +0 -1
  28. package/lib/commonjs/Screen.js.map +1 -1
  29. package/lib/commonjs/StaticContainer.js +0 -10
  30. package/lib/commonjs/StaticContainer.js.map +1 -1
  31. package/lib/commonjs/UnhandledActionContext.js +0 -4
  32. package/lib/commonjs/UnhandledActionContext.js.map +1 -1
  33. package/lib/commonjs/checkDuplicateRouteNames.js +0 -5
  34. package/lib/commonjs/checkDuplicateRouteNames.js.map +1 -1
  35. package/lib/commonjs/checkSerializable.js +0 -9
  36. package/lib/commonjs/checkSerializable.js.map +1 -1
  37. package/lib/commonjs/createNavigationContainerRef.js +0 -13
  38. package/lib/commonjs/createNavigationContainerRef.js.map +1 -1
  39. package/lib/commonjs/createNavigatorFactory.js +0 -5
  40. package/lib/commonjs/createNavigatorFactory.js.map +1 -1
  41. package/lib/commonjs/findFocusedRoute.js +5 -10
  42. package/lib/commonjs/findFocusedRoute.js.map +1 -1
  43. package/lib/commonjs/fromEntries.js +0 -3
  44. package/lib/commonjs/fromEntries.js.map +1 -1
  45. package/lib/commonjs/getActionFromState.js +11 -22
  46. package/lib/commonjs/getActionFromState.js.map +1 -1
  47. package/lib/commonjs/getFocusedRouteNameFromRoute.js +7 -8
  48. package/lib/commonjs/getFocusedRouteNameFromRoute.js.map +1 -1
  49. package/lib/commonjs/getPathFromState.js +25 -55
  50. package/lib/commonjs/getPathFromState.js.map +1 -1
  51. package/lib/commonjs/getStateFromPath.js +48 -105
  52. package/lib/commonjs/getStateFromPath.js.map +1 -1
  53. package/lib/commonjs/index.js +0 -30
  54. package/lib/commonjs/index.js.map +1 -1
  55. package/lib/commonjs/isArrayEqual.js +0 -3
  56. package/lib/commonjs/isArrayEqual.js.map +1 -1
  57. package/lib/commonjs/isRecordEqual.js +0 -4
  58. package/lib/commonjs/isRecordEqual.js.map +1 -1
  59. package/lib/commonjs/types.js +3 -5
  60. package/lib/commonjs/types.js.map +1 -1
  61. package/lib/commonjs/useChildListeners.js +0 -5
  62. package/lib/commonjs/useChildListeners.js.map +1 -1
  63. package/lib/commonjs/useComponent.js +3 -9
  64. package/lib/commonjs/useComponent.js.map +1 -1
  65. package/lib/commonjs/useCurrentRender.js +0 -7
  66. package/lib/commonjs/useCurrentRender.js.map +1 -1
  67. package/lib/commonjs/useDescriptors.js +11 -21
  68. package/lib/commonjs/useDescriptors.js.map +1 -1
  69. package/lib/commonjs/useEventEmitter.js +2 -24
  70. package/lib/commonjs/useEventEmitter.js.map +1 -1
  71. package/lib/commonjs/useFocusEffect.js +2 -20
  72. package/lib/commonjs/useFocusEffect.js.map +1 -1
  73. package/lib/commonjs/useFocusEvents.js +9 -15
  74. package/lib/commonjs/useFocusEvents.js.map +1 -1
  75. package/lib/commonjs/useFocusedListenersChildrenAdapter.js +0 -8
  76. package/lib/commonjs/useFocusedListenersChildrenAdapter.js.map +1 -1
  77. package/lib/commonjs/useIsFocused.js +0 -8
  78. package/lib/commonjs/useIsFocused.js.map +1 -1
  79. package/lib/commonjs/useKeyedChildListeners.js +0 -4
  80. package/lib/commonjs/useKeyedChildListeners.js.map +1 -1
  81. package/lib/commonjs/useNavigation.js +3 -11
  82. package/lib/commonjs/useNavigation.js.map +1 -1
  83. package/lib/commonjs/useNavigationBuilder.js +34 -91
  84. package/lib/commonjs/useNavigationBuilder.js.map +1 -1
  85. package/lib/commonjs/useNavigationCache.js +18 -30
  86. package/lib/commonjs/useNavigationCache.js.map +1 -1
  87. package/lib/commonjs/useNavigationContainerRef.js +0 -8
  88. package/lib/commonjs/useNavigationContainerRef.js.map +1 -1
  89. package/lib/commonjs/useNavigationHelpers.js +4 -18
  90. package/lib/commonjs/useNavigationHelpers.js.map +1 -1
  91. package/lib/commonjs/useNavigationState.js +5 -9
  92. package/lib/commonjs/useNavigationState.js.map +1 -1
  93. package/lib/commonjs/useOnAction.js +8 -25
  94. package/lib/commonjs/useOnAction.js.map +1 -1
  95. package/lib/commonjs/useOnGetState.js +6 -16
  96. package/lib/commonjs/useOnGetState.js.map +1 -1
  97. package/lib/commonjs/useOnPreventRemove.js +9 -24
  98. package/lib/commonjs/useOnPreventRemove.js.map +1 -1
  99. package/lib/commonjs/useOnRouteFocus.js +0 -8
  100. package/lib/commonjs/useOnRouteFocus.js.map +1 -1
  101. package/lib/commonjs/useOptionsGetters.js +5 -24
  102. package/lib/commonjs/useOptionsGetters.js.map +1 -1
  103. package/lib/commonjs/usePreventRemove.js +0 -11
  104. package/lib/commonjs/usePreventRemove.js.map +1 -1
  105. package/lib/commonjs/usePreventRemoveContext.js +0 -8
  106. package/lib/commonjs/usePreventRemoveContext.js.map +1 -1
  107. package/lib/commonjs/useRegisterNavigator.js +0 -8
  108. package/lib/commonjs/useRegisterNavigator.js.map +1 -1
  109. package/lib/commonjs/useRoute.js +0 -8
  110. package/lib/commonjs/useRoute.js.map +1 -1
  111. package/lib/commonjs/useRouteCache.js +1 -10
  112. package/lib/commonjs/useRouteCache.js.map +1 -1
  113. package/lib/commonjs/useScheduleUpdate.js +1 -8
  114. package/lib/commonjs/useScheduleUpdate.js.map +1 -1
  115. package/lib/commonjs/useSyncState.js +9 -17
  116. package/lib/commonjs/useSyncState.js.map +1 -1
  117. package/lib/commonjs/validatePathConfig.js +0 -7
  118. package/lib/commonjs/validatePathConfig.js.map +1 -1
  119. package/lib/module/BaseNavigationContainer.js +17 -46
  120. package/lib/module/BaseNavigationContainer.js.map +1 -1
  121. package/lib/module/CurrentRenderContext.js +1 -1
  122. package/lib/module/CurrentRenderContext.js.map +1 -1
  123. package/lib/module/EnsureSingleNavigator.js +1 -7
  124. package/lib/module/EnsureSingleNavigator.js.map +1 -1
  125. package/lib/module/Group.js.map +1 -1
  126. package/lib/module/NavigationBuilderContext.js +0 -1
  127. package/lib/module/NavigationBuilderContext.js.map +1 -1
  128. package/lib/module/NavigationContainerRefContext.js +0 -1
  129. package/lib/module/NavigationContainerRefContext.js.map +1 -1
  130. package/lib/module/NavigationContext.js +0 -1
  131. package/lib/module/NavigationContext.js.map +1 -1
  132. package/lib/module/NavigationHelpersContext.js +0 -1
  133. package/lib/module/NavigationHelpersContext.js.map +1 -1
  134. package/lib/module/NavigationRouteContext.js +1 -1
  135. package/lib/module/NavigationRouteContext.js.map +1 -1
  136. package/lib/module/NavigationStateContext.js +0 -6
  137. package/lib/module/NavigationStateContext.js.map +1 -1
  138. package/lib/module/PreventRemoveContext.js +1 -0
  139. package/lib/module/PreventRemoveContext.js.map +1 -1
  140. package/lib/module/PreventRemoveProvider.js +3 -12
  141. package/lib/module/PreventRemoveProvider.js.map +1 -1
  142. package/lib/module/SceneView.js +8 -5
  143. package/lib/module/SceneView.js.map +1 -1
  144. package/lib/module/Screen.js.map +1 -1
  145. package/lib/module/StaticContainer.js +1 -6
  146. package/lib/module/StaticContainer.js.map +1 -1
  147. package/lib/module/UnhandledActionContext.js.map +1 -1
  148. package/lib/module/checkDuplicateRouteNames.js +0 -4
  149. package/lib/module/checkDuplicateRouteNames.js.map +1 -1
  150. package/lib/module/checkSerializable.js +0 -8
  151. package/lib/module/checkSerializable.js.map +1 -1
  152. package/lib/module/createNavigationContainerRef.js +0 -10
  153. package/lib/module/createNavigationContainerRef.js.map +1 -1
  154. package/lib/module/createNavigatorFactory.js +0 -2
  155. package/lib/module/createNavigatorFactory.js.map +1 -1
  156. package/lib/module/findFocusedRoute.js +5 -9
  157. package/lib/module/findFocusedRoute.js.map +1 -1
  158. package/lib/module/fromEntries.js +0 -2
  159. package/lib/module/fromEntries.js.map +1 -1
  160. package/lib/module/getActionFromState.js +11 -21
  161. package/lib/module/getActionFromState.js.map +1 -1
  162. package/lib/module/getFocusedRouteNameFromRoute.js +7 -6
  163. package/lib/module/getFocusedRouteNameFromRoute.js.map +1 -1
  164. package/lib/module/getPathFromState.js +25 -49
  165. package/lib/module/getPathFromState.js.map +1 -1
  166. package/lib/module/getStateFromPath.js +48 -98
  167. package/lib/module/getStateFromPath.js.map +1 -1
  168. package/lib/module/index.js.map +1 -1
  169. package/lib/module/isArrayEqual.js +0 -2
  170. package/lib/module/isArrayEqual.js.map +1 -1
  171. package/lib/module/isRecordEqual.js +0 -3
  172. package/lib/module/isRecordEqual.js.map +1 -1
  173. package/lib/module/types.js +3 -3
  174. package/lib/module/types.js.map +1 -1
  175. package/lib/module/useChildListeners.js +0 -2
  176. package/lib/module/useChildListeners.js.map +1 -1
  177. package/lib/module/useComponent.js +3 -6
  178. package/lib/module/useComponent.js.map +1 -1
  179. package/lib/module/useCurrentRender.js +0 -2
  180. package/lib/module/useCurrentRender.js.map +1 -1
  181. package/lib/module/useDescriptors.js +11 -11
  182. package/lib/module/useDescriptors.js.map +1 -1
  183. package/lib/module/useEventEmitter.js +2 -21
  184. package/lib/module/useEventEmitter.js.map +1 -1
  185. package/lib/module/useFocusEffect.js +2 -15
  186. package/lib/module/useFocusEffect.js.map +1 -1
  187. package/lib/module/useFocusEvents.js +9 -10
  188. package/lib/module/useFocusEvents.js.map +1 -1
  189. package/lib/module/useFocusedListenersChildrenAdapter.js +0 -3
  190. package/lib/module/useFocusedListenersChildrenAdapter.js.map +1 -1
  191. package/lib/module/useIsFocused.js +1 -3
  192. package/lib/module/useIsFocused.js.map +1 -1
  193. package/lib/module/useKeyedChildListeners.js +0 -1
  194. package/lib/module/useKeyedChildListeners.js.map +1 -1
  195. package/lib/module/useNavigation.js +3 -5
  196. package/lib/module/useNavigation.js.map +1 -1
  197. package/lib/module/useNavigationBuilder.js +37 -63
  198. package/lib/module/useNavigationBuilder.js.map +1 -1
  199. package/lib/module/useNavigationCache.js +18 -24
  200. package/lib/module/useNavigationCache.js.map +1 -1
  201. package/lib/module/useNavigationContainerRef.js +0 -2
  202. package/lib/module/useNavigationContainerRef.js.map +1 -1
  203. package/lib/module/useNavigationHelpers.js +4 -9
  204. package/lib/module/useNavigationHelpers.js.map +1 -1
  205. package/lib/module/useNavigationState.js +5 -4
  206. package/lib/module/useNavigationState.js.map +1 -1
  207. package/lib/module/useOnAction.js +8 -19
  208. package/lib/module/useOnAction.js.map +1 -1
  209. package/lib/module/useOnGetState.js +6 -8
  210. package/lib/module/useOnGetState.js.map +1 -1
  211. package/lib/module/useOnPreventRemove.js +9 -14
  212. package/lib/module/useOnPreventRemove.js.map +1 -1
  213. package/lib/module/useOnRouteFocus.js +0 -3
  214. package/lib/module/useOnRouteFocus.js.map +1 -1
  215. package/lib/module/useOptionsGetters.js +5 -17
  216. package/lib/module/useOptionsGetters.js.map +1 -1
  217. package/lib/module/usePreventRemove.js +1 -2
  218. package/lib/module/usePreventRemove.js.map +1 -1
  219. package/lib/module/usePreventRemoveContext.js +0 -2
  220. package/lib/module/usePreventRemoveContext.js.map +1 -1
  221. package/lib/module/useRegisterNavigator.js +1 -3
  222. package/lib/module/useRegisterNavigator.js.map +1 -1
  223. package/lib/module/useRoute.js +0 -3
  224. package/lib/module/useRoute.js.map +1 -1
  225. package/lib/module/useRouteCache.js +1 -6
  226. package/lib/module/useRouteCache.js.map +1 -1
  227. package/lib/module/useScheduleUpdate.js +1 -3
  228. package/lib/module/useScheduleUpdate.js.map +1 -1
  229. package/lib/module/useSyncState.js +9 -13
  230. package/lib/module/useSyncState.js.map +1 -1
  231. package/lib/module/validatePathConfig.js +0 -6
  232. package/lib/module/validatePathConfig.js.map +1 -1
  233. package/lib/typescript/src/BaseNavigationContainer.d.ts +1 -0
  234. package/lib/typescript/src/BaseNavigationContainer.d.ts.map +1 -0
  235. package/lib/typescript/src/CurrentRenderContext.d.ts +1 -0
  236. package/lib/typescript/src/CurrentRenderContext.d.ts.map +1 -0
  237. package/lib/typescript/src/EnsureSingleNavigator.d.ts +1 -0
  238. package/lib/typescript/src/EnsureSingleNavigator.d.ts.map +1 -0
  239. package/lib/typescript/src/Group.d.ts +1 -0
  240. package/lib/typescript/src/Group.d.ts.map +1 -0
  241. package/lib/typescript/src/NavigationBuilderContext.d.ts +1 -0
  242. package/lib/typescript/src/NavigationBuilderContext.d.ts.map +1 -0
  243. package/lib/typescript/src/NavigationContainerRefContext.d.ts +1 -0
  244. package/lib/typescript/src/NavigationContainerRefContext.d.ts.map +1 -0
  245. package/lib/typescript/src/NavigationContext.d.ts +1 -0
  246. package/lib/typescript/src/NavigationContext.d.ts.map +1 -0
  247. package/lib/typescript/src/NavigationHelpersContext.d.ts +1 -0
  248. package/lib/typescript/src/NavigationHelpersContext.d.ts.map +1 -0
  249. package/lib/typescript/src/NavigationRouteContext.d.ts +1 -0
  250. package/lib/typescript/src/NavigationRouteContext.d.ts.map +1 -0
  251. package/lib/typescript/src/NavigationStateContext.d.ts +1 -0
  252. package/lib/typescript/src/NavigationStateContext.d.ts.map +1 -0
  253. package/lib/typescript/src/PreventRemoveContext.d.ts +1 -0
  254. package/lib/typescript/src/PreventRemoveContext.d.ts.map +1 -0
  255. package/lib/typescript/src/PreventRemoveProvider.d.ts +1 -0
  256. package/lib/typescript/src/PreventRemoveProvider.d.ts.map +1 -0
  257. package/lib/typescript/src/SceneView.d.ts +1 -0
  258. package/lib/typescript/src/SceneView.d.ts.map +1 -0
  259. package/lib/typescript/src/Screen.d.ts +1 -0
  260. package/lib/typescript/src/Screen.d.ts.map +1 -0
  261. package/lib/typescript/src/StaticContainer.d.ts +1 -0
  262. package/lib/typescript/src/StaticContainer.d.ts.map +1 -0
  263. package/lib/typescript/src/UnhandledActionContext.d.ts +1 -0
  264. package/lib/typescript/src/UnhandledActionContext.d.ts.map +1 -0
  265. package/lib/typescript/src/checkDuplicateRouteNames.d.ts +1 -0
  266. package/lib/typescript/src/checkDuplicateRouteNames.d.ts.map +1 -0
  267. package/lib/typescript/src/checkSerializable.d.ts +1 -0
  268. package/lib/typescript/src/checkSerializable.d.ts.map +1 -0
  269. package/lib/typescript/src/createNavigationContainerRef.d.ts +1 -0
  270. package/lib/typescript/src/createNavigationContainerRef.d.ts.map +1 -0
  271. package/lib/typescript/src/createNavigatorFactory.d.ts +1 -0
  272. package/lib/typescript/src/createNavigatorFactory.d.ts.map +1 -0
  273. package/lib/typescript/src/findFocusedRoute.d.ts +1 -0
  274. package/lib/typescript/src/findFocusedRoute.d.ts.map +1 -0
  275. package/lib/typescript/src/fromEntries.d.ts +1 -0
  276. package/lib/typescript/src/fromEntries.d.ts.map +1 -0
  277. package/lib/typescript/src/getActionFromState.d.ts +1 -0
  278. package/lib/typescript/src/getActionFromState.d.ts.map +1 -0
  279. package/lib/typescript/src/getFocusedRouteNameFromRoute.d.ts +1 -0
  280. package/lib/typescript/src/getFocusedRouteNameFromRoute.d.ts.map +1 -0
  281. package/lib/typescript/src/getPathFromState.d.ts +1 -0
  282. package/lib/typescript/src/getPathFromState.d.ts.map +1 -0
  283. package/lib/typescript/src/getStateFromPath.d.ts +1 -0
  284. package/lib/typescript/src/getStateFromPath.d.ts.map +1 -0
  285. package/lib/typescript/src/index.d.ts +1 -0
  286. package/lib/typescript/src/index.d.ts.map +1 -0
  287. package/lib/typescript/src/isArrayEqual.d.ts +1 -0
  288. package/lib/typescript/src/isArrayEqual.d.ts.map +1 -0
  289. package/lib/typescript/src/isRecordEqual.d.ts +1 -0
  290. package/lib/typescript/src/isRecordEqual.d.ts.map +1 -0
  291. package/lib/typescript/src/types.d.ts +1 -0
  292. package/lib/typescript/src/types.d.ts.map +1 -0
  293. package/lib/typescript/src/useChildListeners.d.ts +1 -0
  294. package/lib/typescript/src/useChildListeners.d.ts.map +1 -0
  295. package/lib/typescript/src/useComponent.d.ts +1 -0
  296. package/lib/typescript/src/useComponent.d.ts.map +1 -0
  297. package/lib/typescript/src/useCurrentRender.d.ts +1 -0
  298. package/lib/typescript/src/useCurrentRender.d.ts.map +1 -0
  299. package/lib/typescript/src/useDescriptors.d.ts +1 -0
  300. package/lib/typescript/src/useDescriptors.d.ts.map +1 -0
  301. package/lib/typescript/src/useEventEmitter.d.ts +1 -0
  302. package/lib/typescript/src/useEventEmitter.d.ts.map +1 -0
  303. package/lib/typescript/src/useFocusEffect.d.ts +1 -0
  304. package/lib/typescript/src/useFocusEffect.d.ts.map +1 -0
  305. package/lib/typescript/src/useFocusEvents.d.ts +1 -0
  306. package/lib/typescript/src/useFocusEvents.d.ts.map +1 -0
  307. package/lib/typescript/src/useFocusedListenersChildrenAdapter.d.ts +1 -0
  308. package/lib/typescript/src/useFocusedListenersChildrenAdapter.d.ts.map +1 -0
  309. package/lib/typescript/src/useIsFocused.d.ts +1 -0
  310. package/lib/typescript/src/useIsFocused.d.ts.map +1 -0
  311. package/lib/typescript/src/useKeyedChildListeners.d.ts +1 -0
  312. package/lib/typescript/src/useKeyedChildListeners.d.ts.map +1 -0
  313. package/lib/typescript/src/useNavigation.d.ts +1 -0
  314. package/lib/typescript/src/useNavigation.d.ts.map +1 -0
  315. package/lib/typescript/src/useNavigationBuilder.d.ts +1 -0
  316. package/lib/typescript/src/useNavigationBuilder.d.ts.map +1 -0
  317. package/lib/typescript/src/useNavigationCache.d.ts +1 -0
  318. package/lib/typescript/src/useNavigationCache.d.ts.map +1 -0
  319. package/lib/typescript/src/useNavigationContainerRef.d.ts +1 -0
  320. package/lib/typescript/src/useNavigationContainerRef.d.ts.map +1 -0
  321. package/lib/typescript/src/useNavigationHelpers.d.ts +1 -0
  322. package/lib/typescript/src/useNavigationHelpers.d.ts.map +1 -0
  323. package/lib/typescript/src/useNavigationState.d.ts +1 -0
  324. package/lib/typescript/src/useNavigationState.d.ts.map +1 -0
  325. package/lib/typescript/src/useOnAction.d.ts +1 -0
  326. package/lib/typescript/src/useOnAction.d.ts.map +1 -0
  327. package/lib/typescript/src/useOnGetState.d.ts +1 -0
  328. package/lib/typescript/src/useOnGetState.d.ts.map +1 -0
  329. package/lib/typescript/src/useOnPreventRemove.d.ts +1 -0
  330. package/lib/typescript/src/useOnPreventRemove.d.ts.map +1 -0
  331. package/lib/typescript/src/useOnRouteFocus.d.ts +1 -0
  332. package/lib/typescript/src/useOnRouteFocus.d.ts.map +1 -0
  333. package/lib/typescript/src/useOptionsGetters.d.ts +1 -0
  334. package/lib/typescript/src/useOptionsGetters.d.ts.map +1 -0
  335. package/lib/typescript/src/usePreventRemove.d.ts +1 -0
  336. package/lib/typescript/src/usePreventRemove.d.ts.map +1 -0
  337. package/lib/typescript/src/usePreventRemoveContext.d.ts +1 -0
  338. package/lib/typescript/src/usePreventRemoveContext.d.ts.map +1 -0
  339. package/lib/typescript/src/useRegisterNavigator.d.ts +1 -0
  340. package/lib/typescript/src/useRegisterNavigator.d.ts.map +1 -0
  341. package/lib/typescript/src/useRoute.d.ts +1 -0
  342. package/lib/typescript/src/useRoute.d.ts.map +1 -0
  343. package/lib/typescript/src/useRouteCache.d.ts +1 -0
  344. package/lib/typescript/src/useRouteCache.d.ts.map +1 -0
  345. package/lib/typescript/src/useScheduleUpdate.d.ts +1 -0
  346. package/lib/typescript/src/useScheduleUpdate.d.ts.map +1 -0
  347. package/lib/typescript/src/useSyncState.d.ts +1 -0
  348. package/lib/typescript/src/useSyncState.d.ts.map +1 -0
  349. package/lib/typescript/src/validatePathConfig.d.ts +1 -0
  350. package/lib/typescript/src/validatePathConfig.d.ts.map +1 -0
  351. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"names":["React","NavigationHelpersContext","createContext","undefined"],"sources":["NavigationHelpersContext.tsx"],"sourcesContent":["import type { ParamListBase } from '@react-navigation/routers';\nimport * as React from 'react';\n\nimport type { NavigationHelpers } from './types';\n\n/**\n * Context which holds the navigation helpers of the parent navigator.\n * Navigators should use this context in their view component.\n */\nconst NavigationHelpersContext = React.createContext<\n NavigationHelpers<ParamListBase> | undefined\n>(undefined);\n\nexport default NavigationHelpersContext;\n"],"mappings":"AACA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;;AAIA;AACA;AACA;AACA;AACA,MAAMC,wBAAwB,gBAAGD,KAAK,CAACE,aAAN,CAE/BC,SAF+B,CAAjC;AAIA,eAAeF,wBAAf"}
1
+ {"version":3,"names":["React","NavigationHelpersContext","createContext","undefined"],"sourceRoot":"../../src","sources":["NavigationHelpersContext.tsx"],"mappings":"AACA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAI9B;AACA;AACA;AACA;AACA,MAAMC,wBAAwB,gBAAGD,KAAK,CAACE,aAAa,CAElDC,SAAS,CAAC;AAEZ,eAAeF,wBAAwB"}
@@ -1,8 +1,8 @@
1
1
  import * as React from 'react';
2
+
2
3
  /**
3
4
  * Context which holds the route prop for a screen.
4
5
  */
5
-
6
6
  const NavigationRouteContext = /*#__PURE__*/React.createContext(undefined);
7
7
  export default NavigationRouteContext;
8
8
  //# sourceMappingURL=NavigationRouteContext.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","NavigationRouteContext","createContext","undefined"],"sources":["NavigationRouteContext.tsx"],"sourcesContent":["import type { Route } from '@react-navigation/routers';\nimport * as React from 'react';\n\n/**\n * Context which holds the route prop for a screen.\n */\nconst NavigationRouteContext = React.createContext<Route<string> | undefined>(\n undefined\n);\n\nexport default NavigationRouteContext;\n"],"mappings":"AACA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AAEA;AACA;AACA;;AACA,MAAMC,sBAAsB,gBAAGD,KAAK,CAACE,aAAN,CAC7BC,SAD6B,CAA/B;AAIA,eAAeF,sBAAf"}
1
+ {"version":3,"names":["React","NavigationRouteContext","createContext","undefined"],"sourceRoot":"../../src","sources":["NavigationRouteContext.tsx"],"mappings":"AACA,OAAO,KAAKA,KAAK,MAAM,OAAO;;AAE9B;AACA;AACA;AACA,MAAMC,sBAAsB,gBAAGD,KAAK,CAACE,aAAa,CAChDC,SAAS,CACV;AAED,eAAeF,sBAAsB"}
@@ -2,26 +2,20 @@ import * as React from 'react';
2
2
  const MISSING_CONTEXT_ERROR = "Couldn't find a navigation context. Have you wrapped your app with 'NavigationContainer'? See https://reactnavigation.org/docs/getting-started for setup instructions.";
3
3
  export default /*#__PURE__*/React.createContext({
4
4
  isDefault: true,
5
-
6
5
  get getKey() {
7
6
  throw new Error(MISSING_CONTEXT_ERROR);
8
7
  },
9
-
10
8
  get setKey() {
11
9
  throw new Error(MISSING_CONTEXT_ERROR);
12
10
  },
13
-
14
11
  get getState() {
15
12
  throw new Error(MISSING_CONTEXT_ERROR);
16
13
  },
17
-
18
14
  get setState() {
19
15
  throw new Error(MISSING_CONTEXT_ERROR);
20
16
  },
21
-
22
17
  get getIsInitial() {
23
18
  throw new Error(MISSING_CONTEXT_ERROR);
24
19
  }
25
-
26
20
  });
27
21
  //# sourceMappingURL=NavigationStateContext.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","MISSING_CONTEXT_ERROR","createContext","isDefault","getKey","Error","setKey","getState","setState","getIsInitial"],"sources":["NavigationStateContext.tsx"],"sourcesContent":["import type { NavigationState, PartialState } from '@react-navigation/routers';\nimport * as React from 'react';\n\nconst MISSING_CONTEXT_ERROR =\n \"Couldn't find a navigation context. Have you wrapped your app with 'NavigationContainer'? See https://reactnavigation.org/docs/getting-started for setup instructions.\";\n\nexport default React.createContext<{\n isDefault?: true;\n state?: NavigationState | PartialState<NavigationState>;\n getKey: () => string | undefined;\n setKey: (key: string) => void;\n getState: () => NavigationState | PartialState<NavigationState> | undefined;\n setState: (\n state: NavigationState | PartialState<NavigationState> | undefined\n ) => void;\n getIsInitial: () => boolean;\n addOptionsGetter?: (\n key: string,\n getter: () => object | undefined | null\n ) => void;\n}>({\n isDefault: true,\n\n get getKey(): any {\n throw new Error(MISSING_CONTEXT_ERROR);\n },\n get setKey(): any {\n throw new Error(MISSING_CONTEXT_ERROR);\n },\n get getState(): any {\n throw new Error(MISSING_CONTEXT_ERROR);\n },\n get setState(): any {\n throw new Error(MISSING_CONTEXT_ERROR);\n },\n get getIsInitial(): any {\n throw new Error(MISSING_CONTEXT_ERROR);\n },\n});\n"],"mappings":"AACA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AAEA,MAAMC,qBAAqB,GACzB,wKADF;AAGA,4BAAeD,KAAK,CAACE,aAAN,CAcZ;EACDC,SAAS,EAAE,IADV;;EAGD,IAAIC,MAAJ,GAAkB;IAChB,MAAM,IAAIC,KAAJ,CAAUJ,qBAAV,CAAN;EACD,CALA;;EAMD,IAAIK,MAAJ,GAAkB;IAChB,MAAM,IAAID,KAAJ,CAAUJ,qBAAV,CAAN;EACD,CARA;;EASD,IAAIM,QAAJ,GAAoB;IAClB,MAAM,IAAIF,KAAJ,CAAUJ,qBAAV,CAAN;EACD,CAXA;;EAYD,IAAIO,QAAJ,GAAoB;IAClB,MAAM,IAAIH,KAAJ,CAAUJ,qBAAV,CAAN;EACD,CAdA;;EAeD,IAAIQ,YAAJ,GAAwB;IACtB,MAAM,IAAIJ,KAAJ,CAAUJ,qBAAV,CAAN;EACD;;AAjBA,CAdY,CAAf"}
1
+ {"version":3,"names":["React","MISSING_CONTEXT_ERROR","createContext","isDefault","getKey","Error","setKey","getState","setState","getIsInitial"],"sourceRoot":"../../src","sources":["NavigationStateContext.tsx"],"mappings":"AACA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,MAAMC,qBAAqB,GACzB,wKAAwK;AAE1K,4BAAeD,KAAK,CAACE,aAAa,CAc/B;EACDC,SAAS,EAAE,IAAI;EAEf,IAAIC,MAAM,GAAQ;IAChB,MAAM,IAAIC,KAAK,CAACJ,qBAAqB,CAAC;EACxC,CAAC;EACD,IAAIK,MAAM,GAAQ;IAChB,MAAM,IAAID,KAAK,CAACJ,qBAAqB,CAAC;EACxC,CAAC;EACD,IAAIM,QAAQ,GAAQ;IAClB,MAAM,IAAIF,KAAK,CAACJ,qBAAqB,CAAC;EACxC,CAAC;EACD,IAAIO,QAAQ,GAAQ;IAClB,MAAM,IAAIH,KAAK,CAACJ,qBAAqB,CAAC;EACxC,CAAC;EACD,IAAIQ,YAAY,GAAQ;IACtB,MAAM,IAAIJ,KAAK,CAACJ,qBAAqB,CAAC;EACxC;AACF,CAAC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import * as React from 'react';
2
+
2
3
  /**
3
4
  * A type of an object that have a route key as an object key
4
5
  * and a value whether to prevent that route.
@@ -1 +1 @@
1
- {"version":3,"names":["React","PreventRemoveContext","createContext","undefined"],"sources":["PreventRemoveContext.tsx"],"sourcesContent":["import * as React from 'react';\n\n/**\n * A type of an object that have a route key as an object key\n * and a value whether to prevent that route.\n */\nexport type PreventedRoutes = Record<string, { preventRemove: boolean }>;\n\nconst PreventRemoveContext = React.createContext<\n | {\n preventedRoutes: PreventedRoutes;\n setPreventRemove: (\n id: string,\n routeKey: string,\n preventRemove: boolean\n ) => void;\n }\n | undefined\n>(undefined);\n\nexport default PreventRemoveContext;\n"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AAEA;AACA;AACA;AACA;;AAGA,MAAMC,oBAAoB,gBAAGD,KAAK,CAACE,aAAN,CAU3BC,SAV2B,CAA7B;AAYA,eAAeF,oBAAf"}
1
+ {"version":3,"names":["React","PreventRemoveContext","createContext","undefined"],"sourceRoot":"../../src","sources":["PreventRemoveContext.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;;AAE9B;AACA;AACA;AACA;;AAGA,MAAMC,oBAAoB,gBAAGD,KAAK,CAACE,aAAa,CAU9CC,SAAS,CAAC;AAEZ,eAAeF,oBAAoB"}
@@ -4,7 +4,6 @@ import useLatestCallback from 'use-latest-callback';
4
4
  import NavigationHelpersContext from './NavigationHelpersContext';
5
5
  import NavigationRouteContext from './NavigationRouteContext';
6
6
  import PreventRemoveContext from './PreventRemoveContext';
7
-
8
7
  /**
9
8
  * Util function to transform map of prevented routes to a simpler object.
10
9
  */
@@ -12,7 +11,6 @@ const transformPreventedRoutes = preventedRoutesMap => {
12
11
  const preventedRoutesToTransform = [...preventedRoutesMap.values()];
13
12
  const preventedRoutes = preventedRoutesToTransform.reduce((acc, _ref) => {
14
13
  var _acc$routeKey;
15
-
16
14
  let {
17
15
  routeKey,
18
16
  preventRemove
@@ -24,11 +22,10 @@ const transformPreventedRoutes = preventedRoutesMap => {
24
22
  }, {});
25
23
  return preventedRoutes;
26
24
  };
25
+
27
26
  /**
28
27
  * Component used for managing which routes have to be prevented from removal in native-stack.
29
28
  */
30
-
31
-
32
29
  export default function PreventRemoveProvider(_ref2) {
33
30
  let {
34
31
  children
@@ -37,24 +34,20 @@ export default function PreventRemoveProvider(_ref2) {
37
34
  const [preventedRoutesMap, setPreventedRoutesMap] = React.useState(new Map());
38
35
  const navigation = React.useContext(NavigationHelpersContext);
39
36
  const route = React.useContext(NavigationRouteContext);
40
- const preventRemoveContextValue = React.useContext(PreventRemoveContext); // take `setPreventRemove` from parent context - if exist it means we're in a nested context
41
-
37
+ const preventRemoveContextValue = React.useContext(PreventRemoveContext);
38
+ // take `setPreventRemove` from parent context - if exist it means we're in a nested context
42
39
  const setParentPrevented = preventRemoveContextValue === null || preventRemoveContextValue === void 0 ? void 0 : preventRemoveContextValue.setPreventRemove;
43
40
  const setPreventRemove = useLatestCallback((id, routeKey, preventRemove) => {
44
41
  if (preventRemove && (navigation == null || navigation !== null && navigation !== void 0 && navigation.getState().routes.every(route => route.key !== routeKey))) {
45
42
  throw new Error(`Couldn't find a route with the key ${routeKey}. Is your component inside NavigationContent?`);
46
43
  }
47
-
48
44
  setPreventedRoutesMap(prevPrevented => {
49
45
  var _prevPrevented$get, _prevPrevented$get2;
50
-
51
46
  // values haven't changed - do nothing
52
47
  if (routeKey === ((_prevPrevented$get = prevPrevented.get(id)) === null || _prevPrevented$get === void 0 ? void 0 : _prevPrevented$get.routeKey) && preventRemove === ((_prevPrevented$get2 = prevPrevented.get(id)) === null || _prevPrevented$get2 === void 0 ? void 0 : _prevPrevented$get2.preventRemove)) {
53
48
  return prevPrevented;
54
49
  }
55
-
56
50
  const nextPrevented = new Map(prevPrevented);
57
-
58
51
  if (preventRemove) {
59
52
  nextPrevented.set(id, {
60
53
  routeKey,
@@ -63,7 +56,6 @@ export default function PreventRemoveProvider(_ref2) {
63
56
  } else {
64
57
  nextPrevented.delete(id);
65
58
  }
66
-
67
59
  return nextPrevented;
68
60
  });
69
61
  });
@@ -82,7 +74,6 @@ export default function PreventRemoveProvider(_ref2) {
82
74
  setParentPrevented(parentId, route.key, false);
83
75
  };
84
76
  }
85
-
86
77
  return;
87
78
  }, [parentId, isPrevented, route === null || route === void 0 ? void 0 : route.key, setParentPrevented]);
88
79
  const value = React.useMemo(() => ({
@@ -1 +1 @@
1
- {"version":3,"names":["nanoid","React","useLatestCallback","NavigationHelpersContext","NavigationRouteContext","PreventRemoveContext","transformPreventedRoutes","preventedRoutesMap","preventedRoutesToTransform","values","preventedRoutes","reduce","acc","routeKey","preventRemove","PreventRemoveProvider","children","parentId","useState","setPreventedRoutesMap","Map","navigation","useContext","route","preventRemoveContextValue","setParentPrevented","setPreventRemove","id","getState","routes","every","key","Error","prevPrevented","get","nextPrevented","set","delete","isPrevented","some","useEffect","undefined","value","useMemo"],"sources":["PreventRemoveProvider.tsx"],"sourcesContent":["import { nanoid } from 'nanoid/non-secure';\nimport * as React from 'react';\nimport useLatestCallback from 'use-latest-callback';\n\nimport NavigationHelpersContext from './NavigationHelpersContext';\nimport NavigationRouteContext from './NavigationRouteContext';\nimport PreventRemoveContext, { PreventedRoutes } from './PreventRemoveContext';\n\ntype Props = {\n children: React.ReactNode;\n};\n\ntype PreventedRoutesMap = Map<\n string,\n {\n routeKey: string;\n preventRemove: boolean;\n }\n>;\n\n/**\n * Util function to transform map of prevented routes to a simpler object.\n */\nconst transformPreventedRoutes = (\n preventedRoutesMap: PreventedRoutesMap\n): PreventedRoutes => {\n const preventedRoutesToTransform = [...preventedRoutesMap.values()];\n\n const preventedRoutes = preventedRoutesToTransform.reduce<PreventedRoutes>(\n (acc, { routeKey, preventRemove }) => {\n acc[routeKey] = {\n preventRemove: acc[routeKey]?.preventRemove || preventRemove,\n };\n return acc;\n },\n {}\n );\n\n return preventedRoutes;\n};\n\n/**\n * Component used for managing which routes have to be prevented from removal in native-stack.\n */\nexport default function PreventRemoveProvider({ children }: Props) {\n const [parentId] = React.useState(() => nanoid());\n const [preventedRoutesMap, setPreventedRoutesMap] =\n React.useState<PreventedRoutesMap>(new Map());\n\n const navigation = React.useContext(NavigationHelpersContext);\n const route = React.useContext(NavigationRouteContext);\n\n const preventRemoveContextValue = React.useContext(PreventRemoveContext);\n // take `setPreventRemove` from parent context - if exist it means we're in a nested context\n const setParentPrevented = preventRemoveContextValue?.setPreventRemove;\n\n const setPreventRemove = useLatestCallback(\n (id: string, routeKey: string, preventRemove: boolean): void => {\n if (\n preventRemove &&\n (navigation == null ||\n navigation\n ?.getState()\n .routes.every((route) => route.key !== routeKey))\n ) {\n throw new Error(\n `Couldn't find a route with the key ${routeKey}. Is your component inside NavigationContent?`\n );\n }\n\n setPreventedRoutesMap((prevPrevented) => {\n // values haven't changed - do nothing\n if (\n routeKey === prevPrevented.get(id)?.routeKey &&\n preventRemove === prevPrevented.get(id)?.preventRemove\n ) {\n return prevPrevented;\n }\n\n const nextPrevented = new Map(prevPrevented);\n\n if (preventRemove) {\n nextPrevented.set(id, {\n routeKey,\n preventRemove,\n });\n } else {\n nextPrevented.delete(id);\n }\n\n return nextPrevented;\n });\n }\n );\n\n const isPrevented = [...preventedRoutesMap.values()].some(\n ({ preventRemove }) => preventRemove\n );\n\n React.useEffect(() => {\n if (route?.key !== undefined && setParentPrevented !== undefined) {\n // when route is defined (and setParentPrevented) it means we're in a nested stack\n // route.key then will be the route key of parent\n setParentPrevented(parentId, route.key, isPrevented);\n return () => {\n setParentPrevented(parentId, route.key, false);\n };\n }\n\n return;\n }, [parentId, isPrevented, route?.key, setParentPrevented]);\n\n const value = React.useMemo(\n () => ({\n setPreventRemove,\n preventedRoutes: transformPreventedRoutes(preventedRoutesMap),\n }),\n [setPreventRemove, preventedRoutesMap]\n );\n\n return (\n <PreventRemoveContext.Provider value={value}>\n {children}\n </PreventRemoveContext.Provider>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["nanoid","React","useLatestCallback","NavigationHelpersContext","NavigationRouteContext","PreventRemoveContext","transformPreventedRoutes","preventedRoutesMap","preventedRoutesToTransform","values","preventedRoutes","reduce","acc","routeKey","preventRemove","PreventRemoveProvider","children","parentId","useState","setPreventedRoutesMap","Map","navigation","useContext","route","preventRemoveContextValue","setParentPrevented","setPreventRemove","id","getState","routes","every","key","Error","prevPrevented","get","nextPrevented","set","delete","isPrevented","some","useEffect","undefined","value","useMemo"],"sourceRoot":"../../src","sources":["PreventRemoveProvider.tsx"],"mappings":"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"}
@@ -3,7 +3,6 @@ import EnsureSingleNavigator from './EnsureSingleNavigator';
3
3
  import NavigationStateContext from './NavigationStateContext';
4
4
  import StaticContainer from './StaticContainer';
5
5
  import useOptionsGetters from './useOptionsGetters';
6
-
7
6
  /**
8
7
  * Component which takes care of rendering the screen for a route.
9
8
  * It provides all required contexts and applies optimizations when applicable.
@@ -38,8 +37,10 @@ export default function SceneView(_ref) {
38
37
  }, [getState, route.key]);
39
38
  const setCurrentState = React.useCallback(child => {
40
39
  const state = getState();
41
- setState({ ...state,
42
- routes: state.routes.map(r => r.key === route.key ? { ...r,
40
+ setState({
41
+ ...state,
42
+ routes: state.routes.map(r => r.key === route.key ? {
43
+ ...r,
43
44
  state: child
44
45
  } : r)
45
46
  });
@@ -47,10 +48,12 @@ export default function SceneView(_ref) {
47
48
  const isInitialRef = React.useRef(true);
48
49
  React.useEffect(() => {
49
50
  isInitialRef.current = false;
50
- }); // Clear options set by this screen when it is unmounted
51
+ });
51
52
 
53
+ // Clear options set by this screen when it is unmounted
52
54
  React.useEffect(() => {
53
- return clearOptions; // eslint-disable-next-line react-hooks/exhaustive-deps
55
+ return clearOptions;
56
+ // eslint-disable-next-line react-hooks/exhaustive-deps
54
57
  }, []);
55
58
  const getIsInitial = React.useCallback(() => isInitialRef.current, []);
56
59
  const context = React.useMemo(() => ({
@@ -1 +1 @@
1
- {"version":3,"names":["React","EnsureSingleNavigator","NavigationStateContext","StaticContainer","useOptionsGetters","SceneView","screen","route","navigation","routeState","getState","setState","options","clearOptions","navigatorKeyRef","useRef","getKey","useCallback","current","addOptionsGetter","key","setKey","getCurrentState","state","currentRoute","routes","find","r","undefined","setCurrentState","child","map","isInitialRef","useEffect","getIsInitial","context","useMemo","ScreenComponent","getComponent","component","name","children"],"sources":["SceneView.tsx"],"sourcesContent":["import type {\n NavigationState,\n ParamListBase,\n PartialState,\n Route,\n} from '@react-navigation/routers';\nimport * as React from 'react';\n\nimport EnsureSingleNavigator from './EnsureSingleNavigator';\nimport NavigationStateContext from './NavigationStateContext';\nimport StaticContainer from './StaticContainer';\nimport type { NavigationProp, RouteConfigComponent } from './types';\nimport useOptionsGetters from './useOptionsGetters';\n\ntype Props<State extends NavigationState, ScreenOptions extends {}> = {\n screen: RouteConfigComponent<ParamListBase, string> & { name: string };\n navigation: NavigationProp<\n ParamListBase,\n string,\n string | undefined,\n State,\n ScreenOptions\n >;\n route: Route<string>;\n routeState: NavigationState | PartialState<NavigationState> | undefined;\n getState: () => State;\n setState: (state: State) => void;\n options: object;\n clearOptions: () => void;\n};\n\n/**\n * Component which takes care of rendering the screen for a route.\n * It provides all required contexts and applies optimizations when applicable.\n */\nexport default function SceneView<\n State extends NavigationState,\n ScreenOptions extends {}\n>({\n screen,\n route,\n navigation,\n routeState,\n getState,\n setState,\n options,\n clearOptions,\n}: Props<State, ScreenOptions>) {\n const navigatorKeyRef = React.useRef<string | undefined>();\n const getKey = React.useCallback(() => navigatorKeyRef.current, []);\n\n const { addOptionsGetter } = useOptionsGetters({\n key: route.key,\n options,\n navigation,\n });\n\n const setKey = React.useCallback((key: string) => {\n navigatorKeyRef.current = key;\n }, []);\n\n const getCurrentState = React.useCallback(() => {\n const state = getState();\n const currentRoute = state.routes.find((r) => r.key === route.key);\n\n return currentRoute ? currentRoute.state : undefined;\n }, [getState, route.key]);\n\n const setCurrentState = React.useCallback(\n (child: NavigationState | PartialState<NavigationState> | undefined) => {\n const state = getState();\n\n setState({\n ...state,\n routes: state.routes.map((r) =>\n r.key === route.key ? { ...r, state: child } : r\n ),\n });\n },\n [getState, route.key, setState]\n );\n\n const isInitialRef = React.useRef(true);\n\n React.useEffect(() => {\n isInitialRef.current = false;\n });\n\n // Clear options set by this screen when it is unmounted\n React.useEffect(() => {\n return clearOptions;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const getIsInitial = React.useCallback(() => isInitialRef.current, []);\n\n const context = React.useMemo(\n () => ({\n state: routeState,\n getState: getCurrentState,\n setState: setCurrentState,\n getKey,\n setKey,\n getIsInitial,\n addOptionsGetter,\n }),\n [\n routeState,\n getCurrentState,\n setCurrentState,\n getKey,\n setKey,\n getIsInitial,\n addOptionsGetter,\n ]\n );\n\n const ScreenComponent = screen.getComponent\n ? screen.getComponent()\n : screen.component;\n\n return (\n <NavigationStateContext.Provider value={context}>\n <EnsureSingleNavigator>\n <StaticContainer\n name={screen.name}\n render={ScreenComponent || screen.children}\n navigation={navigation}\n route={route}\n >\n {ScreenComponent !== undefined ? (\n <ScreenComponent navigation={navigation} route={route} />\n ) : screen.children !== undefined ? (\n screen.children({ navigation, route })\n ) : null}\n </StaticContainer>\n </EnsureSingleNavigator>\n </NavigationStateContext.Provider>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","EnsureSingleNavigator","NavigationStateContext","StaticContainer","useOptionsGetters","SceneView","screen","route","navigation","routeState","getState","setState","options","clearOptions","navigatorKeyRef","useRef","getKey","useCallback","current","addOptionsGetter","key","setKey","getCurrentState","state","currentRoute","routes","find","r","undefined","setCurrentState","child","map","isInitialRef","useEffect","getIsInitial","context","useMemo","ScreenComponent","getComponent","component","name","children"],"sourceRoot":"../../src","sources":["SceneView.tsx"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["Screen","_"],"sources":["Screen.tsx"],"sourcesContent":["import type { NavigationState, ParamListBase } from '@react-navigation/routers';\n\nimport type { EventMapBase, RouteConfig } from './types';\n\n/**\n * Empty component used for specifying route configuration.\n */\nexport default function Screen<\n ParamList extends ParamListBase,\n RouteName extends keyof ParamList,\n State extends NavigationState,\n ScreenOptions extends {},\n EventMap extends EventMapBase\n>(_: RouteConfig<ParamList, RouteName, State, ScreenOptions, EventMap>) {\n /* istanbul ignore next */\n return null;\n}\n"],"mappings":"AAIA;AACA;AACA;AACA,eAAe,SAASA,MAAT,CAMbC,CANa,EAMyD;EACtE;EACA,OAAO,IAAP;AACD"}
1
+ {"version":3,"names":["Screen","_"],"sourceRoot":"../../src","sources":["Screen.tsx"],"mappings":"AAIA;AACA;AACA;AACA,eAAe,SAASA,MAAM,CAM5BC,CAAoE,EAAE;EACtE;EACA,OAAO,IAAI;AACb"}
@@ -1,30 +1,25 @@
1
1
  import * as React from 'react';
2
+
2
3
  /**
3
4
  * Component which prevents updates for children if no props changed
4
5
  */
5
-
6
6
  function StaticContainer(props) {
7
7
  return props.children;
8
8
  }
9
-
10
9
  export default /*#__PURE__*/React.memo(StaticContainer, (prevProps, nextProps) => {
11
10
  const prevPropKeys = Object.keys(prevProps);
12
11
  const nextPropKeys = Object.keys(nextProps);
13
-
14
12
  if (prevPropKeys.length !== nextPropKeys.length) {
15
13
  return false;
16
14
  }
17
-
18
15
  for (const key of prevPropKeys) {
19
16
  if (key === 'children') {
20
17
  continue;
21
18
  }
22
-
23
19
  if (prevProps[key] !== nextProps[key]) {
24
20
  return false;
25
21
  }
26
22
  }
27
-
28
23
  return true;
29
24
  });
30
25
  //# sourceMappingURL=StaticContainer.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","StaticContainer","props","children","memo","prevProps","nextProps","prevPropKeys","Object","keys","nextPropKeys","length","key"],"sources":["StaticContainer.tsx"],"sourcesContent":["import * as React from 'react';\n\n/**\n * Component which prevents updates for children if no props changed\n */\nfunction StaticContainer(props: any) {\n return props.children;\n}\n\nexport default React.memo(StaticContainer, (prevProps: any, nextProps: any) => {\n const prevPropKeys = Object.keys(prevProps);\n const nextPropKeys = Object.keys(nextProps);\n\n if (prevPropKeys.length !== nextPropKeys.length) {\n return false;\n }\n\n for (const key of prevPropKeys) {\n if (key === 'children') {\n continue;\n }\n\n if (prevProps[key] !== nextProps[key]) {\n return false;\n }\n }\n\n return true;\n});\n"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AAEA;AACA;AACA;;AACA,SAASC,eAAT,CAAyBC,KAAzB,EAAqC;EACnC,OAAOA,KAAK,CAACC,QAAb;AACD;;AAED,4BAAeH,KAAK,CAACI,IAAN,CAAWH,eAAX,EAA4B,CAACI,SAAD,EAAiBC,SAAjB,KAAoC;EAC7E,MAAMC,YAAY,GAAGC,MAAM,CAACC,IAAP,CAAYJ,SAAZ,CAArB;EACA,MAAMK,YAAY,GAAGF,MAAM,CAACC,IAAP,CAAYH,SAAZ,CAArB;;EAEA,IAAIC,YAAY,CAACI,MAAb,KAAwBD,YAAY,CAACC,MAAzC,EAAiD;IAC/C,OAAO,KAAP;EACD;;EAED,KAAK,MAAMC,GAAX,IAAkBL,YAAlB,EAAgC;IAC9B,IAAIK,GAAG,KAAK,UAAZ,EAAwB;MACtB;IACD;;IAED,IAAIP,SAAS,CAACO,GAAD,CAAT,KAAmBN,SAAS,CAACM,GAAD,CAAhC,EAAuC;MACrC,OAAO,KAAP;IACD;EACF;;EAED,OAAO,IAAP;AACD,CAnBc,CAAf"}
1
+ {"version":3,"names":["React","StaticContainer","props","children","memo","prevProps","nextProps","prevPropKeys","Object","keys","nextPropKeys","length","key"],"sourceRoot":"../../src","sources":["StaticContainer.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;;AAE9B;AACA;AACA;AACA,SAASC,eAAe,CAACC,KAAU,EAAE;EACnC,OAAOA,KAAK,CAACC,QAAQ;AACvB;AAEA,4BAAeH,KAAK,CAACI,IAAI,CAACH,eAAe,EAAE,CAACI,SAAc,EAAEC,SAAc,KAAK;EAC7E,MAAMC,YAAY,GAAGC,MAAM,CAACC,IAAI,CAACJ,SAAS,CAAC;EAC3C,MAAMK,YAAY,GAAGF,MAAM,CAACC,IAAI,CAACH,SAAS,CAAC;EAE3C,IAAIC,YAAY,CAACI,MAAM,KAAKD,YAAY,CAACC,MAAM,EAAE;IAC/C,OAAO,KAAK;EACd;EAEA,KAAK,MAAMC,GAAG,IAAIL,YAAY,EAAE;IAC9B,IAAIK,GAAG,KAAK,UAAU,EAAE;MACtB;IACF;IAEA,IAAIP,SAAS,CAACO,GAAG,CAAC,KAAKN,SAAS,CAACM,GAAG,CAAC,EAAE;MACrC,OAAO,KAAK;IACd;EACF;EAEA,OAAO,IAAI;AACb,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"names":["React","UnhandledActionContext","createContext","undefined"],"sources":["UnhandledActionContext.tsx"],"sourcesContent":["import type { NavigationAction } from '@react-navigation/routers';\nimport * as React from 'react';\n\nconst UnhandledActionContext = React.createContext<\n ((action: NavigationAction) => void) | undefined\n>(undefined);\n\nexport default UnhandledActionContext;\n"],"mappings":"AACA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AAEA,MAAMC,sBAAsB,gBAAGD,KAAK,CAACE,aAAN,CAE7BC,SAF6B,CAA/B;AAIA,eAAeF,sBAAf"}
1
+ {"version":3,"names":["React","UnhandledActionContext","createContext","undefined"],"sourceRoot":"../../src","sources":["UnhandledActionContext.tsx"],"mappings":"AACA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,MAAMC,sBAAsB,gBAAGD,KAAK,CAACE,aAAa,CAEhDC,SAAS,CAAC;AAEZ,eAAeF,sBAAsB"}
@@ -1,23 +1,19 @@
1
1
  export default function checkDuplicateRouteNames(state) {
2
2
  const duplicates = [];
3
-
4
3
  const getRouteNames = (location, state) => {
5
4
  state.routes.forEach(route => {
6
5
  var _route$state, _route$state$routeNam;
7
-
8
6
  const currentLocation = location ? `${location} > ${route.name}` : route.name;
9
7
  (_route$state = route.state) === null || _route$state === void 0 ? void 0 : (_route$state$routeNam = _route$state.routeNames) === null || _route$state$routeNam === void 0 ? void 0 : _route$state$routeNam.forEach(routeName => {
10
8
  if (routeName === route.name) {
11
9
  duplicates.push([currentLocation, `${currentLocation} > ${route.name}`]);
12
10
  }
13
11
  });
14
-
15
12
  if (route.state) {
16
13
  getRouteNames(currentLocation, route.state);
17
14
  }
18
15
  });
19
16
  };
20
-
21
17
  getRouteNames('', state);
22
18
  return duplicates;
23
19
  }
@@ -1 +1 @@
1
- {"version":3,"names":["checkDuplicateRouteNames","state","duplicates","getRouteNames","location","routes","forEach","route","currentLocation","name","routeNames","routeName","push"],"sources":["checkDuplicateRouteNames.tsx"],"sourcesContent":["import type { NavigationState, PartialState } from '@react-navigation/routers';\n\nexport default function checkDuplicateRouteNames(state: NavigationState) {\n const duplicates: string[][] = [];\n\n const getRouteNames = (\n location: string,\n state: NavigationState | PartialState<NavigationState>\n ) => {\n state.routes.forEach((route: typeof state.routes[0]) => {\n const currentLocation = location\n ? `${location} > ${route.name}`\n : route.name;\n\n route.state?.routeNames?.forEach((routeName) => {\n if (routeName === route.name) {\n duplicates.push([\n currentLocation,\n `${currentLocation} > ${route.name}`,\n ]);\n }\n });\n\n if (route.state) {\n getRouteNames(currentLocation, route.state);\n }\n });\n };\n\n getRouteNames('', state);\n\n return duplicates;\n}\n"],"mappings":"AAEA,eAAe,SAASA,wBAAT,CAAkCC,KAAlC,EAA0D;EACvE,MAAMC,UAAsB,GAAG,EAA/B;;EAEA,MAAMC,aAAa,GAAG,CACpBC,QADoB,EAEpBH,KAFoB,KAGjB;IACHA,KAAK,CAACI,MAAN,CAAaC,OAAb,CAAsBC,KAAD,IAAmC;MAAA;;MACtD,MAAMC,eAAe,GAAGJ,QAAQ,GAC3B,GAAEA,QAAS,MAAKG,KAAK,CAACE,IAAK,EADA,GAE5BF,KAAK,CAACE,IAFV;MAIA,gBAAAF,KAAK,CAACN,KAAN,uFAAaS,UAAb,gFAAyBJ,OAAzB,CAAkCK,SAAD,IAAe;QAC9C,IAAIA,SAAS,KAAKJ,KAAK,CAACE,IAAxB,EAA8B;UAC5BP,UAAU,CAACU,IAAX,CAAgB,CACdJ,eADc,EAEb,GAAEA,eAAgB,MAAKD,KAAK,CAACE,IAAK,EAFrB,CAAhB;QAID;MACF,CAPD;;MASA,IAAIF,KAAK,CAACN,KAAV,EAAiB;QACfE,aAAa,CAACK,eAAD,EAAkBD,KAAK,CAACN,KAAxB,CAAb;MACD;IACF,CAjBD;EAkBD,CAtBD;;EAwBAE,aAAa,CAAC,EAAD,EAAKF,KAAL,CAAb;EAEA,OAAOC,UAAP;AACD"}
1
+ {"version":3,"names":["checkDuplicateRouteNames","state","duplicates","getRouteNames","location","routes","forEach","route","currentLocation","name","routeNames","routeName","push"],"sourceRoot":"../../src","sources":["checkDuplicateRouteNames.tsx"],"mappings":"AAEA,eAAe,SAASA,wBAAwB,CAACC,KAAsB,EAAE;EACvE,MAAMC,UAAsB,GAAG,EAAE;EAEjC,MAAMC,aAAa,GAAG,CACpBC,QAAgB,EAChBH,KAAsD,KACnD;IACHA,KAAK,CAACI,MAAM,CAACC,OAAO,CAAEC,KAA6B,IAAK;MAAA;MACtD,MAAMC,eAAe,GAAGJ,QAAQ,GAC3B,GAAEA,QAAS,MAAKG,KAAK,CAACE,IAAK,EAAC,GAC7BF,KAAK,CAACE,IAAI;MAEd,gBAAAF,KAAK,CAACN,KAAK,0EAAX,aAAaS,UAAU,0DAAvB,sBAAyBJ,OAAO,CAAEK,SAAS,IAAK;QAC9C,IAAIA,SAAS,KAAKJ,KAAK,CAACE,IAAI,EAAE;UAC5BP,UAAU,CAACU,IAAI,CAAC,CACdJ,eAAe,EACd,GAAEA,eAAgB,MAAKD,KAAK,CAACE,IAAK,EAAC,CACrC,CAAC;QACJ;MACF,CAAC,CAAC;MAEF,IAAIF,KAAK,CAACN,KAAK,EAAE;QACfE,aAAa,CAACK,eAAe,EAAED,KAAK,CAACN,KAAK,CAAC;MAC7C;IACF,CAAC,CAAC;EACJ,CAAC;EAEDE,aAAa,CAAC,EAAE,EAAEF,KAAK,CAAC;EAExB,OAAOC,UAAU;AACnB"}
@@ -4,7 +4,6 @@ const checkSerializableWithoutCircularReference = (o, seen, location) => {
4
4
  serializable: true
5
5
  };
6
6
  }
7
-
8
7
  if (Object.prototype.toString.call(o) !== '[object Object]' && !Array.isArray(o)) {
9
8
  return {
10
9
  serializable: false,
@@ -12,7 +11,6 @@ const checkSerializableWithoutCircularReference = (o, seen, location) => {
12
11
  reason: typeof o === 'function' ? 'Function' : String(o)
13
12
  };
14
13
  }
15
-
16
14
  if (seen.has(o)) {
17
15
  return {
18
16
  serializable: false,
@@ -20,13 +18,10 @@ const checkSerializableWithoutCircularReference = (o, seen, location) => {
20
18
  location
21
19
  };
22
20
  }
23
-
24
21
  seen.add(o);
25
-
26
22
  if (Array.isArray(o)) {
27
23
  for (let i = 0; i < o.length; i++) {
28
24
  const childResult = checkSerializableWithoutCircularReference(o[i], new Set(seen), [...location, i]);
29
-
30
25
  if (!childResult.serializable) {
31
26
  return childResult;
32
27
  }
@@ -34,18 +29,15 @@ const checkSerializableWithoutCircularReference = (o, seen, location) => {
34
29
  } else {
35
30
  for (const key in o) {
36
31
  const childResult = checkSerializableWithoutCircularReference(o[key], new Set(seen), [...location, key]);
37
-
38
32
  if (!childResult.serializable) {
39
33
  return childResult;
40
34
  }
41
35
  }
42
36
  }
43
-
44
37
  return {
45
38
  serializable: true
46
39
  };
47
40
  };
48
-
49
41
  export default function checkSerializable(o) {
50
42
  return checkSerializableWithoutCircularReference(o, new Set(), []);
51
43
  }
@@ -1 +1 @@
1
- {"version":3,"names":["checkSerializableWithoutCircularReference","o","seen","location","undefined","serializable","Object","prototype","toString","call","Array","isArray","reason","String","has","add","i","length","childResult","Set","key","checkSerializable"],"sources":["checkSerializable.tsx"],"sourcesContent":["const checkSerializableWithoutCircularReference = (\n o: { [key: string]: any },\n seen: Set<any>,\n location: (string | number)[]\n):\n | { serializable: true }\n | {\n serializable: false;\n location: (string | number)[];\n reason: string;\n } => {\n if (\n o === undefined ||\n o === null ||\n typeof o === 'boolean' ||\n typeof o === 'number' ||\n typeof o === 'string'\n ) {\n return { serializable: true };\n }\n\n if (\n Object.prototype.toString.call(o) !== '[object Object]' &&\n !Array.isArray(o)\n ) {\n return {\n serializable: false,\n location,\n reason: typeof o === 'function' ? 'Function' : String(o),\n };\n }\n\n if (seen.has(o)) {\n return {\n serializable: false,\n reason: 'Circular reference',\n location,\n };\n }\n\n seen.add(o);\n\n if (Array.isArray(o)) {\n for (let i = 0; i < o.length; i++) {\n const childResult = checkSerializableWithoutCircularReference(\n o[i],\n new Set<any>(seen),\n [...location, i]\n );\n\n if (!childResult.serializable) {\n return childResult;\n }\n }\n } else {\n for (const key in o) {\n const childResult = checkSerializableWithoutCircularReference(\n o[key],\n new Set<any>(seen),\n [...location, key]\n );\n\n if (!childResult.serializable) {\n return childResult;\n }\n }\n }\n\n return { serializable: true };\n};\n\nexport default function checkSerializable(o: { [key: string]: any }) {\n return checkSerializableWithoutCircularReference(o, new Set<any>(), []);\n}\n"],"mappings":"AAAA,MAAMA,yCAAyC,GAAG,CAChDC,CADgD,EAEhDC,IAFgD,EAGhDC,QAHgD,KAUzC;EACP,IACEF,CAAC,KAAKG,SAAN,IACAH,CAAC,KAAK,IADN,IAEA,OAAOA,CAAP,KAAa,SAFb,IAGA,OAAOA,CAAP,KAAa,QAHb,IAIA,OAAOA,CAAP,KAAa,QALf,EAME;IACA,OAAO;MAAEI,YAAY,EAAE;IAAhB,CAAP;EACD;;EAED,IACEC,MAAM,CAACC,SAAP,CAAiBC,QAAjB,CAA0BC,IAA1B,CAA+BR,CAA/B,MAAsC,iBAAtC,IACA,CAACS,KAAK,CAACC,OAAN,CAAcV,CAAd,CAFH,EAGE;IACA,OAAO;MACLI,YAAY,EAAE,KADT;MAELF,QAFK;MAGLS,MAAM,EAAE,OAAOX,CAAP,KAAa,UAAb,GAA0B,UAA1B,GAAuCY,MAAM,CAACZ,CAAD;IAHhD,CAAP;EAKD;;EAED,IAAIC,IAAI,CAACY,GAAL,CAASb,CAAT,CAAJ,EAAiB;IACf,OAAO;MACLI,YAAY,EAAE,KADT;MAELO,MAAM,EAAE,oBAFH;MAGLT;IAHK,CAAP;EAKD;;EAEDD,IAAI,CAACa,GAAL,CAASd,CAAT;;EAEA,IAAIS,KAAK,CAACC,OAAN,CAAcV,CAAd,CAAJ,EAAsB;IACpB,KAAK,IAAIe,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGf,CAAC,CAACgB,MAAtB,EAA8BD,CAAC,EAA/B,EAAmC;MACjC,MAAME,WAAW,GAAGlB,yCAAyC,CAC3DC,CAAC,CAACe,CAAD,CAD0D,EAE3D,IAAIG,GAAJ,CAAajB,IAAb,CAF2D,EAG3D,CAAC,GAAGC,QAAJ,EAAca,CAAd,CAH2D,CAA7D;;MAMA,IAAI,CAACE,WAAW,CAACb,YAAjB,EAA+B;QAC7B,OAAOa,WAAP;MACD;IACF;EACF,CAZD,MAYO;IACL,KAAK,MAAME,GAAX,IAAkBnB,CAAlB,EAAqB;MACnB,MAAMiB,WAAW,GAAGlB,yCAAyC,CAC3DC,CAAC,CAACmB,GAAD,CAD0D,EAE3D,IAAID,GAAJ,CAAajB,IAAb,CAF2D,EAG3D,CAAC,GAAGC,QAAJ,EAAciB,GAAd,CAH2D,CAA7D;;MAMA,IAAI,CAACF,WAAW,CAACb,YAAjB,EAA+B;QAC7B,OAAOa,WAAP;MACD;IACF;EACF;;EAED,OAAO;IAAEb,YAAY,EAAE;EAAhB,CAAP;AACD,CArED;;AAuEA,eAAe,SAASgB,iBAAT,CAA2BpB,CAA3B,EAAsD;EACnE,OAAOD,yCAAyC,CAACC,CAAD,EAAI,IAAIkB,GAAJ,EAAJ,EAAoB,EAApB,CAAhD;AACD"}
1
+ {"version":3,"names":["checkSerializableWithoutCircularReference","o","seen","location","undefined","serializable","Object","prototype","toString","call","Array","isArray","reason","String","has","add","i","length","childResult","Set","key","checkSerializable"],"sourceRoot":"../../src","sources":["checkSerializable.tsx"],"mappings":"AAAA,MAAMA,yCAAyC,GAAG,CAChDC,CAAyB,EACzBC,IAAc,EACdC,QAA6B,KAOtB;EACP,IACEF,CAAC,KAAKG,SAAS,IACfH,CAAC,KAAK,IAAI,IACV,OAAOA,CAAC,KAAK,SAAS,IACtB,OAAOA,CAAC,KAAK,QAAQ,IACrB,OAAOA,CAAC,KAAK,QAAQ,EACrB;IACA,OAAO;MAAEI,YAAY,EAAE;IAAK,CAAC;EAC/B;EAEA,IACEC,MAAM,CAACC,SAAS,CAACC,QAAQ,CAACC,IAAI,CAACR,CAAC,CAAC,KAAK,iBAAiB,IACvD,CAACS,KAAK,CAACC,OAAO,CAACV,CAAC,CAAC,EACjB;IACA,OAAO;MACLI,YAAY,EAAE,KAAK;MACnBF,QAAQ;MACRS,MAAM,EAAE,OAAOX,CAAC,KAAK,UAAU,GAAG,UAAU,GAAGY,MAAM,CAACZ,CAAC;IACzD,CAAC;EACH;EAEA,IAAIC,IAAI,CAACY,GAAG,CAACb,CAAC,CAAC,EAAE;IACf,OAAO;MACLI,YAAY,EAAE,KAAK;MACnBO,MAAM,EAAE,oBAAoB;MAC5BT;IACF,CAAC;EACH;EAEAD,IAAI,CAACa,GAAG,CAACd,CAAC,CAAC;EAEX,IAAIS,KAAK,CAACC,OAAO,CAACV,CAAC,CAAC,EAAE;IACpB,KAAK,IAAIe,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGf,CAAC,CAACgB,MAAM,EAAED,CAAC,EAAE,EAAE;MACjC,MAAME,WAAW,GAAGlB,yCAAyC,CAC3DC,CAAC,CAACe,CAAC,CAAC,EACJ,IAAIG,GAAG,CAAMjB,IAAI,CAAC,EAClB,CAAC,GAAGC,QAAQ,EAAEa,CAAC,CAAC,CACjB;MAED,IAAI,CAACE,WAAW,CAACb,YAAY,EAAE;QAC7B,OAAOa,WAAW;MACpB;IACF;EACF,CAAC,MAAM;IACL,KAAK,MAAME,GAAG,IAAInB,CAAC,EAAE;MACnB,MAAMiB,WAAW,GAAGlB,yCAAyC,CAC3DC,CAAC,CAACmB,GAAG,CAAC,EACN,IAAID,GAAG,CAAMjB,IAAI,CAAC,EAClB,CAAC,GAAGC,QAAQ,EAAEiB,GAAG,CAAC,CACnB;MAED,IAAI,CAACF,WAAW,CAACb,YAAY,EAAE;QAC7B,OAAOa,WAAW;MACpB;IACF;EACF;EAEA,OAAO;IAAEb,YAAY,EAAE;EAAK,CAAC;AAC/B,CAAC;AAED,eAAe,SAASgB,iBAAiB,CAACpB,CAAyB,EAAE;EACnE,OAAOD,yCAAyC,CAACC,CAAC,EAAE,IAAIkB,GAAG,EAAO,EAAE,EAAE,CAAC;AACzE"}
@@ -3,22 +3,18 @@ export const NOT_INITIALIZED_ERROR = "The 'navigation' object hasn't been initia
3
3
  export default function createNavigationContainerRef() {
4
4
  const methods = [...Object.keys(CommonActions), 'addListener', 'removeListener', 'resetRoot', 'dispatch', 'isFocused', 'canGoBack', 'getRootState', 'getState', 'getParent', 'getCurrentRoute', 'getCurrentOptions'];
5
5
  const listeners = {};
6
-
7
6
  const removeListener = (event, callback) => {
8
7
  if (listeners[event]) {
9
8
  listeners[event] = listeners[event].filter(cb => cb !== callback);
10
9
  }
11
10
  };
12
-
13
11
  let current = null;
14
12
  const ref = {
15
13
  get current() {
16
14
  return current;
17
15
  },
18
-
19
16
  set current(value) {
20
17
  current = value;
21
-
22
18
  if (value != null) {
23
19
  Object.entries(listeners).forEach(_ref => {
24
20
  let [event, callbacks] = _ref;
@@ -28,12 +24,10 @@ export default function createNavigationContainerRef() {
28
24
  });
29
25
  }
30
26
  },
31
-
32
27
  isReady: () => {
33
28
  if (current == null) {
34
29
  return false;
35
30
  }
36
-
37
31
  return current.isReady();
38
32
  },
39
33
  ...methods.reduce((acc, name) => {
@@ -41,7 +35,6 @@ export default function createNavigationContainerRef() {
41
35
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
42
36
  args[_key] = arguments[_key];
43
37
  }
44
-
45
38
  if (current == null) {
46
39
  switch (name) {
47
40
  case 'addListener':
@@ -51,14 +44,12 @@ export default function createNavigationContainerRef() {
51
44
  listeners[event].push(callback);
52
45
  return () => removeListener(event, callback);
53
46
  }
54
-
55
47
  case 'removeListener':
56
48
  {
57
49
  const [event, callback] = args;
58
50
  removeListener(event, callback);
59
51
  break;
60
52
  }
61
-
62
53
  default:
63
54
  console.error(NOT_INITIALIZED_ERROR);
64
55
  }
@@ -67,7 +58,6 @@ export default function createNavigationContainerRef() {
67
58
  return current[name](...args);
68
59
  }
69
60
  };
70
-
71
61
  return acc;
72
62
  }, {})
73
63
  };
@@ -1 +1 @@
1
- {"version":3,"names":["CommonActions","NOT_INITIALIZED_ERROR","createNavigationContainerRef","methods","Object","keys","listeners","removeListener","event","callback","filter","cb","current","ref","value","entries","forEach","callbacks","addListener","isReady","reduce","acc","name","args","push","console","error"],"sources":["createNavigationContainerRef.tsx"],"sourcesContent":["import { CommonActions } from '@react-navigation/routers';\n\nimport type {\n NavigationContainerEventMap,\n NavigationContainerRef,\n NavigationContainerRefWithCurrent,\n} from './types';\n\nexport const NOT_INITIALIZED_ERROR =\n \"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.\";\n\nexport default function createNavigationContainerRef<\n ParamList extends {} = ReactNavigation.RootParamList\n>(): NavigationContainerRefWithCurrent<ParamList> {\n const methods = [\n ...Object.keys(CommonActions),\n 'addListener',\n 'removeListener',\n 'resetRoot',\n 'dispatch',\n 'isFocused',\n 'canGoBack',\n 'getRootState',\n 'getState',\n 'getParent',\n 'getCurrentRoute',\n 'getCurrentOptions',\n ] as const;\n\n const listeners: Record<string, ((...args: any[]) => void)[]> = {};\n\n const removeListener = (\n event: string,\n callback: (...args: any[]) => void\n ) => {\n if (listeners[event]) {\n listeners[event] = listeners[event].filter((cb) => cb !== callback);\n }\n };\n\n let current: NavigationContainerRef<ParamList> | null = null;\n\n const ref: NavigationContainerRefWithCurrent<ParamList> = {\n get current() {\n return current;\n },\n set current(value: NavigationContainerRef<ParamList> | null) {\n current = value;\n\n if (value != null) {\n Object.entries(listeners).forEach(([event, callbacks]) => {\n callbacks.forEach((callback) => {\n value.addListener(\n event as keyof NavigationContainerEventMap,\n callback\n );\n });\n });\n }\n },\n isReady: () => {\n if (current == null) {\n return false;\n }\n\n return current.isReady();\n },\n ...methods.reduce<any>((acc, name) => {\n acc[name] = (...args: any[]) => {\n if (current == null) {\n switch (name) {\n case 'addListener': {\n const [event, callback] = args;\n\n listeners[event] = listeners[event] || [];\n listeners[event].push(callback);\n\n return () => removeListener(event, callback);\n }\n case 'removeListener': {\n const [event, callback] = args;\n\n removeListener(event, callback);\n break;\n }\n default:\n console.error(NOT_INITIALIZED_ERROR);\n }\n } else {\n // @ts-expect-error: this is ok\n return current[name](...args);\n }\n };\n return acc;\n }, {}),\n };\n\n return ref;\n}\n"],"mappings":"AAAA,SAASA,aAAT,QAA8B,2BAA9B;AAQA,OAAO,MAAMC,qBAAqB,GAChC,+QADK;AAGP,eAAe,SAASC,4BAAT,GAEmC;EAChD,MAAMC,OAAO,GAAG,CACd,GAAGC,MAAM,CAACC,IAAP,CAAYL,aAAZ,CADW,EAEd,aAFc,EAGd,gBAHc,EAId,WAJc,EAKd,UALc,EAMd,WANc,EAOd,WAPc,EAQd,cARc,EASd,UATc,EAUd,WAVc,EAWd,iBAXc,EAYd,mBAZc,CAAhB;EAeA,MAAMM,SAAuD,GAAG,EAAhE;;EAEA,MAAMC,cAAc,GAAG,CACrBC,KADqB,EAErBC,QAFqB,KAGlB;IACH,IAAIH,SAAS,CAACE,KAAD,CAAb,EAAsB;MACpBF,SAAS,CAACE,KAAD,CAAT,GAAmBF,SAAS,CAACE,KAAD,CAAT,CAAiBE,MAAjB,CAAyBC,EAAD,IAAQA,EAAE,KAAKF,QAAvC,CAAnB;IACD;EACF,CAPD;;EASA,IAAIG,OAAiD,GAAG,IAAxD;EAEA,MAAMC,GAAiD,GAAG;IACxD,IAAID,OAAJ,GAAc;MACZ,OAAOA,OAAP;IACD,CAHuD;;IAIxD,IAAIA,OAAJ,CAAYE,KAAZ,EAA6D;MAC3DF,OAAO,GAAGE,KAAV;;MAEA,IAAIA,KAAK,IAAI,IAAb,EAAmB;QACjBV,MAAM,CAACW,OAAP,CAAeT,SAAf,EAA0BU,OAA1B,CAAkC,QAAwB;UAAA,IAAvB,CAACR,KAAD,EAAQS,SAAR,CAAuB;UACxDA,SAAS,CAACD,OAAV,CAAmBP,QAAD,IAAc;YAC9BK,KAAK,CAACI,WAAN,CACEV,KADF,EAEEC,QAFF;UAID,CALD;QAMD,CAPD;MAQD;IACF,CAjBuD;;IAkBxDU,OAAO,EAAE,MAAM;MACb,IAAIP,OAAO,IAAI,IAAf,EAAqB;QACnB,OAAO,KAAP;MACD;;MAED,OAAOA,OAAO,CAACO,OAAR,EAAP;IACD,CAxBuD;IAyBxD,GAAGhB,OAAO,CAACiB,MAAR,CAAoB,CAACC,GAAD,EAAMC,IAAN,KAAe;MACpCD,GAAG,CAACC,IAAD,CAAH,GAAY,YAAoB;QAAA,kCAAhBC,IAAgB;UAAhBA,IAAgB;QAAA;;QAC9B,IAAIX,OAAO,IAAI,IAAf,EAAqB;UACnB,QAAQU,IAAR;YACE,KAAK,aAAL;cAAoB;gBAClB,MAAM,CAACd,KAAD,EAAQC,QAAR,IAAoBc,IAA1B;gBAEAjB,SAAS,CAACE,KAAD,CAAT,GAAmBF,SAAS,CAACE,KAAD,CAAT,IAAoB,EAAvC;gBACAF,SAAS,CAACE,KAAD,CAAT,CAAiBgB,IAAjB,CAAsBf,QAAtB;gBAEA,OAAO,MAAMF,cAAc,CAACC,KAAD,EAAQC,QAAR,CAA3B;cACD;;YACD,KAAK,gBAAL;cAAuB;gBACrB,MAAM,CAACD,KAAD,EAAQC,QAAR,IAAoBc,IAA1B;gBAEAhB,cAAc,CAACC,KAAD,EAAQC,QAAR,CAAd;gBACA;cACD;;YACD;cACEgB,OAAO,CAACC,KAAR,CAAczB,qBAAd;UAhBJ;QAkBD,CAnBD,MAmBO;UACL;UACA,OAAOW,OAAO,CAACU,IAAD,CAAP,CAAc,GAAGC,IAAjB,CAAP;QACD;MACF,CAxBD;;MAyBA,OAAOF,GAAP;IACD,CA3BE,EA2BA,EA3BA;EAzBqD,CAA1D;EAuDA,OAAOR,GAAP;AACD"}
1
+ {"version":3,"names":["CommonActions","NOT_INITIALIZED_ERROR","createNavigationContainerRef","methods","Object","keys","listeners","removeListener","event","callback","filter","cb","current","ref","value","entries","forEach","callbacks","addListener","isReady","reduce","acc","name","args","push","console","error"],"sourceRoot":"../../src","sources":["createNavigationContainerRef.tsx"],"mappings":"AAAA,SAASA,aAAa,QAAQ,2BAA2B;AAQzD,OAAO,MAAMC,qBAAqB,GAChC,+QAA+Q;AAEjR,eAAe,SAASC,4BAA4B,GAEF;EAChD,MAAMC,OAAO,GAAG,CACd,GAAGC,MAAM,CAACC,IAAI,CAACL,aAAa,CAAC,EAC7B,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,WAAW,EACX,WAAW,EACX,cAAc,EACd,UAAU,EACV,WAAW,EACX,iBAAiB,EACjB,mBAAmB,CACX;EAEV,MAAMM,SAAuD,GAAG,CAAC,CAAC;EAElE,MAAMC,cAAc,GAAG,CACrBC,KAAa,EACbC,QAAkC,KAC/B;IACH,IAAIH,SAAS,CAACE,KAAK,CAAC,EAAE;MACpBF,SAAS,CAACE,KAAK,CAAC,GAAGF,SAAS,CAACE,KAAK,CAAC,CAACE,MAAM,CAAEC,EAAE,IAAKA,EAAE,KAAKF,QAAQ,CAAC;IACrE;EACF,CAAC;EAED,IAAIG,OAAiD,GAAG,IAAI;EAE5D,MAAMC,GAAiD,GAAG;IACxD,IAAID,OAAO,GAAG;MACZ,OAAOA,OAAO;IAChB,CAAC;IACD,IAAIA,OAAO,CAACE,KAA+C,EAAE;MAC3DF,OAAO,GAAGE,KAAK;MAEf,IAAIA,KAAK,IAAI,IAAI,EAAE;QACjBV,MAAM,CAACW,OAAO,CAACT,SAAS,CAAC,CAACU,OAAO,CAAC,QAAwB;UAAA,IAAvB,CAACR,KAAK,EAAES,SAAS,CAAC;UACnDA,SAAS,CAACD,OAAO,CAAEP,QAAQ,IAAK;YAC9BK,KAAK,CAACI,WAAW,CACfV,KAAK,EACLC,QAAQ,CACT;UACH,CAAC,CAAC;QACJ,CAAC,CAAC;MACJ;IACF,CAAC;IACDU,OAAO,EAAE,MAAM;MACb,IAAIP,OAAO,IAAI,IAAI,EAAE;QACnB,OAAO,KAAK;MACd;MAEA,OAAOA,OAAO,CAACO,OAAO,EAAE;IAC1B,CAAC;IACD,GAAGhB,OAAO,CAACiB,MAAM,CAAM,CAACC,GAAG,EAAEC,IAAI,KAAK;MACpCD,GAAG,CAACC,IAAI,CAAC,GAAG,YAAoB;QAAA,kCAAhBC,IAAI;UAAJA,IAAI;QAAA;QAClB,IAAIX,OAAO,IAAI,IAAI,EAAE;UACnB,QAAQU,IAAI;YACV,KAAK,aAAa;cAAE;gBAClB,MAAM,CAACd,KAAK,EAAEC,QAAQ,CAAC,GAAGc,IAAI;gBAE9BjB,SAAS,CAACE,KAAK,CAAC,GAAGF,SAAS,CAACE,KAAK,CAAC,IAAI,EAAE;gBACzCF,SAAS,CAACE,KAAK,CAAC,CAACgB,IAAI,CAACf,QAAQ,CAAC;gBAE/B,OAAO,MAAMF,cAAc,CAACC,KAAK,EAAEC,QAAQ,CAAC;cAC9C;YACA,KAAK,gBAAgB;cAAE;gBACrB,MAAM,CAACD,KAAK,EAAEC,QAAQ,CAAC,GAAGc,IAAI;gBAE9BhB,cAAc,CAACC,KAAK,EAAEC,QAAQ,CAAC;gBAC/B;cACF;YACA;cACEgB,OAAO,CAACC,KAAK,CAACzB,qBAAqB,CAAC;UAAC;QAE3C,CAAC,MAAM;UACL;UACA,OAAOW,OAAO,CAACU,IAAI,CAAC,CAAC,GAAGC,IAAI,CAAC;QAC/B;MACF,CAAC;MACD,OAAOF,GAAG;IACZ,CAAC,EAAE,CAAC,CAAC;EACP,CAAC;EAED,OAAOR,GAAG;AACZ"}
@@ -1,6 +1,5 @@
1
1
  import Group from './Group';
2
2
  import Screen from './Screen';
3
-
4
3
  /**
5
4
  * Higher order component to create a `Navigator` and `Screen` pair.
6
5
  * Custom navigators should wrap the navigator component in `createNavigator` before exporting.
@@ -13,7 +12,6 @@ export default function createNavigatorFactory(Navigator) {
13
12
  if (arguments[0] !== undefined) {
14
13
  throw new Error("Creating a navigator doesn't take an argument. Maybe you are trying to use React Navigation 4 API? See https://reactnavigation.org/docs/hello-react-navigation for the latest API and guides.");
15
14
  }
16
-
17
15
  return {
18
16
  Navigator,
19
17
  Group,
@@ -1 +1 @@
1
- {"version":3,"names":["Group","Screen","createNavigatorFactory","Navigator","arguments","undefined","Error"],"sources":["createNavigatorFactory.tsx"],"sourcesContent":["import type { NavigationState, ParamListBase } from '@react-navigation/routers';\nimport type * as React from 'react';\n\nimport Group from './Group';\nimport Screen from './Screen';\nimport type { EventMapBase, TypedNavigator } from './types';\n\n/**\n * Higher order component to create a `Navigator` and `Screen` pair.\n * Custom navigators should wrap the navigator component in `createNavigator` before exporting.\n *\n * @param Navigator The navigtor component to wrap.\n * @returns Factory method to create a `Navigator` and `Screen` pair.\n */\nexport default function createNavigatorFactory<\n State extends NavigationState,\n ScreenOptions extends {},\n EventMap extends EventMapBase,\n NavigatorComponent extends React.ComponentType<any>\n>(Navigator: NavigatorComponent) {\n return function <ParamList extends ParamListBase>(): TypedNavigator<\n ParamList,\n State,\n ScreenOptions,\n EventMap,\n typeof Navigator\n > {\n if (arguments[0] !== undefined) {\n throw new Error(\n \"Creating a navigator doesn't take an argument. Maybe you are trying to use React Navigation 4 API? See https://reactnavigation.org/docs/hello-react-navigation for the latest API and guides.\"\n );\n }\n\n return {\n Navigator,\n Group,\n Screen,\n };\n };\n}\n"],"mappings":"AAGA,OAAOA,KAAP,MAAkB,SAAlB;AACA,OAAOC,MAAP,MAAmB,UAAnB;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,sBAAT,CAKbC,SALa,EAKkB;EAC/B,OAAO,YAML;IACA,IAAIC,SAAS,CAAC,CAAD,CAAT,KAAiBC,SAArB,EAAgC;MAC9B,MAAM,IAAIC,KAAJ,CACJ,+LADI,CAAN;IAGD;;IAED,OAAO;MACLH,SADK;MAELH,KAFK;MAGLC;IAHK,CAAP;EAKD,CAlBD;AAmBD"}
1
+ {"version":3,"names":["Group","Screen","createNavigatorFactory","Navigator","arguments","undefined","Error"],"sourceRoot":"../../src","sources":["createNavigatorFactory.tsx"],"mappings":"AAGA,OAAOA,KAAK,MAAM,SAAS;AAC3B,OAAOC,MAAM,MAAM,UAAU;AAG7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,sBAAsB,CAK5CC,SAA6B,EAAE;EAC/B,OAAO,YAML;IACA,IAAIC,SAAS,CAAC,CAAC,CAAC,KAAKC,SAAS,EAAE;MAC9B,MAAM,IAAIC,KAAK,CACb,+LAA+L,CAChM;IACH;IAEA,OAAO;MACLH,SAAS;MACTH,KAAK;MACLC;IACF,CAAC;EACH,CAAC;AACH"}
@@ -1,15 +1,11 @@
1
1
  export default function findFocusedRoute(state) {
2
- var _current2, _current$index3, _current3;
3
-
2
+ var _current2, _current3;
4
3
  let current = state;
5
-
6
- while (((_current = current) === null || _current === void 0 ? void 0 : _current.routes[(_current$index = current.index) !== null && _current$index !== void 0 ? _current$index : 0].state) != null) {
7
- var _current, _current$index, _current$index2;
8
-
9
- current = current.routes[(_current$index2 = current.index) !== null && _current$index2 !== void 0 ? _current$index2 : 0].state;
4
+ while (((_current = current) === null || _current === void 0 ? void 0 : _current.routes[current.index ?? 0].state) != null) {
5
+ var _current;
6
+ current = current.routes[current.index ?? 0].state;
10
7
  }
11
-
12
- const route = (_current2 = current) === null || _current2 === void 0 ? void 0 : _current2.routes[(_current$index3 = (_current3 = current) === null || _current3 === void 0 ? void 0 : _current3.index) !== null && _current$index3 !== void 0 ? _current$index3 : 0];
8
+ const route = (_current2 = current) === null || _current2 === void 0 ? void 0 : _current2.routes[((_current3 = current) === null || _current3 === void 0 ? void 0 : _current3.index) ?? 0];
13
9
  return route;
14
10
  }
15
11
  //# sourceMappingURL=findFocusedRoute.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["findFocusedRoute","state","current","routes","index","route"],"sources":["findFocusedRoute.tsx"],"sourcesContent":["import type { InitialState } from '@react-navigation/routers';\n\nexport default function findFocusedRoute(state: InitialState) {\n let current: InitialState | undefined = state;\n\n while (current?.routes[current.index ?? 0].state != null) {\n current = current.routes[current.index ?? 0].state;\n }\n\n const route = current?.routes[current?.index ?? 0];\n\n return route;\n}\n"],"mappings":"AAEA,eAAe,SAASA,gBAAT,CAA0BC,KAA1B,EAA+C;EAAA;;EAC5D,IAAIC,OAAiC,GAAGD,KAAxC;;EAEA,OAAO,aAAAC,OAAO,UAAP,4CAASC,MAAT,mBAAgBD,OAAO,CAACE,KAAxB,2DAAiC,CAAjC,EAAoCH,KAApC,KAA6C,IAApD,EAA0D;IAAA;;IACxDC,OAAO,GAAGA,OAAO,CAACC,MAAR,oBAAeD,OAAO,CAACE,KAAvB,6DAAgC,CAAhC,EAAmCH,KAA7C;EACD;;EAED,MAAMI,KAAK,gBAAGH,OAAH,8CAAG,UAASC,MAAT,iCAAgBD,OAAhB,8CAAgB,UAASE,KAAzB,6DAAkC,CAAlC,CAAd;EAEA,OAAOC,KAAP;AACD"}
1
+ {"version":3,"names":["findFocusedRoute","state","current","routes","index","route"],"sourceRoot":"../../src","sources":["findFocusedRoute.tsx"],"mappings":"AAEA,eAAe,SAASA,gBAAgB,CAACC,KAAmB,EAAE;EAAA;EAC5D,IAAIC,OAAiC,GAAGD,KAAK;EAE7C,OAAO,aAAAC,OAAO,6CAAP,SAASC,MAAM,CAACD,OAAO,CAACE,KAAK,IAAI,CAAC,CAAC,CAACH,KAAK,KAAI,IAAI,EAAE;IAAA;IACxDC,OAAO,GAAGA,OAAO,CAACC,MAAM,CAACD,OAAO,CAACE,KAAK,IAAI,CAAC,CAAC,CAACH,KAAK;EACpD;EAEA,MAAMI,KAAK,gBAAGH,OAAO,8CAAP,UAASC,MAAM,CAAC,cAAAD,OAAO,8CAAP,UAASE,KAAK,KAAI,CAAC,CAAC;EAElD,OAAOC,KAAK;AACd"}
@@ -2,11 +2,9 @@
2
2
  export default function fromEntries(entries) {
3
3
  return entries.reduce((acc, _ref) => {
4
4
  let [k, v] = _ref;
5
-
6
5
  if (acc.hasOwnProperty(k)) {
7
6
  throw new Error(`A value for key '${k}' already exists in the object.`);
8
7
  }
9
-
10
8
  acc[k] = v;
11
9
  return acc;
12
10
  }, {});
@@ -1 +1 @@
1
- {"version":3,"names":["fromEntries","entries","reduce","acc","k","v","hasOwnProperty","Error"],"sources":["fromEntries.tsx"],"sourcesContent":["// Object.fromEntries is not available in older iOS versions\nexport default function fromEntries<K extends string, V>(\n entries: (readonly [K, V])[]\n) {\n return entries.reduce((acc, [k, v]) => {\n if (acc.hasOwnProperty(k)) {\n throw new Error(`A value for key '${k}' already exists in the object.`);\n }\n\n acc[k] = v;\n return acc;\n }, {} as Record<K, V>);\n}\n"],"mappings":"AAAA;AACA,eAAe,SAASA,WAAT,CACbC,OADa,EAEb;EACA,OAAOA,OAAO,CAACC,MAAR,CAAe,CAACC,GAAD,WAAiB;IAAA,IAAX,CAACC,CAAD,EAAIC,CAAJ,CAAW;;IACrC,IAAIF,GAAG,CAACG,cAAJ,CAAmBF,CAAnB,CAAJ,EAA2B;MACzB,MAAM,IAAIG,KAAJ,CAAW,oBAAmBH,CAAE,iCAAhC,CAAN;IACD;;IAEDD,GAAG,CAACC,CAAD,CAAH,GAASC,CAAT;IACA,OAAOF,GAAP;EACD,CAPM,EAOJ,EAPI,CAAP;AAQD"}
1
+ {"version":3,"names":["fromEntries","entries","reduce","acc","k","v","hasOwnProperty","Error"],"sourceRoot":"../../src","sources":["fromEntries.tsx"],"mappings":"AAAA;AACA,eAAe,SAASA,WAAW,CACjCC,OAA4B,EAC5B;EACA,OAAOA,OAAO,CAACC,MAAM,CAAC,CAACC,GAAG,WAAa;IAAA,IAAX,CAACC,CAAC,EAAEC,CAAC,CAAC;IAChC,IAAIF,GAAG,CAACG,cAAc,CAACF,CAAC,CAAC,EAAE;MACzB,MAAM,IAAIG,KAAK,CAAE,oBAAmBH,CAAE,iCAAgC,CAAC;IACzE;IAEAD,GAAG,CAACC,CAAC,CAAC,GAAGC,CAAC;IACV,OAAOF,GAAG;EACZ,CAAC,EAAE,CAAC,CAAC,CAAiB;AACxB"}