feat : Update Angular templates to Angular 20 new build system #23363
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Resolves #23242
This PR migrates ABP Angular templates and packages to Angular's new esbuild-based build system introduced in Angular 17+ and fully supported in Angular 20.
Changes Made
Template Migrations (3 templates):
templates/app/angular
: Migrated from@angular-devkit/build-angular:browser
to@angular-devkit/build-angular:application
templates/app-nolayers/angular
: Migrated from@angular-devkit/build-angular:browser
to@angular-devkit/build-angular:application
templates/module/angular
: Migrated dev-app from@angular-devkit/build-angular:browser
to@angular-devkit/build-angular:application
Package Updates (14 packages):
Updated TypeScript configuration for all ABP Angular packages:
core
,components
,feature-management
,oauth
,account-core
,account
,permission-management
,theme-basic
,theme-shared
,tenant-management
,setting-management
,identity
,source-code-requirements
,schematics
Key Configuration Changes:
browser
→application
main
→browser
(new property name)es2018
→es2020
, addedesModuleInterop: true
es2020
→esnext
Template File Updates:
es2020
instead ofes2018
Benefits
Breaking Changes
None - This is a non-breaking change that improves build performance and modernizes the build system.
Documentation
Reference: Angular Build System Migration Guide
Checklist