nx
Nx
GitHub
Nx
Workspace
GitHub
CI Pipeline Executions
Current execution
Succeeded
nxc-4754
Runs and Agents
Timeline
Configuration
Self-Healing CI
Project Graph
Resource Usage
Analysis
Conformance
Runs
Current run
Succeeded
Tasks
Resource Usage
Insights
Compare tasks
Analytics
Sign in
Toggle sidebar
fix(angular-rspack): stop builds crashing on non-array styleUrls `getAllTextByProperty` cast every `styleUrls` initializer to `ArrayLiteralExpression` and called `.getElements()` on it, so a component whose `styleUrls` was an identifier, a call, a conditional, `as const` or `satisfies` threw `array.getElements is not a function` inside a loader with no error handling and failed the build. The initializer is now guarded and those shapes contribute no URLs, which is what Angular does with them. The resolvers run whenever the Angular compilation reported no resource dependencies, so the crash was never limited to JIT. `@angular/build` 20 does not report them in any mode, so every build on that major reaches the resolvers as well. A comment claiming those dependencies were AOT-only is corrected to name both cases. The resolvers ran on `ts-morph`, which bundles its own copy of TypeScript, even though the package already declares `typescript` and uses it elsewhere. They now use the TypeScript compiler API directly, so `ts-morph` is dropped from the package and the workspace catalog without adding anything in its place. Both resolvers share one parse per file rather than parsing the same source twice. Extraction also follows `@angular/build`'s JIT resource transformer. Quoted keys such as `'styleUrls'` now resolve instead of being ignored, non-literal and empty entries no longer register dependencies on files that cannot exist, and values are read from the parsed node rather than a quote-stripped source slice, so a path containing a quote survives intact.
nx-cloud record -- nx format:check
⌘K
Succeeded
nx-cloud record -- nx format:check
Click to copy
Linux
4 CPU cores
cf545794
36550