Skip to content

Commit 5a2a2fc

Browse files
committed
refactor(@angular-devkit/build-angular): unify webpack configurations
With this change we unify most of the webpack configuration into the common configuration. A number of lengthy functions and code portions have been moved into a seperate file to make the configuration easier to follow.
1 parent 12c88f3 commit 5a2a2fc

File tree

18 files changed

+446
-589
lines changed

18 files changed

+446
-589
lines changed

packages/angular_devkit/build_angular/src/builders/browser/index.ts

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,7 @@ import {
4646
} from '../../utils/webpack-browser-config';
4747
import {
4848
getAnalyticsConfig,
49-
getBrowserConfig,
5049
getCommonConfig,
51-
getStatsConfig,
5250
getStylesConfig,
5351
getTypeScriptConfig,
5452
getWorkerConfig,
@@ -96,9 +94,7 @@ async function initialize(
9694
const { config, projectRoot, projectSourceRoot, i18n, target } =
9795
await generateI18nBrowserWebpackConfigFromContext(adjustedOptions, context, (wco) => [
9896
getCommonConfig(wco),
99-
getBrowserConfig(wco),
10097
getStylesConfig(wco),
101-
getStatsConfig(wco),
10298
getAnalyticsConfig(wco, context),
10399
getTypeScriptConfig(wco),
104100
wco.buildOptions.webWorkerTsConfig ? getWorkerConfig(wco) : {},

packages/angular_devkit/build_angular/src/builders/dev-server/index.ts

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,8 @@ import {
3535
} from '../../utils/webpack-browser-config';
3636
import {
3737
getAnalyticsConfig,
38-
getBrowserConfig,
3938
getCommonConfig,
4039
getDevServerConfig,
41-
getStatsConfig,
4240
getStylesConfig,
4341
getTypeScriptConfig,
4442
getWorkerConfig,
@@ -167,9 +165,7 @@ export function serveWebpackBrowser(
167165
(wco) => [
168166
getDevServerConfig(wco),
169167
getCommonConfig(wco),
170-
getBrowserConfig(wco),
171168
getStylesConfig(wco),
172-
getStatsConfig(wco),
173169
getAnalyticsConfig(wco, context),
174170
getTypeScriptConfig(wco),
175171
browserOptions.webWorkerTsConfig ? getWorkerConfig(wco) : {},

packages/angular_devkit/build_angular/src/builders/extract-i18n/index.ts

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,7 @@ import { createI18nOptions } from '../../utils/i18n-options';
1919
import { loadEsmModule } from '../../utils/load-esm';
2020
import { assertCompatibleAngularVersion } from '../../utils/version';
2121
import { generateBrowserWebpackConfigFromContext } from '../../utils/webpack-browser-config';
22-
import {
23-
getBrowserConfig,
24-
getCommonConfig,
25-
getStatsConfig,
26-
getTypeScriptConfig,
27-
getWorkerConfig,
28-
} from '../../webpack/configs';
22+
import { getCommonConfig, getTypeScriptConfig, getWorkerConfig } from '../../webpack/configs';
2923
import { createWebpackLoggingCallback } from '../../webpack/utils/stats';
3024
import { Schema as BrowserBuilderOptions, OutputHashing } from '../browser/schema';
3125
import { Format, Schema } from './schema';
@@ -192,6 +186,7 @@ export async function execute(
192186
subresourceIntegrity: false,
193187
outputHashing: OutputHashing.None,
194188
namedChunks: true,
189+
allowedCommonJsDependencies: undefined,
195190
};
196191
const { config, projectRoot } = await generateBrowserWebpackConfigFromContext(
197192
builderOptions,
@@ -203,10 +198,8 @@ export async function execute(
203198
const partials = [
204199
{ plugins: [new NoEmitPlugin()] },
205200
getCommonConfig(wco),
206-
getBrowserConfig(wco),
207201
getTypeScriptConfig(wco),
208202
getWorkerConfig(wco),
209-
getStatsConfig(wco),
210203
];
211204

212205
// Add Ivy application file extractor support

packages/angular_devkit/build_angular/src/builders/karma/index.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ import { generateBrowserWebpackConfigFromContext } from '../../utils/webpack-bro
1919
import {
2020
getCommonConfig,
2121
getStylesConfig,
22-
getTestConfig,
2322
getTypeScriptConfig,
2423
getWorkerConfig,
2524
} from '../../webpack/configs';
@@ -64,7 +63,6 @@ async function initialize(
6463
getCommonConfig(wco),
6564
getStylesConfig(wco),
6665
getTypeScriptConfig(wco),
67-
getTestConfig(wco),
6866
getWorkerConfig(wco),
6967
],
7068
);

packages/angular_devkit/build_angular/src/builders/server/index.ts

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,7 @@ import { I18nOptions } from '../../utils/i18n-options';
2121
import { ensureOutputPaths } from '../../utils/output-paths';
2222
import { assertCompatibleAngularVersion } from '../../utils/version';
2323
import { generateI18nBrowserWebpackConfigFromContext } from '../../utils/webpack-browser-config';
24-
import {
25-
getCommonConfig,
26-
getServerConfig,
27-
getStatsConfig,
28-
getStylesConfig,
29-
getTypeScriptConfig,
30-
} from '../../webpack/configs';
24+
import { getCommonConfig, getStylesConfig, getTypeScriptConfig } from '../../webpack/configs';
3125
import { webpackStatsLogger } from '../../webpack/utils/stats';
3226
import { Schema as ServerBuilderOptions } from './schema';
3327

@@ -161,13 +155,7 @@ async function initialize(
161155
platform: 'server',
162156
} as NormalizedBrowserBuilderSchema,
163157
context,
164-
(wco) => [
165-
getCommonConfig(wco),
166-
getServerConfig(wco),
167-
getStylesConfig(wco),
168-
getStatsConfig(wco),
169-
getTypeScriptConfig(wco),
170-
],
158+
(wco) => [getCommonConfig(wco), getStylesConfig(wco), getTypeScriptConfig(wco)],
171159
);
172160

173161
let transformedConfig;

packages/angular_devkit/build_angular/src/utils/build-options.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -69,9 +69,6 @@ export interface BuildOptions {
6969
inlineStyleLanguage?: InlineStyleLanguage;
7070
allowedCommonJsDependencies?: string[];
7171
cache: NormalizedCachedOptions;
72-
}
73-
74-
export interface WebpackTestOptions extends BuildOptions {
7572
codeCoverage?: boolean;
7673
codeCoverageExclude?: string[];
7774
}

packages/angular_devkit/build_angular/src/webpack/configs/browser.ts

Lines changed: 0 additions & 100 deletions
This file was deleted.

0 commit comments

Comments
 (0)