reroute-js 0.41.0 → 0.42.0
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.
- package/cli/bin.d.ts +1 -1
- package/cli/bin.js +115 -48
- package/cli/bin.js.map +6 -6
- package/cli/index.d.ts +1 -1
- package/cli/index.js +4 -4
- package/cli/index.js.map +1 -1
- package/cli/src/cli.d.ts +1 -1
- package/cli/src/commands/analyze.d.ts +1 -1
- package/cli/src/commands/build.d.ts +1 -1
- package/cli/src/commands/dev.d.ts +1 -1
- package/cli/src/commands/gen.d.ts +1 -1
- package/cli/src/commands/gen.d.ts.map +1 -1
- package/cli/src/commands/index.d.ts +1 -1
- package/cli/src/commands/init.d.ts +1 -1
- package/cli/src/commands/lib/assets.d.ts +1 -1
- package/cli/src/commands/lib/bundler.d.ts +1 -1
- package/cli/src/commands/lib/command.d.ts +1 -1
- package/cli/src/commands/lib/env.d.ts +1 -1
- package/cli/src/commands/lib/index.d.ts +1 -1
- package/cli/src/commands/lib/log.d.ts +1 -1
- package/cli/src/commands/lib/markdown/availability.d.ts +1 -1
- package/cli/src/commands/lib/markdown/index.d.ts +1 -1
- package/cli/src/commands/lib/markdown/processor.d.ts +1 -1
- package/cli/src/commands/lib/production.d.ts +1 -1
- package/cli/src/commands/lib/server.d.ts +1 -1
- package/cli/src/commands/lib/streaming/analyzer.d.ts +1 -1
- package/cli/src/commands/lib/streaming/suspense.d.ts +1 -1
- package/cli/src/commands/lib/tailwind.d.ts +1 -1
- package/cli/src/commands/lib/terminal-ui.d.ts +1 -1
- package/cli/src/commands/lib/version.d.ts +1 -1
- package/cli/src/commands/og.d.ts +1 -1
- package/cli/src/commands/start.d.ts +1 -1
- package/cli/src/index.d.ts +1 -1
- package/core/index.d.ts +1 -1
- package/core/index.js +57 -23
- package/core/index.js.map +5 -5
- package/core/src/bundler/hash.d.ts +1 -1
- package/core/src/bundler/index.d.ts +1 -1
- package/core/src/config.d.ts +6 -4
- package/core/src/config.d.ts.map +1 -1
- package/core/src/content/discovery.d.ts +1 -1
- package/core/src/content/index.d.ts +1 -1
- package/core/src/content/metadata.d.ts +1 -1
- package/core/src/index.d.ts +1 -1
- package/core/src/llms/extractor.d.ts +1 -1
- package/core/src/llms/formatter.d.ts +1 -1
- package/core/src/llms/full-generator.d.ts +1 -1
- package/core/src/llms/index-generator.d.ts +1 -1
- package/core/src/llms/index.d.ts +1 -1
- package/core/src/og/discovery.d.ts +1 -1
- package/core/src/og/index.d.ts +1 -1
- package/core/src/og/meta.d.ts +1 -1
- package/core/src/og/render.d.ts +1 -1
- package/core/src/og/types.d.ts +1 -1
- package/core/src/robots/discovery.d.ts +1 -1
- package/core/src/robots/generator.d.ts +1 -1
- package/core/src/robots/index.d.ts +1 -1
- package/core/src/robots/policies.d.ts +1 -1
- package/core/src/rss/discovery.d.ts +1 -1
- package/core/src/rss/discovery.d.ts.map +1 -1
- package/core/src/rss/generator.d.ts +1 -1
- package/core/src/rss/index.d.ts +1 -1
- package/core/src/sitemap/discovery.d.ts +1 -1
- package/core/src/sitemap/discovery.d.ts.map +1 -1
- package/core/src/sitemap/generator.d.ts +1 -1
- package/core/src/sitemap/index.d.ts +1 -1
- package/core/src/ssr/index.d.ts +1 -1
- package/core/src/ssr/lib/cache.d.ts +1 -1
- package/core/src/ssr/lib/collections.d.ts +1 -1
- package/core/src/ssr/lib/compression.d.ts +1 -1
- package/core/src/ssr/lib/compute/content.d.ts +1 -1
- package/core/src/ssr/lib/compute/index.d.ts +1 -1
- package/core/src/ssr/lib/compute/layouts.d.ts +1 -1
- package/core/src/ssr/lib/compute/routes.d.ts +1 -1
- package/core/src/ssr/lib/data.d.ts +1 -1
- package/core/src/ssr/lib/html.d.ts +1 -1
- package/core/src/ssr/lib/imports.d.ts +1 -1
- package/core/src/ssr/lib/index.d.ts +1 -1
- package/core/src/ssr/lib/layouts.d.ts +1 -1
- package/core/src/ssr/lib/metadata.d.ts +1 -1
- package/core/src/ssr/lib/mime.d.ts +1 -1
- package/core/src/ssr/lib/modules.d.ts +1 -1
- package/core/src/ssr/lib/path.d.ts +1 -1
- package/core/src/ssr/lib/preload.d.ts +1 -1
- package/core/src/ssr/lib/scripts/collections.d.ts +1 -1
- package/core/src/ssr/lib/scripts/data.d.ts +1 -1
- package/core/src/ssr/lib/scripts/escape.d.ts +1 -1
- package/core/src/ssr/lib/scripts/feeds.d.ts +1 -1
- package/core/src/ssr/lib/scripts/index.d.ts +1 -1
- package/core/src/ssr/lib/seed.d.ts +1 -1
- package/core/src/ssr/lib/serialize.d.ts +1 -1
- package/core/src/ssr/lib/setup.d.ts +1 -1
- package/core/src/ssr/lib/styles.d.ts +1 -1
- package/core/src/ssr/lib/template.d.ts +1 -1
- package/core/src/ssr/lib/types.d.ts +1 -1
- package/core/src/ssr/render.d.ts +1 -1
- package/core/src/ssr/stream.d.ts +1 -1
- package/elysia/index.d.ts +1 -1
- package/elysia/index.js +232 -104
- package/elysia/index.js.map +10 -10
- package/elysia/src/index.d.ts +1 -1
- package/elysia/src/libs/assets.d.ts +1 -1
- package/elysia/src/libs/cache.d.ts +1 -1
- package/elysia/src/libs/caching.d.ts +1 -1
- package/elysia/src/libs/http.d.ts +1 -1
- package/elysia/src/libs/image.d.ts +1 -1
- package/elysia/src/libs/index.d.ts +1 -1
- package/elysia/src/libs/llms.d.ts +1 -1
- package/elysia/src/libs/response.d.ts +1 -1
- package/elysia/src/libs/serving.d.ts +1 -1
- package/elysia/src/plugin.d.ts +1 -1
- package/elysia/src/plugin.d.ts.map +1 -1
- package/elysia/src/routes/artifacts.d.ts +1 -1
- package/elysia/src/routes/content.d.ts +1 -1
- package/elysia/src/routes/image.d.ts +1 -1
- package/elysia/src/routes/index.d.ts +1 -1
- package/elysia/src/routes/internal.d.ts +1 -1
- package/elysia/src/routes/internal.d.ts.map +1 -1
- package/elysia/src/routes/llms.d.ts +1 -1
- package/elysia/src/routes/og.d.ts +1 -1
- package/elysia/src/routes/og.d.ts.map +1 -1
- package/elysia/src/routes/redirects.d.ts +1 -1
- package/elysia/src/routes/robots.d.ts +1 -1
- package/elysia/src/routes/rss.d.ts +2 -2
- package/elysia/src/routes/rss.d.ts.map +1 -1
- package/elysia/src/routes/search.d.ts +1 -1
- package/elysia/src/routes/sitemap.d.ts +2 -2
- package/elysia/src/routes/sitemap.d.ts.map +1 -1
- package/elysia/src/routes/ssr.d.ts +1 -1
- package/elysia/src/routes/static.d.ts +1 -1
- package/elysia/src/types.d.ts +1 -1
- package/package.json +1 -1
- package/react/index.d.ts +1 -1
- package/react/index.js +2 -2
- package/react/index.js.map +1 -1
- package/react/src/components/ClientOnly.d.ts +1 -1
- package/react/src/components/ContentRoute.d.ts +1 -1
- package/react/src/components/Image.d.ts +1 -1
- package/react/src/components/LazyRoute.d.ts +1 -1
- package/react/src/components/Link.d.ts +1 -1
- package/react/src/components/Markdown.d.ts +1 -1
- package/react/src/components/Outlet.d.ts +1 -1
- package/react/src/components/index.d.ts +1 -1
- package/react/src/hooks/index.d.ts +1 -1
- package/react/src/hooks/useContent.d.ts +1 -1
- package/react/src/hooks/useData.d.ts +1 -1
- package/react/src/hooks/useFeed.d.ts +1 -1
- package/react/src/hooks/useLayoutData.d.ts +1 -1
- package/react/src/hooks/useLlms.d.ts +1 -1
- package/react/src/hooks/useNavigate.d.ts +1 -1
- package/react/src/hooks/useParams.d.ts +1 -1
- package/react/src/hooks/useRouter.d.ts +1 -1
- package/react/src/hooks/useSearch.d.ts +1 -1
- package/react/src/hooks/useSearchParams.d.ts +1 -1
- package/react/src/hooks/useToc.d.ts +1 -1
- package/react/src/index.d.ts +1 -1
- package/react/src/lib/collection.d.ts +1 -1
- package/react/src/lib/content.d.ts +1 -1
- package/react/src/lib/head.d.ts +1 -1
- package/react/src/lib/index.d.ts +1 -1
- package/react/src/lib/lazy-route.d.ts +1 -1
- package/react/src/lib/route-loader.d.ts +1 -1
- package/react/src/providers/ContentProvider.d.ts +1 -1
- package/react/src/providers/RerouteProvider.d.ts +1 -1
- package/react/src/providers/RouterProvider.d.ts +1 -1
- package/react/src/providers/index.d.ts +1 -1
- package/react/src/types/any.d.ts +1 -1
- package/react/src/types/index.d.ts +1 -1
- package/react/src/types/router.d.ts +1 -1
- package/telemetry/react.d.ts +1 -1
- package/telemetry/react.js +2 -2
- package/telemetry/react.js.map +1 -1
- package/telemetry/server.d.ts +1 -1
- package/telemetry/server.js +2 -2
- package/telemetry/server.js.map +3 -3
- package/telemetry/src/react/api.d.ts +1 -1
- package/telemetry/src/react/context.d.ts +1 -1
- package/telemetry/src/react/index.d.ts +1 -1
- package/telemetry/src/react/telemetry.d.ts +1 -1
- package/telemetry/src/server/context.d.ts +1 -1
- package/telemetry/src/server/headers/extractor.d.ts +1 -1
- package/telemetry/src/server/headers/index.d.ts +1 -1
- package/telemetry/src/server/headers/presets.d.ts +1 -1
- package/telemetry/src/server/index.d.ts +1 -1
- package/telemetry/src/server/instrumentation.d.ts +1 -1
- package/telemetry/src/server/plugin.d.ts +1 -1
- package/telemetry/src/server/sourcemap.d.ts +1 -1
package/cli/bin.d.ts
CHANGED
package/cli/bin.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env bun
|
|
2
2
|
// @bun
|
|
3
3
|
/**
|
|
4
|
-
* reroute-js v0.
|
|
4
|
+
* reroute-js v0.42.0
|
|
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.
|
|
51
|
+
return "0.42.0";
|
|
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 "
|
|
69
|
+
return "7dd4c06";
|
|
70
70
|
}
|
|
71
71
|
return "dev";
|
|
72
72
|
}
|
|
@@ -4368,13 +4368,13 @@ async function discoverSSRDataRoutes2(cwd, staticRoutes, isWatchMode, baseUrl, s
|
|
|
4368
4368
|
const ssrDataRoutes = new Map;
|
|
4369
4369
|
const bundledRoutes = globalThis.__REROUTE_ROUTES__;
|
|
4370
4370
|
if (bundledRoutes && Array.isArray(bundledRoutes)) {
|
|
4371
|
-
|
|
4371
|
+
const routePromises = staticRoutes.map(async (route) => {
|
|
4372
4372
|
if (sitemapConfig?.excludeDiscovery?.some((excluded) => route.pattern.startsWith(excluded))) {
|
|
4373
|
-
|
|
4373
|
+
return null;
|
|
4374
4374
|
}
|
|
4375
4375
|
const bundledRoute = bundledRoutes.find((r) => r?.pattern === route.pattern);
|
|
4376
4376
|
if (!bundledRoute)
|
|
4377
|
-
|
|
4377
|
+
return null;
|
|
4378
4378
|
const ssr = bundledRoute?.ssr;
|
|
4379
4379
|
const dataFn = ssr?.data;
|
|
4380
4380
|
if (typeof dataFn === "function") {
|
|
@@ -4387,15 +4387,22 @@ async function discoverSSRDataRoutes2(cwd, staticRoutes, isWatchMode, baseUrl, s
|
|
|
4387
4387
|
});
|
|
4388
4388
|
const entries = extractEntriesFromData(result, route.pattern, baseUrl, sitemapConfig);
|
|
4389
4389
|
if (entries.length > 0) {
|
|
4390
|
-
|
|
4390
|
+
return { pattern: route.pattern, entries };
|
|
4391
4391
|
}
|
|
4392
4392
|
} catch {}
|
|
4393
4393
|
}
|
|
4394
|
+
return null;
|
|
4395
|
+
});
|
|
4396
|
+
const results = await Promise.all(routePromises);
|
|
4397
|
+
for (const result of results) {
|
|
4398
|
+
if (result) {
|
|
4399
|
+
ssrDataRoutes.set(result.pattern, result.entries);
|
|
4400
|
+
}
|
|
4394
4401
|
}
|
|
4395
4402
|
} else {
|
|
4396
|
-
|
|
4403
|
+
const routePromises = staticRoutes.map(async (route) => {
|
|
4397
4404
|
if (sitemapConfig?.excludeDiscovery?.some((excluded) => route.pattern.startsWith(excluded))) {
|
|
4398
|
-
|
|
4405
|
+
return null;
|
|
4399
4406
|
}
|
|
4400
4407
|
try {
|
|
4401
4408
|
const routeModulePath = join2(cwd, "src", "client", "routes", route.path);
|
|
@@ -4411,10 +4418,17 @@ async function discoverSSRDataRoutes2(cwd, staticRoutes, isWatchMode, baseUrl, s
|
|
|
4411
4418
|
});
|
|
4412
4419
|
const entries = extractEntriesFromData(result, route.pattern, baseUrl, sitemapConfig);
|
|
4413
4420
|
if (entries.length > 0) {
|
|
4414
|
-
|
|
4421
|
+
return { pattern: route.pattern, entries };
|
|
4415
4422
|
}
|
|
4416
4423
|
}
|
|
4417
4424
|
} catch {}
|
|
4425
|
+
return null;
|
|
4426
|
+
});
|
|
4427
|
+
const results = await Promise.all(routePromises);
|
|
4428
|
+
for (const result of results) {
|
|
4429
|
+
if (result) {
|
|
4430
|
+
ssrDataRoutes.set(result.pattern, result.entries);
|
|
4431
|
+
}
|
|
4418
4432
|
}
|
|
4419
4433
|
}
|
|
4420
4434
|
return ssrDataRoutes;
|
|
@@ -4477,6 +4491,8 @@ function extractIdentifierFromItem(item, routePattern, sitemapConfig) {
|
|
|
4477
4491
|
if (sitemapConfig?.extractUrl) {
|
|
4478
4492
|
try {
|
|
4479
4493
|
const identifier2 = sitemapConfig.extractUrl(item, routePattern);
|
|
4494
|
+
if (identifier2 === false)
|
|
4495
|
+
return null;
|
|
4480
4496
|
if (identifier2)
|
|
4481
4497
|
return identifier2;
|
|
4482
4498
|
} catch (error) {
|
|
@@ -4732,6 +4748,8 @@ function extractIdentifier2(item, routePattern, rssConfig) {
|
|
|
4732
4748
|
if (rssConfig?.extractUrl) {
|
|
4733
4749
|
try {
|
|
4734
4750
|
const identifier = rssConfig.extractUrl(item, routePattern);
|
|
4751
|
+
if (identifier === false)
|
|
4752
|
+
return null;
|
|
4735
4753
|
if (identifier)
|
|
4736
4754
|
return String(identifier);
|
|
4737
4755
|
} catch (error) {
|
|
@@ -4790,24 +4808,28 @@ function createRSSItemFromData(item, routePattern, baseUrl, rssConfig) {
|
|
|
4790
4808
|
}
|
|
4791
4809
|
async function discoverRSSData(cwd, collections2, baseUrl, isWatchMode, rssConfig) {
|
|
4792
4810
|
const collectionsMap = new Map;
|
|
4793
|
-
|
|
4811
|
+
const collectionPromises = collections2.map(async (collection) => {
|
|
4794
4812
|
const items = await discoverCollectionFeedItems(cwd, collection, isWatchMode, baseUrl, rssConfig);
|
|
4795
|
-
|
|
4796
|
-
|
|
4813
|
+
return items.length > 0 ? { collection, items } : null;
|
|
4814
|
+
});
|
|
4815
|
+
const collectionResults = await Promise.all(collectionPromises);
|
|
4816
|
+
for (const result of collectionResults) {
|
|
4817
|
+
if (result) {
|
|
4818
|
+
collectionsMap.set(result.collection, result.items);
|
|
4797
4819
|
}
|
|
4798
4820
|
}
|
|
4799
4821
|
const ssrDataFeeds = new Map;
|
|
4800
4822
|
const bundledRoutes = globalThis.__REROUTE_ROUTES__;
|
|
4823
|
+
const { discoverRoutes: discoverRoutes2 } = await Promise.resolve().then(() => (init_discovery4(), exports_discovery));
|
|
4824
|
+
const { staticRoutes } = await discoverRoutes2(cwd, isWatchMode);
|
|
4801
4825
|
if (bundledRoutes && Array.isArray(bundledRoutes)) {
|
|
4802
|
-
const
|
|
4803
|
-
const { staticRoutes } = await discoverRoutes2(cwd, isWatchMode);
|
|
4804
|
-
for (const route of staticRoutes) {
|
|
4826
|
+
const routePromises = staticRoutes.map(async (route) => {
|
|
4805
4827
|
if (rssConfig?.excludeDiscovery?.some((excluded) => route.pattern.startsWith(excluded))) {
|
|
4806
|
-
|
|
4828
|
+
return null;
|
|
4807
4829
|
}
|
|
4808
4830
|
const bundledRoute = bundledRoutes.find((r) => r?.pattern === route.pattern);
|
|
4809
4831
|
if (!bundledRoute)
|
|
4810
|
-
|
|
4832
|
+
return null;
|
|
4811
4833
|
const ssr = bundledRoute?.ssr;
|
|
4812
4834
|
const dataFn = ssr?.data;
|
|
4813
4835
|
if (typeof dataFn === "function") {
|
|
@@ -4820,21 +4842,33 @@ async function discoverRSSData(cwd, collections2, baseUrl, isWatchMode, rssConfi
|
|
|
4820
4842
|
});
|
|
4821
4843
|
const items = extractRSSItemsFromData(result, route.pattern, baseUrl, rssConfig);
|
|
4822
4844
|
if (items.length > 0) {
|
|
4823
|
-
|
|
4845
|
+
return { pattern: route.pattern, items };
|
|
4824
4846
|
}
|
|
4825
4847
|
} catch {}
|
|
4826
4848
|
}
|
|
4849
|
+
return null;
|
|
4850
|
+
});
|
|
4851
|
+
const results = await Promise.all(routePromises);
|
|
4852
|
+
for (const result of results) {
|
|
4853
|
+
if (result) {
|
|
4854
|
+
ssrDataFeeds.set(result.pattern, result.items);
|
|
4855
|
+
}
|
|
4827
4856
|
}
|
|
4828
4857
|
} else {
|
|
4829
|
-
const
|
|
4830
|
-
const { staticRoutes } = await discoverRoutes2(cwd, isWatchMode);
|
|
4831
|
-
for (const route of staticRoutes) {
|
|
4858
|
+
const routePromises = staticRoutes.map(async (route) => {
|
|
4832
4859
|
if (rssConfig?.excludeDiscovery?.some((excluded) => route.pattern.startsWith(excluded))) {
|
|
4833
|
-
|
|
4860
|
+
return null;
|
|
4834
4861
|
}
|
|
4835
4862
|
const items = await discoverSSRDataFeedItems(cwd, route.pattern, route.path, isWatchMode, baseUrl, rssConfig);
|
|
4836
4863
|
if (items.length > 0) {
|
|
4837
|
-
|
|
4864
|
+
return { pattern: route.pattern, items };
|
|
4865
|
+
}
|
|
4866
|
+
return null;
|
|
4867
|
+
});
|
|
4868
|
+
const results = await Promise.all(routePromises);
|
|
4869
|
+
for (const result of results) {
|
|
4870
|
+
if (result) {
|
|
4871
|
+
ssrDataFeeds.set(result.pattern, result.items);
|
|
4838
4872
|
}
|
|
4839
4873
|
}
|
|
4840
4874
|
}
|
|
@@ -7045,9 +7079,12 @@ async function buildContentChunks(cwd, args = []) {
|
|
|
7045
7079
|
lines.push(" return m ? (m as Record<string, any>)[name] : undefined;");
|
|
7046
7080
|
lines.push("}");
|
|
7047
7081
|
lines.push("");
|
|
7048
|
-
|
|
7049
|
-
|
|
7050
|
-
|
|
7082
|
+
const writes = [];
|
|
7083
|
+
writes.push({
|
|
7084
|
+
path: join9(cwd, OUTPUT_CONTENT_TS),
|
|
7085
|
+
content: lines.join(`
|
|
7086
|
+
`)
|
|
7087
|
+
});
|
|
7051
7088
|
const collectionsSet = new Set(results.map((r) => r.collection));
|
|
7052
7089
|
for (const collection of collectionsSet) {
|
|
7053
7090
|
const items = results.filter((r) => r.collection === collection);
|
|
@@ -7068,10 +7105,16 @@ async function buildContentChunks(cwd, args = []) {
|
|
|
7068
7105
|
js.push(" return byName[name];");
|
|
7069
7106
|
js.push("}");
|
|
7070
7107
|
js.push("");
|
|
7071
|
-
|
|
7072
|
-
`)
|
|
7073
|
-
|
|
7108
|
+
writes.push({
|
|
7109
|
+
path: join9(cwd, OUTPUT_COLLECTIONS_DIR, `${collection}.js`),
|
|
7110
|
+
content: js.join(`
|
|
7111
|
+
`)
|
|
7112
|
+
});
|
|
7074
7113
|
}
|
|
7114
|
+
await Promise.all(writes.map(async ({ path: path3, content: content2 }) => {
|
|
7115
|
+
await Bun.write(path3, content2);
|
|
7116
|
+
console.log(`[reroute/content] wrote ${path3}`);
|
|
7117
|
+
}));
|
|
7075
7118
|
}
|
|
7076
7119
|
async function buildSearchIndex(cwd, config2, args = []) {
|
|
7077
7120
|
const searchConfig = config2.search;
|
|
@@ -7665,30 +7708,54 @@ async function gen(args) {
|
|
|
7665
7708
|
console.log(`
|
|
7666
7709
|
[reroute/watch] \uD83C\uDFAF Initializing advanced watch mode...`);
|
|
7667
7710
|
let isBuilding = false;
|
|
7668
|
-
let
|
|
7669
|
-
|
|
7711
|
+
let pendingBuild = null;
|
|
7712
|
+
let skipCurrentBuild = false;
|
|
7713
|
+
function scheduleBuild(buildFn, reason) {
|
|
7670
7714
|
if (isBuilding) {
|
|
7671
|
-
|
|
7672
|
-
|
|
7715
|
+
if (!skipCurrentBuild) {
|
|
7716
|
+
skipCurrentBuild = true;
|
|
7717
|
+
console.log(`[reroute/watch] ⏭️ Superseding current build with: ${reason}`);
|
|
7718
|
+
}
|
|
7719
|
+
pendingBuild = { fn: buildFn, reason };
|
|
7673
7720
|
return;
|
|
7674
7721
|
}
|
|
7722
|
+
if (pendingBuild) {
|
|
7723
|
+
console.log(`[reroute/watch] ⏭️ Replacing queued build with: ${reason}`);
|
|
7724
|
+
}
|
|
7725
|
+
pendingBuild = { fn: buildFn, reason };
|
|
7726
|
+
processPendingBuild();
|
|
7727
|
+
}
|
|
7728
|
+
async function processPendingBuild() {
|
|
7729
|
+
if (!pendingBuild || isBuilding)
|
|
7730
|
+
return;
|
|
7731
|
+
const { fn: buildFn, reason } = pendingBuild;
|
|
7732
|
+
pendingBuild = null;
|
|
7733
|
+
skipCurrentBuild = false;
|
|
7675
7734
|
isBuilding = true;
|
|
7676
7735
|
const startTime = performance.now();
|
|
7677
7736
|
await notifyRebuilding();
|
|
7678
7737
|
try {
|
|
7679
7738
|
await buildFn();
|
|
7739
|
+
if (skipCurrentBuild) {
|
|
7740
|
+
console.log(`[reroute/watch] ⏭️ Build superseded, skipping reload: ${reason}`);
|
|
7741
|
+
return;
|
|
7742
|
+
}
|
|
7680
7743
|
const duration = ((performance.now() - startTime) / 1000).toFixed(2);
|
|
7681
7744
|
console.log(`[reroute/watch] ✓ Rebuild complete in ${duration}s (${reason})`);
|
|
7745
|
+
await Bun.sleep(200);
|
|
7746
|
+
if (skipCurrentBuild || pendingBuild) {
|
|
7747
|
+
console.log(`[reroute/watch] ⏭️ Skipping reload, new build pending`);
|
|
7748
|
+
return;
|
|
7749
|
+
}
|
|
7682
7750
|
await notifyReload(reason);
|
|
7683
7751
|
} catch (err) {
|
|
7684
|
-
|
|
7752
|
+
if (!skipCurrentBuild) {
|
|
7753
|
+
console.error(`[reroute/watch] ✗ Build failed (${reason}):`, err);
|
|
7754
|
+
}
|
|
7685
7755
|
} finally {
|
|
7686
7756
|
isBuilding = false;
|
|
7687
|
-
if (
|
|
7688
|
-
|
|
7689
|
-
queuedBuild = null;
|
|
7690
|
-
console.log("[reroute/watch] \uD83D\uDD04 Processing queued build...");
|
|
7691
|
-
await enqueueBuild(nextBuild, "queued");
|
|
7757
|
+
if (pendingBuild) {
|
|
7758
|
+
setTimeout(() => processPendingBuild(), 50);
|
|
7692
7759
|
}
|
|
7693
7760
|
}
|
|
7694
7761
|
}
|
|
@@ -7709,7 +7776,7 @@ async function gen(args) {
|
|
|
7709
7776
|
try {
|
|
7710
7777
|
configWatcher = watch(configPath, () => {
|
|
7711
7778
|
mediumDebounce(() => {
|
|
7712
|
-
|
|
7779
|
+
scheduleBuild(async () => {
|
|
7713
7780
|
console.log("[reroute/watch] \uD83D\uDCDD Config changed, full rebuild...");
|
|
7714
7781
|
await generate(cwd, args, { clean: true, writeStubs: false });
|
|
7715
7782
|
await buildTailwindIfConfigured(cwd, isProd);
|
|
@@ -7730,7 +7797,7 @@ async function gen(args) {
|
|
|
7730
7797
|
try {
|
|
7731
7798
|
const envWatcher = watch(envPath, () => {
|
|
7732
7799
|
mediumDebounce(() => {
|
|
7733
|
-
|
|
7800
|
+
scheduleBuild(async () => {
|
|
7734
7801
|
console.log(`[reroute/watch] \uD83D\uDD10 ${envFile} changed`);
|
|
7735
7802
|
await buildEntrypointBundle(cwd, args);
|
|
7736
7803
|
}, `${envFile} change`);
|
|
@@ -7765,7 +7832,7 @@ async function gen(args) {
|
|
|
7765
7832
|
if (!/\.(tsx|ts|jsx|js)$/.test(name))
|
|
7766
7833
|
return;
|
|
7767
7834
|
slowDebounce(() => {
|
|
7768
|
-
|
|
7835
|
+
scheduleBuild(async () => {
|
|
7769
7836
|
console.log(`[reroute/watch] \uD83D\uDD27 Package changed: ${name}`);
|
|
7770
7837
|
await generate(cwd, args, {
|
|
7771
7838
|
clean: false,
|
|
@@ -7783,7 +7850,7 @@ async function gen(args) {
|
|
|
7783
7850
|
return;
|
|
7784
7851
|
const name = String(filename);
|
|
7785
7852
|
quickDebounce(() => {
|
|
7786
|
-
|
|
7853
|
+
scheduleBuild(async () => {
|
|
7787
7854
|
const isContentFile = name.includes("/content/") || name.includes("\\content\\");
|
|
7788
7855
|
const isMarkdown = /\.(md|mdx)$/.test(name);
|
|
7789
7856
|
const isRoute = /\.(tsx|ts)$/.test(name) && !isContentFile;
|
|
@@ -7840,7 +7907,7 @@ async function gen(args) {
|
|
|
7840
7907
|
if (!/\.(tsx|ts|jsx|js|html|md|mdx|css)$/.test(name))
|
|
7841
7908
|
return;
|
|
7842
7909
|
mediumDebounce(() => {
|
|
7843
|
-
|
|
7910
|
+
scheduleBuild(async () => {
|
|
7844
7911
|
console.log(`[reroute/watch] \uD83D\uDCE6 Client changed: ${name}`);
|
|
7845
7912
|
if (name.endsWith(".ts") || name.endsWith(".tsx")) {
|
|
7846
7913
|
console.log("[reroute/watch] ├─ Rebuilding bundle...");
|
|
@@ -105772,7 +105839,7 @@ async function getVersionString2() {
|
|
|
105772
105839
|
}
|
|
105773
105840
|
async function getVersion2() {
|
|
105774
105841
|
if (true) {
|
|
105775
|
-
return "0.
|
|
105842
|
+
return "0.42.0";
|
|
105776
105843
|
}
|
|
105777
105844
|
const possiblePaths = [
|
|
105778
105845
|
path3.join(import.meta.dir, "../../../package.json"),
|
|
@@ -105789,10 +105856,10 @@ async function getVersion2() {
|
|
|
105789
105856
|
}
|
|
105790
105857
|
async function getCommit2() {
|
|
105791
105858
|
if (true) {
|
|
105792
|
-
return "
|
|
105859
|
+
return "7dd4c06";
|
|
105793
105860
|
}
|
|
105794
105861
|
return "dev";
|
|
105795
105862
|
}
|
|
105796
105863
|
main();
|
|
105797
105864
|
|
|
105798
|
-
//# debugId=
|
|
105865
|
+
//# debugId=449323AA472C1CD464756E2164756E21
|