one 1.2.57 → 1.2.58

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 (481) hide show
  1. package/dist/cjs/cli/buildPage.cjs +1 -1
  2. package/dist/cjs/cli/buildPage.js +1 -1
  3. package/dist/cjs/cli/buildPage.native.js +1 -1
  4. package/dist/cjs/cli/buildPage.native.js.map +1 -1
  5. package/dist/cjs/cli/dev.cjs +4 -4
  6. package/dist/cjs/cli/dev.js +4 -4
  7. package/dist/cjs/cli/dev.js.map +1 -1
  8. package/dist/cjs/cli/dev.native.js +4 -4
  9. package/dist/cjs/cli/dev.native.js.map +1 -1
  10. package/dist/cjs/createApp.cjs +2 -1
  11. package/dist/cjs/createApp.js +2 -2
  12. package/dist/cjs/createApp.js.map +1 -1
  13. package/dist/cjs/createHandleRequest.test.js +3 -1
  14. package/dist/cjs/createHandleRequest.test.js.map +1 -1
  15. package/dist/cjs/createHandleRequest.test.native.js.map +1 -1
  16. package/dist/cjs/devtools/registry.cjs +30 -0
  17. package/dist/cjs/devtools/registry.js +25 -0
  18. package/dist/cjs/devtools/registry.js.map +6 -0
  19. package/dist/cjs/devtools/registry.native.js +33 -0
  20. package/dist/cjs/devtools/registry.native.js.map +1 -0
  21. package/dist/cjs/fork/createMemoryHistory.cjs +20 -9
  22. package/dist/cjs/fork/createMemoryHistory.js +22 -4
  23. package/dist/cjs/fork/createMemoryHistory.js.map +1 -1
  24. package/dist/cjs/fork/createMemoryHistory.native.js +20 -9
  25. package/dist/cjs/fork/createMemoryHistory.native.js.map +1 -1
  26. package/dist/cjs/fork/useLinking.cjs +11 -5
  27. package/dist/cjs/fork/useLinking.js +6 -6
  28. package/dist/cjs/fork/useLinking.js.map +1 -1
  29. package/dist/cjs/index.cjs +17 -1
  30. package/dist/cjs/index.js +12 -2
  31. package/dist/cjs/index.js.map +1 -1
  32. package/dist/cjs/index.native.js +17 -1
  33. package/dist/cjs/index.native.js.map +1 -1
  34. package/dist/cjs/layouts/withLayoutContext.cjs +34 -15
  35. package/dist/cjs/layouts/withLayoutContext.js +29 -13
  36. package/dist/cjs/layouts/withLayoutContext.js.map +1 -1
  37. package/dist/cjs/layouts/withLayoutContext.native.js +42 -19
  38. package/dist/cjs/layouts/withLayoutContext.native.js.map +1 -1
  39. package/dist/cjs/link/Link.cjs +5 -2
  40. package/dist/cjs/link/Link.js +3 -2
  41. package/dist/cjs/link/Link.js.map +1 -1
  42. package/dist/cjs/link/Link.native.js +6 -1
  43. package/dist/cjs/link/Link.native.js.map +1 -1
  44. package/dist/cjs/link/useLinkTo.cjs +11 -3
  45. package/dist/cjs/link/useLinkTo.js +6 -3
  46. package/dist/cjs/link/useLinkTo.js.map +1 -1
  47. package/dist/cjs/link/useLinkTo.native.js +11 -3
  48. package/dist/cjs/link/useLinkTo.native.js.map +1 -1
  49. package/dist/cjs/router/Route.js.map +1 -1
  50. package/dist/cjs/router/Route.native.js.map +1 -1
  51. package/dist/cjs/router/findRouteNode.cjs +70 -0
  52. package/dist/cjs/router/findRouteNode.js +72 -0
  53. package/dist/cjs/router/findRouteNode.js.map +6 -0
  54. package/dist/cjs/router/findRouteNode.native.js +104 -0
  55. package/dist/cjs/router/findRouteNode.native.js.map +1 -0
  56. package/dist/cjs/router/router.cjs +160 -11
  57. package/dist/cjs/router/router.js +142 -7
  58. package/dist/cjs/router/router.js.map +2 -2
  59. package/dist/cjs/router/router.native.js +241 -57
  60. package/dist/cjs/router/router.native.js.map +1 -1
  61. package/dist/cjs/router/useScreens.cjs +1 -1
  62. package/dist/cjs/router/useScreens.js +1 -1
  63. package/dist/cjs/router/useScreens.js.map +1 -1
  64. package/dist/cjs/router/useScreens.native.js +5 -2
  65. package/dist/cjs/router/useScreens.native.js.map +1 -1
  66. package/dist/cjs/server/oneServe.js.map +1 -1
  67. package/dist/cjs/server/oneServe.native.js.map +1 -1
  68. package/dist/cjs/useBlocker.cjs +158 -0
  69. package/dist/cjs/useBlocker.js +145 -0
  70. package/dist/cjs/useBlocker.js.map +6 -0
  71. package/dist/cjs/useBlocker.native.js +89 -0
  72. package/dist/cjs/useBlocker.native.js.map +1 -0
  73. package/dist/cjs/useLoader.cjs +69 -3
  74. package/dist/cjs/useLoader.js +57 -4
  75. package/dist/cjs/useLoader.js.map +2 -2
  76. package/dist/cjs/useLoader.native.js +90 -6
  77. package/dist/cjs/useLoader.native.js.map +1 -1
  78. package/dist/cjs/useScrollGroup.cjs +37 -0
  79. package/dist/cjs/useScrollGroup.js +30 -0
  80. package/dist/cjs/useScrollGroup.js.map +6 -0
  81. package/dist/cjs/useScrollGroup.native.js +29 -0
  82. package/dist/cjs/useScrollGroup.native.js.map +1 -0
  83. package/dist/cjs/validateParams.cjs +80 -0
  84. package/dist/cjs/validateParams.js +84 -0
  85. package/dist/cjs/validateParams.js.map +6 -0
  86. package/dist/cjs/validateParams.native.js +180 -0
  87. package/dist/cjs/validateParams.native.js.map +1 -0
  88. package/dist/cjs/validateSearch.cjs +104 -0
  89. package/dist/cjs/validateSearch.js +99 -0
  90. package/dist/cjs/validateSearch.js.map +6 -0
  91. package/dist/cjs/validateSearch.native.js +202 -0
  92. package/dist/cjs/validateSearch.native.js.map +1 -0
  93. package/dist/cjs/views/ErrorBoundary.cjs +293 -10
  94. package/dist/cjs/views/ErrorBoundary.js +328 -8
  95. package/dist/cjs/views/ErrorBoundary.js.map +2 -2
  96. package/dist/cjs/views/ErrorBoundary.native.js +159 -4
  97. package/dist/cjs/views/ErrorBoundary.native.js.map +1 -1
  98. package/dist/cjs/views/Navigator.cjs +10 -3
  99. package/dist/cjs/views/Navigator.js +7 -3
  100. package/dist/cjs/views/Navigator.js.map +1 -1
  101. package/dist/cjs/views/Navigator.native.js +12 -3
  102. package/dist/cjs/views/Navigator.native.js.map +1 -1
  103. package/dist/cjs/views/Protected.cjs +36 -0
  104. package/dist/cjs/views/Protected.js +27 -0
  105. package/dist/cjs/views/Protected.js.map +6 -0
  106. package/dist/cjs/views/Protected.native.js +44 -0
  107. package/dist/cjs/views/Protected.native.js.map +1 -0
  108. package/dist/cjs/views/RootErrorBoundary.cjs +193 -8
  109. package/dist/cjs/views/RootErrorBoundary.js +213 -8
  110. package/dist/cjs/views/RootErrorBoundary.js.map +1 -1
  111. package/dist/cjs/views/RootErrorBoundary.native.js +192 -8
  112. package/dist/cjs/views/RootErrorBoundary.native.js.map +1 -1
  113. package/dist/cjs/views/ScrollBehavior.cjs +49 -11
  114. package/dist/cjs/views/ScrollBehavior.js +47 -11
  115. package/dist/cjs/views/ScrollBehavior.js.map +1 -1
  116. package/dist/cjs/views/ScrollBehavior.native.js +68 -10
  117. package/dist/cjs/views/ScrollBehavior.native.js.map +1 -1
  118. package/dist/cjs/views/SourceInspector.cjs +28 -0
  119. package/dist/cjs/views/SourceInspector.js +23 -0
  120. package/dist/cjs/views/SourceInspector.js.map +6 -0
  121. package/dist/cjs/views/SourceInspector.native.js +32 -0
  122. package/dist/cjs/views/SourceInspector.native.js.map +1 -0
  123. package/dist/cjs/views/Try.cjs +40 -7
  124. package/dist/cjs/views/Try.js +38 -4
  125. package/dist/cjs/views/Try.js.map +1 -1
  126. package/dist/cjs/views/Try.native.js +42 -7
  127. package/dist/cjs/views/Try.native.js.map +1 -1
  128. package/dist/cjs/vite/DevHead.cjs +797 -43
  129. package/dist/cjs/vite/DevHead.js +802 -51
  130. package/dist/cjs/vite/DevHead.js.map +1 -1
  131. package/dist/cjs/vite/DevHead.native.js +783 -1
  132. package/dist/cjs/vite/DevHead.native.js.map +1 -1
  133. package/dist/cjs/vite/one.cjs +7 -1
  134. package/dist/cjs/vite/one.js +7 -2
  135. package/dist/cjs/vite/one.js.map +1 -1
  136. package/dist/cjs/vite/one.native.js +11 -1
  137. package/dist/cjs/vite/one.native.js.map +1 -1
  138. package/dist/cjs/vite/plugins/SSRCSSPlugin.cjs +44 -4
  139. package/dist/cjs/vite/plugins/SSRCSSPlugin.js +48 -4
  140. package/dist/cjs/vite/plugins/SSRCSSPlugin.js.map +1 -1
  141. package/dist/cjs/vite/plugins/SSRCSSPlugin.native.js +62 -5
  142. package/dist/cjs/vite/plugins/SSRCSSPlugin.native.js.map +1 -1
  143. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.js +6 -3
  144. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.js.map +1 -1
  145. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
  146. package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.cjs +5 -1
  147. package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.js +11 -6
  148. package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.js.map +1 -1
  149. package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.native.js +1 -0
  150. package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.native.js.map +1 -1
  151. package/dist/cjs/vite/plugins/sourceInspectorPlugin.cjs +155 -0
  152. package/dist/cjs/vite/plugins/sourceInspectorPlugin.js +148 -0
  153. package/dist/cjs/vite/plugins/sourceInspectorPlugin.js.map +6 -0
  154. package/dist/cjs/vite/plugins/sourceInspectorPlugin.native.js +231 -0
  155. package/dist/cjs/vite/plugins/sourceInspectorPlugin.native.js.map +1 -0
  156. package/dist/cjs/vite/plugins/virtualEntryPlugin.cjs +25 -6
  157. package/dist/cjs/vite/plugins/virtualEntryPlugin.js +16 -6
  158. package/dist/cjs/vite/plugins/virtualEntryPlugin.js.map +1 -1
  159. package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js +26 -7
  160. package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js.map +1 -1
  161. package/dist/esm/cli/buildPage.js +1 -1
  162. package/dist/esm/cli/buildPage.mjs +1 -1
  163. package/dist/esm/cli/buildPage.mjs.map +1 -1
  164. package/dist/esm/cli/buildPage.native.js +1 -1
  165. package/dist/esm/cli/buildPage.native.js.map +1 -1
  166. package/dist/esm/cli/dev.js +4 -4
  167. package/dist/esm/cli/dev.js.map +1 -1
  168. package/dist/esm/cli/dev.mjs +4 -4
  169. package/dist/esm/cli/dev.mjs.map +1 -1
  170. package/dist/esm/cli/dev.native.js +4 -4
  171. package/dist/esm/cli/dev.native.js.map +1 -1
  172. package/dist/esm/createApp.js +2 -2
  173. package/dist/esm/createApp.js.map +1 -1
  174. package/dist/esm/createApp.mjs +2 -1
  175. package/dist/esm/createApp.mjs.map +1 -1
  176. package/dist/esm/createHandleRequest.test.js +3 -1
  177. package/dist/esm/createHandleRequest.test.js.map +1 -1
  178. package/dist/esm/createHandleRequest.test.mjs.map +1 -1
  179. package/dist/esm/createHandleRequest.test.native.js.map +1 -1
  180. package/dist/esm/devtools/registry.js +9 -0
  181. package/dist/esm/devtools/registry.js.map +6 -0
  182. package/dist/esm/devtools/registry.mjs +6 -0
  183. package/dist/esm/devtools/registry.mjs.map +1 -0
  184. package/dist/esm/devtools/registry.native.js +6 -0
  185. package/dist/esm/devtools/registry.native.js.map +1 -0
  186. package/dist/esm/fork/createMemoryHistory.js +22 -4
  187. package/dist/esm/fork/createMemoryHistory.js.map +1 -1
  188. package/dist/esm/fork/createMemoryHistory.mjs +20 -9
  189. package/dist/esm/fork/createMemoryHistory.mjs.map +1 -1
  190. package/dist/esm/fork/createMemoryHistory.native.js +20 -9
  191. package/dist/esm/fork/createMemoryHistory.native.js.map +1 -1
  192. package/dist/esm/fork/useLinking.js +6 -5
  193. package/dist/esm/fork/useLinking.js.map +1 -1
  194. package/dist/esm/fork/useLinking.mjs +11 -5
  195. package/dist/esm/fork/useLinking.mjs.map +1 -1
  196. package/dist/esm/index.js +30 -2
  197. package/dist/esm/index.js.map +1 -1
  198. package/dist/esm/index.mjs +8 -2
  199. package/dist/esm/index.mjs.map +1 -1
  200. package/dist/esm/index.native.js +8 -2
  201. package/dist/esm/index.native.js.map +1 -1
  202. package/dist/esm/layouts/withLayoutContext.js +30 -12
  203. package/dist/esm/layouts/withLayoutContext.js.map +1 -1
  204. package/dist/esm/layouts/withLayoutContext.mjs +34 -15
  205. package/dist/esm/layouts/withLayoutContext.mjs.map +1 -1
  206. package/dist/esm/layouts/withLayoutContext.native.js +42 -19
  207. package/dist/esm/layouts/withLayoutContext.native.js.map +1 -1
  208. package/dist/esm/link/Link.js +3 -2
  209. package/dist/esm/link/Link.js.map +1 -1
  210. package/dist/esm/link/Link.mjs +5 -2
  211. package/dist/esm/link/Link.mjs.map +1 -1
  212. package/dist/esm/link/Link.native.js +6 -1
  213. package/dist/esm/link/Link.native.js.map +1 -1
  214. package/dist/esm/link/useLinkTo.js +6 -3
  215. package/dist/esm/link/useLinkTo.js.map +1 -1
  216. package/dist/esm/link/useLinkTo.mjs +11 -3
  217. package/dist/esm/link/useLinkTo.mjs.map +1 -1
  218. package/dist/esm/link/useLinkTo.native.js +11 -3
  219. package/dist/esm/link/useLinkTo.native.js.map +1 -1
  220. package/dist/esm/router/Route.js.map +1 -1
  221. package/dist/esm/router/Route.mjs.map +1 -1
  222. package/dist/esm/router/Route.native.js.map +1 -1
  223. package/dist/esm/router/findRouteNode.js +56 -0
  224. package/dist/esm/router/findRouteNode.js.map +6 -0
  225. package/dist/esm/router/findRouteNode.mjs +44 -0
  226. package/dist/esm/router/findRouteNode.mjs.map +1 -0
  227. package/dist/esm/router/findRouteNode.native.js +75 -0
  228. package/dist/esm/router/findRouteNode.native.js.map +1 -0
  229. package/dist/esm/router/router.js +154 -6
  230. package/dist/esm/router/router.js.map +1 -1
  231. package/dist/esm/router/router.mjs +151 -10
  232. package/dist/esm/router/router.mjs.map +1 -1
  233. package/dist/esm/router/router.native.js +232 -56
  234. package/dist/esm/router/router.native.js.map +1 -1
  235. package/dist/esm/router/useScreens.js +1 -1
  236. package/dist/esm/router/useScreens.js.map +1 -1
  237. package/dist/esm/router/useScreens.mjs +1 -1
  238. package/dist/esm/router/useScreens.mjs.map +1 -1
  239. package/dist/esm/router/useScreens.native.js +5 -2
  240. package/dist/esm/router/useScreens.native.js.map +1 -1
  241. package/dist/esm/server/oneServe.js.map +1 -1
  242. package/dist/esm/server/oneServe.mjs.map +1 -1
  243. package/dist/esm/server/oneServe.native.js.map +1 -1
  244. package/dist/esm/useBlocker.js +122 -0
  245. package/dist/esm/useBlocker.js.map +6 -0
  246. package/dist/esm/useBlocker.mjs +123 -0
  247. package/dist/esm/useBlocker.mjs.map +1 -0
  248. package/dist/esm/useBlocker.native.js +51 -0
  249. package/dist/esm/useBlocker.native.js.map +1 -0
  250. package/dist/esm/useLoader.js +57 -3
  251. package/dist/esm/useLoader.js.map +2 -2
  252. package/dist/esm/useLoader.mjs +69 -4
  253. package/dist/esm/useLoader.mjs.map +1 -1
  254. package/dist/esm/useLoader.native.js +90 -7
  255. package/dist/esm/useLoader.native.js.map +1 -1
  256. package/dist/esm/useScrollGroup.js +16 -0
  257. package/dist/esm/useScrollGroup.js.map +6 -0
  258. package/dist/esm/useScrollGroup.mjs +14 -0
  259. package/dist/esm/useScrollGroup.mjs.map +1 -0
  260. package/dist/esm/useScrollGroup.native.js +3 -0
  261. package/dist/esm/useScrollGroup.native.js.map +1 -0
  262. package/dist/esm/validateParams.js +68 -0
  263. package/dist/esm/validateParams.js.map +6 -0
  264. package/dist/esm/validateParams.mjs +54 -0
  265. package/dist/esm/validateParams.mjs.map +1 -0
  266. package/dist/esm/validateParams.native.js +151 -0
  267. package/dist/esm/validateParams.native.js.map +1 -0
  268. package/dist/esm/validateSearch.js +83 -0
  269. package/dist/esm/validateSearch.js.map +6 -0
  270. package/dist/esm/validateSearch.mjs +77 -0
  271. package/dist/esm/validateSearch.mjs.map +1 -0
  272. package/dist/esm/validateSearch.native.js +172 -0
  273. package/dist/esm/validateSearch.native.js.map +1 -0
  274. package/dist/esm/views/ErrorBoundary.js +325 -7
  275. package/dist/esm/views/ErrorBoundary.js.map +2 -2
  276. package/dist/esm/views/ErrorBoundary.mjs +289 -6
  277. package/dist/esm/views/ErrorBoundary.mjs.map +1 -1
  278. package/dist/esm/views/ErrorBoundary.native.js +159 -4
  279. package/dist/esm/views/ErrorBoundary.native.js.map +1 -1
  280. package/dist/esm/views/Navigator.js +7 -2
  281. package/dist/esm/views/Navigator.js.map +1 -1
  282. package/dist/esm/views/Navigator.mjs +10 -3
  283. package/dist/esm/views/Navigator.mjs.map +1 -1
  284. package/dist/esm/views/Navigator.native.js +12 -3
  285. package/dist/esm/views/Navigator.native.js.map +1 -1
  286. package/dist/esm/views/Protected.js +14 -0
  287. package/dist/esm/views/Protected.js.map +6 -0
  288. package/dist/esm/views/Protected.mjs +11 -0
  289. package/dist/esm/views/Protected.mjs.map +1 -0
  290. package/dist/esm/views/Protected.native.js +16 -0
  291. package/dist/esm/views/Protected.native.js.map +1 -0
  292. package/dist/esm/views/RootErrorBoundary.js +214 -7
  293. package/dist/esm/views/RootErrorBoundary.js.map +1 -1
  294. package/dist/esm/views/RootErrorBoundary.mjs +192 -7
  295. package/dist/esm/views/RootErrorBoundary.mjs.map +1 -1
  296. package/dist/esm/views/RootErrorBoundary.native.js +191 -7
  297. package/dist/esm/views/RootErrorBoundary.native.js.map +1 -1
  298. package/dist/esm/views/ScrollBehavior.js +47 -11
  299. package/dist/esm/views/ScrollBehavior.js.map +1 -1
  300. package/dist/esm/views/ScrollBehavior.mjs +48 -11
  301. package/dist/esm/views/ScrollBehavior.mjs.map +1 -1
  302. package/dist/esm/views/ScrollBehavior.native.js +67 -10
  303. package/dist/esm/views/ScrollBehavior.native.js.map +1 -1
  304. package/dist/esm/views/SourceInspector.js +7 -0
  305. package/dist/esm/views/SourceInspector.js.map +6 -0
  306. package/dist/esm/views/SourceInspector.mjs +5 -0
  307. package/dist/esm/views/SourceInspector.mjs.map +1 -0
  308. package/dist/esm/views/SourceInspector.native.js +6 -0
  309. package/dist/esm/views/SourceInspector.native.js.map +1 -0
  310. package/dist/esm/views/Try.js +38 -4
  311. package/dist/esm/views/Try.js.map +1 -1
  312. package/dist/esm/views/Try.mjs +40 -7
  313. package/dist/esm/views/Try.mjs.map +1 -1
  314. package/dist/esm/views/Try.native.js +42 -7
  315. package/dist/esm/views/Try.native.js.map +1 -1
  316. package/dist/esm/vite/DevHead.js +802 -51
  317. package/dist/esm/vite/DevHead.js.map +1 -1
  318. package/dist/esm/vite/DevHead.mjs +797 -43
  319. package/dist/esm/vite/DevHead.mjs.map +1 -1
  320. package/dist/esm/vite/DevHead.native.js +782 -0
  321. package/dist/esm/vite/DevHead.native.js.map +1 -1
  322. package/dist/esm/vite/one.js +7 -1
  323. package/dist/esm/vite/one.js.map +1 -1
  324. package/dist/esm/vite/one.mjs +7 -1
  325. package/dist/esm/vite/one.mjs.map +1 -1
  326. package/dist/esm/vite/one.native.js +11 -1
  327. package/dist/esm/vite/one.native.js.map +1 -1
  328. package/dist/esm/vite/plugins/SSRCSSPlugin.js +48 -4
  329. package/dist/esm/vite/plugins/SSRCSSPlugin.js.map +1 -1
  330. package/dist/esm/vite/plugins/SSRCSSPlugin.mjs +44 -4
  331. package/dist/esm/vite/plugins/SSRCSSPlugin.mjs.map +1 -1
  332. package/dist/esm/vite/plugins/SSRCSSPlugin.native.js +61 -4
  333. package/dist/esm/vite/plugins/SSRCSSPlugin.native.js.map +1 -1
  334. package/dist/esm/vite/plugins/fileSystemRouterPlugin.js +6 -3
  335. package/dist/esm/vite/plugins/fileSystemRouterPlugin.js.map +1 -1
  336. package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs.map +1 -1
  337. package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
  338. package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.js +11 -6
  339. package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.js.map +1 -1
  340. package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.mjs +5 -1
  341. package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.mjs.map +1 -1
  342. package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.native.js +1 -0
  343. package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.native.js.map +1 -1
  344. package/dist/esm/vite/plugins/sourceInspectorPlugin.js +126 -0
  345. package/dist/esm/vite/plugins/sourceInspectorPlugin.js.map +6 -0
  346. package/dist/esm/vite/plugins/sourceInspectorPlugin.mjs +121 -0
  347. package/dist/esm/vite/plugins/sourceInspectorPlugin.mjs.map +1 -0
  348. package/dist/esm/vite/plugins/sourceInspectorPlugin.native.js +194 -0
  349. package/dist/esm/vite/plugins/sourceInspectorPlugin.native.js.map +1 -0
  350. package/dist/esm/vite/plugins/virtualEntryPlugin.js +16 -6
  351. package/dist/esm/vite/plugins/virtualEntryPlugin.js.map +1 -1
  352. package/dist/esm/vite/plugins/virtualEntryPlugin.mjs +25 -6
  353. package/dist/esm/vite/plugins/virtualEntryPlugin.mjs.map +1 -1
  354. package/dist/esm/vite/plugins/virtualEntryPlugin.native.js +26 -7
  355. package/dist/esm/vite/plugins/virtualEntryPlugin.native.js.map +1 -1
  356. package/package.json +11 -9
  357. package/src/cli/buildPage.ts +1 -1
  358. package/src/cli/dev.ts +4 -4
  359. package/src/createApp.tsx +11 -1
  360. package/src/createHandleRequest.test.ts +3 -1
  361. package/src/devtools/registry.ts +21 -0
  362. package/src/fork/createMemoryHistory.tsx +43 -11
  363. package/src/fork/useLinking.ts +14 -4
  364. package/src/index.ts +34 -1
  365. package/src/interfaces/router.ts +48 -0
  366. package/src/layouts/withLayoutContext.tsx +48 -8
  367. package/src/link/Link.tsx +7 -2
  368. package/src/link/useLinkTo.tsx +7 -3
  369. package/src/router/Route.tsx +32 -3
  370. package/src/router/findRouteNode.ts +127 -0
  371. package/src/router/router.ts +286 -2
  372. package/src/router/useScreens.tsx +9 -3
  373. package/src/useBlocker.native.ts +153 -0
  374. package/src/useBlocker.ts +340 -0
  375. package/src/useLoader.ts +139 -1
  376. package/src/useScrollGroup.native.ts +7 -0
  377. package/src/useScrollGroup.ts +44 -0
  378. package/src/validateParams.ts +196 -0
  379. package/src/validateSearch.ts +241 -0
  380. package/src/views/ErrorBoundary.tsx +154 -156
  381. package/src/views/ErrorBoundary.web.tsx +321 -0
  382. package/src/views/Navigator.tsx +14 -2
  383. package/src/views/Protected.tsx +62 -0
  384. package/src/views/RootErrorBoundary.tsx +214 -17
  385. package/src/views/ScrollBehavior.tsx +82 -3
  386. package/src/views/SourceInspector.tsx +39 -0
  387. package/src/views/Try.tsx +81 -12
  388. package/src/vite/DevHead.tsx +819 -54
  389. package/src/vite/one.ts +13 -0
  390. package/src/vite/plugins/SSRCSSPlugin.ts +104 -0
  391. package/src/vite/plugins/fileSystemRouterPlugin.tsx +11 -8
  392. package/src/vite/plugins/generateFileSystemRouteTypesPlugin.tsx +4 -0
  393. package/src/vite/plugins/sourceInspectorPlugin.ts +246 -0
  394. package/src/vite/plugins/virtualEntryPlugin.ts +35 -10
  395. package/src/vite/types.ts +28 -0
  396. package/types/Route.d.ts.map +1 -0
  397. package/types/cleanUrl.d.ts.map +1 -0
  398. package/types/cli/run.d.ts.map +1 -0
  399. package/types/createApp.d.ts +5 -0
  400. package/types/createApp.d.ts.map +1 -1
  401. package/types/createRoute.d.ts.map +1 -0
  402. package/types/devtools/registry.d.ts +15 -0
  403. package/types/devtools/registry.d.ts.map +1 -0
  404. package/types/fork/NavigationContainer.native.d.ts.map +1 -0
  405. package/types/fork/createMemoryHistory.d.ts +8 -3
  406. package/types/fork/createMemoryHistory.d.ts.map +1 -1
  407. package/types/fork/useLinking.d.ts.map +1 -1
  408. package/types/getLinkingConfig.d.ts.map +1 -0
  409. package/types/getRoutes.d.ts.map +1 -0
  410. package/types/imperative-api.d.ts.map +1 -0
  411. package/types/index.d.ts +8 -1
  412. package/types/index.d.ts.map +1 -1
  413. package/types/interfaces/router.d.ts +47 -0
  414. package/types/interfaces/router.d.ts.map +1 -1
  415. package/types/layouts/withLayoutContext.d.ts +2 -1
  416. package/types/layouts/withLayoutContext.d.ts.map +1 -1
  417. package/types/link/Link.d.ts.map +1 -1
  418. package/types/link/useLinkTo.d.ts +1 -0
  419. package/types/link/useLinkTo.d.ts.map +1 -1
  420. package/types/matchers.d.ts.map +1 -0
  421. package/types/platform.d.ts.map +1 -0
  422. package/types/router/Route.d.ts +32 -3
  423. package/types/router/Route.d.ts.map +1 -1
  424. package/types/router/findRouteNode.d.ts +31 -0
  425. package/types/router/findRouteNode.d.ts.map +1 -0
  426. package/types/router/router.d.ts +35 -0
  427. package/types/router/router.d.ts.map +1 -1
  428. package/types/router/useScreens.d.ts +2 -0
  429. package/types/router/useScreens.d.ts.map +1 -1
  430. package/types/server/oneServe.d.ts.map +1 -1
  431. package/types/sortRoutes.d.ts.map +1 -0
  432. package/types/useBlocker.d.ts +72 -0
  433. package/types/useBlocker.d.ts.map +1 -0
  434. package/types/useBlocker.native.d.ts +60 -0
  435. package/types/useBlocker.native.d.ts.map +1 -0
  436. package/types/useLoader.d.ts +10 -0
  437. package/types/useLoader.d.ts.map +1 -1
  438. package/types/useNavigation.d.ts.map +1 -0
  439. package/types/useScreens.d.ts.map +1 -0
  440. package/types/useScrollGroup.d.ts +27 -0
  441. package/types/useScrollGroup.d.ts.map +1 -0
  442. package/types/useScrollGroup.native.d.ts +6 -0
  443. package/types/useScrollGroup.native.d.ts.map +1 -0
  444. package/types/useSearch.d.ts.map +1 -0
  445. package/types/useViteRoutes.d.ts.map +1 -0
  446. package/types/validateParams.d.ts +85 -0
  447. package/types/validateParams.d.ts.map +1 -0
  448. package/types/validateSearch.d.ts +107 -0
  449. package/types/validateSearch.d.ts.map +1 -0
  450. package/types/views/ErrorBoundary.d.ts +11 -1
  451. package/types/views/ErrorBoundary.d.ts.map +1 -1
  452. package/types/views/ErrorBoundary.web.d.ts +13 -0
  453. package/types/views/ErrorBoundary.web.d.ts.map +1 -0
  454. package/types/views/Navigator.d.ts.map +1 -1
  455. package/types/views/Protected.d.ts +39 -0
  456. package/types/views/Protected.d.ts.map +1 -0
  457. package/types/views/RootErrorBoundary.d.ts +14 -8
  458. package/types/views/RootErrorBoundary.d.ts.map +1 -1
  459. package/types/views/ScrollBehavior.d.ts +8 -0
  460. package/types/views/ScrollBehavior.d.ts.map +1 -1
  461. package/types/views/ScrollRestoration.d.ts.map +1 -0
  462. package/types/views/SourceInspector.d.ts +35 -0
  463. package/types/views/SourceInspector.d.ts.map +1 -0
  464. package/types/views/Try.d.ts +29 -6
  465. package/types/views/Try.d.ts.map +1 -1
  466. package/types/vite/DevHead.d.ts.map +1 -1
  467. package/types/vite/build.d.ts.map +1 -0
  468. package/types/vite/headers.d.ts.map +1 -0
  469. package/types/vite/headers.native.d.ts.map +1 -0
  470. package/types/vite/one.d.ts.map +1 -1
  471. package/types/vite/plugins/SSRCSSPlugin.d.ts.map +1 -1
  472. package/types/vite/plugins/fileSystemRouterPlugin.d.ts.map +1 -1
  473. package/types/vite/plugins/generateFileSystemRouteTypesPlugin.d.ts.map +1 -1
  474. package/types/vite/plugins/seoPreviewPlugin.d.ts.map +1 -0
  475. package/types/vite/plugins/sourceInspectorPlugin.d.ts +3 -0
  476. package/types/vite/plugins/sourceInspectorPlugin.d.ts.map +1 -0
  477. package/types/vite/plugins/virtualEntryPlugin.d.ts.map +1 -1
  478. package/types/vite/resolveAPIRequest.d.ts.map +1 -0
  479. package/types/vite/server.d.ts.map +1 -0
  480. package/types/vite/types.d.ts +24 -0
  481. package/types/vite/types.d.ts.map +1 -1
@@ -0,0 +1,194 @@
1
+ import path from "path";
2
+ import { parseSync } from "oxc-parser";
3
+ import { normalizePath } from "vite";
4
+ function _type_of(obj) {
5
+ "@swc/helpers - typeof";
6
+
7
+ return obj && typeof Symbol < "u" && obj.constructor === Symbol ? "symbol" : typeof obj;
8
+ }
9
+ function findJsxElements(code, filename) {
10
+ var result = parseSync(filename, code);
11
+ if (result.errors.length > 0) return [];
12
+ var locations = [],
13
+ traversalIndex = 0;
14
+ function getJsxName(node) {
15
+ if (!node) return null;
16
+ if (node.type === "JSXIdentifier") return node.name;
17
+ if (node.type === "JSXMemberExpression") {
18
+ var _node_property,
19
+ obj = getJsxName(node.object);
20
+ return obj ? `${obj}.${(_node_property = node.property) === null || _node_property === void 0 ? void 0 : _node_property.name}` : null;
21
+ }
22
+ return null;
23
+ }
24
+ function getLocation(offset) {
25
+ var before = code.slice(0, offset),
26
+ lines = before.split(`
27
+ `);
28
+ return {
29
+ line: lines.length,
30
+ column: lines[lines.length - 1].length + 1
31
+ };
32
+ }
33
+ function walk(node) {
34
+ if (!(!node || (typeof node > "u" ? "undefined" : _type_of(node)) !== "object")) {
35
+ if (node.type === "JSXOpeningElement" && node.name) {
36
+ var tagName = getJsxName(node.name);
37
+ if (tagName && tagName !== "Fragment") {
38
+ var _node_attributes,
39
+ hasSourceAttr = (_node_attributes = node.attributes) === null || _node_attributes === void 0 ? void 0 : _node_attributes.some(function (attr) {
40
+ var _attr_name;
41
+ return attr.type === "JSXAttribute" && ((_attr_name = attr.name) === null || _attr_name === void 0 ? void 0 : _attr_name.name) === "data-one-source";
42
+ });
43
+ if (!hasSourceAttr) {
44
+ var nameEnd = node.name.end,
45
+ loc = getLocation(node.start);
46
+ locations.push({
47
+ insertOffset: nameEnd,
48
+ index: traversalIndex++,
49
+ line: loc.line,
50
+ column: loc.column
51
+ });
52
+ }
53
+ }
54
+ }
55
+ var _iteratorNormalCompletion = !0,
56
+ _didIteratorError = !1,
57
+ _iteratorError = void 0;
58
+ try {
59
+ for (var _iterator = Object.keys(node)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
60
+ var key = _step.value;
61
+ if (key !== "parent") {
62
+ var value = node[key];
63
+ if (Array.isArray(value)) {
64
+ var _iteratorNormalCompletion1 = !0,
65
+ _didIteratorError1 = !1,
66
+ _iteratorError1 = void 0;
67
+ try {
68
+ for (var _iterator1 = value[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = !0) {
69
+ var child = _step1.value;
70
+ walk(child);
71
+ }
72
+ } catch (err) {
73
+ _didIteratorError1 = !0, _iteratorError1 = err;
74
+ } finally {
75
+ try {
76
+ !_iteratorNormalCompletion1 && _iterator1.return != null && _iterator1.return();
77
+ } finally {
78
+ if (_didIteratorError1) throw _iteratorError1;
79
+ }
80
+ }
81
+ } else value && (typeof value > "u" ? "undefined" : _type_of(value)) === "object" && walk(value);
82
+ }
83
+ }
84
+ } catch (err) {
85
+ _didIteratorError = !0, _iteratorError = err;
86
+ } finally {
87
+ try {
88
+ !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
89
+ } finally {
90
+ if (_didIteratorError) throw _iteratorError;
91
+ }
92
+ }
93
+ }
94
+ }
95
+ return walk(result.program), locations.sort(function (a, b) {
96
+ return b.insertOffset - a.insertOffset;
97
+ });
98
+ }
99
+ function injectSourceToJsx(code, id) {
100
+ var [filePath] = id.split("?");
101
+ if (filePath) {
102
+ var location = filePath.replace(normalizePath(process.cwd()), "");
103
+ if (!(!code.includes("<") || !code.includes(">"))) {
104
+ var jsxLocations = findJsxElements(code, filePath);
105
+ if (jsxLocations.length !== 0) {
106
+ var sourceInfoEntries = [...jsxLocations].sort(function (a, b) {
107
+ return a.index - b.index;
108
+ }).map(function (jsx2) {
109
+ return `${jsx2.index}:[${jsx2.line},${jsx2.column}]`;
110
+ }).join(","),
111
+ sourceInfoScript = `globalThis.__oneSourceInfo=globalThis.__oneSourceInfo||{};globalThis.__oneSourceInfo["${location}"]={${sourceInfoEntries}};`,
112
+ result = code,
113
+ _iteratorNormalCompletion = !0,
114
+ _didIteratorError = !1,
115
+ _iteratorError = void 0;
116
+ try {
117
+ for (var _iterator = jsxLocations[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
118
+ var jsx = _step.value,
119
+ sourceAttr = ` data-one-source="${location}:${jsx.index}"`;
120
+ result = result.slice(0, jsx.insertOffset) + sourceAttr + result.slice(jsx.insertOffset);
121
+ }
122
+ } catch (err) {
123
+ _didIteratorError = !0, _iteratorError = err;
124
+ } finally {
125
+ try {
126
+ !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
127
+ } finally {
128
+ if (_didIteratorError) throw _iteratorError;
129
+ }
130
+ }
131
+ return result = sourceInfoScript + result, {
132
+ code: result,
133
+ map: null
134
+ };
135
+ }
136
+ }
137
+ }
138
+ }
139
+ async function openInEditor(filePath, line, column) {
140
+ try {
141
+ var launch = (await import("launch-editor")).default,
142
+ fullPath = path.join(process.cwd(), filePath),
143
+ location = `${fullPath}${line ? `:${line}` : ""}${column ? `:${column}` : ""}`;
144
+ launch(location, void 0, function (filename, errorMessage) {
145
+ errorMessage && console.warn(`[one:source-inspector] Failed to open ${filename} in editor:`, errorMessage);
146
+ });
147
+ } catch (err) {
148
+ console.warn("[one:source-inspector] Failed to launch editor:", err);
149
+ }
150
+ }
151
+ function sourceInspectorPlugin() {
152
+ return [
153
+ // Transform plugin - injects data-one-source attributes
154
+ {
155
+ name: "one:source-inspector-transform",
156
+ enforce: "pre",
157
+ apply: "serve",
158
+ transform(code, id) {
159
+ var _this_environment,
160
+ envName = (_this_environment = this.environment) === null || _this_environment === void 0 ? void 0 : _this_environment.name;
161
+ if (!(envName === "ios" || envName === "android") && !(id.includes("node_modules") || id.includes("?raw") || id.includes("dist") || id.includes("build")) && !(!id.endsWith(".jsx") && !id.endsWith(".tsx"))) return injectSourceToJsx(code, id);
162
+ }
163
+ },
164
+ // Note: Inspector UI script is now injected via DevHead.tsx for SSR compatibility
165
+ // Server plugin - handles open-source requests
166
+ {
167
+ name: "one:source-inspector-server",
168
+ apply: "serve",
169
+ configureServer(server) {
170
+ server.middlewares.use(async function (req, res, next) {
171
+ var _req_url;
172
+ if (!(!((_req_url = req.url) === null || _req_url === void 0) && _req_url.startsWith("/__one/open-source"))) return next();
173
+ try {
174
+ var url = new URL(req.url, "http://localhost"),
175
+ source = url.searchParams.get("source");
176
+ if (!source) {
177
+ res.statusCode = 400, res.end("Missing source parameter");
178
+ return;
179
+ }
180
+ var lastColon = source.lastIndexOf(":"),
181
+ filePath = source.slice(0, lastColon),
182
+ index = source.slice(lastColon + 1),
183
+ line = url.searchParams.get("line"),
184
+ column = url.searchParams.get("column");
185
+ await openInEditor(filePath, line || void 0, column || void 0), res.statusCode = 200, res.end("OK");
186
+ } catch (err) {
187
+ console.error("[one:source-inspector] Error:", err), res.statusCode = 500, res.end("Internal server error");
188
+ }
189
+ });
190
+ }
191
+ }];
192
+ }
193
+ export { sourceInspectorPlugin };
194
+ //# sourceMappingURL=sourceInspectorPlugin.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["path","parseSync","normalizePath","_type_of","obj","Symbol","constructor","findJsxElements","code","filename","result","errors","length","locations","traversalIndex","getJsxName","node","type","name","_node_property","object","property","getLocation","offset","before","slice","lines","split","line","column","walk","tagName","_node_attributes","hasSourceAttr","attributes","some","attr","_attr_name","nameEnd","end","loc","start","push","insertOffset","index","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Object","keys","iterator","_step","next","done","key","value","Array","isArray","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","child","err","return","program","sort","a","b","injectSourceToJsx","id","filePath","location","replace","process","cwd","includes","jsxLocations","sourceInfoEntries","map","jsx2","join","sourceInfoScript","jsx","sourceAttr"],"sources":["../../../../src/vite/plugins/sourceInspectorPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -43,9 +43,17 @@ function getSetupFileImport(environmentName, setupFiles, useStaticImport) {
43
43
  ios: "ios",
44
44
  android: "android"
45
45
  }[environmentName];
46
- if (!key) return "";
46
+ if (!key) return { importStatement: "", promiseDeclaration: "", promiseVarName: "" };
47
47
  const setupFile = setupFiles[key];
48
- return setupFile ? useStaticImport ? `import ${JSON.stringify(setupFile)}` : `await import(/* @vite-ignore */ ${JSON.stringify(setupFile)})` : "";
48
+ return setupFile ? useStaticImport ? {
49
+ importStatement: `import ${JSON.stringify(setupFile)}`,
50
+ promiseDeclaration: "",
51
+ promiseVarName: ""
52
+ } : {
53
+ importStatement: "",
54
+ promiseDeclaration: `const __oneSetupPromise = import(/* @vite-ignore */ ${JSON.stringify(setupFile)})`,
55
+ promiseVarName: "__oneSetupPromise"
56
+ } : { importStatement: "", promiseDeclaration: "", promiseVarName: "" };
49
57
  }
50
58
  function createVirtualEntry(options) {
51
59
  const routeGlobs = [
@@ -65,13 +73,14 @@ function createVirtualEntry(options) {
65
73
  },
66
74
  load(id) {
67
75
  if (id === resolvedVirtualEntryId) {
68
- const isNative = isNativeEnvironment(this.environment), prependCode = getSetupFileImport(
76
+ const isNative = isNativeEnvironment(this.environment), setupResult = getSetupFileImport(
69
77
  this.environment.name,
70
78
  setupFiles,
71
79
  isNative
72
- ), nativewindImport = configuration.enableNativewind ? "import 'react-native-css-interop/dist/runtime/components'" : "";
80
+ ), nativewindImport = configuration.enableNativewind ? "import 'react-native-css-interop/dist/runtime/components'" : "", setupPromiseArg = setupResult.promiseVarName ? `setupPromise: ${setupResult.promiseVarName},` : "";
73
81
  return `
74
- ${prependCode}
82
+ ${setupResult.importStatement}
83
+ ${setupResult.promiseDeclaration}
75
84
  ${nativewindImport}
76
85
 
77
86
  import { createApp, registerPreloadedRoute as _registerPreloadedRoute } from 'one'
@@ -89,6 +98,7 @@ if (typeof window !== 'undefined') {
89
98
 
90
99
  // globbing ${JSON.stringify(routeGlobs)}
91
100
  export default createApp({
101
+ ${setupPromiseArg}
92
102
  routes: import.meta.glob(${JSON.stringify([...routeGlobs, ...ROUTE_WEB_EXCLUSION_GLOB_PATTERNS.map((p) => `!${p}`)])}, { exhaustive: true }),
93
103
  routerRoot: ${JSON.stringify(options.root)},
94
104
  flags: ${JSON.stringify(options.flags)},
@@ -102,7 +112,7 @@ ${getSetupFileImport(
102
112
  this.environment.name,
103
113
  setupFiles,
104
114
  isNative
105
- )}
115
+ ).importStatement}
106
116
 
107
117
  import { createApp } from 'one'
108
118
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/vite/plugins/virtualEntryPlugin.ts"],
4
- "mappings": "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",
4
+ "mappings": "AAAA,SAAS,qBAAqB;AAE9B,SAAS,2BAA2B;AACpC;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AASP,SAAS,mBACP,WACsB;AACtB,MAAI,CAAC,UAAW,QAAO,CAAC;AACxB,MAAI,OAAO,aAAc;AACvB,WAAO;AAAA,MACL,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,KAAK;AAAA,MACL,SAAS;AAAA,IACX;AAEF,MAAI,YAAY;AACd,WAAO;AAAA,MACL,QAAQ,UAAU;AAAA,MAClB,QAAQ,UAAU;AAAA,MAClB,KAAK,UAAU;AAAA,MACf,SAAS,UAAU;AAAA,IACrB;AAEF,QAAM,KAAK;AAMX,SAAO;AAAA,IACL,QAAQ,GAAG;AAAA,IACX,QAAQ,GAAG;AAAA,IACX,KAAK,GAAG;AAAA,IACR,SAAS,GAAG;AAAA,EACd;AACF;AAWA,SAAS,mBACP,iBACA,YACA,iBACmB;AAQnB,QAAM,MAPqD;AAAA,IACzD,QAAQ;AAAA,IACR,KAAK;AAAA,IACL,KAAK;AAAA,IACL,SAAS;AAAA,EACX,EAEmB,eAAe;AAClC,MAAI,CAAC,IAAK,QAAO,EAAE,iBAAiB,IAAI,oBAAoB,IAAI,gBAAgB,GAAG;AAEnF,QAAM,YAAY,WAAW,GAAG;AAChC,SAAK,YAGD,kBACK;AAAA,IACL,iBAAiB,UAAU,KAAK,UAAU,SAAS,CAAC;AAAA,IACpD,oBAAoB;AAAA,IACpB,gBAAgB;AAAA,EAClB,IAMK;AAAA,IACL,iBAAiB;AAAA,IACjB,oBAAoB,uDAAuD,KAAK,UAAU,SAAS,CAAC;AAAA,IACpG,gBAAgB;AAAA,EAClB,IAlBuB,EAAE,iBAAiB,IAAI,oBAAoB,IAAI,gBAAgB,GAAG;AAmB3F;AAEO,SAAS,mBAAmB,SAOxB;AACT,QAAM,aAAa;AAAA,IACjB,IAAI,QAAQ,IAAI,IAAI,kBAAkB;AAAA,IACtC,GAAI,QAAQ,QAAQ,mBAAmB;AAAA,MACrC,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,OAAO;AAAA,IAC3C,KAAK,CAAC;AAAA,EACR,GACM,gBAAgB,IAAI,QAAQ,IAAI,IAAI,sBAAsB,IAE1D,aAAa,mBAAmB,QAAQ,SAAS;AAEvD,SAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IAET,UAAU,IAAI;AACZ,UAAI,OAAO;AACT,eAAO;AAET,UAAI,OAAO;AACT,eAAO;AAAA,IAEX;AAAA,IAEA,KAAK,IAAI;AACP,UAAI,OAAO,wBAAwB;AACjC,cAAM,WAAW,oBAAoB,KAAK,WAAW,GAC/C,cAAc;AAAA,UAClB,KAAK,YAAY;AAAA,UACjB;AAAA,UACA;AAAA,QACF,GAEM,mBAAmB,cAAc,mBACnC,8DACA,IAEE,kBAAkB,YAAY,iBAChC,iBAAiB,YAAY,cAAc,MAC3C;AACJ,eAAO;AAAA,EACb,YAAY,eAAe;AAAA,EAC3B,YAAY,kBAAkB;AAAA,EAC9B,gBAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,cAeJ,KAAK,UAAU,UAAU,CAAC;AAAA;AAAA,IAEpC,eAAe;AAAA,6BACU,KAAK,UAAU,CAAC,GAAG,YAAY,GAAG,kCAAkC,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;AAAA,gBACtG,KAAK,UAAU,QAAQ,IAAI,CAAC;AAAA,WACjC,KAAK,UAAU,QAAQ,KAAK,CAAC;AAAA;AAAA;AAAA,MAGlC;AAEA,UAAI,OAAO,8BAA8B;AACvC,cAAM,WAAW,oBAAoB,KAAK,WAAW;AAMrD,eAAO;AAAA,EALa;AAAA,UAClB,KAAK,YAAY;AAAA,UACjB;AAAA,UACA;AAAA,QACF,EAEM,eAAe;AAAA;AAAA;AAAA;AAAA,cAIf,KAAK,UAAU,UAAU,CAAC;AAAA;AAAA,6BAEX,KAAK,UAAU,CAAC,GAAG,YAAY,GAAG,qCAAqC,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,GAAG,IAAI,aAAa,EAAE,CAAC,CAAC;AAAA,gBAC9H,KAAK,UAAU,QAAQ,IAAI,CAAC;AAAA,WACjC,KAAK,UAAU,QAAQ,KAAK,CAAC;AAAA;AAAA;AAAA,MAGlC;AAAA,IACF;AAAA,EACF;AACF;",
5
5
  "names": []
6
6
  }
@@ -31,9 +31,25 @@ function getSetupFileImport(environmentName, setupFiles, useStaticImport) {
31
31
  ios: "ios",
32
32
  android: "android"
33
33
  }[environmentName];
34
- if (!key) return "";
34
+ if (!key) return {
35
+ importStatement: "",
36
+ promiseDeclaration: "",
37
+ promiseVarName: ""
38
+ };
35
39
  const setupFile = setupFiles[key];
36
- return setupFile ? useStaticImport ? `import ${JSON.stringify(setupFile)}` : `await import(/* @vite-ignore */ ${JSON.stringify(setupFile)})` : "";
40
+ return setupFile ? useStaticImport ? {
41
+ importStatement: `import ${JSON.stringify(setupFile)}`,
42
+ promiseDeclaration: "",
43
+ promiseVarName: ""
44
+ } : {
45
+ importStatement: "",
46
+ promiseDeclaration: `const __oneSetupPromise = import(/* @vite-ignore */ ${JSON.stringify(setupFile)})`,
47
+ promiseVarName: "__oneSetupPromise"
48
+ } : {
49
+ importStatement: "",
50
+ promiseDeclaration: "",
51
+ promiseVarName: ""
52
+ };
37
53
  }
38
54
  function createVirtualEntry(options) {
39
55
  const routeGlobs = [`/${options.root}/${ROUTE_GLOB_PATTERN}`, ...(options.router?.ignoredRouteFiles?.map(pattern => `!/${options.root}/${pattern}`) || [])],
@@ -49,10 +65,12 @@ function createVirtualEntry(options) {
49
65
  load(id) {
50
66
  if (id === resolvedVirtualEntryId) {
51
67
  const isNative = isNativeEnvironment(this.environment),
52
- prependCode = getSetupFileImport(this.environment.name, setupFiles, isNative),
53
- nativewindImport = configuration.enableNativewind ? "import 'react-native-css-interop/dist/runtime/components'" : "";
68
+ setupResult = getSetupFileImport(this.environment.name, setupFiles, isNative),
69
+ nativewindImport = configuration.enableNativewind ? "import 'react-native-css-interop/dist/runtime/components'" : "",
70
+ setupPromiseArg = setupResult.promiseVarName ? `setupPromise: ${setupResult.promiseVarName},` : "";
54
71
  return `
55
- ${prependCode}
72
+ ${setupResult.importStatement}
73
+ ${setupResult.promiseDeclaration}
56
74
  ${nativewindImport}
57
75
 
58
76
  import { createApp, registerPreloadedRoute as _registerPreloadedRoute } from 'one'
@@ -70,6 +88,7 @@ if (typeof window !== 'undefined') {
70
88
 
71
89
  // globbing ${JSON.stringify(routeGlobs)}
72
90
  export default createApp({
91
+ ${setupPromiseArg}
73
92
  routes: import.meta.glob(${JSON.stringify([...routeGlobs, ...ROUTE_WEB_EXCLUSION_GLOB_PATTERNS.map(p => `!${p}`)])}, { exhaustive: true }),
74
93
  routerRoot: ${JSON.stringify(options.root)},
75
94
  flags: ${JSON.stringify(options.flags)},
@@ -79,7 +98,7 @@ export default createApp({
79
98
  if (id === resolvedVirtualEntryIdNative) {
80
99
  const isNative = isNativeEnvironment(this.environment);
81
100
  return `
82
- ${getSetupFileImport(this.environment.name, setupFiles, isNative)}
101
+ ${getSetupFileImport(this.environment.name, setupFiles, isNative).importStatement}
83
102
 
84
103
  import { createApp } from 'one'
85
104
 
@@ -1 +1 @@
1
- {"version":3,"names":["configuration","isNativeEnvironment","API_ROUTE_GLOB_PATTERN","ROUTE_GLOB_PATTERN","ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS","ROUTE_WEB_EXCLUSION_GLOB_PATTERNS","resolvedVirtualEntryId","resolvedVirtualEntryIdNative","virtualEntryId","virtualEntryIdNative","normalizeSetupFile","setupFile","client","server","ios","android","native","sf","getSetupFileImport","environmentName","setupFiles","useStaticImport","key","ssr","JSON","stringify","createVirtualEntry","options","routeGlobs","root","router","ignoredRouteFiles","map","pattern","apiRouteGlobs","name","enforce","resolveId","id","load","isNative","environment","prependCode","nativewindImport","enableNativewind","p","flags"],"sources":["../../../../src/vite/plugins/virtualEntryPlugin.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,aAAA,QAAqB;AAE9B,SAASC,mBAAA,QAA2B;AACpC,SACEC,sBAAA,EACAC,kBAAA,EACAC,oCAAA,EACAC,iCAAA,QACK;AAEP,SACEC,sBAAA,EACAC,4BAAA,EACAC,cAAA,EACAC,oBAAA,QACK;AASP,SAASC,mBACPC,SAAA,EACsB;EACtB,IAAI,CAACA,SAAA,EAAW,OAAO,CAAC;EACxB,IAAI,OAAOA,SAAA,IAAc,UACvB,OAAO;IACLC,MAAA,EAAQD,SAAA;IACRE,MAAA,EAAQF,SAAA;IACRG,GAAA,EAAKH,SAAA;IACLI,OAAA,EAASJ;EACX;EAEF,IAAI,YAAYA,SAAA,EACd,OAAO;IACLC,MAAA,EAAQD,SAAA,CAAUC,MAAA;IAClBC,MAAA,EAAQF,SAAA,CAAUE,MAAA;IAClBC,GAAA,EAAKH,SAAA,CAAUK,MAAA;IACfD,OAAA,EAASJ,SAAA,CAAUK;EACrB;EAEF,MAAMC,EAAA,GAAKN,SAAA;EAMX,OAAO;IACLC,MAAA,EAAQK,EAAA,CAAGL,MAAA;IACXC,MAAA,EAAQI,EAAA,CAAGJ,MAAA;IACXC,GAAA,EAAKG,EAAA,CAAGH,GAAA;IACRC,OAAA,EAASE,EAAA,CAAGF;EACd;AACF;AAEA,SAASG,mBACPC,eAAA,EACAC,UAAA,EACAC,eAAA,EACQ;EAQR,MAAMC,GAAA,GAPqD;IACzDV,MAAA,EAAQ;IACRW,GAAA,EAAK;IACLT,GAAA,EAAK;IACLC,OAAA,EAAS;EACX,EAEmBI,eAAe;EAClC,IAAI,CAACG,GAAA,EAAK,OAAO;EAEjB,MAAMX,SAAA,GAAYS,UAAA,CAAWE,GAAG;EAChC,OAAKX,SAAA,GAIDU,eAAA,GACK,UAAUG,IAAA,CAAKC,SAAA,CAAUd,SAAS,CAAC,KAGrC,mCAAmCa,IAAA,CAAKC,SAAA,CAAUd,SAAS,CAAC,MAR5C;AASzB;AAEO,SAASe,mBAAmBC,OAAA,EAOxB;EACT,MAAMC,UAAA,GAAa,CACjB,IAAID,OAAA,CAAQE,IAAI,IAAI1B,kBAAkB,IACtC,IAAIwB,OAAA,CAAQG,MAAA,EAAQC,iBAAA,EAAmBC,GAAA,CACpCC,OAAA,IAAY,KAAKN,OAAA,CAAQE,IAAI,IAAII,OAAO,EAC3C,KAAK,EAAC,EACR;IACMC,aAAA,GAAgB,IAAIP,OAAA,CAAQE,IAAI,IAAI3B,sBAAsB;IAE1DkB,UAAA,GAAaV,kBAAA,CAAmBiB,OAAA,CAAQhB,SAAS;EAEvD,OAAO;IACLwB,IAAA,EAAM;IACNC,OAAA,EAAS;IAETC,UAAUC,EAAA,EAAI;MACZ,IAAIA,EAAA,KAAO9B,cAAA,EACT,OAAOF,sBAAA;MAET,IAAIgC,EAAA,KAAO7B,oBAAA,EACT,OAAOF,4BAAA;IAEX;IAEAgC,KAAKD,EAAA,EAAI;MACP,IAAIA,EAAA,KAAOhC,sBAAA,EAAwB;QACjC,MAAMkC,QAAA,GAAWvC,mBAAA,CAAoB,KAAKwC,WAAW;UAC/CC,WAAA,GAAcxB,kBAAA,CAClB,KAAKuB,WAAA,CAAYN,IAAA,EACjBf,UAAA,EACAoB,QACF;UAEMG,gBAAA,GAAmB3C,aAAA,CAAc4C,gBAAA,GACnC,8DACA;QACJ,OAAO;AAAA,EACbF,WAAW;AAAA,EACXC,gBAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,cAeJnB,IAAA,CAAKC,SAAA,CAAUG,UAAU,CAAC;AAAA;AAAA,6BAEXJ,IAAA,CAAKC,SAAA,CAAU,CAAC,GAAGG,UAAA,EAAY,GAAGvB,iCAAA,CAAkC2B,GAAA,CAAKa,CAAA,IAAM,IAAIA,CAAC,EAAE,CAAC,CAAC,CAAC;AAAA,gBACtGrB,IAAA,CAAKC,SAAA,CAAUE,OAAA,CAAQE,IAAI,CAAC;AAAA,WACjCL,IAAA,CAAKC,SAAA,CAAUE,OAAA,CAAQmB,KAAK,CAAC;AAAA;AAAA;MAGlC;MAEA,IAAIR,EAAA,KAAO/B,4BAAA,EAA8B;QACvC,MAAMiC,QAAA,GAAWvC,mBAAA,CAAoB,KAAKwC,WAAW;QAMrD,OAAO;AAAA,EALavB,kBAAA,CAClB,KAAKuB,WAAA,CAAYN,IAAA,EACjBf,UAAA,EACAoB,QACF,CAEK;AAAA;AAAA;AAAA;AAAA,cAIChB,IAAA,CAAKC,SAAA,CAAUG,UAAU,CAAC;AAAA;AAAA,6BAEXJ,IAAA,CAAKC,SAAA,CAAU,CAAC,GAAGG,UAAA,EAAY,GAAGxB,oCAAA,CAAqC4B,GAAA,CAAKa,CAAA,IAAM,IAAIA,CAAC,EAAE,GAAG,IAAIX,aAAa,EAAE,CAAC,CAAC;AAAA,gBAC9HV,IAAA,CAAKC,SAAA,CAAUE,OAAA,CAAQE,IAAI,CAAC;AAAA,WACjCL,IAAA,CAAKC,SAAA,CAAUE,OAAA,CAAQmB,KAAK,CAAC;AAAA;AAAA;MAGlC;IACF;EACF;AACF","ignoreList":[]}
1
+ {"version":3,"names":["configuration","isNativeEnvironment","API_ROUTE_GLOB_PATTERN","ROUTE_GLOB_PATTERN","ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS","ROUTE_WEB_EXCLUSION_GLOB_PATTERNS","resolvedVirtualEntryId","resolvedVirtualEntryIdNative","virtualEntryId","virtualEntryIdNative","normalizeSetupFile","setupFile","client","server","ios","android","native","sf","getSetupFileImport","environmentName","setupFiles","useStaticImport","key","ssr","importStatement","promiseDeclaration","promiseVarName","JSON","stringify","createVirtualEntry","options","routeGlobs","root","router","ignoredRouteFiles","map","pattern","apiRouteGlobs","name","enforce","resolveId","id","load","isNative","environment","setupResult","nativewindImport","enableNativewind","setupPromiseArg","p","flags"],"sources":["../../../../src/vite/plugins/virtualEntryPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -32,9 +32,25 @@ function getSetupFileImport(environmentName, setupFiles, useStaticImport) {
32
32
  android: "android"
33
33
  },
34
34
  key = envMap[environmentName];
35
- if (!key) return "";
35
+ if (!key) return {
36
+ importStatement: "",
37
+ promiseDeclaration: "",
38
+ promiseVarName: ""
39
+ };
36
40
  var setupFile = setupFiles[key];
37
- return setupFile ? useStaticImport ? `import ${JSON.stringify(setupFile)}` : `await import(/* @vite-ignore */ ${JSON.stringify(setupFile)})` : "";
41
+ return setupFile ? useStaticImport ? {
42
+ importStatement: `import ${JSON.stringify(setupFile)}`,
43
+ promiseDeclaration: "",
44
+ promiseVarName: ""
45
+ } : {
46
+ importStatement: "",
47
+ promiseDeclaration: `const __oneSetupPromise = import(/* @vite-ignore */ ${JSON.stringify(setupFile)})`,
48
+ promiseVarName: "__oneSetupPromise"
49
+ } : {
50
+ importStatement: "",
51
+ promiseDeclaration: "",
52
+ promiseVarName: ""
53
+ };
38
54
  }
39
55
  function createVirtualEntry(options) {
40
56
  var _options_router_ignoredRouteFiles,
@@ -54,10 +70,12 @@ function createVirtualEntry(options) {
54
70
  load(id) {
55
71
  if (id === resolvedVirtualEntryId) {
56
72
  var isNative = isNativeEnvironment(this.environment),
57
- prependCode = getSetupFileImport(this.environment.name, setupFiles, isNative),
58
- nativewindImport = configuration.enableNativewind ? "import 'react-native-css-interop/dist/runtime/components'" : "";
73
+ setupResult = getSetupFileImport(this.environment.name, setupFiles, isNative),
74
+ nativewindImport = configuration.enableNativewind ? "import 'react-native-css-interop/dist/runtime/components'" : "",
75
+ setupPromiseArg = setupResult.promiseVarName ? `setupPromise: ${setupResult.promiseVarName},` : "";
59
76
  return `
60
- ${prependCode}
77
+ ${setupResult.importStatement}
78
+ ${setupResult.promiseDeclaration}
61
79
  ${nativewindImport}
62
80
 
63
81
  import { createApp, registerPreloadedRoute as _registerPreloadedRoute } from 'one'
@@ -75,6 +93,7 @@ if (typeof window !== 'undefined') {
75
93
 
76
94
  // globbing ${JSON.stringify(routeGlobs)}
77
95
  export default createApp({
96
+ ${setupPromiseArg}
78
97
  routes: import.meta.glob(${JSON.stringify([...routeGlobs, ...ROUTE_WEB_EXCLUSION_GLOB_PATTERNS.map(function (p) {
79
98
  return `!${p}`;
80
99
  })])}, { exhaustive: true }),
@@ -85,9 +104,9 @@ export default createApp({
85
104
  }
86
105
  if (id === resolvedVirtualEntryIdNative) {
87
106
  var isNative1 = isNativeEnvironment(this.environment),
88
- prependCode1 = getSetupFileImport(this.environment.name, setupFiles, isNative1);
107
+ setupResult1 = getSetupFileImport(this.environment.name, setupFiles, isNative1);
89
108
  return `
90
- ${prependCode1}
109
+ ${setupResult1.importStatement}
91
110
 
92
111
  import { createApp } from 'one'
93
112
 
@@ -1 +1 @@
1
- {"version":3,"names":["configuration","isNativeEnvironment","API_ROUTE_GLOB_PATTERN","ROUTE_GLOB_PATTERN","ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS","ROUTE_WEB_EXCLUSION_GLOB_PATTERNS","resolvedVirtualEntryId","resolvedVirtualEntryIdNative","virtualEntryId","virtualEntryIdNative","normalizeSetupFile","setupFile","client","server","ios","android","native","sf","getSetupFileImport","environmentName","setupFiles","useStaticImport","envMap","ssr","key","JSON","stringify","createVirtualEntry","options","_options_router_ignoredRouteFiles","_options_router","routeGlobs","root","router","ignoredRouteFiles","map","pattern","apiRouteGlobs","name","enforce","resolveId","id","load","isNative","environment","prependCode","nativewindImport","enableNativewind","p","flags","isNative1","prependCode1"],"sources":["../../../../src/vite/plugins/virtualEntryPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["configuration","isNativeEnvironment","API_ROUTE_GLOB_PATTERN","ROUTE_GLOB_PATTERN","ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS","ROUTE_WEB_EXCLUSION_GLOB_PATTERNS","resolvedVirtualEntryId","resolvedVirtualEntryIdNative","virtualEntryId","virtualEntryIdNative","normalizeSetupFile","setupFile","client","server","ios","android","native","sf","getSetupFileImport","environmentName","setupFiles","useStaticImport","envMap","ssr","key","importStatement","promiseDeclaration","promiseVarName","JSON","stringify","createVirtualEntry","options","_options_router_ignoredRouteFiles","_options_router","routeGlobs","root","router","ignoredRouteFiles","map","pattern","apiRouteGlobs","name","enforce","resolveId","id","load","isNative","environment","setupResult","nativewindImport","enableNativewind","setupPromiseArg","p","flags","isNative1","setupResult1"],"sources":["../../../../src/vite/plugins/virtualEntryPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "one",
3
- "version": "1.2.57",
3
+ "version": "1.2.58",
4
4
  "license": "BSD-3-Clause",
5
5
  "sideEffects": [
6
6
  "setup.mjs",
@@ -135,17 +135,17 @@
135
135
  "@react-navigation/routers": "~7.5.1",
136
136
  "@swc/core": "^1.14.0",
137
137
  "@ungap/structured-clone": "^1.2.0",
138
- "@vxrn/color-scheme": "1.2.57",
139
- "@vxrn/compiler": "1.2.57",
140
- "@vxrn/resolve": "1.2.57",
141
- "@vxrn/tslib-lite": "1.2.57",
142
- "@vxrn/use-isomorphic-layout-effect": "1.2.57",
143
- "@vxrn/vite-plugin-metro": "1.2.57",
138
+ "@vxrn/color-scheme": "1.2.58",
139
+ "@vxrn/compiler": "1.2.58",
140
+ "@vxrn/resolve": "1.2.58",
141
+ "@vxrn/tslib-lite": "1.2.58",
142
+ "@vxrn/use-isomorphic-layout-effect": "1.2.58",
143
+ "@vxrn/vite-plugin-metro": "1.2.58",
144
144
  "babel-dead-code-elimination": "^1.0.10",
145
145
  "babel-plugin-module-resolver": "^5.0.2",
146
146
  "citty": "^0.1.6",
147
147
  "core-js": "^3.38.1",
148
- "create-vxrn": "1.2.57",
148
+ "create-vxrn": "1.2.58",
149
149
  "escape-string-regexp": "^5.0.0",
150
150
  "expo-linking": "~8.0.8",
151
151
  "expo-modules-core": "~3.0.24",
@@ -153,9 +153,11 @@
153
153
  "fast-glob": "^3.3.3",
154
154
  "fs-extra": "^11.2.0",
155
155
  "hono": "^4.10.7",
156
+ "launch-editor": "^2.10.0",
156
157
  "lightningcss": "^1.30.1",
157
158
  "micromatch": "^4.0.7",
158
159
  "nanoid": "^3.3.7",
160
+ "oxc-parser": "^0.107.0",
159
161
  "perfect-debounce": "^1.0.0",
160
162
  "picocolors": "^1.0.0",
161
163
  "react": "19.1.0",
@@ -171,7 +173,7 @@
171
173
  "vite": "^7.1.12",
172
174
  "vite-plugin-barrel": "^0.4.1",
173
175
  "vite-tsconfig-paths": "^5.1.4",
174
- "vxrn": "1.2.57",
176
+ "vxrn": "1.2.58",
175
177
  "ws": "^8.18.0",
176
178
  "xxhashjs": "^0.2.2"
177
179
  },
@@ -233,7 +233,7 @@ if (typeof document === 'undefined') globalThis.document = {}
233
233
  ${criticalScripts}
234
234
  ${deferredLinks}
235
235
  ${cssOutput}
236
- </head></html>`
236
+ </head><body></body></html>`
237
237
  )
238
238
  }
239
239
  }
package/src/cli/dev.ts CHANGED
@@ -39,17 +39,17 @@ export async function dev(args: {
39
39
  stop()
40
40
  })
41
41
 
42
- process.on('SIGINT', () => {
42
+ process.on('SIGINT', async () => {
43
43
  try {
44
- stop()
44
+ await stop()
45
45
  } finally {
46
46
  process.exit(2)
47
47
  }
48
48
  })
49
49
 
50
- process.on('SIGTERM', () => {
50
+ process.on('SIGTERM', async () => {
51
51
  try {
52
- stop()
52
+ await stop()
53
53
  } finally {
54
54
  process.exit(0)
55
55
  }
package/src/createApp.tsx CHANGED
@@ -18,6 +18,11 @@ export type CreateAppProps = {
18
18
  routes: Record<string, () => Promise<unknown>>
19
19
  routerRoot: string
20
20
  flags?: One.Flags
21
+ /**
22
+ * Promise that resolves when the setup file has finished loading.
23
+ * The app will wait for this before rendering to ensure setup code runs first.
24
+ */
25
+ setupPromise?: Promise<unknown>
21
26
  }
22
27
 
23
28
  export function createApp(options: CreateAppProps) {
@@ -143,6 +148,10 @@ export function createApp(options: CreateAppProps) {
143
148
  const serverContext = getServerContext() || {}
144
149
  const routePreloads = serverContext.routePreloads
145
150
 
151
+ // Wait for setup file to complete first (if provided)
152
+ // This ensures setup code (error handlers, analytics, etc.) runs before the app
153
+ const setupComplete = options.setupPromise || Promise.resolve()
154
+
146
155
  // preload routes using build-time mapping (production SSG)
147
156
  // for SPA/dev mode, fall back to importing root layout directly
148
157
  const preloadPromises = routePreloads
@@ -153,7 +162,8 @@ export function createApp(options: CreateAppProps) {
153
162
  })
154
163
  : [options.routes[`/${options.routerRoot}/_layout.tsx`]?.()]
155
164
 
156
- return Promise.all(preloadPromises)
165
+ return setupComplete
166
+ .then(() => Promise.all(preloadPromises))
157
167
  .then(() => {
158
168
  return resolveClientLoader(serverContext)
159
169
  })
@@ -103,7 +103,9 @@ describe('createHandleRequest', () => {
103
103
  handlePage: vi.fn().mockResolvedValue('<html></html>'),
104
104
  handleLoader: vi.fn().mockResolvedValue('loader data'),
105
105
  }
106
- const { handler } = createHandleRequest(mockHandlersWithLoader, { routerRoot: '/app' })
106
+ const { handler } = createHandleRequest(mockHandlersWithLoader, {
107
+ routerRoot: '/app',
108
+ })
107
109
  // Loader paths are /assets/<path>_<nonce>_vxrn_loader.js - they should reach handleLoader
108
110
  // for a matching route (the path /my-page matches the [slug] route)
109
111
  await handler(createRequest('/assets/my-page_123_vxrn_loader.js'))
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Simple registry for devtools functions.
3
+ * This avoids circular dependencies by letting modules register their
4
+ * devtools functions instead of router.ts importing them.
5
+ */
6
+
7
+ type DevtoolsRegistry = {
8
+ getLoaderTimingHistory?: () => any[]
9
+ }
10
+
11
+ export const devtoolsRegistry: DevtoolsRegistry = {}
12
+
13
+ /**
14
+ * Register a devtools function. Called by modules like useLoader.ts
15
+ */
16
+ export function registerDevtoolsFunction<K extends keyof DevtoolsRegistry>(
17
+ key: K,
18
+ fn: DevtoolsRegistry[K]
19
+ ) {
20
+ devtoolsRegistry[key] = fn
21
+ }