Skip to content

Commit 81ac2da

Browse files
committed
Update initialization for clarity
1 parent b31e02f commit 81ac2da

File tree

1 file changed

+16
-11
lines changed

1 file changed

+16
-11
lines changed

packages/react-router-dev/config/config.ts

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,7 @@ export type ReactRouterConfig = {
170170
*/
171171
routeDiscovery?:
172172
| {
173-
mode?: "lazy";
173+
mode: "lazy";
174174
manifestPath?: string;
175175
}
176176
| {
@@ -412,10 +412,6 @@ async function resolveConfig({
412412
let defaults = {
413413
basename: "/",
414414
buildDirectory: "build",
415-
routeDiscovery: {
416-
mode: "lazy",
417-
manifestPath: "/__manifest",
418-
},
419415
serverBuildFile: "index.js",
420416
serverModuleFormat: "esm",
421417
ssr: true,
@@ -432,7 +428,7 @@ async function resolveConfig({
432428
buildDirectory: userBuildDirectory,
433429
buildEnd,
434430
prerender,
435-
routeDiscovery,
431+
routeDiscovery: userRouteDiscovery,
436432
serverBuildFile,
437433
serverBundles,
438434
serverModuleFormat,
@@ -459,25 +455,34 @@ async function resolveConfig({
459455
);
460456
}
461457

462-
if (userAndPresetConfigs.routeDiscovery == null) {
463-
// Disable FOW when SSR is disabled, otherwise use defaults
464-
if (!ssr) {
458+
let routeDiscovery: ResolvedReactRouterConfig["routeDiscovery"];
459+
if (userRouteDiscovery == null) {
460+
if (ssr) {
461+
routeDiscovery = {
462+
mode: "lazy",
463+
manifestPath: "/__manifest",
464+
};
465+
} else {
465466
routeDiscovery = { mode: "initial" };
466467
}
467-
} else if (userAndPresetConfigs.routeDiscovery.mode === "lazy") {
468+
} else if (userRouteDiscovery.mode === "initial") {
469+
routeDiscovery = userRouteDiscovery;
470+
} else if (userRouteDiscovery.mode === "lazy") {
468471
if (!ssr) {
469472
return err(
470473
'The `routeDiscovery.mode` config cannot be set to "lazy" when setting `ssr:false`'
471474
);
472475
}
473476

474-
let manifestPath = userAndPresetConfigs.routeDiscovery.manifestPath;
477+
let { manifestPath } = userRouteDiscovery;
475478
if (manifestPath != null && !manifestPath.startsWith("/")) {
476479
return err(
477480
"The `routeDiscovery.manifestPath` config must be a root-relative " +
478481
'pathname beginning with a slash (i.e., "/__manifest")'
479482
);
480483
}
484+
485+
routeDiscovery = userRouteDiscovery;
481486
}
482487

483488
let appDirectory = path.resolve(root, userAppDirectory || "app");

0 commit comments

Comments
 (0)