@angular-devkit/build-angular 14.1.0-rc.3 → 14.1.0

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/package.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@angular-devkit/build-angular",
3
- "version": "14.1.0-rc.3",
3
+ "version": "14.1.0",
4
4
  "description": "Angular Webpack Build Facade",
5
5
  "main": "src/index.js",
6
6
  "typings": "src/index.d.ts",
7
7
  "builders": "builders.json",
8
8
  "dependencies": {
9
9
  "@ampproject/remapping": "2.2.0",
10
- "@angular-devkit/architect": "0.1401.0-rc.3",
11
- "@angular-devkit/build-webpack": "0.1401.0-rc.3",
12
- "@angular-devkit/core": "14.1.0-rc.3",
10
+ "@angular-devkit/architect": "0.1401.0",
11
+ "@angular-devkit/build-webpack": "0.1401.0",
12
+ "@angular-devkit/core": "14.1.0",
13
13
  "@babel/core": "7.18.6",
14
14
  "@babel/generator": "7.18.7",
15
15
  "@babel/helper-annotate-as-pure": "7.18.6",
@@ -20,7 +20,7 @@
20
20
  "@babel/runtime": "7.18.6",
21
21
  "@babel/template": "7.18.6",
22
22
  "@discoveryjs/json-ext": "0.5.7",
23
- "@ngtools/webpack": "14.1.0-rc.3",
23
+ "@ngtools/webpack": "14.1.0",
24
24
  "ansi-colors": "4.1.3",
25
25
  "babel-loader": "8.2.5",
26
26
  "babel-plugin-istanbul": "6.1.1",
@@ -29,11 +29,11 @@
29
29
  "copy-webpack-plugin": "11.0.0",
30
30
  "critters": "0.0.16",
31
31
  "css-loader": "6.7.1",
32
- "esbuild-wasm": "0.14.48",
32
+ "esbuild-wasm": "0.14.49",
33
33
  "glob": "8.0.3",
34
34
  "https-proxy-agent": "5.0.1",
35
35
  "inquirer": "8.2.4",
36
- "jsonc-parser": "3.0.0",
36
+ "jsonc-parser": "3.1.0",
37
37
  "karma-source-map-support": "1.4.0",
38
38
  "less": "4.1.3",
39
39
  "less-loader": "11.0.0",
@@ -47,7 +47,7 @@
47
47
  "piscina": "3.2.0",
48
48
  "postcss": "8.4.14",
49
49
  "postcss-import": "14.1.0",
50
- "postcss-loader": "7.0.0",
50
+ "postcss-loader": "7.0.1",
51
51
  "postcss-preset-env": "7.7.2",
52
52
  "regenerator-runtime": "0.13.9",
53
53
  "resolve-url-loader": "5.0.0",
@@ -59,7 +59,7 @@
59
59
  "source-map-support": "0.5.21",
60
60
  "stylus": "0.58.1",
61
61
  "stylus-loader": "7.0.0",
62
- "terser": "5.14.1",
62
+ "terser": "5.14.2",
63
63
  "text-table": "0.2.0",
64
64
  "tree-kill": "1.2.2",
65
65
  "tslib": "2.4.0",
@@ -70,14 +70,14 @@
70
70
  "webpack-subresource-integrity": "5.1.0"
71
71
  },
72
72
  "optionalDependencies": {
73
- "esbuild": "0.14.48"
73
+ "esbuild": "0.14.49"
74
74
  },
75
75
  "peerDependencies": {
76
- "@angular/compiler-cli": "^14.0.0 || ^14.0.0-next || ^14.1.0-next",
77
- "@angular/localize": "^14.0.0 || ^14.0.0-next || ^14.1.0-next",
78
- "@angular/service-worker": "^14.0.0 || ^14.0.0-next || ^14.1.0-next",
76
+ "@angular/compiler-cli": "^14.0.0",
77
+ "@angular/localize": "^14.0.0",
78
+ "@angular/service-worker": "^14.0.0",
79
79
  "karma": "^6.3.0",
80
- "ng-packagr": "^14.0.0 || ^14.0.0-next || ^14.1.0-next",
80
+ "ng-packagr": "^14.0.0",
81
81
  "protractor": "^7.0.0",
82
82
  "tailwindcss": "^2.0.0 || ^3.0.0",
83
83
  "typescript": ">=4.6.2 <4.8"
@@ -43,12 +43,14 @@ const webpack_subresource_integrity_1 = require("webpack-subresource-integrity")
43
43
  const environment_options_1 = require("../../utils/environment-options");
44
44
  const load_esm_1 = require("../../utils/load-esm");
45
45
  const plugins_1 = require("../plugins");
46
+ const devtools_ignore_plugin_1 = require("../plugins/devtools-ignore-plugin");
46
47
  const named_chunks_plugin_1 = require("../plugins/named-chunks-plugin");
47
48
  const progress_plugin_1 = require("../plugins/progress-plugin");
48
49
  const transfer_size_plugin_1 = require("../plugins/transfer-size-plugin");
49
50
  const typescript_2 = require("../plugins/typescript");
50
51
  const watch_files_logs_plugin_1 = require("../plugins/watch-files-logs-plugin");
51
52
  const helpers_1 = require("../utils/helpers");
53
+ const VENDORS_TEST = /[\\/]node_modules[\\/]/;
52
54
  // eslint-disable-next-line max-lines-per-function
53
55
  async function getCommonConfig(wco) {
54
56
  var _a, _b;
@@ -132,6 +134,7 @@ async function getCommonConfig(wco) {
132
134
  if (stylesSourceMap) {
133
135
  include.push(/css$/);
134
136
  }
137
+ extraPlugins.push(new devtools_ignore_plugin_1.DevToolsIgnorePlugin());
135
138
  extraPlugins.push(new webpack_2.SourceMapDevToolPlugin({
136
139
  filename: '[file].map',
137
140
  include,
@@ -307,7 +310,7 @@ async function getCommonConfig(wco) {
307
310
  supportedBrowsers: buildOptions.supportedBrowsers,
308
311
  instrumentCode: codeCoverage
309
312
  ? {
310
- includedBasePath: sourceRoot,
313
+ includedBasePath: sourceRoot !== null && sourceRoot !== void 0 ? sourceRoot : projectRoot,
311
314
  excludedPaths: (0, helpers_1.getInstrumentationExcludedPaths)(root, codeCoverageExclude),
312
315
  }
313
316
  : undefined,
@@ -355,7 +358,7 @@ async function getCommonConfig(wco) {
355
358
  name: 'vendor',
356
359
  chunks: (chunk) => chunk.name === 'main',
357
360
  enforce: true,
358
- test: /[\\/]node_modules[\\/]/,
361
+ test: VENDORS_TEST,
359
362
  },
360
363
  },
361
364
  },
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ import { Compiler } from 'webpack';
9
+ /**
10
+ * This plugin adds a field to source maps that identifies which sources are
11
+ * vendored or runtime-injected (aka third-party) sources. These are consumed by
12
+ * Chrome DevTools to automatically ignore-list sources.
13
+ */
14
+ export declare class DevToolsIgnorePlugin {
15
+ apply(compiler: Compiler): void;
16
+ }
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ /**
3
+ * @license
4
+ * Copyright Google LLC All Rights Reserved.
5
+ *
6
+ * Use of this source code is governed by an MIT-style license that can be
7
+ * found in the LICENSE file at https://angular.io/license
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.DevToolsIgnorePlugin = void 0;
11
+ const webpack_1 = require("webpack");
12
+ // Following the naming conventions from
13
+ // https://sourcemaps.info/spec.html#h.ghqpj1ytqjbm
14
+ const IGNORE_LIST = 'x_google_ignoreList';
15
+ const PLUGIN_NAME = 'devtools-ignore-plugin';
16
+ /**
17
+ * This plugin adds a field to source maps that identifies which sources are
18
+ * vendored or runtime-injected (aka third-party) sources. These are consumed by
19
+ * Chrome DevTools to automatically ignore-list sources.
20
+ */
21
+ class DevToolsIgnorePlugin {
22
+ apply(compiler) {
23
+ const { RawSource } = compiler.webpack.sources;
24
+ compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation) => {
25
+ compilation.hooks.processAssets.tap({
26
+ name: PLUGIN_NAME,
27
+ stage: webpack_1.Compilation.PROCESS_ASSETS_STAGE_DEV_TOOLING,
28
+ additionalAssets: true,
29
+ }, (assets) => {
30
+ for (const [name, asset] of Object.entries(assets)) {
31
+ // Instead of using `asset.map()` to fetch the source maps from
32
+ // SourceMapSource assets, process them directly as a RawSource.
33
+ // This is because `.map()` is slow and can take several seconds.
34
+ if (!name.endsWith('.map')) {
35
+ // Ignore non source map files.
36
+ continue;
37
+ }
38
+ const mapContent = asset.source().toString();
39
+ if (!mapContent) {
40
+ continue;
41
+ }
42
+ const map = JSON.parse(mapContent);
43
+ const ignoreList = [];
44
+ for (const [index, path] of map.sources.entries()) {
45
+ if (path.includes('/node_modules/') || path.startsWith('webpack/')) {
46
+ ignoreList.push(index);
47
+ }
48
+ }
49
+ map[IGNORE_LIST] = ignoreList;
50
+ compilation.updateAsset(name, new RawSource(JSON.stringify(map)));
51
+ }
52
+ });
53
+ });
54
+ }
55
+ }
56
+ exports.DevToolsIgnorePlugin = DevToolsIgnorePlugin;