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 +1 @@
1
- {"version":3,"names":["useCallback","useSyncExternalStore","registerDevtoolsFunction","useParams","usePathname","findNearestNotFoundRoute","setNotFoundState","useContextKey","getContextKey","router","preloadedLoaderData","preloadingLoader","routeNode","setSSRLoaderData","ssrLoaderData","getClientMatchesSnapshot","subscribeToClientMatches","updateMatchLoaderData","getLoaderPath","getURL","LOADER_JS_POSTFIX_UNCACHED","dynamicImport","weakKey","useServerContext","_instanceof","left","right","Symbol","hasInstance","LOADER_TIMEOUT","process","env","ONE_LOADER_TIMEOUT_MS","loaderTimingHistory","MAX_TIMING_HISTORY","recordLoaderTiming","NODE_ENV","entry","unshift","length","pop","window","CustomEvent","dispatchEvent","detail","error","message","name","route","pathname","path","timestamp","Date","now","type","getLoaderTimingHistory","loaderState","subscribers","Set","LOADER_STATE_MAX","loaderStateKeys","setBoundedLoaderState","push","oldest","shift","updateState","updates","forEach","callback","subscribe","add","delete","getLoaderState","preloadedData","data","promise","state","hasLoadedOnce","refetchLoader","startTime","performance","_dynamicImport","loaderJSUrl","moduleLoadStart","module","catch","moduleLoadTime","loader","executionStart","result","executionTime","totalTime","__oneRedirect","source","replace","__oneError","notFoundRoute","notFoundPath","__oneNotFoundPath","notFoundRouteNode","originalPath","currentMatches","pageMatch","normalizedPathname","normalizedMatchPathname","routeId","err","totalTime1","Error","String","__oneRefetchLoader","refetchMatchLoader","currentPath","useLoaderState","loaderProps","loaderPropsFromServerContext","loaderData","loaderDataFromServerContext","params","has","get","refetch","serverContext","matches","contextKey","match","find","m","useAsyncFn","matchRouteId","startsWith","clientMatches","loaderStateEntry","_clientMatches_","match1","isPageMatch","matchPathNormalized","matchPathFresh","fresh","resolvedPreloadData","then","val","console","loadData","nativeLoaderJSUrl","slice","replaceAll","controller","AbortController","timeoutId","setTimeout","abort","loaderJsCode","loaderJsCodeResp","fetch","signal","ok","status","text","clearTimeout","Function","e","moduleLoadStart1","moduleLoadTime1","executionStart1","result1","executionTime1","totalTime2","notFoundRoute1","totalTime3","useLoader","results","Map","started","USE_ASYNC_FN_CACHE_MAX","setBoundedResults","key","value","size","firstKey","keys","next","set","resetLoaderState","clear","props","JSON","stringify","Promise","final","current"],"sources":["useLoader.native.js"],"sourcesContent":["import { useCallback, useSyncExternalStore } from \"react\";\nimport { registerDevtoolsFunction } from \"./devtools/registry\";\nimport { useParams, usePathname } from \"./hooks\";\nimport { findNearestNotFoundRoute, setNotFoundState } from \"./notFoundState\";\nimport { useContextKey } from \"./router/Route\";\nimport { getContextKey } from \"./router/matchers\";\nimport { router } from \"./router/imperative-api\";\nimport { preloadedLoaderData, preloadingLoader, routeNode } from \"./router/router\";\nimport { setSSRLoaderData, ssrLoaderData } from \"./server/ssrLoaderData\";\nimport { getClientMatchesSnapshot, subscribeToClientMatches, updateMatchLoaderData } from \"./useMatches\";\nimport { getLoaderPath } from \"./utils/cleanUrl\";\nimport { getURL } from \"./getURL\";\nimport { LOADER_JS_POSTFIX_UNCACHED } from \"./constants\";\nimport { dynamicImport } from \"./utils/dynamicImport\";\nimport { weakKey } from \"./utils/weakKey\";\nimport { useServerContext } from \"./vite/one-server-only\";\n\nfunction _instanceof(left, right) {\n\tif (right != null && typeof Symbol !== \"undefined\" && right[Symbol.hasInstance]) return !!right[Symbol.hasInstance](left);\n\telse return left instanceof right;\n}\nvar LOADER_TIMEOUT = process.env.ONE_LOADER_TIMEOUT_MS ? +process.env.ONE_LOADER_TIMEOUT_MS : 6e4;\nvar loaderTimingHistory = [];\nvar MAX_TIMING_HISTORY = 50;\nvar recordLoaderTiming = process.env.NODE_ENV === \"development\" ? function(entry) {\n\tloaderTimingHistory.unshift(entry);\n\tif (loaderTimingHistory.length > MAX_TIMING_HISTORY) loaderTimingHistory.pop();\n\tif (typeof window !== \"undefined\" && typeof CustomEvent !== \"undefined\") {\n\t\twindow.dispatchEvent(new CustomEvent(\"one-loader-timing\", { detail: entry }));\n\t\tif (entry.error) window.dispatchEvent(new CustomEvent(\"one-error\", { detail: {\n\t\t\terror: {\n\t\t\t\tmessage: entry.error,\n\t\t\t\tname: \"LoaderError\"\n\t\t\t},\n\t\t\troute: { pathname: entry.path },\n\t\t\ttimestamp: Date.now(),\n\t\t\ttype: \"loader\"\n\t\t} }));\n\t}\n} : void 0;\nfunction getLoaderTimingHistory() {\n\treturn loaderTimingHistory;\n}\nregisterDevtoolsFunction(\"getLoaderTimingHistory\", getLoaderTimingHistory);\nregisterDevtoolsFunction(\"recordLoaderTiming\", recordLoaderTiming);\nvar loaderState = {};\nvar subscribers = /* @__PURE__ */ new Set();\nvar LOADER_STATE_MAX = 200;\nvar loaderStateKeys = [];\nfunction setBoundedLoaderState(path, entry) {\n\tif (!(path in loaderState)) {\n\t\tloaderStateKeys.push(path);\n\t\tif (loaderStateKeys.length > LOADER_STATE_MAX) {\n\t\t\tvar oldest = loaderStateKeys.shift();\n\t\t\tdelete loaderState[oldest];\n\t\t}\n\t}\n\tloaderState[path] = entry;\n}\nfunction updateState(path, updates) {\n\tsetBoundedLoaderState(path, {\n\t\t...loaderState[path],\n\t\t...updates\n\t});\n\tsubscribers.forEach(function(callback) {\n\t\tcallback();\n\t});\n}\nfunction subscribe(callback) {\n\tsubscribers.add(callback);\n\treturn function() {\n\t\treturn subscribers.delete(callback);\n\t};\n}\nfunction getLoaderState(path, preloadedData) {\n\tif (!(path in loaderState)) setBoundedLoaderState(path, {\n\t\tdata: preloadedData,\n\t\terror: void 0,\n\t\tpromise: void 0,\n\t\tstate: \"idle\",\n\t\thasLoadedOnce: !!preloadedData\n\t});\n\treturn loaderState[path];\n}\nasync function refetchLoader(pathname) {\n\tvar startTime = performance.now();\n\tupdateState(pathname, {\n\t\tstate: \"loading\",\n\t\terror: null\n\t});\n\ttry {\n\t\tvar _dynamicImport;\n\t\tvar loaderJSUrl = getLoaderPath(pathname, true, `${Date.now()}`);\n\t\tvar moduleLoadStart = performance.now();\n\t\tvar module = await ((_dynamicImport = dynamicImport(loaderJSUrl)) === null || _dynamicImport === void 0 ? void 0 : _dynamicImport.catch(function() {\n\t\t\treturn null;\n\t\t}));\n\t\tvar moduleLoadTime = performance.now() - moduleLoadStart;\n\t\tif (!(module === null || module === void 0 ? void 0 : module.loader)) {\n\t\t\tupdateState(pathname, {\n\t\t\t\tdata: void 0,\n\t\t\t\tstate: \"idle\",\n\t\t\t\thasLoadedOnce: true\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tvar executionStart = performance.now();\n\t\tvar result = await module.loader();\n\t\tvar executionTime = performance.now() - executionStart;\n\t\tvar totalTime = performance.now() - startTime;\n\t\tif (result === null || result === void 0 ? void 0 : result.__oneRedirect) {\n\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\tpath: pathname,\n\t\t\t\tstartTime,\n\t\t\t\tmoduleLoadTime,\n\t\t\t\texecutionTime,\n\t\t\t\ttotalTime,\n\t\t\t\tsource: \"refetch\"\n\t\t\t});\n\t\t\tupdateState(pathname, {\n\t\t\t\tdata: void 0,\n\t\t\t\tstate: \"idle\",\n\t\t\t\thasLoadedOnce: true\n\t\t\t});\n\t\t\trouter.replace(result.__oneRedirect);\n\t\t\treturn;\n\t\t}\n\t\tif ((result === null || result === void 0 ? void 0 : result.__oneError) === 404) {\n\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\tpath: pathname,\n\t\t\t\tstartTime,\n\t\t\t\tmoduleLoadTime,\n\t\t\t\texecutionTime,\n\t\t\t\ttotalTime,\n\t\t\t\tsource: \"refetch\"\n\t\t\t});\n\t\t\tvar notFoundRoute = findNearestNotFoundRoute(pathname, routeNode);\n\t\t\tsetNotFoundState({\n\t\t\t\tnotFoundPath: result.__oneNotFoundPath || \"/+not-found\",\n\t\t\t\tnotFoundRouteNode: notFoundRoute || void 0,\n\t\t\t\toriginalPath: pathname\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tupdateState(pathname, {\n\t\t\tdata: result,\n\t\t\tstate: \"idle\",\n\t\t\ttimestamp: Date.now(),\n\t\t\thasLoadedOnce: true\n\t\t});\n\t\tvar currentMatches = getClientMatchesSnapshot();\n\t\tvar pageMatch = currentMatches[currentMatches.length - 1];\n\t\tvar normalizedPathname = pathname.replace(/\\/$/, \"\") || \"/\";\n\t\tvar normalizedMatchPathname = ((pageMatch === null || pageMatch === void 0 ? void 0 : pageMatch.pathname) || \"\").replace(/\\/$/, \"\") || \"/\";\n\t\tif (pageMatch && normalizedMatchPathname === normalizedPathname) updateMatchLoaderData(pageMatch.routeId, result);\n\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\tpath: pathname,\n\t\t\tstartTime,\n\t\t\tmoduleLoadTime,\n\t\t\texecutionTime,\n\t\t\ttotalTime,\n\t\t\tsource: \"refetch\"\n\t\t});\n\t} catch (err) {\n\t\tvar totalTime1 = performance.now() - startTime;\n\t\tupdateState(pathname, {\n\t\t\terror: err,\n\t\t\tstate: \"idle\"\n\t\t});\n\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\tpath: pathname,\n\t\t\tstartTime,\n\t\t\ttotalTime: totalTime1,\n\t\t\terror: _instanceof(err, Error) ? err.message : String(err),\n\t\t\tsource: \"refetch\"\n\t\t});\n\t\tthrow err;\n\t}\n}\nif (process.env.NODE_ENV === \"development\" && typeof window !== \"undefined\") window.__oneRefetchLoader = refetchLoader;\nasync function refetchMatchLoader(routeId, currentPath) {\n\tvar _dynamicImport;\n\tvar module = await ((_dynamicImport = dynamicImport(getLoaderPath(currentPath, true, `${Date.now()}`))) === null || _dynamicImport === void 0 ? void 0 : _dynamicImport.catch(function() {\n\t\treturn null;\n\t}));\n\tif (!(module === null || module === void 0 ? void 0 : module.loader)) return;\n\tvar result = await module.loader();\n\tif ((result === null || result === void 0 ? void 0 : result.__oneRedirect) || (result === null || result === void 0 ? void 0 : result.__oneError)) return;\n\tupdateMatchLoaderData(routeId, result);\n}\nfunction useLoaderState(loader) {\n\tvar { loaderProps: loaderPropsFromServerContext, loaderData: loaderDataFromServerContext } = useServerContext() || {};\n\tvar params = useParams();\n\tvar pathname = usePathname();\n\tvar currentPath = pathname.replace(/\\/index$/, \"\").replace(/\\/$/, \"\") || \"/\";\n\tif (typeof window === \"undefined\") {\n\t\tif (loader) {\n\t\t\tif (ssrLoaderData.has(loader)) return {\n\t\t\t\tdata: ssrLoaderData.get(loader),\n\t\t\t\trefetch: async function() {},\n\t\t\t\tstate: \"idle\"\n\t\t\t};\n\t\t\tvar serverContext = useServerContext();\n\t\t\tif (serverContext === null || serverContext === void 0 ? void 0 : serverContext.matches) {\n\t\t\t\tvar contextKey = useContextKey();\n\t\t\t\tvar match = serverContext.matches.find(function(m) {\n\t\t\t\t\treturn getContextKey(m.routeId) === contextKey;\n\t\t\t\t});\n\t\t\t\tif (match && match.loaderData !== void 0) return {\n\t\t\t\t\tdata: match.loaderData,\n\t\t\t\t\trefetch: async function() {},\n\t\t\t\t\tstate: \"idle\"\n\t\t\t\t};\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tdata: useAsyncFn(loader, loaderPropsFromServerContext || {\n\t\t\t\t\tpath: pathname,\n\t\t\t\t\tparams\n\t\t\t\t}),\n\t\t\t\trefetch: async function() {},\n\t\t\t\tstate: \"idle\"\n\t\t\t};\n\t\t}\n\t\tif (loaderDataFromServerContext !== void 0) return {\n\t\t\tdata: loaderDataFromServerContext,\n\t\t\trefetch: async function() {},\n\t\t\tstate: \"idle\"\n\t\t};\n\t}\n\tvar matchRouteId = loader ? (function() {\n\t\tvar result = loader();\n\t\treturn typeof result === \"string\" && result.startsWith(\"./\") ? result : null;\n\t})() : null;\n\tvar clientMatches = useSyncExternalStore(subscribeToClientMatches, getClientMatchesSnapshot, getClientMatchesSnapshot);\n\tvar preloadedData = (loaderPropsFromServerContext === null || loaderPropsFromServerContext === void 0 ? void 0 : loaderPropsFromServerContext.path) === currentPath ? loaderDataFromServerContext : void 0;\n\tvar loaderStateEntry = useSyncExternalStore(subscribe, function() {\n\t\treturn getLoaderState(currentPath, preloadedData);\n\t}, function() {\n\t\treturn getLoaderState(currentPath, preloadedData);\n\t});\n\tvar refetch = useCallback(function() {\n\t\treturn refetchLoader(currentPath);\n\t}, [currentPath]);\n\tif (matchRouteId) {\n\t\tvar _clientMatches_;\n\t\tvar match1 = clientMatches.find(function(m) {\n\t\t\treturn m.routeId === matchRouteId;\n\t\t});\n\t\tvar isPageMatch = clientMatches.length > 0 && ((_clientMatches_ = clientMatches[clientMatches.length - 1]) === null || _clientMatches_ === void 0 ? void 0 : _clientMatches_.routeId) === matchRouteId;\n\t\tvar matchPathNormalized = ((match1 === null || match1 === void 0 ? void 0 : match1.pathname) || \"\").replace(/\\/$/, \"\") || \"/\";\n\t\tvar matchPathFresh = !isPageMatch || matchPathNormalized === currentPath;\n\t\tif (match1 && match1.loaderData != null && matchPathFresh) return {\n\t\t\tdata: match1.loaderData,\n\t\t\trefetch: async function() {\n\t\t\t\tawait refetchLoader(currentPath);\n\t\t\t\tvar fresh = loaderState[currentPath];\n\t\t\t\tif ((fresh === null || fresh === void 0 ? void 0 : fresh.data) != null) updateMatchLoaderData(matchRouteId, fresh.data);\n\t\t\t},\n\t\t\tstate: loaderStateEntry.state\n\t\t};\n\t}\n\tif (!loader) return {\n\t\trefetch,\n\t\tstate: loaderStateEntry.state\n\t};\n\tif (!loaderStateEntry.data && !loaderStateEntry.promise && !loaderStateEntry.hasLoadedOnce) {\n\t\tvar resolvedPreloadData = preloadedLoaderData[currentPath];\n\t\tif (resolvedPreloadData != null) {\n\t\t\tdelete preloadedLoaderData[currentPath];\n\t\t\tdelete preloadingLoader[currentPath];\n\t\t\tloaderStateEntry.data = resolvedPreloadData;\n\t\t\tloaderStateEntry.hasLoadedOnce = true;\n\t\t} else if (preloadingLoader[currentPath]) loaderStateEntry.promise = preloadingLoader[currentPath].then(function(val) {\n\t\t\tdelete preloadingLoader[currentPath];\n\t\t\tdelete preloadedLoaderData[currentPath];\n\t\t\tif (val != null) updateState(currentPath, {\n\t\t\t\tdata: val,\n\t\t\t\thasLoadedOnce: true,\n\t\t\t\tpromise: void 0\n\t\t\t});\n\t\t\telse updateState(currentPath, { promise: void 0 });\n\t\t}).catch(function(err) {\n\t\t\tconsole.error(`Error running loader()`, err);\n\t\t\tdelete preloadingLoader[currentPath];\n\t\t\tupdateState(currentPath, {\n\t\t\t\terror: err,\n\t\t\t\tpromise: void 0\n\t\t\t});\n\t\t});\n\t\telse {\n\t\t\tvar loadData = async function() {\n\t\t\t\tvar startTime = performance.now();\n\t\t\t\ttry {\n\t\t\t\t\tvar _dynamicImport;\n\t\t\t\t\tvar nativeLoaderJSUrl;\n\t\t\t\t\tif (process.env.NODE_ENV === \"development\") nativeLoaderJSUrl = `${getLoaderPath(currentPath, true)}?platform=native`;\n\t\t\t\t\telse nativeLoaderJSUrl = `${getURL()}/assets/${currentPath.slice(1).replace(/\\/$/, \"\").replaceAll(\"_\", \"__\").replaceAll(\"/\", \"_\")}${LOADER_JS_POSTFIX_UNCACHED.replace(\".js\", \".native.js\")}`;\n\t\t\t\t\ttry {\n\t\t\t\t\t\tvar moduleLoadStart = performance.now();\n\t\t\t\t\t\tvar controller = new AbortController();\n\t\t\t\t\t\tvar timeoutId = setTimeout(function() {\n\t\t\t\t\t\t\treturn controller.abort();\n\t\t\t\t\t\t}, LOADER_TIMEOUT);\n\t\t\t\t\t\tvar loaderJsCode;\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tvar loaderJsCodeResp = await fetch(nativeLoaderJSUrl, { signal: controller.signal });\n\t\t\t\t\t\t\tif (!loaderJsCodeResp.ok) throw new Error(`Response not ok: ${loaderJsCodeResp.status}`);\n\t\t\t\t\t\t\tloaderJsCode = await loaderJsCodeResp.text();\n\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\tclearTimeout(timeoutId);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar result = {};\n\t\t\t\t\t\tnew Function(\"exports\", loaderJsCode)(result);\n\t\t\t\t\t\tvar moduleLoadTime = performance.now() - moduleLoadStart;\n\t\t\t\t\t\tif (typeof result.loader !== \"function\") throw new Error(\"Loader code isn't exporting a `loader` function\");\n\t\t\t\t\t\tvar executionStart = performance.now();\n\t\t\t\t\t\tvar data = await result.loader();\n\t\t\t\t\t\tvar executionTime = performance.now() - executionStart;\n\t\t\t\t\t\tvar totalTime = performance.now() - startTime;\n\t\t\t\t\t\tif (data === null || data === void 0 ? void 0 : data.__oneRedirect) {\n\t\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\t\tmoduleLoadTime,\n\t\t\t\t\t\t\t\texecutionTime,\n\t\t\t\t\t\t\t\ttotalTime,\n\t\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\t\t\tdata: void 0,\n\t\t\t\t\t\t\t\thasLoadedOnce: true,\n\t\t\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\trouter.replace(data.__oneRedirect);\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ((data === null || data === void 0 ? void 0 : data.__oneError) === 404) {\n\t\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\t\tmoduleLoadTime,\n\t\t\t\t\t\t\t\texecutionTime,\n\t\t\t\t\t\t\t\ttotalTime,\n\t\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tvar notFoundRoute = findNearestNotFoundRoute(currentPath, routeNode);\n\t\t\t\t\t\t\tsetNotFoundState({\n\t\t\t\t\t\t\t\tnotFoundPath: data.__oneNotFoundPath || \"/+not-found\",\n\t\t\t\t\t\t\t\tnotFoundRouteNode: notFoundRoute || void 0,\n\t\t\t\t\t\t\t\toriginalPath: currentPath\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\t\tdata,\n\t\t\t\t\t\t\thasLoadedOnce: true,\n\t\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t\t});\n\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\tmoduleLoadTime,\n\t\t\t\t\t\t\texecutionTime,\n\t\t\t\t\t\t\ttotalTime,\n\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t});\n\t\t\t\t\t\treturn;\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tconsole.error(`[one] native loader error for ${currentPath}:`, _instanceof(e, Error) ? e.message : e, `url: ${nativeLoaderJSUrl}`);\n\t\t\t\t\t\tvar totalTime1 = performance.now() - startTime;\n\t\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\t\tdata: {},\n\t\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t\t});\n\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\ttotalTime: totalTime1,\n\t\t\t\t\t\t\terror: _instanceof(e, Error) ? e.message : String(e),\n\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t});\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tvar loaderJSUrl = getLoaderPath(currentPath, true);\n\t\t\t\t\tvar moduleLoadStart1 = performance.now();\n\t\t\t\t\tvar module = await ((_dynamicImport = dynamicImport(loaderJSUrl)) === null || _dynamicImport === void 0 ? void 0 : _dynamicImport.catch(function() {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}));\n\t\t\t\t\tvar moduleLoadTime1 = performance.now() - moduleLoadStart1;\n\t\t\t\t\tif (!(module === null || module === void 0 ? void 0 : module.loader)) {\n\t\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\t\tdata: void 0,\n\t\t\t\t\t\t\thasLoadedOnce: true,\n\t\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t\t});\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tvar executionStart1 = performance.now();\n\t\t\t\t\tvar result1 = await module.loader();\n\t\t\t\t\tvar executionTime1 = performance.now() - executionStart1;\n\t\t\t\t\tvar totalTime2 = performance.now() - startTime;\n\t\t\t\t\tif (result1 === null || result1 === void 0 ? void 0 : result1.__oneRedirect) {\n\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\tmoduleLoadTime: moduleLoadTime1,\n\t\t\t\t\t\t\texecutionTime: executionTime1,\n\t\t\t\t\t\t\ttotalTime: totalTime2,\n\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t});\n\t\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\t\tdata: void 0,\n\t\t\t\t\t\t\thasLoadedOnce: true,\n\t\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t\t});\n\t\t\t\t\t\trouter.replace(result1.__oneRedirect);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tif ((result1 === null || result1 === void 0 ? void 0 : result1.__oneError) === 404) {\n\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\tmoduleLoadTime: moduleLoadTime1,\n\t\t\t\t\t\t\texecutionTime: executionTime1,\n\t\t\t\t\t\t\ttotalTime: totalTime2,\n\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t});\n\t\t\t\t\t\tvar notFoundRoute1 = findNearestNotFoundRoute(currentPath, routeNode);\n\t\t\t\t\t\tsetNotFoundState({\n\t\t\t\t\t\t\tnotFoundPath: result1.__oneNotFoundPath || \"/+not-found\",\n\t\t\t\t\t\t\tnotFoundRouteNode: notFoundRoute1 || void 0,\n\t\t\t\t\t\t\toriginalPath: currentPath\n\t\t\t\t\t\t});\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\tdata: result1,\n\t\t\t\t\t\thasLoadedOnce: true,\n\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t});\n\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\tmoduleLoadTime: moduleLoadTime1,\n\t\t\t\t\t\texecutionTime: executionTime1,\n\t\t\t\t\t\ttotalTime: totalTime2,\n\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t});\n\t\t\t\t} catch (err) {\n\t\t\t\t\tvar totalTime3 = performance.now() - startTime;\n\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\terror: err,\n\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t});\n\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\ttotalTime: totalTime3,\n\t\t\t\t\t\terror: _instanceof(err, Error) ? err.message : String(err),\n\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t};\n\t\t\tloaderStateEntry.promise = loadData();\n\t\t}\n\t}\n\tif (loaderStateEntry.error && !loaderStateEntry.hasLoadedOnce) throw loaderStateEntry.error;\n\tif (loaderStateEntry.data === void 0 && loaderStateEntry.promise && !loaderStateEntry.hasLoadedOnce) throw loaderStateEntry.promise;\n\treturn {\n\t\tdata: loaderStateEntry.data,\n\t\trefetch,\n\t\tstate: loaderStateEntry.state\n\t};\n}\nfunction useLoader(loader) {\n\tvar { data } = useLoaderState(loader);\n\treturn data;\n}\nvar results = /* @__PURE__ */ new Map();\nvar started = /* @__PURE__ */ new Map();\nvar USE_ASYNC_FN_CACHE_MAX = 100;\nfunction setBoundedResults(key, value) {\n\tif (results.size >= USE_ASYNC_FN_CACHE_MAX && !results.has(key)) {\n\t\tvar firstKey = results.keys().next().value;\n\t\tif (firstKey !== void 0) {\n\t\t\tresults.delete(firstKey);\n\t\t\tstarted.delete(firstKey);\n\t\t}\n\t}\n\tresults.set(key, value);\n}\nfunction resetLoaderState() {\n\tresults.clear();\n\tstarted.clear();\n}\nfunction useAsyncFn(val, props) {\n\tvar key = (val ? weakKey(val) : \"\") + JSON.stringify(props);\n\tif (val) {\n\t\tif (!started.get(key)) {\n\t\t\tstarted.set(key, true);\n\t\t\tvar next = val(props);\n\t\t\tif (_instanceof(next, Promise)) next = next.then(function(final) {\n\t\t\t\tsetBoundedResults(key, final);\n\t\t\t}).catch(function(err) {\n\t\t\t\tconsole.error(`Error running loader()`, err);\n\t\t\t\tsetBoundedResults(key, void 0);\n\t\t\t});\n\t\t\tsetBoundedResults(key, next);\n\t\t}\n\t}\n\tvar current = results.get(key);\n\tif (_instanceof(current, Promise)) throw current;\n\treturn current;\n}\n\nexport { getLoaderTimingHistory, refetchLoader, refetchMatchLoader, resetLoaderState, setSSRLoaderData, useLoader, useLoaderState };"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useSyncExternalStore","registerDevtoolsFunction","useParams","usePathname","findNearestNotFoundRoute","setNotFoundState","useContextKey","getContextKey","router","preloadedLoaderData","preloadingLoader","routeNode","setSSRLoaderData","ssrLoaderData","getClientMatchesSnapshot","subscribeToClientMatches","updateMatchLoaderData","getLoaderPath","getURL","LOADER_JS_POSTFIX_UNCACHED","dynamicImport","weakKey","useServerContext","_instanceof","left","right","Symbol","hasInstance","LOADER_TIMEOUT","process","env","ONE_LOADER_TIMEOUT_MS","loaderTimingHistory","MAX_TIMING_HISTORY","recordLoaderTiming","NODE_ENV","entry","unshift","length","pop","getLoaderTimingHistory","loaderState","subscribers","Set","LOADER_STATE_MAX","loaderStateKeys","setBoundedLoaderState","path","push","oldest","shift","updateState","updates","forEach","callback","subscribe","add","delete","getLoaderState","preloadedData","data","error","promise","state","hasLoadedOnce","refetchLoader","pathname","startTime","performance","now","_dynamicImport","loaderJSUrl","Date","moduleLoadStart","module","catch","moduleLoadTime","loader","executionStart","result","executionTime","totalTime","__oneRedirect","source","replace","__oneError","notFoundRoute","notFoundPath","__oneNotFoundPath","notFoundRouteNode","originalPath","timestamp","currentMatches","pageMatch","normalizedPathname","normalizedMatchPathname","routeId","err","totalTime1","Error","message","String","window","__oneRefetchLoader","refetchMatchLoader","currentPath","useLoaderState","loaderProps","loaderPropsFromServerContext","loaderData","loaderDataFromServerContext","params","has","get","refetch","serverContext","matches","contextKey","match","find","m","useAsyncFn","matchRouteId","startsWith","clientMatches","loaderStateEntry","_clientMatches_","match1","isPageMatch","matchPathNormalized","matchPathFresh","fresh","resolvedPreloadData","then","val","console","loadData","nativeLoaderJSUrl","slice","replaceAll","controller","AbortController","timeoutId","setTimeout","abort","loaderJsCode","loaderJsCodeResp","fetch","signal","ok","status","text","clearTimeout","Function","e","moduleLoadStart1","moduleLoadTime1","executionStart1","result1","executionTime1","totalTime2","notFoundRoute1","totalTime3","useLoader","results","Map","started","USE_ASYNC_FN_CACHE_MAX","setBoundedResults","key","value","size","firstKey","keys","next","set","resetLoaderState","clear","props","JSON","stringify","Promise","final","current"],"sources":["useLoader.native.js"],"sourcesContent":["import { useCallback, useSyncExternalStore } from \"react\";\nimport { registerDevtoolsFunction } from \"./devtools/registry\";\nimport { useParams, usePathname } from \"./hooks\";\nimport { findNearestNotFoundRoute, setNotFoundState } from \"./notFoundState\";\nimport { useContextKey } from \"./router/Route\";\nimport { getContextKey } from \"./router/matchers\";\nimport { router } from \"./router/imperative-api\";\nimport { preloadedLoaderData, preloadingLoader, routeNode } from \"./router/router\";\nimport { setSSRLoaderData, ssrLoaderData } from \"./server/ssrLoaderData\";\nimport { getClientMatchesSnapshot, subscribeToClientMatches, updateMatchLoaderData } from \"./useMatches\";\nimport { getLoaderPath } from \"./utils/cleanUrl\";\nimport { getURL } from \"./getURL\";\nimport { LOADER_JS_POSTFIX_UNCACHED } from \"./constants\";\nimport { dynamicImport } from \"./utils/dynamicImport\";\nimport { weakKey } from \"./utils/weakKey\";\nimport { useServerContext } from \"./vite/one-server-only\";\n\nfunction _instanceof(left, right) {\n\tif (right != null && typeof Symbol !== \"undefined\" && right[Symbol.hasInstance]) return !!right[Symbol.hasInstance](left);\n\telse return left instanceof right;\n}\nvar LOADER_TIMEOUT = process.env.ONE_LOADER_TIMEOUT_MS ? +process.env.ONE_LOADER_TIMEOUT_MS : 6e4;\nvar loaderTimingHistory = [];\nvar MAX_TIMING_HISTORY = 50;\nvar recordLoaderTiming = process.env.NODE_ENV === \"development\" ? function(entry) {\n\tloaderTimingHistory.unshift(entry);\n\tif (loaderTimingHistory.length > MAX_TIMING_HISTORY) loaderTimingHistory.pop();\n} : void 0;\nfunction getLoaderTimingHistory() {\n\treturn loaderTimingHistory;\n}\nregisterDevtoolsFunction(\"getLoaderTimingHistory\", getLoaderTimingHistory);\nregisterDevtoolsFunction(\"recordLoaderTiming\", recordLoaderTiming);\nvar loaderState = {};\nvar subscribers = /* @__PURE__ */ new Set();\nvar LOADER_STATE_MAX = 200;\nvar loaderStateKeys = [];\nfunction setBoundedLoaderState(path, entry) {\n\tif (!(path in loaderState)) {\n\t\tloaderStateKeys.push(path);\n\t\tif (loaderStateKeys.length > LOADER_STATE_MAX) {\n\t\t\tvar oldest = loaderStateKeys.shift();\n\t\t\tdelete loaderState[oldest];\n\t\t}\n\t}\n\tloaderState[path] = entry;\n}\nfunction updateState(path, updates) {\n\tsetBoundedLoaderState(path, {\n\t\t...loaderState[path],\n\t\t...updates\n\t});\n\tsubscribers.forEach(function(callback) {\n\t\tcallback();\n\t});\n}\nfunction subscribe(callback) {\n\tsubscribers.add(callback);\n\treturn function() {\n\t\treturn subscribers.delete(callback);\n\t};\n}\nfunction getLoaderState(path, preloadedData) {\n\tif (!(path in loaderState)) setBoundedLoaderState(path, {\n\t\tdata: preloadedData,\n\t\terror: void 0,\n\t\tpromise: void 0,\n\t\tstate: \"idle\",\n\t\thasLoadedOnce: !!preloadedData\n\t});\n\treturn loaderState[path];\n}\nasync function refetchLoader(pathname) {\n\tvar startTime = performance.now();\n\tupdateState(pathname, {\n\t\tstate: \"loading\",\n\t\terror: null\n\t});\n\ttry {\n\t\tvar _dynamicImport;\n\t\tvar loaderJSUrl = getLoaderPath(pathname, true, `${Date.now()}`);\n\t\tvar moduleLoadStart = performance.now();\n\t\tvar module = await ((_dynamicImport = dynamicImport(loaderJSUrl)) === null || _dynamicImport === void 0 ? void 0 : _dynamicImport.catch(function() {\n\t\t\treturn null;\n\t\t}));\n\t\tvar moduleLoadTime = performance.now() - moduleLoadStart;\n\t\tif (!(module === null || module === void 0 ? void 0 : module.loader)) {\n\t\t\tupdateState(pathname, {\n\t\t\t\tdata: void 0,\n\t\t\t\tstate: \"idle\",\n\t\t\t\thasLoadedOnce: true\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tvar executionStart = performance.now();\n\t\tvar result = await module.loader();\n\t\tvar executionTime = performance.now() - executionStart;\n\t\tvar totalTime = performance.now() - startTime;\n\t\tif (result === null || result === void 0 ? void 0 : result.__oneRedirect) {\n\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\tpath: pathname,\n\t\t\t\tstartTime,\n\t\t\t\tmoduleLoadTime,\n\t\t\t\texecutionTime,\n\t\t\t\ttotalTime,\n\t\t\t\tsource: \"refetch\"\n\t\t\t});\n\t\t\tupdateState(pathname, {\n\t\t\t\tdata: void 0,\n\t\t\t\tstate: \"idle\",\n\t\t\t\thasLoadedOnce: true\n\t\t\t});\n\t\t\trouter.replace(result.__oneRedirect);\n\t\t\treturn;\n\t\t}\n\t\tif ((result === null || result === void 0 ? void 0 : result.__oneError) === 404) {\n\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\tpath: pathname,\n\t\t\t\tstartTime,\n\t\t\t\tmoduleLoadTime,\n\t\t\t\texecutionTime,\n\t\t\t\ttotalTime,\n\t\t\t\tsource: \"refetch\"\n\t\t\t});\n\t\t\tvar notFoundRoute = findNearestNotFoundRoute(pathname, routeNode);\n\t\t\tsetNotFoundState({\n\t\t\t\tnotFoundPath: result.__oneNotFoundPath || \"/+not-found\",\n\t\t\t\tnotFoundRouteNode: notFoundRoute || void 0,\n\t\t\t\toriginalPath: pathname\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tupdateState(pathname, {\n\t\t\tdata: result,\n\t\t\tstate: \"idle\",\n\t\t\ttimestamp: Date.now(),\n\t\t\thasLoadedOnce: true\n\t\t});\n\t\tvar currentMatches = getClientMatchesSnapshot();\n\t\tvar pageMatch = currentMatches[currentMatches.length - 1];\n\t\tvar normalizedPathname = pathname.replace(/\\/$/, \"\") || \"/\";\n\t\tvar normalizedMatchPathname = ((pageMatch === null || pageMatch === void 0 ? void 0 : pageMatch.pathname) || \"\").replace(/\\/$/, \"\") || \"/\";\n\t\tif (pageMatch && normalizedMatchPathname === normalizedPathname) updateMatchLoaderData(pageMatch.routeId, result);\n\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\tpath: pathname,\n\t\t\tstartTime,\n\t\t\tmoduleLoadTime,\n\t\t\texecutionTime,\n\t\t\ttotalTime,\n\t\t\tsource: \"refetch\"\n\t\t});\n\t} catch (err) {\n\t\tvar totalTime1 = performance.now() - startTime;\n\t\tupdateState(pathname, {\n\t\t\terror: err,\n\t\t\tstate: \"idle\"\n\t\t});\n\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\tpath: pathname,\n\t\t\tstartTime,\n\t\t\ttotalTime: totalTime1,\n\t\t\terror: _instanceof(err, Error) ? err.message : String(err),\n\t\t\tsource: \"refetch\"\n\t\t});\n\t\tthrow err;\n\t}\n}\nif (process.env.NODE_ENV === \"development\" && typeof window !== \"undefined\") window.__oneRefetchLoader = refetchLoader;\nasync function refetchMatchLoader(routeId, currentPath) {\n\tvar _dynamicImport;\n\tvar module = await ((_dynamicImport = dynamicImport(getLoaderPath(currentPath, true, `${Date.now()}`))) === null || _dynamicImport === void 0 ? void 0 : _dynamicImport.catch(function() {\n\t\treturn null;\n\t}));\n\tif (!(module === null || module === void 0 ? void 0 : module.loader)) return;\n\tvar result = await module.loader();\n\tif ((result === null || result === void 0 ? void 0 : result.__oneRedirect) || (result === null || result === void 0 ? void 0 : result.__oneError)) return;\n\tupdateMatchLoaderData(routeId, result);\n}\nfunction useLoaderState(loader) {\n\tvar { loaderProps: loaderPropsFromServerContext, loaderData: loaderDataFromServerContext } = useServerContext() || {};\n\tvar params = useParams();\n\tvar pathname = usePathname();\n\tvar currentPath = pathname.replace(/\\/index$/, \"\").replace(/\\/$/, \"\") || \"/\";\n\tif (typeof window === \"undefined\") {\n\t\tif (loader) {\n\t\t\tif (ssrLoaderData.has(loader)) return {\n\t\t\t\tdata: ssrLoaderData.get(loader),\n\t\t\t\trefetch: async function() {},\n\t\t\t\tstate: \"idle\"\n\t\t\t};\n\t\t\tvar serverContext = useServerContext();\n\t\t\tif (serverContext === null || serverContext === void 0 ? void 0 : serverContext.matches) {\n\t\t\t\tvar contextKey = useContextKey();\n\t\t\t\tvar match = serverContext.matches.find(function(m) {\n\t\t\t\t\treturn getContextKey(m.routeId) === contextKey;\n\t\t\t\t});\n\t\t\t\tif (match && match.loaderData !== void 0) return {\n\t\t\t\t\tdata: match.loaderData,\n\t\t\t\t\trefetch: async function() {},\n\t\t\t\t\tstate: \"idle\"\n\t\t\t\t};\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tdata: useAsyncFn(loader, loaderPropsFromServerContext || {\n\t\t\t\t\tpath: pathname,\n\t\t\t\t\tparams\n\t\t\t\t}),\n\t\t\t\trefetch: async function() {},\n\t\t\t\tstate: \"idle\"\n\t\t\t};\n\t\t}\n\t\tif (loaderDataFromServerContext !== void 0) return {\n\t\t\tdata: loaderDataFromServerContext,\n\t\t\trefetch: async function() {},\n\t\t\tstate: \"idle\"\n\t\t};\n\t}\n\tvar matchRouteId = loader ? (function() {\n\t\tvar result = loader();\n\t\treturn typeof result === \"string\" && result.startsWith(\"./\") ? result : null;\n\t})() : null;\n\tvar clientMatches = useSyncExternalStore(subscribeToClientMatches, getClientMatchesSnapshot, getClientMatchesSnapshot);\n\tvar preloadedData = (loaderPropsFromServerContext === null || loaderPropsFromServerContext === void 0 ? void 0 : loaderPropsFromServerContext.path) === currentPath ? loaderDataFromServerContext : void 0;\n\tvar loaderStateEntry = useSyncExternalStore(subscribe, function() {\n\t\treturn getLoaderState(currentPath, preloadedData);\n\t}, function() {\n\t\treturn getLoaderState(currentPath, preloadedData);\n\t});\n\tvar refetch = useCallback(function() {\n\t\treturn refetchLoader(currentPath);\n\t}, [currentPath]);\n\tif (matchRouteId) {\n\t\tvar _clientMatches_;\n\t\tvar match1 = clientMatches.find(function(m) {\n\t\t\treturn m.routeId === matchRouteId;\n\t\t});\n\t\tvar isPageMatch = clientMatches.length > 0 && ((_clientMatches_ = clientMatches[clientMatches.length - 1]) === null || _clientMatches_ === void 0 ? void 0 : _clientMatches_.routeId) === matchRouteId;\n\t\tvar matchPathNormalized = ((match1 === null || match1 === void 0 ? void 0 : match1.pathname) || \"\").replace(/\\/$/, \"\") || \"/\";\n\t\tvar matchPathFresh = !isPageMatch || matchPathNormalized === currentPath;\n\t\tif (match1 && match1.loaderData != null && matchPathFresh) return {\n\t\t\tdata: match1.loaderData,\n\t\t\trefetch: async function() {\n\t\t\t\tawait refetchLoader(currentPath);\n\t\t\t\tvar fresh = loaderState[currentPath];\n\t\t\t\tif ((fresh === null || fresh === void 0 ? void 0 : fresh.data) != null) updateMatchLoaderData(matchRouteId, fresh.data);\n\t\t\t},\n\t\t\tstate: loaderStateEntry.state\n\t\t};\n\t}\n\tif (!loader) return {\n\t\trefetch,\n\t\tstate: loaderStateEntry.state\n\t};\n\tif (!loaderStateEntry.data && !loaderStateEntry.promise && !loaderStateEntry.hasLoadedOnce) {\n\t\tvar resolvedPreloadData = preloadedLoaderData[currentPath];\n\t\tif (resolvedPreloadData != null) {\n\t\t\tdelete preloadedLoaderData[currentPath];\n\t\t\tdelete preloadingLoader[currentPath];\n\t\t\tloaderStateEntry.data = resolvedPreloadData;\n\t\t\tloaderStateEntry.hasLoadedOnce = true;\n\t\t} else if (preloadingLoader[currentPath]) loaderStateEntry.promise = preloadingLoader[currentPath].then(function(val) {\n\t\t\tdelete preloadingLoader[currentPath];\n\t\t\tdelete preloadedLoaderData[currentPath];\n\t\t\tif (val != null) updateState(currentPath, {\n\t\t\t\tdata: val,\n\t\t\t\thasLoadedOnce: true,\n\t\t\t\tpromise: void 0\n\t\t\t});\n\t\t\telse updateState(currentPath, { promise: void 0 });\n\t\t}).catch(function(err) {\n\t\t\tconsole.error(`Error running loader()`, err);\n\t\t\tdelete preloadingLoader[currentPath];\n\t\t\tupdateState(currentPath, {\n\t\t\t\terror: err,\n\t\t\t\tpromise: void 0\n\t\t\t});\n\t\t});\n\t\telse {\n\t\t\tvar loadData = async function() {\n\t\t\t\tvar startTime = performance.now();\n\t\t\t\ttry {\n\t\t\t\t\tvar _dynamicImport;\n\t\t\t\t\tvar nativeLoaderJSUrl;\n\t\t\t\t\tif (process.env.NODE_ENV === \"development\") nativeLoaderJSUrl = `${getLoaderPath(currentPath, true)}?platform=native`;\n\t\t\t\t\telse nativeLoaderJSUrl = `${getURL()}/assets/${currentPath.slice(1).replace(/\\/$/, \"\").replaceAll(\"_\", \"__\").replaceAll(\"/\", \"_\")}${LOADER_JS_POSTFIX_UNCACHED.replace(\".js\", \".native.js\")}`;\n\t\t\t\t\ttry {\n\t\t\t\t\t\tvar moduleLoadStart = performance.now();\n\t\t\t\t\t\tvar controller = new AbortController();\n\t\t\t\t\t\tvar timeoutId = setTimeout(function() {\n\t\t\t\t\t\t\treturn controller.abort();\n\t\t\t\t\t\t}, LOADER_TIMEOUT);\n\t\t\t\t\t\tvar loaderJsCode;\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tvar loaderJsCodeResp = await fetch(nativeLoaderJSUrl, { signal: controller.signal });\n\t\t\t\t\t\t\tif (!loaderJsCodeResp.ok) throw new Error(`Response not ok: ${loaderJsCodeResp.status}`);\n\t\t\t\t\t\t\tloaderJsCode = await loaderJsCodeResp.text();\n\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\tclearTimeout(timeoutId);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar result = {};\n\t\t\t\t\t\tnew Function(\"exports\", loaderJsCode)(result);\n\t\t\t\t\t\tvar moduleLoadTime = performance.now() - moduleLoadStart;\n\t\t\t\t\t\tif (typeof result.loader !== \"function\") throw new Error(\"Loader code isn't exporting a `loader` function\");\n\t\t\t\t\t\tvar executionStart = performance.now();\n\t\t\t\t\t\tvar data = await result.loader();\n\t\t\t\t\t\tvar executionTime = performance.now() - executionStart;\n\t\t\t\t\t\tvar totalTime = performance.now() - startTime;\n\t\t\t\t\t\tif (data === null || data === void 0 ? void 0 : data.__oneRedirect) {\n\t\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\t\tmoduleLoadTime,\n\t\t\t\t\t\t\t\texecutionTime,\n\t\t\t\t\t\t\t\ttotalTime,\n\t\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\t\t\tdata: void 0,\n\t\t\t\t\t\t\t\thasLoadedOnce: true,\n\t\t\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\trouter.replace(data.__oneRedirect);\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ((data === null || data === void 0 ? void 0 : data.__oneError) === 404) {\n\t\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\t\tmoduleLoadTime,\n\t\t\t\t\t\t\t\texecutionTime,\n\t\t\t\t\t\t\t\ttotalTime,\n\t\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tvar notFoundRoute = findNearestNotFoundRoute(currentPath, routeNode);\n\t\t\t\t\t\t\tsetNotFoundState({\n\t\t\t\t\t\t\t\tnotFoundPath: data.__oneNotFoundPath || \"/+not-found\",\n\t\t\t\t\t\t\t\tnotFoundRouteNode: notFoundRoute || void 0,\n\t\t\t\t\t\t\t\toriginalPath: currentPath\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\t\tdata,\n\t\t\t\t\t\t\thasLoadedOnce: true,\n\t\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t\t});\n\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\tmoduleLoadTime,\n\t\t\t\t\t\t\texecutionTime,\n\t\t\t\t\t\t\ttotalTime,\n\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t});\n\t\t\t\t\t\treturn;\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tconsole.error(`[one] native loader error for ${currentPath}:`, _instanceof(e, Error) ? e.message : e, `url: ${nativeLoaderJSUrl}`);\n\t\t\t\t\t\tvar totalTime1 = performance.now() - startTime;\n\t\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\t\tdata: {},\n\t\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t\t});\n\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\ttotalTime: totalTime1,\n\t\t\t\t\t\t\terror: _instanceof(e, Error) ? e.message : String(e),\n\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t});\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tvar loaderJSUrl = getLoaderPath(currentPath, true);\n\t\t\t\t\tvar moduleLoadStart1 = performance.now();\n\t\t\t\t\tvar module = await ((_dynamicImport = dynamicImport(loaderJSUrl)) === null || _dynamicImport === void 0 ? void 0 : _dynamicImport.catch(function() {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}));\n\t\t\t\t\tvar moduleLoadTime1 = performance.now() - moduleLoadStart1;\n\t\t\t\t\tif (!(module === null || module === void 0 ? void 0 : module.loader)) {\n\t\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\t\tdata: void 0,\n\t\t\t\t\t\t\thasLoadedOnce: true,\n\t\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t\t});\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tvar executionStart1 = performance.now();\n\t\t\t\t\tvar result1 = await module.loader();\n\t\t\t\t\tvar executionTime1 = performance.now() - executionStart1;\n\t\t\t\t\tvar totalTime2 = performance.now() - startTime;\n\t\t\t\t\tif (result1 === null || result1 === void 0 ? void 0 : result1.__oneRedirect) {\n\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\tmoduleLoadTime: moduleLoadTime1,\n\t\t\t\t\t\t\texecutionTime: executionTime1,\n\t\t\t\t\t\t\ttotalTime: totalTime2,\n\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t});\n\t\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\t\tdata: void 0,\n\t\t\t\t\t\t\thasLoadedOnce: true,\n\t\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t\t});\n\t\t\t\t\t\trouter.replace(result1.__oneRedirect);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tif ((result1 === null || result1 === void 0 ? void 0 : result1.__oneError) === 404) {\n\t\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\t\tmoduleLoadTime: moduleLoadTime1,\n\t\t\t\t\t\t\texecutionTime: executionTime1,\n\t\t\t\t\t\t\ttotalTime: totalTime2,\n\t\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t\t});\n\t\t\t\t\t\tvar notFoundRoute1 = findNearestNotFoundRoute(currentPath, routeNode);\n\t\t\t\t\t\tsetNotFoundState({\n\t\t\t\t\t\t\tnotFoundPath: result1.__oneNotFoundPath || \"/+not-found\",\n\t\t\t\t\t\t\tnotFoundRouteNode: notFoundRoute1 || void 0,\n\t\t\t\t\t\t\toriginalPath: currentPath\n\t\t\t\t\t\t});\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\tdata: result1,\n\t\t\t\t\t\thasLoadedOnce: true,\n\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t});\n\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\tmoduleLoadTime: moduleLoadTime1,\n\t\t\t\t\t\texecutionTime: executionTime1,\n\t\t\t\t\t\ttotalTime: totalTime2,\n\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t});\n\t\t\t\t} catch (err) {\n\t\t\t\t\tvar totalTime3 = performance.now() - startTime;\n\t\t\t\t\tupdateState(currentPath, {\n\t\t\t\t\t\terror: err,\n\t\t\t\t\t\tpromise: void 0\n\t\t\t\t\t});\n\t\t\t\t\trecordLoaderTiming === null || recordLoaderTiming === void 0 || recordLoaderTiming({\n\t\t\t\t\t\tpath: currentPath,\n\t\t\t\t\t\tstartTime,\n\t\t\t\t\t\ttotalTime: totalTime3,\n\t\t\t\t\t\terror: _instanceof(err, Error) ? err.message : String(err),\n\t\t\t\t\t\tsource: \"initial\"\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t};\n\t\t\tloaderStateEntry.promise = loadData();\n\t\t}\n\t}\n\tif (loaderStateEntry.error && !loaderStateEntry.hasLoadedOnce) throw loaderStateEntry.error;\n\tif (loaderStateEntry.data === void 0 && loaderStateEntry.promise && !loaderStateEntry.hasLoadedOnce) throw loaderStateEntry.promise;\n\treturn {\n\t\tdata: loaderStateEntry.data,\n\t\trefetch,\n\t\tstate: loaderStateEntry.state\n\t};\n}\nfunction useLoader(loader) {\n\tvar { data } = useLoaderState(loader);\n\treturn data;\n}\nvar results = /* @__PURE__ */ new Map();\nvar started = /* @__PURE__ */ new Map();\nvar USE_ASYNC_FN_CACHE_MAX = 100;\nfunction setBoundedResults(key, value) {\n\tif (results.size >= USE_ASYNC_FN_CACHE_MAX && !results.has(key)) {\n\t\tvar firstKey = results.keys().next().value;\n\t\tif (firstKey !== void 0) {\n\t\t\tresults.delete(firstKey);\n\t\t\tstarted.delete(firstKey);\n\t\t}\n\t}\n\tresults.set(key, value);\n}\nfunction resetLoaderState() {\n\tresults.clear();\n\tstarted.clear();\n}\nfunction useAsyncFn(val, props) {\n\tvar key = (val ? weakKey(val) : \"\") + JSON.stringify(props);\n\tif (val) {\n\t\tif (!started.get(key)) {\n\t\t\tstarted.set(key, true);\n\t\t\tvar next = val(props);\n\t\t\tif (_instanceof(next, Promise)) next = next.then(function(final) {\n\t\t\t\tsetBoundedResults(key, final);\n\t\t\t}).catch(function(err) {\n\t\t\t\tconsole.error(`Error running loader()`, err);\n\t\t\t\tsetBoundedResults(key, void 0);\n\t\t\t});\n\t\t\tsetBoundedResults(key, next);\n\t\t}\n\t}\n\tvar current = results.get(key);\n\tif (_instanceof(current, Promise)) throw current;\n\treturn current;\n}\n\nexport { getLoaderTimingHistory, refetchLoader, refetchMatchLoader, resetLoaderState, setSSRLoaderData, useLoader, useLoaderState };"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ const PLATFORM = "web";
2
+ export { PLATFORM };
3
+ //# sourceMappingURL=platform.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["PLATFORM"],"sources":["platform.mjs"],"sourcesContent":["const PLATFORM = \"web\";\nexport {\n PLATFORM\n};\n//# sourceMappingURL=platform.web.js.map\n"],"mappings":"AAAA,MAAMA,QAAQ,GAAG,KAAK;AACtB,SACEA,QAAQ","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ import { Platform } from "react-native";
2
+ var PLATFORM = Platform.OS;
3
+ export { PLATFORM };
4
+ //# sourceMappingURL=platform.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform"],"sources":["../../../src/utils/platform.web.ts"],"sourcesContent":[null],"mappings":"AAAO,SAAMA,QAAW","ignoreList":[]}
@@ -0,0 +1,43 @@
1
+ import micromatch from "micromatch";
2
+ import path from "node:path";
3
+ import { globDir } from "./globDir.mjs";
4
+ import { isPathInsideDirectory, isRouteFilePath } from "./routeFileWatch.mjs";
5
+ function getRoutePaths(routerRoot, ignoredRouteFiles) {
6
+ const routePaths = globDir(routerRoot).filter(routePath => !routePath.endsWith(".d.ts"));
7
+ if (!ignoredRouteFiles?.length) return routePaths;
8
+ return micromatch.not(routePaths, ignoredRouteFiles, {
9
+ matchBase: true
10
+ });
11
+ }
12
+ function createRouteIndex({
13
+ routerRoot,
14
+ ignoredRouteFiles
15
+ }) {
16
+ const absoluteRouterRoot = path.resolve(routerRoot);
17
+ const routePaths = new Set(getRoutePaths(absoluteRouterRoot, ignoredRouteFiles));
18
+ return {
19
+ getPaths() {
20
+ return [...routePaths].sort();
21
+ },
22
+ update(event, filePath) {
23
+ if (event !== "add" && event !== "delete" && event !== "unlink") return false;
24
+ if (!isPathInsideDirectory(filePath, absoluteRouterRoot)) return false;
25
+ if (!isRouteFilePath(filePath)) return false;
26
+ const relativePath = path.relative(absoluteRouterRoot, path.resolve(filePath)).replaceAll("\\", "/");
27
+ const routePath = `./${relativePath}`;
28
+ if (ignoredRouteFiles?.length && micromatch.isMatch(routePath, ignoredRouteFiles, {
29
+ matchBase: true
30
+ })) {
31
+ return false;
32
+ }
33
+ if (event === "add") {
34
+ const size = routePaths.size;
35
+ routePaths.add(routePath);
36
+ return routePaths.size !== size;
37
+ }
38
+ return routePaths.delete(routePath);
39
+ }
40
+ };
41
+ }
42
+ export { createRouteIndex, getRoutePaths };
43
+ //# sourceMappingURL=routeIndex.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["micromatch","path","globDir","isPathInsideDirectory","isRouteFilePath","getRoutePaths","routerRoot","ignoredRouteFiles","routePaths","filter","routePath","endsWith","length","not","matchBase","createRouteIndex","absoluteRouterRoot","resolve","Set","getPaths","sort","update","event","filePath","relativePath","relative","replaceAll","isMatch","size","add","delete"],"sources":["../../../src/utils/routeIndex.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,UAAA,MAAgB;AACvB,OAAOC,IAAA,MAAU;AACjB,SAASC,OAAA,QAAe;AACxB,SAASC,qBAAA,EAAuBC,eAAA,QAAuB;AAEhD,SAASC,cACdC,UAAA,EACAC,iBAAA,EACU;EACV,MAAMC,UAAA,GAAaN,OAAA,CAAQI,UAAU,EAAEG,MAAA,CACpCC,SAAA,IAAc,CAACA,SAAA,CAAUC,QAAA,CAAS,OAAO,CAC5C;EACA,IAAI,CAACJ,iBAAA,EAAmBK,MAAA,EAAQ,OAAOJ,UAAA;EACvC,OAAOR,UAAA,CAAWa,GAAA,CAAIL,UAAA,EAAYD,iBAAA,EAAmB;IAAEO,SAAA,EAAW;EAAK,CAAC;AAC1E;AAEO,SAASC,iBAAiB;EAC/BT,UAAA;EACAC;AACF,GAGG;EACD,MAAMS,kBAAA,GAAqBf,IAAA,CAAKgB,OAAA,CAAQX,UAAU;EAClD,MAAME,UAAA,GAAa,IAAIU,GAAA,CAAIb,aAAA,CAAcW,kBAAA,EAAoBT,iBAAiB,CAAC;EAE/E,OAAO;IACLY,SAAA,EAAW;MACT,OAAO,CAAC,GAAGX,UAAU,EAAEY,IAAA,CAAK;IAC9B;IAEAC,OAAOC,KAAA,EAAeC,QAAA,EAAkB;MACtC,IAAID,KAAA,KAAU,SAASA,KAAA,KAAU,YAAYA,KAAA,KAAU,UAAU,OAAO;MACxE,IAAI,CAACnB,qBAAA,CAAsBoB,QAAA,EAAUP,kBAAkB,GAAG,OAAO;MACjE,IAAI,CAACZ,eAAA,CAAgBmB,QAAQ,GAAG,OAAO;MAEvC,MAAMC,YAAA,GAAevB,IAAA,CAClBwB,QAAA,CAAST,kBAAA,EAAoBf,IAAA,CAAKgB,OAAA,CAAQM,QAAQ,CAAC,EACnDG,UAAA,CAAW,MAAM,GAAG;MACvB,MAAMhB,SAAA,GAAY,KAAKc,YAAY;MACnC,IACEjB,iBAAA,EAAmBK,MAAA,IACnBZ,UAAA,CAAW2B,OAAA,CAAQjB,SAAA,EAAWH,iBAAA,EAAmB;QAAEO,SAAA,EAAW;MAAK,CAAC,GACpE;QACA,OAAO;MACT;MAEA,IAAIQ,KAAA,KAAU,OAAO;QACnB,MAAMM,IAAA,GAAOpB,UAAA,CAAWoB,IAAA;QACxBpB,UAAA,CAAWqB,GAAA,CAAInB,SAAS;QACxB,OAAOF,UAAA,CAAWoB,IAAA,KAASA,IAAA;MAC7B;MAEA,OAAOpB,UAAA,CAAWsB,MAAA,CAAOpB,SAAS;IACpC;EACF;AACF","ignoreList":[]}
@@ -0,0 +1,46 @@
1
+ import micromatch from "micromatch";
2
+ import path from "path";
3
+ import { globDir } from "./globDir.native.js";
4
+ import { isPathInsideDirectory, isRouteFilePath } from "./routeFileWatch.native.js";
5
+ function getRoutePaths(routerRoot, ignoredRouteFiles) {
6
+ var routePaths = globDir(routerRoot).filter(function (routePath) {
7
+ return !routePath.endsWith(".d.ts");
8
+ });
9
+ if (!(ignoredRouteFiles === null || ignoredRouteFiles === void 0 ? void 0 : ignoredRouteFiles.length)) return routePaths;
10
+ return micromatch.not(routePaths, ignoredRouteFiles, {
11
+ matchBase: true
12
+ });
13
+ }
14
+ function createRouteIndex(param) {
15
+ var {
16
+ routerRoot,
17
+ ignoredRouteFiles
18
+ } = param;
19
+ var absoluteRouterRoot = path.resolve(routerRoot);
20
+ var routePaths = new Set(getRoutePaths(absoluteRouterRoot, ignoredRouteFiles));
21
+ return {
22
+ getPaths() {
23
+ return [...routePaths].sort();
24
+ },
25
+ update(event, filePath) {
26
+ if (event !== "add" && event !== "delete" && event !== "unlink") return false;
27
+ if (!isPathInsideDirectory(filePath, absoluteRouterRoot)) return false;
28
+ if (!isRouteFilePath(filePath)) return false;
29
+ var relativePath = path.relative(absoluteRouterRoot, path.resolve(filePath)).replaceAll("\\", "/");
30
+ var routePath = `./${relativePath}`;
31
+ if ((ignoredRouteFiles === null || ignoredRouteFiles === void 0 ? void 0 : ignoredRouteFiles.length) && micromatch.isMatch(routePath, ignoredRouteFiles, {
32
+ matchBase: true
33
+ })) {
34
+ return false;
35
+ }
36
+ if (event === "add") {
37
+ var size = routePaths.size;
38
+ routePaths.add(routePath);
39
+ return routePaths.size !== size;
40
+ }
41
+ return routePaths.delete(routePath);
42
+ }
43
+ };
44
+ }
45
+ export { createRouteIndex, getRoutePaths };
46
+ //# sourceMappingURL=routeIndex.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["micromatch","path","globDir","isPathInsideDirectory","isRouteFilePath","getRoutePaths","routerRoot","ignoredRouteFiles","routePaths","filter","routePath","endsWith","length","not","matchBase","createRouteIndex","param","absoluteRouterRoot","resolve","Set","getPaths","sort","update","event","filePath","relativePath","relative","replaceAll","isMatch","size","add"],"sources":["../../../src/utils/routeIndex.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,UAAA,MAAgB;AACvB,OAAOC,IAAA,MAAU;AACjB,SAASC,OAAA,QAAe;AACxB,SAASC,qBAAA,EAAuBC,eAAA,QAAuB;AAEhD,SAASC,cACdC,UAAA,EACAC,iBAAA,EACU;EACV,IAAAC,UAAM,GAAAN,OAAa,CAAAI,UAAQ,EAAUG,MAAE,WAAAC,SAAA;IACrC,OAAC,CAAAA,SAAe,CAAAC,QAAU,SAAS;EACrC;EACA,IAAI,EAACJ,iBAAA,KAAmB,IAAQ,IAAAA,iBAAO,uBAAAA,iBAAA,CAAAK,MAAA,UAAAJ,UAAA;EACvC,OAAOR,UAAA,CAAWa,GAAA,CAAIL,UAAA,EAAYD,iBAAA,EAAmB;IACvDO,SAAA;EAEO;AAA0B;AAC/B,SACAC,iBAAAC,KAAA;EACF,IAGG;IAAAV,UAAA;IAAAC;EAAA,IAAAS,KAAA;EACD,IAAAC,kBAAM,GAAAhB,IAAqB,CAAAiB,OAAK,CAAAZ,UAAQ;EACxC,IAAAE,UAAM,OAAaW,GAAI,CAAAd,aAAI,CAAAY,kBAAc,EAAAV,iBAAoB,EAAiB;EAE9E,OAAO;IACLa,SAAA,EAAW;MACT,OAAO,CACT,GAAAZ,UAAA,CAEA,CAAAa,IAAO;IACL;IACAC,MAAIA,CAACC,KAAA,EAAAC,QAAA;MACL,IAAID,KAAC,cAAgBA,KAAA,KAAW,QAAO,IAAAA,KAAA;MAEvC,KAAApB,qBACG,CAAAqB,QAAS,EAAAP,kBAAoB,UAAK,KAAQ;MAE7C,KAAAb,eAAkB,CAAAoB,QAAK,UAAY;MACnC,IACEC,YAAA,GAAAxB,IAAmB,CAAAyB,QAAA,CACnBT,kBAAW,EAAQhB,IAAA,CAAAiB,OAAW,CAAAM,QAAA,GAAAG,UAAqB,UAAW;MAE9D,IAAAjB,SAAO,QAAAe,YAAA;MACT,KAAAlB,iBAAA,aAAAA,iBAAA,uBAAAA,iBAAA,CAAAK,MAAA,KAAAZ,UAAA,CAAA4B,OAAA,CAAAlB,SAAA,EAAAH,iBAAA;QAEAO,SAAI;MACF;QACA,YAAW;MACX;MACF,IAAAS,KAAA;QAEA,IAAAM,IAAO,GAAArB,UAAW,CAAAqB,IAAO;QAC3BrB,UAAA,CAAAsB,GAAA,CAAApB,SAAA;QACF,OAAAF,UAAA,CAAAqB,IAAA,KAAAA,IAAA;MACF","ignoreList":[]}
@@ -0,0 +1,52 @@
1
+ import { mkdtempSync, mkdirSync, rmSync, writeFileSync } from "node:fs";
2
+ import { tmpdir } from "node:os";
3
+ import { dirname, join } from "node:path";
4
+ import { afterEach, describe, expect, it } from "vitest";
5
+ import { createRouteIndex } from "./routeIndex.mjs";
6
+ let testDir;
7
+ function writeRoute(relativePath) {
8
+ testDir ||= mkdtempSync(join(tmpdir(), "one-route-index-"));
9
+ const filePath = join(testDir, "app", relativePath);
10
+ mkdirSync(dirname(filePath), {
11
+ recursive: true
12
+ });
13
+ writeFileSync(filePath, "export default function Route() { return null }");
14
+ return filePath;
15
+ }
16
+ afterEach(() => {
17
+ if (testDir) {
18
+ rmSync(testDir, {
19
+ recursive: true,
20
+ force: true
21
+ });
22
+ testDir = void 0;
23
+ }
24
+ });
25
+ describe(createRouteIndex, () => {
26
+ it("scans and filters the route tree once", () => {
27
+ writeRoute("index.tsx");
28
+ writeRoute("nested/page.ts");
29
+ writeRoute("nested/page.test.tsx");
30
+ writeRoute("routes.d.ts");
31
+ const routeIndex = createRouteIndex({
32
+ routerRoot: join(testDir, "app"),
33
+ ignoredRouteFiles: ["**/*.test.*"]
34
+ });
35
+ expect(routeIndex.getPaths()).toEqual(["./index.tsx", "./nested/page.ts"]);
36
+ });
37
+ it("updates route membership from watcher events", () => {
38
+ writeRoute("index.tsx");
39
+ const routeIndex = createRouteIndex({
40
+ routerRoot: join(testDir, "app"),
41
+ ignoredRouteFiles: ["**/*.test.*"]
42
+ });
43
+ const addedRoute = writeRoute("nested/new.tsx");
44
+ const ignoredRoute = writeRoute("nested/new.test.tsx");
45
+ expect(routeIndex.update("add", addedRoute)).toBe(true);
46
+ expect(routeIndex.update("add", ignoredRoute)).toBe(false);
47
+ expect(routeIndex.getPaths()).toEqual(["./index.tsx", "./nested/new.tsx"]);
48
+ expect(routeIndex.update("unlink", addedRoute)).toBe(true);
49
+ expect(routeIndex.getPaths()).toEqual(["./index.tsx"]);
50
+ });
51
+ });
52
+ //# sourceMappingURL=routeIndex.test.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["mkdtempSync","mkdirSync","rmSync","writeFileSync","tmpdir","dirname","join","afterEach","describe","expect","it","createRouteIndex","testDir","writeRoute","relativePath","filePath","recursive","force","routeIndex","routerRoot","ignoredRouteFiles","getPaths","toEqual","addedRoute","ignoredRoute","update","toBe"],"sources":["../../../src/utils/routeIndex.test.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAA,EAAaC,SAAA,EAAWC,MAAA,EAAQC,aAAA,QAAqB;AAC9D,SAASC,MAAA,QAAc;AACvB,SAASC,OAAA,EAASC,IAAA,QAAY;AAC9B,SAASC,SAAA,EAAWC,QAAA,EAAUC,MAAA,EAAQC,EAAA,QAAU;AAChD,SAASC,gBAAA,QAAwB;AAEjC,IAAIC,OAAA;AAEJ,SAASC,WAAWC,YAAA,EAAsB;EACxCF,OAAA,KAAYZ,WAAA,CAAYM,IAAA,CAAKF,MAAA,CAAO,GAAG,kBAAkB,CAAC;EAC1D,MAAMW,QAAA,GAAWT,IAAA,CAAKM,OAAA,EAAS,OAAOE,YAAY;EAClDb,SAAA,CAAUI,OAAA,CAAQU,QAAQ,GAAG;IAAEC,SAAA,EAAW;EAAK,CAAC;EAChDb,aAAA,CAAcY,QAAA,EAAU,iDAAiD;EACzE,OAAOA,QAAA;AACT;AAEAR,SAAA,CAAU,MAAM;EACd,IAAIK,OAAA,EAAS;IACXV,MAAA,CAAOU,OAAA,EAAS;MAAEI,SAAA,EAAW;MAAMC,KAAA,EAAO;IAAK,CAAC;IAChDL,OAAA,GAAU;EACZ;AACF,CAAC;AAEDJ,QAAA,CAASG,gBAAA,EAAkB,MAAM;EAC/BD,EAAA,CAAG,yCAAyC,MAAM;IAChDG,UAAA,CAAW,WAAW;IACtBA,UAAA,CAAW,gBAAgB;IAC3BA,UAAA,CAAW,sBAAsB;IACjCA,UAAA,CAAW,aAAa;IAExB,MAAMK,UAAA,GAAaP,gBAAA,CAAiB;MAClCQ,UAAA,EAAYb,IAAA,CAAKM,OAAA,EAAU,KAAK;MAChCQ,iBAAA,EAAmB,CAAC,aAAa;IACnC,CAAC;IAEDX,MAAA,CAAOS,UAAA,CAAWG,QAAA,CAAS,CAAC,EAAEC,OAAA,CAAQ,CAAC,eAAe,kBAAkB,CAAC;EAC3E,CAAC;EAEDZ,EAAA,CAAG,gDAAgD,MAAM;IACvDG,UAAA,CAAW,WAAW;IACtB,MAAMK,UAAA,GAAaP,gBAAA,CAAiB;MAClCQ,UAAA,EAAYb,IAAA,CAAKM,OAAA,EAAU,KAAK;MAChCQ,iBAAA,EAAmB,CAAC,aAAa;IACnC,CAAC;IACD,MAAMG,UAAA,GAAaV,UAAA,CAAW,gBAAgB;IAC9C,MAAMW,YAAA,GAAeX,UAAA,CAAW,qBAAqB;IAErDJ,MAAA,CAAOS,UAAA,CAAWO,MAAA,CAAO,OAAOF,UAAU,CAAC,EAAEG,IAAA,CAAK,IAAI;IACtDjB,MAAA,CAAOS,UAAA,CAAWO,MAAA,CAAO,OAAOD,YAAY,CAAC,EAAEE,IAAA,CAAK,KAAK;IACzDjB,MAAA,CAAOS,UAAA,CAAWG,QAAA,CAAS,CAAC,EAAEC,OAAA,CAAQ,CAAC,eAAe,kBAAkB,CAAC;IAEzEb,MAAA,CAAOS,UAAA,CAAWO,MAAA,CAAO,UAAUF,UAAU,CAAC,EAAEG,IAAA,CAAK,IAAI;IACzDjB,MAAA,CAAOS,UAAA,CAAWG,QAAA,CAAS,CAAC,EAAEC,OAAA,CAAQ,CAAC,aAAa,CAAC;EACvD,CAAC;AACH,CAAC","ignoreList":[]}
@@ -0,0 +1,52 @@
1
+ import { mkdtempSync, mkdirSync, rmSync, writeFileSync } from "fs";
2
+ import { tmpdir } from "os";
3
+ import { dirname, join } from "path";
4
+ import { afterEach, describe, expect, it } from "vitest";
5
+ import { createRouteIndex } from "./routeIndex.native.js";
6
+ var testDir;
7
+ function writeRoute(relativePath) {
8
+ testDir || (testDir = mkdtempSync(join(tmpdir(), "one-route-index-")));
9
+ var filePath = join(testDir, "app", relativePath);
10
+ mkdirSync(dirname(filePath), {
11
+ recursive: true
12
+ });
13
+ writeFileSync(filePath, "export default function Route() { return null }");
14
+ return filePath;
15
+ }
16
+ afterEach(function () {
17
+ if (testDir) {
18
+ rmSync(testDir, {
19
+ recursive: true,
20
+ force: true
21
+ });
22
+ testDir = void 0;
23
+ }
24
+ });
25
+ describe(createRouteIndex, function () {
26
+ it("scans and filters the route tree once", function () {
27
+ writeRoute("index.tsx");
28
+ writeRoute("nested/page.ts");
29
+ writeRoute("nested/page.test.tsx");
30
+ writeRoute("routes.d.ts");
31
+ var routeIndex = createRouteIndex({
32
+ routerRoot: join(testDir, "app"),
33
+ ignoredRouteFiles: ["**/*.test.*"]
34
+ });
35
+ expect(routeIndex.getPaths()).toEqual(["./index.tsx", "./nested/page.ts"]);
36
+ });
37
+ it("updates route membership from watcher events", function () {
38
+ writeRoute("index.tsx");
39
+ var routeIndex = createRouteIndex({
40
+ routerRoot: join(testDir, "app"),
41
+ ignoredRouteFiles: ["**/*.test.*"]
42
+ });
43
+ var addedRoute = writeRoute("nested/new.tsx");
44
+ var ignoredRoute = writeRoute("nested/new.test.tsx");
45
+ expect(routeIndex.update("add", addedRoute)).toBe(true);
46
+ expect(routeIndex.update("add", ignoredRoute)).toBe(false);
47
+ expect(routeIndex.getPaths()).toEqual(["./index.tsx", "./nested/new.tsx"]);
48
+ expect(routeIndex.update("unlink", addedRoute)).toBe(true);
49
+ expect(routeIndex.getPaths()).toEqual(["./index.tsx"]);
50
+ });
51
+ });
52
+ //# sourceMappingURL=routeIndex.test.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["mkdtempSync","mkdirSync","rmSync","writeFileSync","tmpdir","dirname","join","afterEach","describe","expect","it","createRouteIndex","testDir","writeRoute","relativePath","filePath","recursive","force","routeIndex","routerRoot","ignoredRouteFiles","getPaths","toEqual"],"sources":["../../../src/utils/routeIndex.test.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAA,EAAaC,SAAA,EAAWC,MAAA,EAAQC,aAAA,QAAqB;AAC9D,SAASC,MAAA,QAAc;AACvB,SAASC,OAAA,EAASC,IAAA,QAAY;AAC9B,SAASC,SAAA,EAAWC,QAAA,EAAUC,MAAA,EAAQC,EAAA,QAAU;AAChD,SAASC,gBAAA,QAAwB;AAEjC,IAAIC,OAAA;AAEJ,SAASC,WAAWC,YAAA,EAAsB;EACxCF,OAAA,KAAYA,OAAA,GAAAZ,WAAiB,CAAAM,IAAO,CAAGF,MAAA,sBAAmB;EAC1D,IAAAW,QAAM,GAAAT,IAAW,CAAAM,OAAK,OAAS,EAAAE,YAAO;EACtCb,SAAA,CAAUI,OAAA,CAAQU,QAAQ,GAAG;IAC7BC,SAAA;EACA;EACFb,aAAA,CAAAY,QAAA;EAEA,OAAAA,QAAgB;AACd;AACER,SAAA,aAAgB;EAChB,IAAAK,OAAA,EAAU;IACZV,MAAA,CAAAU,OAAA;MACDI,SAAA;MAEDC,KAAS;IACP,CAAG;IACDL,OAAA,QAAW;EACX;AACA;AACAJ,QAAA,CAAAG,gBAAW,cAAa;EAExBD,EAAA,wCAAoC;IAAAG,UAClC,YAAiB;IAAeA,UAChC,iBAAoB;IACtBA,UAAC;IAEDA,UAAO,cAAW;IACnB,IAAAK,UAAA,GAAAP,gBAAA;MAEEQ,UAAA,EAAAb,IAAA,CAAAM,OAAA;MACDQ,iBAAW,GACX,aAAM;IAC4B,EAChC;IACFX,MAAC,CAAAS,UAAA,CAAAG,QAAA,IAAAC,OAAA,EACD,aAAM,EACN,kBAAM,CAEN;EACA;EACAZ,EAAA,+CAAuC,cAAe;IAEtDG,UAAO,YAAW;IAClB,IAAAK,UAAO,GAAAP,gBAAuB;MAC/BQ,UAAA,EAAAb,IAAA,CAAAM,OAAA;MACFQ,iBAAA,G","ignoreList":[]}
@@ -1,3 +1,22 @@
1
+ function flattenStyle(style) {
2
+ if (!style) {
3
+ return void 0;
4
+ }
5
+ if (!Array.isArray(style)) {
6
+ return style;
7
+ }
8
+ let result;
9
+ for (const item of style) {
10
+ const flat = flattenStyle(item);
11
+ if (flat) {
12
+ result = {
13
+ ...result,
14
+ ...flat
15
+ };
16
+ }
17
+ }
18
+ return result;
19
+ }
1
20
  function convertFontWeightToStringFontWeight(fontWeight) {
2
21
  if (fontWeight === void 0) {
3
22
  return void 0;
@@ -7,5 +26,5 @@ function convertFontWeightToStringFontWeight(fontWeight) {
7
26
  }
8
27
  return fontWeight;
9
28
  }
10
- export { convertFontWeightToStringFontWeight };
29
+ export { convertFontWeightToStringFontWeight, flattenStyle };
11
30
  //# sourceMappingURL=style.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["convertFontWeightToStringFontWeight","fontWeight","String"],"sources":["../../../src/utils/style.ts"],"sourcesContent":[null],"mappings":"AAMO,SAASA,oCACdC,UAAA,EACsD;EACtD,IAAIA,UAAA,KAAe,QAAW;IAC5B,OAAO;EACT;EACA,IAAI,OAAOA,UAAA,KAAe,UAAU;IAClC,OAAOC,MAAA,CAAOD,UAAU;EAC1B;EACA,OAAOA,UAAA;AACT","ignoreList":[]}
1
+ {"version":3,"names":["flattenStyle","style","Array","isArray","result","item","flat","convertFontWeightToStringFontWeight","fontWeight","String"],"sources":["../../../src/utils/style.ts"],"sourcesContent":[null],"mappings":"AAMO,SAASA,aAA+BC,KAAA,EAAoC;EACjF,IAAI,CAACA,KAAA,EAAO;IACV,OAAO;EACT;EACA,IAAI,CAACC,KAAA,CAAMC,OAAA,CAAQF,KAAK,GAAG;IACzB,OAAOA,KAAA;EACT;EACA,IAAIG,MAAA;EACJ,WAAWC,IAAA,IAAQJ,KAAA,EAAO;IACxB,MAAMK,IAAA,GAAON,YAAA,CAAaK,IAAoB;IAC9C,IAAIC,IAAA,EAAM;MACRF,MAAA,GAAS;QAAE,GAAIA,MAAA;QAAmB,GAAIE;MAAgB;IACxD;EACF;EACA,OAAOF,MAAA;AACT;AAMO,SAASG,oCACdC,UAAA,EACsD;EACtD,IAAIA,UAAA,KAAe,QAAW;IAC5B,OAAO;EACT;EACA,IAAI,OAAOA,UAAA,KAAe,UAAU;IAClC,OAAOC,MAAA,CAAOD,UAAU;EAC1B;EACA,OAAOA,UAAA;AACT","ignoreList":[]}
@@ -1,3 +1,41 @@
1
+ function flattenStyle(style) {
2
+ if (!style) {
3
+ return void 0;
4
+ }
5
+ if (!Array.isArray(style)) {
6
+ return style;
7
+ }
8
+ var result;
9
+ var _iteratorNormalCompletion = true,
10
+ _didIteratorError = false,
11
+ _iteratorError = void 0;
12
+ try {
13
+ for (var _iterator = style[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
14
+ var item = _step.value;
15
+ var flat = flattenStyle(item);
16
+ if (flat) {
17
+ result = {
18
+ ...result,
19
+ ...flat
20
+ };
21
+ }
22
+ }
23
+ } catch (err) {
24
+ _didIteratorError = true;
25
+ _iteratorError = err;
26
+ } finally {
27
+ try {
28
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
29
+ _iterator.return();
30
+ }
31
+ } finally {
32
+ if (_didIteratorError) {
33
+ throw _iteratorError;
34
+ }
35
+ }
36
+ }
37
+ return result;
38
+ }
1
39
  function convertFontWeightToStringFontWeight(fontWeight) {
2
40
  if (fontWeight === void 0) {
3
41
  return void 0;
@@ -7,5 +45,5 @@ function convertFontWeightToStringFontWeight(fontWeight) {
7
45
  }
8
46
  return fontWeight;
9
47
  }
10
- export { convertFontWeightToStringFontWeight };
48
+ export { convertFontWeightToStringFontWeight, flattenStyle };
11
49
  //# sourceMappingURL=style.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["convertFontWeightToStringFontWeight","fontWeight","String"],"sources":["../../../src/utils/style.ts"],"sourcesContent":[null],"mappings":"AAMO,SAASA,oCACdC,UAAA,EACsD;EACtD,IAAIA,UAAA,KAAe,QAAW;IAC5B,OAAO;EACT;EACA,IAAI,OAAOA,UAAA,KAAe,UAAU;IAClC,OAAOC,MAAA,CAAOD,UAAU;EAC1B;EACA,OAAOA,UAAA;AACT","ignoreList":[]}
1
+ {"version":3,"names":["flattenStyle","style","Array","isArray","result","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","item","value","flat","err"],"sources":["../../../src/utils/style.ts"],"sourcesContent":[null],"mappings":"AAMO,SAASA,aAA+BC,KAAA,EAAoC;EACjF,IAAI,CAACA,KAAA,EAAO;IACV,OAAO;EACT;EACA,IAAI,CAACC,KAAA,CAAMC,OAAA,CAAQF,KAAK,GAAG;IACzB,OAAOA,KAAA;EACT;EACA,IAAIG,MAAA;EACJ,IAAAC,yBAA0B;IAAAC,iBAAA;IAAAC,cAAA;EACxB;IACA,KAAI,IAAAC,SAAM,GAAAP,KAAA,CAAAQ,MAAA,CAAAC,QAAA,KAAAC,KAAA,IAAAN,yBAAA,IAAAM,KAAA,GAAAH,SAAA,CAAAI,IAAA,IAAAC,IAAA,GAAAR,yBAAA;MACR,IAAAS,IAAA,GAAWH,KAAI,CAAAI,KAAmB;MACpC,IAAAC,IAAA,GAAAhB,YAAA,CAAAc,IAAA;MACF,IAAAE,IAAA;QACAZ,MAAO;UACT,GAAAA,MAAA;UAMgB,GAAAY;QAGV;MACF;IACF;EACA,SAAIC,GAAO;IACTX,iBAAc,OAAU;IAC1BC,cAAA,GAAAU,GAAA;EACA,UAAO;IACT","ignoreList":[]}