@nifrajs/web 5.4.0 → 5.5.1

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 (100) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/dist/build-plan.d.ts +6 -0
  3. package/dist/build-plan.d.ts.map +1 -1
  4. package/dist/build-plan.js +25 -0
  5. package/dist/build-plan.js.map +1 -1
  6. package/dist/build-vite.d.ts +2 -0
  7. package/dist/build-vite.d.ts.map +1 -1
  8. package/dist/build-vite.js +2 -0
  9. package/dist/build-vite.js.map +1 -1
  10. package/dist/build.d.ts +17 -3
  11. package/dist/build.d.ts.map +1 -1
  12. package/dist/build.js +81 -40
  13. package/dist/build.js.map +1 -1
  14. package/dist/deferred.d.ts.map +1 -1
  15. package/dist/deferred.js +20 -6
  16. package/dist/deferred.js.map +1 -1
  17. package/dist/dev.d.ts +5 -0
  18. package/dist/dev.d.ts.map +1 -1
  19. package/dist/dev.js +7 -6
  20. package/dist/dev.js.map +1 -1
  21. package/dist/diagnostic.d.ts +6 -0
  22. package/dist/diagnostic.d.ts.map +1 -1
  23. package/dist/diagnostic.js +41 -0
  24. package/dist/diagnostic.js.map +1 -1
  25. package/dist/host-policy.d.ts +72 -0
  26. package/dist/host-policy.d.ts.map +1 -0
  27. package/dist/host-policy.js +149 -0
  28. package/dist/host-policy.js.map +1 -0
  29. package/dist/host-reach.d.ts +49 -0
  30. package/dist/host-reach.d.ts.map +1 -0
  31. package/dist/host-reach.js +144 -0
  32. package/dist/host-reach.js.map +1 -0
  33. package/dist/index.d.ts +1 -0
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +2 -1
  36. package/dist/index.js.map +1 -1
  37. package/dist/internal/certified-components.d.ts +8 -0
  38. package/dist/internal/certified-components.d.ts.map +1 -0
  39. package/dist/internal/certified-components.js +8 -0
  40. package/dist/internal/certified-components.js.map +1 -0
  41. package/dist/internal/codegen.d.ts +8 -0
  42. package/dist/internal/codegen.d.ts.map +1 -1
  43. package/dist/internal/codegen.js +15 -4
  44. package/dist/internal/codegen.js.map +1 -1
  45. package/dist/internal/output-guard.d.ts +6 -0
  46. package/dist/internal/output-guard.d.ts.map +1 -1
  47. package/dist/internal/output-guard.js +118 -16
  48. package/dist/internal/output-guard.js.map +1 -1
  49. package/dist/internal/page-execution.d.ts +2 -0
  50. package/dist/internal/page-execution.d.ts.map +1 -1
  51. package/dist/internal/page-execution.js +16 -11
  52. package/dist/internal/page-execution.js.map +1 -1
  53. package/dist/internal/render-document.d.ts +3 -1
  54. package/dist/internal/render-document.d.ts.map +1 -1
  55. package/dist/internal/render-document.js +10 -4
  56. package/dist/internal/render-document.js.map +1 -1
  57. package/dist/internal/web-app.d.ts +15 -1
  58. package/dist/internal/web-app.d.ts.map +1 -1
  59. package/dist/internal/web-app.js +8 -0
  60. package/dist/internal/web-app.js.map +1 -1
  61. package/dist/public-dir.d.ts +4 -3
  62. package/dist/public-dir.d.ts.map +1 -1
  63. package/dist/public-dir.js +24 -18
  64. package/dist/public-dir.js.map +1 -1
  65. package/dist/router.d.ts +2 -1
  66. package/dist/router.d.ts.map +1 -1
  67. package/dist/router.js +9 -8
  68. package/dist/router.js.map +1 -1
  69. package/dist/server-components/vite.d.ts.map +1 -1
  70. package/dist/server-components/vite.js +8 -6
  71. package/dist/server-components/vite.js.map +1 -1
  72. package/dist/service-worker.d.ts +3 -1
  73. package/dist/service-worker.d.ts.map +1 -1
  74. package/dist/service-worker.js +29 -8
  75. package/dist/service-worker.js.map +1 -1
  76. package/dist/zones.d.ts +5 -1
  77. package/dist/zones.d.ts.map +1 -1
  78. package/dist/zones.js +17 -4
  79. package/dist/zones.js.map +1 -1
  80. package/package.json +4 -4
  81. package/src/build-plan.ts +26 -0
  82. package/src/build-vite.ts +4 -0
  83. package/src/build.ts +114 -44
  84. package/src/deferred.ts +20 -6
  85. package/src/dev.ts +7 -6
  86. package/src/diagnostic.ts +43 -0
  87. package/src/host-policy.ts +219 -0
  88. package/src/host-reach.ts +177 -0
  89. package/src/index.ts +10 -2
  90. package/src/internal/certified-components.ts +7 -0
  91. package/src/internal/codegen.ts +24 -5
  92. package/src/internal/output-guard.ts +166 -15
  93. package/src/internal/page-execution.ts +23 -9
  94. package/src/internal/render-document.ts +11 -4
  95. package/src/internal/web-app.ts +27 -1
  96. package/src/public-dir.ts +31 -24
  97. package/src/router.ts +9 -8
  98. package/src/server-components/vite.ts +11 -6
  99. package/src/service-worker.ts +32 -9
  100. package/src/zones.ts +27 -5
@@ -73,10 +73,35 @@ const OWN_URLS = new Set(PRECACHE)
73
73
  const OWN = { cacheName: CACHE }
74
74
  const OFFLINE = ${offline === undefined ? "null" : JSON.stringify(offline)}
75
75
 
76
+ // Whether every visitor may be served these bytes from this cache. CacheStorage itself ignores
77
+ // Cache-Control, and a redirect can land one visitor's page under a shared URL.
78
+ const shareable = (response) =>
79
+ response.ok &&
80
+ response.type === "basic" &&
81
+ !response.redirected &&
82
+ !(response.headers.get("cache-control") ?? "")
83
+ .split(",")
84
+ .some((directive) => /^\\s*(?:no-store|private)\\s*(?:=|$)/i.test(directive))
85
+
76
86
  self.addEventListener("install", (event) => {
77
- // Take over as soon as the new assets are stored; the activate handler drops the old cache, so
78
- // waiting would only serve stale bytes for longer.
79
- event.waitUntil(caches.open(CACHE).then((c) => c.addAll(PRECACHE)).then(() => self.skipWaiting()))
87
+ // Every response is checked before any is stored, so a refused one leaves this build's cache
88
+ // empty and the install failed, as addAll would on an error status. Take over as soon as the new
89
+ // assets are stored; the activate handler drops the old cache, so waiting would only serve stale
90
+ // bytes for longer.
91
+ event.waitUntil(
92
+ Promise.all(
93
+ PRECACHE.map((url) =>
94
+ fetch(url).then((response) => {
95
+ if (shareable(response)) return response
96
+ throw new TypeError("[nifra/web] not precached, the response is not shareable: " + url)
97
+ }),
98
+ ),
99
+ )
100
+ .then((responses) =>
101
+ caches.open(CACHE).then((c) => Promise.all(responses.map((r, i) => c.put(PRECACHE[i], r)))),
102
+ )
103
+ .then(() => self.skipWaiting()),
104
+ )
80
105
  })
81
106
 
82
107
  self.addEventListener("activate", (event) => {
@@ -114,11 +139,7 @@ self.addEventListener("fetch", (event) => {
114
139
  caches.match(request, OWN).then((hit) => {
115
140
  if (hit !== undefined) return hit
116
141
  return fetch(request).then((response) => {
117
- const cacheable =
118
- response.ok &&
119
- response.type === "basic" &&
120
- !(response.headers.get("cache-control") ?? "").includes("no-store")
121
- if (cacheable) {
142
+ if (shareable(response)) {
122
143
  const copy = response.clone()
123
144
  void caches.open(CACHE).then((c) => c.put(request, copy))
124
145
  }
@@ -1 +1 @@
1
- {"version":3,"file":"service-worker.js","sourceRoot":"","sources":["../src/service-worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service-worker.js","sourceRoot":"","sources":["../src/service-worker.ts"],"names":[],"mappings":"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"}
package/dist/zones.d.ts CHANGED
@@ -71,7 +71,11 @@ export interface ZoneConfig {
71
71
  readonly backend?: readonly string[];
72
72
  /** App-relative folders or files holding frontend code, beside `frontend/`. */
73
73
  readonly frontend?: readonly string[];
74
- /** App-relative folders or files holding code both sides import, beside `shared/`. */
74
+ /**
75
+ * App-relative folders or files holding code both sides import, beside `shared/`. Unlike the other
76
+ * sides, an entry may sit inside `frontend/` or `backend/`: a module there that both sides import
77
+ * stays where it is, held to the shared rules (it may import only shared code and packages).
78
+ */
75
79
  readonly shared?: readonly string[];
76
80
  }
77
81
  /** A `"nifra": { "zones": ... }` setting that cannot be applied. Thrown when a classifier is created. */
@@ -1 +1 @@
1
- {"version":3,"file":"zones.d.ts","sourceRoot":"","sources":["../src/zones.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zones.d.ts","sourceRoot":"","sources":["../src/zones.ts"],"names":[],"mappings":"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"}
package/dist/zones.js CHANGED
@@ -162,8 +162,12 @@ export function parseZoneConfig(value, source) {
162
162
  fail(`"${side}" entry "${entry}" may not contain ".."`);
163
163
  if (/[*?[\]{}!]/.test(folder))
164
164
  fail(`"${side}" entry "${entry}" must be a plain path (a trailing "/**" is allowed)`);
165
- if (RESERVED_FOLDERS.has(top) || top.startsWith(".nifra"))
166
- fail(`"${side}" entry "${entry}" is inside ${top}/, which already has its own rules`);
165
+ const sharedInSide = side === "shared" && (top === "frontend" || top === "backend") && folder !== top;
166
+ if ((RESERVED_FOLDERS.has(top) && !sharedInSide) || top.startsWith(".nifra"))
167
+ fail(`"${side}" entry "${entry}" is inside ${top}/, which already has its own rules` +
168
+ (top === "frontend" || top === "backend"
169
+ ? `; only a "shared" entry may name a path inside ${top}/`
170
+ : ""));
167
171
  const other = owner.get(folder);
168
172
  if (other !== undefined && other !== side)
169
173
  fail(`"${folder}" is listed as both ${other} and ${side}; a path has one side`);
@@ -452,13 +456,22 @@ export function createZoneClassifier(options) {
452
456
  return { zone: "shared" };
453
457
  return { zone: "route-frontend" };
454
458
  }
455
- const configured = ZONE_FOLDERS[top] === undefined ? configuredPath(rel) : undefined;
456
- const folder = ZONE_FOLDERS[top] ?? configured?.[1];
459
+ // Inside a reserved folder only a "shared" entry can match: the parser refuses the others there.
460
+ const configured = configuredPath(rel);
461
+ const folder = configured?.[1] ?? ZONE_FOLDERS[top];
457
462
  if (folder !== undefined) {
458
463
  if (suffix === undefined || suffix === folder)
459
464
  return { zone: folder };
460
465
  if (suffix === "fn" && folder === "backend")
461
466
  return { zone: "fn" };
467
+ // Code both sides import may live beside the side that wrote it. Shared code may import only
468
+ // shared code and packages, so the declaration narrows what the file may reach, never widens it.
469
+ // A file "nifra.zones" lists by name has that side; its suffix cannot contradict it.
470
+ if (suffix === "shared" &&
471
+ (folder === "frontend" || folder === "backend") &&
472
+ top !== "public" &&
473
+ configured?.[0] !== rel)
474
+ return { zone: "shared" };
462
475
  const where = configured === undefined
463
476
  ? `sits in ${top}/`
464
477
  : configured[0] === rel
package/dist/zones.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"zones.js","sourceRoot":"","sources":["../src/zones.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zones.js","sourceRoot":"","sources":["../src/zones.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nifrajs/web",
3
- "version": "5.4.0",
3
+ "version": "5.5.1",
4
4
  "description": "Framework-agnostic SSR core for nifra - the render seam + HTML document orchestration.",
5
5
  "keywords": [
6
6
  "bun",
@@ -320,8 +320,8 @@
320
320
  "access": "public"
321
321
  },
322
322
  "dependencies": {
323
- "@nifrajs/core": "5.4.0",
324
- "@nifrajs/island-trigger": "5.4.0",
323
+ "@nifrajs/core": "5.5.1",
324
+ "@nifrajs/island-trigger": "5.5.1",
325
325
  "parse5": "8.0.1"
326
326
  },
327
327
  "peerDependencies": {
@@ -391,7 +391,7 @@
391
391
  "solid-js": "1.9.14",
392
392
  "svelte": "5.56.8",
393
393
  "svelte-check": "4.7.6",
394
- "vite": "^8.2.1",
394
+ "vite": "8.2.1",
395
395
  "vite-plugin-solid": "2.11.14",
396
396
  "vue": "3.5.40",
397
397
  "vue-tsc": "3.3.12",
package/src/build-plan.ts CHANGED
@@ -201,6 +201,8 @@ export interface Bundler {
201
201
  readonly routeStyles?: Readonly<Record<string, readonly string[]>>
202
202
  /** The client build's copy chunk URLs by locale to bake into the server manifest. */
203
203
  readonly copyChunks?: Readonly<Record<string, string>>
204
+ /** Every file the build emitted, by request path, to bake into the server manifest. */
205
+ readonly buildAssets?: readonly string[]
204
206
  readonly plugins?: readonly unknown[]
205
207
  readonly define?: Readonly<Record<string, string>>
206
208
  /** CSS activation policy to bake into the generated server manifest. */
@@ -745,6 +747,30 @@ function parseManifestLiteral(raw: string): unknown {
745
747
  return JSON.parse(raw.replace(/,(\s*[\]}])/g, "$1"))
746
748
  }
747
749
 
750
+ /** Every file a client build emitted, by request path: its `assets` and the `public/` files it copied. */
751
+ export function buildAssetPaths(client: BuildManifest): string[] {
752
+ return [...new Set([...client.assets, ...(client.publicFiles ?? [])])].sort()
753
+ }
754
+
755
+ /** The baked `buildAssets` set in a committed server-manifest, or `undefined` when it bakes none. Pure. */
756
+ export function parseManifestBuildAssets(source: string): string[] | undefined {
757
+ const opener = "export const buildAssets: ReadonlySet<string> = new Set("
758
+ const start = source.indexOf(opener)
759
+ if (start === -1) return undefined
760
+ const from = start + opener.length
761
+ const end = source.indexOf("\nexport const ", from)
762
+ const raw = source.slice(from, end === -1 ? source.length : end).trim()
763
+ if (!raw.endsWith(")")) return undefined
764
+ try {
765
+ const value = parseManifestLiteral(raw.slice(0, -1))
766
+ return Array.isArray(value) && value.every((path) => typeof path === "string")
767
+ ? value
768
+ : undefined
769
+ } catch {
770
+ return undefined
771
+ }
772
+ }
773
+
748
774
  /** The baked top-level `styles` array in a committed server-manifest (empty if absent/unparseable). Pure. */
749
775
  export function parseManifestStyles(source: string): string[] {
750
776
  const raw = bakedManifestLiteral(source, "styles")
package/src/build-vite.ts CHANGED
@@ -494,6 +494,8 @@ export interface BuildServerViteOptions {
494
494
  readonly styles?: readonly string[] | undefined
495
495
  readonly routeStyles?: Readonly<Record<string, readonly string[]>> | undefined
496
496
  readonly copyChunks?: Readonly<Record<string, string>> | undefined
497
+ /** Every file the build emitted, by request path - baked as `buildAssets` (see `buildServer`). */
498
+ readonly buildAssets?: readonly string[] | undefined
497
499
  /** How framework-owned stylesheet links should activate before hydration (default `"blocking"`). */
498
500
  readonly cssLoading?: CssLoadingMode
499
501
  readonly resolve?: (file: string) => string
@@ -616,6 +618,7 @@ export async function buildServerVite(options: BuildServerViteOptions): Promise<
616
618
  routeStyles,
617
619
  ...(cssLoading !== undefined ? { cssLoading } : {}),
618
620
  ...(options.copyChunks !== undefined ? { copyChunks: options.copyChunks } : {}),
621
+ ...(options.buildAssets !== undefined ? { buildAssets: options.buildAssets } : {}),
619
622
  }),
620
623
  )
621
624
 
@@ -732,6 +735,7 @@ export const viteBundler: Bundler = {
732
735
  ...(input.styles !== undefined ? { styles: input.styles } : {}),
733
736
  ...(input.routeStyles !== undefined ? { routeStyles: input.routeStyles } : {}),
734
737
  ...(input.copyChunks !== undefined ? { copyChunks: input.copyChunks } : {}),
738
+ ...(input.buildAssets !== undefined ? { buildAssets: input.buildAssets } : {}),
735
739
  ...(input.plugins ? { vitePlugins: input.plugins } : {}),
736
740
  ...(input.define ? { define: input.define } : {}),
737
741
  ...(input.cssLoading !== undefined ? { cssLoading: input.cssLoading } : {}),