@nexus_js/server 0.9.28 → 0.9.29

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 (80) hide show
  1. package/dist/actions.d.ts +11 -71
  2. package/dist/actions.d.ts.map +1 -1
  3. package/dist/actions.js +51 -442
  4. package/dist/actions.js.map +1 -1
  5. package/dist/context.d.ts +4 -38
  6. package/dist/context.d.ts.map +1 -1
  7. package/dist/context.js +3 -13
  8. package/dist/context.js.map +1 -1
  9. package/dist/csrf.d.ts +2 -16
  10. package/dist/csrf.d.ts.map +1 -1
  11. package/dist/csrf.js +30 -68
  12. package/dist/csrf.js.map +1 -1
  13. package/dist/dev-assets.d.ts +0 -31
  14. package/dist/dev-assets.d.ts.map +1 -1
  15. package/dist/dev-assets.js +38 -372
  16. package/dist/dev-assets.js.map +1 -1
  17. package/dist/dev-error-html.d.ts.map +1 -1
  18. package/dist/dev-error-html.js +0 -24
  19. package/dist/dev-error-html.js.map +1 -1
  20. package/dist/devradar.d.ts +1 -1
  21. package/dist/devradar.d.ts.map +1 -1
  22. package/dist/devradar.js.map +1 -1
  23. package/dist/index.d.ts +2 -97
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +47 -442
  26. package/dist/index.js.map +1 -1
  27. package/dist/load-module.d.ts +0 -6
  28. package/dist/load-module.d.ts.map +1 -1
  29. package/dist/load-module.js +53 -40
  30. package/dist/load-module.js.map +1 -1
  31. package/dist/navigate.d.ts +5 -0
  32. package/dist/navigate.d.ts.map +1 -1
  33. package/dist/navigate.js +1 -0
  34. package/dist/navigate.js.map +1 -1
  35. package/dist/rate-limit.d.ts.map +1 -1
  36. package/dist/rate-limit.js +14 -27
  37. package/dist/rate-limit.js.map +1 -1
  38. package/dist/renderer.d.ts +7 -27
  39. package/dist/renderer.d.ts.map +1 -1
  40. package/dist/renderer.js +25 -152
  41. package/dist/renderer.js.map +1 -1
  42. package/dist/streaming.d.ts +3 -3
  43. package/dist/streaming.d.ts.map +1 -1
  44. package/dist/streaming.js +13 -33
  45. package/dist/streaming.js.map +1 -1
  46. package/package.json +8 -26
  47. package/dist/build-id.d.ts +0 -14
  48. package/dist/build-id.d.ts.map +0 -1
  49. package/dist/build-id.js +0 -40
  50. package/dist/build-id.js.map +0 -1
  51. package/dist/dev-assets.test.d.ts +0 -2
  52. package/dist/dev-assets.test.d.ts.map +0 -1
  53. package/dist/head-renderer.test.d.ts +0 -2
  54. package/dist/head-renderer.test.d.ts.map +0 -1
  55. package/dist/head-renderer.test.js +0 -78
  56. package/dist/head-renderer.test.js.map +0 -1
  57. package/dist/legacy-wrapper.d.ts +0 -88
  58. package/dist/legacy-wrapper.d.ts.map +0 -1
  59. package/dist/legacy-wrapper.js +0 -104
  60. package/dist/legacy-wrapper.js.map +0 -1
  61. package/dist/lib-assets.d.ts +0 -5
  62. package/dist/lib-assets.d.ts.map +0 -1
  63. package/dist/lib-assets.js +0 -95
  64. package/dist/lib-assets.js.map +0 -1
  65. package/dist/metadata.d.ts +0 -95
  66. package/dist/metadata.d.ts.map +0 -1
  67. package/dist/metadata.js +0 -132
  68. package/dist/metadata.js.map +0 -1
  69. package/dist/renderer.test.d.ts +0 -2
  70. package/dist/renderer.test.d.ts.map +0 -1
  71. package/dist/renderer.test.js +0 -251
  72. package/dist/renderer.test.js.map +0 -1
  73. package/dist/tenancy.d.ts +0 -17
  74. package/dist/tenancy.d.ts.map +0 -1
  75. package/dist/tenancy.js +0 -132
  76. package/dist/tenancy.js.map +0 -1
  77. package/dist/tenancy.test.d.ts +0 -2
  78. package/dist/tenancy.test.d.ts.map +0 -1
  79. package/dist/tenancy.test.js +0 -38
  80. package/dist/tenancy.test.js.map +0 -1
package/dist/renderer.js CHANGED
@@ -15,9 +15,7 @@
15
15
  * 5. Has user session → Cache-Control: private, no-store (never CDN-cache)
16
16
  */
17
17
  import { serialize } from '@nexus_js/serialize';
18
- import { defineHead, flushHead, renderHeadToString } from '@nexus_js/head';
19
18
  import { NotFoundSignal, RedirectSignal } from './context.js';
20
- import { SESSION_COOKIE_NAME } from './csrf.js';
21
19
  import { devErrorHtmlPage } from './dev-error-html.js';
22
20
  import { loadRouteModule } from './load-module.js';
23
21
  import { emitDevRadar } from './devradar.js';
@@ -54,7 +52,7 @@ function resetTtlContext() {
54
52
  export function computeCacheControl(ctx) {
55
53
  const { ttls, hasSession, hasStream } = renderTtlContext;
56
54
  // Rule 5: Session data is always private
57
- if (hasSession || ctx.request.headers.get('cookie')?.includes(`${SESSION_COOKIE_NAME}=`)) {
55
+ if (hasSession || ctx.request.headers.get('cookie')?.includes('nx-session=')) {
58
56
  return {
59
57
  header: 'private, no-store',
60
58
  ttl: 0,
@@ -100,44 +98,26 @@ const DOCTYPE = '<!DOCTYPE html>';
100
98
  * Wraps the page with its layout chain and injects island hydration scripts.
101
99
  */
102
100
  /**
103
- * Runs the data loader (`load` / `nxPretext`) from every layout (outer → inner) and the page
104
- * in parallel, then shallow-merges results onto `ctx.pretext` (child wins on key collisions).
105
- * This powers both the `{pretext.xxx}` template usage and the client-side `$pretext()`.
101
+ * Runs `nxPretext` from every layout (outer → inner) and the page in parallel,
102
+ * then shallow-merges results onto `ctx.pretext` (page wins on key collisions).
106
103
  */
107
104
  export async function mergeRoutePretext(matched, ctx, opts) {
108
105
  const t0 = Date.now();
109
106
  const chain = [
110
- ...matched.layouts.map((l) => ({ filepath: l.filepath, pattern: l.pattern, isLayout: true })),
111
- { filepath: matched.route.filepath, pattern: matched.route.pattern, isLayout: false },
107
+ ...matched.layouts.map((l) => ({ filepath: l.filepath, pattern: l.pattern })),
108
+ { filepath: matched.route.filepath, pattern: matched.route.pattern },
112
109
  ];
113
110
  try {
114
111
  const mods = await Promise.all(chain.map((c) => loadRouteModule(c.filepath, {
115
112
  dev: opts.dev,
116
113
  appRoot: opts.appRoot,
117
114
  pattern: c.pattern,
118
- isLayout: c.isLayout,
119
115
  })));
120
116
  const results = await Promise.all(mods.map((mod) => {
121
- // Prefer the internal nxPretext (produced by compiler from `load` or explicit marker).
122
- // Fall back to `load` for direct JS modules, bridge code, or old builds.
123
- const fn = mod.nxPretext
124
- ?? mod.load;
117
+ const fn = mod.nxPretext;
125
118
  return typeof fn === 'function' ? fn(ctx) : Promise.resolve({});
126
119
  }));
127
120
  const objects = results.map((r) => r && typeof r === 'object' && !Array.isArray(r) ? r : { value: r });
128
- // Collect head metadata from load() results for auto-injection into <head>.
129
- // Remove 'head' from the pretext merge so it doesn't interfere with serialisation
130
- // and doesn't override layout/page values during the shallow merge.
131
- for (let i = 0; i < results.length; i++) {
132
- const r = results[i];
133
- if (r && typeof r === 'object' && !Array.isArray(r) && 'head' in r) {
134
- const headMeta = r.head;
135
- if (headMeta && typeof headMeta === 'object') {
136
- defineHead(headMeta, ctx);
137
- }
138
- delete r.head;
139
- }
140
- }
141
121
  return Object.assign({}, ...objects);
142
122
  }
143
123
  finally {
@@ -163,7 +143,6 @@ export async function runLayoutsAndPage(matched, ctx, opts) {
163
143
  dev: opts.dev,
164
144
  appRoot: opts.appRoot,
165
145
  pattern: layout.pattern,
166
- isLayout: true,
167
146
  });
168
147
  if (typeof mod.render === 'function') {
169
148
  const result = await mod.render(ctx);
@@ -181,7 +160,6 @@ export async function runLayoutsAndPage(matched, ctx, opts) {
181
160
  dev: opts.dev,
182
161
  appRoot: opts.appRoot,
183
162
  pattern: matched.route.pattern,
184
- isLayout: false,
185
163
  });
186
164
  if (typeof pageMod.render === 'function') {
187
165
  const result = await pageMod.render(ctx);
@@ -284,11 +262,11 @@ export function renderRouteStreaming(matched, ctx, opts) {
284
262
  const pretextWire = ctx.pretext !== undefined ? serialize(ctx.pretext) : serialize({});
285
263
  resetTtlContext();
286
264
  const devBridgeScript = opts.dev && bridgeLogs.length > 0
287
- ? `<script>window.__NEXUS_SERVER_LOGS__=${escapeJsonForScriptPayload(JSON.stringify(bridgeLogs))};window.__NEXUS_BUILD_INFO__=${escapeJsonForScriptPayload(JSON.stringify({
265
+ ? `<script>window.__NEXUS_SERVER_LOGS__=${JSON.stringify(bridgeLogs)};window.__NEXUS_BUILD_INFO__=${JSON.stringify({
288
266
  totalJs: 8_400 + islandCount * 1_200,
289
267
  reactEquivalent: 148_000,
290
268
  islandCount,
291
- }))};</script>`
269
+ })};</script>`
292
270
  : undefined;
293
271
  const payload = devBridgeScript
294
272
  ? { html: content, pretextWire, devBridgeScript }
@@ -323,9 +301,6 @@ export async function renderRoute(matched, ctx, opts) {
323
301
  islandCount: 0,
324
302
  };
325
303
  }
326
- // Flush and render collected head metadata for SSR injection.
327
- const headMetas = flushHead(ctx);
328
- const headHtml = renderHeadToString(headMetas);
329
304
  const body = await runLayoutsAndPage(matched, ctx, opts);
330
305
  if (!body.ok) {
331
306
  return body.result;
@@ -351,24 +326,15 @@ export async function renderRoute(matched, ctx, opts) {
351
326
  }
352
327
  }
353
328
  const pretextWire = ctx.pretext !== undefined ? serialize(ctx.pretext) : null;
354
- let fullHtml = wrapWithDocument(content, opts, bridgeLogs, islandCount, pretextWire, headHtml);
329
+ let fullHtml = wrapWithDocument(content, opts, bridgeLogs, islandCount, pretextWire);
355
330
  if (!/^<!DOCTYPE/i.test(fullHtml.trimStart())) {
356
331
  fullHtml = DOCTYPE + '\n' + fullHtml;
357
332
  }
358
- // Vary header for cache correctness:
359
- // - 'Accept-Encoding' — responses differ when the proxy applies gzip/br.
360
- // - 'Accept' — clients negotiating content type get different payloads.
361
- // Without Vary, shared caches (CDN, Varnish) can serve compressed responses to
362
- // clients that don't support compression, or serve the wrong content type.
363
- const vary = cacheControl.strategy === 'private-no-store'
364
- ? undefined // private/no-store: Vary irrelevant, saves a header byte
365
- : 'Accept, Accept-Encoding';
366
333
  return {
367
334
  html: fullHtml,
368
335
  headers: {
369
336
  'content-type': 'text/html; charset=utf-8',
370
337
  'cache-control': cacheControl.header,
371
- ...(vary ? { vary } : {}),
372
338
  'x-nexus-cache-strategy': cacheControl.strategy,
373
339
  'x-nexus-island-count': String(islandCount),
374
340
  ...(opts.dev ? { 'x-nexus-ttl': String(ttl) } : {}),
@@ -399,67 +365,11 @@ function injectBeforeClosingHead(html, injection) {
399
365
  function stripLeadingDoctype(html) {
400
366
  return html.replace(/^\s*<!DOCTYPE[^>]*>/i, '').trimStart();
401
367
  }
402
- /**
403
- * Devalue-safe JSON serialization for inline `<script>` payloads.
404
- *
405
- * JSON.stringify alone is insufficient for embedding inside HTML `<script>` tags:
406
- * - `</script>` closes the script block even inside a string.
407
- * - `<!--` starts an HTML comment that swallows subsequent content.
408
- * - `<![CDATA[` / `]]>` cause parser confusion in XHTML.
409
- * - U+2028 / U+2029 are valid JSON but break JS string literals in ES5.
410
- *
411
- * Escape strategy (used by Django, Ruby on Rails, SvelteKit, and devalue):
412
- * < → \u003c stops </script> and <!
413
- * > → \u003e stops ]]>
414
- * & → \u0026 stops &lt; entities re-parsed by the HTML parser
415
- * \u2028 → \u2028 literal → escaped (line separator, breaks JS literals)
416
- * \u2029 → \u2029 literal → escaped (paragraph separator)
417
- *
418
- * The result is valid JSON that JSON.parse / JSON5 will parse identically
419
- * to the original value — only the byte representation differs.
420
- */
368
+ /** Avoid `</script>` breaking out of inline JSON when embedding serialized pretext. */
421
369
  function escapeJsonForScriptPayload(json) {
422
- return json
423
- .replace(/</g, '\\u003c')
424
- .replace(/>/g, '\\u003e')
425
- .replace(/&/g, '\\u0026')
426
- .replace(/\u2028/g, '\\u2028')
427
- .replace(/\u2029/g, '\\u2029');
428
- }
429
- /**
430
- * Strip `?query` and `#hash` from a URL-like string and return the pathname.
431
- * Used when comparing whether a stylesheet href in the user's `<head>` refers
432
- * to the same physical resource as one Nexus is about to inject.
433
- */
434
- function stripQueryAndHash(href) {
435
- const q = href.indexOf('?');
436
- const h = href.indexOf('#');
437
- const cuts = [q, h].filter((i) => i >= 0);
438
- return cuts.length ? href.slice(0, Math.min(...cuts)) : href;
370
+ return json.replace(/</g, '\\u003c');
439
371
  }
440
- /**
441
- * Scan the user's already-rendered HTML for `<link rel="stylesheet">` tags and
442
- * return the set of declared pathnames (queries stripped). Lets the renderer
443
- * skip injecting framework stylesheets the user already declared in a custom
444
- * layout, preventing duplicate network requests for the same CSS file.
445
- */
446
- function collectDeclaredStylesheetPaths(content) {
447
- const out = new Set();
448
- // Match <link ... rel="stylesheet" ... href="..."> in either attribute order.
449
- const linkTagRe = /<link\b[^>]*>/gi;
450
- let m;
451
- while ((m = linkTagRe.exec(content)) !== null) {
452
- const tag = m[0];
453
- if (!/\brel\s*=\s*["']?stylesheet["']?/i.test(tag))
454
- continue;
455
- const hrefMatch = /\bhref\s*=\s*("([^"]*)"|'([^']*)')/i.exec(tag);
456
- const href = hrefMatch?.[2] ?? hrefMatch?.[3];
457
- if (href)
458
- out.add(stripQueryAndHash(href));
459
- }
460
- return out;
461
- }
462
- function isFullHtmlDocument(content) {
372
+ export function isFullHtmlDocument(content) {
463
373
  const t = content.trimStart();
464
374
  if (/^<\s*html[\s>]/i.test(t))
465
375
  return true;
@@ -469,44 +379,25 @@ function isFullHtmlDocument(content) {
469
379
  return false;
470
380
  }
471
381
  /** Default + app `imports` for dynamically imported island bundles (bare specifiers). */
472
- function buildImportMapScript(extra, nonce, dev) {
382
+ function buildImportMapScript(extra) {
473
383
  const base = {
474
384
  '@nexus_js/runtime/island': '/_nexus/rt/island.js',
475
385
  '@nexus_js/runtime': '/_nexus/rt/index.js',
476
386
  '@nexus_js/serialize': '/_nexus/rt/serialize.js',
477
387
  };
478
- if (dev) {
479
- base['$lib/'] = '/_nexus/lib/';
480
- }
481
- else {
482
- base['$lib/'] = '/_nexus/lib/';
483
- }
484
388
  const imports = extra && typeof extra === 'object' ? { ...base, ...extra } : base;
485
389
  const json = JSON.stringify({ imports }, null, 2);
486
- const nonceAttr = nonce ? ` nonce="${nonce}"` : '';
487
- return `<script${nonceAttr} type="importmap">\n${json}\n</script>`;
390
+ return `<script type="importmap">\n${json}\n</script>`;
488
391
  }
489
- export function wrapWithDocument(content, opts, bridgeLogs = [], islandCount = 0, pretextWire = null, headHtml = '') {
490
- const n = opts.cspNonce ? ` nonce="${opts.cspNonce}"` : '';
392
+ export function wrapWithDocument(content, opts, bridgeLogs = [], islandCount = 0, pretextWire = null) {
491
393
  const pretextScript = pretextWire !== null
492
- ? `<script${n} type="application/json" id="__NEXUS_PRETEXT__">${escapeJsonForScriptPayload(pretextWire)}</script>`
394
+ ? `<script type="application/json" id="__NEXUS_PRETEXT__">${escapeJsonForScriptPayload(pretextWire)}</script>`
493
395
  : '';
494
- const buildIdScript = opts.buildId !== undefined && opts.buildId !== ''
495
- ? `<script${n}>window.__NEXUS_BUILD_ID__=${escapeJsonForScriptPayload(JSON.stringify(opts.buildId))};</script>`
496
- : '';
497
- // Skip injecting any framework stylesheet whose pathname (query stripped) is
498
- // already declared by the user's layout `<head>`. Without this guard the
499
- // user ends up with two `<link>` elements pointing at the same CSS file via
500
- // different URLs (e.g. `/_nexus/styles.css` from the framework and
501
- // `/_nexus/styles.css?v=20260422` from a hand-written cache-busting tag),
502
- // causing the browser to fetch the same stylesheet twice.
503
- const userDeclaredStylePaths = collectDeclaredStylesheetPaths(content);
504
396
  const styleLinks = opts.assets.styles
505
- .filter((href) => !userDeclaredStylePaths.has(stripQueryAndHash(href)))
506
397
  .map((href) => `<link rel="stylesheet" href="${href}">`)
507
398
  .join('\n ');
508
399
  const runtimeScript = opts.assets.runtime
509
- ? `<script${n} type="module" src="${opts.assets.runtime}"></script>`
400
+ ? `<script type="module" src="${opts.assets.runtime}"></script>`
510
401
  : '';
511
402
  /** Default host box for custom element — avoids full-width flex rows that steal hits on tiny/empty islands. */
512
403
  const nexusIslandHostCSS = `<style id="nexus-island-host">
@@ -519,27 +410,22 @@ nexus-island {
519
410
  }
520
411
  </style>`;
521
412
  // Import map — bare specifiers in island bundles (see `browser.importMap` in nexus.config.ts).
522
- // importmap scripts also require the nonce in strict CSP environments.
523
- const importMap = buildImportMapScript(opts.browserImportMap ?? null, opts.cspNonce, opts.dev);
413
+ const importMap = buildImportMapScript(opts.browserImportMap ?? null);
524
414
  // Dev: SSE to /_nexus/dev/hot — server pushes `reload` after file watcher runs server.reload().
525
415
  const hmrScript = opts.dev
526
- ? `<script${n}>(function(){if(typeof EventSource==='undefined')return;new EventSource('/_nexus/dev/hot').addEventListener('reload',function(){location.reload()})})();</script>`
416
+ ? `<script>(function(){if(typeof EventSource==='undefined')return;new EventSource('/_nexus/dev/hot').addEventListener('reload',function(){location.reload()})})();</script>`
527
417
  : '';
528
418
  // Server→browser log bridge (dev only)
529
- // All user-controlled strings (route paths, cache keys, etc.) are passed through
530
- // escapeJsonForScriptPayload to prevent </script> injection via log values.
531
- const bridgeScript = opts.dev ? `<script${n}>
419
+ const bridgeScript = opts.dev ? `<script>
532
420
  window.__NEXUS_DEV__ = true;
533
- window.__NEXUS_SERVER_LOGS__ = ${escapeJsonForScriptPayload(JSON.stringify(bridgeLogs))};
421
+ window.__NEXUS_SERVER_LOGS__ = ${JSON.stringify(bridgeLogs)};
534
422
  window.__NEXUS_BUILD_INFO__ = {
535
423
  totalJs: ${8_400 + islandCount * 1_200},
536
424
  reactEquivalent: 148_000,
537
425
  islandCount: ${islandCount}
538
426
  };
539
- </script>${nexusClientDevScript(n)}` : '';
427
+ </script>${nexusClientDevScript}` : '';
540
428
  const headInjection = `
541
- ${headHtml}
542
- ${buildIdScript}
543
429
  ${pretextScript}
544
430
  ${nexusIslandHostCSS}
545
431
  ${styleLinks}
@@ -550,10 +436,6 @@ window.__NEXUS_BUILD_INFO__ = {
550
436
  `;
551
437
  if (isFullHtmlDocument(content)) {
552
438
  const doc = /^<!DOCTYPE/i.test(content.trimStart()) ? stripLeadingDoctype(content) : content;
553
- // If the layout contains <!--nexus:head-->, replace it with the injection.
554
- if (doc.includes('<!--nexus:head-->')) {
555
- return doc.replace('<!--nexus:head-->', headInjection.trimStart());
556
- }
557
439
  return injectBeforeClosingHead(doc, headInjection);
558
440
  }
559
441
  return `<html lang="en">
@@ -572,8 +454,7 @@ window.__NEXUS_BUILD_INFO__ = {
572
454
  * Reads window.__NEXUS_SERVER_LOGS__ and prints them in the browser console.
573
455
  * Also sets up island hydration tracking hooks.
574
456
  */
575
- function nexusClientDevScript(nonceAttr) {
576
- return `<script${nonceAttr}>
457
+ const nexusClientDevScript = `<script>
577
458
  (function(){
578
459
  if (!window.__NEXUS_DEV__) return;
579
460
  const logs = window.__NEXUS_SERVER_LOGS__ ?? [];
@@ -689,20 +570,12 @@ function nexusClientDevScript(nonceAttr) {
689
570
  }, 1200);
690
571
  })();
691
572
  </script>`;
692
- }
693
573
  /**
694
574
  * Serializes island props for client-side hydration.
695
- *
696
- * Encoding: base64url (URL-safe, no padding issues in HTML attributes).
697
- * We JSON-stringify first so any type (Date, nested objects, arrays) survives
698
- * the round-trip, then base64url-encode so the value is safe inside any HTML
699
- * attribute without escaping — base64 never contains `<`, `>`, `"`, or `&`.
700
- *
701
- * Using Buffer.from().toString('base64url') instead of btoa() because btoa()
702
- * throws RangeError on characters outside Latin-1 (e.g. emoji, CJK, etc.).
575
+ * Uses base64 to safely embed arbitrary JSON in HTML attributes.
703
576
  */
704
577
  export function serializeIslandProps(props) {
705
- return Buffer.from(JSON.stringify(props), 'utf-8').toString('base64url');
578
+ return btoa(JSON.stringify(props));
706
579
  }
707
580
  /**
708
581
  * Wraps a component's HTML output with island metadata for client hydration.
@@ -1 +1 @@
1
- {"version":3,"file":"renderer.js","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"renderer.js","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"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"}
@@ -51,10 +51,10 @@ export interface StreamingBoundary {
51
51
  id: string;
52
52
  /** The promise that will resolve to HTML (or a structured payload for Pretext streaming). */
53
53
  promise: Promise<StreamingPromiseValue>;
54
- /** Fallback HTML shown while the promise is pending. Injected next to the hole immediately on page paint. */
54
+ /** Fallback HTML shown while loading */
55
55
  fallback?: string;
56
- /** Error boundary HTML or factory. Overrides `onError` at the boundary level. */
57
- errorFallback?: string | ((err: unknown) => string);
56
+ /** Error boundary HTML (overrides error.nx at component level) */
57
+ errorFallback?: string;
58
58
  }
59
59
  export interface StreamController {
60
60
  /** Write the initial HTML shell (immediately) */
@@ -1 +1 @@
1
- {"version":3,"file":"streaming.d.ts","sourceRoot":"","sources":["../src/streaming.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAEH;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAC7B,MAAM,GACN;IACE,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEN,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,6FAA6F;IAC7F,OAAO,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACxC,6GAA6G;IAC7G,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iFAAiF;IACjF,aAAa,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,OAAO,KAAK,MAAM,CAAC,CAAC;CACrD;AAED,MAAM,WAAW,gBAAgB;IAC/B,iDAAiD;IACjD,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,0CAA0C;IAC1C,KAAK,EAAE,CAAC,QAAQ,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC7C,+BAA+B;IAC/B,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AA0CD;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAC1D,IAAI,GAAE;IACJ,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,MAAM,CAAC;CAC/B,GACL,QAAQ,CAwEV;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EACtC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EACnB,IAAI,EAAE;IACJ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,OAAO,KAAK,MAAM,CAAC,CAAC;CACrD,GACA;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,iBAAiB,CAAA;CAAE,CAmBlE;AAID;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,QAAQ,EACrB,OAAO,EAAE,OAAO,WAAW,EAAE,cAAc,EAC3C,YAAY,CAAC,EAAE,CACb,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KACtB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,GAC9C,OAAO,CAAC,IAAI,CAAC,CAuBf;AAoDD,8EAA8E;AAC9E,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C"}
1
+ {"version":3,"file":"streaming.d.ts","sourceRoot":"","sources":["../src/streaming.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAEH;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAC7B,MAAM,GACN;IACE,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEN,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,6FAA6F;IAC7F,OAAO,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACxC,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,gBAAgB;IAC/B,iDAAiD;IACjD,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,0CAA0C;IAC1C,KAAK,EAAE,CAAC,QAAQ,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC7C,+BAA+B;IAC/B,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AA0BD;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAC1D,IAAI,GAAE;IACJ,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,MAAM,CAAC;CAC/B,GACL,QAAQ,CAqEV;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EACtC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EACnB,IAAI,EAAE;IACJ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,OAAO,KAAK,MAAM,CAAC,CAAC;CACrD,GACA;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,iBAAiB,CAAA;CAAE,CAoBlE;AAID;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,QAAQ,EACrB,OAAO,EAAE,OAAO,WAAW,EAAE,cAAc,EAC3C,YAAY,CAAC,EAAE,CACb,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KACtB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,GAC9C,OAAO,CAAC,IAAI,CAAC,CAuBf;AAkDD,8EAA8E;AAC9E,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C"}
package/dist/streaming.js CHANGED
@@ -41,40 +41,24 @@
41
41
  /** Bootstrap script injected once per page */
42
42
  const BOOTSTRAP_SCRIPT = `<script id="__nx_stream_boot__">
43
43
  (function(){
44
- // Inject fallback content next to each hole immediately so users see a skeleton/spinner
45
- // while the real content is still loading on the server.
46
- function __nx_init_fallbacks(){
47
- document.querySelectorAll('template[data-nx-fallback]').forEach(function(tmpl){
48
- var fb=tmpl.getAttribute('data-nx-fallback');
49
- if(!fb)return;
50
- var id=tmpl.id.replace('nx-hole-','');
51
- var el=document.createElement('div');
52
- el.setAttribute('data-nx-hole-fb',id);
53
- el.innerHTML=fb;
54
- tmpl.parentNode&&tmpl.parentNode.insertBefore(el,tmpl.nextSibling);
55
- });
56
- }
57
44
  function __nx_fill(id){
58
45
  var fill=document.getElementById('nx-fill-'+id);
59
46
  var hole=document.getElementById('nx-hole-'+id);
60
- var fb=document.querySelector('[data-nx-hole-fb="'+id+'"]');
61
47
  if(fill&&hole){
62
48
  hole.replaceWith(fill.content.cloneNode(true));
63
49
  fill.remove();
64
50
  }
65
- if(fb)fb.remove();
51
+ }
52
+ function __nx_fill_error(id,html){
53
+ var hole=document.getElementById('nx-hole-'+id);
54
+ if(hole){var d=document.createElement('div');d.innerHTML=html;hole.replaceWith(d);}
66
55
  }
67
56
  function __nx_stream_complete(){
68
57
  document.dispatchEvent(new Event('nexus:stream-complete'));
69
58
  }
70
59
  window.__nx_fill=__nx_fill;
60
+ window.__nx_fill_error=__nx_fill_error;
71
61
  window.__nx_stream_complete=__nx_stream_complete;
72
- // Run after HTML is parsed so all holes are present.
73
- if(document.readyState==='loading'){
74
- document.addEventListener('DOMContentLoaded',__nx_init_fallbacks);
75
- }else{
76
- __nx_init_fallbacks();
77
- }
78
62
  })();
79
63
  </script>`;
80
64
  /**
@@ -118,12 +102,9 @@ export function createStreamingResponse(renderFn, opts = {}) {
118
102
  write(buildFillChunk(boundary.id, resolved));
119
103
  }
120
104
  catch (err) {
121
- const ef = boundary.errorFallback;
122
- const errorHtml = typeof ef === 'function'
123
- ? ef(err)
124
- : ef ??
125
- opts.onError?.(err) ??
126
- buildDefaultErrorHTML(err);
105
+ const errorHtml = boundary.errorFallback ??
106
+ opts.onError?.(err) ??
107
+ buildDefaultErrorHTML(err);
127
108
  write(buildErrorChunk(boundary.id, errorHtml));
128
109
  }
129
110
  });
@@ -172,8 +153,9 @@ export function createSuspenseBoundary(promise, opts) {
172
153
  if (opts.fallback !== undefined) {
173
154
  boundary.fallback = opts.fallback;
174
155
  }
175
- if (opts.errorFallback !== undefined) {
176
- boundary.errorFallback = opts.errorFallback;
156
+ const ef = typeof opts.errorFallback !== 'function' ? opts.errorFallback : undefined;
157
+ if (ef !== undefined) {
158
+ boundary.errorFallback = ef;
177
159
  }
178
160
  return { id, placeholder, boundary };
179
161
  }
@@ -214,7 +196,7 @@ function buildFillChunk(id, resolved) {
214
196
  const pretextWire = typeof resolved === 'object' && resolved !== null ? resolved.pretextWire : undefined;
215
197
  const devBridge = typeof resolved === 'object' && resolved !== null ? resolved.devBridgeScript : undefined;
216
198
  const pretextScript = pretextWire !== undefined
217
- ? `<script>(function(){var el=document.getElementById('__NEXUS_PRETEXT__');if(el)el.textContent=${JSON.stringify(pretextWire).replace(/</g, '\\u003c').replace(/>/g, '\\u003e')};})();</script>`
199
+ ? `<script>(function(){var el=document.getElementById('__NEXUS_PRETEXT__');if(el)el.textContent=${JSON.stringify(pretextWire)};})();</script>`
218
200
  : '';
219
201
  const bridge = devBridge ?? '';
220
202
  return (pretextScript +
@@ -228,9 +210,7 @@ function buildErrorChunk(id, html) {
228
210
  }
229
211
  function buildFatalErrorChunk(err) {
230
212
  const msg = err instanceof Error ? err.message : String(err);
231
- // Escape < to prevent </script> injection inside the inline script tag.
232
- const safeMsg = JSON.stringify(msg).replace(/</g, '\\u003c').replace(/>/g, '\\u003e');
233
- return `<script>console.error('[Nexus Stream] Fatal error:',${safeMsg})</script>`;
213
+ return `<script>console.error('[Nexus Stream] Fatal error:', ${JSON.stringify(msg)})</script>`;
234
214
  }
235
215
  function buildDefaultErrorHTML(err) {
236
216
  const msg = err instanceof Error ? err.message : String(err);
@@ -1 +1 @@
1
- {"version":3,"file":"streaming.js","sourceRoot":"","sources":["../src/streaming.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"streaming.js","sourceRoot":"","sources":["../src/streaming.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nexus_js/server",
3
- "version": "0.9.28",
3
+ "version": "0.9.29",
4
4
  "description": "Nexus Node HTTP server — SSR, server actions, islands & assets (middleware lives in @nexus_js/middleware for edge runtimes)",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -40,30 +40,17 @@
40
40
  }
41
41
  },
42
42
  "dependencies": {
43
- "@nexus_js/assets": "^0.9.22",
44
- "@nexus_js/compiler": "^0.9.22",
45
- "@nexus_js/connect": "^0.9.22",
46
- "@nexus_js/head": "^0.9.22",
47
- "@nexus_js/router": "^0.9.22",
48
- "@nexus_js/security": "^0.9.22",
49
- "@nexus_js/serialize": "^0.9.22"
50
- },
51
- "peerDependencies": {
52
- "@nexus_js/runtime": "^0.9.22",
53
- "@nexus_js/compiler": "^0.9.22"
54
- },
55
- "peerDependenciesMeta": {
56
- "@nexus_js/runtime": {
57
- "optional": true
58
- },
59
- "@nexus_js/compiler": {
60
- "optional": true
61
- }
43
+ "@nexus_js/assets": "0.9.29",
44
+ "@nexus_js/compiler": "0.9.29",
45
+ "@nexus_js/connect": "0.9.29",
46
+ "@nexus_js/security": "0.9.29",
47
+ "@nexus_js/router": "0.9.29",
48
+ "@nexus_js/serialize": "0.9.29"
62
49
  },
63
50
  "devDependencies": {
64
51
  "@types/node": "^22.0.0",
65
52
  "typescript": "^5.5.0",
66
- "vitest": "^4.0.0"
53
+ "vitest": "^2.0.0"
67
54
  },
68
55
  "license": "MIT",
69
56
  "homepage": "https://nexusjs.dev",
@@ -75,10 +62,6 @@
75
62
  "bugs": {
76
63
  "url": "https://github.com/bierfor/nexus/issues"
77
64
  },
78
- "funding": {
79
- "type": "individual",
80
- "url": "https://buymeacoffee.com/bierfor084"
81
- },
82
65
  "keywords": [
83
66
  "nexus",
84
67
  "framework",
@@ -100,7 +83,6 @@
100
83
  "scripts": {
101
84
  "build": "tsc -p tsconfig.json",
102
85
  "dev": "tsc -p tsconfig.json --watch",
103
- "typecheck": "tsc --noEmit -p tsconfig.json",
104
86
  "test": "vitest run --passWithNoTests",
105
87
  "clean": "rm -rf dist"
106
88
  }
@@ -1,14 +0,0 @@
1
- /**
2
- * Production build identifier — written by `nexus build` to `.nexus/build-id.json`.
3
- * Server and browser must agree on this value so stale tabs can be rejected with 412.
4
- */
5
- /**
6
- * Reads `.nexus/build-id.json` once and caches the result.
7
- * Returns `null` if the file is missing (dev without prior build, or legacy deploy).
8
- */
9
- export declare function loadAndCacheNexusBuildId(appRoot: string): string | null;
10
- /** Cached build id after {@link loadAndCacheNexusBuildId}; `null` if none loaded. */
11
- export declare function getExpectedNexusBuildId(): string | null;
12
- /** Test hook */
13
- export declare function resetNexusBuildIdCache(): void;
14
- //# sourceMappingURL=build-id.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"build-id.d.ts","sourceRoot":"","sources":["../src/build-id.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAiBvE;AAED,qFAAqF;AACrF,wBAAgB,uBAAuB,IAAI,MAAM,GAAG,IAAI,CAEvD;AAED,gBAAgB;AAChB,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C"}