reroute-js 0.43.0 → 0.43.2

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 (187) hide show
  1. package/cli/bin.d.ts +1 -1
  2. package/cli/bin.js +19 -27
  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/dev.d.ts +1 -1
  11. package/cli/src/commands/gen.d.ts +1 -1
  12. package/cli/src/commands/gen.d.ts.map +1 -1
  13. package/cli/src/commands/index.d.ts +1 -1
  14. package/cli/src/commands/init.d.ts +1 -1
  15. package/cli/src/commands/lib/assets.d.ts +1 -1
  16. package/cli/src/commands/lib/bundler.d.ts +1 -1
  17. package/cli/src/commands/lib/command.d.ts +1 -1
  18. package/cli/src/commands/lib/env.d.ts +1 -1
  19. package/cli/src/commands/lib/index.d.ts +1 -1
  20. package/cli/src/commands/lib/log.d.ts +1 -1
  21. package/cli/src/commands/lib/markdown/availability.d.ts +1 -1
  22. package/cli/src/commands/lib/markdown/index.d.ts +1 -1
  23. package/cli/src/commands/lib/markdown/processor.d.ts +1 -1
  24. package/cli/src/commands/lib/production.d.ts +1 -1
  25. package/cli/src/commands/lib/server.d.ts +1 -1
  26. package/cli/src/commands/lib/streaming/analyzer.d.ts +1 -1
  27. package/cli/src/commands/lib/streaming/suspense.d.ts +1 -1
  28. package/cli/src/commands/lib/streaming/suspense.d.ts.map +1 -1
  29. package/cli/src/commands/lib/tailwind.d.ts +1 -1
  30. package/cli/src/commands/lib/terminal-ui.d.ts +1 -1
  31. package/cli/src/commands/lib/version.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 +2 -2
  37. package/core/index.js.map +1 -1
  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/index.d.ts +1 -1
  45. package/core/src/llms/extractor.d.ts +1 -1
  46. package/core/src/llms/formatter.d.ts +1 -1
  47. package/core/src/llms/full-generator.d.ts +1 -1
  48. package/core/src/llms/index-generator.d.ts +1 -1
  49. package/core/src/llms/index.d.ts +1 -1
  50. package/core/src/og/discovery.d.ts +1 -1
  51. package/core/src/og/index.d.ts +1 -1
  52. package/core/src/og/meta.d.ts +1 -1
  53. package/core/src/og/render.d.ts +1 -1
  54. package/core/src/og/types.d.ts +1 -1
  55. package/core/src/robots/discovery.d.ts +1 -1
  56. package/core/src/robots/generator.d.ts +1 -1
  57. package/core/src/robots/index.d.ts +1 -1
  58. package/core/src/robots/policies.d.ts +1 -1
  59. package/core/src/rss/discovery.d.ts +1 -1
  60. package/core/src/rss/generator.d.ts +1 -1
  61. package/core/src/rss/index.d.ts +1 -1
  62. package/core/src/sitemap/discovery.d.ts +1 -1
  63. package/core/src/sitemap/generator.d.ts +1 -1
  64. package/core/src/sitemap/index.d.ts +1 -1
  65. package/core/src/ssr/index.d.ts +1 -1
  66. package/core/src/ssr/lib/cache.d.ts +1 -1
  67. package/core/src/ssr/lib/collections.d.ts +1 -1
  68. package/core/src/ssr/lib/compression.d.ts +1 -1
  69. package/core/src/ssr/lib/compute/content.d.ts +1 -1
  70. package/core/src/ssr/lib/compute/index.d.ts +1 -1
  71. package/core/src/ssr/lib/compute/layouts.d.ts +1 -1
  72. package/core/src/ssr/lib/compute/routes.d.ts +1 -1
  73. package/core/src/ssr/lib/data.d.ts +1 -1
  74. package/core/src/ssr/lib/html.d.ts +1 -1
  75. package/core/src/ssr/lib/imports.d.ts +1 -1
  76. package/core/src/ssr/lib/index.d.ts +1 -1
  77. package/core/src/ssr/lib/layouts.d.ts +1 -1
  78. package/core/src/ssr/lib/metadata.d.ts +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 +1 -1
  91. package/core/src/ssr/lib/styles.d.ts +1 -1
  92. package/core/src/ssr/lib/template.d.ts +1 -1
  93. package/core/src/ssr/lib/types.d.ts +1 -1
  94. package/core/src/ssr/render.d.ts +1 -1
  95. package/core/src/ssr/stream.d.ts +1 -1
  96. package/elysia/index.d.ts +1 -1
  97. package/elysia/index.js +63 -31
  98. package/elysia/index.js.map +5 -5
  99. package/elysia/src/index.d.ts +1 -1
  100. package/elysia/src/libs/assets.d.ts +1 -1
  101. package/elysia/src/libs/cache.d.ts +1 -1
  102. package/elysia/src/libs/caching.d.ts +1 -1
  103. package/elysia/src/libs/http.d.ts +1 -1
  104. package/elysia/src/libs/image.d.ts +1 -1
  105. package/elysia/src/libs/index.d.ts +1 -1
  106. package/elysia/src/libs/llms.d.ts +1 -1
  107. package/elysia/src/libs/response.d.ts +1 -1
  108. package/elysia/src/libs/serving.d.ts +1 -1
  109. package/elysia/src/plugin.d.ts +1 -1
  110. package/elysia/src/routes/artifacts.d.ts +1 -1
  111. package/elysia/src/routes/artifacts.d.ts.map +1 -1
  112. package/elysia/src/routes/content.d.ts +1 -1
  113. package/elysia/src/routes/image.d.ts +1 -1
  114. package/elysia/src/routes/index.d.ts +1 -1
  115. package/elysia/src/routes/internal.d.ts +2 -2
  116. package/elysia/src/routes/internal.d.ts.map +1 -1
  117. package/elysia/src/routes/llms.d.ts +1 -1
  118. package/elysia/src/routes/og.d.ts +1 -1
  119. package/elysia/src/routes/og.d.ts.map +1 -1
  120. package/elysia/src/routes/redirects.d.ts +1 -1
  121. package/elysia/src/routes/robots.d.ts +1 -1
  122. package/elysia/src/routes/rss.d.ts +1 -1
  123. package/elysia/src/routes/search.d.ts +1 -1
  124. package/elysia/src/routes/sitemap.d.ts +1 -1
  125. package/elysia/src/routes/ssr.d.ts +1 -1
  126. package/elysia/src/routes/static.d.ts +1 -1
  127. package/elysia/src/types.d.ts +1 -1
  128. package/package.json +1 -1
  129. package/react/index.d.ts +1 -1
  130. package/react/index.js +58 -17
  131. package/react/index.js.map +6 -6
  132. package/react/src/components/ClientOnly.d.ts +1 -1
  133. package/react/src/components/ContentRoute.d.ts +1 -1
  134. package/react/src/components/Image.d.ts +1 -1
  135. package/react/src/components/LazyRoute.d.ts +1 -1
  136. package/react/src/components/Link.d.ts +3 -3
  137. package/react/src/components/Link.d.ts.map +1 -1
  138. package/react/src/components/Markdown.d.ts +1 -1
  139. package/react/src/components/Outlet.d.ts +1 -1
  140. package/react/src/components/index.d.ts +1 -1
  141. package/react/src/hooks/index.d.ts +1 -1
  142. package/react/src/hooks/useContent.d.ts +1 -1
  143. package/react/src/hooks/useData.d.ts +1 -1
  144. package/react/src/hooks/useData.d.ts.map +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/useLayoutData.d.ts.map +1 -1
  148. package/react/src/hooks/useLlms.d.ts +1 -1
  149. package/react/src/hooks/useNavigate.d.ts +1 -1
  150. package/react/src/hooks/useParams.d.ts +1 -1
  151. package/react/src/hooks/useRouter.d.ts +1 -1
  152. package/react/src/hooks/useSearch.d.ts +1 -1
  153. package/react/src/hooks/useSearchParams.d.ts +1 -1
  154. package/react/src/hooks/useToc.d.ts +1 -1
  155. package/react/src/index.d.ts +1 -1
  156. package/react/src/lib/collection.d.ts +1 -1
  157. package/react/src/lib/content.d.ts +1 -1
  158. package/react/src/lib/head.d.ts +1 -1
  159. package/react/src/lib/index.d.ts +1 -1
  160. package/react/src/lib/lazy-route.d.ts +1 -1
  161. package/react/src/lib/route-loader.d.ts +1 -1
  162. package/react/src/providers/ContentProvider.d.ts +1 -1
  163. package/react/src/providers/RerouteProvider.d.ts +1 -1
  164. package/react/src/providers/RouterProvider.d.ts +1 -1
  165. package/react/src/providers/RouterProvider.d.ts.map +1 -1
  166. package/react/src/providers/index.d.ts +1 -1
  167. package/react/src/types/any.d.ts +1 -1
  168. package/react/src/types/index.d.ts +1 -1
  169. package/react/src/types/router.d.ts +1 -1
  170. package/telemetry/react.d.ts +1 -1
  171. package/telemetry/react.js +2 -2
  172. package/telemetry/react.js.map +1 -1
  173. package/telemetry/server.d.ts +1 -1
  174. package/telemetry/server.js +2 -2
  175. package/telemetry/server.js.map +1 -1
  176. package/telemetry/src/react/api.d.ts +1 -1
  177. package/telemetry/src/react/context.d.ts +1 -1
  178. package/telemetry/src/react/index.d.ts +1 -1
  179. package/telemetry/src/react/telemetry.d.ts +1 -1
  180. package/telemetry/src/server/context.d.ts +1 -1
  181. package/telemetry/src/server/headers/extractor.d.ts +1 -1
  182. package/telemetry/src/server/headers/index.d.ts +1 -1
  183. package/telemetry/src/server/headers/presets.d.ts +1 -1
  184. package/telemetry/src/server/index.d.ts +1 -1
  185. package/telemetry/src/server/instrumentation.d.ts +1 -1
  186. package/telemetry/src/server/plugin.d.ts +1 -1
  187. package/telemetry/src/server/sourcemap.d.ts +1 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
package/elysia/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
package/elysia/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * reroute-js v0.43.0
2
+ * reroute-js v0.43.2
3
3
  *
4
4
  * @license MIT
5
5
  * @copyright 2026 stewones <hi@stewan.io>
@@ -5811,7 +5811,7 @@ function registerArtifactsRoutes(app, cwd, fileCache, options) {
5811
5811
  const filePath = join(cwd, ".reroute", "collections", fileName);
5812
5812
  const acceptEncoding = headers2["accept-encoding"] ?? "";
5813
5813
  try {
5814
- const cacheControl = isWatchMode ? "no-cache, no-store, must-revalidate" : "public, max-age=31536000, immutable";
5814
+ const cacheControl = isWatchMode ? "no-cache, no-store, must-revalidate" : "public, max-age=60, must-revalidate";
5815
5815
  return await serveFile(filePath, acceptEncoding, fileCache, {
5816
5816
  cacheControl
5817
5817
  });
@@ -6047,7 +6047,6 @@ function registerImageRoutes(app, options) {
6047
6047
  }
6048
6048
 
6049
6049
  // packages/elysia/src/routes/internal.ts
6050
- init_core();
6051
6050
  import { NotFoundError as NotFoundError4 } from "elysia";
6052
6051
 
6053
6052
  // packages/elysia/src/libs/http.ts
@@ -6192,26 +6191,51 @@ function registerInternalRoutes(app, opts) {
6192
6191
  return jsonError("key not found", 404);
6193
6192
  }
6194
6193
  async function handleFullDataRequest(pathname) {
6195
- let data = dataCache?.get(pathname);
6194
+ const { computeSSRData: computeSSRData2 } = await Promise.resolve().then(() => (init_core(), exports_core));
6195
+ const cacheKey = `${pathname}:streaming`;
6196
+ let data = dataCache?.get(cacheKey);
6196
6197
  const cacheHit = data !== undefined;
6197
6198
  if (data === undefined) {
6198
6199
  const sp = extractSearchParams(pathname);
6199
6200
  try {
6200
- data = await computeSSRDataForPath({
6201
- pathname,
6202
- clientDir,
6203
- cwd,
6204
- isWatchMode,
6205
- searchParams: sp
6206
- });
6201
+ const result = await computeSSRData2(pathname, clientDir, cwd, isWatchMode, { streaming: true, maxAge }, sp);
6202
+ data = convertPromisesToLazyMarkers(result.data, pathname);
6207
6203
  } catch (error) {
6208
6204
  console.error("[__reroute_data] Error computing data:", error);
6209
6205
  data = null;
6210
6206
  }
6211
- dataCache?.set(pathname, data);
6207
+ dataCache?.set(cacheKey, data);
6212
6208
  }
6213
6209
  return { data, cacheHit };
6214
6210
  }
6211
+ function convertPromisesToLazyMarkers(data, pathname) {
6212
+ if (data instanceof Promise) {
6213
+ return {
6214
+ __lazy__: true,
6215
+ __fetch__: `/__reroute_data?path=${encodeURIComponent(pathname)}`
6216
+ };
6217
+ }
6218
+ if (typeof data === "object" && data !== null && !Array.isArray(data)) {
6219
+ const result = {};
6220
+ let hasPromises = false;
6221
+ for (const [key, value] of Object.entries(data)) {
6222
+ if (value instanceof Promise) {
6223
+ hasPromises = true;
6224
+ result[key] = {
6225
+ __lazy__: true,
6226
+ __fetch__: `/__reroute_data?path=${encodeURIComponent(pathname)}&key=${encodeURIComponent(key)}`
6227
+ };
6228
+ } else {
6229
+ result[key] = value;
6230
+ }
6231
+ }
6232
+ if (hasPromises) {
6233
+ result.__flatten__ = true;
6234
+ }
6235
+ return result;
6236
+ }
6237
+ return data;
6238
+ }
6215
6239
  app.get("/__reroute_data", async ({ query, headers: headers2 }) => {
6216
6240
  const p = String(query.path || query.p || "/");
6217
6241
  const dataKey = String(query.key || "");
@@ -7009,7 +7033,7 @@ function registerOGRoutes(app, options) {
7009
7033
  const width = ogConfig.width ?? 1200;
7010
7034
  const height = ogConfig.height ?? 630;
7011
7035
  const maxAge = ogConfig.maxAge ?? 3600;
7012
- const generatingImages = new Set;
7036
+ const generatingImages = new Map;
7013
7037
  function normalizeOgPathname(urlPathname) {
7014
7038
  let pathname = urlPathname.replace(/^\/__reroute_og/, "").replace(/\.png$/, "");
7015
7039
  if (pathname === "/index" || pathname === "index") {
@@ -7109,26 +7133,34 @@ function registerOGRoutes(app, options) {
7109
7133
  const cachedResponse = checkOgCache(pathname, set);
7110
7134
  if (cachedResponse)
7111
7135
  return cachedResponse;
7112
- if (generatingImages.has(pathname)) {
7113
- set.status = 404;
7114
- set.headers["Retry-After"] = "2";
7115
- return new Response("Image generation in progress", {
7116
- status: 404,
7117
- headers: { "Content-Type": "text/plain" }
7118
- });
7119
- }
7120
- generatingImages.add(pathname);
7121
- generateOgImage(pathname, clientDir, cwd, isWatchMode, ogConfig, width, height).then(() => {
7136
+ const existingGeneration = generatingImages.get(pathname);
7137
+ if (existingGeneration) {
7138
+ await existingGeneration;
7139
+ const cachedAfterWait = checkOgCache(pathname, set);
7140
+ if (cachedAfterWait)
7141
+ return cachedAfterWait;
7142
+ }
7143
+ const generationPromise = generateOgImage(pathname, clientDir, cwd, isWatchMode, ogConfig, width, height);
7144
+ generatingImages.set(pathname, generationPromise);
7145
+ try {
7146
+ await generationPromise;
7122
7147
  console.log(`[reroute/og] Generated image for: ${pathname}`);
7123
- }).catch((error) => {
7148
+ } catch (error) {
7124
7149
  console.error(`[reroute/og] Failed to generate image for ${pathname}:`, error);
7125
- }).finally(() => {
7150
+ set.status = 500;
7151
+ return new Response("Failed to generate image", {
7152
+ status: 500,
7153
+ headers: { "Content-Type": "text/plain" }
7154
+ });
7155
+ } finally {
7126
7156
  generatingImages.delete(pathname);
7127
- });
7128
- set.status = 404;
7129
- set.headers["Retry-After"] = "2";
7130
- return new Response("Image not yet available, please retry", {
7131
- status: 404,
7157
+ }
7158
+ const generatedResponse = checkOgCache(pathname, set);
7159
+ if (generatedResponse)
7160
+ return generatedResponse;
7161
+ set.status = 500;
7162
+ return new Response("Image generation completed but not cached", {
7163
+ status: 500,
7132
7164
  headers: { "Content-Type": "text/plain" }
7133
7165
  });
7134
7166
  } catch (error) {
@@ -8647,4 +8679,4 @@ export {
8647
8679
  reroute
8648
8680
  };
8649
8681
 
8650
- //# debugId=C6F09D6C67BEE32064756E2164756E21
8682
+ //# debugId=44C139D1754C251F64756E2164756E21