reroute-js 0.45.7 → 0.45.9

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 (184) hide show
  1. package/cli/bin.d.ts +1 -1
  2. package/cli/bin.js +75 -20
  3. package/cli/bin.js.map +8 -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 +63 -8
  35. package/core/index.js.map +8 -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 +1 -1
  39. package/core/src/content/discovery.d.ts +1 -1
  40. package/core/src/content/index.d.ts +1 -1
  41. package/core/src/content/metadata.d.ts +1 -1
  42. package/core/src/index.d.ts +1 -1
  43. package/core/src/llms/extractor.d.ts +1 -1
  44. package/core/src/llms/formatter.d.ts +1 -1
  45. package/core/src/llms/full-generator.d.ts +1 -1
  46. package/core/src/llms/index-generator.d.ts +1 -1
  47. package/core/src/llms/index.d.ts +1 -1
  48. package/core/src/og/discovery.d.ts +1 -1
  49. package/core/src/og/index.d.ts +1 -1
  50. package/core/src/og/meta.d.ts +1 -1
  51. package/core/src/og/render.d.ts +1 -1
  52. package/core/src/og/types.d.ts +1 -1
  53. package/core/src/robots/discovery.d.ts +1 -1
  54. package/core/src/robots/generator.d.ts +1 -1
  55. package/core/src/robots/index.d.ts +1 -1
  56. package/core/src/robots/policies.d.ts +1 -1
  57. package/core/src/rss/discovery.d.ts +1 -1
  58. package/core/src/rss/generator.d.ts +1 -1
  59. package/core/src/rss/index.d.ts +1 -1
  60. package/core/src/sitemap/discovery.d.ts +1 -1
  61. package/core/src/sitemap/generator.d.ts +1 -1
  62. package/core/src/sitemap/index.d.ts +1 -1
  63. package/core/src/ssr/index.d.ts +1 -1
  64. package/core/src/ssr/lib/cache.d.ts +1 -1
  65. package/core/src/ssr/lib/cleanup.d.ts +15 -0
  66. package/core/src/ssr/lib/cleanup.d.ts.map +1 -0
  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 +2 -1
  77. package/core/src/ssr/lib/index.d.ts.map +1 -1
  78. package/core/src/ssr/lib/layouts.d.ts +1 -1
  79. package/core/src/ssr/lib/metadata.d.ts +1 -1
  80. package/core/src/ssr/lib/mime.d.ts +1 -1
  81. package/core/src/ssr/lib/modules.d.ts +1 -1
  82. package/core/src/ssr/lib/path.d.ts +1 -1
  83. package/core/src/ssr/lib/preload.d.ts +1 -1
  84. package/core/src/ssr/lib/scripts/collections.d.ts +1 -1
  85. package/core/src/ssr/lib/scripts/data.d.ts +1 -1
  86. package/core/src/ssr/lib/scripts/escape.d.ts +1 -1
  87. package/core/src/ssr/lib/scripts/feeds.d.ts +1 -1
  88. package/core/src/ssr/lib/scripts/index.d.ts +1 -1
  89. package/core/src/ssr/lib/seed.d.ts +1 -1
  90. package/core/src/ssr/lib/serialize.d.ts +1 -1
  91. package/core/src/ssr/lib/setup.d.ts +1 -1
  92. package/core/src/ssr/lib/setup.d.ts.map +1 -1
  93. package/core/src/ssr/lib/styles.d.ts +1 -1
  94. package/core/src/ssr/lib/template.d.ts +1 -1
  95. package/core/src/ssr/lib/types.d.ts +1 -1
  96. package/core/src/ssr/render.d.ts +1 -1
  97. package/core/src/ssr/stream.d.ts +1 -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 +63 -8
  101. package/elysia/index.js.map +8 -7
  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/routes/artifacts.d.ts +1 -1
  114. package/elysia/src/routes/content.d.ts +1 -1
  115. package/elysia/src/routes/image.d.ts +1 -1
  116. package/elysia/src/routes/index.d.ts +1 -1
  117. package/elysia/src/routes/internal.d.ts +1 -1
  118. package/elysia/src/routes/llms.d.ts +1 -1
  119. package/elysia/src/routes/og.d.ts +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 +2 -2
  131. package/react/index.js.map +1 -1
  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 +1 -1
  137. package/react/src/components/Markdown.d.ts +1 -1
  138. package/react/src/components/Outlet.d.ts +1 -1
  139. package/react/src/components/index.d.ts +1 -1
  140. package/react/src/hooks/index.d.ts +1 -1
  141. package/react/src/hooks/useContent.d.ts +1 -1
  142. package/react/src/hooks/useData.d.ts +1 -1
  143. package/react/src/hooks/useFeed.d.ts +1 -1
  144. package/react/src/hooks/useLayoutData.d.ts +1 -1
  145. package/react/src/hooks/useLlms.d.ts +1 -1
  146. package/react/src/hooks/useNavigate.d.ts +1 -1
  147. package/react/src/hooks/useParams.d.ts +1 -1
  148. package/react/src/hooks/useRouter.d.ts +1 -1
  149. package/react/src/hooks/useSearch.d.ts +1 -1
  150. package/react/src/hooks/useSearchParams.d.ts +1 -1
  151. package/react/src/hooks/useToc.d.ts +1 -1
  152. package/react/src/index.d.ts +1 -1
  153. package/react/src/lib/collection.d.ts +1 -1
  154. package/react/src/lib/content.d.ts +1 -1
  155. package/react/src/lib/head.d.ts +1 -1
  156. package/react/src/lib/index.d.ts +1 -1
  157. package/react/src/lib/lazy-route.d.ts +1 -1
  158. package/react/src/lib/route-loader.d.ts +1 -1
  159. package/react/src/providers/ContentProvider.d.ts +1 -1
  160. package/react/src/providers/RerouteProvider.d.ts +1 -1
  161. package/react/src/providers/RouterProvider.d.ts +1 -1
  162. package/react/src/providers/index.d.ts +1 -1
  163. package/react/src/types/any.d.ts +1 -1
  164. package/react/src/types/index.d.ts +1 -1
  165. package/react/src/types/router.d.ts +1 -1
  166. package/telemetry/react.d.ts +1 -1
  167. package/telemetry/react.js +2 -2
  168. package/telemetry/react.js.map +1 -1
  169. package/telemetry/server.d.ts +1 -1
  170. package/telemetry/server.js +4 -5
  171. package/telemetry/server.js.map +6 -6
  172. package/telemetry/src/react/api.d.ts +1 -1
  173. package/telemetry/src/react/context.d.ts +1 -1
  174. package/telemetry/src/react/index.d.ts +1 -1
  175. package/telemetry/src/react/telemetry.d.ts +1 -1
  176. package/telemetry/src/server/context.d.ts +1 -1
  177. package/telemetry/src/server/headers/extractor.d.ts +1 -1
  178. package/telemetry/src/server/headers/index.d.ts +1 -1
  179. package/telemetry/src/server/headers/presets.d.ts +1 -1
  180. package/telemetry/src/server/index.d.ts +1 -1
  181. package/telemetry/src/server/instrumentation.d.ts +1 -1
  182. package/telemetry/src/server/plugin.d.ts +1 -1
  183. package/telemetry/src/server/plugin.d.ts.map +1 -1
  184. 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.45.7
2
+ * reroute-js v0.45.9
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 v0.45.7
4
+ * reroute-js v0.45.9
5
5
  *
6
6
  * @license MIT
7
7
  * @copyright 2026 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.45.7";
51
+ return "0.45.9";
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 "389548a";
69
+ return "4f8d173";
70
70
  }
71
71
  return "dev";
72
72
  }
@@ -982,6 +982,32 @@ var init_cache = __esm(() => {
982
982
  statusCache = getGlobalStatusCache();
983
983
  });
984
984
 
985
+ // packages/core/src/ssr/lib/cleanup.ts
986
+ function removePathVariants(store, pathname) {
987
+ if (pathname in store) {
988
+ delete store[pathname];
989
+ }
990
+ const pathnameWithoutQuery = pathname.split("?")[0];
991
+ if (pathnameWithoutQuery && pathnameWithoutQuery !== pathname && pathnameWithoutQuery in store) {
992
+ delete store[pathnameWithoutQuery];
993
+ }
994
+ }
995
+ function cleanupPathScopedSSRData(pathname) {
996
+ if (!pathname)
997
+ return;
998
+ try {
999
+ const g = globalThis;
1000
+ const dataStore = g.__REROUTE_DATA__;
1001
+ if (!dataStore || typeof dataStore !== "object") {
1002
+ return;
1003
+ }
1004
+ removePathVariants(dataStore, pathname);
1005
+ if (Object.keys(dataStore).length === 0) {
1006
+ delete g.__REROUTE_DATA__;
1007
+ }
1008
+ } catch {}
1009
+ }
1010
+
985
1011
  // packages/core/src/ssr/lib/imports.ts
986
1012
  import { pathToFileURL as pathToFileURL3 } from "node:url";
987
1013
  async function dynamicImport(absolutePath, isWatchMode) {
@@ -3189,18 +3215,22 @@ var init_styles = () => {};
3189
3215
  // packages/core/src/ssr/lib/setup.ts
3190
3216
  async function performSSRSetup(options, streaming = false) {
3191
3217
  const { pathname } = options;
3218
+ const timeoutState = { timedOut: false };
3192
3219
  const setupTimeout = streaming ? 1e4 : 30000;
3220
+ let timeoutId = null;
3193
3221
  const timeoutPromise = new Promise((_, reject) => {
3194
- setTimeout(() => {
3222
+ timeoutId = setTimeout(() => {
3223
+ timeoutState.timedOut = true;
3195
3224
  reject(new Error(`[reroute] SSR setup timeout after ${setupTimeout}ms for ${pathname}`));
3196
3225
  }, setupTimeout);
3197
3226
  });
3198
3227
  try {
3199
3228
  return await Promise.race([
3200
- withParentSpan(options.parentSpan, () => performSSRSetupInternal(options, streaming)),
3229
+ withParentSpan(options.parentSpan, () => performSSRSetupInternal(options, streaming, timeoutState)),
3201
3230
  timeoutPromise
3202
3231
  ]);
3203
3232
  } catch (error) {
3233
+ cleanupPathScopedSSRData(pathname);
3204
3234
  console.error("[reroute] SSR setup error:", error);
3205
3235
  return {
3206
3236
  ssrData: {},
@@ -3213,9 +3243,13 @@ async function performSSRSetup(options, streaming = false) {
3213
3243
  inlineStyleTag: "",
3214
3244
  metadataResult: { perPageHead: "" }
3215
3245
  };
3246
+ } finally {
3247
+ if (timeoutId) {
3248
+ clearTimeout(timeoutId);
3249
+ }
3216
3250
  }
3217
3251
  }
3218
- async function performSSRSetupInternal(options, streaming) {
3252
+ async function performSSRSetupInternal(options, streaming, timeoutState) {
3219
3253
  const debug = options.debug ?? false;
3220
3254
  const t0 = debug ? performance.now() : 0;
3221
3255
  const {
@@ -3228,6 +3262,11 @@ async function performSSRSetupInternal(options, streaming) {
3228
3262
  searchParams,
3229
3263
  ogConfig
3230
3264
  } = options;
3265
+ const assertNotTimedOut = () => {
3266
+ if (timeoutState.timedOut) {
3267
+ throw new Error(`[reroute] SSR setup cancelled for ${pathname}`);
3268
+ }
3269
+ };
3231
3270
  await withSpan("ssr.seed", async (span) => {
3232
3271
  span.setAttribute("pathname", pathname);
3233
3272
  span.setAttribute("streaming", streaming);
@@ -3235,6 +3274,7 @@ async function performSSRSetupInternal(options, streaming) {
3235
3274
  if (debug)
3236
3275
  console.log(`[Setup] ${pathname} - seedModule: ${(performance.now() - t0).toFixed(2)}ms`);
3237
3276
  });
3277
+ assertNotTimedOut();
3238
3278
  resetSSRAccessTracking();
3239
3279
  const bundlePreload = createBundlePreload(bundleUrl);
3240
3280
  const preloadResult = await withSpan("ssr.preload", async (span) => {
@@ -3245,6 +3285,7 @@ async function performSSRSetupInternal(options, streaming) {
3245
3285
  console.log(`[Setup] ${pathname} - preloadContent: ${(performance.now() - t0).toFixed(2)}ms`);
3246
3286
  return result;
3247
3287
  });
3288
+ assertNotTimedOut();
3248
3289
  const computeResult = await withSpan("ssr.compute.data", async (span) => {
3249
3290
  span.setAttribute("pathname", pathname);
3250
3291
  span.setAttribute("streaming", streaming);
@@ -3255,6 +3296,7 @@ async function performSSRSetupInternal(options, streaming) {
3255
3296
  console.log(`[Setup] ${pathname} - computeSSRData: ${(performance.now() - t0).toFixed(2)}ms`);
3256
3297
  return result;
3257
3298
  });
3299
+ assertNotTimedOut();
3258
3300
  setGlobalSSRData(computeResult.data);
3259
3301
  const usingCachedCollections = !!options.cachedCollections;
3260
3302
  const byCollectionForSSR = await withSpan("ssr.load.collections", async (span) => {
@@ -3266,6 +3308,7 @@ async function performSSRSetupInternal(options, streaming) {
3266
3308
  console.log(`[Setup] ${pathname} - loadCollections (cached: ${usingCachedCollections}): ${(performance.now() - t0).toFixed(2)}ms`);
3267
3309
  return collections;
3268
3310
  });
3311
+ assertNotTimedOut();
3269
3312
  setGlobalCollections(byCollectionForSSR);
3270
3313
  const usingCachedCSS = !!options.cachedTailwindCSS;
3271
3314
  const inlineStyleTag = await withSpan("ssr.inline.css", async (span) => {
@@ -3278,6 +3321,7 @@ async function performSSRSetupInternal(options, streaming) {
3278
3321
  console.log(`[Setup] ${pathname} - inlineTailwindCSS (cached: ${usingCachedCSS}): ${(performance.now() - t0).toFixed(2)}ms`);
3279
3322
  return css;
3280
3323
  });
3324
+ assertNotTimedOut();
3281
3325
  let statusOverride = preloadResult.statusOverride;
3282
3326
  if (computeResult.statusContainer.value !== undefined) {
3283
3327
  statusOverride = computeResult.statusContainer.value;
@@ -3292,6 +3336,7 @@ async function performSSRSetupInternal(options, streaming) {
3292
3336
  console.log(`[Setup] ${pathname} - extractMetadata: ${(performance.now() - t0).toFixed(2)}ms`);
3293
3337
  return result;
3294
3338
  });
3339
+ assertNotTimedOut();
3295
3340
  return {
3296
3341
  ssrData: computeResult.data,
3297
3342
  ssrError: computeResult.error,
@@ -5608,7 +5653,7 @@ async function streamSSRContent(writer, encoder, ctx) {
5608
5653
  const STREAM_TIMEOUT_MS = ctx.timeout ?? 120000;
5609
5654
  let streamTimedOut = false;
5610
5655
  let timeoutId = null;
5611
- const cleanup = () => {
5656
+ const cleanup2 = () => {
5612
5657
  if (timeoutId) {
5613
5658
  clearTimeout(timeoutId);
5614
5659
  timeoutId = null;
@@ -5658,6 +5703,11 @@ async function streamSSRContent(writer, encoder, ctx) {
5658
5703
  streamTimeoutPromise
5659
5704
  ]);
5660
5705
  if (result.done || streamTimedOut) {
5706
+ if (streamTimedOut) {
5707
+ try {
5708
+ await reader.cancel(`[reroute] stream timeout for ${ctx.pathname}`);
5709
+ } catch {}
5710
+ }
5661
5711
  try {
5662
5712
  reader.releaseLock();
5663
5713
  } catch {}
@@ -5668,12 +5718,15 @@ async function streamSSRContent(writer, encoder, ctx) {
5668
5718
  chunkCount++;
5669
5719
  }
5670
5720
  }
5671
- cleanup();
5721
+ cleanup2();
5672
5722
  span.setAttributes({
5673
5723
  "reroute.stream.chunks": chunkCount,
5674
5724
  "reroute.stream.timedOut": streamTimedOut
5675
5725
  });
5676
5726
  });
5727
+ if (streamTimedOut) {
5728
+ cleanupPathScopedSSRData(ctx.pathname);
5729
+ }
5677
5730
  await writer.write(encoder.encode(ctx.rootEnd));
5678
5731
  const allScripts = await withSpan("ssr.generate.scripts", async (span) => {
5679
5732
  const scripts2 = buildStreamingScripts(ctx);
@@ -5683,7 +5736,8 @@ async function streamSSRContent(writer, encoder, ctx) {
5683
5736
  await writer.write(encoder.encode(allScripts + ctx.htmlTail));
5684
5737
  await writer.close();
5685
5738
  } catch (error) {
5686
- cleanup();
5739
+ cleanup2();
5740
+ cleanupPathScopedSSRData(ctx.pathname);
5687
5741
  console.error("[reroute] Stream error:", error);
5688
5742
  try {
5689
5743
  await writer.abort(error);
@@ -5933,6 +5987,7 @@ __export(exports_core, {
5933
5987
  computeLayoutData: () => computeLayoutData,
5934
5988
  computeContentData: () => computeContentData,
5935
5989
  compressStreamIfAccepted: () => compressStreamIfAccepted,
5990
+ cleanupPathScopedSSRData: () => cleanupPathScopedSSRData,
5936
5991
  buildHeadFromMeta: () => buildHeadFromMeta,
5937
5992
  blockSearchCrawlers: () => blockSearchCrawlers,
5938
5993
  blockAITrainingCrawlers: () => blockAITrainingCrawlers,
@@ -84244,7 +84299,7 @@ var require__stream_readable = __commonJS((exports, module) => {
84244
84299
  }
84245
84300
  state.pipesCount += 1;
84246
84301
  var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr;
84247
- var endFn = doEnd ? onend : cleanup;
84302
+ var endFn = doEnd ? onend : cleanup2;
84248
84303
  if (state.endEmitted)
84249
84304
  process.nextTick(endFn);
84250
84305
  else
@@ -84253,21 +84308,21 @@ var require__stream_readable = __commonJS((exports, module) => {
84253
84308
  function onunpipe(readable) {
84254
84309
  if (readable !== src2)
84255
84310
  return;
84256
- cleanup();
84311
+ cleanup2();
84257
84312
  }
84258
84313
  function onend() {
84259
84314
  dest.end();
84260
84315
  }
84261
84316
  var ondrain = pipeOnDrain(src2);
84262
84317
  dest.on("drain", ondrain);
84263
- function cleanup() {
84318
+ function cleanup2() {
84264
84319
  dest.removeListener("close", onclose);
84265
84320
  dest.removeListener("finish", onfinish);
84266
84321
  dest.removeListener("drain", ondrain);
84267
84322
  dest.removeListener("error", onerror);
84268
84323
  dest.removeListener("unpipe", onunpipe);
84269
84324
  src2.removeListener("end", onend);
84270
- src2.removeListener("end", cleanup);
84325
+ src2.removeListener("end", cleanup2);
84271
84326
  if (!dest._writableState || dest._writableState.needDrain)
84272
84327
  ondrain();
84273
84328
  }
@@ -106027,7 +106082,7 @@ Or create [og].tsx files in your routes for custom OG templates.`);
106027
106082
  process.exit(1);
106028
106083
  }
106029
106084
  const { process: serverProcess } = server2;
106030
- const cleanup = () => {
106085
+ const cleanup2 = () => {
106031
106086
  console.log(`
106032
106087
 
106033
106088
  \uD83D\uDED1 Shutting down dev server...`);
@@ -106042,8 +106097,8 @@ Or create [og].tsx files in your routes for custom OG templates.`);
106042
106097
  process.exit(0);
106043
106098
  });
106044
106099
  };
106045
- process.on("SIGINT", cleanup);
106046
- process.on("SIGTERM", cleanup);
106100
+ process.on("SIGINT", cleanup2);
106101
+ process.on("SIGTERM", cleanup2);
106047
106102
  if (args[0]) {
106048
106103
  const route = args[0];
106049
106104
  const ogUrl = `http://localhost:${port}/__reroute_og${route === "/" ? "/index" : route}.png`;
@@ -106110,7 +106165,7 @@ Or create [og].tsx files in your routes for custom OG templates.`);
106110
106165
  screen.render();
106111
106166
  openInBrowser(ogUrl);
106112
106167
  });
106113
- screen.key(["escape", "q", "C-c"], cleanup);
106168
+ screen.key(["escape", "q", "C-c"], cleanup2);
106114
106169
  list.focus();
106115
106170
  screen.render();
106116
106171
  }
@@ -106223,7 +106278,7 @@ async function getVersionString2() {
106223
106278
  }
106224
106279
  async function getVersion2() {
106225
106280
  if (true) {
106226
- return "0.45.7";
106281
+ return "0.45.9";
106227
106282
  }
106228
106283
  const possiblePaths = [
106229
106284
  path3.join(import.meta.dir, "../../../package.json"),
@@ -106240,10 +106295,10 @@ async function getVersion2() {
106240
106295
  }
106241
106296
  async function getCommit2() {
106242
106297
  if (true) {
106243
- return "389548a";
106298
+ return "4f8d173";
106244
106299
  }
106245
106300
  return "dev";
106246
106301
  }
106247
106302
  main();
106248
106303
 
106249
- //# debugId=B104C3DC040DDA2D64756E2164756E21
106304
+ //# debugId=210B7FF7E6F31BAF64756E2164756E21