reroute-js 0.33.0 → 0.34.1

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 (182) hide show
  1. package/cli/bin.d.ts +1 -1
  2. package/cli/bin.js +25 -8
  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 +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/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/tailwind.d.ts +1 -1
  28. package/cli/src/commands/lib/terminal-ui.d.ts +1 -1
  29. package/cli/src/commands/lib/version.d.ts +1 -1
  30. package/cli/src/commands/og.d.ts +1 -1
  31. package/cli/src/commands/start.d.ts +1 -1
  32. package/cli/src/index.d.ts +1 -1
  33. package/core/index.d.ts +1 -1
  34. package/core/index.js +21 -4
  35. package/core/index.js.map +7 -7
  36. package/core/src/bundler/hash.d.ts +1 -1
  37. package/core/src/bundler/index.d.ts +1 -1
  38. package/core/src/config.d.ts +4 -1
  39. package/core/src/config.d.ts.map +1 -1
  40. package/core/src/content/discovery.d.ts +1 -1
  41. package/core/src/content/index.d.ts +1 -1
  42. package/core/src/content/metadata.d.ts +1 -1
  43. package/core/src/index.d.ts +1 -1
  44. package/core/src/llms/extractor.d.ts +1 -1
  45. package/core/src/llms/formatter.d.ts +1 -1
  46. package/core/src/llms/full-generator.d.ts +1 -1
  47. package/core/src/llms/index-generator.d.ts +1 -1
  48. package/core/src/llms/index.d.ts +1 -1
  49. package/core/src/og/discovery.d.ts +1 -1
  50. package/core/src/og/index.d.ts +1 -1
  51. package/core/src/og/meta.d.ts +1 -1
  52. package/core/src/og/render.d.ts +1 -1
  53. package/core/src/og/types.d.ts +1 -1
  54. package/core/src/robots/discovery.d.ts +1 -1
  55. package/core/src/robots/generator.d.ts +1 -1
  56. package/core/src/robots/index.d.ts +1 -1
  57. package/core/src/robots/policies.d.ts +1 -1
  58. package/core/src/rss/discovery.d.ts +1 -1
  59. package/core/src/rss/generator.d.ts +1 -1
  60. package/core/src/rss/index.d.ts +1 -1
  61. package/core/src/sitemap/discovery.d.ts +1 -1
  62. package/core/src/sitemap/generator.d.ts +1 -1
  63. package/core/src/sitemap/index.d.ts +1 -1
  64. package/core/src/ssr/index.d.ts +1 -1
  65. package/core/src/ssr/lib/cache.d.ts +1 -1
  66. package/core/src/ssr/lib/collections.d.ts +1 -1
  67. package/core/src/ssr/lib/compression.d.ts +1 -1
  68. package/core/src/ssr/lib/compute/content.d.ts +1 -1
  69. package/core/src/ssr/lib/compute/index.d.ts +1 -1
  70. package/core/src/ssr/lib/compute/layouts.d.ts +1 -1
  71. package/core/src/ssr/lib/compute/routes.d.ts +1 -1
  72. package/core/src/ssr/lib/data.d.ts +1 -1
  73. package/core/src/ssr/lib/html.d.ts +1 -1
  74. package/core/src/ssr/lib/imports.d.ts +1 -1
  75. package/core/src/ssr/lib/index.d.ts +1 -1
  76. package/core/src/ssr/lib/layouts.d.ts +1 -1
  77. package/core/src/ssr/lib/metadata.d.ts +2 -2
  78. package/core/src/ssr/lib/metadata.d.ts.map +1 -1
  79. package/core/src/ssr/lib/mime.d.ts +1 -1
  80. package/core/src/ssr/lib/modules.d.ts +1 -1
  81. package/core/src/ssr/lib/path.d.ts +1 -1
  82. package/core/src/ssr/lib/preload.d.ts +1 -1
  83. package/core/src/ssr/lib/scripts/collections.d.ts +1 -1
  84. package/core/src/ssr/lib/scripts/data.d.ts +1 -1
  85. package/core/src/ssr/lib/scripts/escape.d.ts +1 -1
  86. package/core/src/ssr/lib/scripts/feeds.d.ts +1 -1
  87. package/core/src/ssr/lib/scripts/index.d.ts +1 -1
  88. package/core/src/ssr/lib/seed.d.ts +1 -1
  89. package/core/src/ssr/lib/serialize.d.ts +1 -1
  90. package/core/src/ssr/lib/setup.d.ts +3 -1
  91. package/core/src/ssr/lib/setup.d.ts.map +1 -1
  92. package/core/src/ssr/lib/styles.d.ts +1 -1
  93. package/core/src/ssr/lib/template.d.ts +1 -1
  94. package/core/src/ssr/lib/types.d.ts +1 -1
  95. package/core/src/ssr/render.d.ts +3 -1
  96. package/core/src/ssr/render.d.ts.map +1 -1
  97. package/core/src/ssr/stream.d.ts +3 -1
  98. package/core/src/ssr/stream.d.ts.map +1 -1
  99. package/elysia/index.d.ts +1 -1
  100. package/elysia/index.js +31 -5
  101. package/elysia/index.js.map +9 -9
  102. package/elysia/src/index.d.ts +1 -1
  103. package/elysia/src/libs/assets.d.ts +1 -1
  104. package/elysia/src/libs/cache.d.ts +1 -1
  105. package/elysia/src/libs/caching.d.ts +1 -1
  106. package/elysia/src/libs/http.d.ts +1 -1
  107. package/elysia/src/libs/image.d.ts +1 -1
  108. package/elysia/src/libs/index.d.ts +1 -1
  109. package/elysia/src/libs/llms.d.ts +1 -1
  110. package/elysia/src/libs/response.d.ts +1 -1
  111. package/elysia/src/libs/serving.d.ts +1 -1
  112. package/elysia/src/plugin.d.ts +1 -1
  113. package/elysia/src/plugin.d.ts.map +1 -1
  114. package/elysia/src/routes/artifacts.d.ts +1 -1
  115. package/elysia/src/routes/content.d.ts +1 -1
  116. package/elysia/src/routes/image.d.ts +1 -1
  117. package/elysia/src/routes/index.d.ts +1 -1
  118. package/elysia/src/routes/internal.d.ts +1 -1
  119. package/elysia/src/routes/llms.d.ts +1 -1
  120. package/elysia/src/routes/og.d.ts +1 -1
  121. package/elysia/src/routes/redirects.d.ts +1 -1
  122. package/elysia/src/routes/robots.d.ts +1 -1
  123. package/elysia/src/routes/rss.d.ts +1 -1
  124. package/elysia/src/routes/search.d.ts +1 -1
  125. package/elysia/src/routes/sitemap.d.ts +1 -1
  126. package/elysia/src/routes/ssr.d.ts +3 -1
  127. package/elysia/src/routes/ssr.d.ts.map +1 -1
  128. package/elysia/src/routes/static.d.ts +1 -1
  129. package/elysia/src/types.d.ts +1 -1
  130. package/package.json +1 -1
  131. package/react/index.d.ts +1 -1
  132. package/react/index.js +2 -2
  133. package/react/index.js.map +1 -1
  134. package/react/src/components/ClientOnly.d.ts +1 -1
  135. package/react/src/components/ContentRoute.d.ts +1 -1
  136. package/react/src/components/Image.d.ts +1 -1
  137. package/react/src/components/LazyRoute.d.ts +1 -1
  138. package/react/src/components/Link.d.ts +1 -1
  139. package/react/src/components/Markdown.d.ts +1 -1
  140. package/react/src/components/Outlet.d.ts +1 -1
  141. package/react/src/components/index.d.ts +1 -1
  142. package/react/src/hooks/index.d.ts +1 -1
  143. package/react/src/hooks/useContent.d.ts +1 -1
  144. package/react/src/hooks/useData.d.ts +1 -1
  145. package/react/src/hooks/useFeed.d.ts +1 -1
  146. package/react/src/hooks/useLayoutData.d.ts +1 -1
  147. package/react/src/hooks/useLlms.d.ts +1 -1
  148. package/react/src/hooks/useNavigate.d.ts +1 -1
  149. package/react/src/hooks/useParams.d.ts +1 -1
  150. package/react/src/hooks/useRouter.d.ts +1 -1
  151. package/react/src/hooks/useSearch.d.ts +1 -1
  152. package/react/src/hooks/useSearchParams.d.ts +1 -1
  153. package/react/src/hooks/useToc.d.ts +1 -1
  154. package/react/src/index.d.ts +1 -1
  155. package/react/src/lib/collection.d.ts +1 -1
  156. package/react/src/lib/content.d.ts +1 -1
  157. package/react/src/lib/head.d.ts +1 -1
  158. package/react/src/lib/index.d.ts +1 -1
  159. package/react/src/lib/lazy-route.d.ts +1 -1
  160. package/react/src/lib/route-loader.d.ts +1 -1
  161. package/react/src/providers/ContentProvider.d.ts +1 -1
  162. package/react/src/providers/RerouteProvider.d.ts +1 -1
  163. package/react/src/providers/RouterProvider.d.ts +1 -1
  164. package/react/src/providers/index.d.ts +1 -1
  165. package/react/src/types/any.d.ts +1 -1
  166. package/react/src/types/index.d.ts +1 -1
  167. package/react/src/types/router.d.ts +1 -1
  168. package/telemetry/react.d.ts +1 -1
  169. package/telemetry/react.js +2 -2
  170. package/telemetry/react.js.map +1 -1
  171. package/telemetry/server.d.ts +1 -1
  172. package/telemetry/server.js +2 -2
  173. package/telemetry/server.js.map +7 -7
  174. package/telemetry/src/react/api.d.ts +1 -1
  175. package/telemetry/src/react/context.d.ts +1 -1
  176. package/telemetry/src/react/index.d.ts +1 -1
  177. package/telemetry/src/react/telemetry.d.ts +1 -1
  178. package/telemetry/src/server/context.d.ts +1 -1
  179. package/telemetry/src/server/index.d.ts +1 -1
  180. package/telemetry/src/server/instrumentation.d.ts +1 -1
  181. package/telemetry/src/server/plugin.d.ts +1 -1
  182. package/telemetry/src/server/sourcemap.d.ts +1 -1
package/cli/bin.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.33.0
2
+ * reroute-js v0.34.1
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2025 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 v0.33.0
4
+ * reroute-js v0.34.1
5
5
  *
6
6
  * @license MIT
7
7
  * @copyright 2025 stewones <hi@stewan.io>
@@ -48,7 +48,7 @@ async function getVersionString() {
48
48
  }
49
49
  async function getVersion() {
50
50
  if (true) {
51
- return "0.33.0";
51
+ return "0.34.1";
52
52
  }
53
53
  const possiblePaths = [
54
54
  path.join(import.meta.dir, "../../../../package.json"),
@@ -66,7 +66,7 @@ async function getVersion() {
66
66
  }
67
67
  async function getCommit() {
68
68
  if (true) {
69
- return "78afdc2";
69
+ return "a8fc33a";
70
70
  }
71
71
  return "dev";
72
72
  }
@@ -2041,7 +2041,14 @@ var init_meta = __esm(() => {
2041
2041
  });
2042
2042
 
2043
2043
  // packages/core/src/ssr/lib/metadata.ts
2044
- async function extractPageMetadata(pathname, clientDir, cwd, isWatchMode, currentStatusOverride, ogConfig) {
2044
+ function generateCanonicalUrl(baseUrl, pathname) {
2045
+ const cleanBaseUrl = baseUrl.replace(/\/$/, "");
2046
+ const cleanPathname = pathname.split("?")[0];
2047
+ const normalizedPath = cleanPathname === "/" ? "/" : cleanPathname.replace(/\/$/, "");
2048
+ const canonicalUrl = `${cleanBaseUrl}${normalizedPath}`;
2049
+ return `<link rel="canonical" href="${canonicalUrl}" />`;
2050
+ }
2051
+ async function extractPageMetadata(pathname, clientDir, cwd, isWatchMode, currentStatusOverride, ogConfig, baseUrl, autoCanonical) {
2045
2052
  let perPageHead = "";
2046
2053
  let pageLang;
2047
2054
  let statusOverride = currentStatusOverride;
@@ -2051,6 +2058,12 @@ async function extractPageMetadata(pathname, clientDir, cwd, isWatchMode, curren
2051
2058
  if (!pageLang)
2052
2059
  pageLang = lang;
2053
2060
  });
2061
+ const shouldGenerateCanonical = autoCanonical !== false && baseUrl !== undefined;
2062
+ if (shouldGenerateCanonical) {
2063
+ const canonicalTag = generateCanonicalUrl(baseUrl, pathname);
2064
+ perPageHead += `
2065
+ ${canonicalTag}`;
2066
+ }
2054
2067
  try {
2055
2068
  const ogMetaTags = await generateOGImageMetaTags(pathname, clientDir, ogConfig);
2056
2069
  if (ogMetaTags) {
@@ -2729,7 +2742,7 @@ async function performSSRSetupInternal(options, streaming) {
2729
2742
  statusOverride = computeResult.statusContainer.value;
2730
2743
  }
2731
2744
  const metadataResult = await withSpan("ssr.extract.metadata", async (span) => {
2732
- const result = await extractPageMetadata(pathname, clientDir, cwd, isWatchMode, statusOverride, ogConfig);
2745
+ const result = await extractPageMetadata(pathname, clientDir, cwd, isWatchMode, statusOverride, ogConfig, options.baseUrl, options.autoCanonical);
2733
2746
  span.setAttributes({
2734
2747
  "reroute.pathname": pathname,
2735
2748
  "reroute.metadata.exists": !!result.perPageHead
@@ -2899,6 +2912,8 @@ async function renderSSRDocument(options) {
2899
2912
  maxAge,
2900
2913
  searchParams,
2901
2914
  ogConfig,
2915
+ baseUrl: options.baseUrl,
2916
+ autoCanonical: options.autoCanonical,
2902
2917
  cachedCollections: options.cachedCollections,
2903
2918
  cachedTailwindCSS: options.cachedTailwindCSS
2904
2919
  }, false);
@@ -4899,6 +4914,8 @@ async function renderSSRDocumentStream(options) {
4899
4914
  maxAge,
4900
4915
  searchParams,
4901
4916
  ogConfig,
4917
+ baseUrl: options.baseUrl,
4918
+ autoCanonical: options.autoCanonical,
4902
4919
  cachedCollections: options.cachedCollections,
4903
4920
  cachedTailwindCSS: options.cachedTailwindCSS,
4904
4921
  debug
@@ -105428,7 +105445,7 @@ async function getVersionString2() {
105428
105445
  }
105429
105446
  async function getVersion2() {
105430
105447
  if (true) {
105431
- return "0.33.0";
105448
+ return "0.34.1";
105432
105449
  }
105433
105450
  const possiblePaths = [
105434
105451
  path3.join(import.meta.dir, "../../../package.json"),
@@ -105445,10 +105462,10 @@ async function getVersion2() {
105445
105462
  }
105446
105463
  async function getCommit2() {
105447
105464
  if (true) {
105448
- return "78afdc2";
105465
+ return "a8fc33a";
105449
105466
  }
105450
105467
  return "dev";
105451
105468
  }
105452
105469
  main();
105453
105470
 
105454
- //# debugId=EBDCFEA79EDBA00264756E2164756E21
105471
+ //# debugId=370D97C3790FE65864756E2164756E21