@analogjs/vite-plugin-angular 2.6.3-beta.2 → 2.6.3-beta.4

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.
@@ -1,5 +1,6 @@
1
1
  import { promises as fsPromises } from 'node:fs';
2
2
  import { dirname, isAbsolute, resolve } from 'node:path';
3
+ import { parseSync } from 'oxc-parser';
3
4
  import * as vite from 'vite';
4
5
  import * as compilerCli from '@angular/compiler-cli';
5
6
  import { defaultClientConditions, normalizePath, preprocessCSS, } from 'vite';
@@ -29,14 +30,20 @@ export function fastCompilePlugin(pluginOptions) {
29
30
  * The `visited` set prevents infinite recursion within a single
30
31
  * top-level call. Each fresh scan should pass an empty set (so HMR
31
32
  * re-scans aren't blocked by buildStart's earlier visits).
33
+ *
34
+ * `fileContents`/`scanResults` are cold-start dedup caches scoped to a
35
+ * single `initFastCompile` call. HMR/watcher callers must omit them so
36
+ * an edited file is always re-read from disk.
32
37
  */
33
- async function scanBarrelExports(file, visited = new Set(), overwrite = false) {
38
+ async function scanBarrelExports(file, visited = new Set(), overwrite = false, fileContents, scanResults) {
34
39
  if (visited.has(file))
35
40
  return;
36
41
  visited.add(file);
37
42
  let code;
38
43
  try {
39
- code = await fsPromises.readFile(file, 'utf-8');
44
+ code =
45
+ fileContents?.get(file) ?? (await fsPromises.readFile(file, 'utf-8'));
46
+ fileContents?.set(file, code);
40
47
  }
41
48
  catch (e) {
42
49
  if (debugRegistry.enabled) {
@@ -44,7 +51,22 @@ export function fastCompilePlugin(pluginOptions) {
44
51
  }
45
52
  return;
46
53
  }
47
- const entries = scanFile(code, file);
54
+ // Single parse shared by scanFile and collectRelativeReExports. On a
55
+ // parse error each consumer re-parses on its own, preserving their
56
+ // individual failure semantics (scanFile throws past its pre-filter;
57
+ // collectRelativeReExports swallows and returns []).
58
+ let program;
59
+ try {
60
+ program = parseSync(file, code).program;
61
+ }
62
+ catch {
63
+ program = undefined;
64
+ }
65
+ let entries = scanResults?.get(file);
66
+ if (!entries) {
67
+ entries = scanFile(code, file, program);
68
+ scanResults?.set(file, entries);
69
+ }
48
70
  for (const entry of entries) {
49
71
  // At buildStart we want stable registry entries (don't overwrite
50
72
  // an earlier scan with a barrel re-scan); HMR explicitly asks
@@ -59,7 +81,7 @@ export function fastCompilePlugin(pluginOptions) {
59
81
  // silently skip half of an outer barrel's re-exports, which
60
82
  // previously left directives like `HlmRadioGroup` unregistered).
61
83
  const dir = dirname(file);
62
- for (const rel of collectRelativeReExports(code, file)) {
84
+ for (const rel of collectRelativeReExports(code, file, program)) {
63
85
  // NodeNext-style libraries write `export * from './foo.js'`
64
86
  // even though the source is `./foo.ts`. Strip the ESM
65
87
  // extension before probing or the candidates would be
@@ -73,7 +95,7 @@ export function fastCompilePlugin(pluginOptions) {
73
95
  for (const candidate of reExportCandidates) {
74
96
  try {
75
97
  await fsPromises.access(candidate);
76
- await scanBarrelExports(candidate, visited, overwrite);
98
+ await scanBarrelExports(candidate, visited, overwrite, fileContents, scanResults);
77
99
  resolved = true;
78
100
  break;
79
101
  }
@@ -108,6 +130,11 @@ export function fastCompilePlugin(pluginOptions) {
108
130
  const candidates = new Set(config.rootNames);
109
131
  const tsPaths = config.options?.paths;
110
132
  const baseUrl = (config.options?.baseUrl ?? projectRoot);
133
+ // Cold-start dedup caches shared by the three scan phases below
134
+ // (candidates scan, walkImports, scanBarrelExports). Scoped to this
135
+ // init call only — HMR/watcher re-scans must hit disk fresh.
136
+ const fileContents = new Map();
137
+ const scanResults = new Map();
111
138
  if (tsPaths) {
112
139
  for (const targets of Object.values(tsPaths)) {
113
140
  for (const target of targets) {
@@ -122,7 +149,10 @@ export function fastCompilePlugin(pluginOptions) {
122
149
  const results = await Promise.all(Array.from(candidates).map(async (file) => {
123
150
  try {
124
151
  const code = await fsPromises.readFile(file, 'utf-8');
125
- return scanFile(code, file);
152
+ fileContents.set(file, code);
153
+ const entries = scanFile(code, file);
154
+ scanResults.set(file, entries);
155
+ return entries;
126
156
  }
127
157
  catch (e) {
128
158
  if (debugRegistry.enabled) {
@@ -167,7 +197,7 @@ export function fastCompilePlugin(pluginOptions) {
167
197
  }
168
198
  return [];
169
199
  };
170
- const resolveToSource = async (base) => {
200
+ const probeToSource = async (base) => {
171
201
  const candidates = base.endsWith('.ts')
172
202
  ? [base]
173
203
  : [base + '.ts', resolve(base, 'index.ts')];
@@ -182,6 +212,18 @@ export function fastCompilePlugin(pluginOptions) {
182
212
  }
183
213
  return null;
184
214
  };
215
+ // Memoize fs probes per absolute base path. The cache stores the
216
+ // Promise (not the settled value) so concurrent walks racing on the
217
+ // same base collapse into a single probe.
218
+ const baseResolveCache = new Map();
219
+ const resolveToSource = (base) => {
220
+ let probe = baseResolveCache.get(base);
221
+ if (!probe) {
222
+ probe = probeToSource(base);
223
+ baseResolveCache.set(base, probe);
224
+ }
225
+ return probe;
226
+ };
185
227
  // Probe each `paths` target in order; first one that resolves to source wins.
186
228
  const resolveFirstSource = async (bases) => {
187
229
  for (const base of bases) {
@@ -192,18 +234,39 @@ export function fastCompilePlugin(pluginOptions) {
192
234
  return null;
193
235
  };
194
236
  const importWalkVisited = new Set();
237
+ // Paths-mapped resolution doesn't depend on the importer, so bare
238
+ // specifiers can be memoized by their raw text. Relative specifiers
239
+ // must NOT be — the same './foo' resolves differently per directory.
240
+ const bareSpecResolveCache = new Map();
195
241
  const walkImports = async (file) => {
196
242
  if (importWalkVisited.has(file))
197
243
  return;
198
244
  importWalkVisited.add(file);
199
245
  let code;
200
246
  try {
201
- code = await fsPromises.readFile(file, 'utf-8');
247
+ code =
248
+ fileContents.get(file) ?? (await fsPromises.readFile(file, 'utf-8'));
249
+ fileContents.set(file, code);
202
250
  }
203
251
  catch {
204
252
  return;
205
253
  }
206
- for (const entry of scanFile(code, file)) {
254
+ // Single parse shared by scanFile, collectImportedPackages, and
255
+ // collectAllImports. On a parse error each consumer re-parses on
256
+ // its own, preserving their individual failure semantics.
257
+ let program;
258
+ try {
259
+ program = parseSync(file, code).program;
260
+ }
261
+ catch {
262
+ program = undefined;
263
+ }
264
+ let entries = scanResults.get(file);
265
+ if (!entries) {
266
+ entries = scanFile(code, file, program);
267
+ scanResults.set(file, entries);
268
+ }
269
+ for (const entry of entries) {
207
270
  if (!registry.has(entry.className))
208
271
  registry.set(entry.className, entry);
209
272
  }
@@ -212,7 +275,7 @@ export function fastCompilePlugin(pluginOptions) {
212
275
  // BrowserModule → CommonModule → NgIf). Doing this at buildStart means the
213
276
  // registry is complete before any component transforms, so non-standalone
214
277
  // component scope resolves regardless of file transform order.
215
- for (const pkg of collectImportedPackages(code, file)) {
278
+ for (const pkg of collectImportedPackages(code, file, program)) {
216
279
  if (scannedDtsPackages.has(pkg))
217
280
  continue;
218
281
  scannedDtsPackages.add(pkg);
@@ -227,11 +290,16 @@ export function fastCompilePlugin(pluginOptions) {
227
290
  }
228
291
  }
229
292
  const dir = dirname(file);
230
- const targets = await Promise.all(collectAllImports(code, file).map((spec) => {
293
+ const targets = await Promise.all(collectAllImports(code, file, program).map((spec) => {
231
294
  if (spec.startsWith('.')) {
232
295
  return resolveToSource(resolve(dir, spec.replace(/\.(?:js|mjs)$/u, '')));
233
296
  }
234
- return resolveFirstSource(resolvePathSpecifier(spec));
297
+ let resolved = bareSpecResolveCache.get(spec);
298
+ if (!resolved) {
299
+ resolved = resolveFirstSource(resolvePathSpecifier(spec));
300
+ bareSpecResolveCache.set(spec, resolved);
301
+ }
302
+ return resolved;
235
303
  }));
236
304
  await Promise.all(targets.filter((t) => !!t).map((t) => walkImports(t)));
237
305
  };
@@ -253,12 +321,12 @@ export function fastCompilePlugin(pluginOptions) {
253
321
  barrelCandidates.push(resolve(baseUrl, target));
254
322
  }
255
323
  }
256
- await Promise.all(barrelCandidates.map((c) => scanBarrelExports(c, buildStartVisited)));
324
+ await Promise.all(barrelCandidates.map((c) => scanBarrelExports(c, buildStartVisited, false, fileContents, scanResults)));
257
325
  }
258
326
  debugRegistry('initFastCompile done: %d entries from %d candidate files', registry.size, candidates.size);
259
327
  }
260
- function ensureDtsRegistryForSource(code, id) {
261
- for (const pkg of collectImportedPackages(code, id)) {
328
+ function ensureDtsRegistryForSource(code, id, program) {
329
+ for (const pkg of collectImportedPackages(code, id, program)) {
262
330
  if (scannedDtsPackages.has(pkg))
263
331
  continue;
264
332
  scannedDtsPackages.add(pkg);
@@ -329,9 +397,20 @@ export function fastCompilePlugin(pluginOptions) {
329
397
  // `styleExtensions` carries the source extension of each inlined external
330
398
  // style so it can be preprocessed by its own file type (e.g. an external
331
399
  // `.scss` styleUrl) regardless of the `inlineStylesExtension` option.
332
- const inlined = inlineResourceUrls(code, id);
400
+ const inlined = await inlineResourceUrls(code, id);
333
401
  code = inlined.code;
334
402
  const { styleExtensions } = inlined;
403
+ // Track inlined resources for HMR. `compile()` only reports resources it
404
+ // reads through its own fallback (a templateUrl/styleUrl the inliner did
405
+ // NOT already inline), so files inlined here must be recorded here or a
406
+ // later edit to them never invalidates the owning module.
407
+ for (const dep of inlined.resourceDependencies) {
408
+ resourceToSource.set(dep, id);
409
+ }
410
+ // Single OXC parse of the post-inline source, shared by every AST
411
+ // consumer below. `inlineResourceUrls` parsed the PRE-inline string,
412
+ // so its program can never be reused here.
413
+ const { program: oxcProgram } = parseSync(id, code);
335
414
  // Pre-resolve inline styles that need preprocessing (SCSS/Sass/Less). Run
336
415
  // whenever a style needs a non-`css` preprocessor — either the configured
337
416
  // `inlineStylesExtension` for truly-inline styles, or an external styleUrl's
@@ -341,7 +420,7 @@ export function fastCompilePlugin(pluginOptions) {
341
420
  const inlineExt = pluginOptions.inlineStylesExtension;
342
421
  const styleNeedsPreprocess = (ext) => ext !== '' && ext !== 'css';
343
422
  if (styleNeedsPreprocess(inlineExt) || styleExtensions.size > 0) {
344
- const styleStrings = extractInlineStyles(code, id);
423
+ const styleStrings = extractInlineStyles(code, id, oxcProgram);
345
424
  if (styleStrings.length > 0) {
346
425
  resolvedInlineStyles = new Map();
347
426
  for (let i = 0; i < styleStrings.length; i++) {
@@ -366,7 +445,7 @@ export function fastCompilePlugin(pluginOptions) {
366
445
  resolvedInlineStyles = undefined;
367
446
  }
368
447
  }
369
- ensureDtsRegistryForSource(code, id);
448
+ ensureDtsRegistryForSource(code, id, oxcProgram);
370
449
  // Merge entries from the shared external-registry global into this
371
450
  // compile's lookup view. Convention: out-of-tree compilers populate
372
451
  // `globalThis.__ANALOG_EXTERNAL_REGISTRY__` with directive metadata
@@ -388,6 +467,7 @@ export function fastCompilePlugin(pluginOptions) {
388
467
  resolvedInlineStyles,
389
468
  useDefineForClassFields,
390
469
  compilationMode: pluginOptions.fastCompileMode,
470
+ oxcProgram,
391
471
  });
392
472
  // Track resource dependencies for HMR
393
473
  for (const dep of result.resourceDependencies) {
@@ -1 +1 @@
1
- {"version":3,"file":"fast-compile-plugin.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-angular/src/lib/fast-compile-plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fast-compile-plugin.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-angular/src/lib/fast-compile-plugin.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,12 @@
1
1
  import { JavaScriptTransformer } from './utils/devkit.js';
2
2
  export function routerPlugin() {
3
- const javascriptTransformer = new JavaScriptTransformer({ jit: true }, 1);
3
+ const transformCache = new Map();
4
+ const javascriptTransformer = new JavaScriptTransformer({ jit: true }, 1, {
5
+ get: (key) => transformCache.get(key),
6
+ put: (key, value) => {
7
+ transformCache.set(key, value);
8
+ },
9
+ });
4
10
  /**
5
11
  * Transforms Angular packages the didn't get picked up by Vite's pre-optimization.
6
12
  */
@@ -8,6 +14,9 @@ export function routerPlugin() {
8
14
  name: 'analogjs-router-optimization',
9
15
  enforce: 'pre',
10
16
  apply: 'serve',
17
+ buildEnd() {
18
+ return javascriptTransformer.close();
19
+ },
11
20
  transform: {
12
21
  filter: {
13
22
  id: /fesm(.*?)\.mjs/,
@@ -1 +1 @@
1
- {"version":3,"file":"router-plugin.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-angular/src/lib/router-plugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,MAAM,UAAU,YAAY;IAC1B,MAAM,qBAAqB,GAAG,IAAI,qBAAqB,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IAE1E;;OAEG;IACH,OAAO;QACL,IAAI,EAAE,8BAA8B;QACpC,OAAO,EAAE,KAAK;QACd,KAAK,EAAE,OAAO;QACd,SAAS,EAAE;YACT,MAAM,EAAE;gBACN,EAAE,EAAE,gBAAgB;aACrB;YACD,KAAK,CAAC,OAAO,CAAC,KAAa,EAAE,EAAU;gBACrC,MAAM,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC9B,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;gBAEjE,OAAO;oBACL,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;iBAC9C,CAAC;YACJ,CAAC;SACF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"router-plugin.js","sourceRoot":"","sources":["../../../../../packages/vite-plugin-angular/src/lib/router-plugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,MAAM,UAAU,YAAY;IAC1B,MAAM,cAAc,GAAG,IAAI,GAAG,EAAsB,CAAC;IACrD,MAAM,qBAAqB,GAAG,IAAI,qBAAqB,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE;QACxE,GAAG,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC;QAC7C,GAAG,EAAE,CAAC,GAAW,EAAE,KAAiB,EAAE,EAAE;YACtC,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACjC,CAAC;KACF,CAAC,CAAC;IAEH;;OAEG;IACH,OAAO;QACL,IAAI,EAAE,8BAA8B;QACpC,OAAO,EAAE,KAAK;QACd,KAAK,EAAE,OAAO;QACd,QAAQ;YACN,OAAO,qBAAqB,CAAC,KAAK,EAAE,CAAC;QACvC,CAAC;QACD,SAAS,EAAE;YACT,MAAM,EAAE;gBACN,EAAE,EAAE,gBAAgB;aACrB;YACD,KAAK,CAAC,OAAO,CAAC,KAAa,EAAE,EAAU;gBACrC,MAAM,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC9B,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;gBAEjE,OAAO;oBACL,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;iBAC9C,CAAC;YACJ,CAAC;SACF;KACF,CAAC;AACJ,CAAC"}