@angular/build 22.2.0-next.4 → 22.2.0-next.5

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.
Files changed (58) hide show
  1. package/package.json +10 -10
  2. package/src/builders/application/i18n.js +15 -3
  3. package/src/builders/application/i18n.js.map +1 -1
  4. package/src/builders/application/setup-bundling.js +3 -1
  5. package/src/builders/application/setup-bundling.js.map +1 -1
  6. package/src/tools/angular/compilation/parallel-compilation.js +43 -19
  7. package/src/tools/angular/compilation/parallel-compilation.js.map +1 -1
  8. package/src/tools/angular/compilation/parallel-worker.js +86 -61
  9. package/src/tools/angular/compilation/parallel-worker.js.map +1 -1
  10. package/src/tools/angular/linker/oxc-linker.d.ts +13 -17
  11. package/src/tools/angular/linker/oxc-linker.js +27 -89
  12. package/src/tools/angular/linker/oxc-linker.js.map +1 -1
  13. package/src/tools/esbuild/angular/component-stylesheets.d.ts +3 -3
  14. package/src/tools/esbuild/angular/component-stylesheets.js +42 -15
  15. package/src/tools/esbuild/angular/component-stylesheets.js.map +1 -1
  16. package/src/tools/esbuild/application-code-bundle.js +5 -9
  17. package/src/tools/esbuild/application-code-bundle.js.map +1 -1
  18. package/src/tools/esbuild/bundler-context.d.ts +4 -4
  19. package/src/tools/esbuild/bundler-context.js +93 -27
  20. package/src/tools/esbuild/bundler-context.js.map +1 -1
  21. package/src/tools/esbuild/cache.d.ts +10 -0
  22. package/src/tools/esbuild/cache.js +18 -0
  23. package/src/tools/esbuild/cache.js.map +1 -1
  24. package/src/tools/esbuild/i18n-inliner-worker.d.ts +59 -6
  25. package/src/tools/esbuild/i18n-inliner-worker.js +96 -28
  26. package/src/tools/esbuild/i18n-inliner-worker.js.map +1 -1
  27. package/src/tools/esbuild/i18n-inliner.d.ts +37 -5
  28. package/src/tools/esbuild/i18n-inliner.js +209 -90
  29. package/src/tools/esbuild/i18n-inliner.js.map +1 -1
  30. package/src/tools/esbuild/i18n-locale-plugin.d.ts +32 -0
  31. package/src/tools/esbuild/i18n-locale-plugin.js +112 -103
  32. package/src/tools/esbuild/i18n-locale-plugin.js.map +1 -1
  33. package/src/tools/esbuild/i18n-translation-encoder.d.ts +20 -0
  34. package/src/tools/esbuild/i18n-translation-encoder.js +92 -0
  35. package/src/tools/esbuild/i18n-translation-encoder.js.map +1 -0
  36. package/src/tools/esbuild/i18n-translation-reader.d.ts +40 -0
  37. package/src/tools/esbuild/i18n-translation-reader.js +164 -0
  38. package/src/tools/esbuild/i18n-translation-reader.js.map +1 -0
  39. package/src/tools/esbuild/javascript-transformer-worker.js +36 -46
  40. package/src/tools/esbuild/javascript-transformer-worker.js.map +1 -1
  41. package/src/tools/esbuild/load-result-cache.d.ts +1 -0
  42. package/src/tools/esbuild/load-result-cache.js +24 -11
  43. package/src/tools/esbuild/load-result-cache.js.map +1 -1
  44. package/src/tools/oxc/oxc-transform.d.ts +3 -0
  45. package/src/tools/oxc/oxc-transform.js +53 -32
  46. package/src/tools/oxc/oxc-transform.js.map +1 -1
  47. package/src/utils/normalize-cache.js +1 -1
  48. package/src/utils/server-rendering/esm-in-memory-loader/loader-hooks.d.ts +1 -1
  49. package/src/utils/server-rendering/esm-in-memory-loader/loader-hooks.js +12 -9
  50. package/src/utils/server-rendering/esm-in-memory-loader/loader-hooks.js.map +1 -1
  51. package/src/utils/server-rendering/esm-in-memory-loader/utils.d.ts +8 -0
  52. package/src/utils/server-rendering/esm-in-memory-loader/utils.js +30 -0
  53. package/src/utils/server-rendering/esm-in-memory-loader/utils.js.map +1 -1
  54. package/src/utils/server-rendering/prerender.js +70 -30
  55. package/src/utils/server-rendering/prerender.js.map +1 -1
  56. package/src/utils/server-rendering/render-worker.d.ts +7 -4
  57. package/src/utils/server-rendering/render-worker.js +29 -7
  58. package/src/utils/server-rendering/render-worker.js.map +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@angular/build",
3
- "version": "22.2.0-next.4",
3
+ "version": "22.2.0-next.5",
4
4
  "description": "Official build system for Angular",
5
5
  "keywords": [
6
6
  "Angular CLI",
@@ -23,9 +23,9 @@
23
23
  "builders": "builders.json",
24
24
  "dependencies": {
25
25
  "@ampproject/remapping": "2.3.0",
26
- "@angular-devkit/architect": "0.2202.0-next.4",
26
+ "@angular-devkit/architect": "0.2202.0-next.5",
27
27
  "@babel/core": "8.0.1",
28
- "@inquirer/confirm": "6.1.1",
28
+ "@inquirer/confirm": "6.2.0",
29
29
  "@parcel/watcher": "2.6.0",
30
30
  "@vitejs/plugin-basic-ssl": "2.3.0",
31
31
  "beasties": "0.4.3",
@@ -35,18 +35,18 @@
35
35
  "https-proxy-agent": "9.1.0",
36
36
  "jsonc-parser": "3.3.1",
37
37
  "listr2": "11.0.0",
38
- "magic-string": "1.1.1",
38
+ "magic-string": "1.2.2",
39
39
  "mrmime": "2.0.1",
40
- "oxc-parser": "0.144.0",
40
+ "oxc-parser": "0.146.0",
41
41
  "parse5-html-rewriting-stream": "8.0.1",
42
42
  "picomatch": "4.0.5",
43
- "piscina": "5.3.0",
44
- "rolldown": "1.2.4",
45
- "sass": "1.102.0",
43
+ "piscina": "5.3.1",
44
+ "rolldown": "1.2.5",
45
+ "sass": "1.103.1",
46
46
  "semver": "7.8.5",
47
47
  "source-map-support": "0.5.21",
48
48
  "tinyglobby": "0.2.17",
49
- "vite": "8.2.1",
49
+ "vite": "8.2.2",
50
50
  "xxhash-wasm": "1.1.0"
51
51
  },
52
52
  "optionalDependencies": {
@@ -60,7 +60,7 @@
60
60
  "@angular/platform-browser": "^22.0.0 || ^22.2.0-next.0",
61
61
  "@angular/platform-server": "^22.0.0 || ^22.2.0-next.0",
62
62
  "@angular/service-worker": "^22.0.0 || ^22.2.0-next.0",
63
- "@angular/ssr": "^22.2.0-next.4",
63
+ "@angular/ssr": "^22.2.0-next.5",
64
64
  "istanbul-lib-instrument": "^6.0.0",
65
65
  "karma": "^6.4.0",
66
66
  "less": "^4.2.0",
@@ -6,9 +6,13 @@
6
6
  * Use of this source code is governed by an MIT-style license that can be
7
7
  * found in the LICENSE file at https://angular.dev/license
8
8
  */
9
+ var __importDefault = (this && this.__importDefault) || function (mod) {
10
+ return (mod && mod.__esModule) ? mod : { "default": mod };
11
+ };
9
12
  Object.defineProperty(exports, "__esModule", { value: true });
10
13
  exports.inlineI18n = inlineI18n;
11
14
  exports.loadActiveTranslations = loadActiveTranslations;
15
+ const node_assert_1 = __importDefault(require("node:assert"));
12
16
  const promises_1 = require("node:fs/promises");
13
17
  const node_path_1 = require("node:path");
14
18
  const bundler_files_1 = require("../../tools/esbuild/bundler-files");
@@ -48,7 +52,7 @@ async function inlineI18n(metafile, options, executionResult, initialFiles) {
48
52
  // Root and SSR entry files are not modified.
49
53
  const unModifiedOutputFiles = executionResult.outputFiles.filter(({ type }) => type === bundler_files_1.BuildOutputFileType.Root || type === bundler_files_1.BuildOutputFileType.ServerRoot);
50
54
  try {
51
- for (const locale of i18nOptions.inlineLocales) {
55
+ const localesToInline = Array.from(i18nOptions.inlineLocales, (locale) => {
52
56
  const localeDescription = i18nOptions.locales[locale];
53
57
  let translationIntegrity = '';
54
58
  for (const file of localeDescription.files) {
@@ -58,8 +62,16 @@ async function inlineI18n(metafile, options, executionResult, initialFiles) {
58
62
  }
59
63
  translationIntegrity += (translationIntegrity ? '|' : '') + file.integrity;
60
64
  }
61
- // A locale specific set of files is returned from the inliner.
62
- const localeInlineResult = await inliner.inlineForLocale(locale, localeDescription.translation, translationIntegrity);
65
+ return {
66
+ locale,
67
+ translation: localeDescription.translation,
68
+ translationIntegrity,
69
+ };
70
+ });
71
+ const inlinedLocales = await inliner.inlineAll(localesToInline);
72
+ for (const locale of i18nOptions.inlineLocales) {
73
+ const localeInlineResult = inlinedLocales.get(locale);
74
+ (0, node_assert_1.default)(localeInlineResult !== undefined, 'Inlined result must exist for locale: ' + locale);
63
75
  const localeOutputFiles = localeInlineResult.outputFiles;
64
76
  inlineResult.errors.push(...localeInlineResult.errors);
65
77
  inlineResult.warnings.push(...localeInlineResult.warnings);
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.js","sourceRoot":"","sources":["i18n.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"i18n.js","sourceRoot":"","sources":["i18n.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ const application_code_bundle_1 = require("../../tools/esbuild/application-code-
14
14
  const bundler_context_1 = require("../../tools/esbuild/bundler-context");
15
15
  const global_scripts_1 = require("../../tools/esbuild/global-scripts");
16
16
  const global_styles_1 = require("../../tools/esbuild/global-styles");
17
+ const load_result_cache_1 = require("../../tools/esbuild/load-result-cache");
17
18
  const target_1 = require("../../tools/esbuild/target");
18
19
  /**
19
20
  * Generates one or more BundlerContext instances based on the builder provided
@@ -42,10 +43,11 @@ function setupBundlerContexts(options, target, codeBundleCache, stylesheetBundle
42
43
  }
43
44
  // Global Stylesheets
44
45
  if (options.globalStyles.length > 0) {
46
+ const globalStylesCache = new load_result_cache_1.MemoryLoadResultCache();
45
47
  for (const initial of [true, false]) {
46
48
  const bundleOptions = (0, global_styles_1.createGlobalStylesBundleOptions)(options, target, initial);
47
49
  if (bundleOptions) {
48
- otherContexts.push(new bundler_context_1.BundlerContext(workspaceRoot, watch, bundleOptions, true, () => initial));
50
+ otherContexts.push(new bundler_context_1.BundlerContext(workspaceRoot, watch, bundleOptions, true, () => initial, globalStylesCache));
49
51
  }
50
52
  }
51
53
  }
@@ -1 +1 @@
1
- {"version":3,"file":"setup-bundling.js","sourceRoot":"","sources":["setup-bundling.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup-bundling.js","sourceRoot":"","sources":["setup-bundling.ts"],"names":[],"mappings":"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"}
@@ -25,6 +25,7 @@ class ParallelCompilation extends angular_compilation_1.AngularCompilation {
25
25
  jit;
26
26
  browserOnlyBuild;
27
27
  #worker;
28
+ #webWorkerChannel;
28
29
  constructor(jit, browserOnlyBuild) {
29
30
  super();
30
31
  this.jit = jit;
@@ -37,7 +38,7 @@ class ParallelCompilation extends angular_compilation_1.AngularCompilation {
37
38
  filename: localRequire.resolve('./parallel-worker'),
38
39
  });
39
40
  }
40
- initialize(tsconfig, hostOptions, compilerOptionsTransformer) {
41
+ async initialize(tsconfig, hostOptions, compilerOptionsTransformer) {
41
42
  const stylesheetChannel = new node_worker_threads_1.MessageChannel();
42
43
  // The request identifier is required because Angular can issue multiple concurrent requests
43
44
  stylesheetChannel.port1.on('message', ({ requestId, data, containingFile, stylesheetFile, order, className }) => {
@@ -46,9 +47,11 @@ class ParallelCompilation extends angular_compilation_1.AngularCompilation {
46
47
  .then((value) => stylesheetChannel.port1.postMessage({ requestId, value }))
47
48
  .catch((error) => stylesheetChannel.port1.postMessage({ requestId, error }));
48
49
  });
50
+ this.#webWorkerChannel?.port1.close();
49
51
  // The web worker processing is a synchronous operation and uses shared memory combined with
50
52
  // the Atomics API to block execution here until a response is received.
51
53
  const webWorkerChannel = new node_worker_threads_1.MessageChannel();
54
+ this.#webWorkerChannel = webWorkerChannel;
52
55
  const webWorkerSignal = new Int32Array(new SharedArrayBuffer(4));
53
56
  webWorkerChannel.port1.on('message', ({ workerFile, containingFile }) => {
54
57
  try {
@@ -73,28 +76,41 @@ class ParallelCompilation extends angular_compilation_1.AngularCompilation {
73
76
  optionsChannel.port1.postMessage({ transformedOptions });
74
77
  }
75
78
  catch (error) {
76
- webWorkerChannel.port1.postMessage({ error });
79
+ optionsChannel.port1.postMessage({ error });
77
80
  }
78
81
  finally {
79
82
  Atomics.store(optionsSignal, 0, 1);
80
83
  Atomics.notify(optionsSignal, 0);
81
84
  }
82
85
  });
83
- // Execute the initialize function in the worker thread
84
- return this.#worker.run({
85
- fileReplacements: hostOptions.fileReplacements,
86
- tsconfig,
87
- jit: this.jit,
88
- browserOnlyBuild: this.browserOnlyBuild,
89
- stylesheetPort: stylesheetChannel.port2,
90
- optionsPort: optionsChannel.port2,
91
- optionsSignal,
92
- webWorkerPort: webWorkerChannel.port2,
93
- webWorkerSignal,
94
- }, {
95
- name: 'initialize',
96
- transferList: [stylesheetChannel.port2, optionsChannel.port2, webWorkerChannel.port2],
97
- });
86
+ let success = false;
87
+ try {
88
+ // Execute the initialize function in the worker thread
89
+ const result = await this.#worker.run({
90
+ fileReplacements: hostOptions.fileReplacements,
91
+ tsconfig,
92
+ jit: this.jit,
93
+ browserOnlyBuild: this.browserOnlyBuild,
94
+ stylesheetPort: stylesheetChannel.port2,
95
+ optionsPort: optionsChannel.port2,
96
+ optionsSignal,
97
+ webWorkerPort: webWorkerChannel.port2,
98
+ webWorkerSignal,
99
+ }, {
100
+ name: 'initialize',
101
+ transferList: [stylesheetChannel.port2, optionsChannel.port2, webWorkerChannel.port2],
102
+ });
103
+ success = true;
104
+ return result;
105
+ }
106
+ finally {
107
+ stylesheetChannel.port1.close();
108
+ optionsChannel.port1.close();
109
+ if (!success) {
110
+ this.#webWorkerChannel?.port1.close();
111
+ this.#webWorkerChannel = undefined;
112
+ }
113
+ }
98
114
  }
99
115
  /**
100
116
  * This is not needed with this compilation type since the worker will already send a response
@@ -110,13 +126,21 @@ class ParallelCompilation extends angular_compilation_1.AngularCompilation {
110
126
  }
111
127
  return result;
112
128
  }
113
- emitAffectedFiles() {
114
- return this.#worker.run(undefined, { name: 'emit' });
129
+ async emitAffectedFiles() {
130
+ try {
131
+ return await this.#worker.run(undefined, { name: 'emit' });
132
+ }
133
+ finally {
134
+ this.#webWorkerChannel?.port1.close();
135
+ this.#webWorkerChannel = undefined;
136
+ }
115
137
  }
116
138
  update(files) {
117
139
  return this.#worker.run(files, { name: 'update' });
118
140
  }
119
141
  close() {
142
+ this.#webWorkerChannel?.port1.close();
143
+ this.#webWorkerChannel = undefined;
120
144
  return this.#worker.destroy();
121
145
  }
122
146
  }
@@ -1 +1 @@
1
- {"version":3,"file":"parallel-compilation.js","sourceRoot":"","sources":["parallel-compilation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parallel-compilation.js","sourceRoot":"","sources":["parallel-compilation.ts"],"names":[],"mappings":"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"}
@@ -22,73 +22,92 @@ const profiling_1 = require("../../esbuild/profiling");
22
22
  const aot_compilation_1 = require("./aot-compilation");
23
23
  const jit_compilation_1 = require("./jit-compilation");
24
24
  let compilation;
25
+ let activeWebWorkerPort;
25
26
  const modifiedFiles = new Set();
26
27
  async function initialize(request) {
28
+ activeWebWorkerPort?.close();
29
+ activeWebWorkerPort = request.webWorkerPort;
27
30
  const currentModifiedFiles = new Set(modifiedFiles);
28
31
  modifiedFiles.clear();
29
- await (0, hash_1.initializeHash)();
30
- compilation ??= request.jit
31
- ? new jit_compilation_1.JitCompilation(request.browserOnlyBuild)
32
- : new aot_compilation_1.AotCompilation(request.browserOnlyBuild);
33
- const stylesheetRequests = new Map();
34
- request.stylesheetPort.on('message', ({ requestId, value, error }) => {
35
- if (error) {
36
- stylesheetRequests.get(requestId)?.[1](error);
37
- }
38
- else {
39
- stylesheetRequests.get(requestId)?.[0](value);
40
- }
41
- });
42
- const { compilerOptions, referencedFiles, externalStylesheets, templateUpdates, componentResourcesDependencies, } = await compilation.initialize(request.tsconfig, {
43
- fileReplacements: request.fileReplacements,
44
- modifiedFiles: currentModifiedFiles,
45
- transformStylesheet(data, containingFile, stylesheetFile, order, className) {
46
- const requestId = (0, node_crypto_1.randomUUID)();
47
- const resultPromise = new Promise((resolve, reject) => stylesheetRequests.set(requestId, [resolve, reject]));
48
- request.stylesheetPort.postMessage({
49
- requestId,
50
- data,
51
- containingFile,
52
- stylesheetFile,
53
- order,
54
- className,
55
- });
56
- return resultPromise;
57
- },
58
- processWebWorker(workerFile, containingFile) {
59
- Atomics.store(request.webWorkerSignal, 0, 0);
60
- request.webWorkerPort.postMessage({ workerFile, containingFile });
61
- Atomics.wait(request.webWorkerSignal, 0, 0);
62
- const result = (0, node_worker_threads_1.receiveMessageOnPort)(request.webWorkerPort)?.message;
32
+ let success = false;
33
+ try {
34
+ await (0, hash_1.initializeHash)();
35
+ compilation ??= request.jit
36
+ ? new jit_compilation_1.JitCompilation(request.browserOnlyBuild)
37
+ : new aot_compilation_1.AotCompilation(request.browserOnlyBuild);
38
+ const stylesheetRequests = new Map();
39
+ request.stylesheetPort.on('message', ({ requestId, value, error }) => {
40
+ const handlers = stylesheetRequests.get(requestId);
41
+ if (handlers) {
42
+ stylesheetRequests.delete(requestId);
43
+ if (error) {
44
+ handlers[1](error);
45
+ }
46
+ else {
47
+ handlers[0](value);
48
+ }
49
+ }
50
+ });
51
+ const { compilerOptions, referencedFiles, externalStylesheets, templateUpdates, componentResourcesDependencies, } = await compilation.initialize(request.tsconfig, {
52
+ fileReplacements: request.fileReplacements,
53
+ modifiedFiles: currentModifiedFiles,
54
+ transformStylesheet(data, containingFile, stylesheetFile, order, className) {
55
+ const requestId = (0, node_crypto_1.randomUUID)();
56
+ const resultPromise = new Promise((resolve, reject) => stylesheetRequests.set(requestId, [resolve, reject]));
57
+ request.stylesheetPort.postMessage({
58
+ requestId,
59
+ data,
60
+ containingFile,
61
+ stylesheetFile,
62
+ order,
63
+ className,
64
+ });
65
+ return resultPromise;
66
+ },
67
+ processWebWorker(workerFile, containingFile) {
68
+ Atomics.store(request.webWorkerSignal, 0, 0);
69
+ request.webWorkerPort.postMessage({ workerFile, containingFile });
70
+ Atomics.wait(request.webWorkerSignal, 0, 0);
71
+ const result = (0, node_worker_threads_1.receiveMessageOnPort)(request.webWorkerPort)?.message;
72
+ if (result?.error) {
73
+ throw result.error;
74
+ }
75
+ return result?.workerCodeFile ?? workerFile;
76
+ },
77
+ }, (compilerOptions) => {
78
+ Atomics.store(request.optionsSignal, 0, 0);
79
+ request.optionsPort.postMessage(compilerOptions);
80
+ Atomics.wait(request.optionsSignal, 0, 0);
81
+ const result = (0, node_worker_threads_1.receiveMessageOnPort)(request.optionsPort)?.message;
63
82
  if (result?.error) {
64
83
  throw result.error;
65
84
  }
66
- return result?.workerCodeFile ?? workerFile;
67
- },
68
- }, (compilerOptions) => {
69
- Atomics.store(request.optionsSignal, 0, 0);
70
- request.optionsPort.postMessage(compilerOptions);
71
- Atomics.wait(request.optionsSignal, 0, 0);
72
- const result = (0, node_worker_threads_1.receiveMessageOnPort)(request.optionsPort)?.message;
73
- if (result?.error) {
74
- throw result.error;
85
+ return result?.transformedOptions ?? compilerOptions;
86
+ });
87
+ success = true;
88
+ return {
89
+ externalStylesheets,
90
+ templateUpdates,
91
+ referencedFiles,
92
+ // TODO: Expand? `allowJs`, `isolatedModules`, `sourceMap`, `inlineSourceMap` are the only fields needed currently.
93
+ compilerOptions: {
94
+ allowJs: compilerOptions.allowJs,
95
+ isolatedModules: compilerOptions.isolatedModules,
96
+ sourceMap: compilerOptions.sourceMap,
97
+ inlineSourceMap: compilerOptions.inlineSourceMap,
98
+ _useTypeScriptTranspilation: compilerOptions['_useTypeScriptTranspilation'],
99
+ },
100
+ componentResourcesDependencies,
101
+ };
102
+ }
103
+ finally {
104
+ request.stylesheetPort.close();
105
+ request.optionsPort.close();
106
+ if (!success) {
107
+ activeWebWorkerPort?.close();
108
+ activeWebWorkerPort = undefined;
75
109
  }
76
- return result?.transformedOptions ?? compilerOptions;
77
- });
78
- return {
79
- externalStylesheets,
80
- templateUpdates,
81
- referencedFiles,
82
- // TODO: Expand? `allowJs`, `isolatedModules`, `sourceMap`, `inlineSourceMap` are the only fields needed currently.
83
- compilerOptions: {
84
- allowJs: compilerOptions.allowJs,
85
- isolatedModules: compilerOptions.isolatedModules,
86
- sourceMap: compilerOptions.sourceMap,
87
- inlineSourceMap: compilerOptions.inlineSourceMap,
88
- _useTypeScriptTranspilation: compilerOptions['_useTypeScriptTranspilation'],
89
- },
90
- componentResourcesDependencies,
91
- };
110
+ }
92
111
  }
93
112
  async function diagnose(modes) {
94
113
  (0, node_assert_1.default)(compilation);
@@ -101,8 +120,14 @@ async function diagnose(modes) {
101
120
  }
102
121
  async function emit() {
103
122
  (0, node_assert_1.default)(compilation);
104
- const files = await compilation.emitAffectedFiles();
105
- return [...files];
123
+ try {
124
+ const files = await compilation.emitAffectedFiles();
125
+ return [...files];
126
+ }
127
+ finally {
128
+ activeWebWorkerPort?.close();
129
+ activeWebWorkerPort = undefined;
130
+ }
106
131
  }
107
132
  async function update(files) {
108
133
  for (const file of files) {
@@ -1 +1 @@
1
- {"version":3,"file":"parallel-worker.js","sourceRoot":"","sources":["parallel-worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parallel-worker.js","sourceRoot":"","sources":["parallel-worker.ts"],"names":[],"mappings":"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"}
@@ -5,22 +5,18 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.dev/license
7
7
  */
8
- import type { DecodedSourceMap } from '@ampproject/remapping';
9
- export interface OxcLinkerOptions {
10
- sourcemap?: boolean;
11
- jit?: boolean;
12
- skipCheck?: boolean;
13
- }
8
+ import type { CallExpression } from '@oxc-project/types';
14
9
  /**
15
- * Executes Angular partial declaration linking on the specified JavaScript file
16
- * using `oxc-parser` and `magic-string`.
17
- *
18
- * @param filename The full path to the file.
19
- * @param code The source code content.
20
- * @param options Linker options (sourcemap, jit, skipCheck).
21
- * @returns An object containing the transformed code and optional source map.
10
+ * Manages Angular partial declaration linking using Oxc AST nodes.
22
11
  */
23
- export declare function linkWithOxc(filename: string, code: string, options?: OxcLinkerOptions): {
24
- code: string;
25
- map: DecodedSourceMap | undefined;
26
- };
12
+ export declare class OxcLinker {
13
+ #private;
14
+ constructor(filename: string, code: string, jit?: boolean);
15
+ /**
16
+ * Attempts to link an Angular partial declaration CallExpression.
17
+ *
18
+ * @param node The CallExpression AST node to check and link.
19
+ * @returns The linked code string if the node is a partial declaration, or undefined otherwise.
20
+ */
21
+ linkCallExpression(node: CallExpression): string | undefined;
22
+ }