reroute-js 1.0.0-alpha.15 → 1.0.0-alpha.16

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 (201) hide show
  1. package/cli/bin.d.ts +1 -1
  2. package/cli/bin.js +110 -31
  3. package/cli/bin.js.map +4 -4
  4. package/cli/index.d.ts +1 -1
  5. package/cli/index.js +4 -4
  6. package/cli/index.js.map +1 -1
  7. package/cli/src/cli.d.ts +1 -1
  8. package/cli/src/commands/analyze.d.ts +1 -1
  9. package/cli/src/commands/build.d.ts +1 -1
  10. package/cli/src/commands/build.d.ts.map +1 -1
  11. package/cli/src/commands/dev.d.ts +1 -1
  12. package/cli/src/commands/gen.d.ts +1 -1
  13. package/cli/src/commands/gen.d.ts.map +1 -1
  14. package/cli/src/commands/index.d.ts +1 -1
  15. package/cli/src/commands/init.d.ts +1 -1
  16. package/cli/src/commands/lib/assets.d.ts +1 -1
  17. package/cli/src/commands/lib/bundler.d.ts +1 -1
  18. package/cli/src/commands/lib/command.d.ts +1 -1
  19. package/cli/src/commands/lib/env.d.ts +1 -1
  20. package/cli/src/commands/lib/index.d.ts +1 -1
  21. package/cli/src/commands/lib/log.d.ts +1 -1
  22. package/cli/src/commands/lib/markdown/availability.d.ts +1 -1
  23. package/cli/src/commands/lib/markdown/index.d.ts +1 -1
  24. package/cli/src/commands/lib/markdown/processor.d.ts +1 -1
  25. package/cli/src/commands/lib/production.d.ts +1 -1
  26. package/cli/src/commands/lib/server.d.ts +1 -1
  27. package/cli/src/commands/lib/streaming/analyzer.d.ts +1 -1
  28. package/cli/src/commands/lib/streaming/suspense.d.ts +1 -1
  29. package/cli/src/commands/lib/terminal-ui.d.ts +1 -1
  30. package/cli/src/commands/lib/theme.d.ts +1 -1
  31. package/cli/src/commands/lib/version.d.ts +1 -1
  32. package/cli/src/commands/lib/watch.d.ts +1 -1
  33. package/cli/src/commands/og.d.ts +1 -1
  34. package/cli/src/commands/start.d.ts +1 -1
  35. package/cli/src/index.d.ts +1 -1
  36. package/core/index.d.ts +1 -1
  37. package/core/index.js +2 -2
  38. package/core/index.js.map +1 -1
  39. package/core/src/bundler/hash.d.ts +1 -1
  40. package/core/src/bundler/index.d.ts +1 -1
  41. package/core/src/config.d.ts +1 -1
  42. package/core/src/content/discovery.d.ts +1 -1
  43. package/core/src/content/index.d.ts +1 -1
  44. package/core/src/content/metadata.d.ts +1 -1
  45. package/core/src/i18n/catalog.d.ts +1 -1
  46. package/core/src/i18n/discover.d.ts +1 -1
  47. package/core/src/i18n/index.d.ts +1 -1
  48. package/core/src/i18n/messages.d.ts +1 -1
  49. package/core/src/i18n/negotiate.d.ts +1 -1
  50. package/core/src/i18n/pathname.d.ts +1 -1
  51. package/core/src/i18n/resolve.d.ts +1 -1
  52. package/core/src/i18n/types.d.ts +1 -1
  53. package/core/src/index.d.ts +1 -1
  54. package/core/src/llms/discovery.d.ts +1 -1
  55. package/core/src/llms/extractor.d.ts +1 -1
  56. package/core/src/llms/formatter.d.ts +1 -1
  57. package/core/src/llms/full-generator.d.ts +1 -1
  58. package/core/src/llms/index-generator.d.ts +1 -1
  59. package/core/src/llms/index.d.ts +1 -1
  60. package/core/src/og/discovery.d.ts +1 -1
  61. package/core/src/og/index.d.ts +1 -1
  62. package/core/src/og/meta.d.ts +1 -1
  63. package/core/src/og/render.d.ts +1 -1
  64. package/core/src/og/types.d.ts +1 -1
  65. package/core/src/robots/discovery.d.ts +1 -1
  66. package/core/src/robots/generator.d.ts +1 -1
  67. package/core/src/robots/index.d.ts +1 -1
  68. package/core/src/robots/policies.d.ts +1 -1
  69. package/core/src/rss/discovery.d.ts +1 -1
  70. package/core/src/rss/generator.d.ts +1 -1
  71. package/core/src/rss/index.d.ts +1 -1
  72. package/core/src/sitemap/discovery.d.ts +1 -1
  73. package/core/src/sitemap/generator.d.ts +1 -1
  74. package/core/src/sitemap/index.d.ts +1 -1
  75. package/core/src/ssr/index.d.ts +1 -1
  76. package/core/src/ssr/lib/cache.d.ts +1 -1
  77. package/core/src/ssr/lib/cleanup.d.ts +1 -1
  78. package/core/src/ssr/lib/collections.d.ts +1 -1
  79. package/core/src/ssr/lib/compression.d.ts +1 -1
  80. package/core/src/ssr/lib/compute/content.d.ts +1 -1
  81. package/core/src/ssr/lib/compute/index.d.ts +1 -1
  82. package/core/src/ssr/lib/compute/layouts.d.ts +1 -1
  83. package/core/src/ssr/lib/compute/routes.d.ts +1 -1
  84. package/core/src/ssr/lib/content-path.d.ts +1 -1
  85. package/core/src/ssr/lib/data.d.ts +1 -1
  86. package/core/src/ssr/lib/html.d.ts +1 -1
  87. package/core/src/ssr/lib/imports.d.ts +1 -1
  88. package/core/src/ssr/lib/index.d.ts +1 -1
  89. package/core/src/ssr/lib/layouts.d.ts +1 -1
  90. package/core/src/ssr/lib/metadata.d.ts +1 -1
  91. package/core/src/ssr/lib/mime.d.ts +1 -1
  92. package/core/src/ssr/lib/modules.d.ts +1 -1
  93. package/core/src/ssr/lib/path.d.ts +1 -1
  94. package/core/src/ssr/lib/preload.d.ts +1 -1
  95. package/core/src/ssr/lib/route-match.d.ts +1 -1
  96. package/core/src/ssr/lib/scripts/collections.d.ts +1 -1
  97. package/core/src/ssr/lib/scripts/data.d.ts +1 -1
  98. package/core/src/ssr/lib/scripts/escape.d.ts +1 -1
  99. package/core/src/ssr/lib/scripts/feeds.d.ts +1 -1
  100. package/core/src/ssr/lib/scripts/index.d.ts +1 -1
  101. package/core/src/ssr/lib/seed.d.ts +1 -1
  102. package/core/src/ssr/lib/serialize.d.ts +1 -1
  103. package/core/src/ssr/lib/setup.d.ts +1 -1
  104. package/core/src/ssr/lib/styles.d.ts +1 -1
  105. package/core/src/ssr/lib/template.d.ts +1 -1
  106. package/core/src/ssr/lib/types.d.ts +1 -1
  107. package/core/src/ssr/render.d.ts +1 -1
  108. package/core/src/ssr/stream.d.ts +1 -1
  109. package/elysia/index.d.ts +1 -1
  110. package/elysia/index.js +9 -2
  111. package/elysia/index.js.map +3 -3
  112. package/elysia/src/index.d.ts +1 -1
  113. package/elysia/src/libs/assets.d.ts +1 -1
  114. package/elysia/src/libs/cache.d.ts +1 -1
  115. package/elysia/src/libs/caching.d.ts +1 -1
  116. package/elysia/src/libs/http.d.ts +1 -1
  117. package/elysia/src/libs/i18n.d.ts +1 -1
  118. package/elysia/src/libs/image.d.ts +1 -1
  119. package/elysia/src/libs/index.d.ts +1 -1
  120. package/elysia/src/libs/llms.d.ts +1 -1
  121. package/elysia/src/libs/response.d.ts +1 -1
  122. package/elysia/src/libs/serving.d.ts +1 -1
  123. package/elysia/src/plugin.d.ts +1 -1
  124. package/elysia/src/plugin.d.ts.map +1 -1
  125. package/elysia/src/routes/artifacts.d.ts +1 -1
  126. package/elysia/src/routes/content.d.ts +1 -1
  127. package/elysia/src/routes/image.d.ts +1 -1
  128. package/elysia/src/routes/index.d.ts +1 -1
  129. package/elysia/src/routes/internal.d.ts +1 -1
  130. package/elysia/src/routes/liveReloadClient.d.ts +1 -1
  131. package/elysia/src/routes/llms.d.ts +1 -1
  132. package/elysia/src/routes/og.d.ts +1 -1
  133. package/elysia/src/routes/redirects.d.ts +1 -1
  134. package/elysia/src/routes/robots.d.ts +1 -1
  135. package/elysia/src/routes/rss.d.ts +1 -1
  136. package/elysia/src/routes/search.d.ts +1 -1
  137. package/elysia/src/routes/sitemap.d.ts +1 -1
  138. package/elysia/src/routes/ssr.d.ts +1 -1
  139. package/elysia/src/routes/static.d.ts +1 -1
  140. package/elysia/src/routes/themeCssRefresh.d.ts +1 -1
  141. package/elysia/src/types.d.ts +1 -1
  142. package/package.json +1 -1
  143. package/react/index.d.ts +1 -1
  144. package/react/index.js +60 -5
  145. package/react/index.js.map +3 -3
  146. package/react/src/components/ClientOnly.d.ts +1 -1
  147. package/react/src/components/ContentRoute.d.ts +1 -1
  148. package/react/src/components/Image.d.ts +1 -1
  149. package/react/src/components/LazyRoute.d.ts +1 -1
  150. package/react/src/components/Link.d.ts +1 -1
  151. package/react/src/components/Markdown.d.ts +1 -1
  152. package/react/src/components/Outlet.d.ts +1 -1
  153. package/react/src/components/index.d.ts +1 -1
  154. package/react/src/hooks/index.d.ts +1 -1
  155. package/react/src/hooks/useContent.d.ts +1 -1
  156. package/react/src/hooks/useData.d.ts +1 -1
  157. package/react/src/hooks/useFeed.d.ts +1 -1
  158. package/react/src/hooks/useLayoutData.d.ts +1 -1
  159. package/react/src/hooks/useLlms.d.ts +1 -1
  160. package/react/src/hooks/useNavigate.d.ts +1 -1
  161. package/react/src/hooks/useParams.d.ts +1 -1
  162. package/react/src/hooks/useRouter.d.ts +1 -1
  163. package/react/src/hooks/useSearch.d.ts +1 -1
  164. package/react/src/hooks/useSearchParams.d.ts +1 -1
  165. package/react/src/hooks/useToc.d.ts +1 -1
  166. package/react/src/i18n/LocaleProvider.d.ts +1 -1
  167. package/react/src/i18n/helpers.d.ts +1 -1
  168. package/react/src/i18n/index.d.ts +1 -1
  169. package/react/src/index.d.ts +1 -1
  170. package/react/src/lib/collection.d.ts +1 -1
  171. package/react/src/lib/content.d.ts +1 -1
  172. package/react/src/lib/head.d.ts +1 -1
  173. package/react/src/lib/index.d.ts +1 -1
  174. package/react/src/lib/lazy-route.d.ts +7 -21
  175. package/react/src/lib/lazy-route.d.ts.map +1 -1
  176. package/react/src/lib/route-loader.d.ts +1 -1
  177. package/react/src/providers/ContentProvider.d.ts +1 -1
  178. package/react/src/providers/RerouteProvider.d.ts +1 -1
  179. package/react/src/providers/RouterProvider.d.ts +1 -1
  180. package/react/src/providers/index.d.ts +1 -1
  181. package/react/src/types/any.d.ts +1 -1
  182. package/react/src/types/index.d.ts +1 -1
  183. package/react/src/types/router.d.ts +1 -1
  184. package/telemetry/react.d.ts +1 -1
  185. package/telemetry/react.js +2 -2
  186. package/telemetry/react.js.map +1 -1
  187. package/telemetry/server.d.ts +1 -1
  188. package/telemetry/server.js +2 -2
  189. package/telemetry/server.js.map +1 -1
  190. package/telemetry/src/react/api.d.ts +1 -1
  191. package/telemetry/src/react/context.d.ts +1 -1
  192. package/telemetry/src/react/index.d.ts +1 -1
  193. package/telemetry/src/react/telemetry.d.ts +1 -1
  194. package/telemetry/src/server/context.d.ts +1 -1
  195. package/telemetry/src/server/headers/extractor.d.ts +1 -1
  196. package/telemetry/src/server/headers/index.d.ts +1 -1
  197. package/telemetry/src/server/headers/presets.d.ts +1 -1
  198. package/telemetry/src/server/index.d.ts +1 -1
  199. package/telemetry/src/server/instrumentation.d.ts +1 -1
  200. package/telemetry/src/server/plugin.d.ts +1 -1
  201. package/telemetry/src/server/sourcemap.d.ts +1 -1
package/cli/bin.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v1.0.0-alpha.15
2
+ * reroute-js v1.0.0-alpha.16
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
package/cli/bin.js CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env bun
2
2
  // @bun
3
3
  /**
4
- * reroute-js v1.0.0-alpha.15
4
+ * reroute-js v1.0.0-alpha.16
5
5
  *
6
6
  * @license MIT
7
7
  * @copyright 2026 stewones <hi@stewan.io>
@@ -68,7 +68,7 @@ async function getVersionString() {
68
68
  }
69
69
  async function getVersion() {
70
70
  if (true) {
71
- return "1.0.0-alpha.15";
71
+ return "1.0.0-alpha.16";
72
72
  }
73
73
  const possiblePaths = [
74
74
  path.join(import.meta.dir, "../../../../package.json"),
@@ -86,7 +86,7 @@ async function getVersion() {
86
86
  }
87
87
  async function getCommit() {
88
88
  if (true) {
89
- return "30816a9";
89
+ return "44faab0";
90
90
  }
91
91
  return "dev";
92
92
  }
@@ -7995,11 +7995,17 @@ export type RouteParams = Record<string, never>;
7995
7995
  export const contentRegistry: Record<string, any> = {};
7996
7996
  `;
7997
7997
  const STUB_ARTIFACTS = `// \uD83D\uDEA8 Auto-generated stub by Reroute - DO NOT EDIT \uD83D\uDEA8
7998
- // This will be replaced by actual bundle
7998
+ // Client bundle entry — lazy routes only
7999
7999
  /* eslint-disable */
8000
8000
  // @ts-nocheck
8001
8001
 
8002
- import { layouts, matchRoute, notFoundRoutes } from './routes';
8002
+ export * from './artifacts.client';
8003
+ `;
8004
+ const STUB_ARTIFACTS_CLIENT = `// \uD83D\uDEA8 Auto-generated stub by Reroute - DO NOT EDIT \uD83D\uDEA8
8005
+ /* eslint-disable */
8006
+ // @ts-nocheck
8007
+
8008
+ import { layouts, matchRoute, notFoundRoutes } from './routes.client';
8003
8009
 
8004
8010
  export const bundle = {
8005
8011
  layouts,
@@ -8010,6 +8016,20 @@ export const bundle = {
8010
8016
  } as const;
8011
8017
 
8012
8018
  export type RerouteBundle = typeof bundle;
8019
+ `;
8020
+ const STUB_ARTIFACTS_SERVER = `// \uD83D\uDEA8 Auto-generated stub by Reroute - DO NOT EDIT \uD83D\uDEA8
8021
+ /* eslint-disable */
8022
+ // @ts-nocheck
8023
+
8024
+ import { layouts, matchRoute, notFoundRoutes } from './routes';
8025
+
8026
+ export const bundle = {
8027
+ layouts,
8028
+ matchRoute,
8029
+ notFoundRoutes,
8030
+ contentBaseUrl: '/.reroute/collections',
8031
+ AppComponent: undefined
8032
+ } as const;
8013
8033
  `;
8014
8034
  const STUB_INDEX = `// \uD83D\uDEA8 Auto-generated stub by Reroute - DO NOT EDIT \uD83D\uDEA8
8015
8035
  // Barrel export for client imports
@@ -8028,8 +8048,11 @@ import './routes'; // Import routes (bundles all route components)
8028
8048
  import '../src/index';
8029
8049
  `;
8030
8050
  await Bun.write(join12(cwd, OUTPUT_ROUTES), STUB_ROUTES);
8051
+ await Bun.write(join12(cwd, OUTPUT_ROUTES_CLIENT), STUB_ROUTES);
8031
8052
  await Bun.write(join12(cwd, OUTPUT_CONTENT_TS), STUB_CONTENT);
8032
8053
  await Bun.write(join12(cwd, OUTPUT_ARTIFACTS), STUB_ARTIFACTS);
8054
+ await Bun.write(join12(cwd, OUTPUT_ARTIFACTS_CLIENT), STUB_ARTIFACTS_CLIENT);
8055
+ await Bun.write(join12(cwd, OUTPUT_ARTIFACTS_SERVER), STUB_ARTIFACTS_SERVER);
8033
8056
  await Bun.write(join12(cwd, OUTPUT_INDEX), STUB_INDEX);
8034
8057
  await Bun.write(join12(cwd, ".reroute/entry.ts"), STUB_ENTRY);
8035
8058
  console.log("[reroute/gen] Initialized stub files");
@@ -8179,34 +8202,48 @@ function getImportPath(filePath, streamingMap) {
8179
8202
  const pathWithoutExt = filePath.replace(/\.(tsx|ts)$/, "");
8180
8203
  return `../src/client/routes/${pathWithoutExt}`;
8181
8204
  }
8182
- function generateTypeScript(tree, streamingMap) {
8205
+ function generateTypeScript(tree, streamingMap, client = false) {
8183
8206
  const helperImport = "import { createLazyRoute } from 'reroute-js/react';";
8184
8207
  const ssrHelper = "const _ssr = (m: any) => m.ssr;";
8185
8208
  const metaHelper = "const _meta = (m: any) => m.meta;";
8186
- const eagerImports = [
8209
+ const metaImports = [
8187
8210
  ...tree.routes.map((r, i) => `import * as Route${i}Module from '${getImportPath(r.filePath, streamingMap)}';
8188
- const Route${i}Eager = Route${i}Module.default;
8189
8211
  const Route${i}SSR = _ssr(Route${i}Module);
8190
8212
  const Route${i}Meta = _meta(Route${i}Module);`),
8191
8213
  ...tree.layouts.map((l, i) => `import * as Layout${i}Module from '${getImportPath(l.filePath, streamingMap)}';
8192
- const Layout${i}Eager = Layout${i}Module.default;
8193
8214
  const Layout${i}SSR = _ssr(Layout${i}Module);
8194
- const Layout${i}Meta = _meta(Layout${i}Module);`),
8215
+ const Layout${i}Meta = _meta(Layout${i}Module);`)
8216
+ ].join(`
8217
+ `);
8218
+ const serverEagerImports = client ? "" : [
8219
+ ...tree.routes.map((_route, i) => `const Route${i}Eager = Route${i}Module.default;`),
8220
+ ...tree.layouts.map((_layout, i) => `const Layout${i}Eager = Layout${i}Module.default;`),
8195
8221
  ...tree.notFoundRoutes.map((nf, i) => `import NotFound${i}Eager from '${getImportPath(nf.filePath, streamingMap)}';`)
8196
8222
  ].join(`
8223
+ `);
8224
+ const eagerImports = client ? metaImports : [metaImports, serverEagerImports].filter(Boolean).join(`
8197
8225
  `);
8198
8226
  const lazyWrappers = [
8199
8227
  ...tree.routes.map((r, i) => {
8200
8228
  const importPath = getImportPath(r.filePath, streamingMap);
8201
- return `const Route${i} = createLazyRoute(Route${i}Eager, () => import('${importPath}'), "${r.pattern}");`;
8229
+ if (client) {
8230
+ return `const Route${i} = createLazyRoute(() => import('${importPath}'), "${r.pattern}");`;
8231
+ }
8232
+ return `const Route${i} = createLazyRoute(() => import('${importPath}'), "${r.pattern}", Route${i}Eager);`;
8202
8233
  }),
8203
8234
  ...tree.layouts.map((l, i) => {
8204
8235
  const importPath = getImportPath(l.filePath, streamingMap);
8205
- return `const Layout${i} = createLazyRoute(Layout${i}Eager, () => import('${importPath}'), "${l.pattern}");`;
8236
+ if (client) {
8237
+ return `const Layout${i} = createLazyRoute(() => import('${importPath}'), "${l.pattern}");`;
8238
+ }
8239
+ return `const Layout${i} = createLazyRoute(() => import('${importPath}'), "${l.pattern}", Layout${i}Eager);`;
8206
8240
  }),
8207
8241
  ...tree.notFoundRoutes.map((nf, i) => {
8208
8242
  const importPath = getImportPath(nf.filePath, streamingMap);
8209
- return `const NotFound${i} = createLazyRoute(NotFound${i}Eager, () => import('${importPath}'), "${nf.notFoundBasePattern || "/"}");`;
8243
+ if (client) {
8244
+ return `const NotFound${i} = createLazyRoute(() => import('${importPath}'), "${nf.notFoundBasePattern || "/"}");`;
8245
+ }
8246
+ return `const NotFound${i} = createLazyRoute(() => import('${importPath}'), "${nf.notFoundBasePattern || "/"}", NotFound${i}Eager);`;
8210
8247
  })
8211
8248
  ].join(`
8212
8249
  `);
@@ -8336,10 +8373,10 @@ function matchPattern(route: Route, pathname: string): Record<string, string> |
8336
8373
  return pathnameIndex === pathnameParts.length ? params : null;
8337
8374
  }
8338
8375
 
8339
- // Set globals for compiled binary support (sitemap/RSS/robots discovery)
8376
+ ${client ? "" : `// Set globals for compiled binary support (sitemap/RSS/robots discovery)
8340
8377
  (globalThis as any).__REROUTE_ROUTES__ = routes;
8341
8378
  (globalThis as any).__REROUTE_LAYOUTS__ = layouts;
8342
- (globalThis as any).__REROUTE_NOT_FOUND_ROUTES__ = notFoundRoutes;
8379
+ (globalThis as any).__REROUTE_NOT_FOUND_ROUTES__ = notFoundRoutes;`}
8343
8380
  `;
8344
8381
  }
8345
8382
  async function buildStreamingWrappersForTree(cwd, routesPath, tree, config2) {
@@ -9041,11 +9078,13 @@ async function generate(cwd, args = [], options = {}) {
9041
9078
  const all = Array.from(new Set([...files, ...nfFiles]));
9042
9079
  const tree = generateRouteTree(all.map((f) => f.replace(/\\/g, "/")));
9043
9080
  const streamingAnalyses = streamingEnabled ? await buildStreamingWrappersForTree(cwd, routesPath, tree, config2) : new Map;
9044
- const ts = generateTypeScript(tree, streamingAnalyses);
9045
- await Bun.write(join12(cwd, OUTPUT_ROUTES), ts);
9081
+ const serverRoutes = generateTypeScript(tree, streamingAnalyses, false);
9082
+ const clientRoutes = generateTypeScript(tree, streamingAnalyses, true);
9083
+ await Bun.write(join12(cwd, OUTPUT_ROUTES), serverRoutes);
9084
+ await Bun.write(join12(cwd, OUTPUT_ROUTES_CLIENT), clientRoutes);
9046
9085
  });
9047
9086
  if (!showPerformance) {
9048
- console.log(`[reroute/gen] Generated routes: ${join12(cwd, OUTPUT_ROUTES)}`);
9087
+ console.log(`[reroute/gen] Generated routes: ${join12(cwd, OUTPUT_ROUTES)} + ${OUTPUT_ROUTES_CLIENT}`);
9049
9088
  }
9050
9089
  } catch (error) {
9051
9090
  console.error("[reroute/gen] Failed to generate routes:", error);
@@ -9138,12 +9177,18 @@ async function generate(cwd, args = [], options = {}) {
9138
9177
  await Bun.write(join12(cwd, ".reroute/markdown-components.ts"), mdComponentsLines.join(`
9139
9178
  `));
9140
9179
  }
9141
- const indexLines = [];
9142
- indexLines.push("// \uD83D\uDEA8 Auto-generated by Reroute - DO NOT EDIT \uD83D\uDEA8");
9143
- indexLines.push("/* eslint-disable */");
9144
- indexLines.push("// @ts-nocheck");
9145
- indexLines.push("");
9146
- indexLines.push("import { layouts, matchRoute, notFoundRoutes } from './routes';");
9180
+ const buildArtifactsLines = (routesModule) => {
9181
+ const indexLines2 = [];
9182
+ indexLines2.push("// \uD83D\uDEA8 Auto-generated by Reroute - DO NOT EDIT \uD83D\uDEA8");
9183
+ indexLines2.push("/* eslint-disable */");
9184
+ indexLines2.push("// @ts-nocheck");
9185
+ indexLines2.push("");
9186
+ indexLines2.push(`import { layouts, matchRoute, notFoundRoutes } from './${routesModule}';`);
9187
+ return indexLines2;
9188
+ };
9189
+ const serverLines = buildArtifactsLines("routes");
9190
+ const clientLines = buildArtifactsLines("routes.client");
9191
+ const indexLines = serverLines;
9147
9192
  if (config2.markdown?.components) {
9148
9193
  indexLines.push("import { markdownComponents } from './markdown-components';");
9149
9194
  }
@@ -9213,8 +9258,39 @@ async function generate(cwd, args = [], options = {}) {
9213
9258
  indexLines.push(`(globalThis as any).__REROUTE_CONFIG__ = ${serializeConfig(config2)};`);
9214
9259
  indexLines.push("");
9215
9260
  indexLines.push("export type RerouteBundle = typeof bundle;");
9216
- await Bun.write(join12(cwd, OUTPUT_ARTIFACTS), indexLines.join(`
9261
+ indexLines.push("");
9262
+ indexLines.push("(globalThis as any).__REROUTE_SERVER_BUNDLE__ = bundle;");
9263
+ if (config2.markdown?.components) {
9264
+ clientLines.push("import { markdownComponents } from './markdown-components';");
9265
+ }
9266
+ clientLines.push("");
9267
+ clientLines.push("export const bundle = {");
9268
+ clientLines.push(" layouts,");
9269
+ clientLines.push(" matchRoute,");
9270
+ clientLines.push(" notFoundRoutes,");
9271
+ clientLines.push(" contentBaseUrl: '/.reroute/collections',");
9272
+ if (config2.markdown?.components) {
9273
+ clientLines.push(" markdownComponents,");
9274
+ }
9275
+ clientLines.push("} as const;");
9276
+ clientLines.push("");
9277
+ clientLines.push("export type RerouteBundle = typeof bundle;");
9278
+ clientLines.push("");
9279
+ clientLines.push("(globalThis as any).__REROUTE_CLIENT_BUNDLE__ = bundle;");
9280
+ const barrelArtifacts = [
9281
+ "// \uD83D\uDEA8 Auto-generated by Reroute - DO NOT EDIT \uD83D\uDEA8",
9282
+ "// Client bundle entry — lazy routes only",
9283
+ "/* eslint-disable */",
9284
+ "// @ts-nocheck",
9285
+ "",
9286
+ "export * from './artifacts.client';"
9287
+ ].join(`
9288
+ `);
9289
+ await Bun.write(join12(cwd, OUTPUT_ARTIFACTS_SERVER), indexLines.join(`
9290
+ `));
9291
+ await Bun.write(join12(cwd, OUTPUT_ARTIFACTS_CLIENT), clientLines.join(`
9217
9292
  `));
9293
+ await Bun.write(join12(cwd, OUTPUT_ARTIFACTS), barrelArtifacts);
9218
9294
  const barrelLines = [
9219
9295
  "// \uD83D\uDEA8 Auto-generated by Reroute - DO NOT EDIT \uD83D\uDEA8",
9220
9296
  "// Barrel export for client imports",
@@ -9235,8 +9311,8 @@ async function generate(cwd, args = [], options = {}) {
9235
9311
  "import 'react/jsx-runtime';",
9236
9312
  "import 'react/jsx-dev-runtime';",
9237
9313
  "",
9238
- "import './artifacts'; // Import artifacts (sets globals for SSR)",
9239
- "import './routes'; // Import routes (bundles all route components)",
9314
+ "import './artifacts.server'; // SSR bundle (eager routes)",
9315
+ "import './routes'; // Route metadata for compiled binary discovery",
9240
9316
  "import '../src/index'; // Import user's server entry"
9241
9317
  ];
9242
9318
  await Bun.write(join12(cwd, ".reroute/entry.ts"), entryLines.join(`
@@ -9609,7 +9685,7 @@ async function gen(args) {
9609
9685
  });
9610
9686
  process.exit(0);
9611
9687
  }
9612
- var ROUTES_DIR = "src/client/routes", OUTPUT_DIR = ".reroute", OUTPUT_ROUTES = ".reroute/routes.ts", OUTPUT_CONTENT_TS = ".reroute/content.ts", OUTPUT_COLLECTIONS_DIR = ".reroute/collections", OUTPUT_SEARCH_INDEX = ".reroute/search.json", OUTPUT_ARTIFACTS = ".reroute/artifacts.ts", OUTPUT_INDEX = ".reroute/index.ts";
9688
+ var ROUTES_DIR = "src/client/routes", OUTPUT_DIR = ".reroute", OUTPUT_ROUTES = ".reroute/routes.ts", OUTPUT_ROUTES_CLIENT = ".reroute/routes.client.ts", OUTPUT_CONTENT_TS = ".reroute/content.ts", OUTPUT_COLLECTIONS_DIR = ".reroute/collections", OUTPUT_SEARCH_INDEX = ".reroute/search.json", OUTPUT_ARTIFACTS = ".reroute/artifacts.ts", OUTPUT_ARTIFACTS_SERVER = ".reroute/artifacts.server.ts", OUTPUT_ARTIFACTS_CLIENT = ".reroute/artifacts.client.ts", OUTPUT_INDEX = ".reroute/index.ts";
9613
9689
  var init_gen = __esm(() => {
9614
9690
  init_core();
9615
9691
  init_env();
@@ -104832,9 +104908,12 @@ function cleanupBundledFiles(rerouteDir) {
104832
104908
  let cleanupCount = 0;
104833
104909
  const tsFilesToRemove = [
104834
104910
  "artifacts.ts",
104911
+ "artifacts.server.ts",
104912
+ "artifacts.client.ts",
104835
104913
  "entry.ts",
104836
104914
  "index.ts",
104837
104915
  "routes.ts",
104916
+ "routes.client.ts",
104838
104917
  "markdown-components.ts"
104839
104918
  ];
104840
104919
  for (const file of tsFilesToRemove) {
@@ -107513,7 +107592,7 @@ async function getVersionString2() {
107513
107592
  }
107514
107593
  async function getVersion2() {
107515
107594
  if (true) {
107516
- return "1.0.0-alpha.15";
107595
+ return "1.0.0-alpha.16";
107517
107596
  }
107518
107597
  const possiblePaths = [
107519
107598
  path3.join(import.meta.dir, "../../../package.json"),
@@ -107530,10 +107609,10 @@ async function getVersion2() {
107530
107609
  }
107531
107610
  async function getCommit2() {
107532
107611
  if (true) {
107533
- return "30816a9";
107612
+ return "44faab0";
107534
107613
  }
107535
107614
  return "dev";
107536
107615
  }
107537
107616
  main();
107538
107617
 
107539
- //# debugId=67BE3770B15AEEBA64756E2164756E21
107618
+ //# debugId=04F6A76937DD767764756E2164756E21