add protractor profile for local tests
[oweals/peertube.git] / client / angular.json
1 {
2   "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
3   "version": 1,
4   "newProjectRoot": "projects",
5   "projects": {
6     "PeerTube": {
7       "root": "",
8       "sourceRoot": "src",
9       "projectType": "application",
10       "architect": {
11         "build": {
12           "builder": "@angular-devkit/build-angular:browser",
13           "options": {
14             "deployUrl": "client/",
15             "outputPath": "dist",
16             "index": "src/index.html",
17             "main": "src/main.ts",
18             "tsConfig": "src/tsconfig.app.json",
19             "polyfills": "src/polyfills.ts",
20             "stylePreprocessorOptions": {
21               "includePaths": [
22                 "src/sass/include"
23               ]
24             },
25             "assets": [
26               "src/assets/images",
27               "src/manifest.webmanifest"
28             ],
29             "styles": [
30               "src/sass/application.scss"
31             ],
32             "scripts": []
33           },
34           "configurations": {
35             "production": {
36               "optimization": true,
37               "outputHashing": "all",
38               "sourceMap": false,
39               "extractCss": true,
40               "namedChunks": false,
41               "aot": true,
42               "extractLicenses": true,
43               "vendorChunk": false,
44               "buildOptimizer": true,
45               "serviceWorker": true,
46               "ngswConfigPath": "src/ngsw-config.json",
47               "fileReplacements": [
48                 {
49                   "replace": "src/environments/environment.ts",
50                   "with": "src/environments/environment.prod.ts"
51                 }
52               ]
53             },
54             "hmr": {
55               "fileReplacements": [
56                 {
57                   "replace": "src/environments/environment.ts",
58                   "with": "src/environments/environment.hmr.ts"
59                 }
60               ]
61             },
62             "e2e": {
63               "fileReplacements": [
64                 {
65                   "replace": "src/environments/environment.ts",
66                   "with": "src/environments/environment.e2e.ts"
67                 }
68               ]
69             }
70           }
71         },
72         "serve": {
73           "builder": "@angular-devkit/build-angular:dev-server",
74           "options": {
75             "browserTarget": "PeerTube:build"
76           },
77           "configurations": {
78             "production": {
79               "browserTarget": "PeerTube:build:production"
80             },
81             "hmr": {
82               "browserTarget": "PeerTube:build:hmr"
83             },
84             "e2e": {
85               "browserTarget": "PeerTube:build:e2e"
86             }
87           }
88         },
89         "extract-i18n": {
90           "builder": "@angular-devkit/build-angular:extract-i18n",
91           "options": {
92             "browserTarget": "PeerTube:build"
93           }
94         },
95         "test": {
96           "builder": "@angular-devkit/build-angular:karma",
97           "options": {
98             "main": "src/test.ts",
99             "karmaConfig": "./karma.conf.js",
100             "polyfills": "src/polyfills.ts",
101             "tsConfig": "src/tsconfig.spec.json",
102             "scripts": [],
103             "styles": [
104               "src/sass/application.scss"
105             ],
106             "assets": [
107               "src/assets/images",
108               "src/manifest.webmanifest"
109             ]
110           }
111         },
112         "lint": {
113           "builder": "@angular-devkit/build-angular:tslint",
114           "options": {
115             "tsConfig": [
116               "src/tsconfig.app.json",
117               "src/tsconfig.spec.json"
118             ],
119             "exclude": [
120               "**/node_modules/**"
121             ]
122           }
123         }
124       }
125     },
126     "PeerTube-e2e": {
127       "root": "e2e/",
128       "sourceRoot": "",
129       "projectType": "application",
130       "architect": {
131         "e2e": {
132           "builder": "@angular-devkit/build-angular:protractor",
133           "options": {
134             "protractorConfig": "e2e/protractor.conf.js",
135             "devServerTarget": "PeerTube:serve:e2e"
136           },
137           "configurations": {
138             "local": {
139               "protractorConfig": "e2e/local-protractor.conf.js"
140             }
141           }
142         },
143         "lint": {
144           "builder": "@angular-devkit/build-angular:tslint",
145           "options": {
146             "tsConfig": [
147               "e2e/tsconfig.e2e.json"
148             ],
149             "exclude": [
150               "**/node_modules/**"
151             ]
152           }
153         }
154       }
155     }
156   },
157   "defaultProject": "PeerTube",
158   "schematics": {
159     "@schematics/angular:component": {
160       "prefix": "app",
161       "styleext": "scss"
162     },
163     "@schematics/angular:directive": {
164       "prefix": "app"
165     }
166   }
167 }