ugly-app 0.1.1047 → 0.1.1049
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/dist/cli/buildWorkers.d.ts.map +1 -1
- package/dist/cli/buildWorkers.js +36 -7
- package/dist/cli/buildWorkers.js.map +1 -1
- package/dist/cli/version.d.ts +1 -1
- package/dist/cli/version.js +1 -1
- package/dist/cli/viteAssetUrl.d.ts +6 -0
- package/dist/cli/viteAssetUrl.d.ts.map +1 -0
- package/dist/cli/viteAssetUrl.js +51 -0
- package/dist/cli/viteAssetUrl.js.map +1 -0
- package/dist/server/adapter/workers/edgeCache.d.ts +12 -1
- package/dist/server/adapter/workers/edgeCache.d.ts.map +1 -1
- package/dist/server/adapter/workers/edgeCache.js +20 -6
- package/dist/server/adapter/workers/edgeCache.js.map +1 -1
- package/dist/server/adapter/workers/seo.d.ts +19 -0
- package/dist/server/adapter/workers/seo.d.ts.map +1 -0
- package/dist/server/adapter/workers/seo.js +74 -0
- package/dist/server/adapter/workers/seo.js.map +1 -0
- package/dist/server/adapter/workers/wrapWithAssets.d.ts.map +1 -1
- package/dist/server/adapter/workers/wrapWithAssets.js +45 -18
- package/dist/server/adapter/workers/wrapWithAssets.js.map +1 -1
- package/dist/shared/Router.d.ts +8 -0
- package/dist/shared/Router.d.ts.map +1 -1
- package/dist/shared/Router.js +1 -0
- package/dist/shared/Router.js.map +1 -1
- package/package.json +1 -1
- package/src/cli/buildWorkers.ts +42 -8
- package/src/cli/version.ts +1 -1
- package/src/cli/viteAssetUrl.test.ts +53 -0
- package/src/cli/viteAssetUrl.ts +59 -0
- package/src/server/adapter/workers/edgeCache.ts +28 -5
- package/src/server/adapter/workers/seo.test.ts +131 -0
- package/src/server/adapter/workers/seo.ts +78 -0
- package/src/server/adapter/workers/wrapWithAssets.ts +41 -18
- package/src/shared/Router.ts +9 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildWorkers.d.ts","sourceRoot":"","sources":["../../src/cli/buildWorkers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;
|
|
1
|
+
{"version":3,"file":"buildWorkers.d.ts","sourceRoot":"","sources":["../../src/cli/buildWorkers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AA4CH,UAAU,mBAAmB;IAC3B,8CAA8C;IAC9C,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,4DAA4D;IAC5D,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,uDAAuD;IACvD,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,6DAA6D;IAC7D,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B;AAED,UAAU,kBAAkB;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,eAAe,CACnC,IAAI,GAAE,mBAAwB,GAC7B,OAAO,CAAC,kBAAkB,CAAC,CA2P7B;AAkDD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,IAAI,GACP,MAAM,CAuER;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,GAAG,IAAI,GACP,MAAM,CA0CR;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAgC3E;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GAAG,IAAI,GACrB,MAAM,CAOR;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GAAG,IAAI,GACrB,MAAM,GAAG,IAAI,CAoBf;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GAAG,IAAI,GACrB,IAAI,CAkCN"}
|
package/dist/cli/buildWorkers.js
CHANGED
|
@@ -26,6 +26,7 @@
|
|
|
26
26
|
* runs after esbuild.
|
|
27
27
|
*/
|
|
28
28
|
import { build } from 'esbuild';
|
|
29
|
+
import { viteAssetUrl } from './viteAssetUrl.js';
|
|
29
30
|
import { existsSync } from 'fs';
|
|
30
31
|
import { copyFile, mkdir, readFile, readdir, rm, stat, writeFile, } from 'fs/promises';
|
|
31
32
|
import path from 'path';
|
|
@@ -197,6 +198,9 @@ export async function runBuildWorkers(opts = {}) {
|
|
|
197
198
|
sourcemap: false,
|
|
198
199
|
logLevel: 'info',
|
|
199
200
|
external: ['cloudflare:*', 'node:*'],
|
|
201
|
+
// Server-rendered pages import images; resolve each to the exact URL Vite
|
|
202
|
+
// emitted, so the server's `src` matches the browser's and hydration holds.
|
|
203
|
+
plugins: [viteAssetPlugin(clientDir)],
|
|
200
204
|
// React (and much of npm) ships a dev and a prod build behind this check.
|
|
201
205
|
// Without the define, esbuild can't fold the branch and bundles BOTH — for
|
|
202
206
|
// an SSR worker that's ~1.3 MB of development-only React. This only rewrites
|
|
@@ -316,24 +320,32 @@ export function injectDefaultMeta(html, cfg) {
|
|
|
316
320
|
if (!/name=["']theme-color["']/.test(html)) {
|
|
317
321
|
tags.push(`<meta name="theme-color" content="${esc(cfg?.themeColor ?? '#000000')}">`);
|
|
318
322
|
}
|
|
319
|
-
// ── OpenGraph defaults — only when the app declares metadata
|
|
323
|
+
// ── OpenGraph defaults — only when the app declares metadata, and only for
|
|
324
|
+
// tags its index.html doesn't already carry. An app that writes its own
|
|
325
|
+
// description or og:image must not get a second one: crawlers disagree on
|
|
326
|
+
// which copy wins, and the default image is the icon, often a relative path.
|
|
320
327
|
if (cfg) {
|
|
328
|
+
const has = (attr, key) => new RegExp(`<meta\\b[^>]*\\b${attr}=["']${key}["']`, 'i').test(html);
|
|
321
329
|
const title = cfg.title ?? cfg.name;
|
|
322
330
|
const description = cfg.shortDescription ?? cfg.description;
|
|
323
331
|
const image = cfg.image ?? cfg.icon;
|
|
324
332
|
const og = [];
|
|
325
|
-
if (title)
|
|
333
|
+
if (title && !has('property', 'og:title'))
|
|
326
334
|
og.push(`<meta property="og:title" content="${esc(title)}">`);
|
|
327
335
|
if (description) {
|
|
328
|
-
|
|
329
|
-
|
|
336
|
+
if (!has('name', 'description'))
|
|
337
|
+
og.push(`<meta name="description" content="${esc(description)}">`);
|
|
338
|
+
if (!has('property', 'og:description'))
|
|
339
|
+
og.push(`<meta property="og:description" content="${esc(description)}">`);
|
|
330
340
|
}
|
|
331
|
-
if (image) {
|
|
341
|
+
if (image && !has('property', 'og:image')) {
|
|
332
342
|
og.push(`<meta property="og:image" content="${esc(image)}">`);
|
|
333
|
-
|
|
343
|
+
if (!has('name', 'twitter:card'))
|
|
344
|
+
og.push(`<meta name="twitter:card" content="summary_large_image">`);
|
|
334
345
|
}
|
|
335
346
|
if (og.length) {
|
|
336
|
-
|
|
347
|
+
if (!has('property', 'og:type'))
|
|
348
|
+
og.push(`<meta property="og:type" content="website">`);
|
|
337
349
|
tags.push(...og);
|
|
338
350
|
}
|
|
339
351
|
}
|
|
@@ -593,4 +605,21 @@ async function assertNoNodeOnlyDeps(metaFile) {
|
|
|
593
605
|
`\n\nThese packages don't run on workerd. Move the importer behind a runtime check, or use the framework's adapter abstractions.`);
|
|
594
606
|
}
|
|
595
607
|
}
|
|
608
|
+
/**
|
|
609
|
+
* esbuild plugin: an image import in the Worker bundle becomes the URL Vite
|
|
610
|
+
* gave the same file in the client build (see `viteAssetUrl`). Without it the
|
|
611
|
+
* Worker build fails on the first page that imports a `.webp`, and a naive
|
|
612
|
+
* `file` loader would invent a different hash than the browser uses.
|
|
613
|
+
*/
|
|
614
|
+
function viteAssetPlugin(clientDir) {
|
|
615
|
+
return {
|
|
616
|
+
name: 'ugly-vite-asset-url',
|
|
617
|
+
setup(b) {
|
|
618
|
+
b.onLoad({ filter: /\.(?:png|jpe?g|webp|avif|gif)$/i }, (args) => ({
|
|
619
|
+
contents: `export default ${JSON.stringify(viteAssetUrl(args.path, clientDir))};`,
|
|
620
|
+
loader: 'js',
|
|
621
|
+
}));
|
|
622
|
+
},
|
|
623
|
+
};
|
|
624
|
+
}
|
|
596
625
|
//# sourceMappingURL=buildWorkers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildWorkers.js","sourceRoot":"","sources":["../../src/cli/buildWorkers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"buildWorkers.js","sourceRoot":"","sources":["../../src/cli/buildWorkers.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const CLI_VERSION = "0.1.
|
|
1
|
+
export declare const CLI_VERSION = "0.1.1049";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/cli/version.js
CHANGED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The URL Vite gave `sourceFile` in the client build rooted at `clientDir`
|
|
3
|
+
* (e.g. `dist/client`), or throws if the build contains no identical file.
|
|
4
|
+
*/
|
|
5
|
+
export declare function viteAssetUrl(sourceFile: string, clientDir: string): string;
|
|
6
|
+
//# sourceMappingURL=viteAssetUrl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viteAssetUrl.d.ts","sourceRoot":"","sources":["../../src/cli/viteAssetUrl.ts"],"names":[],"mappings":"AA2BA;;;GAGG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CA2B1E"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
// src/cli/viteAssetUrl.ts
|
|
2
|
+
//
|
|
3
|
+
// Server-rendered pages import images (`import hero from './hero.webp'`). Vite
|
|
4
|
+
// turns that into a hashed URL for the browser; the Worker is bundled by
|
|
5
|
+
// esbuild, which has no idea what URL Vite picked. For hydration to work the two
|
|
6
|
+
// must be byte-identical — a different `src` on the server is a mismatch, and
|
|
7
|
+
// React throws the server's HTML away.
|
|
8
|
+
//
|
|
9
|
+
// So the Worker build resolves each image import to the file Vite ACTUALLY
|
|
10
|
+
// emitted: same name, same extension, identical bytes. Content, not just name,
|
|
11
|
+
// so two different `logo.png`s in different folders can't be confused.
|
|
12
|
+
import { readdirSync, readFileSync, statSync } from 'node:fs';
|
|
13
|
+
import path from 'node:path';
|
|
14
|
+
/** Vite's default `build.assetsInlineLimit`: smaller files become data: URIs. */
|
|
15
|
+
const INLINE_LIMIT = 4096;
|
|
16
|
+
const MIME = {
|
|
17
|
+
'.png': 'image/png',
|
|
18
|
+
'.jpg': 'image/jpeg',
|
|
19
|
+
'.jpeg': 'image/jpeg',
|
|
20
|
+
'.webp': 'image/webp',
|
|
21
|
+
'.avif': 'image/avif',
|
|
22
|
+
'.gif': 'image/gif',
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* The URL Vite gave `sourceFile` in the client build rooted at `clientDir`
|
|
26
|
+
* (e.g. `dist/client`), or throws if the build contains no identical file.
|
|
27
|
+
*/
|
|
28
|
+
export function viteAssetUrl(sourceFile, clientDir) {
|
|
29
|
+
const bytes = readFileSync(sourceFile);
|
|
30
|
+
const ext = path.extname(sourceFile).toLowerCase();
|
|
31
|
+
const name = path.basename(sourceFile, path.extname(sourceFile));
|
|
32
|
+
const assetsDir = path.join(clientDir, 'assets');
|
|
33
|
+
const candidates = readdirSync(assetsDir).filter((f) => f.startsWith(`${name}-`) && path.extname(f).toLowerCase() === ext);
|
|
34
|
+
for (const f of candidates) {
|
|
35
|
+
const full = path.join(assetsDir, f);
|
|
36
|
+
if (statSync(full).size !== bytes.length)
|
|
37
|
+
continue;
|
|
38
|
+
if (readFileSync(full).equals(bytes))
|
|
39
|
+
return `/assets/${f}`;
|
|
40
|
+
}
|
|
41
|
+
// Vite inlines small raster images as base64 data URIs rather than emitting
|
|
42
|
+
// a file; mirror that. (SVG is inlined in a different, URL-encoded form, so
|
|
43
|
+
// it's not handled here — it will throw below and needs an explicit look.)
|
|
44
|
+
if (bytes.length < INLINE_LIMIT && MIME[ext]) {
|
|
45
|
+
return `data:${MIME[ext]};base64,${bytes.toString('base64')}`;
|
|
46
|
+
}
|
|
47
|
+
throw new Error(`[build:workers] ${sourceFile} is imported by a server-rendered page, but ` +
|
|
48
|
+
`the client build (${assetsDir}) has no identical file. Build the client ` +
|
|
49
|
+
`first, or check that the import resolves to the same file in both builds.`);
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=viteAssetUrl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viteAssetUrl.js","sourceRoot":"","sources":["../../src/cli/viteAssetUrl.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,EAAE;AACF,+EAA+E;AAC/E,yEAAyE;AACzE,iFAAiF;AACjF,8EAA8E;AAC9E,uCAAuC;AACvC,EAAE;AACF,2EAA2E;AAC3E,+EAA+E;AAC/E,uEAAuE;AAEvE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC9D,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,iFAAiF;AACjF,MAAM,YAAY,GAAG,IAAI,CAAC;AAE1B,MAAM,IAAI,GAA2B;IACnC,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,YAAY;IACpB,OAAO,EAAE,YAAY;IACrB,OAAO,EAAE,YAAY;IACrB,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,WAAW;CACpB,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,UAAkB,EAAE,SAAiB;IAChE,MAAM,KAAK,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;IACvC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;IACnD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACjD,MAAM,UAAU,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,MAAM,CAC9C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,GAAG,CACzE,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QACrC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,MAAM;YAAE,SAAS;QACnD,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,OAAO,WAAW,CAAC,EAAE,CAAC;IAC9D,CAAC;IAED,4EAA4E;IAC5E,4EAA4E;IAC5E,2EAA2E;IAC3E,IAAI,KAAK,CAAC,MAAM,GAAG,YAAY,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7C,OAAO,QAAQ,IAAI,CAAC,GAAG,CAAC,WAAW,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;IAChE,CAAC;IAED,MAAM,IAAI,KAAK,CACb,mBAAmB,UAAU,8CAA8C;QACzE,qBAAqB,SAAS,4CAA4C;QAC1E,2EAA2E,CAC9E,CAAC;AACJ,CAAC"}
|
|
@@ -20,6 +20,14 @@ export interface EdgeCacheDecision {
|
|
|
20
20
|
* only ever stores one entry per document.
|
|
21
21
|
*/
|
|
22
22
|
canonicalPath?: string;
|
|
23
|
+
/**
|
|
24
|
+
* The URL carries ad/analytics params (`utm_*`, `fbclid`, …). Render the SSR
|
|
25
|
+
* document anyway, but UNCACHED and WITHOUT redirecting: those params are read
|
|
26
|
+
* by the page's own attribution and by ad pixels, so a redirect that strips
|
|
27
|
+
* them silently breaks every campaign pointed at the page. A crawler never
|
|
28
|
+
* sends them, so the clean URL is still the one that gets cached.
|
|
29
|
+
*/
|
|
30
|
+
ssrUncached?: boolean;
|
|
23
31
|
}
|
|
24
32
|
/**
|
|
25
33
|
* Decide whether this request may be edge-cached, at what TTL, and under which
|
|
@@ -33,7 +41,10 @@ export interface EdgeCacheDecision {
|
|
|
33
41
|
* • an UNDECLARED, non-tracking param ⇒ not cacheable — falls through to the
|
|
34
42
|
* uncached shell with the param intact, so a page that reads an ad-hoc param
|
|
35
43
|
* client-side still works and junk can't fill the cache;
|
|
36
|
-
* • tracking params
|
|
44
|
+
* • tracking params ⇒ `ssrUncached`: rendered, not cached, NOT redirected —
|
|
45
|
+
* a redirect would strip the params before the page and the ad pixels read
|
|
46
|
+
* them;
|
|
47
|
+
* • unsorted allowlisted params or a trailing slash ⇒ `canonicalPath` differs
|
|
37
48
|
* from the request, and the caller redirects to collapse them onto one entry.
|
|
38
49
|
*/
|
|
39
50
|
export declare function edgeCacheDecision(request: Request, url: URL, pages: PageRegistry | undefined, env: Record<string, unknown>): EdgeCacheDecision;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edgeCache.d.ts","sourceRoot":"","sources":["../../../../src/server/adapter/workers/edgeCache.ts"],"names":[],"mappings":"AAyBA,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,cAAc,EACpB,MAAM,2BAA2B,CAAC;AAEnC;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,iBAAiB,CAAC;AAClD,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;AAqB/C,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,kDAAkD;IAClD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"edgeCache.d.ts","sourceRoot":"","sources":["../../../../src/server/adapter/workers/edgeCache.ts"],"names":[],"mappings":"AAyBA,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,cAAc,EACpB,MAAM,2BAA2B,CAAC;AAEnC;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,iBAAiB,CAAC;AAClD,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;AAqB/C,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,kDAAkD;IAClD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAID;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,YAAY,GAAG,SAAS,EAC/B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC3B,iBAAiB,CA8CnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,GAAE,MAAM,EAAO,GAAG,MAAM,CAK5E"}
|
|
@@ -31,9 +31,9 @@ import { DEFAULT_SSR_CACHE_TIMEOUT, parseUrl, } from '../../../shared/Router.js'
|
|
|
31
31
|
*/
|
|
32
32
|
export const CACHE_STATUS_HEADER = 'x-ugly-cache';
|
|
33
33
|
/**
|
|
34
|
-
* Ad/analytics params that never change the rendered document.
|
|
35
|
-
*
|
|
36
|
-
* per click.
|
|
34
|
+
* Ad/analytics params that never change the rendered document. A URL carrying
|
|
35
|
+
* them is rendered but not cached (`ssrUncached`), so a campaign link neither
|
|
36
|
+
* mints a cache entry per click nor loses its params to a redirect.
|
|
37
37
|
*/
|
|
38
38
|
const TRACKING_PARAM = /^(?:utm_|mc_|_ga|_gl)/;
|
|
39
39
|
const TRACKING_PARAM_EXACT = new Set([
|
|
@@ -60,7 +60,10 @@ const NOT_CACHEABLE = { cacheable: false };
|
|
|
60
60
|
* • an UNDECLARED, non-tracking param ⇒ not cacheable — falls through to the
|
|
61
61
|
* uncached shell with the param intact, so a page that reads an ad-hoc param
|
|
62
62
|
* client-side still works and junk can't fill the cache;
|
|
63
|
-
* • tracking params
|
|
63
|
+
* • tracking params ⇒ `ssrUncached`: rendered, not cached, NOT redirected —
|
|
64
|
+
* a redirect would strip the params before the page and the ad pixels read
|
|
65
|
+
* them;
|
|
66
|
+
* • unsorted allowlisted params or a trailing slash ⇒ `canonicalPath` differs
|
|
64
67
|
* from the request, and the caller redirects to collapse them onto one entry.
|
|
65
68
|
*/
|
|
66
69
|
export function edgeCacheDecision(request, url, pages, env) {
|
|
@@ -81,13 +84,24 @@ export function edgeCacheDecision(request, url, pages, env) {
|
|
|
81
84
|
return NOT_CACHEABLE;
|
|
82
85
|
const allow = new Set(meta.cacheQuery ?? []);
|
|
83
86
|
const kept = [];
|
|
87
|
+
let tracked = false;
|
|
84
88
|
for (const [k, v] of url.searchParams) {
|
|
85
|
-
if (isTrackingParam(k))
|
|
86
|
-
|
|
89
|
+
if (isTrackingParam(k)) {
|
|
90
|
+
tracked = true;
|
|
91
|
+
continue;
|
|
92
|
+
}
|
|
87
93
|
if (!allow.has(k))
|
|
88
94
|
return NOT_CACHEABLE; // undeclared param → uncached shell
|
|
89
95
|
kept.push([k, v]);
|
|
90
96
|
}
|
|
97
|
+
if (tracked) {
|
|
98
|
+
return {
|
|
99
|
+
cacheable: false,
|
|
100
|
+
ssrUncached: true,
|
|
101
|
+
route,
|
|
102
|
+
ttl: meta.ssrCacheTimeout ?? DEFAULT_SSR_CACHE_TIMEOUT,
|
|
103
|
+
};
|
|
104
|
+
}
|
|
91
105
|
kept.sort((a, b) => a[0] === b[0] ? (a[1] < b[1] ? -1 : 1) : a[0] < b[0] ? -1 : 1);
|
|
92
106
|
const qs = new URLSearchParams(kept).toString();
|
|
93
107
|
const path = url.pathname.replace(/\/+$/, '') || '/';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edgeCache.js","sourceRoot":"","sources":["../../../../src/server/adapter/workers/edgeCache.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,EAAE;AACF,8EAA8E;AAC9E,8EAA8E;AAC9E,EAAE;AACF,iFAAiF;AACjF,4EAA4E;AAC5E,kFAAkF;AAClF,2EAA2E;AAC3E,gFAAgF;AAChF,8EAA8E;AAC9E,iEAAiE;AACjE,EAAE;AACF,gFAAgF;AAChF,iFAAiF;AACjF,kFAAkF;AAClF,+EAA+E;AAC/E,wEAAwE;AACxE,gFAAgF;AAChF,EAAE;AACF,kFAAkF;AAClF,gFAAgF;AAChF,gFAAgF;AAChF,mCAAmC;AAEnC,OAAO,EACL,yBAAyB,EACzB,QAAQ,GAGT,MAAM,2BAA2B,CAAC;AAEnC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,cAAc,CAAC;AAGlD;;;;GAIG;AACH,MAAM,cAAc,GAAG,uBAAuB,CAAC;AAC/C,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC;IACnC,QAAQ;IACR,OAAO;IACP,SAAS;IACT,QAAQ;IACR,KAAK;IACL,SAAS;CACV,CAAC,CAAC;AAEH,SAAS,eAAe,CAAC,GAAW;IAClC,OAAO,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACnE,CAAC;
|
|
1
|
+
{"version":3,"file":"edgeCache.js","sourceRoot":"","sources":["../../../../src/server/adapter/workers/edgeCache.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { type PageRegistry } from '../../../shared/Router.js';
|
|
2
|
+
/**
|
|
3
|
+
* The public-file path (no leading slash) this request is for, or null.
|
|
4
|
+
*
|
|
5
|
+
* Any depth — `/hero/bus-1200.webp` as well as `/icon.png` — and text files too,
|
|
6
|
+
* so `robots.txt` and `sitemap.xml` are served rather than answered with the app
|
|
7
|
+
* page. `/api/*` never matches, whatever its extension.
|
|
8
|
+
*/
|
|
9
|
+
export declare function staticAssetPath(path: string): string | null;
|
|
10
|
+
/** The route's declared robots directive, or null. */
|
|
11
|
+
export declare function robotsFor(pages: PageRegistry | undefined, url: URL): string | null;
|
|
12
|
+
/**
|
|
13
|
+
* Write `tags` into the document head, REPLACING any existing tag with the same
|
|
14
|
+
* identity (title, meta name/property, canonical link) rather than adding a
|
|
15
|
+
* second. Two `og:image`s or two descriptions leave the choice to whichever
|
|
16
|
+
* crawler reads which one first.
|
|
17
|
+
*/
|
|
18
|
+
export declare function upsertHeadTags(html: string, tags: string[]): string;
|
|
19
|
+
//# sourceMappingURL=seo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seo.d.ts","sourceRoot":"","sources":["../../../../src/server/adapter/workers/seo.ts"],"names":[],"mappings":"AAMA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,2BAA2B,CAAC;AASxE;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAS3D;AAED,sDAAsD;AACtD,wBAAgB,SAAS,CACvB,KAAK,EAAE,YAAY,GAAG,SAAS,EAC/B,GAAG,EAAE,GAAG,GACP,MAAM,GAAG,IAAI,CAKf;AAoBD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CASnE"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
// src/server/adapter/workers/seo.ts
|
|
2
|
+
//
|
|
3
|
+
// Small, pure helpers for what search engines and link previews see: which
|
|
4
|
+
// paths are static files, which robots directive a route carries, and how head
|
|
5
|
+
// tags are written without duplicating ones the document already has.
|
|
6
|
+
import { parseUrl } from '../../../shared/Router.js';
|
|
7
|
+
/**
|
|
8
|
+
* File types served straight from the build's public files. Anything else that
|
|
9
|
+
* isn't an API call falls through to the app (a route, or the SPA shell).
|
|
10
|
+
*/
|
|
11
|
+
const STATIC_EXT = /\.(?:png|svg|jpg|jpeg|gif|webp|avif|woff2?|ttf|otf|ico|map|txt|xml|pdf|mp4|webm)$/i;
|
|
12
|
+
/**
|
|
13
|
+
* The public-file path (no leading slash) this request is for, or null.
|
|
14
|
+
*
|
|
15
|
+
* Any depth — `/hero/bus-1200.webp` as well as `/icon.png` — and text files too,
|
|
16
|
+
* so `robots.txt` and `sitemap.xml` are served rather than answered with the app
|
|
17
|
+
* page. `/api/*` never matches, whatever its extension.
|
|
18
|
+
*/
|
|
19
|
+
export function staticAssetPath(path) {
|
|
20
|
+
if (path.startsWith('/api/'))
|
|
21
|
+
return null;
|
|
22
|
+
if (path === '/favicon.ico')
|
|
23
|
+
return 'favicon.ico';
|
|
24
|
+
if (!STATIC_EXT.test(path))
|
|
25
|
+
return null;
|
|
26
|
+
// No empty segments or traversal: `/a//b.png`, `/../x.png`.
|
|
27
|
+
const rest = path.slice(1);
|
|
28
|
+
if (rest.split('/').some((seg) => seg === '' || seg === '..' || seg === '.'))
|
|
29
|
+
return null;
|
|
30
|
+
return rest;
|
|
31
|
+
}
|
|
32
|
+
/** The route's declared robots directive, or null. */
|
|
33
|
+
export function robotsFor(pages, url) {
|
|
34
|
+
if (!pages)
|
|
35
|
+
return null;
|
|
36
|
+
const route = parseUrl(pages, url.pathname, url.search);
|
|
37
|
+
if (!route)
|
|
38
|
+
return null;
|
|
39
|
+
return pages[route.routeName]?.robots ?? null;
|
|
40
|
+
}
|
|
41
|
+
/** The identity of a head tag: `<title>`, a meta name/property, or a link rel. */
|
|
42
|
+
function tagKey(tag) {
|
|
43
|
+
if (/^<title[\s>]/i.test(tag))
|
|
44
|
+
return 'title';
|
|
45
|
+
const attr = (name) => new RegExp(`\\b${name}=["']([^"']+)["']`, 'i').exec(tag)?.[1];
|
|
46
|
+
if (/^<meta\b/i.test(tag)) {
|
|
47
|
+
const n = attr('name') ?? attr('property');
|
|
48
|
+
return n ? `meta:${n.toLowerCase()}` : null;
|
|
49
|
+
}
|
|
50
|
+
if (/^<link\b/i.test(tag)) {
|
|
51
|
+
const rel = attr('rel');
|
|
52
|
+
return rel === 'canonical' ? 'link:canonical' : null;
|
|
53
|
+
}
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
const HEAD_TAG = /<title>[\s\S]*?<\/title>|<meta\b[^>]*>|<link\b[^>]*>/gi;
|
|
57
|
+
/**
|
|
58
|
+
* Write `tags` into the document head, REPLACING any existing tag with the same
|
|
59
|
+
* identity (title, meta name/property, canonical link) rather than adding a
|
|
60
|
+
* second. Two `og:image`s or two descriptions leave the choice to whichever
|
|
61
|
+
* crawler reads which one first.
|
|
62
|
+
*/
|
|
63
|
+
export function upsertHeadTags(html, tags) {
|
|
64
|
+
const headEnd = html.indexOf('</head>');
|
|
65
|
+
if (headEnd === -1)
|
|
66
|
+
return tags.join('') + html;
|
|
67
|
+
const keys = new Set(tags.map(tagKey).filter((k) => !!k));
|
|
68
|
+
const head = html.slice(0, headEnd).replace(HEAD_TAG, (t) => {
|
|
69
|
+
const k = tagKey(t);
|
|
70
|
+
return k && keys.has(k) ? '' : t;
|
|
71
|
+
});
|
|
72
|
+
return head + tags.join('') + html.slice(headEnd);
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=seo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seo.js","sourceRoot":"","sources":["../../../../src/server/adapter/workers/seo.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrapWithAssets.d.ts","sourceRoot":"","sources":["../../../../src/server/adapter/workers/wrapWithAssets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AASH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"wrapWithAssets.d.ts","sourceRoot":"","sources":["../../../../src/server/adapter/workers/wrapWithAssets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AASH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAUxD;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,2BAA2B,CAAC;AAE/D,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;OAMG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AA6VD,wBAAgB,cAAc,CAC5B,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,YAAY,GACnB,UAAU,CAwZZ"}
|
|
@@ -32,6 +32,7 @@ import { getUglyBotUrl } from '../../../shared/uglyBotUrl.js';
|
|
|
32
32
|
import { setBuildInfo } from '../../BuildInfo.js';
|
|
33
33
|
import { getAppContext } from './createWorkersApp.js';
|
|
34
34
|
import { CACHE_STATUS_HEADER, edgeCacheDecision, ssrCacheControl, ssrCacheTags, } from './edgeCache.js';
|
|
35
|
+
import { robotsFor, staticAssetPath, upsertHeadTags } from './seo.js';
|
|
35
36
|
/**
|
|
36
37
|
* Set `<NO_SPA_FALLBACK_HEADER>: '1'` on a raw route's 404 to keep it a 404 instead
|
|
37
38
|
* of letting the SPA fallback answer with an HTML 200. Use it on paths served to
|
|
@@ -183,6 +184,20 @@ function guessContentType(path) {
|
|
|
183
184
|
return 'font/ttf';
|
|
184
185
|
if (lower.endsWith('.map'))
|
|
185
186
|
return 'application/json; charset=utf-8';
|
|
187
|
+
if (lower.endsWith('.txt'))
|
|
188
|
+
return 'text/plain; charset=utf-8';
|
|
189
|
+
if (lower.endsWith('.xml'))
|
|
190
|
+
return 'application/xml; charset=utf-8';
|
|
191
|
+
if (lower.endsWith('.avif'))
|
|
192
|
+
return 'image/avif';
|
|
193
|
+
if (lower.endsWith('.otf'))
|
|
194
|
+
return 'font/otf';
|
|
195
|
+
if (lower.endsWith('.pdf'))
|
|
196
|
+
return 'application/pdf';
|
|
197
|
+
if (lower.endsWith('.mp4'))
|
|
198
|
+
return 'video/mp4';
|
|
199
|
+
if (lower.endsWith('.webm'))
|
|
200
|
+
return 'video/webm';
|
|
186
201
|
return 'application/octet-stream';
|
|
187
202
|
}
|
|
188
203
|
function htmlResponse(html, extraHeaders) {
|
|
@@ -320,17 +335,11 @@ function escapeAttr(s) {
|
|
|
320
335
|
* reason this exists: it retires the user-agent sniffing that used to be the
|
|
321
336
|
* only way to hand a crawler a social card.
|
|
322
337
|
*/
|
|
323
|
-
function injectMeta(html, meta, canonicalUrl) {
|
|
338
|
+
function injectMeta(html, meta, canonicalUrl, robots = null) {
|
|
324
339
|
const tags = [];
|
|
325
340
|
const push = (t) => tags.push(t);
|
|
326
|
-
let out = html;
|
|
327
341
|
if (meta.title) {
|
|
328
|
-
|
|
329
|
-
out = /<title>[\s\S]*?<\/title>/.test(out)
|
|
330
|
-
? out.replace(/<title>[\s\S]*?<\/title>/, titleTag)
|
|
331
|
-
: out;
|
|
332
|
-
if (!out.includes(titleTag))
|
|
333
|
-
push(titleTag);
|
|
342
|
+
push(`<title>${escapeAttr(meta.title)}</title>`);
|
|
334
343
|
push(`<meta property="og:title" content="${escapeAttr(meta.title)}">`);
|
|
335
344
|
}
|
|
336
345
|
if (meta.description) {
|
|
@@ -347,7 +356,12 @@ function injectMeta(html, meta, canonicalUrl) {
|
|
|
347
356
|
push(`<meta property="og:type" content="${escapeAttr(meta.type ?? 'website')}">`);
|
|
348
357
|
push(`<meta property="og:url" content="${escapeAttr(canonicalUrl)}">`);
|
|
349
358
|
push(`<link rel="canonical" href="${escapeAttr(canonicalUrl)}">`);
|
|
350
|
-
|
|
359
|
+
if (robots)
|
|
360
|
+
push(`<meta name="robots" content="${escapeAttr(robots)}">`);
|
|
361
|
+
// Replace, don't append: the app's index.html usually carries its own
|
|
362
|
+
// description and og:* defaults, and a second copy of each leaves the choice
|
|
363
|
+
// to whichever crawler reads which one first.
|
|
364
|
+
return upsertHeadTags(html, tags);
|
|
351
365
|
}
|
|
352
366
|
function injectIntoHead(html, scripts) {
|
|
353
367
|
const idx = html.indexOf('</head>');
|
|
@@ -436,10 +450,12 @@ export function wrapWithAssets(base, config) {
|
|
|
436
450
|
assetRest = path.slice(assetPrefix.length);
|
|
437
451
|
}
|
|
438
452
|
else if (isMethodIdempotent &&
|
|
439
|
-
(path.startsWith('/assets/') ||
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
453
|
+
(path.startsWith('/assets/') || staticAssetPath(path) !== null)) {
|
|
454
|
+
// Public files at any depth, text files included (robots.txt,
|
|
455
|
+
// sitemap.xml). Only root-level images used to match, so everything
|
|
456
|
+
// else was answered with the app page — a 200 of HTML where a crawler
|
|
457
|
+
// or an <img> expected a file.
|
|
458
|
+
assetRest = staticAssetPath(path) ?? path.slice(1);
|
|
443
459
|
immutable = assetRest.startsWith('assets/');
|
|
444
460
|
}
|
|
445
461
|
if (assetRest !== null) {
|
|
@@ -563,12 +579,17 @@ export function wrapWithAssets(base, config) {
|
|
|
563
579
|
// visitor — the browser resolves its session afterwards via
|
|
564
580
|
// `/auth/token`. Do not add anything request-specific below.
|
|
565
581
|
const decision = edgeCacheDecision(request, url, appCtx.pages ?? undefined, env);
|
|
566
|
-
|
|
582
|
+
const robots = robotsFor(appCtx.pages ?? undefined, url);
|
|
583
|
+
const robotsHeader = robots
|
|
584
|
+
? { 'x-robots-tag': robots }
|
|
585
|
+
: {};
|
|
586
|
+
if ((decision.cacheable || decision.ssrUncached) && appCtx.ssrRender) {
|
|
567
587
|
// Collapse tracking params / trailing slash / query order onto ONE
|
|
568
588
|
// cache entry: the declarative cache keys on the raw path+query and
|
|
569
589
|
// can't be customized per request, so we redirect to the canonical URL
|
|
570
590
|
// instead. Only canonical URLs are ever rendered + cached.
|
|
571
|
-
if (decision.
|
|
591
|
+
if (decision.cacheable &&
|
|
592
|
+
decision.canonicalPath &&
|
|
572
593
|
url.pathname + url.search !== decision.canonicalPath) {
|
|
573
594
|
return new Response(null, {
|
|
574
595
|
status: 301,
|
|
@@ -598,7 +619,7 @@ export function wrapWithAssets(base, config) {
|
|
|
598
619
|
if (result) {
|
|
599
620
|
html = injectSSR(html, result.html, result.pageData);
|
|
600
621
|
if (result.meta) {
|
|
601
|
-
html = injectMeta(html, result.meta, canonicalUrl(url));
|
|
622
|
+
html = injectMeta(html, result.meta, canonicalUrl(url), robots);
|
|
602
623
|
}
|
|
603
624
|
appTags = result.tags ?? [];
|
|
604
625
|
ssrOk = true;
|
|
@@ -609,13 +630,18 @@ export function wrapWithAssets(base, config) {
|
|
|
609
630
|
}
|
|
610
631
|
if (!ssrOk) {
|
|
611
632
|
// A render failure must never be cached — no-store keeps it out.
|
|
612
|
-
return htmlResponse(injectIntoHead(indexHtml, buildScript + buildPublicScripts()), { [CACHE_STATUS_HEADER]: 'BYPASS' });
|
|
633
|
+
return htmlResponse(injectIntoHead(indexHtml, buildScript + buildPublicScripts()), { [CACHE_STATUS_HEADER]: 'BYPASS', ...robotsHeader });
|
|
613
634
|
}
|
|
614
635
|
return new Response(html, {
|
|
615
636
|
status: 200,
|
|
616
637
|
headers: {
|
|
617
638
|
'content-type': 'text/html; charset=utf-8',
|
|
618
|
-
|
|
639
|
+
// A URL with ad params is rendered for this one visitor and never
|
|
640
|
+
// stored: caching it would mint an entry per click.
|
|
641
|
+
'cache-control': decision.ssrUncached
|
|
642
|
+
? 'private, no-store'
|
|
643
|
+
: ssrCacheControl(decision.ttl ?? 0),
|
|
644
|
+
...robotsHeader,
|
|
619
645
|
'cache-tag': ssrCacheTags(decision.route?.routeName ?? '', appTags),
|
|
620
646
|
// The Worker only runs on a cache MISS now, so this marks "rendered
|
|
621
647
|
// fresh"; `cf-cache-status` reports whether the platform served from
|
|
@@ -630,6 +656,7 @@ export function wrapWithAssets(base, config) {
|
|
|
630
656
|
const { scripts, clearAuthCookie } = await buildAuthInjection(request);
|
|
631
657
|
const extraHeaders = {
|
|
632
658
|
[CACHE_STATUS_HEADER]: 'BYPASS',
|
|
659
|
+
...robotsHeader,
|
|
633
660
|
};
|
|
634
661
|
if (clearAuthCookie) {
|
|
635
662
|
extraHeaders['Set-Cookie'] =
|