one 1.21.13 → 1.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (750) hide show
  1. package/dist/cjs/Root.cjs +2 -2
  2. package/dist/cjs/Root.native.js +2 -2
  3. package/dist/cjs/Root.native.js.map +1 -1
  4. package/dist/cjs/cli/build.cjs +9 -17
  5. package/dist/cjs/cli/build.native.js +8 -16
  6. package/dist/cjs/cli/build.native.js.map +1 -1
  7. package/dist/cjs/cli.native.js.map +1 -1
  8. package/dist/cjs/clientLoaderResolver.native.js.map +1 -1
  9. package/dist/cjs/config.native.js.map +1 -1
  10. package/dist/cjs/constants.native.js.map +1 -1
  11. package/dist/cjs/constants.test.native.js.map +1 -1
  12. package/dist/cjs/createAPIRoute.native.js.map +1 -1
  13. package/dist/cjs/createApp.cjs +12 -35
  14. package/dist/cjs/createHandleRequest.cjs +4 -2
  15. package/dist/cjs/createHandleRequest.native.js +4 -2
  16. package/dist/cjs/createHandleRequest.native.js.map +1 -1
  17. package/dist/cjs/fallbackViews/Sitemap.cjs +123 -55
  18. package/dist/cjs/fallbackViews/Sitemap.native.js.map +1 -1
  19. package/dist/cjs/fallbackViews/Unmatched.cjs +92 -37
  20. package/dist/cjs/fallbackViews/Unmatched.native.js.map +1 -1
  21. package/dist/cjs/fork/NavigationContainer.cjs +6 -28
  22. package/dist/cjs/fork/NavigationContainer.native.js +5 -27
  23. package/dist/cjs/fork/NavigationContainer.native.js.map +1 -1
  24. package/dist/cjs/{router/renderingRegistry.cjs → fork/localeDirection.cjs} +6 -29
  25. package/dist/cjs/{router/web/ScreenRenderContext.cjs → fork/localeDirection.native.js} +10 -12
  26. package/dist/cjs/fork/localeDirection.native.js.map +1 -0
  27. package/dist/cjs/fork/theme.cjs +71 -0
  28. package/dist/cjs/{router/renderingRegistry.native.js → fork/theme.native.js} +7 -31
  29. package/dist/cjs/fork/theme.native.js.map +1 -0
  30. package/dist/cjs/headless/Presentations.cjs +51 -0
  31. package/dist/cjs/headless/Presentations.native.js +56 -0
  32. package/dist/cjs/headless/Presentations.native.js.map +1 -0
  33. package/dist/cjs/headless/children.cjs +43 -0
  34. package/dist/cjs/headless/children.native.js +46 -0
  35. package/dist/cjs/headless/children.native.js.map +1 -0
  36. package/dist/cjs/headless/devHeadlessNote.cjs +34 -0
  37. package/dist/cjs/{router/web/ScreenRenderContext.native.js → headless/devHeadlessNote.native.js} +11 -12
  38. package/dist/cjs/headless/devHeadlessNote.native.js.map +1 -0
  39. package/dist/cjs/headless/keepMounted.cjs +58 -0
  40. package/dist/cjs/headless/keepMounted.native.js +64 -0
  41. package/dist/cjs/headless/keepMounted.native.js.map +1 -0
  42. package/dist/cjs/headless/types.cjs +18 -0
  43. package/dist/cjs/headless/types.native.js +21 -0
  44. package/dist/cjs/headless/types.native.js.map +1 -0
  45. package/dist/cjs/headless/useDrawer.cjs +83 -0
  46. package/dist/cjs/headless/useDrawer.native.js +95 -0
  47. package/dist/cjs/headless/useDrawer.native.js.map +1 -0
  48. package/dist/cjs/headless/useStack.cjs +75 -0
  49. package/dist/cjs/headless/useStack.native.js +79 -0
  50. package/dist/cjs/headless/useStack.native.js.map +1 -0
  51. package/dist/cjs/headless/useTabs.cjs +62 -0
  52. package/dist/cjs/headless/useTabs.native.js +65 -0
  53. package/dist/cjs/headless/useTabs.native.js.map +1 -0
  54. package/dist/cjs/index.cjs +8 -3
  55. package/dist/cjs/index.native.js +8 -3
  56. package/dist/cjs/index.native.js.map +1 -1
  57. package/dist/cjs/layouts/Drawer.cjs +71 -42
  58. package/dist/cjs/layouts/Drawer.native.js +1 -25
  59. package/dist/cjs/layouts/Drawer.native.js.map +1 -1
  60. package/dist/cjs/layouts/Stack.cjs +9 -13
  61. package/dist/cjs/layouts/Stack.native.js +11 -13
  62. package/dist/cjs/layouts/Stack.native.js.map +1 -1
  63. package/dist/cjs/layouts/Tabs.cjs +104 -88
  64. package/dist/cjs/layouts/Tabs.native.js +1 -13
  65. package/dist/cjs/layouts/Tabs.native.js.map +1 -1
  66. package/dist/cjs/layouts/stack-navigator.cjs +10 -2
  67. package/dist/cjs/layouts/stack-navigator.native.js +5 -1
  68. package/dist/cjs/layouts/stack-navigator.native.js.map +1 -1
  69. package/dist/cjs/layouts/stack-utils/StackHeaderBackButton.cjs +4 -0
  70. package/dist/cjs/layouts/stack-utils/StackHeaderBackButton.native.js +4 -0
  71. package/dist/cjs/layouts/stack-utils/StackHeaderBackButton.native.js.map +1 -1
  72. package/dist/cjs/layouts/stack-utils/StackHeaderComponent.cjs +13 -9
  73. package/dist/cjs/layouts/stack-utils/StackHeaderComponent.native.js +13 -9
  74. package/dist/cjs/layouts/stack-utils/StackHeaderComponent.native.js.map +1 -1
  75. package/dist/cjs/layouts/stack-utils/StackHeaderLeft.cjs +4 -0
  76. package/dist/cjs/layouts/stack-utils/StackHeaderLeft.native.js +4 -0
  77. package/dist/cjs/layouts/stack-utils/StackHeaderLeft.native.js.map +1 -1
  78. package/dist/cjs/layouts/stack-utils/StackHeaderRight.cjs +4 -0
  79. package/dist/cjs/layouts/stack-utils/StackHeaderRight.native.js +4 -0
  80. package/dist/cjs/layouts/stack-utils/StackHeaderRight.native.js.map +1 -1
  81. package/dist/cjs/layouts/stack-utils/StackHeaderSearchBar.cjs +4 -0
  82. package/dist/cjs/layouts/stack-utils/StackHeaderSearchBar.native.js +4 -0
  83. package/dist/cjs/layouts/stack-utils/StackHeaderSearchBar.native.js.map +1 -1
  84. package/dist/cjs/layouts/stack-utils/StackHeaderTitle.cjs +8 -4
  85. package/dist/cjs/layouts/stack-utils/StackHeaderTitle.native.js +8 -4
  86. package/dist/cjs/layouts/stack-utils/StackHeaderTitle.native.js.map +1 -1
  87. package/dist/cjs/layouts/stack-utils/StackScreen.cjs +10 -23
  88. package/dist/cjs/layouts/stack-utils/StackScreen.native.js +21 -27
  89. package/dist/cjs/layouts/stack-utils/StackScreen.native.js.map +1 -1
  90. package/dist/cjs/layouts/stack-utils/__tests__/composition.test.cjs +11 -6
  91. package/dist/cjs/layouts/stack-utils/__tests__/composition.test.native.js +15 -6
  92. package/dist/cjs/layouts/stack-utils/__tests__/composition.test.native.js.map +1 -1
  93. package/dist/cjs/layouts/stack-utils/index.cjs +2 -0
  94. package/dist/cjs/layouts/stack-utils/index.native.js +2 -0
  95. package/dist/cjs/layouts/stack-utils/index.native.js.map +1 -1
  96. package/dist/cjs/layouts/withLayoutContext.cjs +2 -2
  97. package/dist/cjs/layouts/withLayoutContext.native.js +2 -2
  98. package/dist/cjs/layouts/withLayoutContext.native.js.map +1 -1
  99. package/dist/cjs/link/Link.cjs +55 -69
  100. package/dist/cjs/link/Link.native.js.map +1 -1
  101. package/dist/cjs/link/useLinkTo.cjs +3 -17
  102. package/dist/cjs/link/useLinkTo.native.js +1 -23
  103. package/dist/cjs/link/useLinkTo.native.js.map +1 -1
  104. package/dist/cjs/metro-config/withOne.test.cjs +2 -2
  105. package/dist/cjs/metro-config/withOne.test.native.js +2 -2
  106. package/dist/cjs/metro-config/withOne.test.native.js.map +1 -1
  107. package/dist/cjs/router/getRouteArtifactPath.test.native.js.map +1 -1
  108. package/dist/cjs/router/router.cjs +2 -2
  109. package/dist/cjs/router/router.native.js +2 -2
  110. package/dist/cjs/router/router.native.js.map +1 -1
  111. package/dist/cjs/router/useScreens.cjs +31 -72
  112. package/dist/cjs/router/useScreens.native.js +15 -71
  113. package/dist/cjs/router/useScreens.native.js.map +1 -1
  114. package/dist/cjs/router/web/WebStackNavigator.cjs +8 -7
  115. package/dist/cjs/router/web/WebStackNavigator.native.js +8 -7
  116. package/dist/cjs/router/web/WebStackNavigator.native.js.map +1 -1
  117. package/dist/cjs/router/web/WebStackView.cjs +108 -131
  118. package/dist/cjs/router/web/WebStackView.native.js +117 -176
  119. package/dist/cjs/router/web/WebStackView.native.js.map +1 -1
  120. package/dist/cjs/router/web/stackStateUtils.native.js.map +1 -1
  121. package/dist/cjs/screensFeatureFlags.cjs +1 -16
  122. package/dist/cjs/screensFeatureFlags.native.js +3 -3
  123. package/dist/cjs/screensFeatureFlags.native.js.map +1 -1
  124. package/dist/cjs/typed-routes/generateRouteTypes.cjs +3 -10
  125. package/dist/cjs/typed-routes/generateRouteTypes.native.js +3 -10
  126. package/dist/cjs/typed-routes/generateRouteTypes.native.js.map +1 -1
  127. package/dist/cjs/ui/Slot.cjs +4 -25
  128. package/dist/cjs/ui/Slot.native.js.map +1 -1
  129. package/dist/cjs/ui/TabList.cjs +7 -19
  130. package/dist/cjs/ui/TabList.native.js.map +1 -1
  131. package/dist/cjs/ui/TabSlot.cjs +15 -47
  132. package/dist/cjs/ui/TabSlot.native.js.map +1 -1
  133. package/dist/cjs/ui/TabTrigger.cjs +30 -134
  134. package/dist/cjs/ui/TabTrigger.native.js +14 -115
  135. package/dist/cjs/ui/TabTrigger.native.js.map +1 -1
  136. package/dist/cjs/ui/Tabs.cjs +15 -155
  137. package/dist/cjs/ui/Tabs.native.js +4 -144
  138. package/dist/cjs/ui/Tabs.native.js.map +1 -1
  139. package/dist/cjs/ui/Tabs.shared.cjs +160 -0
  140. package/dist/cjs/ui/Tabs.shared.native.js +174 -0
  141. package/dist/cjs/ui/Tabs.shared.native.js.map +1 -0
  142. package/dist/cjs/ui/useTabTrigger.cjs +122 -0
  143. package/dist/cjs/ui/useTabTrigger.native.js +125 -0
  144. package/dist/cjs/ui/useTabTrigger.native.js.map +1 -0
  145. package/dist/cjs/useBlocker.cjs +55 -93
  146. package/dist/cjs/useLoader.native.js +0 -18
  147. package/dist/cjs/useLoader.native.js.map +1 -1
  148. package/dist/cjs/utils/platform.cjs +28 -0
  149. package/dist/cjs/utils/platform.native.js +32 -0
  150. package/dist/cjs/utils/platform.native.js.map +1 -0
  151. package/dist/cjs/utils/routeIndex.cjs +80 -0
  152. package/dist/cjs/utils/routeIndex.native.js +86 -0
  153. package/dist/cjs/utils/routeIndex.native.js.map +1 -0
  154. package/dist/cjs/utils/routeIndex.test.cjs +51 -0
  155. package/dist/cjs/utils/routeIndex.test.native.js +54 -0
  156. package/dist/cjs/utils/routeIndex.test.native.js.map +1 -0
  157. package/dist/cjs/utils/style.cjs +21 -1
  158. package/dist/cjs/utils/style.native.js +40 -1
  159. package/dist/cjs/utils/style.native.js.map +1 -1
  160. package/dist/cjs/views/LoadProgressBar.cjs +59 -23
  161. package/dist/cjs/views/LoadProgressBar.native.js.map +1 -1
  162. package/dist/cjs/views/Protected.cjs +4 -0
  163. package/dist/cjs/views/Protected.native.js +4 -0
  164. package/dist/cjs/views/Protected.native.js.map +1 -1
  165. package/dist/cjs/views/RootErrorBoundary.cjs +107 -148
  166. package/dist/cjs/views/RootErrorBoundary.native.js +30 -140
  167. package/dist/cjs/views/RootErrorBoundary.native.js.map +1 -1
  168. package/dist/cjs/views/RouteErrorView.cjs +108 -0
  169. package/dist/cjs/views/RouteErrorView.native.js +110 -0
  170. package/dist/cjs/views/RouteErrorView.native.js.map +1 -0
  171. package/dist/cjs/views/Screen.cjs +5 -1
  172. package/dist/cjs/views/Screen.native.js +4 -0
  173. package/dist/cjs/views/Screen.native.js.map +1 -1
  174. package/dist/cjs/vite/getManifest.cjs +4 -20
  175. package/dist/cjs/vite/getManifest.native.js +4 -20
  176. package/dist/cjs/vite/getManifest.native.js.map +1 -1
  177. package/dist/cjs/vite/one.cjs +12 -46
  178. package/dist/cjs/vite/one.native.js +23 -59
  179. package/dist/cjs/vite/one.native.js.map +1 -1
  180. package/dist/cjs/vite/plugins/bundledDevPlugin.cjs +130 -0
  181. package/dist/cjs/vite/plugins/bundledDevPlugin.native.js +154 -0
  182. package/dist/cjs/vite/plugins/bundledDevPlugin.native.js.map +1 -0
  183. package/dist/cjs/vite/plugins/devtoolsPlugin.cjs +4 -0
  184. package/dist/cjs/vite/plugins/devtoolsPlugin.native.js +5 -0
  185. package/dist/cjs/vite/plugins/devtoolsPlugin.native.js.map +1 -1
  186. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.cjs +15 -6
  187. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js +15 -5
  188. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
  189. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.test.cjs +12 -2
  190. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.test.native.js +12 -2
  191. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.test.native.js.map +1 -1
  192. package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.cjs +10 -6
  193. package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.native.js +11 -7
  194. package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.native.js.map +1 -1
  195. package/dist/cjs/vite/plugins/routeModuleHmrPlugin.cjs +79 -0
  196. package/dist/cjs/vite/plugins/routeModuleHmrPlugin.native.js +84 -0
  197. package/dist/cjs/vite/plugins/routeModuleHmrPlugin.native.js.map +1 -0
  198. package/dist/cjs/vite/plugins/routeModuleHmrPlugin.test.cjs +74 -0
  199. package/dist/cjs/vite/plugins/routeModuleHmrPlugin.test.native.js +83 -0
  200. package/dist/cjs/vite/plugins/routeModuleHmrPlugin.test.native.js.map +1 -0
  201. package/dist/cjs/vite/plugins/virtualEntryPlugin.cjs +11 -5
  202. package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js +20 -10
  203. package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js.map +1 -1
  204. package/dist/cjs/vite/plugins/virtualEntryPlugin.test.cjs +10 -2
  205. package/dist/cjs/vite/plugins/virtualEntryPlugin.test.native.js +14 -2
  206. package/dist/cjs/vite/plugins/virtualEntryPlugin.test.native.js.map +1 -1
  207. package/dist/esm/Root.mjs +1 -1
  208. package/dist/esm/Root.mjs.map +1 -1
  209. package/dist/esm/Root.native.js +1 -1
  210. package/dist/esm/Root.native.js.map +1 -1
  211. package/dist/esm/cli/build.mjs +9 -17
  212. package/dist/esm/cli/build.mjs.map +1 -1
  213. package/dist/esm/cli/build.native.js +8 -16
  214. package/dist/esm/cli/build.native.js.map +1 -1
  215. package/dist/esm/createApp.mjs +12 -35
  216. package/dist/esm/createApp.mjs.map +1 -1
  217. package/dist/esm/createHandleRequest.mjs +4 -2
  218. package/dist/esm/createHandleRequest.mjs.map +1 -1
  219. package/dist/esm/createHandleRequest.native.js +4 -2
  220. package/dist/esm/createHandleRequest.native.js.map +1 -1
  221. package/dist/esm/fallbackViews/Sitemap.mjs +110 -53
  222. package/dist/esm/fallbackViews/Sitemap.mjs.map +1 -1
  223. package/dist/esm/fallbackViews/Sitemap.native.js.map +1 -1
  224. package/dist/esm/fallbackViews/Unmatched.mjs +89 -34
  225. package/dist/esm/fallbackViews/Unmatched.mjs.map +1 -1
  226. package/dist/esm/fallbackViews/Unmatched.native.js.map +1 -1
  227. package/dist/esm/fork/NavigationContainer.mjs +6 -28
  228. package/dist/esm/fork/NavigationContainer.mjs.map +1 -1
  229. package/dist/esm/fork/NavigationContainer.native.js +5 -27
  230. package/dist/esm/fork/NavigationContainer.native.js.map +1 -1
  231. package/dist/esm/fork/localeDirection.mjs +5 -0
  232. package/dist/esm/fork/localeDirection.mjs.map +1 -0
  233. package/dist/esm/fork/localeDirection.native.js +6 -0
  234. package/dist/esm/fork/localeDirection.native.js.map +1 -0
  235. package/dist/esm/fork/theme.mjs +45 -0
  236. package/dist/esm/fork/theme.mjs.map +1 -0
  237. package/dist/esm/fork/theme.native.js +3 -0
  238. package/dist/esm/fork/theme.native.js.map +1 -0
  239. package/dist/esm/headless/Presentations.mjs +25 -0
  240. package/dist/esm/headless/Presentations.mjs.map +1 -0
  241. package/dist/esm/headless/Presentations.native.js +28 -0
  242. package/dist/esm/headless/Presentations.native.js.map +1 -0
  243. package/dist/esm/headless/children.mjs +16 -0
  244. package/dist/esm/headless/children.mjs.map +1 -0
  245. package/dist/esm/headless/children.native.js +16 -0
  246. package/dist/esm/headless/children.native.js.map +1 -0
  247. package/dist/esm/headless/devHeadlessNote.mjs +9 -0
  248. package/dist/esm/headless/devHeadlessNote.mjs.map +1 -0
  249. package/dist/esm/headless/devHeadlessNote.native.js +9 -0
  250. package/dist/esm/headless/devHeadlessNote.native.js.map +1 -0
  251. package/dist/esm/headless/keepMounted.mjs +32 -0
  252. package/dist/esm/headless/keepMounted.mjs.map +1 -0
  253. package/dist/esm/headless/keepMounted.native.js +36 -0
  254. package/dist/esm/headless/keepMounted.native.js.map +1 -0
  255. package/dist/esm/headless/types.mjs +2 -0
  256. package/dist/esm/headless/types.mjs.map +1 -0
  257. package/dist/esm/headless/types.native.js +2 -0
  258. package/dist/esm/headless/types.native.js.map +1 -0
  259. package/dist/esm/headless/useDrawer.mjs +57 -0
  260. package/dist/esm/headless/useDrawer.mjs.map +1 -0
  261. package/dist/esm/headless/useDrawer.native.js +67 -0
  262. package/dist/esm/headless/useDrawer.native.js.map +1 -0
  263. package/dist/esm/headless/useStack.mjs +49 -0
  264. package/dist/esm/headless/useStack.mjs.map +1 -0
  265. package/dist/esm/headless/useStack.native.js +51 -0
  266. package/dist/esm/headless/useStack.native.js.map +1 -0
  267. package/dist/esm/headless/useTabs.mjs +37 -0
  268. package/dist/esm/headless/useTabs.mjs.map +1 -0
  269. package/dist/esm/headless/useTabs.native.js +38 -0
  270. package/dist/esm/headless/useTabs.native.js.map +1 -0
  271. package/dist/esm/index.js +5 -2
  272. package/dist/esm/index.js.map +1 -1
  273. package/dist/esm/index.mjs +5 -2
  274. package/dist/esm/index.mjs.map +1 -1
  275. package/dist/esm/index.native.js +5 -2
  276. package/dist/esm/index.native.js.map +1 -1
  277. package/dist/esm/layouts/Drawer.mjs +69 -29
  278. package/dist/esm/layouts/Drawer.mjs.map +1 -1
  279. package/dist/esm/layouts/Drawer.native.js +2 -26
  280. package/dist/esm/layouts/Drawer.native.js.map +1 -1
  281. package/dist/esm/layouts/Stack.mjs +10 -14
  282. package/dist/esm/layouts/Stack.mjs.map +1 -1
  283. package/dist/esm/layouts/Stack.native.js +12 -14
  284. package/dist/esm/layouts/Stack.native.js.map +1 -1
  285. package/dist/esm/layouts/Tabs.mjs +101 -74
  286. package/dist/esm/layouts/Tabs.mjs.map +1 -1
  287. package/dist/esm/layouts/Tabs.native.js +2 -14
  288. package/dist/esm/layouts/Tabs.native.js.map +1 -1
  289. package/dist/esm/layouts/stack-navigator.mjs +8 -1
  290. package/dist/esm/layouts/stack-navigator.mjs.map +1 -1
  291. package/dist/esm/layouts/stack-navigator.native.js +4 -1
  292. package/dist/esm/layouts/stack-navigator.native.js.map +1 -1
  293. package/dist/esm/layouts/stack-utils/StackHeaderBackButton.mjs +4 -0
  294. package/dist/esm/layouts/stack-utils/StackHeaderBackButton.mjs.map +1 -1
  295. package/dist/esm/layouts/stack-utils/StackHeaderBackButton.native.js +4 -0
  296. package/dist/esm/layouts/stack-utils/StackHeaderBackButton.native.js.map +1 -1
  297. package/dist/esm/layouts/stack-utils/StackHeaderComponent.mjs +7 -3
  298. package/dist/esm/layouts/stack-utils/StackHeaderComponent.mjs.map +1 -1
  299. package/dist/esm/layouts/stack-utils/StackHeaderComponent.native.js +7 -3
  300. package/dist/esm/layouts/stack-utils/StackHeaderComponent.native.js.map +1 -1
  301. package/dist/esm/layouts/stack-utils/StackHeaderLeft.mjs +4 -0
  302. package/dist/esm/layouts/stack-utils/StackHeaderLeft.mjs.map +1 -1
  303. package/dist/esm/layouts/stack-utils/StackHeaderLeft.native.js +4 -0
  304. package/dist/esm/layouts/stack-utils/StackHeaderLeft.native.js.map +1 -1
  305. package/dist/esm/layouts/stack-utils/StackHeaderRight.mjs +4 -0
  306. package/dist/esm/layouts/stack-utils/StackHeaderRight.mjs.map +1 -1
  307. package/dist/esm/layouts/stack-utils/StackHeaderRight.native.js +4 -0
  308. package/dist/esm/layouts/stack-utils/StackHeaderRight.native.js.map +1 -1
  309. package/dist/esm/layouts/stack-utils/StackHeaderSearchBar.mjs +4 -0
  310. package/dist/esm/layouts/stack-utils/StackHeaderSearchBar.mjs.map +1 -1
  311. package/dist/esm/layouts/stack-utils/StackHeaderSearchBar.native.js +4 -0
  312. package/dist/esm/layouts/stack-utils/StackHeaderSearchBar.native.js.map +1 -1
  313. package/dist/esm/layouts/stack-utils/StackHeaderTitle.mjs +9 -5
  314. package/dist/esm/layouts/stack-utils/StackHeaderTitle.mjs.map +1 -1
  315. package/dist/esm/layouts/stack-utils/StackHeaderTitle.native.js +9 -5
  316. package/dist/esm/layouts/stack-utils/StackHeaderTitle.native.js.map +1 -1
  317. package/dist/esm/layouts/stack-utils/StackScreen.mjs +10 -23
  318. package/dist/esm/layouts/stack-utils/StackScreen.mjs.map +1 -1
  319. package/dist/esm/layouts/stack-utils/StackScreen.native.js +23 -29
  320. package/dist/esm/layouts/stack-utils/StackScreen.native.js.map +1 -1
  321. package/dist/esm/layouts/stack-utils/__tests__/composition.test.mjs +12 -7
  322. package/dist/esm/layouts/stack-utils/__tests__/composition.test.mjs.map +1 -1
  323. package/dist/esm/layouts/stack-utils/__tests__/composition.test.native.js +16 -7
  324. package/dist/esm/layouts/stack-utils/__tests__/composition.test.native.js.map +1 -1
  325. package/dist/esm/layouts/stack-utils/index.mjs +2 -0
  326. package/dist/esm/layouts/stack-utils/index.mjs.map +1 -1
  327. package/dist/esm/layouts/stack-utils/index.native.js +2 -0
  328. package/dist/esm/layouts/stack-utils/index.native.js.map +1 -1
  329. package/dist/esm/layouts/withLayoutContext.mjs +2 -2
  330. package/dist/esm/layouts/withLayoutContext.mjs.map +1 -1
  331. package/dist/esm/layouts/withLayoutContext.native.js +2 -2
  332. package/dist/esm/layouts/withLayoutContext.native.js.map +1 -1
  333. package/dist/esm/link/Link.mjs +57 -68
  334. package/dist/esm/link/Link.mjs.map +1 -1
  335. package/dist/esm/link/useLinkTo.mjs +4 -19
  336. package/dist/esm/link/useLinkTo.mjs.map +1 -1
  337. package/dist/esm/link/useLinkTo.native.js +2 -25
  338. package/dist/esm/link/useLinkTo.native.js.map +1 -1
  339. package/dist/esm/metro-config/withOne.test.mjs +2 -2
  340. package/dist/esm/metro-config/withOne.test.mjs.map +1 -1
  341. package/dist/esm/metro-config/withOne.test.native.js +2 -2
  342. package/dist/esm/metro-config/withOne.test.native.js.map +1 -1
  343. package/dist/esm/router/getRouteArtifactPath.test.mjs.map +1 -1
  344. package/dist/esm/router/getRouteArtifactPath.test.native.js.map +1 -1
  345. package/dist/esm/router/router.mjs +2 -2
  346. package/dist/esm/router/router.mjs.map +1 -1
  347. package/dist/esm/router/router.native.js +2 -2
  348. package/dist/esm/router/router.native.js.map +1 -1
  349. package/dist/esm/router/useScreens.mjs +30 -71
  350. package/dist/esm/router/useScreens.mjs.map +1 -1
  351. package/dist/esm/router/useScreens.native.js +13 -69
  352. package/dist/esm/router/useScreens.native.js.map +1 -1
  353. package/dist/esm/router/useScreens.test.mjs +1 -1
  354. package/dist/esm/router/useScreens.test.mjs.map +1 -1
  355. package/dist/esm/router/web/WebStackNavigator.mjs +5 -4
  356. package/dist/esm/router/web/WebStackNavigator.mjs.map +1 -1
  357. package/dist/esm/router/web/WebStackNavigator.native.js +5 -4
  358. package/dist/esm/router/web/WebStackNavigator.native.js.map +1 -1
  359. package/dist/esm/router/web/WebStackView.mjs +99 -131
  360. package/dist/esm/router/web/WebStackView.mjs.map +1 -1
  361. package/dist/esm/router/web/WebStackView.native.js +107 -175
  362. package/dist/esm/router/web/WebStackView.native.js.map +1 -1
  363. package/dist/esm/router/web/stackStateUtils.mjs.map +1 -1
  364. package/dist/esm/router/web/stackStateUtils.native.js.map +1 -1
  365. package/dist/esm/screensFeatureFlags.mjs +1 -16
  366. package/dist/esm/screensFeatureFlags.mjs.map +1 -1
  367. package/dist/esm/screensFeatureFlags.native.js.map +1 -1
  368. package/dist/esm/typed-routes/generateRouteTypes.mjs +3 -10
  369. package/dist/esm/typed-routes/generateRouteTypes.mjs.map +1 -1
  370. package/dist/esm/typed-routes/generateRouteTypes.native.js +3 -10
  371. package/dist/esm/typed-routes/generateRouteTypes.native.js.map +1 -1
  372. package/dist/esm/ui/Slot.mjs +1 -22
  373. package/dist/esm/ui/Slot.mjs.map +1 -1
  374. package/dist/esm/ui/Slot.native.js.map +1 -1
  375. package/dist/esm/ui/TabList.mjs +3 -15
  376. package/dist/esm/ui/TabList.mjs.map +1 -1
  377. package/dist/esm/ui/TabList.native.js.map +1 -1
  378. package/dist/esm/ui/TabSlot.mjs +12 -44
  379. package/dist/esm/ui/TabSlot.mjs.map +1 -1
  380. package/dist/esm/ui/TabSlot.native.js.map +1 -1
  381. package/dist/esm/ui/TabTrigger.mjs +25 -129
  382. package/dist/esm/ui/TabTrigger.mjs.map +1 -1
  383. package/dist/esm/ui/TabTrigger.native.js +13 -114
  384. package/dist/esm/ui/TabTrigger.native.js.map +1 -1
  385. package/dist/esm/ui/Tabs.mjs +7 -145
  386. package/dist/esm/ui/Tabs.mjs.map +1 -1
  387. package/dist/esm/ui/Tabs.native.js +5 -143
  388. package/dist/esm/ui/Tabs.native.js.map +1 -1
  389. package/dist/esm/ui/Tabs.shared.mjs +134 -0
  390. package/dist/esm/ui/Tabs.shared.mjs.map +1 -0
  391. package/dist/esm/ui/Tabs.shared.native.js +145 -0
  392. package/dist/esm/ui/Tabs.shared.native.js.map +1 -0
  393. package/dist/esm/ui/useTabTrigger.mjs +96 -0
  394. package/dist/esm/ui/useTabTrigger.mjs.map +1 -0
  395. package/dist/esm/ui/useTabTrigger.native.js +96 -0
  396. package/dist/esm/ui/useTabTrigger.native.js.map +1 -0
  397. package/dist/esm/useBlocker.mjs +55 -93
  398. package/dist/esm/useBlocker.mjs.map +1 -1
  399. package/dist/esm/useLoader.native.js +0 -18
  400. package/dist/esm/useLoader.native.js.map +1 -1
  401. package/dist/esm/utils/platform.mjs +3 -0
  402. package/dist/esm/utils/platform.mjs.map +1 -0
  403. package/dist/esm/utils/platform.native.js +4 -0
  404. package/dist/esm/utils/platform.native.js.map +1 -0
  405. package/dist/esm/utils/routeIndex.mjs +43 -0
  406. package/dist/esm/utils/routeIndex.mjs.map +1 -0
  407. package/dist/esm/utils/routeIndex.native.js +46 -0
  408. package/dist/esm/utils/routeIndex.native.js.map +1 -0
  409. package/dist/esm/utils/routeIndex.test.mjs +52 -0
  410. package/dist/esm/utils/routeIndex.test.mjs.map +1 -0
  411. package/dist/esm/utils/routeIndex.test.native.js +52 -0
  412. package/dist/esm/utils/routeIndex.test.native.js.map +1 -0
  413. package/dist/esm/utils/style.mjs +20 -1
  414. package/dist/esm/utils/style.mjs.map +1 -1
  415. package/dist/esm/utils/style.native.js +39 -1
  416. package/dist/esm/utils/style.native.js.map +1 -1
  417. package/dist/esm/views/LoadProgressBar.mjs +45 -20
  418. package/dist/esm/views/LoadProgressBar.mjs.map +1 -1
  419. package/dist/esm/views/LoadProgressBar.native.js.map +1 -1
  420. package/dist/esm/views/Protected.mjs +4 -0
  421. package/dist/esm/views/Protected.mjs.map +1 -1
  422. package/dist/esm/views/Protected.native.js +4 -0
  423. package/dist/esm/views/Protected.native.js.map +1 -1
  424. package/dist/esm/views/RootErrorBoundary.mjs +106 -147
  425. package/dist/esm/views/RootErrorBoundary.mjs.map +1 -1
  426. package/dist/esm/views/RootErrorBoundary.native.js +37 -145
  427. package/dist/esm/views/RootErrorBoundary.native.js.map +1 -1
  428. package/dist/esm/views/RouteErrorView.mjs +83 -0
  429. package/dist/esm/views/RouteErrorView.mjs.map +1 -0
  430. package/dist/esm/views/RouteErrorView.native.js +82 -0
  431. package/dist/esm/views/RouteErrorView.native.js.map +1 -0
  432. package/dist/esm/views/Screen.mjs +4 -0
  433. package/dist/esm/views/Screen.mjs.map +1 -1
  434. package/dist/esm/views/Screen.native.js +4 -0
  435. package/dist/esm/views/Screen.native.js.map +1 -1
  436. package/dist/esm/vite/getManifest.mjs +4 -9
  437. package/dist/esm/vite/getManifest.mjs.map +1 -1
  438. package/dist/esm/vite/getManifest.native.js +4 -9
  439. package/dist/esm/vite/getManifest.native.js.map +1 -1
  440. package/dist/esm/vite/one.mjs +12 -46
  441. package/dist/esm/vite/one.mjs.map +1 -1
  442. package/dist/esm/vite/one.native.js +23 -59
  443. package/dist/esm/vite/one.native.js.map +1 -1
  444. package/dist/esm/vite/plugins/bundledDevPlugin.mjs +94 -0
  445. package/dist/esm/vite/plugins/bundledDevPlugin.mjs.map +1 -0
  446. package/dist/esm/vite/plugins/bundledDevPlugin.native.js +115 -0
  447. package/dist/esm/vite/plugins/bundledDevPlugin.native.js.map +1 -0
  448. package/dist/esm/vite/plugins/devtoolsPlugin.mjs +4 -0
  449. package/dist/esm/vite/plugins/devtoolsPlugin.mjs.map +1 -1
  450. package/dist/esm/vite/plugins/devtoolsPlugin.native.js +5 -0
  451. package/dist/esm/vite/plugins/devtoolsPlugin.native.js.map +1 -1
  452. package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs +15 -6
  453. package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs.map +1 -1
  454. package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js +15 -5
  455. package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
  456. package/dist/esm/vite/plugins/fileSystemRouterPlugin.test.mjs +12 -2
  457. package/dist/esm/vite/plugins/fileSystemRouterPlugin.test.mjs.map +1 -1
  458. package/dist/esm/vite/plugins/fileSystemRouterPlugin.test.native.js +12 -2
  459. package/dist/esm/vite/plugins/fileSystemRouterPlugin.test.native.js.map +1 -1
  460. package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.mjs +10 -6
  461. package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.mjs.map +1 -1
  462. package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.native.js +11 -7
  463. package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.native.js.map +1 -1
  464. package/dist/esm/vite/plugins/routeModuleHmrPlugin.mjs +43 -0
  465. package/dist/esm/vite/plugins/routeModuleHmrPlugin.mjs.map +1 -0
  466. package/dist/esm/vite/plugins/routeModuleHmrPlugin.native.js +45 -0
  467. package/dist/esm/vite/plugins/routeModuleHmrPlugin.native.js.map +1 -0
  468. package/dist/esm/vite/plugins/routeModuleHmrPlugin.test.mjs +75 -0
  469. package/dist/esm/vite/plugins/routeModuleHmrPlugin.test.mjs.map +1 -0
  470. package/dist/esm/vite/plugins/routeModuleHmrPlugin.test.native.js +81 -0
  471. package/dist/esm/vite/plugins/routeModuleHmrPlugin.test.native.js.map +1 -0
  472. package/dist/esm/vite/plugins/virtualEntryPlugin.mjs +11 -5
  473. package/dist/esm/vite/plugins/virtualEntryPlugin.mjs.map +1 -1
  474. package/dist/esm/vite/plugins/virtualEntryPlugin.native.js +20 -10
  475. package/dist/esm/vite/plugins/virtualEntryPlugin.native.js.map +1 -1
  476. package/dist/esm/vite/plugins/virtualEntryPlugin.test.mjs +10 -2
  477. package/dist/esm/vite/plugins/virtualEntryPlugin.test.mjs.map +1 -1
  478. package/dist/esm/vite/plugins/virtualEntryPlugin.test.native.js +14 -2
  479. package/dist/esm/vite/plugins/virtualEntryPlugin.test.native.js.map +1 -1
  480. package/package.json +27 -28
  481. package/src/Root.tsx +2 -6
  482. package/src/cli/build.ts +25 -37
  483. package/src/createApp.tsx +15 -42
  484. package/src/createHandleRequest.ts +6 -2
  485. package/src/fallbackViews/Sitemap.web.tsx +149 -0
  486. package/src/fallbackViews/Unmatched.web.tsx +91 -0
  487. package/src/fork/NavigationContainer.tsx +12 -39
  488. package/src/fork/localeDirection.native.ts +6 -0
  489. package/src/fork/localeDirection.ts +11 -0
  490. package/src/fork/theme.native.ts +1 -0
  491. package/src/fork/theme.ts +41 -0
  492. package/src/headless/Presentations.tsx +37 -0
  493. package/src/headless/children.ts +25 -0
  494. package/src/headless/devHeadlessNote.ts +13 -0
  495. package/src/headless/keepMounted.tsx +46 -0
  496. package/src/headless/types.ts +72 -0
  497. package/src/headless/useDrawer.tsx +88 -0
  498. package/src/headless/useStack.ts +74 -0
  499. package/src/headless/useTabs.ts +40 -0
  500. package/src/index.ts +14 -18
  501. package/src/layouts/Drawer.tsx +4 -35
  502. package/src/layouts/Drawer.web.tsx +117 -0
  503. package/src/layouts/Stack.tsx +54 -62
  504. package/src/layouts/Tabs.tsx +6 -32
  505. package/src/layouts/Tabs.web.tsx +151 -0
  506. package/src/layouts/stack-navigator.ts +6 -2
  507. package/src/layouts/stack-navigator.web.ts +8 -0
  508. package/src/layouts/stack-utils/StackHeaderBackButton.tsx +4 -0
  509. package/src/layouts/stack-utils/StackHeaderComponent.tsx +7 -3
  510. package/src/layouts/stack-utils/StackHeaderLeft.tsx +4 -0
  511. package/src/layouts/stack-utils/StackHeaderRight.tsx +4 -0
  512. package/src/layouts/stack-utils/StackHeaderSearchBar.tsx +4 -0
  513. package/src/layouts/stack-utils/StackHeaderTitle.tsx +9 -5
  514. package/src/layouts/stack-utils/StackScreen.tsx +31 -36
  515. package/src/layouts/stack-utils/__tests__/composition.test.tsx +12 -11
  516. package/src/layouts/stack-utils/index.tsx +2 -0
  517. package/src/layouts/withLayoutContext.tsx +5 -2
  518. package/src/link/Link.web.tsx +84 -0
  519. package/src/link/useLinkTo.tsx +2 -2
  520. package/src/metro-config/withOne.test.ts +5 -4
  521. package/src/router/getRouteArtifactPath.test.ts +1 -6
  522. package/src/router/router.ts +2 -2
  523. package/src/router/useScreens.tsx +31 -71
  524. package/src/router/web/WebStackNavigator.tsx +22 -20
  525. package/src/router/web/WebStackView.tsx +148 -188
  526. package/src/router/web/stackStateUtils.ts +2 -1
  527. package/src/screensFeatureFlags.native.ts +23 -0
  528. package/src/screensFeatureFlags.ts +3 -23
  529. package/src/typed-routes/generateRouteTypes.ts +4 -10
  530. package/src/ui/Slot.web.tsx +9 -0
  531. package/src/ui/TabList.web.tsx +27 -0
  532. package/src/ui/TabSlot.web.tsx +90 -0
  533. package/src/ui/TabTrigger.tsx +33 -249
  534. package/src/ui/TabTrigger.web.tsx +71 -0
  535. package/src/ui/Tabs.shared.tsx +230 -0
  536. package/src/ui/Tabs.tsx +5 -295
  537. package/src/ui/Tabs.web.tsx +40 -0
  538. package/src/ui/useTabTrigger.ts +182 -0
  539. package/src/useBlocker.ts +2 -3
  540. package/src/useLoader.ts +6 -2
  541. package/src/utils/platform.ts +7 -0
  542. package/src/utils/platform.web.ts +1 -0
  543. package/src/utils/routeIndex.test.ts +55 -0
  544. package/src/utils/routeIndex.ts +59 -0
  545. package/src/utils/style.ts +22 -1
  546. package/src/views/LoadProgressBar.web.tsx +135 -0
  547. package/src/views/Protected.tsx +4 -1
  548. package/src/views/RootErrorBoundary.tsx +2 -158
  549. package/src/views/RootErrorBoundary.web.tsx +163 -0
  550. package/src/views/RouteErrorView.tsx +66 -0
  551. package/src/views/RouteErrorView.web.tsx +62 -0
  552. package/src/views/Screen.tsx +3 -0
  553. package/src/vite/getManifest.ts +4 -6
  554. package/src/vite/one.ts +13 -59
  555. package/src/vite/plugins/bundledDevPlugin.ts +119 -0
  556. package/src/vite/plugins/devtoolsPlugin.ts +19 -0
  557. package/src/vite/plugins/fileSystemRouterPlugin.test.ts +19 -11
  558. package/src/vite/plugins/fileSystemRouterPlugin.tsx +31 -6
  559. package/src/vite/plugins/generateFileSystemRouteTypesPlugin.tsx +22 -11
  560. package/src/vite/plugins/routeModuleHmrPlugin.test.ts +73 -0
  561. package/src/vite/plugins/routeModuleHmrPlugin.ts +54 -0
  562. package/src/vite/plugins/virtualEntryPlugin.test.ts +10 -1
  563. package/src/vite/plugins/virtualEntryPlugin.ts +37 -9
  564. package/src/vite/types.ts +11 -0
  565. package/types/Root.d.ts +1 -1
  566. package/types/Root.d.ts.map +1 -1
  567. package/types/cli/build.d.ts.map +1 -1
  568. package/types/createApp.d.ts.map +1 -1
  569. package/types/createHandleRequest.d.ts +2 -1
  570. package/types/createHandleRequest.d.ts.map +1 -1
  571. package/types/fallbackViews/Sitemap.web.d.ts +4 -0
  572. package/types/fallbackViews/Sitemap.web.d.ts.map +1 -0
  573. package/types/fallbackViews/Unmatched.web.d.ts +2 -0
  574. package/types/fallbackViews/Unmatched.web.d.ts.map +1 -0
  575. package/types/fork/NavigationContainer.d.ts.map +1 -1
  576. package/types/fork/localeDirection.d.ts +9 -0
  577. package/types/fork/localeDirection.d.ts.map +1 -0
  578. package/types/fork/localeDirection.native.d.ts +3 -0
  579. package/types/fork/localeDirection.native.d.ts.map +1 -0
  580. package/types/fork/theme.d.ts +4 -0
  581. package/types/fork/theme.d.ts.map +1 -0
  582. package/types/fork/theme.native.d.ts +2 -0
  583. package/types/fork/theme.native.d.ts.map +1 -0
  584. package/types/fork/useLinking.native.d.ts +4 -4
  585. package/types/headless/Presentations.d.ts +13 -0
  586. package/types/headless/Presentations.d.ts.map +1 -0
  587. package/types/headless/children.d.ts +5 -0
  588. package/types/headless/children.d.ts.map +1 -0
  589. package/types/headless/devHeadlessNote.d.ts +2 -0
  590. package/types/headless/devHeadlessNote.d.ts.map +1 -0
  591. package/types/headless/keepMounted.d.ts +9 -0
  592. package/types/headless/keepMounted.d.ts.map +1 -0
  593. package/types/headless/types.d.ts +59 -0
  594. package/types/headless/types.d.ts.map +1 -0
  595. package/types/headless/useDrawer.d.ts +19 -0
  596. package/types/headless/useDrawer.d.ts.map +1 -0
  597. package/types/headless/useStack.d.ts +16 -0
  598. package/types/headless/useStack.d.ts.map +1 -0
  599. package/types/headless/useTabs.d.ts +3 -0
  600. package/types/headless/useTabs.d.ts.map +1 -0
  601. package/types/index.d.ts +6 -2
  602. package/types/index.d.ts.map +1 -1
  603. package/types/layouts/Drawer.d.ts +5 -15
  604. package/types/layouts/Drawer.d.ts.map +1 -1
  605. package/types/layouts/Drawer.web.d.ts +5 -0
  606. package/types/layouts/Drawer.web.d.ts.map +1 -0
  607. package/types/layouts/Stack.d.ts +8 -17
  608. package/types/layouts/Stack.d.ts.map +1 -1
  609. package/types/layouts/Tabs.d.ts +5 -15
  610. package/types/layouts/Tabs.d.ts.map +1 -1
  611. package/types/layouts/Tabs.web.d.ts +20 -0
  612. package/types/layouts/Tabs.web.d.ts.map +1 -0
  613. package/types/layouts/stack-navigator.d.ts +3 -2
  614. package/types/layouts/stack-navigator.d.ts.map +1 -1
  615. package/types/layouts/stack-navigator.web.d.ts +6 -0
  616. package/types/layouts/stack-navigator.web.d.ts.map +1 -1
  617. package/types/layouts/stack-utils/StackHeaderBackButton.d.ts.map +1 -1
  618. package/types/layouts/stack-utils/StackHeaderComponent.d.ts +1 -1
  619. package/types/layouts/stack-utils/StackHeaderComponent.d.ts.map +1 -1
  620. package/types/layouts/stack-utils/StackHeaderLeft.d.ts.map +1 -1
  621. package/types/layouts/stack-utils/StackHeaderRight.d.ts.map +1 -1
  622. package/types/layouts/stack-utils/StackHeaderSearchBar.d.ts.map +1 -1
  623. package/types/layouts/stack-utils/StackHeaderTitle.d.ts +1 -1
  624. package/types/layouts/stack-utils/StackHeaderTitle.d.ts.map +1 -1
  625. package/types/layouts/stack-utils/StackScreen.d.ts +5 -12
  626. package/types/layouts/stack-utils/StackScreen.d.ts.map +1 -1
  627. package/types/layouts/stack-utils/index.d.ts +1 -0
  628. package/types/layouts/stack-utils/index.d.ts.map +1 -1
  629. package/types/layouts/withLayoutContext.d.ts.map +1 -1
  630. package/types/link/Link.web.d.ts +3 -0
  631. package/types/link/Link.web.d.ts.map +1 -0
  632. package/types/link/useLinkTo.d.ts +1 -1
  633. package/types/link/useLinkTo.d.ts.map +1 -1
  634. package/types/router/router.d.ts.map +1 -1
  635. package/types/router/useScreens.d.ts.map +1 -1
  636. package/types/router/web/WebStackNavigator.d.ts.map +1 -1
  637. package/types/router/web/WebStackView.d.ts +9 -25
  638. package/types/router/web/WebStackView.d.ts.map +1 -1
  639. package/types/router/web/stackStateUtils.d.ts +1 -1
  640. package/types/router/web/stackStateUtils.d.ts.map +1 -1
  641. package/types/screensFeatureFlags.d.ts.map +1 -1
  642. package/types/screensFeatureFlags.native.d.ts +2 -0
  643. package/types/screensFeatureFlags.native.d.ts.map +1 -0
  644. package/types/typed-routes/generateRouteTypes.d.ts +1 -1
  645. package/types/typed-routes/generateRouteTypes.d.ts.map +1 -1
  646. package/types/ui/Slot.web.d.ts +5 -0
  647. package/types/ui/Slot.web.d.ts.map +1 -0
  648. package/types/ui/TabContext.d.ts +7 -7
  649. package/types/ui/TabList.web.d.ts +11 -0
  650. package/types/ui/TabList.web.d.ts.map +1 -0
  651. package/types/ui/TabRouter.d.ts +5 -5
  652. package/types/ui/TabRouter.d.ts.map +1 -1
  653. package/types/ui/TabSlot.web.d.ts +24 -0
  654. package/types/ui/TabSlot.web.d.ts.map +1 -0
  655. package/types/ui/TabTrigger.d.ts +4 -75
  656. package/types/ui/TabTrigger.d.ts.map +1 -1
  657. package/types/ui/TabTrigger.web.d.ts +11 -0
  658. package/types/ui/TabTrigger.web.d.ts.map +1 -0
  659. package/types/ui/Tabs.d.ts +2 -249
  660. package/types/ui/Tabs.d.ts.map +1 -1
  661. package/types/ui/Tabs.shared.d.ts +201 -0
  662. package/types/ui/Tabs.shared.d.ts.map +1 -0
  663. package/types/ui/Tabs.web.d.ts +10 -0
  664. package/types/ui/Tabs.web.d.ts.map +1 -0
  665. package/types/ui/useTabTrigger.d.ts +49 -0
  666. package/types/ui/useTabTrigger.d.ts.map +1 -0
  667. package/types/useBlocker.d.ts.map +1 -1
  668. package/types/useLoader.d.ts.map +1 -1
  669. package/types/utils/platform.d.ts +6 -0
  670. package/types/utils/platform.d.ts.map +1 -0
  671. package/types/utils/platform.web.d.ts +2 -0
  672. package/types/utils/platform.web.d.ts.map +1 -0
  673. package/types/utils/routeIndex.d.ts +10 -0
  674. package/types/utils/routeIndex.d.ts.map +1 -0
  675. package/types/utils/routeIndex.test.d.ts +2 -0
  676. package/types/utils/routeIndex.test.d.ts.map +1 -0
  677. package/types/utils/style.d.ts +6 -1
  678. package/types/utils/style.d.ts.map +1 -1
  679. package/types/views/LoadProgressBar.web.d.ts +21 -0
  680. package/types/views/LoadProgressBar.web.d.ts.map +1 -0
  681. package/types/views/Protected.d.ts.map +1 -1
  682. package/types/views/RootErrorBoundary.d.ts.map +1 -1
  683. package/types/views/RootErrorBoundary.web.d.ts +20 -0
  684. package/types/views/RootErrorBoundary.web.d.ts.map +1 -0
  685. package/types/views/RouteErrorView.d.ts +9 -0
  686. package/types/views/RouteErrorView.d.ts.map +1 -0
  687. package/types/views/RouteErrorView.web.d.ts +3 -0
  688. package/types/views/RouteErrorView.web.d.ts.map +1 -0
  689. package/types/views/Screen.d.ts.map +1 -1
  690. package/types/vite/getManifest.d.ts +2 -1
  691. package/types/vite/getManifest.d.ts.map +1 -1
  692. package/types/vite/one.d.ts.map +1 -1
  693. package/types/vite/plugins/bundledDevPlugin.d.ts +3 -0
  694. package/types/vite/plugins/bundledDevPlugin.d.ts.map +1 -0
  695. package/types/vite/plugins/devtoolsPlugin.d.ts.map +1 -1
  696. package/types/vite/plugins/fileSystemRouterPlugin.d.ts +2 -1
  697. package/types/vite/plugins/fileSystemRouterPlugin.d.ts.map +1 -1
  698. package/types/vite/plugins/generateFileSystemRouteTypesPlugin.d.ts +2 -1
  699. package/types/vite/plugins/generateFileSystemRouteTypesPlugin.d.ts.map +1 -1
  700. package/types/vite/plugins/routeModuleHmrPlugin.d.ts +3 -0
  701. package/types/vite/plugins/routeModuleHmrPlugin.d.ts.map +1 -0
  702. package/types/vite/plugins/routeModuleHmrPlugin.test.d.ts +2 -0
  703. package/types/vite/plugins/routeModuleHmrPlugin.test.d.ts.map +1 -0
  704. package/types/vite/plugins/virtualEntryPlugin.d.ts +2 -0
  705. package/types/vite/plugins/virtualEntryPlugin.d.ts.map +1 -1
  706. package/types/vite/types.d.ts +10 -0
  707. package/types/vite/types.d.ts.map +1 -1
  708. package/vendor/react-dom/package.json +1 -1
  709. package/dist/cjs/fork/SSRNavigationContainer.cjs +0 -149
  710. package/dist/cjs/fork/SSRNavigationContainer.native.js +0 -199
  711. package/dist/cjs/fork/SSRNavigationContainer.native.js.map +0 -1
  712. package/dist/cjs/router/renderingRegistry.native.js.map +0 -1
  713. package/dist/cjs/router/web/ScreenRenderContext.native.js.map +0 -1
  714. package/dist/cjs/router/web/__tests__/WebStackView.runtime.test.cjs +0 -295
  715. package/dist/cjs/router/web/__tests__/WebStackView.runtime.test.native.js +0 -335
  716. package/dist/cjs/router/web/__tests__/WebStackView.runtime.test.native.js.map +0 -1
  717. package/dist/cjs/router/web/__tests__/WebStackView.test.cjs +0 -464
  718. package/dist/cjs/router/web/__tests__/WebStackView.test.native.js +0 -515
  719. package/dist/cjs/router/web/__tests__/WebStackView.test.native.js.map +0 -1
  720. package/dist/esm/fork/SSRNavigationContainer.mjs +0 -124
  721. package/dist/esm/fork/SSRNavigationContainer.mjs.map +0 -1
  722. package/dist/esm/fork/SSRNavigationContainer.native.js +0 -160
  723. package/dist/esm/fork/SSRNavigationContainer.native.js.map +0 -1
  724. package/dist/esm/router/renderingRegistry.mjs +0 -26
  725. package/dist/esm/router/renderingRegistry.mjs.map +0 -1
  726. package/dist/esm/router/renderingRegistry.native.js +0 -26
  727. package/dist/esm/router/renderingRegistry.native.js.map +0 -1
  728. package/dist/esm/router/web/ScreenRenderContext.mjs +0 -10
  729. package/dist/esm/router/web/ScreenRenderContext.mjs.map +0 -1
  730. package/dist/esm/router/web/ScreenRenderContext.native.js +0 -10
  731. package/dist/esm/router/web/ScreenRenderContext.native.js.map +0 -1
  732. package/dist/esm/router/web/__tests__/WebStackView.runtime.test.mjs +0 -272
  733. package/dist/esm/router/web/__tests__/WebStackView.runtime.test.mjs.map +0 -1
  734. package/dist/esm/router/web/__tests__/WebStackView.runtime.test.native.js +0 -309
  735. package/dist/esm/router/web/__tests__/WebStackView.runtime.test.native.js.map +0 -1
  736. package/dist/esm/router/web/__tests__/WebStackView.test.mjs +0 -465
  737. package/dist/esm/router/web/__tests__/WebStackView.test.mjs.map +0 -1
  738. package/dist/esm/router/web/__tests__/WebStackView.test.native.js +0 -513
  739. package/dist/esm/router/web/__tests__/WebStackView.test.native.js.map +0 -1
  740. package/src/fork/SSRNavigationContainer.tsx +0 -148
  741. package/src/router/renderingRegistry.ts +0 -109
  742. package/src/router/web/ScreenRenderContext.tsx +0 -61
  743. package/src/router/web/__tests__/WebStackView.runtime.test.tsx +0 -309
  744. package/src/router/web/__tests__/WebStackView.test.tsx +0 -444
  745. package/types/fork/SSRNavigationContainer.d.ts +0 -16
  746. package/types/fork/SSRNavigationContainer.d.ts.map +0 -1
  747. package/types/router/renderingRegistry.d.ts +0 -90
  748. package/types/router/renderingRegistry.d.ts.map +0 -1
  749. package/types/router/web/ScreenRenderContext.d.ts +0 -46
  750. package/types/router/web/ScreenRenderContext.d.ts.map +0 -1
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
 
3
- import { createNavigatorFactory, StackActions, StackRouter, useNavigationBuilder } from "@react-navigation/native";
3
+ import { createNavigatorFactory, useNavigationBuilder } from "@react-navigation/core";
4
+ import { StackActions, StackRouter } from "@react-navigation/routers";
4
5
  import { useEffect } from "react";
5
6
  import { WebStackView } from "./WebStackView.mjs";
6
7
  import { jsx } from "react/jsx-runtime";
@@ -8,14 +9,14 @@ function WebStackNavigator({
8
9
  initialRouteName,
9
10
  children,
10
11
  screenOptions,
12
+ headlessChildren,
11
13
  ...rest
12
14
  }) {
13
15
  const {
14
16
  state,
15
17
  navigation,
16
18
  descriptors,
17
- NavigationContent,
18
- describe
19
+ NavigationContent
19
20
  } = useNavigationBuilder(StackRouter, {
20
21
  ...rest,
21
22
  children,
@@ -40,7 +41,7 @@ function WebStackNavigator({
40
41
  state,
41
42
  navigation,
42
43
  descriptors,
43
- describe
44
+ customChildren: headlessChildren
44
45
  })
45
46
  });
46
47
  }
@@ -1 +1 @@
1
- {"version":3,"names":["createNavigatorFactory","StackActions","StackRouter","useNavigationBuilder","useEffect","WebStackView","jsx","WebStackNavigator","initialRouteName","children","screenOptions","rest","state","navigation","descriptors","NavigationContent","describe","addListener","e","isFocused","requestAnimationFrame","index","defaultPrevented","dispatch","popToTop","target","key","createWebStackNavigator"],"sources":["../../../../src/router/web/WebStackNavigator.tsx"],"sourcesContent":[null],"mappings":";;AAEA,SACEA,sBAAA,EACAC,YAAA,EACAC,WAAA,EACAC,oBAAA,QAMK;AAKP,SAASC,SAAA,QAAiC;AAE1C,SAASC,YAAA,QAAoB;AAyDvB,SAAAC,GAAA;AAtCN,SAASC,kBAAkB;EACzBC,gBAAA;EACAC,QAAA;EACAC,aAAA;EACA,GAAGC;AACL,GAA2B;EACzB,MAAM;IAAEC,KAAA;IAAOC,UAAA;IAAYC,WAAA;IAAaC,iBAAA;IAAmBC;EAAS,IAClEb,oBAAA,CAMED,WAAA,EAAa;IACb,GAAIS,IAAA;IACJF,QAAA;IACAC,aAAA;IACAF;EACF,CAAC;EAGHJ,SAAA,CAAU,MAAM;IAEd,OAAOS,UAAA,EAAYI,WAAA,GAAc,YAAaC,CAAA,IAAkC;MAC9E,MAAMC,SAAA,GAAYN,UAAA,CAAWM,SAAA,CAAU;MACvCC,qBAAA,CAAsB,MAAM;QAC1B,IAAIR,KAAA,CAAMS,KAAA,GAAQ,KAAKF,SAAA,IAAa,CAACD,CAAA,CAAEI,gBAAA,EAAkB;UACvDT,UAAA,CAAWU,QAAA,CAAS;YAClB,GAAGtB,YAAA,CAAauB,QAAA,CAAS;YACzBC,MAAA,EAAQb,KAAA,CAAMc;UAChB,CAAC;QACH;MACF,CAAC;IACH,CAAC;EACH,GAAG,CAACb,UAAA,EAAYD,KAAA,CAAMS,KAAA,EAAOT,KAAA,CAAMc,GAAG,CAAC;EAEvC,OACE,eAAApB,GAAA,CAACS,iBAAA;IACCN,QAAA,iBAAAH,GAAA,CAACD,YAAA;MACCO,KAAA;MACAC,UAAA;MACAC,WAAA;MACAE;IAAA,CACF;EAAA,CACF;AAEJ;AAEO,MAAMW,uBAAA,GAA0B3B,sBAAA,CAAuBO,iBAAiB","ignoreList":[]}
1
+ {"version":3,"names":["createNavigatorFactory","useNavigationBuilder","StackActions","StackRouter","useEffect","WebStackView","jsx","WebStackNavigator","initialRouteName","children","screenOptions","headlessChildren","rest","state","navigation","descriptors","NavigationContent","addListener","e","isFocused","requestAnimationFrame","index","defaultPrevented","dispatch","popToTop","target","key","customChildren","createWebStackNavigator"],"sources":["../../../../src/router/web/WebStackNavigator.tsx"],"sourcesContent":[null],"mappings":";;AAEA,SACEA,sBAAA,EACAC,oBAAA,QAGK;AACP,SACEC,YAAA,EACAC,WAAA,QAIK;AAKP,SAASC,SAAA,QAAiC;AAE1C,SAASC,YAAA,QAAoB;AAyDvB,SAAAC,GAAA;AAtCN,SAASC,kBAAkB;EACzBC,gBAAA;EACAC,QAAA;EACAC,aAAA;EACAC,gBAAA;EACA,GAAGC;AACL,GAA2B;EACzB,MAAM;IAAEC,KAAA;IAAOC,UAAA;IAAYC,WAAA;IAAaC;EAAkB,IAAIf,oBAAA,CAM5DE,WAAA,EAAa;IACb,GAAIS,IAAA;IACJH,QAAA;IACAC,aAAA;IACAF;EACF,CAAC;EAGDJ,SAAA,CAAU,MAAM;IAEd,OAAOU,UAAA,EAAYG,WAAA,GAAc,YAAaC,CAAA,IAAkC;MAC9E,MAAMC,SAAA,GAAYL,UAAA,CAAWK,SAAA,CAAU;MACvCC,qBAAA,CAAsB,MAAM;QAC1B,IAAIP,KAAA,CAAMQ,KAAA,GAAQ,KAAKF,SAAA,IAAa,CAACD,CAAA,CAAEI,gBAAA,EAAkB;UACvDR,UAAA,CAAWS,QAAA,CAAS;YAClB,GAAGrB,YAAA,CAAasB,QAAA,CAAS;YACzBC,MAAA,EAAQZ,KAAA,CAAMa;UAChB,CAAC;QACH;MACF,CAAC;IACH,CAAC;EACH,GAAG,CAACZ,UAAA,EAAYD,KAAA,CAAMQ,KAAA,EAAOR,KAAA,CAAMa,GAAG,CAAC;EAEvC,OACE,eAAApB,GAAA,CAACU,iBAAA;IACCP,QAAA,iBAAAH,GAAA,CAACD,YAAA;MACCQ,KAAA;MACAC,UAAA;MACAC,WAAA;MACAY,cAAA,EAAgBhB;IAAA,CAClB;EAAA,CACF;AAEJ;AAEO,MAAMiB,uBAAA,GAA0B5B,sBAAA,CAAuBO,iBAAiB","ignoreList":[]}
@@ -1,7 +1,8 @@
1
1
  "use client";
2
2
 
3
3
  import { jsx as _jsx } from "react/jsx-runtime";
4
- import { createNavigatorFactory, StackActions, StackRouter, useNavigationBuilder } from "@react-navigation/native";
4
+ import { createNavigatorFactory, useNavigationBuilder } from "@react-navigation/core";
5
+ import { StackActions, StackRouter } from "@react-navigation/routers";
5
6
  import { useEffect } from "react";
6
7
  import { WebStackView } from "./WebStackView.native.js";
7
8
  function WebStackNavigator(param) {
@@ -9,14 +10,14 @@ function WebStackNavigator(param) {
9
10
  initialRouteName,
10
11
  children,
11
12
  screenOptions,
13
+ headlessChildren,
12
14
  ...rest
13
15
  } = param;
14
16
  var {
15
17
  state,
16
18
  navigation,
17
19
  descriptors,
18
- NavigationContent,
19
- describe
20
+ NavigationContent
20
21
  } = useNavigationBuilder(StackRouter, {
21
22
  ...rest,
22
23
  children,
@@ -42,7 +43,7 @@ function WebStackNavigator(param) {
42
43
  state,
43
44
  navigation,
44
45
  descriptors,
45
- describe
46
+ customChildren: headlessChildren
46
47
  })
47
48
  });
48
49
  }
@@ -1 +1 @@
1
- {"version":3,"names":["jsx","_jsx","createNavigatorFactory","StackActions","StackRouter","useNavigationBuilder","useEffect","WebStackView","WebStackNavigator","param","initialRouteName","children","screenOptions","rest","state","navigation","descriptors","NavigationContent","describe","_navigation_addListener","addListener","call","e","isFocused","requestAnimationFrame","index","defaultPrevented","dispatch","popToTop","target","key","createWebStackNavigator"],"sources":["../../../../src/router/web/WebStackNavigator.tsx"],"sourcesContent":[null],"mappings":";;AAEA,SAAAA,GAAA,IAAAC,IAAA;AAAA,SACEC,sBAAA,EAAAC,YAAA,EAAAC,WAAA,EAAAC,oBAAA;AAAA,SACAC,SAAA;AAAA,SACAC,YAAA;AAAA,SACAC,kBAAAC,KAAA;EAAA;IAMKC,gBAAA;IAAAC,QAAA;IAAAC,aAAA;IAAA,GAAAC;EAAA,IAAAJ,KAAA;EAKP;IAAAK,KAAS;IAAAC,UAAA;IAAiCC,WAAA;IAAAC,iBAAA;IAAAC;EAAA,IAAAb,oBAAA,CAAAD,WAAA;IAE1C,GAAAS,IAAS;IAyDHF,QAAA;IAtCNC,aAAS;IACPF;EACA;EACAJ,SAAA;IACA,IAAGa,uBAAA;IACsB,OAAAJ,UAAA,aAAAA,UAAA,wBAAAI,uBAAA,GAAAJ,UAAA,CAAAK,WAAA,cAAAD,uBAAA,uBAAAA,uBAAA,CAAAE,IAAA,CAAAN,UAAA,wBAAAO,CAAA;MACzB,IAAQC,SAAO,GAAAR,UAAY,CAAAQ,SAAa;MAQpCC,qBAAI;QACJ,IAAAV,KAAA,CAAAW,KAAA,QAAAF,SAAA,KAAAD,CAAA,CAAAI,gBAAA;UACAX,UAAA,CAAAY,QAAA;YACA,GAAAxB,YAAA,CAAAyB,QAAA;YACDC,MAAA,EAAAf,KAAA,CAAAgB;UAGH,EAAU;QAER;MACE;IACA;EACE,IACEf,UAAA,EAAoBD,KAAA,CAAAW,KACf,EAAsBX,KAAA,CAAAgB,GACzB,CAAc;EACf,OACH,eAAA7B,IAAA,CAAAgB,iBAAA;IAAAN,QACD,iBAAAV,IAAA,CAAAM,YAAA;MACFO,KAAA;MACCC,UAAA;MAEJC,WACE;MACGE;IAAA;EAAA;AACC;AACA,IAAAa,uBACA,GAAA7B,sBAAA,CAAAM,iBAAA;AAAA,SACAuB,uBAAA","ignoreList":[]}
1
+ {"version":3,"names":["jsx","_jsx","createNavigatorFactory","useNavigationBuilder","StackActions","StackRouter","useEffect","WebStackView","WebStackNavigator","param","initialRouteName","children","screenOptions","headlessChildren","rest","state","navigation","descriptors","NavigationContent","_navigation_addListener","addListener","call","e","isFocused","requestAnimationFrame","index","defaultPrevented","dispatch","popToTop","target","key","customChildren","createWebStackNavigator"],"sources":["../../../../src/router/web/WebStackNavigator.tsx"],"sourcesContent":[null],"mappings":";;AAEA,SAAAA,GAAA,IAAAC,IAAA;AAAA,SACEC,sBAAA,EAAAC,oBAAA;AAAA,SACAC,YAAA,EAAAC,WAAA;AAAA,SAGKC,SAAA;AACP,SAAAC,YAAA;AAAA,SACEC,kBAAAC,KAAA;EACA;IAAAC,gBAAA;IAAAC,QAAA;IAAAC,aAAA;IAAAC,gBAAA;IAAA,GAAAC;EAAA,IAAAL,KAAA;EAAA;IAIKM,KAAA;IAAAC,UAAA;IAAAC,WAAA;IAAAC;EAAA,IAAAf,oBAAA,CAAAE,WAAA;IAKP,GAAAS,IAAS;IAETH,QAAS;IAyDHC,aAAA;IAtCNF;EACE;EACAJ,SAAA;IACA,IAAAa,uBAAA;IACA,OAAAH,UAAA,aAAAA,UAAA,wBAAAG,uBAAA,GAAAH,UAAA,CAAAI,WAAA,cAAAD,uBAAA,uBAAAA,uBAAA,CAAAE,IAAA,CAAAL,UAAA,wBAAAM,CAAA;MACG,IAAAC,SAAA,GAAAP,UAAA,CAAAO,SAAA;MACsBC,qBAAA;QACnB,IAAET,KAAO,CAAAU,KAAA,QAAYF,SAAA,IAAa,CAAAD,CAAA,CAAAI,gBAAkB,EAAI;UAOxDV,UAAA,CAAAW,QAAA;YACJ,GAAAvB,YAAA,CAAAwB,QAAA;YACAC,MAAA,EAAAd,KAAA,CAAAe;UACA;QACD;MAGD;IAEE;EACE,IACAd,UAAA,EACED,KAAA,CAAAU,KAAI,EACFV,KAAA,CAAAe,GAAA,CAAoB;EACO,sBACjB7B,IAAM,CAAAiB,iBAAA;IAAAP,QACf,iBAAAV,IAAA,CAAAM,YAAA;MAAAQ,KACH;MACFC,UAAC;MACFC,WAAA;MACCc,cAAY,EAAAlB;IAEhB;EAEI,EAAC;AAAA;AAAA,IAAAmB,uBACC,GAAA9B,sBAAA,CAAAM,iBAAA;AAAA,SACAwB,uBACA","ignoreList":[]}
@@ -1,155 +1,123 @@
1
1
  "use client";
2
2
 
3
- import { StackActions } from "@react-navigation/native";
4
- import { NativeStackView } from "@react-navigation/native-stack";
5
- import { Fragment, useCallback, useRef, useState } from "react";
6
- import { convertStackStateToNonOverlayState, findLastNonOverlayIndex, isOverlayPresentation } from "./stackStateUtils.mjs";
7
- import { useStackRender } from "./ScreenRenderContext.mjs";
3
+ import { StackActions } from "@react-navigation/routers";
4
+ import { Activity, Fragment, useCallback, useEffect, useState } from "react";
5
+ import useLatestCallback from "use-latest-callback";
6
+ import { devHeadlessNote } from "../../headless/devHeadlessNote.mjs";
7
+ import { useWebPresentations } from "../../headless/Presentations.mjs";
8
+ import { StackStateProvider, useStack } from "../../headless/useStack.mjs";
9
+ import { findLastNonOverlayIndex } from "./stackStateUtils.mjs";
8
10
  import { jsx, jsxs } from "react/jsx-runtime";
9
- function resolveOverlayRender(options, contextRender) {
10
- return options?.render?.web ?? contextRender?.web;
11
- }
12
11
  function WebStackView({
13
12
  state,
14
13
  navigation,
15
14
  descriptors,
16
- describe
15
+ customChildren
17
16
  }) {
18
- const contextRender = useStackRender();
19
- const persistentSlotsRef = useRef(/* @__PURE__ */new Map());
20
- for (const route of state.routes) {
21
- const desc = descriptors[route.key];
22
- if (!desc) continue;
23
- const {
24
- options
25
- } = desc;
26
- if (!options.keepMounted) continue;
27
- if (!isOverlayPresentation(options)) continue;
28
- const Render = resolveOverlayRender(options, contextRender);
29
- if (!Render) continue;
30
- if (persistentSlotsRef.current.has(route.name)) continue;
31
- persistentSlotsRef.current.set(route.name, {
32
- routeName: route.name,
33
- Render,
34
- options,
35
- content: desc.render()
36
- });
37
- }
38
- const isOverlayCandidate = options => isOverlayPresentation(options) && resolveOverlayRender(options ?? void 0, contextRender) !== void 0;
39
- const nonOverlay = convertStackStateToNonOverlayState(state, descriptors, isOverlayCandidate);
40
- const underlyingState = {
41
- ...state,
42
- routes: nonOverlay.routes,
43
- index: nonOverlay.index
44
- };
45
- const lastNonOverlay = findLastNonOverlayIndex(state, descriptors, isOverlayCandidate);
46
- const trailingOverlays = state.routes.slice(lastNonOverlay + 1);
47
- const focusedOverlayNames = new Set(trailingOverlays.map(r => r.name));
48
- const regularOverlays = trailingOverlays.filter(r => !descriptors[r.key]?.options.keepMounted);
49
- return /* @__PURE__ */jsxs(Fragment, {
50
- children: [/* @__PURE__ */jsx(NativeStackView, {
51
- state: underlyingState,
52
- descriptors,
17
+ return /* @__PURE__ */jsx(StackStateProvider, {
18
+ state,
19
+ descriptors,
20
+ children: /* @__PURE__ */jsx(HeadlessStackView, {
21
+ state,
53
22
  navigation,
54
- describe
55
- }), regularOverlays.map(route => /* @__PURE__ */jsx(OverlayHost, {
56
- route,
57
- descriptor: descriptors[route.key],
58
- contextRender,
59
- open: true,
60
- onDismiss: () => navigation.dispatch({
61
- ...StackActions.pop(),
62
- source: route.key,
63
- target: state.key
64
- })
65
- }, route.key)), Array.from(persistentSlotsRef.current.values()).map(slot => /* @__PURE__ */jsx(PersistentOverlayHost, {
66
- slot,
67
- open: focusedOverlayNames.has(slot.routeName),
68
- onDismiss: () => {
69
- const live = state.routes.find(r => r.name === slot.routeName);
70
- if (live) {
71
- navigation.dispatch({
72
- ...StackActions.pop(),
73
- source: live.key,
74
- target: state.key
75
- });
76
- }
77
- }
78
- }, slot.routeName))]
23
+ descriptors,
24
+ customChildren
25
+ })
79
26
  });
80
27
  }
81
- function OverlayHost({
82
- route,
83
- descriptor,
84
- contextRender,
85
- open,
86
- onDismiss
28
+ function HeadlessStackView({
29
+ state,
30
+ navigation,
31
+ descriptors,
32
+ customChildren
87
33
  }) {
88
- const dismiss = useStableCallback(onDismiss);
89
- const options = descriptor.options;
90
- const Render = resolveOverlayRender(options, contextRender);
91
- const content = descriptor.render();
92
- if (!Render || !isOverlayPresentation(options)) {
34
+ const stack = useStack();
35
+ const presentations = useWebPresentations();
36
+ if (customChildren?.length) {
93
37
  return /* @__PURE__ */jsx(Fragment, {
94
- children: content
38
+ children: customChildren
95
39
  });
96
40
  }
97
- const renderProps = {
98
- routeKey: route.key,
99
- routeName: route.name,
100
- presentation: options.presentation,
101
- open,
102
- dismiss,
103
- dismissible: options.gestureEnabled ?? true,
104
- sheetAllowedDetents: options.sheetAllowedDetents,
105
- sheetGrabberVisible: options.sheetGrabberVisible,
106
- sheetCornerRadius: options.sheetCornerRadius,
107
- sheetInitialDetentIndex: options.sheetInitialDetentIndex,
108
- sheetLargestUndimmedDetentIndex: options.sheetLargestUndimmedDetentIndex,
109
- sheetExpandsWhenScrolledToEdge: options.sheetExpandsWhenScrolledToEdge,
110
- children: content
111
- };
112
- return /* @__PURE__ */jsx(Render, {
113
- ...renderProps
41
+ devHeadlessNote("Stack");
42
+ const lastBaseIndex = findLastNonOverlayIndex(state, descriptors, options => getPresentationType(options) !== void 0);
43
+ const baseRouteKeys = new Set(state.routes.slice(0, lastBaseIndex + 1).map(route => route.key));
44
+ const baseFocusedKey = state.routes[lastBaseIndex]?.key;
45
+ const overlayRoutes = state.routes.slice(lastBaseIndex + 1);
46
+ return /* @__PURE__ */jsxs(Fragment, {
47
+ children: [stack.screens.map(screen => {
48
+ if (!baseRouteKeys.has(screen.key)) return null;
49
+ if (screen.key === baseFocusedKey) {
50
+ return screen.keepMounted ? /* @__PURE__ */jsx(Activity, {
51
+ mode: "visible",
52
+ children: screen.element
53
+ }, screen.key) : /* @__PURE__ */jsx(Fragment, {
54
+ children: screen.element
55
+ }, screen.key);
56
+ }
57
+ if (!screen.keepMounted) return null;
58
+ return /* @__PURE__ */jsx(Activity, {
59
+ mode: "hidden",
60
+ children: screen.element
61
+ }, screen.key);
62
+ }), overlayRoutes.map(route => {
63
+ const screen = stack.screens.find(entry => entry.key === route.key);
64
+ const type = getPresentationType(descriptors[route.key]?.options);
65
+ if (!screen || !type) return null;
66
+ return /* @__PURE__ */jsx(PresentationScreen, {
67
+ screen,
68
+ type,
69
+ presentations,
70
+ onDismiss: () => navigation.dispatch({
71
+ ...StackActions.pop(),
72
+ source: route.key,
73
+ target: state.key
74
+ })
75
+ }, route.key);
76
+ })]
114
77
  });
115
78
  }
116
- function PersistentOverlayHost({
117
- slot,
118
- open,
79
+ function PresentationScreen({
80
+ screen,
81
+ type,
82
+ presentations,
119
83
  onDismiss
120
84
  }) {
121
- const dismiss = useStableCallback(onDismiss);
122
- const {
123
- Render,
124
- options,
125
- content,
126
- routeName
127
- } = slot;
128
- const renderProps = {
129
- routeKey: `__keepMounted:${routeName}`,
130
- routeName,
131
- presentation: options.presentation,
85
+ const dismiss = useLatestCallback(onDismiss);
86
+ const onOpenChange = useCallback(nextOpen => {
87
+ if (!nextOpen) dismiss();
88
+ }, [dismiss]);
89
+ const [open, setOpen] = useState(false);
90
+ useEffect(() => setOpen(true), []);
91
+ if (type === "sheet") {
92
+ const Sheet = presentations?.sheet;
93
+ if (!Sheet) return screen.element;
94
+ return /* @__PURE__ */jsx(Sheet, {
95
+ open,
96
+ onOpenChange,
97
+ options: screen.options,
98
+ screen,
99
+ children: screen.element
100
+ });
101
+ }
102
+ const Modal = presentations?.modal;
103
+ if (!Modal) return screen.element;
104
+ return /* @__PURE__ */jsx(Modal, {
132
105
  open,
133
- dismiss,
134
- dismissible: options.gestureEnabled ?? true,
135
- sheetAllowedDetents: options.sheetAllowedDetents,
136
- sheetGrabberVisible: options.sheetGrabberVisible,
137
- sheetCornerRadius: options.sheetCornerRadius,
138
- sheetInitialDetentIndex: options.sheetInitialDetentIndex,
139
- sheetLargestUndimmedDetentIndex: options.sheetLargestUndimmedDetentIndex,
140
- sheetExpandsWhenScrolledToEdge: options.sheetExpandsWhenScrolledToEdge,
141
- children: content
142
- };
143
- return /* @__PURE__ */jsx(Render, {
144
- ...renderProps
106
+ onOpenChange,
107
+ options: screen.options,
108
+ screen,
109
+ children: screen.element
145
110
  });
146
111
  }
147
- function useStableCallback(fn) {
148
- const [ref] = useState(() => ({
149
- current: fn
150
- }));
151
- ref.current = fn;
152
- return useCallback((...args) => ref.current(...args), [ref]);
112
+ function getPresentationType(options) {
113
+ const presentation = options?.presentation;
114
+ if (!presentation || presentation === "card" || presentation === "push") {
115
+ return void 0;
116
+ }
117
+ if (presentation === "sheet" || presentation === "formSheet" || presentation === "pageSheet") {
118
+ return "sheet";
119
+ }
120
+ return "modal";
153
121
  }
154
- export { OverlayHost, WebStackView, resolveOverlayRender };
122
+ export { WebStackView };
155
123
  //# sourceMappingURL=WebStackView.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["StackActions","NativeStackView","Fragment","useCallback","useRef","useState","convertStackStateToNonOverlayState","findLastNonOverlayIndex","isOverlayPresentation","useStackRender","jsx","jsxs","resolveOverlayRender","options","contextRender","render","web","WebStackView","state","navigation","descriptors","describe","persistentSlotsRef","Map","route","routes","desc","key","keepMounted","Render","current","has","name","set","routeName","content","isOverlayCandidate","nonOverlay","underlyingState","index","lastNonOverlay","trailingOverlays","slice","focusedOverlayNames","Set","map","r","regularOverlays","filter","children","OverlayHost","descriptor","open","onDismiss","dispatch","pop","source","target","Array","from","values","slot","PersistentOverlayHost","live","find","dismiss","useStableCallback","renderProps","routeKey","presentation","dismissible","gestureEnabled","sheetAllowedDetents","sheetGrabberVisible","sheetCornerRadius","sheetInitialDetentIndex","sheetLargestUndimmedDetentIndex","sheetExpandsWhenScrolledToEdge","fn","ref","args"],"sources":["../../../../src/router/web/WebStackView.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["StackActions","Activity","Fragment","useCallback","useEffect","useState","useLatestCallback","devHeadlessNote","useWebPresentations","StackStateProvider","useStack","findLastNonOverlayIndex","jsx","jsxs","WebStackView","state","navigation","descriptors","customChildren","children","HeadlessStackView","stack","presentations","length","lastBaseIndex","options","getPresentationType","baseRouteKeys","Set","routes","slice","map","route","key","baseFocusedKey","overlayRoutes","screens","screen","has","keepMounted","mode","element","find","entry","type","PresentationScreen","onDismiss","dispatch","pop","source","target","dismiss","onOpenChange","nextOpen","open","setOpen","Sheet","sheet","Modal","modal","presentation"],"sources":["../../../../src/router/web/WebStackView.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}