one 1.1.381 → 1.1.383

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 (329) hide show
  1. package/dist/cjs/Route.js.map +1 -1
  2. package/dist/cjs/Route.native.js.map +1 -1
  3. package/dist/cjs/cli/build.cjs +100 -69
  4. package/dist/cjs/cli/build.js +83 -41
  5. package/dist/cjs/cli/build.js.map +2 -2
  6. package/dist/cjs/cli/build.native.js +161 -68
  7. package/dist/cjs/cli/build.native.js.map +2 -2
  8. package/dist/cjs/cli/{run.cjs → dev.cjs} +7 -8
  9. package/dist/cjs/cli/{run.js → dev.js} +7 -8
  10. package/dist/cjs/cli/dev.js.map +6 -0
  11. package/dist/cjs/cli/{run.native.js → dev.native.js} +8 -9
  12. package/dist/cjs/cli/dev.native.js.map +6 -0
  13. package/dist/cjs/cli/main.cjs +2 -2
  14. package/dist/cjs/cli/main.js +2 -2
  15. package/dist/cjs/cli/main.native.js +2 -2
  16. package/dist/cjs/cli/main.native.js.map +1 -1
  17. package/dist/cjs/cli.cjs +3 -7
  18. package/dist/cjs/cli.js +2 -6
  19. package/dist/cjs/cli.js.map +2 -2
  20. package/dist/cjs/cli.native.js +2 -6
  21. package/dist/cjs/cli.native.js.map +2 -2
  22. package/dist/cjs/constants.cjs +3 -1
  23. package/dist/cjs/constants.js +2 -1
  24. package/dist/cjs/constants.js.map +1 -1
  25. package/dist/cjs/constants.native.js +3 -1
  26. package/dist/cjs/constants.native.js.map +2 -2
  27. package/dist/cjs/createHandleRequest.cjs +124 -87
  28. package/dist/cjs/createHandleRequest.js +129 -81
  29. package/dist/cjs/createHandleRequest.js.map +1 -1
  30. package/dist/cjs/createHandleRequest.native.js +153 -96
  31. package/dist/cjs/createHandleRequest.native.js.map +2 -2
  32. package/dist/cjs/createMiddleware.cjs +28 -0
  33. package/dist/cjs/createMiddleware.js +23 -0
  34. package/dist/cjs/createMiddleware.js.map +6 -0
  35. package/dist/cjs/createMiddleware.native.js +28 -0
  36. package/dist/cjs/createMiddleware.native.js.map +6 -0
  37. package/dist/cjs/getRoutes.cjs +11 -18
  38. package/dist/cjs/getRoutes.js +13 -19
  39. package/dist/cjs/getRoutes.js.map +1 -1
  40. package/dist/cjs/getRoutes.native.js +20 -26
  41. package/dist/cjs/getRoutes.native.js.map +2 -2
  42. package/dist/cjs/index.cjs +2 -0
  43. package/dist/cjs/index.js +2 -1
  44. package/dist/cjs/index.js.map +1 -1
  45. package/dist/cjs/index.native.js +3 -1
  46. package/dist/cjs/index.native.js.map +1 -1
  47. package/dist/cjs/router/router.js.map +1 -1
  48. package/dist/cjs/router/router.native.js.map +1 -1
  49. package/dist/cjs/serve-worker.cjs +5 -3
  50. package/dist/cjs/serve-worker.js +3 -3
  51. package/dist/cjs/serve-worker.js.map +1 -1
  52. package/dist/cjs/serve-worker.native.js +3 -3
  53. package/dist/cjs/serve-worker.native.js.map +2 -2
  54. package/dist/cjs/serve.cjs +12 -14
  55. package/dist/cjs/serve.js +12 -13
  56. package/dist/cjs/serve.js.map +1 -1
  57. package/dist/cjs/serve.native.js +12 -13
  58. package/dist/cjs/serve.native.js.map +2 -2
  59. package/dist/cjs/server/createRoutesManifest.js.map +1 -1
  60. package/dist/cjs/server/createRoutesManifest.native.js.map +1 -1
  61. package/dist/cjs/server/getServerManifest.cjs +7 -2
  62. package/dist/cjs/server/getServerManifest.js +7 -2
  63. package/dist/cjs/server/getServerManifest.js.map +1 -1
  64. package/dist/cjs/server/getServerManifest.native.js +23 -3
  65. package/dist/cjs/server/getServerManifest.native.js.map +2 -2
  66. package/dist/cjs/server/oneServe.cjs +86 -84
  67. package/dist/cjs/server/oneServe.js +95 -110
  68. package/dist/cjs/server/oneServe.js.map +2 -2
  69. package/dist/cjs/server/oneServe.native.js +102 -89
  70. package/dist/cjs/server/oneServe.native.js.map +2 -2
  71. package/dist/cjs/utils/getHonoPath.cjs +28 -0
  72. package/dist/cjs/utils/getHonoPath.js +23 -0
  73. package/dist/cjs/utils/getHonoPath.js.map +6 -0
  74. package/dist/cjs/utils/getHonoPath.native.js +28 -0
  75. package/dist/cjs/utils/getHonoPath.native.js.map +6 -0
  76. package/dist/cjs/utils/toAbsolute.cjs +27 -0
  77. package/dist/cjs/utils/toAbsolute.js +22 -0
  78. package/dist/cjs/utils/toAbsolute.js.map +6 -0
  79. package/dist/cjs/utils/toAbsolute.native.js +28 -0
  80. package/dist/cjs/utils/toAbsolute.native.js.map +6 -0
  81. package/dist/cjs/vite/one.cjs +4 -3
  82. package/dist/cjs/vite/one.js +4 -2
  83. package/dist/cjs/vite/one.js.map +1 -1
  84. package/dist/cjs/vite/one.native.js +4 -2
  85. package/dist/cjs/vite/one.native.js.map +2 -2
  86. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.cjs +7 -8
  87. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.js +8 -9
  88. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.js.map +1 -1
  89. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js +8 -7
  90. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js.map +2 -2
  91. package/dist/cjs/vite/resolveResponse.cjs +100 -0
  92. package/dist/cjs/vite/resolveResponse.js +79 -0
  93. package/dist/cjs/vite/resolveResponse.js.map +6 -0
  94. package/dist/cjs/vite/resolveResponse.native.js +94 -0
  95. package/dist/cjs/vite/resolveResponse.native.js.map +6 -0
  96. package/dist/cjs/vite/{headers.cjs → server.cjs} +5 -5
  97. package/dist/cjs/vite/{headers.js → server.js} +6 -6
  98. package/dist/cjs/vite/{headers.js.map → server.js.map} +2 -2
  99. package/dist/cjs/vite/{headers.native.js → server.native.js} +7 -7
  100. package/dist/cjs/vite/{headers.native.js.map → server.native.js.map} +3 -3
  101. package/dist/cjs/vite/types.native.js.map +1 -1
  102. package/dist/cjs/vite.cjs +2 -2
  103. package/dist/cjs/vite.js +2 -2
  104. package/dist/cjs/vite.js.map +1 -1
  105. package/dist/cjs/vite.native.js +3 -3
  106. package/dist/cjs/vite.native.js.map +1 -1
  107. package/dist/esm/Route.js.map +1 -1
  108. package/dist/esm/Route.mjs.map +1 -1
  109. package/dist/esm/Route.native.js.map +1 -1
  110. package/dist/esm/cli/build.js +81 -38
  111. package/dist/esm/cli/build.js.map +1 -1
  112. package/dist/esm/cli/build.mjs +98 -67
  113. package/dist/esm/cli/build.mjs.map +1 -1
  114. package/dist/esm/cli/build.native.js +160 -66
  115. package/dist/esm/cli/build.native.js.map +2 -2
  116. package/dist/esm/cli/{run.js → dev.js} +4 -5
  117. package/dist/esm/cli/dev.js.map +6 -0
  118. package/dist/esm/cli/{run.mjs → dev.mjs} +5 -6
  119. package/dist/esm/cli/dev.mjs.map +1 -0
  120. package/dist/esm/cli/{run.native.js → dev.native.js} +4 -5
  121. package/dist/esm/cli/dev.native.js.map +6 -0
  122. package/dist/esm/cli/main.js +2 -2
  123. package/dist/esm/cli/main.mjs +2 -2
  124. package/dist/esm/cli/main.mjs.map +1 -1
  125. package/dist/esm/cli/main.native.js +2 -2
  126. package/dist/esm/cli/main.native.js.map +1 -1
  127. package/dist/esm/cli.js +2 -6
  128. package/dist/esm/cli.js.map +2 -2
  129. package/dist/esm/cli.mjs +3 -7
  130. package/dist/esm/cli.mjs.map +1 -1
  131. package/dist/esm/cli.native.js +2 -6
  132. package/dist/esm/cli.native.js.map +2 -2
  133. package/dist/esm/constants.js +2 -1
  134. package/dist/esm/constants.js.map +1 -1
  135. package/dist/esm/constants.mjs +3 -2
  136. package/dist/esm/constants.mjs.map +1 -1
  137. package/dist/esm/constants.native.js +2 -1
  138. package/dist/esm/constants.native.js.map +2 -2
  139. package/dist/esm/createHandleRequest.js +130 -81
  140. package/dist/esm/createHandleRequest.js.map +1 -1
  141. package/dist/esm/createHandleRequest.mjs +118 -86
  142. package/dist/esm/createHandleRequest.mjs.map +1 -1
  143. package/dist/esm/createHandleRequest.native.js +148 -95
  144. package/dist/esm/createHandleRequest.native.js.map +2 -2
  145. package/dist/esm/createMiddleware.js +7 -0
  146. package/dist/esm/createMiddleware.js.map +6 -0
  147. package/dist/esm/createMiddleware.mjs +5 -0
  148. package/dist/esm/createMiddleware.mjs.map +1 -0
  149. package/dist/esm/createMiddleware.native.js +7 -0
  150. package/dist/esm/createMiddleware.native.js.map +6 -0
  151. package/dist/esm/getRoutes.js +13 -19
  152. package/dist/esm/getRoutes.js.map +1 -1
  153. package/dist/esm/getRoutes.mjs +12 -18
  154. package/dist/esm/getRoutes.mjs.map +1 -1
  155. package/dist/esm/getRoutes.native.js +20 -25
  156. package/dist/esm/getRoutes.native.js.map +2 -2
  157. package/dist/esm/index.js +2 -0
  158. package/dist/esm/index.js.map +1 -1
  159. package/dist/esm/index.mjs +2 -1
  160. package/dist/esm/index.mjs.map +1 -1
  161. package/dist/esm/index.native.js +2 -0
  162. package/dist/esm/index.native.js.map +2 -2
  163. package/dist/esm/router/router.js.map +1 -1
  164. package/dist/esm/router/router.mjs.map +1 -1
  165. package/dist/esm/router/router.native.js.map +1 -1
  166. package/dist/esm/serve-worker.js +3 -2
  167. package/dist/esm/serve-worker.js.map +1 -1
  168. package/dist/esm/serve-worker.mjs +4 -2
  169. package/dist/esm/serve-worker.mjs.map +1 -1
  170. package/dist/esm/serve-worker.native.js +3 -2
  171. package/dist/esm/serve-worker.native.js.map +2 -2
  172. package/dist/esm/serve.js +12 -13
  173. package/dist/esm/serve.js.map +1 -1
  174. package/dist/esm/serve.mjs +12 -14
  175. package/dist/esm/serve.mjs.map +1 -1
  176. package/dist/esm/serve.native.js +12 -13
  177. package/dist/esm/serve.native.js.map +2 -2
  178. package/dist/esm/server/createRoutesManifest.js.map +1 -1
  179. package/dist/esm/server/createRoutesManifest.mjs.map +1 -1
  180. package/dist/esm/server/createRoutesManifest.native.js.map +1 -1
  181. package/dist/esm/server/getServerManifest.js +7 -2
  182. package/dist/esm/server/getServerManifest.js.map +1 -1
  183. package/dist/esm/server/getServerManifest.mjs +7 -2
  184. package/dist/esm/server/getServerManifest.mjs.map +1 -1
  185. package/dist/esm/server/getServerManifest.native.js +23 -3
  186. package/dist/esm/server/getServerManifest.native.js.map +2 -2
  187. package/dist/esm/server/oneServe.js +100 -110
  188. package/dist/esm/server/oneServe.js.map +1 -1
  189. package/dist/esm/server/oneServe.mjs +86 -84
  190. package/dist/esm/server/oneServe.mjs.map +1 -1
  191. package/dist/esm/server/oneServe.native.js +107 -89
  192. package/dist/esm/server/oneServe.native.js.map +2 -2
  193. package/dist/esm/utils/getHonoPath.js +7 -0
  194. package/dist/esm/utils/getHonoPath.js.map +6 -0
  195. package/dist/esm/utils/getHonoPath.mjs +5 -0
  196. package/dist/esm/utils/getHonoPath.mjs.map +1 -0
  197. package/dist/esm/utils/getHonoPath.native.js +7 -0
  198. package/dist/esm/utils/getHonoPath.native.js.map +6 -0
  199. package/dist/esm/utils/toAbsolute.js +6 -0
  200. package/dist/esm/utils/toAbsolute.js.map +6 -0
  201. package/dist/esm/utils/toAbsolute.mjs +4 -0
  202. package/dist/esm/utils/toAbsolute.mjs.map +1 -0
  203. package/dist/esm/utils/toAbsolute.native.js +8 -0
  204. package/dist/esm/utils/toAbsolute.native.js.map +6 -0
  205. package/dist/esm/vite/one.js +5 -3
  206. package/dist/esm/vite/one.js.map +1 -1
  207. package/dist/esm/vite/one.mjs +4 -3
  208. package/dist/esm/vite/one.mjs.map +1 -1
  209. package/dist/esm/vite/one.native.js +5 -3
  210. package/dist/esm/vite/one.native.js.map +2 -2
  211. package/dist/esm/vite/plugins/fileSystemRouterPlugin.js +7 -9
  212. package/dist/esm/vite/plugins/fileSystemRouterPlugin.js.map +1 -1
  213. package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs +7 -8
  214. package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs.map +1 -1
  215. package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js +7 -7
  216. package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js.map +2 -2
  217. package/dist/esm/vite/resolveResponse.js +64 -0
  218. package/dist/esm/vite/resolveResponse.js.map +6 -0
  219. package/dist/esm/vite/resolveResponse.mjs +76 -0
  220. package/dist/esm/vite/resolveResponse.mjs.map +1 -0
  221. package/dist/esm/vite/resolveResponse.native.js +73 -0
  222. package/dist/esm/vite/resolveResponse.native.js.map +6 -0
  223. package/dist/esm/vite/{headers.js → server.js} +3 -3
  224. package/dist/esm/vite/{headers.js.map → server.js.map} +2 -2
  225. package/dist/esm/vite/{headers.mjs → server.mjs} +3 -3
  226. package/dist/esm/vite/server.mjs.map +1 -0
  227. package/dist/esm/vite/{headers.native.js → server.native.js} +3 -3
  228. package/dist/esm/vite/{headers.native.js.map → server.native.js.map} +3 -3
  229. package/dist/esm/vite.js +2 -2
  230. package/dist/esm/vite.js.map +1 -1
  231. package/dist/esm/vite.mjs +2 -2
  232. package/dist/esm/vite.mjs.map +1 -1
  233. package/dist/esm/vite.native.js +2 -2
  234. package/dist/esm/vite.native.js.map +2 -2
  235. package/package.json +14 -13
  236. package/src/Route.tsx +2 -0
  237. package/src/cli/build.ts +110 -53
  238. package/src/cli/{run.ts → dev.ts} +1 -2
  239. package/src/cli/main.ts +2 -2
  240. package/src/cli.ts +2 -6
  241. package/src/constants.ts +2 -1
  242. package/src/createHandleRequest.ts +210 -126
  243. package/src/createMiddleware.ts +14 -0
  244. package/src/getRoutes.ts +27 -41
  245. package/src/index.ts +3 -0
  246. package/src/router/router.ts +1 -0
  247. package/src/serve-worker.ts +7 -2
  248. package/src/serve.ts +13 -14
  249. package/src/server/createRoutesManifest.ts +7 -0
  250. package/src/server/getServerManifest.ts +16 -0
  251. package/src/server/oneServe.ts +141 -150
  252. package/src/types.ts +0 -4
  253. package/src/utils/getHonoPath.ts +17 -0
  254. package/src/utils/toAbsolute.ts +3 -0
  255. package/src/vite/one.ts +13 -5
  256. package/src/vite/plugins/fileSystemRouterPlugin.tsx +8 -15
  257. package/src/vite/resolveResponse.ts +93 -0
  258. package/src/vite/{headers.native.ts → server.native.ts} +1 -1
  259. package/src/vite/{headers.ts → server.ts} +1 -1
  260. package/src/vite/types.ts +12 -6
  261. package/src/vite.ts +1 -1
  262. package/types/Route.d.ts +2 -0
  263. package/types/Route.d.ts.map +1 -1
  264. package/types/cli/build.d.ts.map +1 -1
  265. package/types/cli/{run.d.ts → dev.d.ts} +2 -2
  266. package/types/cli/{run.d.ts.map → dev.d.ts.map} +1 -1
  267. package/types/constants.d.ts +1 -0
  268. package/types/constants.d.ts.map +1 -1
  269. package/types/createHandleRequest.d.ts +19 -6
  270. package/types/createHandleRequest.d.ts.map +1 -1
  271. package/types/createMiddleware.d.ts +12 -0
  272. package/types/createMiddleware.d.ts.map +1 -0
  273. package/types/getRoutes.d.ts +0 -3
  274. package/types/getRoutes.d.ts.map +1 -1
  275. package/types/index.d.ts +1 -0
  276. package/types/index.d.ts.map +1 -1
  277. package/types/layouts/Drawer.d.ts +2 -2
  278. package/types/layouts/Stack.d.ts +2 -2
  279. package/types/layouts/Tabs.d.ts +2 -2
  280. package/types/router/router.d.ts.map +1 -1
  281. package/types/serve-worker.d.ts +2 -1
  282. package/types/serve-worker.d.ts.map +1 -1
  283. package/types/serve.d.ts.map +1 -1
  284. package/types/server/createRoutesManifest.d.ts +6 -0
  285. package/types/server/createRoutesManifest.d.ts.map +1 -1
  286. package/types/server/getServerManifest.d.ts +2 -0
  287. package/types/server/getServerManifest.d.ts.map +1 -1
  288. package/types/server/oneServe.d.ts +1 -2
  289. package/types/server/oneServe.d.ts.map +1 -1
  290. package/types/types.d.ts +0 -2
  291. package/types/types.d.ts.map +1 -1
  292. package/types/utils/getHonoPath.d.ts +2 -0
  293. package/types/utils/getHonoPath.d.ts.map +1 -0
  294. package/types/utils/toAbsolute.d.ts +2 -0
  295. package/types/utils/toAbsolute.d.ts.map +1 -0
  296. package/types/vite/one.d.ts.map +1 -1
  297. package/types/vite/plugins/fileSystemRouterPlugin.d.ts.map +1 -1
  298. package/types/vite/resolveResponse.d.ts +3 -0
  299. package/types/vite/resolveResponse.d.ts.map +1 -0
  300. package/types/vite/{headers.d.ts → server.d.ts} +2 -2
  301. package/types/vite/server.d.ts.map +1 -0
  302. package/types/vite/{headers.native.d.ts → server.native.d.ts} +2 -2
  303. package/types/vite/server.native.d.ts.map +1 -0
  304. package/types/vite/types.d.ts +11 -5
  305. package/types/vite/types.d.ts.map +1 -1
  306. package/types/vite.d.ts +1 -1
  307. package/types/vite.d.ts.map +1 -1
  308. package/dist/cjs/cli/run.js.map +0 -6
  309. package/dist/cjs/cli/run.native.js.map +0 -6
  310. package/dist/cjs/vite/resolveAPIRequest.cjs +0 -90
  311. package/dist/cjs/vite/resolveAPIRequest.js +0 -71
  312. package/dist/cjs/vite/resolveAPIRequest.js.map +0 -6
  313. package/dist/cjs/vite/resolveAPIRequest.native.js +0 -84
  314. package/dist/cjs/vite/resolveAPIRequest.native.js.map +0 -6
  315. package/dist/esm/cli/run.js.map +0 -6
  316. package/dist/esm/cli/run.mjs.map +0 -1
  317. package/dist/esm/cli/run.native.js.map +0 -6
  318. package/dist/esm/vite/headers.mjs.map +0 -1
  319. package/dist/esm/vite/resolveAPIRequest.js +0 -56
  320. package/dist/esm/vite/resolveAPIRequest.js.map +0 -6
  321. package/dist/esm/vite/resolveAPIRequest.mjs +0 -67
  322. package/dist/esm/vite/resolveAPIRequest.mjs.map +0 -1
  323. package/dist/esm/vite/resolveAPIRequest.native.js +0 -64
  324. package/dist/esm/vite/resolveAPIRequest.native.js.map +0 -6
  325. package/src/vite/resolveAPIRequest.ts +0 -86
  326. package/types/vite/headers.d.ts.map +0 -1
  327. package/types/vite/headers.native.d.ts.map +0 -1
  328. package/types/vite/resolveAPIRequest.d.ts +0 -2
  329. package/types/vite/resolveAPIRequest.d.ts.map +0 -1
@@ -1,111 +1,143 @@
1
1
  import { getPathFromLoaderPath } from "./cleanUrl.mjs";
2
2
  import { LOADER_JS_POSTFIX_UNCACHED } from "./constants.mjs";
3
+ import { getHonoPath } from "./utils/getHonoPath.mjs";
3
4
  import { isResponse } from "./utils/isResponse.mjs";
4
- import { promiseWithResolvers } from "./utils/promiseWithResolvers.mjs";
5
5
  import { getManifest } from "./vite/getManifest.mjs";
6
- function createHandleRequest(options, handlers) {
6
+ import { resolveAPIEndpoint, resolveResponse } from "./vite/resolveResponse.mjs";
7
+ async function runMiddlewares(handlers, request, route, getResponse) {
8
+ const middlewares = route.middlewares;
9
+ if (!middlewares?.length) return await getResponse();
10
+ if (!handlers.loadMiddleware) throw new Error("No middleware handler configured");
11
+ const context = {};
12
+ async function dispatch(index) {
13
+ const middlewareModule = middlewares[index];
14
+ if (!middlewareModule) return await getResponse();
15
+ const exported = (await handlers.loadMiddleware(middlewareModule))?.default;
16
+ if (!exported) throw new Error(`No valid export found in middleware: ${middlewareModule.contextKey}`);
17
+ const response = await exported({
18
+ request,
19
+ next: async () => dispatch(index + 1),
20
+ context
21
+ });
22
+ return response || dispatch(index + 1);
23
+ }
24
+ return dispatch(0);
25
+ }
26
+ async function resolveAPIRoute(handlers, request, url, route) {
27
+ const {
28
+ pathname
29
+ } = url,
30
+ params = getRouteParams(pathname, route);
31
+ try {
32
+ return resolveAPIEndpoint(() => handlers.handleAPI({
33
+ request,
34
+ route,
35
+ url,
36
+ loaderProps: {
37
+ path: pathname,
38
+ params
39
+ }
40
+ }), request, params || {});
41
+ } catch (err) {
42
+ if (isResponse(err)) return err;
43
+ throw process.env.NODE_ENV === "development" && console.error(`
44
+ [one] Error importing API route at ${pathname}:
45
+
46
+ ${err}
47
+
48
+ If this is an import error, you can likely fix this by adding this dependency to
49
+ the "optimizeDeps.include" array in your vite.config.ts.
50
+ `), err;
51
+ }
52
+ }
53
+ async function resolveLoaderRoute(handlers, request, url, route) {
54
+ return await runMiddlewares(handlers, request, route, async () => await resolveResponse(async () => {
55
+ const headers = new Headers();
56
+ headers.set("Content-Type", "text/javascript");
57
+ try {
58
+ const loaderResponse = await handlers.handleLoader({
59
+ request,
60
+ route,
61
+ url,
62
+ loaderProps: {
63
+ path: url.pathname,
64
+ request: route.type === "ssr" ? request : void 0,
65
+ params: getLoaderParams(url, route)
66
+ }
67
+ });
68
+ return new Response(loaderResponse, {
69
+ headers
70
+ });
71
+ } catch (err) {
72
+ if (isResponse(err)) return err;
73
+ throw console.error(`Error running loader: ${err}`), err;
74
+ }
75
+ }));
76
+ }
77
+ async function resolvePageRoute(handlers, request, url, route) {
78
+ const {
79
+ pathname,
80
+ search
81
+ } = url;
82
+ return resolveResponse(async () => await runMiddlewares(handlers, request, route, async () => await handlers.handlePage({
83
+ request,
84
+ route,
85
+ url,
86
+ loaderProps: {
87
+ path: pathname + search,
88
+ params: getLoaderParams(url, route)
89
+ }
90
+ })));
91
+ }
92
+ function getURLfromRequestURL(request) {
93
+ const urlString = request.url || "";
94
+ return new URL(urlString || "", request.headers.get("host") ? `http://${request.headers.get("host")}` : "");
95
+ }
96
+ function compileRouteRegex(route) {
97
+ return {
98
+ ...route,
99
+ compiledRegex: new RegExp(route.namedRegex),
100
+ honoPath: getHonoPath(route.page)
101
+ };
102
+ }
103
+ function compileManifest(manifest) {
104
+ return {
105
+ pageRoutes: manifest.pageRoutes.map(compileRouteRegex),
106
+ apiRoutes: manifest.apiRoutes.map(compileRouteRegex)
107
+ };
108
+ }
109
+ function createHandleRequest(handlers) {
7
110
  const manifest = getManifest();
8
111
  if (!manifest) throw new Error("No routes manifest");
9
- const apiRoutesMap = manifest.apiRoutes.reduce((acc, cur) => (acc[cur.page] = {
10
- ...cur,
11
- compiledRegex: new RegExp(cur.namedRegex)
12
- }, acc), {}),
13
- apiRoutesList = Object.values(apiRoutesMap),
14
- activeRequests = {},
15
- pageRoutes = manifest.pageRoutes.map(route => ({
16
- ...route,
17
- workingRegex: new RegExp(route.namedRegex)
18
- }));
112
+ const compiledManifest = compileManifest(manifest);
19
113
  return {
20
114
  manifest,
21
115
  handler: async function (request) {
22
- const urlString = request.url || "",
23
- url = new URL(urlString || "", request.headers.get("host") ? `http://${request.headers.get("host")}` : ""),
116
+ const url = getURLfromRequestURL(request),
24
117
  {
25
118
  pathname,
26
119
  search
27
120
  } = url;
28
- if (process.env.NODE_ENV !== "production" && activeRequests[pathname]) return await activeRequests[pathname];
29
121
  if (pathname === "/__vxrnhmr" || pathname.startsWith("/@")) return null;
30
122
  if (handlers.handleAPI) {
31
- const apiRoute = apiRoutesList.find(route => route.compiledRegex.test(pathname));
32
- if (apiRoute) {
33
- const params = getRouteParams(pathname, apiRoute);
34
- try {
35
- return await handlers.handleAPI({
36
- request,
37
- route: apiRoute,
38
- url,
39
- loaderProps: {
40
- path: pathname,
41
- params
42
- }
43
- });
44
- } catch (err) {
45
- if (isResponse(err)) return err;
46
- throw err;
47
- }
48
- }
123
+ const apiRoute = compiledManifest.apiRoutes.find(route => route.compiledRegex.test(pathname));
124
+ if (apiRoute) return await resolveAPIRoute(handlers, request, url, apiRoute);
49
125
  }
50
126
  if (request.method !== "GET") return null;
51
127
  if (handlers.handleLoader && pathname.endsWith(LOADER_JS_POSTFIX_UNCACHED)) {
52
- const originalUrl = getPathFromLoaderPath(pathname),
53
- finalUrl = new URL(originalUrl, url.origin);
54
- for (const route of pageRoutes) {
55
- if (route.file === "" || !route.workingRegex.test(finalUrl.pathname)) continue;
56
- process.env.NODE_ENV === "development" && console.info(` \u2776 Running loader for route: ${finalUrl.pathname}`);
57
- const headers = new Headers();
58
- headers.set("Content-Type", "text/javascript");
59
- try {
60
- const loaderResponse = await handlers.handleLoader({
61
- request,
62
- route,
63
- url,
64
- loaderProps: {
65
- path: finalUrl.pathname,
66
- request: route.type === "ssr" ? request : void 0,
67
- params: getLoaderParams(finalUrl, route)
68
- }
69
- });
70
- return new Response(loaderResponse, {
71
- headers
72
- });
73
- } catch (err) {
74
- if (isResponse(err)) return err;
75
- throw console.error(`Error running loader: ${err}`), err;
76
- }
128
+ const originalUrl = getPathFromLoaderPath(pathname);
129
+ for (const route of compiledManifest.pageRoutes) {
130
+ if (route.file === "") continue;
131
+ const finalUrl = new URL(originalUrl, url.origin);
132
+ if (route.compiledRegex.test(finalUrl.pathname)) return resolveLoaderRoute(handlers, request, finalUrl, route);
77
133
  }
78
134
  return process.env.NODE_ENV === "development" && console.error("No matching route found!", {
79
135
  originalUrl,
80
136
  routes: manifest.pageRoutes
81
137
  }), Response.error();
82
138
  }
83
- if (handlers.handleSSR) {
84
- const {
85
- promise,
86
- reject,
87
- resolve
88
- } = promiseWithResolvers();
89
- activeRequests[pathname] = promise;
90
- try {
91
- for (const route of pageRoutes) {
92
- if (!route.workingRegex.test(pathname)) continue;
93
- const ssrResponse = await handlers.handleSSR({
94
- request,
95
- route,
96
- url,
97
- loaderProps: {
98
- path: pathname + search,
99
- params: getLoaderParams(url, route)
100
- }
101
- });
102
- return resolve(ssrResponse), ssrResponse;
103
- }
104
- } catch (err) {
105
- throw reject(err), err;
106
- } finally {
107
- delete activeRequests[pathname];
108
- }
139
+ if (handlers.handlePage) {
140
+ for (const route of compiledManifest.pageRoutes) if (route.compiledRegex.test(pathname)) return resolvePageRoute(handlers, request, url, route);
109
141
  }
110
142
  return null;
111
143
  }
@@ -113,7 +145,7 @@ function createHandleRequest(options, handlers) {
113
145
  }
114
146
  function getLoaderParams(url, config) {
115
147
  const params = {},
116
- match = new RegExp(config.workingRegex).exec(url.pathname);
148
+ match = new RegExp(config.compiledRegex).exec(url.pathname);
117
149
  if (match?.groups) for (const [key, value] of Object.entries(match.groups)) {
118
150
  const namedKey = config.routeKeys[key];
119
151
  params[namedKey] = value;
@@ -124,5 +156,5 @@ function getRouteParams(pathname, route) {
124
156
  const match = new RegExp(route.namedRegex).exec(pathname);
125
157
  return match ? Object.fromEntries(Object.entries(route.routeKeys).map(([key, value]) => [value, match.groups?.[key] || ""])) : {};
126
158
  }
127
- export { createHandleRequest };
159
+ export { compileManifest, createHandleRequest, getURLfromRequestURL, resolveAPIRoute, resolveLoaderRoute, resolvePageRoute };
128
160
  //# sourceMappingURL=createHandleRequest.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["getPathFromLoaderPath","LOADER_JS_POSTFIX_UNCACHED","isResponse","promiseWithResolvers","getManifest","createHandleRequest","options","handlers","manifest","Error","apiRoutesMap","apiRoutes","reduce","acc","cur","page","compiledRegex","RegExp","namedRegex","apiRoutesList","Object","values","activeRequests","pageRoutes","map","route","workingRegex","handler","request","urlString","url","URL","headers","get","pathname","search","process","env","NODE_ENV","startsWith","handleAPI","apiRoute","find","test","params","getRouteParams","loaderProps","path","err","method","handleLoader","endsWith","originalUrl","finalUrl","origin","file","console","info","Headers","set","loaderResponse","type","getLoaderParams","Response","error","routes","handleSSR","promise","reject","resolve","ssrResponse","config","match","exec","groups","key","value","entries","namedKey","routeKeys","fromEntries"],"sources":["../../src/createHandleRequest.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["getPathFromLoaderPath","LOADER_JS_POSTFIX_UNCACHED","getHonoPath","isResponse","getManifest","resolveAPIEndpoint","resolveResponse","runMiddlewares","handlers","request","route","getResponse","middlewares","length","loadMiddleware","Error","context","dispatch","index","middlewareModule","exported","default","contextKey","response","next","resolveAPIRoute","url","pathname","params","getRouteParams","handleAPI","loaderProps","path","err","process","env","NODE_ENV","console","error","resolveLoaderRoute","headers","Headers","set","loaderResponse","handleLoader","type","getLoaderParams","Response","resolvePageRoute","search","handlePage","getURLfromRequestURL","urlString","URL","get","compileRouteRegex","compiledRegex","RegExp","namedRegex","honoPath","page","compileManifest","manifest","pageRoutes","map","apiRoutes","createHandleRequest","compiledManifest","handler","startsWith","apiRoute","find","test","method","endsWith","originalUrl","file","finalUrl","origin","routes","config","match","exec","groups","key","value","Object","entries","namedKey","routeKeys","fromEntries"],"sources":["../../src/createHandleRequest.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,87 +1,153 @@
1
1
  import { getPathFromLoaderPath } from "./cleanUrl";
2
2
  import { LOADER_JS_POSTFIX_UNCACHED } from "./constants";
3
+ import { getHonoPath } from "./utils/getHonoPath";
3
4
  import { isResponse } from "./utils/isResponse";
4
- import { promiseWithResolvers } from "./utils/promiseWithResolvers";
5
5
  import { getManifest } from "./vite/getManifest";
6
- function createHandleRequest(options, handlers) {
6
+ import { resolveAPIEndpoint, resolveResponse } from "./vite/resolveResponse";
7
+ async function runMiddlewares(handlers, request, route, getResponse) {
8
+ var middlewares = route.middlewares;
9
+ if (!middlewares?.length)
10
+ return await getResponse();
11
+ if (!handlers.loadMiddleware)
12
+ throw new Error("No middleware handler configured");
13
+ var context = {};
14
+ async function dispatch(index) {
15
+ var _this, middlewareModule = middlewares[index];
16
+ if (!middlewareModule)
17
+ return await getResponse();
18
+ var exported = (_this = await handlers.loadMiddleware(middlewareModule)) === null || _this === void 0 ? void 0 : _this.default;
19
+ if (!exported)
20
+ throw new Error(`No valid export found in middleware: ${middlewareModule.contextKey}`);
21
+ var next = async function() {
22
+ return dispatch(index + 1);
23
+ }, response = await exported({
24
+ request,
25
+ next,
26
+ context
27
+ });
28
+ return response || dispatch(index + 1);
29
+ }
30
+ return dispatch(0);
31
+ }
32
+ async function resolveAPIRoute(handlers, request, url, route) {
33
+ var { pathname } = url, params = getRouteParams(pathname, route);
34
+ try {
35
+ return resolveAPIEndpoint(function() {
36
+ return handlers.handleAPI({
37
+ request,
38
+ route,
39
+ url,
40
+ loaderProps: {
41
+ path: pathname,
42
+ params
43
+ }
44
+ });
45
+ }, request, params || {});
46
+ } catch (err) {
47
+ if (isResponse(err))
48
+ return err;
49
+ throw process.env.NODE_ENV === "development" && console.error(`
50
+ [one] Error importing API route at ${pathname}:
51
+
52
+ ${err}
53
+
54
+ If this is an import error, you can likely fix this by adding this dependency to
55
+ the "optimizeDeps.include" array in your vite.config.ts.
56
+ `), err;
57
+ }
58
+ }
59
+ async function resolveLoaderRoute(handlers, request, url, route) {
60
+ return await runMiddlewares(handlers, request, route, async function() {
61
+ return await resolveResponse(async function() {
62
+ var headers = new Headers();
63
+ headers.set("Content-Type", "text/javascript");
64
+ try {
65
+ var loaderResponse = await handlers.handleLoader({
66
+ request,
67
+ route,
68
+ url,
69
+ loaderProps: {
70
+ path: url.pathname,
71
+ request: route.type === "ssr" ? request : void 0,
72
+ params: getLoaderParams(url, route)
73
+ }
74
+ });
75
+ return new Response(loaderResponse, {
76
+ headers
77
+ });
78
+ } catch (err) {
79
+ if (isResponse(err))
80
+ return err;
81
+ throw console.error(`Error running loader: ${err}`), err;
82
+ }
83
+ });
84
+ });
85
+ }
86
+ async function resolvePageRoute(handlers, request, url, route) {
87
+ var { pathname, search } = url;
88
+ return resolveResponse(async function() {
89
+ var resolved = await runMiddlewares(handlers, request, route, async function() {
90
+ return await handlers.handlePage({
91
+ request,
92
+ route,
93
+ url,
94
+ loaderProps: {
95
+ path: pathname + search,
96
+ params: getLoaderParams(url, route)
97
+ }
98
+ });
99
+ });
100
+ return resolved;
101
+ });
102
+ }
103
+ function getURLfromRequestURL(request) {
104
+ var urlString = request.url || "";
105
+ return new URL(urlString || "", request.headers.get("host") ? `http://${request.headers.get("host")}` : "");
106
+ }
107
+ function compileRouteRegex(route) {
108
+ return {
109
+ ...route,
110
+ compiledRegex: new RegExp(route.namedRegex),
111
+ honoPath: getHonoPath(route.page)
112
+ };
113
+ }
114
+ function compileManifest(manifest) {
115
+ return {
116
+ pageRoutes: manifest.pageRoutes.map(compileRouteRegex),
117
+ apiRoutes: manifest.apiRoutes.map(compileRouteRegex)
118
+ };
119
+ }
120
+ function createHandleRequest(handlers) {
7
121
  var manifest = getManifest();
8
122
  if (!manifest)
9
123
  throw new Error("No routes manifest");
10
- var apiRoutesMap = manifest.apiRoutes.reduce(function(acc, cur) {
11
- return acc[cur.page] = {
12
- ...cur,
13
- compiledRegex: new RegExp(cur.namedRegex)
14
- }, acc;
15
- }, {}), apiRoutesList = Object.values(apiRoutesMap), activeRequests = {}, pageRoutes = manifest.pageRoutes.map(function(route) {
16
- return {
17
- ...route,
18
- workingRegex: new RegExp(route.namedRegex)
19
- };
20
- });
124
+ var compiledManifest = compileManifest(manifest);
21
125
  return {
22
126
  manifest,
23
127
  handler: async function(request) {
24
- var urlString = request.url || "", url = new URL(urlString || "", request.headers.get("host") ? `http://${request.headers.get("host")}` : ""), { pathname, search } = url;
25
- if (process.env.NODE_ENV !== "production" && activeRequests[pathname])
26
- return await activeRequests[pathname];
128
+ var url = getURLfromRequestURL(request), { pathname, search } = url;
27
129
  if (pathname === "/__vxrnhmr" || pathname.startsWith("/@"))
28
130
  return null;
29
131
  if (handlers.handleAPI) {
30
- var apiRoute = apiRoutesList.find(function(route2) {
31
- var regex = route2.compiledRegex;
32
- return regex.test(pathname);
132
+ var apiRoute = compiledManifest.apiRoutes.find(function(route2) {
133
+ return route2.compiledRegex.test(pathname);
33
134
  });
34
- if (apiRoute) {
35
- var params = getRouteParams(pathname, apiRoute);
36
- try {
37
- return await handlers.handleAPI({
38
- request,
39
- route: apiRoute,
40
- url,
41
- loaderProps: {
42
- path: pathname,
43
- params
44
- }
45
- });
46
- } catch (err) {
47
- if (isResponse(err))
48
- return err;
49
- throw err;
50
- }
51
- }
135
+ if (apiRoute)
136
+ return await resolveAPIRoute(handlers, request, url, apiRoute);
52
137
  }
53
138
  if (request.method !== "GET")
54
139
  return null;
55
140
  if (handlers.handleLoader) {
56
141
  var isClientRequestingNewRoute = pathname.endsWith(LOADER_JS_POSTFIX_UNCACHED);
57
142
  if (isClientRequestingNewRoute) {
58
- var originalUrl = getPathFromLoaderPath(pathname), finalUrl = new URL(originalUrl, url.origin), _iteratorNormalCompletion = !0, _didIteratorError = !1, _iteratorError = void 0;
143
+ var originalUrl = getPathFromLoaderPath(pathname), _iteratorNormalCompletion = !0, _didIteratorError = !1, _iteratorError = void 0;
59
144
  try {
60
- for (var _iterator = pageRoutes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
145
+ for (var _iterator = compiledManifest.pageRoutes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
61
146
  var route = _step.value;
62
- if (route.file !== "" && route.workingRegex.test(finalUrl.pathname)) {
63
- process.env.NODE_ENV === "development" && console.info(` \u2776 Running loader for route: ${finalUrl.pathname}`);
64
- var headers = new Headers();
65
- headers.set("Content-Type", "text/javascript");
66
- try {
67
- var loaderResponse = await handlers.handleLoader({
68
- request,
69
- route,
70
- url,
71
- loaderProps: {
72
- path: finalUrl.pathname,
73
- request: route.type === "ssr" ? request : void 0,
74
- params: getLoaderParams(finalUrl, route)
75
- }
76
- });
77
- return new Response(loaderResponse, {
78
- headers
79
- });
80
- } catch (err) {
81
- if (isResponse(err))
82
- return err;
83
- throw console.error(`Error running loader: ${err}`), err;
84
- }
147
+ if (route.file !== "") {
148
+ var finalUrl = new URL(originalUrl, url.origin);
149
+ if (route.compiledRegex.test(finalUrl.pathname))
150
+ return resolveLoaderRoute(handlers, request, finalUrl, route);
85
151
  }
86
152
  }
87
153
  } catch (err) {
@@ -100,41 +166,23 @@ function createHandleRequest(options, handlers) {
100
166
  }), Response.error();
101
167
  }
102
168
  }
103
- if (handlers.handleSSR) {
104
- var { promise, reject, resolve } = promiseWithResolvers();
105
- activeRequests[pathname] = promise;
169
+ if (handlers.handlePage) {
170
+ var _iteratorNormalCompletion1 = !0, _didIteratorError1 = !1, _iteratorError1 = void 0;
106
171
  try {
107
- var _iteratorNormalCompletion1 = !0, _didIteratorError1 = !1, _iteratorError1 = void 0;
108
- try {
109
- for (var _iterator1 = pageRoutes[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = !0) {
110
- var route1 = _step1.value;
111
- if (route1.workingRegex.test(pathname)) {
112
- var ssrResponse = await handlers.handleSSR({
113
- request,
114
- route: route1,
115
- url,
116
- loaderProps: {
117
- path: pathname + search,
118
- params: getLoaderParams(url, route1)
119
- }
120
- });
121
- return resolve(ssrResponse), ssrResponse;
122
- }
123
- }
124
- } catch (err) {
125
- _didIteratorError1 = !0, _iteratorError1 = err;
126
- } finally {
127
- try {
128
- !_iteratorNormalCompletion1 && _iterator1.return != null && _iterator1.return();
129
- } finally {
130
- if (_didIteratorError1)
131
- throw _iteratorError1;
132
- }
172
+ for (var _iterator1 = compiledManifest.pageRoutes[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = !0) {
173
+ var route1 = _step1.value;
174
+ if (route1.compiledRegex.test(pathname))
175
+ return resolvePageRoute(handlers, request, url, route1);
133
176
  }
134
177
  } catch (err) {
135
- throw reject(err), err;
178
+ _didIteratorError1 = !0, _iteratorError1 = err;
136
179
  } finally {
137
- delete activeRequests[pathname];
180
+ try {
181
+ !_iteratorNormalCompletion1 && _iterator1.return != null && _iterator1.return();
182
+ } finally {
183
+ if (_didIteratorError1)
184
+ throw _iteratorError1;
185
+ }
138
186
  }
139
187
  }
140
188
  return null;
@@ -142,7 +190,7 @@ function createHandleRequest(options, handlers) {
142
190
  };
143
191
  }
144
192
  function getLoaderParams(url, config) {
145
- var params = {}, match = new RegExp(config.workingRegex).exec(url.pathname);
193
+ var params = {}, match = new RegExp(config.compiledRegex).exec(url.pathname);
146
194
  if (match?.groups) {
147
195
  var _iteratorNormalCompletion = !0, _didIteratorError = !1, _iteratorError = void 0;
148
196
  try {
@@ -174,6 +222,11 @@ function getRouteParams(pathname, route) {
174
222
  })) : {};
175
223
  }
176
224
  export {
177
- createHandleRequest
225
+ compileManifest,
226
+ createHandleRequest,
227
+ getURLfromRequestURL,
228
+ resolveAPIRoute,
229
+ resolveLoaderRoute,
230
+ resolvePageRoute
178
231
  };
179
232
  //# sourceMappingURL=createHandleRequest.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Users/n8/one/packages/one/src/createHandleRequest.ts"],
4
- "mappings": "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",
5
- "names": ["getPathFromLoaderPath", "LOADER_JS_POSTFIX_UNCACHED", "isResponse", "promiseWithResolvers", "getManifest", "createHandleRequest", "options", "handlers", "manifest", "Error", "apiRoutesMap", "apiRoutes", "reduce", "acc", "cur", "page", "compiledRegex", "RegExp", "namedRegex", "apiRoutesList", "Object", "values", "activeRequests", "pageRoutes", "map", "route", "workingRegex", "handler", "request", "urlString", "url", "URL", "headers", "get", "pathname", "search", "process", "env", "NODE_ENV", "startsWith", "handleAPI", "apiRoute", "find", "regex", "test", "params", "getRouteParams", "loaderProps", "path", "err", "method", "handleLoader", "isClientRequestingNewRoute", "endsWith", "originalUrl", "finalUrl", "origin", "file", "console", "info", "Headers", "set", "loaderResponse", "type", "undefined", "getLoaderParams", "Response", "error", "routes", "handleSSR", "promise", "reject", "resolve", "ssrResponse", "config", "match", "exec", "groups", "entries", "key", "value", "namedKey", "routeKeys", "fromEntries"]
4
+ "mappings": "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",
5
+ "names": ["getPathFromLoaderPath", "LOADER_JS_POSTFIX_UNCACHED", "getHonoPath", "isResponse", "getManifest", "resolveAPIEndpoint", "resolveResponse", "runMiddlewares", "handlers", "request", "route", "getResponse", "middlewares", "length", "loadMiddleware", "Error", "context", "dispatch", "index", "middlewareModule", "exported", "default", "contextKey", "next", "response", "resolveAPIRoute", "url", "pathname", "params", "getRouteParams", "handleAPI", "loaderProps", "path", "err", "process", "env", "NODE_ENV", "console", "error", "resolveLoaderRoute", "headers", "Headers", "set", "loaderResponse", "handleLoader", "type", "undefined", "getLoaderParams", "Response", "resolvePageRoute", "search", "resolved", "handlePage", "getURLfromRequestURL", "urlString", "URL", "get", "compileRouteRegex", "compiledRegex", "RegExp", "namedRegex", "honoPath", "page", "compileManifest", "manifest", "pageRoutes", "map", "apiRoutes", "createHandleRequest", "compiledManifest", "handler", "startsWith", "apiRoute", "find", "test", "method", "isClientRequestingNewRoute", "endsWith", "originalUrl", "file", "finalUrl", "origin", "routes", "config", "match", "exec", "groups", "Object", "entries", "key", "value", "namedKey", "routeKeys", "regex", "fromEntries"]
6
6
  }
@@ -0,0 +1,7 @@
1
+ function createMiddleware(middleware) {
2
+ return middleware;
3
+ }
4
+ export {
5
+ createMiddleware
6
+ };
7
+ //# sourceMappingURL=createMiddleware.js.map