Skip to content

Commit 1034bb1

Browse files
committed
fix(@angular-devkit/build-angular): provide better error message when server option is required but missing
This improves the error message when the server entry-point is required but missing Closes #27251
1 parent a44b6c1 commit 1034bb1

File tree

2 files changed

+9
-10
lines changed

2 files changed

+9
-10
lines changed

packages/angular_devkit/build_angular/src/builders/application/options.ts

+7-1
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,7 @@ export async function normalizeOptions(
221221
if (options.server) {
222222
serverEntryPoint = path.join(workspaceRoot, options.server);
223223
} else if (options.server === '') {
224-
throw new Error('`server` option cannot be an empty string.');
224+
throw new Error('The "server" option cannot be an empty string.');
225225
}
226226

227227
let prerenderOptions;
@@ -253,6 +253,12 @@ export async function normalizeOptions(
253253
};
254254
}
255255

256+
if ((appShellOptions || ssrOptions || prerenderOptions) && !serverEntryPoint) {
257+
throw new Error(
258+
'The "server" option is required when enabling "ssr", "prerender" or "app-shell".',
259+
);
260+
}
261+
256262
// Initial options to keep
257263
const {
258264
allowedCommonJsDependencies,

packages/angular_devkit/build_angular/src/tools/esbuild/application-code-bundle.ts

+2-9
Original file line numberDiff line numberDiff line change
@@ -154,15 +154,8 @@ export function createServerCodeBundleOptions(
154154
target: string[],
155155
sourceFileCache: SourceFileCache,
156156
): BuildOptions {
157-
const {
158-
jit,
159-
serverEntryPoint,
160-
workspaceRoot,
161-
ssrOptions,
162-
watch,
163-
externalPackages,
164-
prerenderOptions,
165-
} = options;
157+
const { serverEntryPoint, workspaceRoot, ssrOptions, watch, externalPackages, prerenderOptions } =
158+
options;
166159

167160
assert(
168161
serverEntryPoint,

0 commit comments

Comments
 (0)