reroute-js 1.0.0-alpha.12 → 1.0.0-alpha.14

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 (202) hide show
  1. package/cli/bin.d.ts +1 -1
  2. package/cli/bin.js +45 -41
  3. package/cli/bin.js.map +7 -7
  4. package/cli/index.d.ts +1 -1
  5. package/cli/index.js +4 -4
  6. package/cli/index.js.map +3 -3
  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/dev.d.ts +1 -1
  11. package/cli/src/commands/gen.d.ts +1 -1
  12. package/cli/src/commands/index.d.ts +1 -1
  13. package/cli/src/commands/init.d.ts +1 -1
  14. package/cli/src/commands/lib/assets.d.ts +1 -1
  15. package/cli/src/commands/lib/bundler.d.ts +1 -1
  16. package/cli/src/commands/lib/command.d.ts +1 -1
  17. package/cli/src/commands/lib/env.d.ts +1 -1
  18. package/cli/src/commands/lib/index.d.ts +1 -1
  19. package/cli/src/commands/lib/log.d.ts +1 -1
  20. package/cli/src/commands/lib/markdown/availability.d.ts +1 -1
  21. package/cli/src/commands/lib/markdown/index.d.ts +1 -1
  22. package/cli/src/commands/lib/markdown/processor.d.ts +1 -1
  23. package/cli/src/commands/lib/production.d.ts +1 -1
  24. package/cli/src/commands/lib/server.d.ts +1 -1
  25. package/cli/src/commands/lib/streaming/analyzer.d.ts +1 -1
  26. package/cli/src/commands/lib/streaming/suspense.d.ts +1 -1
  27. package/cli/src/commands/lib/terminal-ui.d.ts +1 -1
  28. package/cli/src/commands/lib/theme.d.ts +2 -2
  29. package/cli/src/commands/lib/theme.d.ts.map +1 -1
  30. package/cli/src/commands/lib/version.d.ts +1 -1
  31. package/cli/src/commands/lib/watch.d.ts +1 -1
  32. package/cli/src/commands/og.d.ts +1 -1
  33. package/cli/src/commands/start.d.ts +1 -1
  34. package/cli/src/index.d.ts +1 -1
  35. package/core/index.d.ts +1 -1
  36. package/core/index.js +39 -35
  37. package/core/index.js.map +6 -6
  38. package/core/src/bundler/hash.d.ts +1 -1
  39. package/core/src/bundler/index.d.ts +1 -1
  40. package/core/src/config.d.ts +1 -1
  41. package/core/src/content/discovery.d.ts +1 -1
  42. package/core/src/content/index.d.ts +1 -1
  43. package/core/src/content/metadata.d.ts +1 -1
  44. package/core/src/i18n/catalog.d.ts +1 -1
  45. package/core/src/i18n/discover.d.ts +1 -1
  46. package/core/src/i18n/index.d.ts +1 -1
  47. package/core/src/i18n/messages.d.ts +1 -1
  48. package/core/src/i18n/negotiate.d.ts +1 -1
  49. package/core/src/i18n/pathname.d.ts +1 -1
  50. package/core/src/i18n/resolve.d.ts +1 -1
  51. package/core/src/i18n/types.d.ts +1 -1
  52. package/core/src/index.d.ts +1 -1
  53. package/core/src/llms/discovery.d.ts +1 -1
  54. package/core/src/llms/extractor.d.ts +6 -1
  55. package/core/src/llms/extractor.d.ts.map +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 +2 -2
  60. package/core/src/llms/index.d.ts.map +1 -1
  61. package/core/src/og/discovery.d.ts +1 -1
  62. package/core/src/og/index.d.ts +1 -1
  63. package/core/src/og/meta.d.ts +1 -1
  64. package/core/src/og/render.d.ts +1 -1
  65. package/core/src/og/types.d.ts +1 -1
  66. package/core/src/robots/discovery.d.ts +1 -1
  67. package/core/src/robots/generator.d.ts +1 -1
  68. package/core/src/robots/index.d.ts +1 -1
  69. package/core/src/robots/policies.d.ts +1 -1
  70. package/core/src/rss/discovery.d.ts +1 -1
  71. package/core/src/rss/generator.d.ts +1 -1
  72. package/core/src/rss/index.d.ts +1 -1
  73. package/core/src/sitemap/discovery.d.ts +1 -1
  74. package/core/src/sitemap/generator.d.ts +1 -1
  75. package/core/src/sitemap/index.d.ts +1 -1
  76. package/core/src/ssr/index.d.ts +1 -1
  77. package/core/src/ssr/lib/cache.d.ts +1 -1
  78. package/core/src/ssr/lib/cleanup.d.ts +1 -1
  79. package/core/src/ssr/lib/collections.d.ts +1 -1
  80. package/core/src/ssr/lib/compression.d.ts +1 -1
  81. package/core/src/ssr/lib/compute/content.d.ts +1 -1
  82. package/core/src/ssr/lib/compute/index.d.ts +1 -1
  83. package/core/src/ssr/lib/compute/layouts.d.ts +1 -1
  84. package/core/src/ssr/lib/compute/routes.d.ts +1 -1
  85. package/core/src/ssr/lib/content-path.d.ts +1 -1
  86. package/core/src/ssr/lib/data.d.ts +1 -1
  87. package/core/src/ssr/lib/html.d.ts +1 -1
  88. package/core/src/ssr/lib/imports.d.ts +1 -1
  89. package/core/src/ssr/lib/index.d.ts +1 -1
  90. package/core/src/ssr/lib/layouts.d.ts +1 -1
  91. package/core/src/ssr/lib/metadata.d.ts +1 -1
  92. package/core/src/ssr/lib/mime.d.ts +1 -1
  93. package/core/src/ssr/lib/modules.d.ts +1 -1
  94. package/core/src/ssr/lib/path.d.ts +1 -1
  95. package/core/src/ssr/lib/preload.d.ts +1 -1
  96. package/core/src/ssr/lib/route-match.d.ts +1 -1
  97. package/core/src/ssr/lib/scripts/collections.d.ts +1 -1
  98. package/core/src/ssr/lib/scripts/data.d.ts +1 -1
  99. package/core/src/ssr/lib/scripts/escape.d.ts +1 -1
  100. package/core/src/ssr/lib/scripts/feeds.d.ts +1 -1
  101. package/core/src/ssr/lib/scripts/index.d.ts +1 -1
  102. package/core/src/ssr/lib/seed.d.ts +1 -1
  103. package/core/src/ssr/lib/serialize.d.ts +1 -1
  104. package/core/src/ssr/lib/setup.d.ts +1 -1
  105. package/core/src/ssr/lib/styles.d.ts +7 -4
  106. package/core/src/ssr/lib/styles.d.ts.map +1 -1
  107. package/core/src/ssr/lib/template.d.ts +1 -1
  108. package/core/src/ssr/lib/types.d.ts +1 -1
  109. package/core/src/ssr/render.d.ts +1 -1
  110. package/core/src/ssr/stream.d.ts +1 -1
  111. package/elysia/index.d.ts +1 -1
  112. package/elysia/index.js +65 -41
  113. package/elysia/index.js.map +8 -8
  114. package/elysia/src/index.d.ts +1 -1
  115. package/elysia/src/libs/assets.d.ts +1 -1
  116. package/elysia/src/libs/cache.d.ts +1 -1
  117. package/elysia/src/libs/caching.d.ts +1 -1
  118. package/elysia/src/libs/http.d.ts +1 -1
  119. package/elysia/src/libs/i18n.d.ts +1 -1
  120. package/elysia/src/libs/image.d.ts +1 -1
  121. package/elysia/src/libs/index.d.ts +1 -1
  122. package/elysia/src/libs/llms.d.ts +1 -1
  123. package/elysia/src/libs/response.d.ts +1 -1
  124. package/elysia/src/libs/serving.d.ts +1 -1
  125. package/elysia/src/plugin.d.ts +1 -1
  126. package/elysia/src/routes/artifacts.d.ts +1 -1
  127. package/elysia/src/routes/artifacts.d.ts.map +1 -1
  128. package/elysia/src/routes/content.d.ts +1 -1
  129. package/elysia/src/routes/image.d.ts +1 -1
  130. package/elysia/src/routes/index.d.ts +1 -1
  131. package/elysia/src/routes/internal.d.ts +1 -1
  132. package/elysia/src/routes/liveReloadClient.d.ts +1 -1
  133. package/elysia/src/routes/llms.d.ts +1 -1
  134. package/elysia/src/routes/og.d.ts +1 -1
  135. package/elysia/src/routes/redirects.d.ts +1 -1
  136. package/elysia/src/routes/robots.d.ts +1 -1
  137. package/elysia/src/routes/rss.d.ts +1 -1
  138. package/elysia/src/routes/search.d.ts +1 -1
  139. package/elysia/src/routes/sitemap.d.ts +1 -1
  140. package/elysia/src/routes/ssr.d.ts +1 -1
  141. package/elysia/src/routes/static.d.ts +1 -1
  142. package/elysia/src/routes/themeCssRefresh.d.ts +1 -1
  143. package/elysia/src/types.d.ts +1 -1
  144. package/package.json +1 -1
  145. package/react/index.d.ts +1 -1
  146. package/react/index.js +2 -2
  147. package/react/index.js.map +1 -1
  148. package/react/src/components/ClientOnly.d.ts +1 -1
  149. package/react/src/components/ContentRoute.d.ts +1 -1
  150. package/react/src/components/Image.d.ts +1 -1
  151. package/react/src/components/LazyRoute.d.ts +1 -1
  152. package/react/src/components/Link.d.ts +1 -1
  153. package/react/src/components/Markdown.d.ts +1 -1
  154. package/react/src/components/Outlet.d.ts +1 -1
  155. package/react/src/components/index.d.ts +1 -1
  156. package/react/src/hooks/index.d.ts +1 -1
  157. package/react/src/hooks/useContent.d.ts +1 -1
  158. package/react/src/hooks/useData.d.ts +1 -1
  159. package/react/src/hooks/useFeed.d.ts +1 -1
  160. package/react/src/hooks/useLayoutData.d.ts +1 -1
  161. package/react/src/hooks/useLlms.d.ts +1 -1
  162. package/react/src/hooks/useNavigate.d.ts +1 -1
  163. package/react/src/hooks/useParams.d.ts +1 -1
  164. package/react/src/hooks/useRouter.d.ts +1 -1
  165. package/react/src/hooks/useSearch.d.ts +1 -1
  166. package/react/src/hooks/useSearchParams.d.ts +1 -1
  167. package/react/src/hooks/useToc.d.ts +1 -1
  168. package/react/src/i18n/LocaleProvider.d.ts +1 -1
  169. package/react/src/i18n/helpers.d.ts +1 -1
  170. package/react/src/i18n/index.d.ts +1 -1
  171. package/react/src/index.d.ts +1 -1
  172. package/react/src/lib/collection.d.ts +1 -1
  173. package/react/src/lib/content.d.ts +1 -1
  174. package/react/src/lib/head.d.ts +1 -1
  175. package/react/src/lib/index.d.ts +1 -1
  176. package/react/src/lib/lazy-route.d.ts +1 -1
  177. package/react/src/lib/route-loader.d.ts +1 -1
  178. package/react/src/providers/ContentProvider.d.ts +1 -1
  179. package/react/src/providers/RerouteProvider.d.ts +1 -1
  180. package/react/src/providers/RouterProvider.d.ts +1 -1
  181. package/react/src/providers/index.d.ts +1 -1
  182. package/react/src/types/any.d.ts +1 -1
  183. package/react/src/types/index.d.ts +1 -1
  184. package/react/src/types/router.d.ts +1 -1
  185. package/telemetry/react.d.ts +1 -1
  186. package/telemetry/react.js +2 -2
  187. package/telemetry/react.js.map +1 -1
  188. package/telemetry/server.d.ts +1 -1
  189. package/telemetry/server.js +2 -2
  190. package/telemetry/server.js.map +5 -5
  191. package/telemetry/src/react/api.d.ts +1 -1
  192. package/telemetry/src/react/context.d.ts +1 -1
  193. package/telemetry/src/react/index.d.ts +1 -1
  194. package/telemetry/src/react/telemetry.d.ts +1 -1
  195. package/telemetry/src/server/context.d.ts +1 -1
  196. package/telemetry/src/server/headers/extractor.d.ts +1 -1
  197. package/telemetry/src/server/headers/index.d.ts +1 -1
  198. package/telemetry/src/server/headers/presets.d.ts +1 -1
  199. package/telemetry/src/server/index.d.ts +1 -1
  200. package/telemetry/src/server/instrumentation.d.ts +1 -1
  201. package/telemetry/src/server/plugin.d.ts +1 -1
  202. 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.12
2
+ * reroute-js v1.0.0-alpha.14
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.12
4
+ * reroute-js v1.0.0-alpha.14
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.12";
71
+ return "1.0.0-alpha.14";
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 "7200e42";
89
+ return "dff59a4";
90
90
  }
91
91
  return "dev";
92
92
  }
@@ -3834,42 +3834,45 @@ var init_scripts = __esm(() => {
3834
3834
  });
3835
3835
 
3836
3836
  // packages/core/src/ssr/lib/styles.ts
3837
- async function inlineThemeCSS(clientDir, minify = false, isWatchMode = false) {
3837
+ import { createHash } from "node:crypto";
3838
+ function themeLink(query) {
3839
+ return `<link rel="stylesheet" href="${THEME_CSS_HREF}?${query}" data-reroute="theme">`;
3840
+ }
3841
+ function hashCss(css) {
3842
+ return createHash("sha1").update(css).digest("hex").slice(0, 12);
3843
+ }
3844
+ async function readThemeCssFromDisk(clientDir) {
3845
+ const candidates = [
3846
+ join2(clientDir, "..", ".reroute", "index.css"),
3847
+ join2(clientDir, "..", "..", ".reroute", "index.css"),
3848
+ join2(clientDir, "..", "..", "..", ".reroute", "index.css"),
3849
+ join2(clientDir, "..", "..", "..", "..", ".reroute", "index.css")
3850
+ ];
3851
+ for (const cssPath of candidates) {
3852
+ if (await Bun.file(cssPath).exists()) {
3853
+ const { readFileSync } = await import("node:fs");
3854
+ return readFileSync(cssPath, "utf-8");
3855
+ }
3856
+ }
3857
+ return "";
3858
+ }
3859
+ function bundledThemeCss() {
3860
+ return globalThis.__REROUTE_THEME_CSS__ || "";
3861
+ }
3862
+ async function inlineThemeCSS(clientDir, isWatchMode = false) {
3838
3863
  try {
3839
3864
  if (isWatchMode) {
3840
- const timestamp = Date.now();
3841
- return `<link rel="stylesheet" href="/.reroute/index.css?t=${timestamp}" data-reroute="theme">`;
3842
- }
3843
- const bundledCss = globalThis.__REROUTE_THEME_CSS__;
3844
- if (bundledCss) {
3845
- const css2 = minify ? minifyCSS(bundledCss) : bundledCss;
3846
- return `<style data-reroute="theme">${css2}</style>`;
3847
- }
3848
- const candidates = [
3849
- join2(clientDir, "..", ".reroute", "index.css"),
3850
- join2(clientDir, "..", "..", ".reroute", "index.css"),
3851
- join2(clientDir, "..", "..", "..", ".reroute", "index.css"),
3852
- join2(clientDir, "..", "..", "..", "..", ".reroute", "index.css")
3853
- ];
3854
- let cssPath = "";
3855
- for (const p of candidates) {
3856
- if (await Bun.file(p).exists()) {
3857
- cssPath = p;
3858
- break;
3859
- }
3865
+ return themeLink(`t=${Date.now()}`);
3860
3866
  }
3861
- if (!cssPath)
3867
+ const css = bundledThemeCss() || await readThemeCssFromDisk(clientDir);
3868
+ if (!css)
3862
3869
  return "";
3863
- const { readFileSync } = await import("node:fs");
3864
- const css = readFileSync(cssPath, "utf-8");
3865
- return `<style data-reroute="theme">${minifyCSS(css)}</style>`;
3870
+ return themeLink(`v=${hashCss(css)}`);
3866
3871
  } catch {
3867
3872
  return "";
3868
3873
  }
3869
3874
  }
3870
- function minifyCSS(css) {
3871
- return css.replace(/\/\*[\s\S]*?\*\//g, "").replace(/\s+/g, " ").replace(/\s*([{}:;,>+~])\s*/g, "$1").replace(/;}/g, "}").trim();
3872
- }
3875
+ var THEME_CSS_HREF = "/.reroute/index.css";
3873
3876
  var init_styles = () => {};
3874
3877
 
3875
3878
  // packages/core/src/ssr/lib/setup.ts
@@ -3976,7 +3979,7 @@ async function performSSRSetupInternal(options, streaming, timeoutState) {
3976
3979
  setGlobalCollections(byCollectionForSSR);
3977
3980
  const usingCachedCSS = !!options.cachedThemeCSS;
3978
3981
  const inlineStyleTag = await withSpan("ssr.inline.css", async (span) => {
3979
- const css = options.cachedThemeCSS ? options.cachedThemeCSS : await inlineThemeCSS(clientDir, !streaming, isWatchMode);
3982
+ const css = options.cachedThemeCSS ? options.cachedThemeCSS : await inlineThemeCSS(clientDir, isWatchMode);
3980
3983
  span.setAttributes({
3981
3984
  "reroute.cached": usingCachedCSS,
3982
3985
  "reroute.css.size": css.length
@@ -4385,6 +4388,9 @@ Formats: .txt | .md | Accept: text/plain | Accept: text/markdown`;
4385
4388
  // packages/core/src/llms/extractor.ts
4386
4389
  import { pathToFileURL as pathToFileURL5 } from "node:url";
4387
4390
  import { renderToStaticMarkup } from "react-dom/server";
4391
+ function stripLayoutChrome(html2) {
4392
+ return html2.replace(/<nav[\s\S]*?<\/nav>/gi, "").replace(/<header[\s\S]*?<\/header>/gi, "").replace(/<aside[\s\S]*?<\/aside>/gi, "");
4393
+ }
4388
4394
  function shouldExcludeRoute(pathname, excludeRoutes) {
4389
4395
  if (!excludeRoutes || excludeRoutes.length === 0) {
4390
4396
  return false;
@@ -4507,10 +4513,7 @@ async function extractSSRContent(pathname, rootComponent, clientDir, cwd, isWatc
4507
4513
  if (appDivMatch) {
4508
4514
  contentHtml = appDivMatch[1];
4509
4515
  }
4510
- contentHtml = contentHtml.replace(/<nav[\s\S]*?<\/nav>/gi, "");
4511
- contentHtml = contentHtml.replace(/<footer[\s\S]*?<\/footer>/gi, "");
4512
- contentHtml = contentHtml.replace(/<header[\s\S]*?<\/header>/gi, "");
4513
- contentHtml = contentHtml.replace(/<aside[\s\S]*?<\/aside>/gi, "");
4516
+ contentHtml = stripLayoutChrome(contentHtml);
4514
4517
  return {
4515
4518
  title: extractTitle(html2),
4516
4519
  body: stripHtmlTags(contentHtml),
@@ -7020,6 +7023,7 @@ __export(exports_core, {
7020
7023
  statusCache: () => statusCache,
7021
7024
  stripEnd: () => stripEnd,
7022
7025
  stripHtmlTags: () => stripHtmlTags,
7026
+ stripLayoutChrome: () => stripLayoutChrome,
7023
7027
  stripStart: () => stripStart,
7024
7028
  takeSSRContentResults: () => takeSSRContentResults,
7025
7029
  toBytes: () => toBytes,
@@ -7824,7 +7828,7 @@ var init_theme = __esm(() => {
7824
7828
  });
7825
7829
 
7826
7830
  // packages/cli/src/commands/lib/watch.ts
7827
- import { createHash } from "node:crypto";
7831
+ import { createHash as createHash2 } from "node:crypto";
7828
7832
  import { readFile } from "node:fs/promises";
7829
7833
  import { join as join11 } from "node:path";
7830
7834
  function isWatchNoise(name) {
@@ -7839,7 +7843,7 @@ function createContentFingerprint(options) {
7839
7843
  const settling = Date.now() - startedAt < settleMs;
7840
7844
  try {
7841
7845
  const buf = await readFile(absPath);
7842
- const hash2 = createHash("sha1").update(buf).digest("hex");
7846
+ const hash2 = createHash2("sha1").update(buf).digest("hex");
7843
7847
  const prev = hashes.get(absPath);
7844
7848
  if (prev === hash2)
7845
7849
  return false;
@@ -107465,7 +107469,7 @@ async function getVersionString2() {
107465
107469
  }
107466
107470
  async function getVersion2() {
107467
107471
  if (true) {
107468
- return "1.0.0-alpha.12";
107472
+ return "1.0.0-alpha.14";
107469
107473
  }
107470
107474
  const possiblePaths = [
107471
107475
  path3.join(import.meta.dir, "../../../package.json"),
@@ -107482,10 +107486,10 @@ async function getVersion2() {
107482
107486
  }
107483
107487
  async function getCommit2() {
107484
107488
  if (true) {
107485
- return "7200e42";
107489
+ return "dff59a4";
107486
107490
  }
107487
107491
  return "dev";
107488
107492
  }
107489
107493
  main();
107490
107494
 
107491
- //# debugId=1AE97DD8E6BF562C64756E2164756E21
107495
+ //# debugId=9D9CD26D7889760A64756E2164756E21