]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - client/angular.json
Migrate to $localize
[github/Chocobozzz/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 "i18n": {
11 "sourceLocale": {
12 "code": "en",
13 "baseHref": "/client/en-US/"
14 },
15 "locales": {
16 "ar": {
17 "translation": "src/locale/angular.ar.xlf",
18 "baseHref": "/client/ar/"
19 },
20 "hu": {
21 "translation": "src/locale/angular.hu-HU.xlf",
22 "baseHref": "/client/hu-HU/"
23 },
24 "th": {
25 "translation": "src/locale/angular.th-TH.xlf",
26 "baseHref": "/client/th-TH/"
27 },
28 "fi": {
29 "translation": "src/locale/angular.fi-FI.xlf",
30 "baseHref": "/client/fi-FI/"
31 },
32 "nl": {
33 "translation": "src/locale/angular.nl-NL.xlf",
34 "baseHref": "/client/nl-NL/"
35 },
36 "gd": {
37 "translation": "src/locale/angular.gd.xlf",
38 "baseHref": "/client/gd/"
39 },
40 "el": {
41 "translation": "src/locale/angular.el-GR.xlf",
42 "baseHref": "/client/el-GR/"
43 },
44 "es": {
45 "translation": "src/locale/angular.es-ES.xlf",
46 "baseHref": "/client/es-ES/"
47 },
48 "oc": {
49 "translation": "src/locale/angular.oc.xlf",
50 "baseHref": "/client/oc/"
51 },
52 "pt": {
53 "translation": "src/locale/angular.pt-BR.xlf",
54 "baseHref": "/client/pt-BR/"
55 },
56 "pt-PT": {
57 "translation": "src/locale/angular.pt-PT.xlf",
58 "baseHref": "/client/pt-PT/"
59 },
60 "sv": {
61 "translation": "src/locale/angular.sv-SE.xlf",
62 "baseHref": "/client/sv-SE/"
63 },
64 "pl": {
65 "translation": "src/locale/angular.pl-PL.xlf",
66 "baseHref": "/client/pl-PL/"
67 },
68 "ru": {
69 "translation": "src/locale/angular.ru-RU.xlf",
70 "baseHref": "/client/ru-RU/"
71 },
72 "zh-Hans": {
73 "translation": "src/locale/angular.zh-Hans-CN.xlf",
74 "baseHref": "/client/zh-Hans-CN/"
75 },
76 "zh-Hant": {
77 "translation": "src/locale/angular.zh-Hant-TW.xlf",
78 "baseHref": "/client/zh-Hant-TW/"
79 },
80 "fr": {
81 "translation": "src/locale/angular.fr-FR.xlf",
82 "baseHref": "/client/fr-FR/"
83 },
84 "ja": {
85 "translation": "src/locale/angular.ja-JP.xlf",
86 "baseHref": "/client/ja-JP/"
87 },
88 "eu": {
89 "translation": "src/locale/angular.eu-ES.xlf",
90 "baseHref": "/client/eu-ES/"
91 },
92 "ca": {
93 "translation": "src/locale/angular.ca-ES.xlf",
94 "baseHref": "/client/ca-ES/"
95 },
96 "cs": {
97 "translation": "src/locale/angular.cs-CZ.xlf",
98 "baseHref": "/client/cs-CZ/"
99 },
100 "eo": {
101 "translation": "src/locale/angular.eo.xlf",
102 "baseHref": "/client/eo/"
103 },
104 "de": {
105 "translation": "src/locale/angular.de-DE.xlf",
106 "baseHref": "/client/de-DE/"
107 },
108 "it": {
109 "translation": "src/locale/angular.it-IT.xlf",
110 "baseHref": "/client/it-IT/"
111 },
112 "vi": {
113 "translation": "src/locale/angular.vi-VN.xlf",
114 "baseHref": "/client/vi-VN/"
115 },
116 "kab": {
117 "translation": "src/locale/angular.kab.xlf",
118 "baseHref": "/client/kab/"
119 }
120 }
121 },
122 "architect": {
123 "build": {
124 "builder": "@angular-devkit/build-angular:browser",
125 "options": {
126 "aot": true,
127 "localize": true,
128 "outputPath": "dist",
129 "index": "src/index.html",
130 "main": "src/main.ts",
131 "tsConfig": "tsconfig.app.json",
132 "polyfills": "src/polyfills.ts",
133 "stylePreprocessorOptions": {
134 "includePaths": [
135 "src/sass/include"
136 ]
137 },
138 "assets": [
139 "src/assets/images",
140 "src/manifest.webmanifest"
141 ],
142 "styles": [
143 "src/sass/application.scss"
144 ],
145 "allowedCommonJsDependencies": [
146 "@angularclass/hmr",
147 "debug",
148 "mousetrap",
149 "chart.js",
150 "linkifyjs/html",
151 "linkifyjs",
152 "markdown-it",
153 "sanitize-html",
154 "socket.io-client",
155 "socket.io-parser",
156 "@app/+about/about-peertube/about-peertube-contributors.component",
157 "path",
158 "video.js",
159 "p2p-media-loader-hlsjs",
160 "videojs-hotkeys/videojs.hotkeys",
161 "p2p-media-loader-core",
162 "qrcode",
163 "webtorrent",
164 "cache-chunk-store",
165 "global/document",
166 "videojs-vtt.js",
167 "videojs-vtt.js",
168 "@babel/runtime/helpers/possibleConstructorReturn",
169 "@babel/runtime/helpers/inherits",
170 "@babel/runtime/helpers/construct",
171 "@videojs/xhr"
172 ],
173 "scripts": []
174 },
175 "configurations": {
176 "production": {
177 "optimization": true,
178 "outputHashing": "all",
179 "sourceMap": false,
180 "extractCss": true,
181 "namedChunks": false,
182 "aot": true,
183 "extractLicenses": true,
184 "vendorChunk": false,
185 "buildOptimizer": true,
186 "serviceWorker": true,
187 "ngswConfigPath": "src/ngsw-config.json",
188 "budgets": [
189 {
190 "type": "initial",
191 "maximumWarning": "2mb",
192 "maximumError": "5mb"
193 },
194 {
195 "type": "anyComponentStyle",
196 "maximumWarning": "6kb",
197 "maximumError": "50kb"
198 }
199 ],
200 "fileReplacements": [
201 {
202 "replace": "src/environments/environment.ts",
203 "with": "src/environments/environment.prod.ts"
204 }
205 ]
206 },
207 "i18n": {
208 "optimization": false,
209 "outputHashing": "none",
210 "sourceMap": true,
211 "extractCss": true,
212 "namedChunks": true,
213 "aot": true,
214 "buildOptimizer": false,
215 "budgets": []
216 },
217 "hmr": {
218 "localize": false,
219 "budgets": [
220 {
221 "type": "anyComponentStyle",
222 "maximumWarning": "6kb"
223 }
224 ],
225 "fileReplacements": [
226 {
227 "replace": "src/environments/environment.ts",
228 "with": "src/environments/environment.hmr.ts"
229 }
230 ]
231 },
232 "e2e": {
233 "localize": false,
234 "budgets": [
235 {
236 "type": "anyComponentStyle",
237 "maximumWarning": "6kb"
238 }
239 ],
240 "fileReplacements": [
241 {
242 "replace": "src/environments/environment.ts",
243 "with": "src/environments/environment.e2e.ts"
244 }
245 ]
246 }
247 }
248 },
249 "serve": {
250 "builder": "@angular-devkit/build-angular:dev-server",
251 "options": {
252 "baseHref": "/",
253 "deployUrl": "client/",
254 "browserTarget": "PeerTube:build",
255 "proxyConfig": "proxy.config.json"
256 },
257 "configurations": {
258 "production": {
259 "browserTarget": "PeerTube:build:production"
260 },
261 "hmr": {
262 "browserTarget": "PeerTube:build:hmr"
263 },
264 "e2e": {
265 "browserTarget": "PeerTube:build:e2e",
266 "proxyConfig": "e2e/proxy.config.json"
267 }
268 }
269 },
270 "extract-i18n": {
271 "builder": "@angular-devkit/build-angular:extract-i18n",
272 "options": {
273 "browserTarget": "PeerTube:build"
274 }
275 },
276 "test": {
277 "builder": "@angular-devkit/build-angular:karma",
278 "options": {
279 "main": "src/test.ts",
280 "karmaConfig": "./karma.conf.js",
281 "polyfills": "src/polyfills.ts",
282 "tsConfig": "src/tsconfig.spec.json",
283 "scripts": [],
284 "styles": [
285 "src/sass/application.scss"
286 ],
287 "assets": [
288 "src/assets/images",
289 "src/manifest.webmanifest"
290 ]
291 }
292 },
293 "lint": {
294 "builder": "@angular-devkit/build-angular:tslint",
295 "options": {
296 "tsConfig": [
297 "tsconfig.app.json"
298 ],
299 "exclude": [
300 "**/node_modules/**"
301 ]
302 }
303 },
304 "xliffmerge": {
305 "builder": "@ngx-i18nsupport/tooling:xliffmerge",
306 "options": {
307 "xliffmergeOptions": {
308 "i18nFormat": "xlf",
309 "srcDir": "src/locale",
310 "genDir": "src/locale",
311 "i18nBaseFile": "angular",
312 "defaultLanguage": "en-US",
313 "languages": [
314 "ar",
315 "ca-ES",
316 "cs-CZ",
317 "da-DK",
318 "de-DE",
319 "el-GR",
320 "en-GB",
321 "en-US",
322 "eo",
323 "es-ES",
324 "eu-ES",
325 "fa-IR",
326 "fi-FI",
327 "fr-FR",
328 "gd",
329 "gl-ES",
330 "hu-HU",
331 "it-IT",
332 "ja-JP",
333 "jbo",
334 "kab",
335 "ko-KR",
336 "lt-LT",
337 "nb-NO",
338 "nl-NL",
339 "oc",
340 "pl-PL",
341 "pt-BR",
342 "pt-PT",
343 "ru-RU",
344 "sk-SK",
345 "sl-SI",
346 "sv-SE",
347 "ta",
348 "th-TH",
349 "tr-TR",
350 "uk-UA",
351 "vi-VN",
352 "zh-Hans-CN",
353 "zh-Hant-TW"
354 ]
355 }
356 }
357 }
358 }
359 },
360 "PeerTube-e2e": {
361 "root": "e2e/",
362 "sourceRoot": "",
363 "projectType": "application",
364 "architect": {
365 "e2e": {
366 "builder": "@angular-devkit/build-angular:protractor",
367 "options": {
368 "protractorConfig": "e2e/protractor.conf.js",
369 "devServerTarget": "PeerTube:serve:e2e"
370 },
371 "configurations": {
372 "local": {
373 "protractorConfig": "e2e/local-protractor.conf.js"
374 }
375 }
376 },
377 "lint": {
378 "builder": "@angular-devkit/build-angular:tslint",
379 "options": {
380 "tsConfig": [
381 "e2e/tsconfig.e2e.json"
382 ],
383 "exclude": [
384 "**/node_modules/**"
385 ]
386 }
387 }
388 }
389 }
390 },
391 "defaultProject": "PeerTube",
392 "schematics": {
393 "@schematics/angular:component": {
394 "prefix": "app",
395 "style": "scss"
396 },
397 "@schematics/angular:directive": {
398 "prefix": "app"
399 }
400 }
401 }