reroute-js 1.0.0-alpha.13 → 1.0.0-alpha.15
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 +112 -67
- package/cli/bin.js.map +7 -7
- package/cli/index.d.ts +1 -1
- package/cli/index.js +28 -11
- package/cli/index.js.map +3 -3
- 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/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/terminal-ui.d.ts +1 -1
- package/cli/src/commands/lib/theme.d.ts +5 -4
- package/cli/src/commands/lib/theme.d.ts.map +1 -1
- package/cli/src/commands/lib/version.d.ts +1 -1
- package/cli/src/commands/lib/watch.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 -29
- 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 +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/i18n/catalog.d.ts +1 -1
- package/core/src/i18n/discover.d.ts +1 -1
- package/core/src/i18n/index.d.ts +1 -1
- package/core/src/i18n/messages.d.ts +1 -1
- package/core/src/i18n/negotiate.d.ts +1 -1
- package/core/src/i18n/pathname.d.ts +1 -1
- package/core/src/i18n/resolve.d.ts +1 -1
- package/core/src/i18n/types.d.ts +1 -1
- package/core/src/index.d.ts +1 -1
- package/core/src/llms/discovery.d.ts +1 -1
- package/core/src/llms/extractor.d.ts +6 -1
- package/core/src/llms/extractor.d.ts.map +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 +2 -2
- package/core/src/llms/index.d.ts.map +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/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/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/cleanup.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/content-path.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/route-match.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 +4 -6
- package/core/src/ssr/lib/styles.d.ts.map +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 +69 -64
- package/elysia/index.js.map +7 -7
- 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/i18n.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/routes/artifacts.d.ts +1 -1
- package/elysia/src/routes/artifacts.d.ts.map +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/liveReloadClient.d.ts +1 -1
- package/elysia/src/routes/llms.d.ts +1 -1
- package/elysia/src/routes/og.d.ts +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 +1 -1
- package/elysia/src/routes/search.d.ts +1 -1
- package/elysia/src/routes/sitemap.d.ts +1 -1
- package/elysia/src/routes/ssr.d.ts +1 -1
- package/elysia/src/routes/static.d.ts +1 -1
- package/elysia/src/routes/themeCssRefresh.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/i18n/LocaleProvider.d.ts +1 -1
- package/react/src/i18n/helpers.d.ts +1 -1
- package/react/src/i18n/index.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 +4 -4
- 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/core/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* reroute-js v1.0.0-alpha.
|
|
2
|
+
* reroute-js v1.0.0-alpha.15
|
|
3
3
|
*
|
|
4
4
|
* @license MIT
|
|
5
5
|
* @copyright 2026 stewones <hi@stewan.io>
|
|
@@ -3497,26 +3497,45 @@ var init_scripts = __esm(() => {
|
|
|
3497
3497
|
|
|
3498
3498
|
// packages/core/src/ssr/lib/styles.ts
|
|
3499
3499
|
import { createHash } from "node:crypto";
|
|
3500
|
-
|
|
3501
|
-
|
|
3502
|
-
|
|
3503
|
-
|
|
3504
|
-
|
|
3505
|
-
}
|
|
3506
|
-
|
|
3507
|
-
|
|
3508
|
-
|
|
3509
|
-
|
|
3510
|
-
|
|
3511
|
-
|
|
3500
|
+
import { readdirSync } from "node:fs";
|
|
3501
|
+
function themeCssHash(css) {
|
|
3502
|
+
return createHash("sha1").update(css).digest("hex").slice(0, 8);
|
|
3503
|
+
}
|
|
3504
|
+
function themeCssFileName(css) {
|
|
3505
|
+
return `index.${themeCssHash(css)}.css`;
|
|
3506
|
+
}
|
|
3507
|
+
function themeLink(href) {
|
|
3508
|
+
return `<link rel="stylesheet" href="${href}" data-reroute="theme">`;
|
|
3509
|
+
}
|
|
3510
|
+
function bundlesDirs(clientDir) {
|
|
3511
|
+
return [
|
|
3512
|
+
join(clientDir, "..", ".reroute", "bundles"),
|
|
3513
|
+
join(clientDir, "..", "..", ".reroute", "bundles"),
|
|
3514
|
+
join(clientDir, "..", "..", "..", ".reroute", "bundles"),
|
|
3515
|
+
join(clientDir, "..", "..", "..", "..", ".reroute", "bundles")
|
|
3512
3516
|
];
|
|
3513
|
-
|
|
3514
|
-
|
|
3515
|
-
|
|
3516
|
-
|
|
3517
|
-
|
|
3517
|
+
}
|
|
3518
|
+
async function readFileIfExists(path) {
|
|
3519
|
+
if (!await Bun.file(path).exists())
|
|
3520
|
+
return "";
|
|
3521
|
+
const { readFileSync } = await import("node:fs");
|
|
3522
|
+
return readFileSync(path, "utf-8");
|
|
3523
|
+
}
|
|
3524
|
+
async function readThemeFromBundles(clientDir) {
|
|
3525
|
+
for (const dir of bundlesDirs(clientDir)) {
|
|
3526
|
+
try {
|
|
3527
|
+
const hashed = readdirSync(dir).find((name) => HASHED_THEME_RE.test(name));
|
|
3528
|
+
if (hashed) {
|
|
3529
|
+
const css2 = await readFileIfExists(join(dir, hashed));
|
|
3530
|
+
if (css2)
|
|
3531
|
+
return { css: css2, href: `/bundles/${hashed}` };
|
|
3532
|
+
}
|
|
3533
|
+
const css = await readFileIfExists(join(dir, "index.css"));
|
|
3534
|
+
if (css)
|
|
3535
|
+
return { css, href: `/bundles/${themeCssFileName(css)}` };
|
|
3536
|
+
} catch {}
|
|
3518
3537
|
}
|
|
3519
|
-
return
|
|
3538
|
+
return null;
|
|
3520
3539
|
}
|
|
3521
3540
|
function bundledThemeCss() {
|
|
3522
3541
|
return globalThis.__REROUTE_THEME_CSS__ || "";
|
|
@@ -3524,18 +3543,26 @@ function bundledThemeCss() {
|
|
|
3524
3543
|
async function inlineThemeCSS(clientDir, isWatchMode = false) {
|
|
3525
3544
|
try {
|
|
3526
3545
|
if (isWatchMode) {
|
|
3527
|
-
return themeLink(
|
|
3546
|
+
return themeLink(`${THEME_CSS_WATCH_HREF}?t=${Date.now()}`);
|
|
3528
3547
|
}
|
|
3529
|
-
const
|
|
3548
|
+
const fromDisk = await readThemeFromBundles(clientDir);
|
|
3549
|
+
const css = bundledThemeCss() || fromDisk?.css;
|
|
3530
3550
|
if (!css)
|
|
3531
3551
|
return "";
|
|
3532
|
-
|
|
3552
|
+
if (bundledThemeCss()) {
|
|
3553
|
+
return themeLink(`/bundles/${themeCssFileName(css)}`);
|
|
3554
|
+
}
|
|
3555
|
+
if (fromDisk)
|
|
3556
|
+
return themeLink(fromDisk.href);
|
|
3557
|
+
return "";
|
|
3533
3558
|
} catch {
|
|
3534
3559
|
return "";
|
|
3535
3560
|
}
|
|
3536
3561
|
}
|
|
3537
|
-
var
|
|
3538
|
-
var init_styles = () => {
|
|
3562
|
+
var THEME_CSS_WATCH_HREF = "/bundles/index.css", HASHED_THEME_RE;
|
|
3563
|
+
var init_styles = __esm(() => {
|
|
3564
|
+
HASHED_THEME_RE = /^index\.[a-z0-9]{8,}\.css$/i;
|
|
3565
|
+
});
|
|
3539
3566
|
|
|
3540
3567
|
// packages/core/src/ssr/lib/setup.ts
|
|
3541
3568
|
async function performSSRSetup(options, streaming = false) {
|
|
@@ -4050,6 +4077,9 @@ Formats: .txt | .md | Accept: text/plain | Accept: text/markdown`;
|
|
|
4050
4077
|
// packages/core/src/llms/extractor.ts
|
|
4051
4078
|
import { pathToFileURL as pathToFileURL5 } from "node:url";
|
|
4052
4079
|
import { renderToStaticMarkup } from "react-dom/server";
|
|
4080
|
+
function stripLayoutChrome(html2) {
|
|
4081
|
+
return html2.replace(/<nav[\s\S]*?<\/nav>/gi, "").replace(/<header[\s\S]*?<\/header>/gi, "").replace(/<aside[\s\S]*?<\/aside>/gi, "");
|
|
4082
|
+
}
|
|
4053
4083
|
function shouldExcludeRoute(pathname, excludeRoutes) {
|
|
4054
4084
|
if (!excludeRoutes || excludeRoutes.length === 0) {
|
|
4055
4085
|
return false;
|
|
@@ -4172,10 +4202,7 @@ async function extractSSRContent(pathname, rootComponent, clientDir, cwd, isWatc
|
|
|
4172
4202
|
if (appDivMatch) {
|
|
4173
4203
|
contentHtml = appDivMatch[1];
|
|
4174
4204
|
}
|
|
4175
|
-
contentHtml = contentHtml
|
|
4176
|
-
contentHtml = contentHtml.replace(/<footer[\s\S]*?<\/footer>/gi, "");
|
|
4177
|
-
contentHtml = contentHtml.replace(/<header[\s\S]*?<\/header>/gi, "");
|
|
4178
|
-
contentHtml = contentHtml.replace(/<aside[\s\S]*?<\/aside>/gi, "");
|
|
4205
|
+
contentHtml = stripLayoutChrome(contentHtml);
|
|
4179
4206
|
return {
|
|
4180
4207
|
title: extractTitle(html2),
|
|
4181
4208
|
body: stripHtmlTags(contentHtml),
|
|
@@ -6689,6 +6716,7 @@ export {
|
|
|
6689
6716
|
statusCache,
|
|
6690
6717
|
stripEnd,
|
|
6691
6718
|
stripHtmlTags,
|
|
6719
|
+
stripLayoutChrome,
|
|
6692
6720
|
stripStart,
|
|
6693
6721
|
takeSSRContentResults,
|
|
6694
6722
|
toBytes,
|
|
@@ -6696,4 +6724,4 @@ export {
|
|
|
6696
6724
|
toPromise
|
|
6697
6725
|
};
|
|
6698
6726
|
|
|
6699
|
-
//# debugId=
|
|
6727
|
+
//# debugId=7A911EF5A1EB025C64756E2164756E21
|