@angular/build 20.0.0-next.5 → 20.0.0-next.6

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,6 +1,6 @@
1
1
  {
2
2
  "name": "@angular/build",
3
- "version": "20.0.0-next.5",
3
+ "version": "20.0.0-next.6",
4
4
  "description": "Official build system for Angular",
5
5
  "keywords": [
6
6
  "Angular CLI",
@@ -23,7 +23,7 @@
23
23
  "builders": "builders.json",
24
24
  "dependencies": {
25
25
  "@ampproject/remapping": "2.3.0",
26
- "@angular-devkit/architect": "0.2000.0-next.5",
26
+ "@angular-devkit/architect": "0.2000.0-next.6",
27
27
  "@babel/core": "7.26.10",
28
28
  "@babel/helper-annotate-as-pure": "7.25.9",
29
29
  "@babel/helper-split-export-declaration": "7.24.7",
@@ -35,18 +35,18 @@
35
35
  "https-proxy-agent": "7.0.6",
36
36
  "istanbul-lib-instrument": "6.0.3",
37
37
  "jsonc-parser": "3.3.1",
38
- "listr2": "8.2.5",
38
+ "listr2": "8.3.2",
39
39
  "magic-string": "0.30.17",
40
40
  "mrmime": "2.0.1",
41
41
  "parse5-html-rewriting-stream": "7.0.0",
42
42
  "picomatch": "4.0.2",
43
43
  "piscina": "4.9.2",
44
- "rollup": "4.39.0",
44
+ "rollup": "4.40.0",
45
45
  "sass": "1.86.3",
46
46
  "semver": "7.7.1",
47
47
  "source-map-support": "0.5.21",
48
48
  "tinyglobby": "0.2.12",
49
- "vite": "6.2.5",
49
+ "vite": "6.2.6",
50
50
  "watchpack": "2.4.2"
51
51
  },
52
52
  "optionalDependencies": {
@@ -60,7 +60,7 @@
60
60
  "@angular/platform-browser": "^20.0.0 || ^20.0.0-next.0",
61
61
  "@angular/platform-server": "^20.0.0 || ^20.0.0-next.0",
62
62
  "@angular/service-worker": "^20.0.0 || ^20.0.0-next.0",
63
- "@angular/ssr": "^20.0.0-next.5",
63
+ "@angular/ssr": "^20.0.0-next.6",
64
64
  "karma": "^6.4.0",
65
65
  "less": "^4.2.0",
66
66
  "ng-packagr": "^20.0.0 || ^20.0.0-next.0",
@@ -247,8 +247,9 @@ async function* serveWithVite(serverOptions, builderName, builderAction, context
247
247
  externalMetadata.explicitServer.length = 0;
248
248
  externalMetadata.implicitServer.length = 0;
249
249
  externalMetadata.implicitBrowser.length = 0;
250
- externalMetadata.explicitBrowser.push(...explicit);
251
- externalMetadata.explicitServer.push(...explicit, ...node_module_1.builtinModules);
250
+ const externalDeps = browserOptions.externalDependencies ?? [];
251
+ externalMetadata.explicitBrowser.push(...explicit, ...externalDeps);
252
+ externalMetadata.explicitServer.push(...explicit, ...externalDeps, ...node_module_1.builtinModules);
252
253
  externalMetadata.implicitServer.push(...implicitServerFiltered);
253
254
  externalMetadata.implicitBrowser.push(...implicitBrowserFiltered);
254
255
  // The below needs to be sorted as Vite uses these options are part of the hashing invalidation algorithm.
@@ -307,7 +308,10 @@ async function* serveWithVite(serverOptions, builderName, builderAction, context
307
308
  });
308
309
  }
309
310
  // Setup server and start listening
310
- const serverConfiguration = await setupServer(serverOptions, generatedFiles, assetFiles, browserOptions.preserveSymlinks, externalMetadata, ssrMode, prebundleTransformer, target, (0, internal_1.isZonelessApp)(polyfills), componentStyles, templateUpdates, browserOptions.loader, browserOptions.define, extensions?.middleware, transformers?.indexHtml, thirdPartySourcemaps);
311
+ const serverConfiguration = await setupServer(serverOptions, generatedFiles, assetFiles, browserOptions.preserveSymlinks, externalMetadata, ssrMode, prebundleTransformer, target, (0, internal_1.isZonelessApp)(polyfills), componentStyles, templateUpdates, browserOptions.loader, {
312
+ ...browserOptions.define,
313
+ 'ngHmrMode': browserOptions.templateUpdates ? 'true' : 'false',
314
+ }, extensions?.middleware, transformers?.indexHtml, thirdPartySourcemaps);
311
315
  server = await createServer(serverConfiguration);
312
316
  await server.listen();
313
317
  // Setup builder context logging for browser clients
@@ -323,6 +323,7 @@ async function initializeApplication(options, context, karmaOptions, transforms
323
323
  entryPoints,
324
324
  tsConfig: options.tsConfig,
325
325
  outputPath,
326
+ preserveSymlinks: options.preserveSymlinks,
326
327
  aot: options.aot,
327
328
  index: false,
328
329
  outputHashing: schema_1.OutputHashing.None,
@@ -536,7 +536,8 @@ function createCompilerOptionsTransformer(setupWarnings, pluginOptions, preserve
536
536
  }
537
537
  // Synchronize custom resolve conditions.
538
538
  // Set if using the supported bundler resolution mode (bundler is the default in new projects)
539
- if (compilerOptions.moduleResolution === 100 /* ModuleResolutionKind.Bundler */) {
539
+ if (compilerOptions.moduleResolution === 100 /* ModuleResolutionKind.Bundler */ ||
540
+ compilerOptions.module === 200 /** ModuleKind.Preserve */) {
540
541
  compilerOptions.customConditions = customConditions;
541
542
  }
542
543
  return {
@@ -58,6 +58,10 @@ class ComponentStylesheetBundler {
58
58
  else {
59
59
  buildOptions.entryPoints = [entry];
60
60
  }
61
+ // Angular encapsulation does not support nesting
62
+ // See: https://github.com/angular/angular/issues/58996
63
+ buildOptions.supported ??= {};
64
+ buildOptions.supported['nesting'] = false;
61
65
  return buildOptions;
62
66
  });
63
67
  });
@@ -89,6 +93,10 @@ class ComponentStylesheetBundler {
89
93
  else {
90
94
  buildOptions.entryPoints = [`${namespace};${entry}`];
91
95
  }
96
+ // Angular encapsulation does not support nesting
97
+ // See: https://github.com/angular/angular/issues/58996
98
+ buildOptions.supported ??= {};
99
+ buildOptions.supported['nesting'] = false;
92
100
  buildOptions.plugins.push({
93
101
  name: 'angular-component-styles',
94
102
  setup(build) {
@@ -10,7 +10,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.normalizeCacheOptions = normalizeCacheOptions;
11
11
  const node_path_1 = require("node:path");
12
12
  /** Version placeholder is replaced during the build process with actual package version */
13
- const VERSION = '20.0.0-next.5';
13
+ const VERSION = '20.0.0-next.6';
14
14
  function hasCacheMetadata(value) {
15
15
  return (!!value &&
16
16
  typeof value === 'object' &&