@reckona/mreact-router 0.0.20 → 0.0.22

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.
package/README.md CHANGED
@@ -243,11 +243,11 @@ Production adapters enforce the app-router import policy when bundling loaders,
243
243
 
244
244
  For Lambda and other Node-only deployments, build with `mreact-router build --target=node` or `buildApp({ targets: ["node"] })`. Node-only builds skip `.mreact/cloudflare` route modules, so loaders and server helpers may import Node-only dependencies such as database drivers without being bundled for the Workers runtime.
245
245
 
246
- For Lambda deployments, package a minimal asset directory instead of the full project checkout. AWS Lambda enforces a 250 MB unzipped deployment package limit, and the runtime only needs `.mreact/`, the bundled handler, `package.json` / lockfiles, and production `node_modules`; `src/`, tests, dev dependencies, build caches, and Vite/Vitest/Playwright tooling are not required. `mreact-router build --target=node` keeps compiled server route artifacts in `.mreact/server/server-modules/*.json` instead of embedding them in one large server manifest. `createAwsLambdaRequestHandler()` treats `outDir` as read-only and materializes generated runtime files under `/tmp/mreact-router/<hash>/runtime` by default, with a `node_modules` symlink back to the deployed package root. Handler creation starts a background preload for the built runtime, loader modules, middleware, route handlers, page modules, layouts, and route metadata so route-specific bundling can move out of the first matched request on warmable runtimes; if a request arrives before preload finishes, middleware is resolved first, middleware responses or redirects return without loading the matched page artifact, and continuing requests load only the matched route's artifact closure. Static middleware `config.matcher` and `config.id` values are checked before importing the middleware module, so unmatched health checks and route-local middleware skips avoid evaluating heavyweight middleware dependencies. Loader redirects settle before page component server transforms and render imports for non-stream routes and stream routes without a loading boundary. Prefer `await createPreloadedAwsLambdaRequestHandler()` in Node 24 ESM Lambda handlers when first-request latency matters: it waits for the same preload during Lambda initialization, increasing `Init Duration` but making the first handler invocation much closer to warm steady-state. Pass `runtimeDir` only when you need to control that writable cache location. With pnpm, copy those files into `.lambda/` and run `pnpm --dir .lambda install --prod --frozen-lockfile --ignore-scripts --config.node-linker=hoisted`. pnpm's default isolated linker is symlink-heavy, so verify the artifact's symlink count with `find .lambda -type l | wc -l` and measure actual file bytes in addition to `du -sh .lambda` before upload. Every package listed in `importPolicy.allowedPackages` must also be installed in that production artifact.
246
+ For Lambda deployments, package a minimal asset directory instead of the full project checkout. AWS Lambda enforces a 250 MB unzipped deployment package limit, and the runtime only needs `.mreact/`, the bundled handler, `package.json` / lockfiles, and production `node_modules`; `src/`, tests, dev dependencies, build caches, and Vite/Vitest/Playwright tooling are not required. `mreact-router build --target=node` keeps compiled server route artifacts in `.mreact/server/server-modules/*.json` instead of embedding them in one large server manifest. `createAwsLambdaRequestHandler()` treats `outDir` as read-only and materializes generated runtime files under `/tmp/mreact-router/<hash>/runtime` by default, with a `node_modules` symlink back to the deployed package root. Handler creation starts a background preload for the built runtime, loader modules, middleware, route handlers, page modules, layouts, and route metadata so route-specific bundling can move out of the first matched request on warmable runtimes; if a request arrives before preload finishes, middleware is resolved first, middleware responses or redirects return without loading the matched page artifact, and continuing requests load only the matched route's artifact closure. Static middleware `config.matcher` and `config.id` values are checked before importing the middleware module, so unmatched health checks and route-local middleware skips avoid evaluating heavyweight middleware dependencies. Route request artifacts omit page render exports, and built loader and route metadata artifacts are split, so loader redirects do not evaluate page-only or metadata-only dependencies before render or metadata is needed. Loader redirects settle before page component server transforms and render imports for non-stream routes and stream routes without a loading boundary. Prefer `await createPreloadedAwsLambdaRequestHandler()` in Node 24 ESM Lambda handlers when first-request latency matters: it waits for the same preload during Lambda initialization, increasing `Init Duration` but making the first handler invocation much closer to warm steady-state. Pass `runtimeDir` only when you need to control that writable cache location. With pnpm, copy those files into `.lambda/` and run `pnpm --dir .lambda install --prod --frozen-lockfile --ignore-scripts --config.node-linker=hoisted`. pnpm's default isolated linker is symlink-heavy, so verify the artifact's symlink count with `find .lambda -type l | wc -l` and measure actual file bytes in addition to `du -sh .lambda` before upload. Every package listed in `importPolicy.allowedPackages` must also be installed in that production artifact.
247
247
 
248
248
  Use the Lambda `preload` option to tune that trade-off. The default is `"all"` for backward compatibility. Set `preload: "none"` to disable background preload, `preload: "middleware"` to warm only middleware and shared runtime, or `preload: { mode: "hot-routes", routes: ["/", "/dashboard"] }` with `createPreloadedAwsLambdaRequestHandler()` to await only selected route closures during Lambda initialization.
249
249
 
250
- Set `timings: true` on `createAwsLambdaRequestHandler()` or `createAwsLambdaStreamingRequestHandler()` when you need low-overhead Lambda phase diagnostics. The adapter emits a `router:request:timing` debug log event with `eventToRequestMs`, `runtimeDirMs`, `renderMs`, and response serialization or streaming time, so production measurements can separate API Gateway event normalization, runtime materialization, route rendering, and Lambda response conversion. It also forwards `router:render:timing` debug events for route-level phases such as route matching, middleware, loader start/wait, page render, layout render, metadata, and response construction. Loader timings split module load/evaluation (`loaderModuleLoadMs`) from user loader execution (`loaderExecutionMs`) inside the existing `loaderWaitMs` envelope, and middleware timings similarly split `middlewareModuleLoadMs` from `middlewareExecutionMs` inside `middlewareMs`. Buffered handlers report `responseSerializationMs` as the total conversion phase and split it into `streamDrainMs` and `bodyEncodeMs`; streaming handlers report `responseStreamingMs` as the total streaming phase and split it into `streamWaitMs` and `streamWriteMs`.
250
+ Set `timings: true` on `createAwsLambdaRequestHandler()` or `createAwsLambdaStreamingRequestHandler()` when you need low-overhead Lambda phase diagnostics. The adapter emits a `router:request:timing` debug log event with `eventToRequestMs`, `runtimeDirMs`, `renderMs`, and response serialization or streaming time, so production measurements can separate API Gateway event normalization, runtime materialization, route rendering, and Lambda response conversion. It also forwards `router:render:timing` debug events for route-level phases such as route matching, middleware, loader start/wait, source analysis, page render, layout render, metadata, and response construction. Loader timings split module load/evaluation (`loaderModuleLoadMs`) from user loader execution (`loaderExecutionMs`) inside the existing `loaderWaitMs` envelope, source analysis reports `sourceAnalysisArtifactMs` when a built analysis summary is reused, and middleware timings similarly split `middlewareModuleLoadMs` from `middlewareExecutionMs` inside `middlewareMs`. Buffered handlers report `responseSerializationMs` as the total conversion phase and split it into `streamDrainMs` and `bodyEncodeMs`; streaming handlers report `responseStreamingMs` as the total streaming phase and split it into `streamWaitMs` and `streamWriteMs`.
251
251
 
252
252
  The Lambda adapter returns proxy responses with `cookies`, `headers`,
253
253
  `statusCode`, `body`, and `isBase64Encoded`. It buffers response bodies because
package/dist/build.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import type { AppRoute } from "./routes.js";
2
2
  import { type AppRouterProjectOptions, type AppRouterBuildTarget } from "./config.js";
3
3
  import type { ModuleMetadata } from "@reckona/mreact-compiler";
4
+ import type { RouteCachePolicy } from "./cache.js";
4
5
  export interface BuildAppOptions extends AppRouterProjectOptions {
5
6
  outDir: string;
6
7
  targets?: readonly AppRouterBuildTarget[] | undefined;
@@ -26,10 +27,25 @@ export interface BuiltServerActionReference {
26
27
  exportName: string;
27
28
  }
28
29
  export interface BuiltServerModuleArtifact {
30
+ analysis?: BuiltRouteSourceAnalysisSummary;
31
+ loader?: BuiltServerModuleOutput;
32
+ routeMetadata?: BuiltServerModuleOutput;
29
33
  request?: BuiltServerModuleOutput;
30
34
  stream?: BuiltServerModuleOutput;
31
35
  string?: BuiltServerModuleOutput;
32
36
  }
37
+ export interface BuiltRouteSourceAnalysisSummary {
38
+ authIncludesClaims: boolean;
39
+ cachePolicy?: RouteCachePolicy | undefined;
40
+ clientBoundaryImports: readonly string[];
41
+ clientRoute: boolean;
42
+ hasLoader: boolean;
43
+ routeCode: string;
44
+ routePath: string;
45
+ sourceHash: string;
46
+ streamRoute: boolean;
47
+ usesRuntimeCacheControl: boolean;
48
+ }
33
49
  export interface BuiltServerModuleOutput {
34
50
  code: string;
35
51
  metadata?: ModuleMetadata;
@@ -1 +1 @@
1
- {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAGL,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EAG1B,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAkB/D,MAAM,WAAW,eAAgB,SAAQ,uBAAuB;IAC9D,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,SAAS,oBAAoB,EAAE,GAAG,SAAS,CAAC;CACvD;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,QAAQ,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,CAAC,CAAC;IACX,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAC1D,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,0BAA0B,EAAE,CAAC;IACpD,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;CAC3D;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAClC,MAAM,CAAC,EAAE,uBAAuB,CAAC;IACjC,MAAM,CAAC,EAAE,uBAAuB,CAAC;CAClC;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAID,wBAAsB,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAkHhF"}
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAGL,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EAG1B,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAsBnD,MAAM,WAAW,eAAgB,SAAQ,uBAAuB;IAC9D,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,SAAS,oBAAoB,EAAE,GAAG,SAAS,CAAC;CACvD;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,QAAQ,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,CAAC,CAAC;IACX,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAC1D,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,0BAA0B,EAAE,CAAC;IACpD,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;CAC3D;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,EAAE,+BAA+B,CAAC;IAC3C,MAAM,CAAC,EAAE,uBAAuB,CAAC;IACjC,aAAa,CAAC,EAAE,uBAAuB,CAAC;IACxC,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAClC,MAAM,CAAC,EAAE,uBAAuB,CAAC;IACjC,MAAM,CAAC,EAAE,uBAAuB,CAAC;CAClC;AAED,MAAM,WAAW,+BAA+B;IAC9C,kBAAkB,EAAE,OAAO,CAAC;IAC5B,WAAW,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAC3C,qBAAqB,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,uBAAuB,EAAE,OAAO,CAAC;CAClC;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAID,wBAAsB,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAkHhF"}
package/dist/build.js CHANGED
@@ -7,8 +7,10 @@ import { buildClientRouteOutput, buildNavigationRuntimeBundle, clientScriptForPa
7
7
  import { bundleAppRouterSourceModule, importAppRouterSourceModule } from "./module-runner.js";
8
8
  import { scanAppRoutes } from "./routes.js";
9
9
  import { resolveAppRouterProjectOptions, resolveBuildTargets, } from "./config.js";
10
- import { bundleMiddlewareModuleCode, bundleRouteLoaderModuleCode, renderAppRequest } from "./render.js";
11
- import { hasGenerateStaticParamsExport, hasLoaderExport, hasPrerenderExport, isStreamRouteSource, stripRouteBuildExports, stripRouteClientOnlyExports, } from "./route-source.js";
10
+ import { routeCachePolicyFromSource } from "./cache.js";
11
+ import { bundleMiddlewareModuleCode, renderAppRequest } from "./render.js";
12
+ import { createAppRouterImportPolicyPlugin } from "./import-policy.js";
13
+ import { hasGenerateStaticParamsExport, hasLoaderExport, hasPrerenderExport, isStreamRouteSource, stripRouteBuildExports, stripRouteClientOnlyExports, stripRouteLoaderOnlyExports, stripRouteMetadataOnlyExports, stripRouteRequestOnlyExports, } from "./route-source.js";
12
14
  import { workspacePackageFile } from "./workspace-packages.js";
13
15
  const nativeEscapeTransform = {
14
16
  batchImportName: "escapeHtmlBatch",
@@ -247,6 +249,30 @@ async function buildServerModuleArtifacts(options) {
247
249
  const route = routeByFile.get(file);
248
250
  const artifact = {};
249
251
  if (requestModuleFiles.has(file)) {
252
+ if (route?.kind === "page" && hasLoaderExport(source)) {
253
+ const code = await bundleRouteLoaderModuleCode({
254
+ appDir: options.project.routesDir,
255
+ code: stripRouteLoaderOnlyExports(source),
256
+ filename: absoluteFile,
257
+ importPolicy: requestModuleImportPolicy,
258
+ });
259
+ artifact.loader = {
260
+ code,
261
+ sourceHash: hashText(source),
262
+ };
263
+ }
264
+ if (route?.kind === "page" && hasMetadataExport(source)) {
265
+ const code = await bundleRouteMetadataModuleCode({
266
+ appDir: options.project.routesDir,
267
+ code: stripRouteMetadataOnlyExports(source),
268
+ filename: absoluteFile,
269
+ importPolicy: requestModuleImportPolicy,
270
+ });
271
+ artifact.routeMetadata = {
272
+ code,
273
+ sourceHash: hashText(source),
274
+ };
275
+ }
250
276
  artifact.request = {
251
277
  code: await buildRequestModuleArtifactCode({
252
278
  appDir: options.project.routesDir,
@@ -269,7 +295,7 @@ async function buildServerModuleArtifacts(options) {
269
295
  : ["string"];
270
296
  const code = route === undefined ? source : stripRouteBuildExports(source);
271
297
  const clientInference = route === undefined
272
- ? { clientBoundaryImports: [], diagnostics: [] }
298
+ ? { client: false, clientBoundaryImports: [], diagnostics: [] }
273
299
  : await inferClientRouteModule({
274
300
  cache: options.clientRouteInferenceCache,
275
301
  code: stripRouteClientOnlyExports(source),
@@ -280,6 +306,15 @@ async function buildServerModuleArtifacts(options) {
280
306
  for (const diagnostic of clientInference.diagnostics) {
281
307
  console.warn(formatClientRouteInferenceDiagnostic(diagnostic));
282
308
  }
309
+ if (route?.kind === "page") {
310
+ artifact.analysis = builtRouteSourceAnalysisSummary({
311
+ clientBoundaryImports,
312
+ clientRoute: clientInference.client,
313
+ route,
314
+ routeCode: code,
315
+ source,
316
+ });
317
+ }
283
318
  for (const serverOutput of serverOutputs) {
284
319
  const output = transform({
285
320
  code,
@@ -304,6 +339,27 @@ async function buildServerModuleArtifacts(options) {
304
339
  }
305
340
  return artifacts;
306
341
  }
342
+ function builtRouteSourceAnalysisSummary(options) {
343
+ const cachePolicy = routeCachePolicyFromSource(options.source);
344
+ return {
345
+ authIncludesClaims: authIncludesClaims(options.source),
346
+ ...(cachePolicy === undefined ? {} : { cachePolicy }),
347
+ clientBoundaryImports: options.clientBoundaryImports,
348
+ clientRoute: options.clientRoute,
349
+ hasLoader: hasLoaderExport(options.source),
350
+ routeCode: options.routeCode,
351
+ routePath: options.route.path,
352
+ sourceHash: hashText(options.source),
353
+ streamRoute: isStreamRouteSource(options.source),
354
+ usesRuntimeCacheControl: usesRuntimeCacheControl(options.source),
355
+ };
356
+ }
357
+ function usesRuntimeCacheControl(code) {
358
+ return /\bcacheControl\s*\(/.test(code);
359
+ }
360
+ function authIncludesClaims(code) {
361
+ return /\bexport\s+const\s+auth\s*=\s*["']include-claims["']\s*;?/.test(code);
362
+ }
307
363
  async function buildRequestModuleArtifactCode(options) {
308
364
  if (isMiddlewareFile(options.appDir, options.filename)) {
309
365
  return await bundleMiddlewareModuleCode({
@@ -323,11 +379,53 @@ async function buildRequestModuleArtifactCode(options) {
323
379
  }
324
380
  return await bundleRouteLoaderModuleCode({
325
381
  appDir: options.appDir,
326
- code: options.source,
382
+ code: stripRouteRequestOnlyExports(options.source),
327
383
  filename: options.filename,
328
384
  importPolicy: options.importPolicy,
329
385
  });
330
386
  }
387
+ async function bundleRouteLoaderModuleCode(options) {
388
+ return await bundleRouteRequestModuleCode({
389
+ ...options,
390
+ label: "Loader",
391
+ });
392
+ }
393
+ async function bundleRouteMetadataModuleCode(options) {
394
+ return await bundleRouteRequestModuleCode({
395
+ ...options,
396
+ label: "Metadata",
397
+ });
398
+ }
399
+ async function bundleRouteRequestModuleCode(options) {
400
+ const output = await bundle({
401
+ bundle: true,
402
+ format: "esm",
403
+ logLevel: "silent",
404
+ platform: "node",
405
+ plugins: [
406
+ createAppRouterImportPolicyPlugin({
407
+ appDir: options.appDir,
408
+ importPolicy: options.importPolicy,
409
+ label: options.label,
410
+ }),
411
+ ],
412
+ write: false,
413
+ jsx: "transform",
414
+ jsxFactory: "__mreact_jsx",
415
+ jsxFragment: "__mreact_fragment",
416
+ stdin: {
417
+ contents: options.code,
418
+ loader: "tsx",
419
+ resolveDir: dirname(options.filename),
420
+ sourcefile: options.filename,
421
+ },
422
+ });
423
+ const code = output.outputFiles[0]?.text;
424
+ if (code === undefined) {
425
+ throw new Error(`Failed to compile ${options.label.toLowerCase()} for ${options.filename}.`);
426
+ }
427
+ return code;
428
+ }
331
429
  function isMiddlewareFile(appDir, file) {
332
430
  return file === join(appDir, "middleware.ts") || file === join(appDir, "middleware.mreact.ts");
333
431
  }
package/dist/build.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
package/dist/render.js CHANGED
@@ -18,7 +18,7 @@ import { contentSecurityPolicy } from "./csp.js";
18
18
  import { htmlResponse } from "./http.js";
19
19
  import { isNotFoundError, isRedirectError, rewriteLocation } from "./navigation.js";
20
20
  import { createAppRouterImportPolicyPlugin } from "./import-policy.js";
21
- import { hasLoaderExport, isStreamRouteSource, stripRouteModuleExports } from "./route-source.js";
21
+ import { hasLoaderExport, isStreamRouteSource, stripRouteLoaderOnlyExports, stripRouteMetadataOnlyExports, stripRouteModuleExports, } from "./route-source.js";
22
22
  import { emitRouterLog, logDurationMs, logNow } from "./logger.js";
23
23
  import { createRouterRuntimeCacheCounters, readRouterRuntimeCacheEntry, routerRuntimeCacheStat, } from "./cache-stats.js";
24
24
  import { invokeRouterInstrumentation, traceContextFromRequest, } from "./trace.js";
@@ -57,6 +57,7 @@ export async function preloadBuiltRequestModules(options) {
57
57
  continue;
58
58
  }
59
59
  const analysis = await analyzeRouteSource({
60
+ artifact: options.serverModules?.get(route.file)?.analysis,
60
61
  code,
61
62
  filename: route.file,
62
63
  routePath: route.path,
@@ -373,10 +374,12 @@ async function renderAppRequestInternal(options) {
373
374
  finishRenderTimingPhase(timing, phaseStartedAt, "readSourceMs");
374
375
  phaseStartedAt = renderTimingPhaseStartedAt(timing);
375
376
  const originalAnalysis = await analyzeRouteSource({
377
+ artifact: options.serverModules?.get(matched.route.file)?.analysis,
376
378
  code: originalCode,
377
379
  filename: matched.route.file,
378
380
  routePath: matched.route.path,
379
381
  serverModuleCacheVersion: options.serverModuleCacheVersion,
382
+ timing,
380
383
  });
381
384
  finishRenderTimingPhase(timing, phaseStartedAt, "sourceAnalysisMs");
382
385
  const cachePolicy = originalAnalysis.cachePolicy;
@@ -1354,6 +1357,15 @@ function transformServerModule(options) {
1354
1357
  }
1355
1358
  async function analyzeRouteSource(options) {
1356
1359
  const sourceHash = memoizedHashText(options.code);
1360
+ if (options.artifact !== undefined &&
1361
+ options.serverModuleCacheVersion !== undefined &&
1362
+ options.artifact.sourceHash === sourceHash &&
1363
+ options.artifact.routePath === options.routePath) {
1364
+ const artifactStartedAt = renderTimingPhaseStartedAt(options.timing);
1365
+ const analysis = routeSourceAnalysisFromArtifact(options.artifact);
1366
+ finishRenderTimingPhase(options.timing, artifactStartedAt, "sourceAnalysisArtifactMs");
1367
+ return analysis;
1368
+ }
1357
1369
  const cacheKey = `${options.serverModuleCacheVersion ?? "dev"}\0${options.filename}\0${sourceHash}`;
1358
1370
  const cached = readRouterRuntimeCacheEntry(routeSourceAnalysisCache, cacheKey, routeSourceAnalysisCacheCounters);
1359
1371
  if (cached !== undefined) {
@@ -1366,6 +1378,21 @@ async function analyzeRouteSource(options) {
1366
1378
  setBoundedCacheEntry(routeSourceAnalysisCache, cacheKey, pending, maxRouteSourceAnalysisCacheEntries, routeSourceAnalysisCacheCounters);
1367
1379
  return pending;
1368
1380
  }
1381
+ function routeSourceAnalysisFromArtifact(artifact) {
1382
+ return {
1383
+ authIncludesClaims: artifact.authIncludesClaims,
1384
+ cachePolicy: artifact.cachePolicy,
1385
+ clientInference: {
1386
+ client: artifact.clientRoute,
1387
+ clientBoundaryImports: [...artifact.clientBoundaryImports],
1388
+ diagnostics: [],
1389
+ },
1390
+ hasLoader: artifact.hasLoader,
1391
+ routeCode: artifact.routeCode,
1392
+ streamRoute: artifact.streamRoute,
1393
+ usesRuntimeCacheControl: artifact.usesRuntimeCacheControl,
1394
+ };
1395
+ }
1369
1396
  async function analyzeRouteSourceUncached(options) {
1370
1397
  const routeCode = stripRouteModuleExports(options.code);
1371
1398
  const clientInference = await inferClientRouteModule({
@@ -2144,7 +2171,7 @@ async function loadRouteLoaderModule(options) {
2144
2171
  }
2145
2172
  const loaded = loadBundledRouteLoaderModule({
2146
2173
  ...options,
2147
- prebuiltCode: prebuiltRequestModuleCode(options.serverModules, options.filename, options.code),
2174
+ prebuiltCode: prebuiltRouteLoaderModuleCode(options.serverModules, options.filename, options.code),
2148
2175
  }).catch((error) => {
2149
2176
  if (cacheKey !== undefined) {
2150
2177
  routeLoaderModuleCache.delete(cacheKey);
@@ -2174,7 +2201,7 @@ export async function bundleRouteLoaderModuleCode(options) {
2174
2201
  jsxFactory: "__mreact_jsx",
2175
2202
  jsxFragment: "__mreact_fragment",
2176
2203
  stdin: {
2177
- contents: options.code,
2204
+ contents: stripRouteLoaderOnlyExports(options.code),
2178
2205
  loader: "tsx",
2179
2206
  resolveDir: dirname(options.filename),
2180
2207
  sourcefile: options.filename,
@@ -2204,12 +2231,18 @@ async function loadBundledRouteLoaderModule(options) {
2204
2231
  label: `loader:${options.filename}`,
2205
2232
  });
2206
2233
  }
2207
- function prebuiltRequestModuleCode(serverModules, file, source) {
2208
- const artifact = serverModules?.get(file)?.request;
2234
+ function prebuiltRequestModuleCode(serverModules, file, source, kind = "request") {
2235
+ const artifact = serverModules?.get(file)?.[kind];
2209
2236
  return artifact !== undefined && artifact.sourceHash === memoizedHashText(source)
2210
2237
  ? artifact.code
2211
2238
  : undefined;
2212
2239
  }
2240
+ function prebuiltRouteLoaderModuleCode(serverModules, file, source) {
2241
+ const artifact = serverModules?.get(file)?.loader;
2242
+ return artifact !== undefined && artifact.sourceHash === memoizedHashText(source)
2243
+ ? artifact.code
2244
+ : prebuiltRequestModuleCode(serverModules, file, source);
2245
+ }
2213
2246
  function importPolicyCacheKey(policy) {
2214
2247
  if (policy === undefined) {
2215
2248
  return "";
@@ -2224,7 +2257,7 @@ async function loadRouteMetadata(options) {
2224
2257
  if (!hasMetadataExport(options.code)) {
2225
2258
  return undefined;
2226
2259
  }
2227
- const prebuiltCode = prebuiltRequestModuleCode(options.serverModules, options.filename, options.code);
2260
+ const prebuiltCode = prebuiltRequestModuleCode(options.serverModules, options.filename, options.code, "routeMetadata");
2228
2261
  const code = prebuiltCode ?? await bundleRouteMetadataModuleCode(options);
2229
2262
  const module = await importAppRouterSourceModule({
2230
2263
  ...(options.serverModuleCacheVersion === undefined
@@ -2255,7 +2288,7 @@ async function bundleRouteMetadataModuleCode(options) {
2255
2288
  jsxFactory: "__mreact_jsx",
2256
2289
  jsxFragment: "__mreact_fragment",
2257
2290
  stdin: {
2258
- contents: options.code,
2291
+ contents: stripRouteMetadataOnlyExports(options.code),
2259
2292
  loader: "tsx",
2260
2293
  resolveDir: dirname(options.filename),
2261
2294
  sourcefile: options.filename,