@nifrajs/web 2.13.0 → 3.1.0

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 (69) hide show
  1. package/dist/boundary.d.ts +158 -0
  2. package/dist/boundary.d.ts.map +1 -0
  3. package/dist/boundary.js +237 -0
  4. package/dist/boundary.js.map +1 -0
  5. package/dist/build-vite.d.ts.map +1 -1
  6. package/dist/build-vite.js +5 -3
  7. package/dist/build-vite.js.map +1 -1
  8. package/dist/build.d.ts +9 -6
  9. package/dist/build.d.ts.map +1 -1
  10. package/dist/build.js +57 -31
  11. package/dist/build.js.map +1 -1
  12. package/dist/fn.d.ts +2 -2
  13. package/dist/fn.d.ts.map +1 -1
  14. package/dist/fn.js +2 -2
  15. package/dist/fn.js.map +1 -1
  16. package/dist/index.d.ts +30 -20
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js +179 -56
  19. package/dist/index.js.map +1 -1
  20. package/dist/internal/fetcher-runtime.d.ts +19 -0
  21. package/dist/internal/fetcher-runtime.d.ts.map +1 -0
  22. package/dist/internal/fetcher-runtime.js +26 -0
  23. package/dist/internal/fetcher-runtime.js.map +1 -0
  24. package/dist/internal/identity-policy.d.ts +51 -0
  25. package/dist/internal/identity-policy.d.ts.map +1 -0
  26. package/dist/internal/identity-policy.js +67 -0
  27. package/dist/internal/identity-policy.js.map +1 -0
  28. package/dist/internal/parity.d.ts +105 -7
  29. package/dist/internal/parity.d.ts.map +1 -1
  30. package/dist/internal/parity.js +303 -56
  31. package/dist/internal/parity.js.map +1 -1
  32. package/dist/internal/query-runtime.d.ts +8 -0
  33. package/dist/internal/query-runtime.d.ts.map +1 -0
  34. package/dist/internal/query-runtime.js +29 -0
  35. package/dist/internal/query-runtime.js.map +1 -0
  36. package/dist/islands.d.ts +2 -2
  37. package/dist/islands.d.ts.map +1 -1
  38. package/dist/islands.js +17 -36
  39. package/dist/islands.js.map +1 -1
  40. package/dist/manifest.d.ts +41 -6
  41. package/dist/manifest.d.ts.map +1 -1
  42. package/dist/manifest.js.map +1 -1
  43. package/dist/render-seam.d.ts +5 -0
  44. package/dist/render-seam.d.ts.map +1 -1
  45. package/dist/render-seam.js +10 -0
  46. package/dist/render-seam.js.map +1 -1
  47. package/dist/router.d.ts +10 -0
  48. package/dist/router.d.ts.map +1 -1
  49. package/dist/router.js +233 -26
  50. package/dist/router.js.map +1 -1
  51. package/dist/vite.d.ts +8 -0
  52. package/dist/vite.d.ts.map +1 -1
  53. package/dist/vite.js +51 -13
  54. package/dist/vite.js.map +1 -1
  55. package/package.json +13 -2
  56. package/src/boundary.ts +407 -0
  57. package/src/build-vite.ts +5 -3
  58. package/src/build.ts +61 -31
  59. package/src/fn.ts +6 -6
  60. package/src/index.ts +255 -54
  61. package/src/internal/fetcher-runtime.ts +36 -0
  62. package/src/internal/identity-policy.ts +94 -0
  63. package/src/internal/parity.ts +447 -70
  64. package/src/internal/query-runtime.ts +31 -0
  65. package/src/islands.ts +22 -41
  66. package/src/manifest.ts +50 -3
  67. package/src/render-seam.ts +6 -0
  68. package/src/router.ts +271 -29
  69. package/src/vite.ts +75 -13
package/dist/router.js CHANGED
@@ -179,12 +179,53 @@ const rawSearchOf = (path) => {
179
179
  const q = path.indexOf("?");
180
180
  return q === -1 ? "" : path.slice(q);
181
181
  };
182
+ /** Validate the client-action envelope before reading it. Its `body` is deliberately not treated as
183
+ * trusted data: it is an opaque RequestInit body that the server action must parse and authorize. */
184
+ const isClientActionResult = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
182
185
  export function createClientRouter(options) {
183
186
  const match = createMatcher(options.patterns);
184
187
  const fetchData = options.fetchData ?? defaultFetchData;
185
188
  // routeId → the route's client-only search keys. Read by reference (the generated entry keeps writing
186
189
  // to it as routes load), so a same-route nav always sees the current route's keys.
187
190
  const searchClientKeys = options.searchClientKeys ?? {};
191
+ // routeId → client hooks. The generated entry mutates this object only while loading a route module;
192
+ // route navigation reads it after `loadModule` resolves, so an app without hooks pays only a map
193
+ // lookup and keeps the existing route-chunk split.
194
+ const routeHooks = options.routeHooks ?? {};
195
+ // Intercept patterns are compiled lazily from the already-loaded source route descriptor. Invalid
196
+ // client metadata is ignored (the server's register-time boundary validation remains authoritative),
197
+ // so a hand-built client manifest fails closed into an ordinary navigation.
198
+ const interceptMatchers = new Map();
199
+ const interceptionFor = (sourceRouteId, path, target) => {
200
+ const boundaries = routeHooks[sourceRouteId]?.boundaries ?? [];
201
+ const pathname = pathnameOf(path);
202
+ for (const boundary of boundaries) {
203
+ if (typeof boundary.mode === "string")
204
+ continue;
205
+ const pattern = boundary.mode.intercept;
206
+ if (pattern.length === 0 ||
207
+ pattern.length > 2048 ||
208
+ !pattern.startsWith("/") ||
209
+ pattern.startsWith("//"))
210
+ continue;
211
+ let matcher = interceptMatchers.get(pattern);
212
+ if (matcher === undefined) {
213
+ try {
214
+ matcher = createMatcher([{ routeId: "__nifra_intercept__", pattern }]);
215
+ }
216
+ catch {
217
+ matcher = null;
218
+ }
219
+ interceptMatchers.set(pattern, matcher);
220
+ }
221
+ if (matcher?.(pathname)?.routeId === "__nifra_intercept__")
222
+ return boundary;
223
+ }
224
+ // Keep `target` in the signature so the caller cannot accidentally install an interceptor for an
225
+ // unmatched route; the match is intentionally performed before this helper is called.
226
+ void target;
227
+ return undefined;
228
+ };
188
229
  const loadRouteData = async (path, match, signal, retainFrom) => {
189
230
  const retain = retainFrom?.layoutData.map((_, index) => index) ?? [];
190
231
  const payload = await fetchData(path, match, signal, retainFrom === undefined ? undefined : { from: retainFrom.path, retain });
@@ -198,13 +239,111 @@ export function createClientRouter(options) {
198
239
  return { data: null, terminalRouteId };
199
240
  }
200
241
  if (retainFrom === undefined || payload.retained === undefined) {
201
- return { data: payload.data, layoutData: payload.layoutData };
242
+ return {
243
+ data: payload.data,
244
+ layoutData: payload.layoutData,
245
+ ...(payload.boundaries !== undefined ? { boundaries: payload.boundaries } : {}),
246
+ };
202
247
  }
203
248
  const retained = new Set(payload.retained.filter((index) => Number.isInteger(index) && index >= 0 && index < retainFrom.layoutData.length));
204
249
  const layoutData = payload.layoutData?.map((value, index) => retained.has(index) ? retainFrom.layoutData[index] : value);
205
- return { data: payload.data, layoutData };
250
+ return {
251
+ data: payload.data,
252
+ layoutData,
253
+ ...(payload.boundaries !== undefined ? { boundaries: payload.boundaries } : {}),
254
+ };
255
+ };
256
+ /**
257
+ * Apply a client loader without making the server loader eager. The thunk is memoized per navigation
258
+ * (or per hydration), so a hook can call it repeatedly without duplicate requests. The returned
259
+ * client value is never sent back to the server.
260
+ */
261
+ const applyClientLoader = async (path, route, signal, serverLoad, initial) => {
262
+ const hook = routeHooks[route.routeId]?.clientLoader;
263
+ if (hook === undefined)
264
+ return initial ?? serverLoad();
265
+ let serverResult = initial === undefined ? undefined : Promise.resolve(initial);
266
+ const serverLoader = async () => {
267
+ if (signal?.aborted === true)
268
+ throw new DOMException("The operation was aborted", "AbortError");
269
+ serverResult ??= serverLoad();
270
+ return (await serverResult).data;
271
+ };
272
+ const clientData = await hook({
273
+ url: path,
274
+ params: route.params,
275
+ signal: signal ?? new AbortController().signal,
276
+ serverLoader,
277
+ });
278
+ const loaded = await serverResult;
279
+ if (loaded === undefined)
280
+ return { data: clientData };
281
+ // A server terminal status always wins over client-derived data. The client hook can enrich a
282
+ // normal response, but it cannot turn a server 404/410 into a rendered success route.
283
+ if (loaded.terminalRouteId !== undefined)
284
+ return loaded;
285
+ return { ...loaded, data: clientData };
206
286
  };
207
287
  const loadModule = options.loadModule;
288
+ const prepareClientAction = async (action, body, signal) => {
289
+ const target = match(action);
290
+ if (target === null)
291
+ return { body };
292
+ await loadModule?.(target.routeId);
293
+ const hook = routeHooks[target.routeId]?.clientAction;
294
+ if (hook === undefined)
295
+ return { body };
296
+ const result = await hook({
297
+ url: action,
298
+ params: target.params,
299
+ signal,
300
+ body,
301
+ serverLoader: async () => state.data,
302
+ });
303
+ if (result === undefined)
304
+ return { body };
305
+ if (!isClientActionResult(result)) {
306
+ throw new TypeError("[nifra/web] clientAction must return an object or undefined");
307
+ }
308
+ return {
309
+ body: result.body ?? body,
310
+ ...(Object.hasOwn(result, "optimisticData") ? { optimisticData: result.optimisticData } : {}),
311
+ };
312
+ };
313
+ let hydrated = false;
314
+ const hydrate = async () => {
315
+ if (hydrated)
316
+ return;
317
+ hydrated = true;
318
+ const route = { routeId: state.routeId, params: state.params };
319
+ if (routeHooks[route.routeId]?.clientLoader === undefined)
320
+ return;
321
+ const mine = ++token;
322
+ navAbort?.abort();
323
+ const ac = new AbortController();
324
+ navAbort = ac;
325
+ const initial = {
326
+ data: state.data,
327
+ layoutData: state.layoutData,
328
+ ...(state.boundaries !== undefined ? { boundaries: state.boundaries } : {}),
329
+ };
330
+ const loaded = await applyClientLoader(state.path, route, ac.signal, () => Promise.resolve(initial), initial);
331
+ if (mine !== token)
332
+ return;
333
+ if (loaded.terminalRouteId !== undefined) {
334
+ await loadModule?.(loaded.terminalRouteId);
335
+ state = { ...state, routeId: loaded.terminalRouteId, params: {}, data: null };
336
+ }
337
+ else {
338
+ state = {
339
+ ...state,
340
+ data: loaded.data,
341
+ layoutData: loaded.layoutData,
342
+ ...(loaded.boundaries !== undefined ? { boundaries: loaded.boundaries } : {}),
343
+ };
344
+ }
345
+ emit();
346
+ };
208
347
  let state = options.initial;
209
348
  const listeners = new Set();
210
349
  let token = 0;
@@ -237,15 +376,26 @@ export function createClientRouter(options) {
237
376
  }
238
377
  // The PAIR, not just the value: navigating back to a cached route must restore its layouts' data
239
378
  // too, or they would render empty on a hit and populated on a miss.
240
- cache.set(path, { data: loaded.data, layoutData: loaded.layoutData, status: "fresh" });
379
+ cache.set(path, {
380
+ data: loaded.data,
381
+ layoutData: loaded.layoutData,
382
+ ...(loaded.boundaries !== undefined ? { boundaries: loaded.boundaries } : {}),
383
+ status: "fresh",
384
+ });
241
385
  };
242
386
  // Flip cached entries to stale (a no-op for paths not in the cache). Shared by `invalidate` and the
243
387
  // `X-Nifra-Revalidate` handling in `submit`.
244
388
  const markStale = (paths) => {
245
389
  for (const p of paths) {
246
390
  const entry = cache.get(p);
247
- if (entry !== undefined)
248
- cache.set(p, { data: entry.data, status: "stale" });
391
+ if (entry !== undefined) {
392
+ cache.set(p, {
393
+ data: entry.data,
394
+ layoutData: entry.layoutData,
395
+ ...(entry.boundaries !== undefined ? { boundaries: entry.boundaries } : {}),
396
+ status: "stale",
397
+ });
398
+ }
249
399
  }
250
400
  };
251
401
  // Parse the `X-Nifra-Revalidate` response header into validated paths. The header is response data
@@ -270,11 +420,18 @@ export function createClientRouter(options) {
270
420
  state = { ...state, pending: true };
271
421
  emit();
272
422
  try {
273
- const loaded = await loadRouteData(state.path, { routeId: state.routeId, params: state.params }, ac.signal);
423
+ const active = { routeId: state.routeId, params: state.params };
424
+ const loaded = await applyClientLoader(state.path, active, ac.signal, () => loadRouteData(state.path, active, ac.signal));
274
425
  if (mine !== token)
275
426
  return; // superseded - drop the stale result
276
427
  cachePut(state.path, loaded);
277
- state = { ...state, data: loaded.data, layoutData: loaded.layoutData, pending: false };
428
+ state = {
429
+ ...state,
430
+ data: loaded.data,
431
+ layoutData: loaded.layoutData,
432
+ ...(loaded.boundaries !== undefined ? { boundaries: loaded.boundaries } : {}),
433
+ pending: false,
434
+ };
278
435
  emit();
279
436
  }
280
437
  catch (err) {
@@ -438,7 +595,11 @@ export function createClientRouter(options) {
438
595
  isClientOnlySearchChange(rawSearchOf(state.path), rawSearchOf(path), searchClientKeys[state.routeId] ?? [])) {
439
596
  ++token; // supersede any in-flight navigation so its late result is dropped
440
597
  navAbort?.abort();
441
- cachePut(path, { data: state.data, layoutData: state.layoutData });
598
+ cachePut(path, {
599
+ data: state.data,
600
+ layoutData: state.layoutData,
601
+ ...(state.boundaries !== undefined ? { boundaries: state.boundaries } : {}),
602
+ });
442
603
  state = { ...state, path, pending: false, pendingPath: undefined };
443
604
  emit();
444
605
  return;
@@ -450,28 +611,58 @@ export function createClientRouter(options) {
450
611
  state = { ...state, pending: true, pendingPath: path };
451
612
  emit();
452
613
  try {
453
- // Use prefetched data when present (one-shot - drop it); else fetch. The chunk is loaded
454
- // either way (cached + instant after a prefetch), so pending covers both.
614
+ // Load the route chunk before invoking a client loader. A route without a client loader still
615
+ // uses the same server-data path; a route with one gets a lazy `serverLoader()` thunk.
616
+ await loadModule?.(matched.routeId);
617
+ // Use prefetched server data when present (one-shot - drop it); clientLoader still runs over
618
+ // that cached result without causing another network request.
455
619
  const hit = prefetched.has(path);
456
- const dataPromise = hit
457
- ? Promise.resolve(prefetched.get(path))
458
- : loadRouteData(path, matched, ac.signal, state.layoutData === undefined
459
- ? undefined
460
- : { path: state.path, layoutData: state.layoutData });
620
+ const prefetchedData = hit ? prefetched.get(path) : undefined;
461
621
  if (hit)
462
622
  prefetched.delete(path);
463
- const [, loaded] = await Promise.all([loadModule?.(matched.routeId), dataPromise]);
623
+ const loaded = await applyClientLoader(path, matched, ac.signal, () => loadRouteData(path, matched, ac.signal, state.layoutData === undefined
624
+ ? undefined
625
+ : { path: state.path, layoutData: state.layoutData }), prefetchedData);
464
626
  if (loaded.terminalRouteId !== undefined)
465
627
  await loadModule?.(loaded.terminalRouteId);
466
628
  if (mine !== token)
467
629
  return; // a newer navigation superseded this one - drop the stale result
468
630
  cachePut(path, loaded); // keep the keyed cache coherent with what we publish
631
+ const interception = loaded.terminalRouteId === undefined
632
+ ? interceptionFor(state.routeId, path, matched)
633
+ : undefined;
634
+ if (interception !== undefined) {
635
+ // The target's ordinary data request has already completed (including its server authz and
636
+ // optional client wrapper). Only the presentation route is retained; the current page stays
637
+ // mounted underneath the named slot. A target that returned a terminal status never reaches
638
+ // this branch, so an unauthorized/missing target cannot become a modal.
639
+ state = {
640
+ ...state,
641
+ path,
642
+ boundaries: {
643
+ ...(state.boundaries ?? {}),
644
+ [interception.name]: {
645
+ name: interception.name,
646
+ mode: interception.mode,
647
+ status: "ready",
648
+ data: loaded.data,
649
+ ...(interception.errorId === undefined ? {} : { errorId: interception.errorId }),
650
+ },
651
+ },
652
+ actionData: undefined,
653
+ pending: false,
654
+ pendingPath: undefined,
655
+ };
656
+ emit();
657
+ return;
658
+ }
469
659
  state = {
470
660
  routeId: loaded.terminalRouteId ?? matched.routeId,
471
661
  params: loaded.terminalRouteId === undefined ? matched.params : {},
472
662
  path,
473
663
  data: loaded.data,
474
664
  layoutData: loaded.layoutData,
665
+ ...(loaded.boundaries !== undefined ? { boundaries: loaded.boundaries } : {}),
475
666
  actionData: undefined, // a fresh navigation has no action result
476
667
  pending: false,
477
668
  };
@@ -489,6 +680,7 @@ export function createClientRouter(options) {
489
680
  },
490
681
  submit: async (action, body, opts) => {
491
682
  const mine = ++token;
683
+ const previousActionData = state.actionData;
492
684
  // A superseding navigation/submit aborts this submit's FOLLOW-UP reads (revalidation / redirect
493
685
  // fetch + their NDJSON drains) - not the mutation POST itself, which should complete.
494
686
  // Wire into `navAbort` like `navigate`/`refetchActive`, so a later nav cancels the in-flight read.
@@ -504,7 +696,16 @@ export function createClientRouter(options) {
504
696
  };
505
697
  emit();
506
698
  try {
507
- const res = await fetch(action, { method: "POST", body, headers: { [DATA_HEADER]: "1" } });
699
+ const prepared = await prepareClientAction(action, body, ac.signal);
700
+ if (Object.hasOwn(prepared, "optimisticData")) {
701
+ state = { ...state, actionData: prepared.optimisticData };
702
+ emit();
703
+ }
704
+ const res = await fetch(action, {
705
+ method: "POST",
706
+ body: prepared.body,
707
+ headers: { [DATA_HEADER]: "1" },
708
+ });
508
709
  if (!res.ok)
509
710
  throw new Error(`[nifra/web] action failed (${res.status}): ${action}`);
510
711
  const redirectTo = res.headers.get(REDIRECT_HEADER);
@@ -513,12 +714,10 @@ export function createClientRouter(options) {
513
714
  const target = match(redirectTo);
514
715
  if (target === null)
515
716
  throw new Error(`[nifra/web] action redirect off-route: ${redirectTo}`);
516
- const [, loaded] = await Promise.all([
517
- loadModule?.(target.routeId),
518
- loadRouteData(redirectTo, target, ac.signal, state.layoutData === undefined
519
- ? undefined
520
- : { path: state.path, layoutData: state.layoutData }),
521
- ]);
717
+ await loadModule?.(target.routeId);
718
+ const loaded = await applyClientLoader(redirectTo, target, ac.signal, () => loadRouteData(redirectTo, target, ac.signal, state.layoutData === undefined
719
+ ? undefined
720
+ : { path: state.path, layoutData: state.layoutData }));
522
721
  if (loaded.terminalRouteId !== undefined)
523
722
  await loadModule?.(loaded.terminalRouteId);
524
723
  if (mine !== token)
@@ -530,6 +729,7 @@ export function createClientRouter(options) {
530
729
  path: redirectTo,
531
730
  data: loaded.data,
532
731
  layoutData: loaded.layoutData,
732
+ ...(loaded.boundaries !== undefined ? { boundaries: loaded.boundaries } : {}),
533
733
  actionData: undefined,
534
734
  pending: false,
535
735
  };
@@ -547,9 +747,14 @@ export function createClientRouter(options) {
547
747
  // out (`revalidate: false`). A server-declared revalidate of the active path overrides the
548
748
  // opt-out (the server says it changed, so stale data would be wrong). Default is to revalidate.
549
749
  const skipActive = opts?.revalidate === false && !changed.includes(state.path);
750
+ const active = { routeId: state.routeId, params: state.params };
550
751
  const loaded = skipActive
551
- ? { data: state.data, layoutData: state.layoutData }
552
- : await loadRouteData(state.path, { routeId: state.routeId, params: state.params }, ac.signal);
752
+ ? {
753
+ data: state.data,
754
+ layoutData: state.layoutData,
755
+ ...(state.boundaries !== undefined ? { boundaries: state.boundaries } : {}),
756
+ }
757
+ : await applyClientLoader(state.path, active, ac.signal, () => loadRouteData(state.path, active, ac.signal));
553
758
  if (mine !== token)
554
759
  return;
555
760
  cachePut(state.path, loaded); // the revalidated (or kept) data is now the cache's truth
@@ -563,6 +768,7 @@ export function createClientRouter(options) {
563
768
  path: state.path,
564
769
  data: loaded.data,
565
770
  layoutData: loaded.layoutData,
771
+ ...(loaded.boundaries !== undefined ? { boundaries: loaded.boundaries } : {}),
566
772
  actionData,
567
773
  pending: false,
568
774
  };
@@ -580,7 +786,7 @@ export function createClientRouter(options) {
580
786
  params: state.params,
581
787
  path: state.path,
582
788
  data: state.data,
583
- actionData: state.actionData,
789
+ actionData: previousActionData,
584
790
  pending: false,
585
791
  };
586
792
  emit();
@@ -588,6 +794,7 @@ export function createClientRouter(options) {
588
794
  throw err;
589
795
  }
590
796
  },
797
+ hydrate,
591
798
  invalidate: async (paths) => {
592
799
  // Mark targeted cache entries stale (all entries when no `paths`) - unmounted ones refetch
593
800
  // lazily on next access.
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"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"}
package/dist/vite.d.ts CHANGED
@@ -43,6 +43,14 @@ export interface ViteDevServerOptions {
43
43
  readonly publicDir?: string | false;
44
44
  /** Client-visible environment prefix (default `"PUBLIC_"`; empty disables exposure). */
45
45
  readonly publicEnvPrefix?: string;
46
+ /**
47
+ * Downgrade the startup identity-parity check from a hard failure to a loud warning (dev only).
48
+ * The check catches two physical copies of an identity-sensitive package (e.g. React) resolving in
49
+ * one process, which reliably breaks hydration and framework context. When a duplicate comes from a
50
+ * linked sibling repo you cannot fix in the moment, set this to keep the dev server running while you
51
+ * resolve it; `nifra build` never honors it. Wired to `nifra dev --allow-duplicate-identity`.
52
+ */
53
+ readonly allowDuplicateIdentity?: boolean;
46
54
  }
47
55
  export interface ViteDevServer {
48
56
  readonly port: number;
@@ -1 +1 @@
1
- {"version":3,"file":"vite.d.ts","sourceRoot":"","sources":["../src/vite.ts"],"names":[],"mappings":"AA+BA,8DAA8D;AAC9D,UAAU,QAAQ;IAChB,KAAK,CAAC,OAAO,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;CACtD;AAuBD,MAAM,WAAW,oBAAoB;IACnC,4DAA4D;IAC5D,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,0FAA0F;IAC1F,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B;;;;;;;;OAQG;IACH,QAAQ,CAAC,SAAS,EAAE,CAClB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,KAC7C,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;IACjC,gFAAgF;IAChF,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,OAAO,EAAE,CAAA;IACrC;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACvC;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAClD,mDAAmD;IACnD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,+CAA+C;IAC/C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB;;;;OAIG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;IACvB,+EAA+E;IAC/E,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,KAAK,CAAA;IACnC,wFAAwF;IACxF,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAClC;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACtB;AAED,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AA6CjD,iHAAiH;AACjH,UAAU,WAAW;IACnB,YAAY,CAAC,IAAI,IAAI,CAAA;IACrB,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAAA;IACxC,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAA;IACjC,GAAG,IAAI,IAAI,CAAA;CACZ;AAED,8DAA8D;AAC9D,UAAU,cAAc;IACtB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,GAAG,IAAI,CAAA;CACjE;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,CAOhF;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,EACvC,GAAG,EAAE,WAAW,GACf,OAAO,CAAC,IAAI,CAAC,CAkBf;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,SAAS,OAAO,EAAE,EAC3B,UAAU,EAAE,OAAO,GAClB,SAAS,OAAO,EAAE,CAkCpB;AAkBD;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC,CAkO/F"}
1
+ {"version":3,"file":"vite.d.ts","sourceRoot":"","sources":["../src/vite.ts"],"names":[],"mappings":"AAqCA,8DAA8D;AAC9D,UAAU,QAAQ;IAChB,KAAK,CAAC,OAAO,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;CACtD;AAqCD,MAAM,WAAW,oBAAoB;IACnC,4DAA4D;IAC5D,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,0FAA0F;IAC1F,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B;;;;;;;;OAQG;IACH,QAAQ,CAAC,SAAS,EAAE,CAClB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,KAC7C,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;IACjC,gFAAgF;IAChF,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,OAAO,EAAE,CAAA;IACrC;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACvC;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAClD,mDAAmD;IACnD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,+CAA+C;IAC/C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB;;;;OAIG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;IACvB,+EAA+E;IAC/E,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,KAAK,CAAA;IACnC,wFAAwF;IACxF,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;IACjC;;;;;;OAMG;IACH,QAAQ,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAA;CAC1C;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACtB;AAED,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AA6CjD,iHAAiH;AACjH,UAAU,WAAW;IACnB,YAAY,CAAC,IAAI,IAAI,CAAA;IACrB,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAAA;IACxC,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAA;IACjC,GAAG,IAAI,IAAI,CAAA;CACZ;AAED,8DAA8D;AAC9D,UAAU,cAAc;IACtB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,GAAG,IAAI,CAAA;CACjE;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,CAOhF;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,EACvC,GAAG,EAAE,WAAW,GACf,OAAO,CAAC,IAAI,CAAC,CAkBf;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,SAAS,OAAO,EAAE,EAC3B,UAAU,EAAE,OAAO,GAClB,SAAS,OAAO,EAAE,CAkCpB;AAkBD;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC,CAoQ/F"}
package/dist/vite.js CHANGED
@@ -17,7 +17,8 @@ import { createDevDiagnostics } from "./dev-diagnostics.js";
17
17
  import { listenOrExplain } from "./dev-port.js";
18
18
  import { discoverRoutes } from "./fs.js";
19
19
  import { DEFAULT_DEV_PORT, generateClientEntry, setSsrModuleLoader } from "./index.js";
20
- import { assertIdentityParity } from "./internal/parity.js";
20
+ import { viteDedupePackages } from "./internal/identity-policy.js";
21
+ import { assertIdentityParity, collectIdentityParity, formatIdentityParityFindings, identityParityHeadline, } from "./internal/parity.js";
21
22
  import { vitePublicEnvPrefix } from "./internal/server-boundary.js";
22
23
  import { importVite } from "./internal/vite-import.js";
23
24
  import { scopedName } from "./plugins/css-modules.js";
@@ -190,7 +191,15 @@ function packageNameOf(specifier) {
190
191
  export async function createViteDevServer(options) {
191
192
  const root = resolvePath(options.root ?? process.cwd());
192
193
  const routesDir = resolvePath(options.routesDir);
193
- await assertIdentityParity(root);
194
+ if (options.allowDuplicateIdentity === true) {
195
+ const parity = await collectIdentityParity(root);
196
+ if (parity.findings.length > 0)
197
+ console.warn(`[nifra] identity parity bypassed via --allow-duplicate-identity (${identityParityHeadline(parity.findings.length)}):\n${formatIdentityParityFindings(parity.findings)}\n` +
198
+ "[nifra] dev is continuing, but duplicate module identity can break hydration and framework context - fix the resolution before you ship.");
199
+ }
200
+ else {
201
+ await assertIdentityParity(root);
202
+ }
194
203
  const port = options.port ?? DEFAULT_DEV_PORT;
195
204
  // Which files are the app's own components, for framework plugins that hot-patch at component
196
205
  // granularity (`devHotComponent`). Announced in the environment rather than passed, because the
@@ -316,12 +325,13 @@ export async function createViteDevServer(options) {
316
325
  plugins: [viteServerFnStub(), viteServerOnlyEmpty(), ...plugins],
317
326
  resolve: {
318
327
  conditions: resolveConditions,
319
- // Dedupe React to ONE copy. In a multi-root workspace a shared package can pull react/react-dom
320
- // from a SIBLING app's node_modules, so the dev server loads two React cores → a second hook
321
- // dispatcher → `resolveDispatcher().useState` null on any hook-using route (the error points at the
322
- // component, not the resolution - brutal to diagnose). Mirrors the build-time reactDedupePlugin so
323
- // dev matches prod. No-op for non-React apps (the package simply isn't present to dedupe).
324
- dedupe: ["react", "react-dom"],
328
+ // Dedupe each framework runtime to ONE copy. In a multi-root workspace a shared package can pull
329
+ // react/react-dom (or preact, or svelte) from a SIBLING app's node_modules, so the dev server
330
+ // loads two cores → a second hook dispatcher/options global → `resolveDispatcher().useState` null
331
+ // on any hook-using route (the error points at the component, not the resolution - brutal to
332
+ // diagnose). Same policy table the production builds read, so dev matches prod. No-op per
333
+ // framework the app does not use (the package simply isn't present to dedupe).
334
+ dedupe: [...viteDedupePackages()],
325
335
  },
326
336
  ssr: {
327
337
  // Explicit listing forces external even for workspace-LINKED packages (Vite's default keeps
@@ -356,12 +366,40 @@ export async function createViteDevServer(options) {
356
366
  // reason to agree with Vite about which copy of the framework runtime it renders through.
357
367
  setSsrModuleLoader(ssrLoad);
358
368
  app = await options.createApp(entryUrl, ssrLoad);
369
+ // Evict a changed file from the SSR graph together with every module that (transitively) imports it,
370
+ // BEFORE re-creating the app. Vite re-evaluates a directly-changed module on its own, but a parent
371
+ // that merely imports the changed leaf keeps its cached SSR bindings - so the re-imported entry walks
372
+ // a graph that is fresh at the leaf and stale everywhere above it. That is what surfaces downstream as
373
+ // phantom hydration mismatches (SSR renders through an old module, the client through the new one) and
374
+ // stale i18n catalogs. Invalidating the importer closure makes the next `ssrLoadModule(entry)` re-walk
375
+ // the whole affected subtree. `importers` is the client+SSR union, so this over-invalidates slightly;
376
+ // in a dev server that only costs a re-evaluation, never correctness.
377
+ const invalidateImporterClosure = (path) => {
378
+ const graph = vite.moduleGraph;
379
+ if (graph === undefined)
380
+ return;
381
+ const roots = graph.getModulesByFile(path);
382
+ if (roots === undefined)
383
+ return;
384
+ const seen = new Set();
385
+ const stack = [...roots];
386
+ for (let mod = stack.pop(); mod !== undefined; mod = stack.pop()) {
387
+ if (seen.has(mod))
388
+ continue;
389
+ seen.add(mod);
390
+ graph.invalidateModule(mod);
391
+ for (const importer of mod.importers)
392
+ stack.push(importer);
393
+ }
394
+ };
359
395
  // Re-create the app on change so a hard reload picks up a route ADD/REMOVE (the manifest comes
360
- // from a directory scan, which `ssrLoadModule` cannot invalidate). Module CONTENT no longer needs a
361
- // version counter: Vite owns SSR resolution now and re-evaluates changed modules itself, which is
362
- // the cache-busting the old `importQuery` was emulating against Bun's import cache.
396
+ // from a directory scan, which `ssrLoadModule` cannot invalidate). Module CONTENT is re-evaluated by
397
+ // Vite plus the importer-closure invalidation above; no version counter against Bun's import cache is
398
+ // needed anymore, the way the old `importQuery` cache-buster was.
363
399
  let refreshVersion = 0;
364
- const refreshApp = () => {
400
+ const refreshApp = (path) => {
401
+ if (path !== undefined)
402
+ invalidateImporterClosure(path);
365
403
  const version = ++refreshVersion;
366
404
  Promise.resolve(options.createApp(entryUrl, ssrLoad))
367
405
  .then((next) => {
@@ -375,7 +413,7 @@ export async function createViteDevServer(options) {
375
413
  vite.watcher.on(event, (path) => {
376
414
  if (path.startsWith(`${routesDir}/`) || path.startsWith(`${routesDir}\\`))
377
415
  writeClientEntry();
378
- refreshApp();
416
+ refreshApp(path);
379
417
  });
380
418
  }
381
419
  try {