in modules/builders/src/prerender/index.ts [186:216]
export async function execute(
options: PrerenderBuilderOptions,
context: BuilderContext,
): Promise<PrerenderBuilderOutput> {
const browserTarget = targetFromTargetString(options.browserTarget);
const browserOptions = (await context.getTargetOptions(
browserTarget,
)) as unknown as BrowserBuilderOptions;
const tsConfigPath =
typeof browserOptions.tsConfig === 'string' ? browserOptions.tsConfig : undefined;
const routes = await getRoutes(options, tsConfigPath, context);
if (!routes.length) {
throw new Error(`Could not find any routes to prerender.`);
}
const result = await _scheduleBuilds(options, context);
const { success, error, browserResult, serverResult } = result;
if (!success || !browserResult || !serverResult) {
return { success, error } as BuilderOutput;
}
return _renderUniversal(
routes,
context,
browserResult,
serverResult,
browserOptions,
options.numProcesses,
);
}