angular.json
{
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"version": 1,
"newProjectRoot": "src/frontend/packages",
"projects": {
"stratos": {
"root": "src/frontend/packages",
"sourceRoot": "src/frontend/packages",
"projectType": "application",
"architect": {
"build": {
"builder": "@angular-builders/custom-webpack:browser",
"options": {
"allowedCommonJsDependencies": [
"moment-timezone",
"js-yaml",
"webcola",
"dagre",
"lodash/isEqual",
"ajv",
"lodash/filter",
"lodash/map",
"lodash/uniqueId",
"lodash/cloneDeep"
],
"customWebpackConfig": {
"path": "./dist-devkit/build/main.js"
},
"indexTransform": "./dist-devkit/build/index.transform.js",
"preserveSymlinks": true,
"outputPath": "dist",
"index": "src/frontend/packages/core/src/index.html",
"main": "src/frontend/packages/core/src/main.ts",
"tsConfig": "src/frontend/packages/core/tsconfig.app.json",
"polyfills": "src/frontend/packages/core/src/polyfills.ts",
"assets": [
"src/frontend/packages/core/assets",
{
"glob": "**/*",
"input": "custom-src/frontend/assets/custom",
"output": "/core/assets/custom"
},
"src/frontend/packages/core/favicon.ico",
{
"glob": "**/*",
"input": "node_modules/ngx-monaco-editor/assets/monaco",
"output": "/core/assets/monaco"
},
{
"glob": "**/*",
"input": "node_modules/@cfstratos/monaco-yaml/lib",
"output": "/core/assets/monaco/vs/language/yaml"
}
],
"styles": [
"src/frontend/packages/core/src/styles.scss",
"node_modules/xterm/css/xterm.css"
],
"scripts": []
},
"configurations": {
"production": {
"optimization": true,
"outputHashing": "all",
"sourceMap": false,
"extractCss": true,
"namedChunks": false,
"aot": true,
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": true,
"fileReplacements": [{
"replace": "src/frontend/packages/core/src/environments/environment.ts",
"with": "src/frontend/packages/core/src/environments/environment.prod.ts"
}]
},
"desktop": {
"optimization": false,
"outputHashing": "all",
"sourceMap": false,
"extractCss": true,
"namedChunks": false,
"aot": false,
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": false,
"fileReplacements": [{
"replace": "src/frontend/packages/core/src/environments/environment.ts",
"with": "src/frontend/packages/core/src/environments/environment.desktop.ts"
}]
}
}
},
"serve": {
"builder": "@angular-builders/custom-webpack:dev-server",
"options": {
"aot": true,
"sslCert": "dev-ssl/server.crt",
"proxyConfig": "proxy.conf.js",
"ssl": true,
"sslKey": "dev-ssl/server.key",
"browserTarget": "stratos:build"
},
"configurations": {
"production": {
"browserTarget": "stratos:build:production"
},
"desktop": {
"browserTarget": "stratos:build:desktop"
}
}
},
"extract-i18n": {
"builder": "@angular-devkit/build-angular:extract-i18n",
"options": {
"browserTarget": "stratos:build"
}
}
}
},
"stratos-e2e": {
"root": "e2e",
"sourceRoot": "",
"projectType": "application",
"architect": {
"e2e": {
"builder": "@angular-devkit/build-angular:protractor",
"options": {
"protractorConfig": "./protractor.conf.js",
"devServerTarget": "stratos:serve"
}
}
}
},
"theme": {
"root": "src/frontend/packages/theme/",
"sourceRoot": "",
"projectType": "library",
"architect": {
"build": {
"builder": "./dist-devkit:stratos-theme",
"options": {
"outputPath": "dist/theme"
}
}
}
},
"core": {
"root": "src/frontend/packages/core/",
"sourceRoot": "src/frontend/packages/core",
"projectType": "library",
"prefix": "app",
"schematics": {},
"architect": {
"build": {
"builder": "@angular-devkit/build-ng-packagr:build",
"options": {
"preserveSymlinks": true,
"outputPath": "dist/core",
"index": "src/frontend/packages/core/src/index.html",
"main": "src/frontend/packages/core/src/main.ts",
"polyfills": "src/frontend/packages/core/src/polyfills.ts",
"tsConfig": "src/frontend/packages/core/tsconfig.app.json",
"assets": [],
"styles": [],
"scripts": []
},
"configurations": {
"production": {
"budgets": [{
"type": "anyComponentStyle",
"maximumWarning": "6kb"
}],
"fileReplacements": [{
"replace": "src/frontend/packages/core/src/environments/environment.ts",
"with": "src/frontend/packages/core/src/environments/environment.prod.ts"
}],
"optimization": true,
"outputHashing": "all",
"sourceMap": false,
"extractCss": true,
"namedChunks": false,
"aot": true,
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": true
}
}
},
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"preserveSymlinks": true,
"main": "src/frontend/packages/core/src/test.ts",
"polyfills": "src/frontend/packages/core/src/polyfills.ts",
"tsConfig": "src/frontend/packages/core/tsconfig.spec.json",
"karmaConfig": "src/frontend/packages/core/karma.conf.js",
"styles": [
"src/frontend/packages/core/src/styles.css"
],
"scripts": [],
"assets": [
"src/frontend/packages/core/src/favicon.ico",
{
"glob": "**/*",
"input": "src/frontend/packages/core/assets",
"output": "/core/assets/custom"
},
{
"glob": "**/*",
"input": "custom-src/frontend/assets/custom",
"output": "/core/assets/custom"
}
]
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": [
"src/tsconfig.json"
],
"tslintConfig": "src/frontend/packages/core/tslint.json",
"files": [
"src/frontend/packages/core/src/**/*.ts"
]
}
}
}
},
"store": {
"root": "src/frontend/packages/store",
"sourceRoot": "src/frontend/packages/store/src",
"projectType": "library",
"prefix": "lib",
"architect": {
"build": {
"builder": "@angular-devkit/build-ng-packagr:build",
"options": {
"tsConfig": "src/frontend/packages/store/tsconfig.lib.json",
"project": "src/frontend/packages/store/ng-package.json"
},
"configurations": {
"production": {
"tsConfig": "src/frontend/packages/store/tsconfig.lib.prod.json"
}
}
},
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"main": "src/frontend/packages/store/src/test.ts",
"tsConfig": "src/frontend/packages/store/tsconfig.spec.json",
"karmaConfig": "src/frontend/packages/store/karma.conf.js"
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": [
"src/tsconfig.json"
],
"tslintConfig": "src/frontend/packages/store/tslint.json",
"files": [
"src/frontend/packages/store/src/**/*.ts"
]
}
}
}
},
"shared": {
"root": "src/frontend/packages/shared",
"sourceRoot": "src/frontend/packages/shared/src",
"projectType": "library",
"prefix": "lib",
"architect": {
"build": {
"builder": "@angular-devkit/build-ng-packagr:build",
"options": {
"tsConfig": "src/frontend/packages/shared/tsconfig.lib.json",
"project": "src/frontend/packages/shared/ng-package.json"
}
},
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"main": "src/frontend/packages/shared/src/test.ts",
"tsConfig": "src/frontend/packages/shared/tsconfig.spec.json",
"karmaConfig": "src/frontend/packages/shared/karma.conf.js"
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": ["src/tsconfig.json"],
"tslintConfig": "src/frontend/packages/shared/tslint.json",
"files": ["src/frontend/packages/shared/src/**/*.ts"]
}
}
}
},
"cloud-foundry": {
"root": "src/frontend/packages/cloud-foundry",
"sourceRoot": "src/frontend/packages/cloud-foundry/src",
"projectType": "library",
"prefix": "lib",
"architect": {
"build": {
"builder": "@angular-devkit/build-ng-packagr:build",
"options": {
"tsConfig": "src/frontend/packages/cloud-foundry/tsconfig.lib.json",
"project": "src/frontend/packages/cloud-foundry/ng-package.json"
},
"configurations": {
"production": {
"tsConfig": "src/frontend/packages/cloud-foundry/tsconfig.lib.prod.json"
}
}
},
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"main": "src/frontend/packages/cloud-foundry/src/test.ts",
"tsConfig": "src/frontend/packages/cloud-foundry/tsconfig.spec.json",
"karmaConfig": "src/frontend/packages/cloud-foundry/karma.conf.js"
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": [
"src/tsconfig.json"
],
"tslintConfig": "src/frontend/packages/cloud-foundry/tslint.json",
"files": [
"src/frontend/packages/cloud-foundry/src/**/*.ts"
]
}
}
}
},
"cf-autoscaler": {
"root": "src/frontend/packages/cf-autoscaler",
"sourceRoot": "src/frontend/packages/cf-autoscaler/src",
"projectType": "library",
"prefix": "lib",
"architect": {
"build": {
"builder": "@angular-devkit/build-ng-packagr:build",
"options": {
"tsConfig": "src/frontend/packages/cf-autoscaler/tsconfig.lib.json",
"project": "src/frontend/packages/cf-autoscaler/ng-package.json"
},
"configurations": {
"production": {
"tsConfig": "src/frontend/packages/cf-autoscaler/tsconfig.lib.prod.json"
}
}
},
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"main": "src/frontend/packages/cf-autoscaler/src/test.ts",
"tsConfig": "src/frontend/packages/cf-autoscaler/tsconfig.spec.json",
"karmaConfig": "src/frontend/packages/cf-autoscaler/karma.conf.js"
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": [
"src/tsconfig.json"
],
"tslintConfig": "src/frontend/packages/cf-autoscaler/tslint.json",
"files": [
"src/frontend/packages/cf-autoscaler/src/**/*.ts"
]
}
}
}
},
"extensions": {
"root": "src/frontend/packages/suse-extensions",
"sourceRoot": "src/frontend/packages/suse-extensions/src",
"projectType": "library",
"prefix": "lib",
"architect": {
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"main": "src/frontend/packages/suse-extensions/src/test.ts",
"tsConfig": "src/frontend/packages/suse-extensions/tsconfig.spec.json",
"karmaConfig": "src/frontend/packages/suse-extensions/karma.conf.js"
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": [
"src/tsconfig.json"
],
"tslintConfig": "src/frontend/packages/suse-extensions/tslint.json",
"files": [
"src/frontend/packages/suse-extensions/src/**/*.ts"
]
}
}
}
},
"kubernetes": {
"root": "src/frontend/packages/kubernetes",
"sourceRoot": "src/frontend/packages/kubernetes/src",
"projectType": "library",
"prefix": "lib",
"architect": {
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"main": "src/frontend/packages/kubernetes/src/test.ts",
"tsConfig": "src/frontend/packages/kubernetes/tsconfig.spec.json",
"karmaConfig": "src/frontend/packages/kubernetes/karma.conf.js"
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": [
"src/tsconfig.json"
],
"tslintConfig": "src/frontend/packages/kubernetes/tslint.json",
"files": [
"src/frontend/packages/kubernetes/src/**/*.ts"
]
}
}
}
},
"git": {
"root": "src/frontend/packages/git",
"sourceRoot": "src/frontend/packages/git/src",
"projectType": "library",
"prefix": "lib",
"architect": {
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"main": "src/frontend/packages/git/src/test.ts",
"tsConfig": "src/frontend/packages/git/tsconfig.spec.json",
"karmaConfig": "src/frontend/packages/git/karma.conf.js"
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": [
"src/tsconfig.json"
],
"tslintConfig": "src/frontend/packages/git/tslint.json",
"files": [
"src/frontend/packages/git/src/**/*.ts"
]
}
}
}
}
},
"defaultProject": "stratos",
"schematics": {
"@schematics/angular:component": {
"prefix": "app",
"style": "scss"
},
"@schematics/angular:directive": {
"prefix": "app"
}
}
}