@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/index.js CHANGED
@@ -9,11 +9,62 @@ import { buildRouteManifest, matchRoute } from '@nexus_js/router';
9
9
  import { handleActionRequest } from './actions.js';
10
10
  import { handleSSERequestNode, isConnectRequest, topicFromUrl } from '@nexus_js/connect';
11
11
  import { buildAggregatedNxStylesheet, bustAggregatedStylesCache, compileIslandClientBundle, isIslandClientRequest, tryServeRuntimeAsset, } from './dev-assets.js';
12
- import { renderRoute } from './renderer.js';
13
- import { preloadRegisteredServerActions } from './load-module.js';
12
+ import { devErrorHtmlPage } from './dev-error-html.js';
13
+ import { broadcastDevHotReload, subscribeDevHotClient } from './dev-hot.js';
14
+ import { renderRoute, renderRouteStreaming } from './renderer.js';
15
+ import { pipeToNodeResponse } from './streaming.js';
16
+ import { handleNavigationRequest } from './navigate.js';
17
+ import { bumpDevReloadGeneration, preloadRegisteredServerActions } from './load-module.js';
14
18
  import { createContext, RedirectSignal, NotFoundSignal } from './context.js';
15
- export { createAction, registerAction, ActionError } from './actions.js';
19
+ import { nexusVault } from '@nexus_js/security';
20
+ import { handleDevVaultPost } from './dev-vault.js';
21
+ import { refreshShieldAllowlist, isActionBlockedByShield, setShieldLite, } from './shield-runtime.js';
22
+ import { emitDevRadar } from './devradar.js';
23
+ export { STUDIO_DEFAULT_PORT } from './constants.js';
24
+ export { createAction, registerAction, ActionError, getRegisteredActionNames } from './actions.js';
16
25
  export { createContext } from './context.js';
26
+ export { nexusVault } from '@nexus_js/security';
27
+ export { mergeRoutePretext } from './renderer.js';
28
+ export { registerDevRadarSink, emitDevRadar, sanitizeTelemetryValue, newTraceId } from './devradar.js';
29
+ /** Merge ctx response headers (Set-Cookie, etc.) with redirect Location. */
30
+ function redirectHeadersForWriteHead(err) {
31
+ const setCookies = [];
32
+ const out = { location: err.location };
33
+ err.responseHeaders.forEach((value, key) => {
34
+ if (key.toLowerCase() === 'set-cookie') {
35
+ setCookies.push(value);
36
+ }
37
+ else {
38
+ out[key] = value;
39
+ }
40
+ });
41
+ if (setCookies.length === 1) {
42
+ out['set-cookie'] = setCookies[0];
43
+ }
44
+ else if (setCookies.length > 1) {
45
+ out['set-cookie'] = setCookies;
46
+ }
47
+ return out;
48
+ }
49
+ /** Merge Hardened Mode headers (changelog v0.5) — CSP nonces are a future enhancement. */
50
+ function mergeHardenedHeaders(headers, hardened, dev) {
51
+ const h = {};
52
+ for (const [k, v] of Object.entries(headers)) {
53
+ if (v !== undefined)
54
+ h[k] = v;
55
+ }
56
+ if (!hardened)
57
+ return h;
58
+ h['x-frame-options'] = 'DENY';
59
+ h['x-content-type-options'] = 'nosniff';
60
+ h['referrer-policy'] = 'strict-origin-when-cross-origin';
61
+ h['permissions-policy'] = 'camera=(), microphone=(), geolocation=()';
62
+ h['x-nexus-security'] = 'hardened';
63
+ if (!dev) {
64
+ h['strict-transport-security'] = 'max-age=31536000; includeSubDomains';
65
+ }
66
+ return h;
67
+ }
17
68
  const MIME_TYPES = {
18
69
  '.html': 'text/html; charset=utf-8',
19
70
  '.js': 'application/javascript; charset=utf-8',
@@ -35,10 +86,12 @@ export async function createNexusServer(opts) {
35
86
  const dev = opts.dev ?? false;
36
87
  const routesDir = join(opts.root, 'src', 'routes');
37
88
  const publicDir = join(opts.root, opts.publicDir ?? 'public');
89
+ setShieldLite(opts.security?.shieldLite === true);
38
90
  let manifest = await buildRouteManifest(routesDir);
39
91
  const renderOpts = {
40
92
  dev,
41
93
  appRoot: opts.root,
94
+ ...(opts.browserImportMap ? { browserImportMap: opts.browserImportMap } : {}),
42
95
  assets: {
43
96
  /** ESM entry + chunks served from @nexus_js/runtime/dist via /_nexus/rt/* */
44
97
  runtime: '/_nexus/rt/index.js',
@@ -46,6 +99,7 @@ export async function createNexusServer(opts) {
46
99
  islands: new Map(),
47
100
  },
48
101
  };
102
+ const sec = (h) => mergeHardenedHeaders(h, opts.security?.hardened, dev);
49
103
  const server = createServer(async (req, res) => {
50
104
  const t0 = Date.now();
51
105
  const url = new URL(req.url ?? '/', `http://${req.headers.host ?? 'localhost'}`);
@@ -67,12 +121,45 @@ export async function createNexusServer(opts) {
67
121
  opts.onRequest(info);
68
122
  });
69
123
  }
124
+ // ── Dev hot-reload (SSE) — browser listens and calls location.reload() ──
125
+ if (dev && method === 'GET' && url.pathname === '/_nexus/dev/hot') {
126
+ subscribeDevHotClient(req, res);
127
+ return;
128
+ }
129
+ // ── Vault-lite (dev) — hot-reload secrets without restart ───────────────
130
+ if (dev && method === 'POST' && url.pathname === '/_nexus/dev/vault') {
131
+ const request = await incomingMessageToWebRequest(req);
132
+ const response = await handleDevVaultPost(request);
133
+ await webToNodeResponse(response, res, sec);
134
+ return;
135
+ }
70
136
  // ── Server Actions ──────────────────────────────────────────────────────
71
137
  if (url.pathname.startsWith('/_nexus/action/')) {
72
138
  _isAction = true;
139
+ const actionName = url.pathname.slice('/_nexus/action/'.length).replace(/\/.*$/, '');
140
+ if (actionName !== '' && isActionBlockedByShield(actionName)) {
141
+ emitDevRadar({
142
+ type: 'security:audit',
143
+ payload: {
144
+ kind: 'shield_action',
145
+ message: 'Blocked: action not in Shield-lite allowlist',
146
+ action: actionName,
147
+ },
148
+ });
149
+ res.writeHead(403, sec({
150
+ 'content-type': 'application/json',
151
+ 'x-nexus-shield': 'block',
152
+ }));
153
+ res.end(JSON.stringify({
154
+ error: 'Forbidden',
155
+ status: 403,
156
+ code: 'SHIELD_BLOCK',
157
+ }));
158
+ return;
159
+ }
73
160
  const request = await incomingMessageToWebRequest(req);
74
161
  const response = await handleActionRequest(request);
75
- await webToNodeResponse(response, res);
162
+ await webToNodeResponse(response, res, sec);
76
163
  return;
77
164
  }
78
165
  // ── Nexus Connect — SSE (/_nexus/connect/:topic) ────────────────────────
@@ -105,11 +192,11 @@ export async function createNexusServer(opts) {
105
192
  if (method === 'HEAD') {
106
193
  const headers = {};
107
194
  response.headers.forEach((value, key) => { headers[key] = value; });
108
- res.writeHead(response.status, headers);
195
+ res.writeHead(response.status, sec(headers));
109
196
  res.end();
110
197
  return;
111
198
  }
112
- await webToNodeResponse(response, res);
199
+ await webToNodeResponse(response, res, sec);
113
200
  return;
114
201
  }
115
202
  // ── Aggregated scoped CSS from all .nx files under src/
@@ -129,7 +216,34 @@ export async function createNexusServer(opts) {
129
216
  }
130
217
  return;
131
218
  }
219
+ // ── SPA navigation JSON (/_nexus/navigate?path=…) — must run before SSR matchRoute
220
+ if (url.pathname === '/_nexus/navigate' && method === 'GET') {
221
+ const request = nodeToWebRequest(req);
222
+ const response = await handleNavigationRequest(request, manifest, renderOpts);
223
+ await webToNodeResponse(response, res, sec);
224
+ return;
225
+ }
132
226
  // ── Static files ────────────────────────────────────────────────────────
227
+ // Browsers still request /favicon.ico and /apple-touch-icon.png even when the
228
+ // app only ships favicon.svg — avoid noisy 404s by falling back to SVG.
229
+ if (method === 'GET' &&
230
+ (url.pathname === '/favicon.ico' || url.pathname === '/apple-touch-icon.png')) {
231
+ const direct = await serveStatic(url.pathname, publicDir);
232
+ if (direct) {
233
+ res.writeHead(200, { 'content-type': direct.mime });
234
+ res.end(direct.content);
235
+ return;
236
+ }
237
+ const svgFallback = await serveStatic('/favicon.svg', publicDir);
238
+ if (svgFallback) {
239
+ res.writeHead(200, {
240
+ 'content-type': 'image/svg+xml',
241
+ 'cache-control': dev ? 'no-store' : 'public, max-age=86400',
242
+ });
243
+ res.end(svgFallback.content);
244
+ return;
245
+ }
246
+ }
133
247
  const staticResult = await serveStatic(url.pathname, publicDir);
134
248
  if (staticResult) {
135
249
  res.writeHead(200, { 'content-type': staticResult.mime });
@@ -139,40 +253,43 @@ export async function createNexusServer(opts) {
139
253
  // ── SSR routing ─────────────────────────────────────────────────────────
140
254
  const matched = matchRoute(url.pathname, manifest);
141
255
  if (!matched) {
142
- res.writeHead(404, { 'content-type': 'text/html' });
256
+ res.writeHead(404, sec({ 'content-type': 'text/html' }));
143
257
  res.end(notFoundPage(url.pathname, dev));
144
258
  return;
145
259
  }
146
260
  const request = nodeToWebRequest(req);
147
261
  const ctx = createContext(request, matched.params);
148
262
  try {
263
+ if (opts.streamingPretext === true && method === 'GET') {
264
+ _cacheStrategy = 'streaming-no-store';
265
+ const streamRes = renderRouteStreaming(matched, ctx, renderOpts);
266
+ await pipeToNodeResponse(streamRes, res, sec);
267
+ return;
268
+ }
149
269
  const result = await renderRoute(matched, ctx, renderOpts);
150
270
  _cacheStrategy = result.headers['x-nexus-cache-strategy'];
151
- res.writeHead(result.status, result.headers);
271
+ res.writeHead(result.status, sec(result.headers));
152
272
  res.end(result.html);
153
273
  }
154
274
  catch (err) {
155
275
  if (err instanceof RedirectSignal) {
156
- res.writeHead(err.status, { location: err.location });
276
+ res.writeHead(err.status, sec(redirectHeadersForWriteHead(err)));
157
277
  res.end();
158
278
  return;
159
279
  }
160
280
  if (err instanceof NotFoundSignal) {
161
- res.writeHead(404, { 'content-type': 'text/html' });
281
+ res.writeHead(404, sec({ 'content-type': 'text/html' }));
162
282
  res.end(notFoundPage(url.pathname, dev));
163
283
  return;
164
284
  }
165
285
  if (dev) {
166
- const message = err instanceof Error ? err.message : String(err);
167
- const stack = err instanceof Error ? (err.stack ?? '') : '';
168
- console.error(`\x1b[31m[Nexus Error]\x1b[0m ${method} ${url.pathname}\n ${message}`);
169
- if (stack)
170
- stack.split('\n').slice(1, 6).forEach(l => console.error(` \x1b[2m${l.trim()}\x1b[0m`));
286
+ console.error(`\x1b[31m[Nexus Error]\x1b[0m ${method} ${url.pathname}`);
287
+ console.error(err);
171
288
  }
172
289
  else {
173
290
  console.error('[Nexus] Unhandled error:', err);
174
291
  }
175
- res.writeHead(500, { 'content-type': 'text/html' });
292
+ res.writeHead(500, sec({ 'content-type': 'text/html' }));
176
293
  res.end(serverErrorPage(err, dev));
177
294
  }
178
295
  });
@@ -182,7 +299,9 @@ export async function createNexusServer(opts) {
182
299
  return new Promise((resolve, reject) => {
183
300
  void (async () => {
184
301
  try {
302
+ nexusVault.seedFromProcessEnv();
185
303
  await preloadRegisteredServerActions(opts.root, dev);
304
+ refreshShieldAllowlist(opts.root, dev);
186
305
  }
187
306
  catch (err) {
188
307
  console.error('[Nexus] Server action preload failed:', err);
@@ -193,10 +312,13 @@ export async function createNexusServer(opts) {
193
312
  },
194
313
  /** Re-scans src/routes — called on file changes in dev mode. */
195
314
  async reload() {
315
+ bumpDevReloadGeneration();
196
316
  bustAggregatedStylesCache();
197
317
  manifest = await buildRouteManifest(routesDir);
198
318
  if (dev) {
199
319
  await preloadRegisteredServerActions(opts.root, true);
320
+ refreshShieldAllowlist(opts.root, true);
321
+ broadcastDevHotReload();
200
322
  }
201
323
  },
202
324
  close() {
@@ -235,10 +357,11 @@ async function incomingMessageToWebRequest(req) {
235
357
  }
236
358
  return new Request(url, init);
237
359
  }
238
- async function webToNodeResponse(response, res) {
360
+ async function webToNodeResponse(response, res, mergeHeaders) {
239
361
  const headers = {};
240
362
  response.headers.forEach((value, key) => { headers[key] = value; });
241
- res.writeHead(response.status, headers);
363
+ const merged = mergeHeaders ? mergeHeaders(headers) : headers;
364
+ res.writeHead(response.status, merged);
242
365
  const body = Buffer.from(await response.arrayBuffer());
243
366
  res.end(body);
244
367
  }
@@ -257,15 +380,7 @@ async function serveStatic(pathname, publicDir) {
257
380
  }
258
381
  }
259
382
  function serverErrorPage(err, dev) {
260
- const message = err instanceof Error ? err.message : String(err);
261
- const stack = dev && err instanceof Error ? (err.stack ?? '') : '';
262
- return `<!DOCTYPE html><html lang="en"><body style="font-family:monospace;padding:2rem;background:#0a0a0f;color:#e8e8f0">
263
- <h1 style="color:#ff3e00">◆ Nexus — 500 Server Error</h1>
264
- <pre style="color:#ff6b6b;background:#0d0d1a;padding:1rem;border-radius:6px;overflow:auto">${message}</pre>
265
- ${dev && stack ? `<details open><summary style="cursor:pointer;color:#6b6b80">Stack trace</summary>
266
- <pre style="font-size:0.75rem;color:#4b5563">${stack.replace(/</g, '&lt;')}</pre>
267
- </details>` : ''}
268
- </body></html>`;
383
+ return devErrorHtmlPage({ context: '500 unhandled', err, dev });
269
384
  }
270
385
  function notFoundPage(pathname, dev) {
271
386
  return `<!DOCTYPE html><html><body style="font-family:monospace;padding:2rem;background:#0a0a0f;color:#e8e8f0">
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Nexus Inspector — public entry for DevRadar / future middleware taps.
3
+ *
4
+ * Server Actions and the SSR pipeline call into `devradar.ts`; apps should not
5
+ * import this in production code unless building dev-only tooling.
6
+ */
7
+ export { emitDevRadar, registerDevRadarSink, sanitizeTelemetryValue, newTraceId, } from './devradar.js';
8
+ export type { DevRadarEvent, ActionCallPayload, ActionResultPayload, ActionErrorPayload, PretextProfilePayload, SecurityAuditPayload, RuneTelemetryPayload, } from './devradar.js';
9
+ //# sourceMappingURL=inspector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspector.d.ts","sourceRoot":"","sources":["../src/inspector.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,sBAAsB,EACtB,UAAU,GACX,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,eAAe,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Nexus Inspector — public entry for DevRadar / future middleware taps.
3
+ *
4
+ * Server Actions and the SSR pipeline call into `devradar.ts`; apps should not
5
+ * import this in production code unless building dev-only tooling.
6
+ */
7
+ export { emitDevRadar, registerDevRadarSink, sanitizeTelemetryValue, newTraceId, } from './devradar.js';
8
+ //# sourceMappingURL=inspector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspector.js","sourceRoot":"","sources":["../src/inspector.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,sBAAsB,EACtB,UAAU,GACX,MAAM,eAAe,CAAC"}
@@ -8,10 +8,11 @@ export interface LoadRouteModuleOptions {
8
8
  /** Route pattern from manifest, e.g. `/`, `/editor`, `/blog/:slug` */
9
9
  pattern: string;
10
10
  }
11
+ export declare function bumpDevReloadGeneration(): void;
11
12
  /**
12
- * Re-import every `*.actions.mjs` under `.nexus/dev-server` so `registerAction` picks up
13
- * code changes (including edits to files imported from the sidecar, e.g. `$lib/chat-room.js`).
14
- * Called from `server.reload()` when the CLI file watcher fires.
13
+ * Re-import `*.actions.mjs` only under the current compiler fingerprint dir (same as compiled routes).
14
+ * Importing every stale `dev-server/<oldFingerprint>/…` sidecar re-ran `registerAction` with obsolete
15
+ * generated code (e.g. duplicate `createAction` bodies without `$lib` imports) and overwrote the registry.
15
16
  */
16
17
  /**
17
18
  * Loads every route module once so generated `*.actions.*` sidecars run `registerAction`
@@ -1 +1 @@
1
- {"version":3,"file":"load-module.d.ts","sourceRoot":"","sources":["../src/load-module.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,OAAO,CAAC;IACb,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,OAAO,EAAE,MAAM,CAAC;CACjB;AAuID;;;;GAIG;AACH;;;GAGG;AACH,wBAAsB,8BAA8B,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAkCjG;AAED,wBAAsB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiB9E;AAmBD;;GAEG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CA0ElC"}
1
+ {"version":3,"file":"load-module.d.ts","sourceRoot":"","sources":["../src/load-module.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,OAAO,CAAC;IACb,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,OAAO,EAAE,MAAM,CAAC;CACjB;AAKD,wBAAgB,uBAAuB,IAAI,IAAI,CAE9C;AAqKD;;;;GAIG;AACH;;;GAGG;AACH,wBAAsB,8BAA8B,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAkCjG;AAED,wBAAsB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAmB9E;AAmBD;;GAEG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAqFlC"}
@@ -5,8 +5,13 @@ import { compile } from '@nexus_js/compiler';
5
5
  import { buildRouteManifest } from '@nexus_js/router';
6
6
  import { existsSync, readFileSync, readdirSync, statSync } from 'node:fs';
7
7
  import { mkdir, readdir, readFile, stat, unlink, writeFile } from 'node:fs/promises';
8
- import { dirname, join, relative } from 'node:path';
8
+ import { basename, dirname, join, relative } from 'node:path';
9
9
  import { fileURLToPath, pathToFileURL } from 'node:url';
10
+ /** Incremented on each `server.reload()` in dev — appended to dynamic `import()` URLs so Node drops stale ESM (incl. layout CSS). */
11
+ let devReloadGeneration = 0;
12
+ export function bumpDevReloadGeneration() {
13
+ devReloadGeneration++;
14
+ }
10
15
  /** Map manifest pattern to the same path segment used by `nexus build`. */
11
16
  function patternToOutputSegment(pattern) {
12
17
  if (pattern === '/')
@@ -64,6 +69,7 @@ function actionsImportPreamble(appRoot, actionsCode) {
64
69
  const rules = [
65
70
  { needle: 'appendMessage', rel: 'src/lib/chat-room.js', name: 'appendMessage' },
66
71
  { needle: 'validateFlowPayload', rel: 'src/lib/validate-flow.js', name: 'validateFlowPayload' },
72
+ { needle: 'appendVisit', rel: 'src/lib/visit-log.ts', name: 'appendVisit' },
67
73
  ];
68
74
  const byFile = new Map();
69
75
  for (const { needle, rel, name } of rules) {
@@ -86,28 +92,52 @@ function actionsImportPreamble(appRoot, actionsCode) {
86
92
  }
87
93
  return lines.join('');
88
94
  }
95
+ /**
96
+ * Sidecar does `import { … } from "./_page.nx.mjs"` — bare relative URL is a single ESM cache key.
97
+ * `loadRouteModule` loads the same file with `?t=…`, so after a hot edit Node can keep a stale
98
+ * bare `./_page.nx.mjs` graph (missing new exports) while the sidecar imports the new names.
99
+ * Append the server bundle mtime + dev reload generation so the sidecar always pulls the same
100
+ * revision it was emitted next to.
101
+ */
102
+ function bustActionsImportFromServerBundle(code, serverOutPath, serverMtimeMs) {
103
+ const base = basename(serverOutPath);
104
+ const rel = `./${base}`;
105
+ const needle = `from ${JSON.stringify(rel)}`;
106
+ if (!code.includes(needle))
107
+ return code;
108
+ const busted = `${rel}?t=${serverMtimeMs}_${devReloadGeneration}`;
109
+ return code.replaceAll(needle, `from ${JSON.stringify(busted)}`);
110
+ }
89
111
  async function writeActionsSidecar(appRoot, serverOutPath, actionsModule) {
90
112
  const p = actionsSidecarPath(serverOutPath);
91
- const code = actionsImportPreamble(appRoot, actionsModule) + actionsModule;
113
+ const st = await stat(serverOutPath);
114
+ let code = actionsImportPreamble(appRoot, actionsModule) + actionsModule;
115
+ code = bustActionsImportFromServerBundle(code, serverOutPath, st.mtimeMs);
92
116
  await writeFile(p, code, 'utf-8');
93
117
  }
94
- /** Max mtime under `src/lib/*.{js,mjs,cjs}` so edits to shared action deps bust ESM cache. */
118
+ /** Max mtime under `src/lib/**` for source files (`.ts`, `.tsx`, `.mts`, `.js`, …) — busts ESM cache in dev. */
95
119
  async function maxSrcLibMtime(appRoot) {
96
120
  const libDir = join(appRoot, 'src', 'lib');
97
121
  let max = 0;
98
- try {
99
- const entries = await readdir(libDir, { withFileTypes: true });
122
+ async function walk(dir) {
123
+ let entries;
124
+ try {
125
+ entries = await readdir(dir, { withFileTypes: true });
126
+ }
127
+ catch {
128
+ return;
129
+ }
100
130
  for (const e of entries) {
101
- if (!e.isFile())
102
- continue;
103
- if (!/\.(m?js|cjs)$/iu.test(e.name))
104
- continue;
105
- max = Math.max(max, (await stat(join(libDir, e.name))).mtimeMs);
131
+ const p = join(dir, e.name);
132
+ if (e.isDirectory()) {
133
+ await walk(p);
134
+ }
135
+ else if (e.isFile() && /\.(ts|tsx|mts|m?js|cjs)$/iu.test(e.name)) {
136
+ max = Math.max(max, (await stat(p)).mtimeMs);
137
+ }
106
138
  }
107
139
  }
108
- catch {
109
- return 0;
110
- }
140
+ await walk(libDir);
111
141
  return max;
112
142
  }
113
143
  async function collectFilesRecursive(dir, match) {
@@ -132,9 +162,9 @@ async function collectFilesRecursive(dir, match) {
132
162
  return out;
133
163
  }
134
164
  /**
135
- * Re-import every `*.actions.mjs` under `.nexus/dev-server` so `registerAction` picks up
136
- * code changes (including edits to files imported from the sidecar, e.g. `$lib/chat-room.js`).
137
- * Called from `server.reload()` when the CLI file watcher fires.
165
+ * Re-import `*.actions.mjs` only under the current compiler fingerprint dir (same as compiled routes).
166
+ * Importing every stale `dev-server/<oldFingerprint>/…` sidecar re-ran `registerAction` with obsolete
167
+ * generated code (e.g. duplicate `createAction` bodies without `$lib` imports) and overwrote the registry.
138
168
  */
139
169
  /**
140
170
  * Loads every route module once so generated `*.actions.*` sidecars run `registerAction`
@@ -180,7 +210,9 @@ export async function preloadRegisteredServerActions(appRoot, dev) {
180
210
  }
181
211
  }
182
212
  export async function reimportDevActionSidecars(appRoot) {
183
- const root = join(appRoot, '.nexus', 'dev-server');
213
+ const cc = compilerDistMeta();
214
+ const fingerprint = cc?.fingerprint ?? 'unknown';
215
+ const root = join(appRoot, '.nexus', 'dev-server', fingerprint);
184
216
  let files = [];
185
217
  try {
186
218
  files = await collectFilesRecursive(root, (n) => n.endsWith('.actions.mjs'));
@@ -192,7 +224,7 @@ export async function reimportDevActionSidecars(appRoot) {
192
224
  for (const p of files) {
193
225
  try {
194
226
  const st = await stat(p);
195
- await import(`${pathToFileURL(p).href}?t=${st.mtimeMs}_${libM}`);
227
+ await import(`${pathToFileURL(p).href}?t=${st.mtimeMs}_${libM}_${devReloadGeneration}`);
196
228
  }
197
229
  catch (err) {
198
230
  console.error(`[Nexus] Failed to re-import actions (${p}):`, err);
@@ -210,7 +242,7 @@ async function importActionsSidecar(serverOutPath, appRoot, dev) {
210
242
  try {
211
243
  const st = await stat(p);
212
244
  const libM = dev ? await maxSrcLibMtime(appRoot) : 0;
213
- const bust = dev ? `${st.mtimeMs}_${libM}` : `${st.mtimeMs}`;
245
+ const bust = dev ? `${st.mtimeMs}_${libM}_${devReloadGeneration}` : `${st.mtimeMs}`;
214
246
  await import(`${pathToFileURL(p).href}?t=${bust}`);
215
247
  }
216
248
  catch (err) {
@@ -222,6 +254,12 @@ async function importActionsSidecar(serverOutPath, appRoot, dev) {
222
254
  */
223
255
  export async function loadRouteModule(filepath, options) {
224
256
  if (filepath.endsWith('.ts') || filepath.endsWith('.js') || filepath.endsWith('.mjs')) {
257
+ if (options.dev) {
258
+ const st = await stat(filepath);
259
+ const libM = await maxSrcLibMtime(options.appRoot);
260
+ const bust = `${st.mtimeMs}_${libM}_${devReloadGeneration}`;
261
+ return import(`${pathToFileURL(filepath).href}?t=${bust}`);
262
+ }
225
263
  return import(pathToFileURL(filepath).href);
226
264
  }
227
265
  if (!filepath.endsWith('.nx')) {
@@ -241,6 +279,7 @@ export async function loadRouteModule(filepath, options) {
241
279
  return mod;
242
280
  }
243
281
  const nxStat = await stat(filepath);
282
+ const libM = await maxSrcLibMtime(appRoot);
244
283
  const cc = compilerDistMeta();
245
284
  const fingerprint = cc?.fingerprint ?? 'unknown';
246
285
  const outPath = devServerCachePath(appRoot, filepath, fingerprint);
@@ -249,7 +288,8 @@ export async function loadRouteModule(filepath, options) {
249
288
  const outStat = await stat(outPath);
250
289
  needsCompile =
251
290
  outStat.mtimeMs < nxStat.mtimeMs ||
252
- (cc !== null && outStat.mtimeMs < cc.mtimeMs);
291
+ (cc !== null && outStat.mtimeMs < cc.mtimeMs) ||
292
+ outStat.mtimeMs < libM;
253
293
  }
254
294
  catch {
255
295
  needsCompile = true;
@@ -263,6 +303,8 @@ export async function loadRouteModule(filepath, options) {
263
303
  emitIslandManifest: true,
264
304
  target: 'node',
265
305
  appRoot,
306
+ libDepsMtime: libM,
307
+ routePattern: pattern,
266
308
  });
267
309
  await mkdir(dirname(outPath), { recursive: true });
268
310
  await writeFile(outPath, result.serverCode, 'utf-8');
@@ -281,8 +323,8 @@ export async function loadRouteModule(filepath, options) {
281
323
  }
282
324
  await importActionsSidecar(outPath, appRoot, true);
283
325
  const outStatForUrl = await stat(outPath);
284
- const cacheBust = Math.max(nxStat.mtimeMs, outStatForUrl.mtimeMs, cc !== null ? cc.mtimeMs : 0);
285
- const url = `${pathToFileURL(outPath).href}?t=${cacheBust}`;
326
+ const cacheBust = Math.max(nxStat.mtimeMs, outStatForUrl.mtimeMs, cc !== null ? cc.mtimeMs : 0, libM);
327
+ const url = `${pathToFileURL(outPath).href}?t=${cacheBust}_${devReloadGeneration}`;
286
328
  return import(url);
287
329
  }
288
330
  //# sourceMappingURL=load-module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"load-module.js","sourceRoot":"","sources":["../src/load-module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"load-module.js","sourceRoot":"","sources":["../src/load-module.ts"],"names":[],"mappings":"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"}