@nexus_js/server 0.7.1 → 0.7.4

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 (72) hide show
  1. package/dist/actions.d.ts +2 -0
  2. package/dist/actions.d.ts.map +1 -1
  3. package/dist/actions.js +138 -2
  4. package/dist/actions.js.map +1 -1
  5. package/dist/constants.d.ts +6 -0
  6. package/dist/constants.d.ts.map +1 -0
  7. package/dist/constants.js +6 -0
  8. package/dist/constants.js.map +1 -0
  9. package/dist/context.d.ts +13 -2
  10. package/dist/context.d.ts.map +1 -1
  11. package/dist/context.js +7 -3
  12. package/dist/context.js.map +1 -1
  13. package/dist/dev-assets.d.ts +1 -1
  14. package/dist/dev-assets.d.ts.map +1 -1
  15. package/dist/dev-assets.js +15 -3
  16. package/dist/dev-assets.js.map +1 -1
  17. package/dist/dev-error-html.d.ts +19 -0
  18. package/dist/dev-error-html.d.ts.map +1 -0
  19. package/dist/dev-error-html.js +101 -0
  20. package/dist/dev-error-html.js.map +1 -0
  21. package/dist/dev-hot.d.ts +8 -0
  22. package/dist/dev-hot.d.ts.map +1 -0
  23. package/dist/dev-hot.js +30 -0
  24. package/dist/dev-hot.js.map +1 -0
  25. package/dist/dev-vault.d.ts +7 -0
  26. package/dist/dev-vault.d.ts.map +1 -0
  27. package/dist/dev-vault.js +66 -0
  28. package/dist/dev-vault.js.map +1 -0
  29. package/dist/devradar.d.ts +96 -0
  30. package/dist/devradar.d.ts.map +1 -0
  31. package/dist/devradar.js +69 -0
  32. package/dist/devradar.js.map +1 -0
  33. package/dist/handler.d.ts +7 -0
  34. package/dist/handler.d.ts.map +1 -0
  35. package/dist/handler.js +7 -0
  36. package/dist/handler.js.map +1 -0
  37. package/dist/index.d.ts +21 -1
  38. package/dist/index.d.ts.map +1 -1
  39. package/dist/index.js +142 -27
  40. package/dist/index.js.map +1 -1
  41. package/dist/inspector.d.ts +9 -0
  42. package/dist/inspector.d.ts.map +1 -0
  43. package/dist/inspector.js +8 -0
  44. package/dist/inspector.js.map +1 -0
  45. package/dist/load-module.d.ts +4 -3
  46. package/dist/load-module.d.ts.map +1 -1
  47. package/dist/load-module.js +64 -22
  48. package/dist/load-module.js.map +1 -1
  49. package/dist/logger.d.ts +0 -11
  50. package/dist/logger.d.ts.map +1 -1
  51. package/dist/logger.js +2 -1
  52. package/dist/logger.js.map +1 -1
  53. package/dist/navigate.d.ts.map +1 -1
  54. package/dist/navigate.js +73 -12
  55. package/dist/navigate.js.map +1 -1
  56. package/dist/renderer.d.ts +32 -1
  57. package/dist/renderer.d.ts.map +1 -1
  58. package/dist/renderer.js +259 -46
  59. package/dist/renderer.js.map +1 -1
  60. package/dist/shield-runtime.d.ts +7 -0
  61. package/dist/shield-runtime.d.ts.map +1 -0
  62. package/dist/shield-runtime.js +34 -0
  63. package/dist/shield-runtime.js.map +1 -0
  64. package/dist/streaming.d.ts +14 -3
  65. package/dist/streaming.d.ts.map +1 -1
  66. package/dist/streaming.js +26 -9
  67. package/dist/streaming.js.map +1 -1
  68. package/dist/streaming.test.d.ts +2 -0
  69. package/dist/streaming.test.d.ts.map +1 -0
  70. package/dist/streaming.test.js +63 -0
  71. package/dist/streaming.test.js.map +1 -0
  72. package/package.json +28 -7
package/dist/logger.d.ts CHANGED
@@ -1,14 +1,3 @@
1
- /**
2
- * Nexus Server Logger — terminal observability for SSR, Actions, HMR.
3
- *
4
- * Symbol key:
5
- * ○ Static / immutable (CDN-cached forever)
6
- * ◑ PPR / SWR (partially cached, stale-while-revalidate)
7
- * λ Dynamic (no CDN cache, server-rendered per request)
8
- * ~ Streaming (Suspense, can't cache)
9
- * ▲ Server Action (mutation)
10
- * ✖ Error (any 4xx/5xx)
11
- */
12
1
  export type CacheStrategy = 'static-immutable' | 'swr' | 'dynamic-no-store' | 'streaming-no-store' | 'private-no-store';
13
2
  export type RouteSymbol = 'static' | 'ppr' | 'dynamic' | 'streaming' | 'error';
14
3
  export interface RouteLogEntry {
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAWH,MAAM,MAAM,aAAa,GACrB,kBAAkB,GAClB,KAAK,GACL,kBAAkB,GAClB,oBAAoB,GACpB,kBAAkB,CAAC;AAEvB,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;AAE/E,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAS,MAAM,CAAC;IACtB,IAAI,EAAW,MAAM,CAAC;IACtB,MAAM,EAAS,MAAM,CAAC;IACtB,QAAQ,EAAO,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC;IACvC,kEAAkE;IAClE,WAAW,CAAC,EAAG,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAW,MAAM,CAAC;IACtB,QAAQ,EAAO,MAAM,CAAC;IACtB,MAAM,EAAS,SAAS,GAAG,OAAO,GAAG,WAAW,GAAG,UAAU,GAAG,QAAQ,CAAC;IACzE,QAAQ,CAAC,EAAM,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAK,MAAM,CAAC;CAClB;AA+CD,eAAO,MAAM,WAAW;IACtB;;;OAGG;iBACU,aAAa,GAAG,IAAI;IA0BjC;;;OAGG;kBACW,cAAc,GAAG,IAAI;IA+BnC;;OAEG;eACQ,WAAW,GAAG,IAAI;IAW7B;;;OAGG;iBACU;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI;CAuBrF,CAAC;AAGF,YAAY,EAAE,aAAa,IAAI,aAAa,EAAE,cAAc,IAAI,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAuBA,MAAM,MAAM,aAAa,GACrB,kBAAkB,GAClB,KAAK,GACL,kBAAkB,GAClB,oBAAoB,GACpB,kBAAkB,CAAC;AAEvB,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;AAE/E,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAS,MAAM,CAAC;IACtB,IAAI,EAAW,MAAM,CAAC;IACtB,MAAM,EAAS,MAAM,CAAC;IACtB,QAAQ,EAAO,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC;IACvC,kEAAkE;IAClE,WAAW,CAAC,EAAG,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAW,MAAM,CAAC;IACtB,QAAQ,EAAO,MAAM,CAAC;IACtB,MAAM,EAAS,SAAS,GAAG,OAAO,GAAG,WAAW,GAAG,UAAU,GAAG,QAAQ,CAAC;IACzE,QAAQ,CAAC,EAAM,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAK,MAAM,CAAC;CAClB;AA+CD,eAAO,MAAM,WAAW;IACtB;;;OAGG;iBACU,aAAa,GAAG,IAAI;IA0BjC;;;OAGG;kBACW,cAAc,GAAG,IAAI;IA+BnC;;OAEG;eACQ,WAAW,GAAG,IAAI;IAW7B;;;OAGG;iBACU;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI;CAuBrF,CAAC;AAGF,YAAY,EAAE,aAAa,IAAI,aAAa,EAAE,cAAc,IAAI,cAAc,EAAE,CAAC"}
package/dist/logger.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { STUDIO_DEFAULT_PORT } from './constants.js';
1
2
  /**
2
3
  * Nexus Server Logger — terminal observability for SSR, Actions, HMR.
3
4
  *
@@ -143,7 +144,7 @@ export const nexusLogger = {
143
144
  ` ${env} ${ready}\n` +
144
145
  `\n ${c.green}➜${c.reset} ${c.bold}Local${c.reset} ${c.cyan}http://localhost:${opts.port}/${c.reset}` +
145
146
  (opts.dev
146
- ? `\n ${c.green}➜${c.reset} ${c.bold}Studio${c.reset} ${c.cyan}http://localhost:7822/${c.reset} ${c.dim}nexus studio${c.reset}`
147
+ ? `\n ${c.green}➜${c.reset} ${c.bold}Studio${c.reset} ${c.cyan}http://localhost:${STUDIO_DEFAULT_PORT}/${c.reset} ${c.dim}nexus studio${c.reset}`
147
148
  : '') +
148
149
  `\n\n Symbol key:` +
149
150
  ` ${c.green}○${c.reset} static ` +
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"navigate.d.ts","sourceRoot":"","sources":["../src/navigate.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/E,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,aAAa,EACvB,UAAU,EAAE,aAAa,GACxB,OAAO,CAAC,QAAQ,CAAC,CAgDnB"}
1
+ {"version":3,"file":"navigate.d.ts","sourceRoot":"","sources":["../src/navigate.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/E,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,aAAa,EACvB,UAAU,EAAE,aAAa,GACxB,OAAO,CAAC,QAAQ,CAAC,CA4FnB"}
package/dist/navigate.js CHANGED
@@ -6,26 +6,38 @@
6
6
  * optimized for the DOM morphing algorithm.
7
7
  */
8
8
  import { matchRoute } from '@nexus_js/router';
9
- import { createContext } from './context.js';
9
+ import { createContext, NotFoundSignal, RedirectSignal } from './context.js';
10
10
  import { renderRoute } from './renderer.js';
11
11
  export async function handleNavigationRequest(request, manifest, renderOpts) {
12
- const url = new URL(request.url);
13
- const path = url.searchParams.get('path') ?? '/';
14
- const matched = matchRoute(path, manifest);
12
+ const reqUrl = new URL(request.url);
13
+ const rawPath = reqUrl.searchParams.get('path') ?? '/';
14
+ /** Resolve `path` query (may include ?query and #hash) against site origin — not against /_nexus/navigate. */
15
+ let targetUrl;
16
+ try {
17
+ targetUrl = new URL(rawPath, new URL(`${reqUrl.origin}/`));
18
+ }
19
+ catch {
20
+ return new Response(JSON.stringify({ error: 'Invalid path', path: rawPath }), { status: 400, headers: { 'content-type': 'application/json' } });
21
+ }
22
+ if (targetUrl.origin !== reqUrl.origin) {
23
+ return new Response(JSON.stringify({ error: 'Only same-origin paths are allowed' }), { status: 400, headers: { 'content-type': 'application/json' } });
24
+ }
25
+ const pathname = targetUrl.pathname || '/';
26
+ const matched = matchRoute(pathname, manifest);
15
27
  if (!matched) {
16
- return new Response(JSON.stringify({ error: 'Route not found', path }), { status: 404, headers: { 'content-type': 'application/json' } });
28
+ return new Response(JSON.stringify({ error: 'Route not found', path: pathname, rawPath }), { status: 404, headers: { 'content-type': 'application/json' } });
17
29
  }
18
- // Create a mock request for the target path
19
- const targetRequest = new Request(new URL(path, request.url).href, { headers: request.headers });
30
+ // Full URL (search + hash) so ctx.url matches a normal visit (?lang=, etc.)
31
+ const targetRequest = new Request(targetUrl.href, { headers: request.headers });
20
32
  const ctx = createContext(targetRequest, matched.params);
21
33
  try {
22
34
  const result = await renderRoute(matched, ctx, renderOpts);
23
- // Extract <head> content from the full HTML
24
- const headMatch = /<head>([\s\S]*?)<\/head>/i.exec(result.html);
25
- const bodyMatch = /<body[^>]*>([\s\S]*?)<\/body>/i.exec(result.html);
35
+ // Extract inner HTML — use last closing tag so </body> inside scripts doesn't truncate.
36
+ const headHTML = extractHeadInnerHtml(result.html);
37
+ const bodyHTML = extractBodyInnerHtml(result.html);
26
38
  const payload = {
27
- html: bodyMatch?.[1]?.trim() ?? result.html,
28
- headHTML: headMatch?.[1]?.trim() ?? '',
39
+ html: bodyHTML,
40
+ headHTML,
29
41
  islandManifest: [],
30
42
  timestamp: Date.now(),
31
43
  };
@@ -39,7 +51,56 @@ export async function handleNavigationRequest(request, manifest, renderOpts) {
39
51
  });
40
52
  }
41
53
  catch (err) {
54
+ if (err instanceof NotFoundSignal) {
55
+ return new Response(JSON.stringify({ error: 'not_found', path: pathname }), {
56
+ status: 404,
57
+ headers: {
58
+ 'content-type': 'application/json',
59
+ 'cache-control': 'no-store',
60
+ 'x-nexus-navigate': '1',
61
+ },
62
+ });
63
+ }
64
+ if (err instanceof RedirectSignal) {
65
+ // Forward Set-Cookie (e.g. logout clearing pf_admin_token) — was missing so SPA sign-out never cleared the cookie.
66
+ const headers = new Headers({
67
+ 'content-type': 'application/json',
68
+ 'cache-control': 'no-store',
69
+ 'x-nexus-navigate': '1',
70
+ });
71
+ err.responseHeaders.forEach((value, key) => {
72
+ headers.append(key, value);
73
+ });
74
+ return new Response(JSON.stringify({ redirect: err.location, status: err.status }), {
75
+ status: 200,
76
+ headers,
77
+ });
78
+ }
42
79
  return new Response(JSON.stringify({ error: err instanceof Error ? err.message : String(err) }), { status: 500, headers: { 'content-type': 'application/json' } });
43
80
  }
44
81
  }
82
+ /** Inner HTML of first <head>…</head> using the last </head> (avoids greedy/non-greedy traps). */
83
+ function extractHeadInnerHtml(html) {
84
+ const m = /<head[^>]*>/i.exec(html);
85
+ if (!m || m.index === undefined)
86
+ return '';
87
+ const start = m.index + m[0].length;
88
+ const lower = html.toLowerCase();
89
+ const closeIdx = lower.lastIndexOf('</head>');
90
+ if (closeIdx === -1 || closeIdx <= start)
91
+ return '';
92
+ return html.slice(start, closeIdx).trim();
93
+ }
94
+ /** Inner HTML of first <body>…</body> using the last </body>. */
95
+ function extractBodyInnerHtml(html) {
96
+ const m = /<body[^>]*>/i.exec(html);
97
+ if (!m || m.index === undefined)
98
+ return html;
99
+ const start = m.index + m[0].length;
100
+ const lower = html.toLowerCase();
101
+ const closeIdx = lower.lastIndexOf('</body>');
102
+ if (closeIdx === -1 || closeIdx <= start)
103
+ return html.slice(start).trim();
104
+ return html.slice(start, closeIdx).trim();
105
+ }
45
106
  //# sourceMappingURL=navigate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"navigate.js","sourceRoot":"","sources":["../src/navigate.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAU5C,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAgB,EAChB,QAAuB,EACvB,UAAyB;IAEzB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;IAEjD,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAE3C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,IAAI,QAAQ,CACjB,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,EAClD,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,CACjE,CAAC;IACJ,CAAC;IAED,4CAA4C;IAC5C,MAAM,aAAa,GAAG,IAAI,OAAO,CAC/B,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAC/B,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAC7B,CAAC;IACF,MAAM,GAAG,GAAG,aAAa,CAAC,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAEzD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QAE3D,4CAA4C;QAC5C,MAAM,SAAS,GAAG,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAChE,MAAM,SAAS,GAAG,gCAAgC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAErE,MAAM,OAAO,GAAsB;YACjC,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,MAAM,CAAC,IAAI;YAC3C,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE;YACtC,cAAc,EAAE,EAAE;YAClB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC;QAEF,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;YAC3C,MAAM,EAAE,GAAG;YACX,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,UAAU;gBAC3B,kBAAkB,EAAE,GAAG;aACxB;SACF,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,IAAI,QAAQ,CACjB,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAC3E,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,CACjE,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"navigate.js","sourceRoot":"","sources":["../src/navigate.ts"],"names":[],"mappings":"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"}
@@ -15,12 +15,17 @@
15
15
  * 5. Has user session → Cache-Control: private, no-store (never CDN-cache)
16
16
  */
17
17
  import type { MatchedRoute } from '@nexus_js/router';
18
- import type { NexusContext } from './context.js';
18
+ import { type NexusContext } from './context.js';
19
19
  export interface RenderOptions {
20
20
  dev: boolean;
21
21
  /** Required for loading `.nx` routes (dev compile + prod build path). */
22
22
  appRoot: string;
23
23
  assets: AssetManifest;
24
+ /**
25
+ * Extra `<script type="importmap">` `imports` entries (merged over Nexus defaults).
26
+ * Pass from `nexus.config.ts` `browser.importMap` for island bare imports (e.g. `qr-code-styling`).
27
+ */
28
+ browserImportMap?: Record<string, string>;
24
29
  }
25
30
  export interface AssetManifest {
26
31
  runtime: string;
@@ -73,6 +78,31 @@ export declare function computeCacheControl(ctx: NexusContext): {
73
78
  * Renders a matched route to a full HTML response.
74
79
  * Wraps the page with its layout chain and injects island hydration scripts.
75
80
  */
81
+ /**
82
+ * Runs `nxPretext` from every layout (outer → inner) and the page in parallel,
83
+ * then shallow-merges results onto `ctx.pretext` (page wins on key collisions).
84
+ */
85
+ export declare function mergeRoutePretext(matched: MatchedRoute, ctx: NexusContext, opts: RenderOptions): Promise<Record<string, unknown>>;
86
+ type LayoutsAndPageOk = {
87
+ ok: true;
88
+ content: string;
89
+ islandCount: number;
90
+ };
91
+ type LayoutsAndPageErr = {
92
+ ok: false;
93
+ result: RenderResult;
94
+ };
95
+ /**
96
+ * Runs layouts + page render after `ctx.pretext` is set (used by buffered and streaming SSR).
97
+ */
98
+ export declare function runLayoutsAndPage(matched: MatchedRoute, ctx: NexusContext, opts: RenderOptions): Promise<LayoutsAndPageOk | LayoutsAndPageErr>;
99
+ /**
100
+ * Progressive SSR: flush the HTML shell (head + skeleton) before `nxPretext` finishes,
101
+ * then stream the real layout/page fragment and update `#__NEXUS_PRETEXT__`.
102
+ *
103
+ * Requires fragment layouts: the composed route must not emit a root `&lt;html&gt;` document.
104
+ */
105
+ export declare function renderRouteStreaming(matched: MatchedRoute, ctx: NexusContext, opts: RenderOptions): Response;
76
106
  export declare function renderRoute(matched: MatchedRoute, ctx: NexusContext, opts: RenderOptions): Promise<RenderResult>;
77
107
  /**
78
108
  * Serializes island props for client-side hydration.
@@ -89,4 +119,5 @@ export declare function wrapIsland(html: string, opts: {
89
119
  props?: Record<string, unknown>;
90
120
  mediaQuery?: string;
91
121
  }): string;
122
+ export {};
92
123
  //# sourceMappingURL=renderer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAGjD,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,OAAO,CAAC;IACb,yEAAyE;IACzE,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,aAAa,CAAC;CACvB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,QAAQ,EAAE,MAAM,CAAC;IACjB,0DAA0D;IAC1D,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,yDAAyD;AACzD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,cAAc,CAAC;IAC/D,IAAI,CAAC,EAAW,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAO,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAO,OAAO,CAAC;IACxB,WAAW,CAAC,EAAI,MAAM,CAAC;IACvB,GAAG,CAAC,EAAY,MAAM,CAAC;IACvB,KAAK,CAAC,EAAU,MAAM,CAAC;CACxB;AAED,+EAA+E;AAC/E,MAAM,WAAW,SAAS;IACxB,wCAAwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAYD,6EAA6E;AAC7E,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAElD;AAED,8DAA8D;AAC9D,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED,sEAAsE;AACtE,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C;AAQD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,YAAY,GAAG;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;CAClB,CAgDA;AAID;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,YAAY,EACrB,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,YAAY,CAAC,CA2FvB;AAgMD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAE3E;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE;IACJ,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GACA,MAAM,CASR"}
1
+ {"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"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"}