AAE-48934 Migrate to @angular/build (#12098)

* AAE-48934 Migrate to @angular/build

* cr

* cr

* fix watch issue

* fix insights tests
This commit is contained in:
Bartosz Sekula
2026-07-28 10:42:26 +02:00
committed by GitHub
parent b6ae479cd0
commit b234ca6c42
16 changed files with 1609 additions and 630 deletions
+2 -9
View File
@@ -29,7 +29,7 @@ module.exports = function (config) {
{ pattern: 'lib/config/app.config.json', included: false, served: true, watched: false } { pattern: 'lib/config/app.config.json', included: false, served: true, watched: false }
], ],
frameworks: ['jasmine', '@angular-devkit/build-angular'], frameworks: ['jasmine'],
proxies: { proxies: {
'/assets/images/': '/base/lib/core/src/lib/assets/images/', '/assets/images/': '/base/lib/core/src/lib/assets/images/',
@@ -41,13 +41,7 @@ module.exports = function (config) {
'/app.config.json': '/base/lib/config/app.config.json' '/app.config.json': '/base/lib/config/app.config.json'
}, },
plugins: [ plugins: [require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage')],
require('karma-jasmine'),
require('karma-chrome-launcher'),
require('karma-jasmine-html-reporter'),
require('karma-coverage'),
require('@angular-devkit/build-angular/plugins/karma')
],
client: { client: {
clearContext: false, clearContext: false,
jasmine: { jasmine: {
@@ -84,7 +78,6 @@ module.exports = function (config) {
port: 9876, port: 9876,
colors: true, colors: true,
logLevel: constants.LOG_INFO, logLevel: constants.LOG_INFO,
autoWatch: true,
browsers: ['ChromeHeadless'], browsers: ['ChromeHeadless'],
singleRun: true singleRun: true
}); });
+3 -2
View File
@@ -6,7 +6,7 @@
"prefix": "adf", "prefix": "adf",
"targets": { "targets": {
"build": { "build": {
"executor": "@angular-devkit/build-angular:ng-packagr", "executor": "@angular/build:ng-packagr",
"options": { "options": {
"tsConfig": "lib/content-services/tsconfig.lib.json", "tsConfig": "lib/content-services/tsconfig.lib.json",
"project": "lib/content-services/ng-package.json" "project": "lib/content-services/ng-package.json"
@@ -20,11 +20,12 @@
"defaultConfiguration": "production" "defaultConfiguration": "production"
}, },
"test": { "test": {
"executor": "@angular-devkit/build-angular:karma", "executor": "@angular/build:karma",
"options": { "options": {
"main": "lib/content-services/src/test.ts", "main": "lib/content-services/src/test.ts",
"tsConfig": "lib/content-services/tsconfig.spec.json", "tsConfig": "lib/content-services/tsconfig.spec.json",
"karmaConfig": "lib/content-services/karma.conf.js", "karmaConfig": "lib/content-services/karma.conf.js",
"watch": false,
"sourceMap": true, "sourceMap": true,
"codeCoverage": true, "codeCoverage": true,
"stylePreprocessorOptions": { "stylePreprocessorOptions": {
+2 -9
View File
@@ -29,7 +29,7 @@ module.exports = function (config) {
} }
], ],
frameworks: ['jasmine', '@angular-devkit/build-angular'], frameworks: ['jasmine'],
proxies: { proxies: {
'/fake-url-file.png': '/base/lib/core/src/lib/assets/images/logo.svg', '/fake-url-file.png': '/base/lib/core/src/lib/assets/images/logo.svg',
@@ -55,13 +55,7 @@ module.exports = function (config) {
'/fake-test-password-file.pdf': '/base/lib/core/src/lib/viewer/assets/fake-test-password-file.pdf' '/fake-test-password-file.pdf': '/base/lib/core/src/lib/viewer/assets/fake-test-password-file.pdf'
}, },
plugins: [ plugins: [require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage')],
require('karma-jasmine'),
require('karma-chrome-launcher'),
require('karma-jasmine-html-reporter'),
require('karma-coverage'),
require('@angular-devkit/build-angular/plugins/karma')
],
client: { client: {
clearContext: false, clearContext: false,
jasmine: { jasmine: {
@@ -97,7 +91,6 @@ module.exports = function (config) {
port: 9876, port: 9876,
colors: true, colors: true,
logLevel: constants.LOG_INFO, logLevel: constants.LOG_INFO,
autoWatch: true,
browsers: ['ChromeHeadless'], browsers: ['ChromeHeadless'],
singleRun: true singleRun: true
}); });
+3 -2
View File
@@ -6,7 +6,7 @@
"prefix": "adf", "prefix": "adf",
"targets": { "targets": {
"build": { "build": {
"executor": "@angular-devkit/build-angular:ng-packagr", "executor": "@angular/build:ng-packagr",
"options": { "options": {
"tsConfig": "lib/core/tsconfig.lib.json", "tsConfig": "lib/core/tsconfig.lib.json",
"project": "lib/core/ng-package.json" "project": "lib/core/ng-package.json"
@@ -34,11 +34,12 @@
} }
}, },
"test": { "test": {
"executor": "@angular-devkit/build-angular:karma", "executor": "@angular/build:karma",
"options": { "options": {
"main": "lib/core/test.ts", "main": "lib/core/test.ts",
"tsConfig": "lib/core/tsconfig.spec.json", "tsConfig": "lib/core/tsconfig.spec.json",
"karmaConfig": "lib/core/karma.conf.js", "karmaConfig": "lib/core/karma.conf.js",
"watch": false,
"sourceMap": true, "sourceMap": true,
"codeCoverage": true, "codeCoverage": true,
"stylePreprocessorOptions": { "stylePreprocessorOptions": {
+2 -9
View File
@@ -11,14 +11,8 @@ module.exports = function (config) {
{ pattern: '../../node_modules/pdfjs-dist/build/pdf.min.mjs', type: 'module', included: true, watched: false }, { pattern: '../../node_modules/pdfjs-dist/build/pdf.min.mjs', type: 'module', included: true, watched: false },
{ pattern: '../../node_modules/pdfjs-dist/build/pdf.worker.min.mjs', type: 'module', included: true, watched: false } { pattern: '../../node_modules/pdfjs-dist/build/pdf.worker.min.mjs', type: 'module', included: true, watched: false }
], ],
frameworks: ['jasmine', '@angular-devkit/build-angular'], frameworks: ['jasmine'],
plugins: [ plugins: [require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage')],
require('karma-jasmine'),
require('karma-chrome-launcher'),
require('karma-jasmine-html-reporter'),
require('karma-coverage'),
require('@angular-devkit/build-angular/plugins/karma')
],
client: { client: {
clearContext: false // leave Jasmine Spec Runner output visible in browser clearContext: false // leave Jasmine Spec Runner output visible in browser
}, },
@@ -43,7 +37,6 @@ module.exports = function (config) {
port: 9876, port: 9876,
colors: true, colors: true,
logLevel: constants.LOG_INFO, logLevel: constants.LOG_INFO,
autoWatch: true,
browsers: ['ChromeHeadless'], browsers: ['ChromeHeadless'],
customLaunchers: { customLaunchers: {
ChromeHeadless: { ChromeHeadless: {
+3 -2
View File
@@ -6,7 +6,7 @@
"prefix": "adf", "prefix": "adf",
"targets": { "targets": {
"build": { "build": {
"executor": "@angular-devkit/build-angular:ng-packagr", "executor": "@angular/build:ng-packagr",
"options": { "options": {
"tsConfig": "lib/extensions/tsconfig.lib.json", "tsConfig": "lib/extensions/tsconfig.lib.json",
"project": "lib/extensions/ng-package.json" "project": "lib/extensions/ng-package.json"
@@ -19,11 +19,12 @@
"defaultConfiguration": "production" "defaultConfiguration": "production"
}, },
"test": { "test": {
"executor": "@angular-devkit/build-angular:karma", "executor": "@angular/build:karma",
"options": { "options": {
"main": "lib/extensions/src/test.ts", "main": "lib/extensions/src/test.ts",
"tsConfig": "lib/extensions/tsconfig.spec.json", "tsConfig": "lib/extensions/tsconfig.spec.json",
"karmaConfig": "lib/extensions/karma.conf.js", "karmaConfig": "lib/extensions/karma.conf.js",
"watch": false,
"sourceMap": true, "sourceMap": true,
"codeCoverage": true, "codeCoverage": true,
"stylePreprocessorOptions": { "stylePreprocessorOptions": {
+2 -9
View File
@@ -21,7 +21,7 @@ module.exports = function (config) {
{ pattern: 'lib/config/app.config.json', included: false, served: true, watched: false } { pattern: 'lib/config/app.config.json', included: false, served: true, watched: false }
], ],
frameworks: ['jasmine', '@angular-devkit/build-angular'], frameworks: ['jasmine'],
proxies: { proxies: {
'/base/assets/': '/base/lib/insights/src/lib/assets/', '/base/assets/': '/base/lib/insights/src/lib/assets/',
@@ -29,13 +29,7 @@ module.exports = function (config) {
'/app.config.json': '/base/lib/config/app.config.json' '/app.config.json': '/base/lib/config/app.config.json'
}, },
plugins: [ plugins: [require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage')],
require('karma-jasmine'),
require('karma-chrome-launcher'),
require('karma-jasmine-html-reporter'),
require('karma-coverage'),
require('@angular-devkit/build-angular/plugins/karma')
],
client: { client: {
clearContext: false, clearContext: false,
jasmine: { jasmine: {
@@ -72,7 +66,6 @@ module.exports = function (config) {
port: 9876, port: 9876,
colors: true, colors: true,
logLevel: constants.LOG_INFO, logLevel: constants.LOG_INFO,
autoWatch: true,
browsers: ['ChromeHeadless'], browsers: ['ChromeHeadless'],
singleRun: true singleRun: true
}); });
+3 -2
View File
@@ -6,7 +6,7 @@
"prefix": "adf", "prefix": "adf",
"targets": { "targets": {
"build": { "build": {
"executor": "@angular-devkit/build-angular:ng-packagr", "executor": "@angular/build:ng-packagr",
"options": { "options": {
"tsConfig": "lib/insights/tsconfig.lib.json", "tsConfig": "lib/insights/tsconfig.lib.json",
"project": "lib/insights/ng-package.json" "project": "lib/insights/ng-package.json"
@@ -20,11 +20,12 @@
"defaultConfiguration": "production" "defaultConfiguration": "production"
}, },
"test": { "test": {
"executor": "@angular-devkit/build-angular:karma", "executor": "@angular/build:karma",
"options": { "options": {
"main": "lib/insights/src/test.ts", "main": "lib/insights/src/test.ts",
"tsConfig": "lib/insights/tsconfig.spec.json", "tsConfig": "lib/insights/tsconfig.spec.json",
"karmaConfig": "lib/insights/karma.conf.js", "karmaConfig": "lib/insights/karma.conf.js",
"watch": false,
"sourceMap": true, "sourceMap": true,
"codeCoverage": true, "codeCoverage": true,
"stylePreprocessorOptions": { "stylePreprocessorOptions": {
+5
View File
@@ -21,8 +21,13 @@ import 'zone.js';
import 'zone.js/testing'; import 'zone.js/testing';
import { getTestBed } from '@angular/core/testing'; import { getTestBed } from '@angular/core/testing';
import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing';
import * as ChartJs from 'chart.js/auto';
import Raphael from 'raphael';
// First, initialize the Angular testing environment. // First, initialize the Angular testing environment.
getTestBed().initTestEnvironment(BrowserDynamicTestingModule, platformBrowserDynamicTesting(), { getTestBed().initTestEnvironment(BrowserDynamicTestingModule, platformBrowserDynamicTesting(), {
teardown: { destroyAfterEach: false } teardown: { destroyAfterEach: false }
}); });
(window as any).Chart = (window as any).Chart || ChartJs.Chart;
(window as any).Raphael = (window as any).Raphael || Raphael;
+1 -10
View File
@@ -1,12 +1,3 @@
{ {
"extends": "../../../tsconfig.json", "extends": "../tsconfig.spec.json"
"compilerOptions": {
"module": "CommonJS",
"moduleResolution": "node",
"target": "ES2015",
"esModuleInterop": true,
"isolatedModules": true,
"allowSyntheticDefaultImports": true,
"lib": ["ESNext", "dom"]
}
} }
+2 -9
View File
@@ -22,7 +22,7 @@ module.exports = function (config) {
{ pattern: 'lib/process-services-cloud/**/*.ts', included: false, served: true, watched: false }, { pattern: 'lib/process-services-cloud/**/*.ts', included: false, served: true, watched: false },
{ pattern: 'lib/config/app.config.json', included: false, served: true, watched: false } { pattern: 'lib/config/app.config.json', included: false, served: true, watched: false }
], ],
frameworks: ['jasmine', '@angular-devkit/build-angular'], frameworks: ['jasmine'],
proxies: { proxies: {
'/assets/': '/base/lib/process-services-cloud/src/lib/assets/', '/assets/': '/base/lib/process-services-cloud/src/lib/assets/',
'/resources/i18n/en.json': '/base/lib/process-services-cloud/src/lib/mock/en.json', '/resources/i18n/en.json': '/base/lib/process-services-cloud/src/lib/mock/en.json',
@@ -34,13 +34,7 @@ module.exports = function (config) {
'/assets/adf-process-services-cloud/i18n/en-GB.json': '/base/lib/process-services-cloud/lib/i18n/en.json', '/assets/adf-process-services-cloud/i18n/en-GB.json': '/base/lib/process-services-cloud/lib/i18n/en.json',
'/app.config.json': '/base/lib/config/app.config.json' '/app.config.json': '/base/lib/config/app.config.json'
}, },
plugins: [ plugins: [require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage')],
require('karma-jasmine'),
require('karma-chrome-launcher'),
require('karma-jasmine-html-reporter'),
require('karma-coverage'),
require('@angular-devkit/build-angular/plugins/karma')
],
client: { client: {
clearContext: false, clearContext: false,
jasmine: { jasmine: {
@@ -76,7 +70,6 @@ module.exports = function (config) {
port: 9876, port: 9876,
colors: true, colors: true,
logLevel: constants.LOG_INFO, logLevel: constants.LOG_INFO,
autoWatch: true,
browsers: ['ChromeHeadless'], browsers: ['ChromeHeadless'],
singleRun: true singleRun: true
}); });
+3 -2
View File
@@ -6,7 +6,7 @@
"prefix": "adf-cloud", "prefix": "adf-cloud",
"targets": { "targets": {
"build": { "build": {
"executor": "@angular-devkit/build-angular:ng-packagr", "executor": "@angular/build:ng-packagr",
"options": { "options": {
"tsConfig": "lib/process-services-cloud/tsconfig.lib.json", "tsConfig": "lib/process-services-cloud/tsconfig.lib.json",
"project": "lib/process-services-cloud/ng-package.json" "project": "lib/process-services-cloud/ng-package.json"
@@ -20,11 +20,12 @@
"defaultConfiguration": "production" "defaultConfiguration": "production"
}, },
"test": { "test": {
"executor": "@angular-devkit/build-angular:karma", "executor": "@angular/build:karma",
"options": { "options": {
"main": "lib/process-services-cloud/src/test.ts", "main": "lib/process-services-cloud/src/test.ts",
"tsConfig": "lib/process-services-cloud/tsconfig.spec.json", "tsConfig": "lib/process-services-cloud/tsconfig.spec.json",
"karmaConfig": "lib/process-services-cloud/karma.conf.js", "karmaConfig": "lib/process-services-cloud/karma.conf.js",
"watch": false,
"sourceMap": true, "sourceMap": true,
"codeCoverage": true, "codeCoverage": true,
"stylePreprocessorOptions": { "stylePreprocessorOptions": {
+2 -9
View File
@@ -22,7 +22,7 @@ module.exports = function (config) {
{ pattern: 'lib/process-services/**/*.ts', included: false, served: true, watched: false }, { pattern: 'lib/process-services/**/*.ts', included: false, served: true, watched: false },
{ pattern: 'lib/config/app.config.json', included: false, served: true, watched: false } { pattern: 'lib/config/app.config.json', included: false, served: true, watched: false }
], ],
frameworks: ['jasmine', '@angular-devkit/build-angular'], frameworks: ['jasmine'],
proxies: { proxies: {
'/assets/': '/base/lib/process-services/src/lib/assets/', '/assets/': '/base/lib/process-services/src/lib/assets/',
'/assets/adf-core/i18n/en.json': '/base/lib/core/src/lib/i18n/en.json', '/assets/adf-core/i18n/en.json': '/base/lib/core/src/lib/i18n/en.json',
@@ -30,13 +30,7 @@ module.exports = function (config) {
'/assets/adf-process-services/i18n/en-GB.json': '/base/lib/process-services/src/lib/i18n/en.json', '/assets/adf-process-services/i18n/en-GB.json': '/base/lib/process-services/src/lib/i18n/en.json',
'/app.config.json': '/base/lib/config/app.config.json' '/app.config.json': '/base/lib/config/app.config.json'
}, },
plugins: [ plugins: [require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage')],
require('karma-jasmine'),
require('karma-chrome-launcher'),
require('karma-jasmine-html-reporter'),
require('karma-coverage'),
require('@angular-devkit/build-angular/plugins/karma')
],
client: { client: {
clearContext: false, clearContext: false,
jasmine: { jasmine: {
@@ -71,7 +65,6 @@ module.exports = function (config) {
port: 9876, port: 9876,
colors: true, colors: true,
logLevel: constants.LOG_INFO, logLevel: constants.LOG_INFO,
autoWatch: true,
browsers: ['ChromeHeadless'], browsers: ['ChromeHeadless'],
singleRun: true singleRun: true
}); });
+3 -2
View File
@@ -6,7 +6,7 @@
"prefix": "adf", "prefix": "adf",
"targets": { "targets": {
"build": { "build": {
"executor": "@angular-devkit/build-angular:ng-packagr", "executor": "@angular/build:ng-packagr",
"options": { "options": {
"tsConfig": "lib/process-services/tsconfig.lib.json", "tsConfig": "lib/process-services/tsconfig.lib.json",
"project": "lib/process-services/ng-package.json" "project": "lib/process-services/ng-package.json"
@@ -20,11 +20,12 @@
"defaultConfiguration": "production" "defaultConfiguration": "production"
}, },
"test": { "test": {
"executor": "@angular-devkit/build-angular:karma", "executor": "@angular/build:karma",
"options": { "options": {
"main": "lib/process-services/src/test.ts", "main": "lib/process-services/src/test.ts",
"tsConfig": "lib/process-services/tsconfig.spec.json", "tsConfig": "lib/process-services/tsconfig.spec.json",
"karmaConfig": "lib/process-services/karma.conf.js", "karmaConfig": "lib/process-services/karma.conf.js",
"watch": false,
"sourceMap": true, "sourceMap": true,
"codeCoverage": true, "codeCoverage": true,
"stylePreprocessorOptions": { "stylePreprocessorOptions": {
+2 -1
View File
@@ -78,7 +78,7 @@
"devDependencies": { "devDependencies": {
"@alfresco/eslint-plugin-eslint-angular": "workspace:*", "@alfresco/eslint-plugin-eslint-angular": "workspace:*",
"@angular-devkit/architect": "0.2003.16", "@angular-devkit/architect": "0.2003.16",
"@angular-devkit/build-angular": "20.3.32", "@angular/build": "20.3.32",
"@angular-devkit/core": "20.3.32", "@angular-devkit/core": "20.3.32",
"@angular-devkit/schematics": "20.3.32", "@angular-devkit/schematics": "20.3.32",
"@angular-eslint/eslint-plugin": "20.7.0", "@angular-eslint/eslint-plugin": "20.7.0",
@@ -145,6 +145,7 @@
"storybook": "10.4.0", "storybook": "10.4.0",
"stylelint": "16.20.0", "stylelint": "16.20.0",
"stylelint-config-standard-scss": "13.1.0", "stylelint-config-standard-scss": "13.1.0",
"ts-jest": "29.4.11",
"ts-node": "10.9.2", "ts-node": "10.9.2",
"typescript": "5.9.3", "typescript": "5.9.3",
"webpack": "5.109.0" "webpack": "5.109.0"
+1571 -553
View File
File diff suppressed because it is too large Load Diff