angular.json 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245
  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": "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. "budgets": [
  48. {
  49. "type": "initial",
  50. "maximumWarning": "2mb",
  51. "maximumError": "5mb"
  52. },
  53. {
  54. "type": "anyComponentStyle",
  55. "maximumWarning": "6kb",
  56. "maximumError": "10kb"
  57. }
  58. ],
  59. "fileReplacements": [
  60. {
  61. "replace": "src/environments/environment.ts",
  62. "with": "src/environments/environment.prod.ts"
  63. }
  64. ]
  65. },
  66. "hmr": {
  67. "fileReplacements": [
  68. {
  69. "replace": "src/environments/environment.ts",
  70. "with": "src/environments/environment.hmr.ts"
  71. }
  72. ]
  73. },
  74. "e2e": {
  75. "fileReplacements": [
  76. {
  77. "replace": "src/environments/environment.ts",
  78. "with": "src/environments/environment.e2e.ts"
  79. }
  80. ]
  81. },
  82. "fr_FR": {
  83. "aot": true,
  84. "outputPath": "dist/PeerTube-fr_FR",
  85. "i18nFile": "src/i18n/messages.fr_FR.xlf",
  86. "i18nFormat": "xlf",
  87. "i18nLocale": "fr_FR"
  88. }
  89. }
  90. },
  91. "serve": {
  92. "builder": "@angular-devkit/build-angular:dev-server",
  93. "options": {
  94. "baseHref": "/",
  95. "deployUrl": "client/",
  96. "browserTarget": "PeerTube:build",
  97. "proxyConfig": "proxy.config.json"
  98. },
  99. "configurations": {
  100. "production": {
  101. "browserTarget": "PeerTube:build:production"
  102. },
  103. "hmr": {
  104. "browserTarget": "PeerTube:build:hmr"
  105. },
  106. "e2e": {
  107. "browserTarget": "PeerTube:build:e2e",
  108. "proxyConfig": "e2e/proxy.config.json"
  109. },
  110. "fr_FR": {
  111. "browserTarget": "PeerTube:build:fr_FR"
  112. }
  113. }
  114. },
  115. "extract-i18n": {
  116. "builder": "@angular-devkit/build-angular:extract-i18n",
  117. "options": {
  118. "browserTarget": "PeerTube:build"
  119. }
  120. },
  121. "test": {
  122. "builder": "@angular-devkit/build-angular:karma",
  123. "options": {
  124. "main": "src/test.ts",
  125. "karmaConfig": "./karma.conf.js",
  126. "polyfills": "src/polyfills.ts",
  127. "tsConfig": "src/tsconfig.spec.json",
  128. "scripts": [],
  129. "styles": [
  130. "src/sass/application.scss"
  131. ],
  132. "assets": [
  133. "src/assets/images",
  134. "src/manifest.webmanifest"
  135. ]
  136. }
  137. },
  138. "lint": {
  139. "builder": "@angular-devkit/build-angular:tslint",
  140. "options": {
  141. "tsConfig": [
  142. "tsconfig.app.json"
  143. ],
  144. "exclude": [
  145. "**/node_modules/**"
  146. ]
  147. }
  148. },
  149. "xliffmerge": {
  150. "builder": "@ngx-i18nsupport/tooling:xliffmerge",
  151. "options": {
  152. "xliffmergeOptions": {
  153. "i18nFormat": "xlf",
  154. "srcDir": "src/locale",
  155. "genDir": "src/locale",
  156. "i18nBaseFile": "angular",
  157. "defaultLanguage": "en-US",
  158. "languages": [
  159. "ar-001",
  160. "ca-ES",
  161. "cs-CZ",
  162. "da-DK",
  163. "de-DE",
  164. "el-GR",
  165. "en-GB",
  166. "en-US",
  167. "eo",
  168. "es-ES",
  169. "eu-ES",
  170. "fa-IR",
  171. "fi-FI",
  172. "fr-FR",
  173. "gd",
  174. "gl-ES",
  175. "hu-HU",
  176. "it-IT",
  177. "ja-JP",
  178. "jbo",
  179. "ko-KR",
  180. "lt-LT",
  181. "nb-NO",
  182. "nl-NL",
  183. "oc",
  184. "pl-PL",
  185. "pt-BR",
  186. "pt-PT",
  187. "ru-RU",
  188. "sk-SK",
  189. "sl-SI",
  190. "sv-SE",
  191. "ta",
  192. "th-TH",
  193. "tr-TR",
  194. "uk-UA",
  195. "vi-VN",
  196. "zh-Hans-CN",
  197. "zh-Hant-TW"
  198. ]
  199. }
  200. }
  201. }
  202. }
  203. },
  204. "PeerTube-e2e": {
  205. "root": "e2e/",
  206. "sourceRoot": "",
  207. "projectType": "application",
  208. "architect": {
  209. "e2e": {
  210. "builder": "@angular-devkit/build-angular:protractor",
  211. "options": {
  212. "protractorConfig": "e2e/protractor.conf.js",
  213. "devServerTarget": "PeerTube:serve:e2e"
  214. },
  215. "configurations": {
  216. "local": {
  217. "protractorConfig": "e2e/local-protractor.conf.js"
  218. }
  219. }
  220. },
  221. "lint": {
  222. "builder": "@angular-devkit/build-angular:tslint",
  223. "options": {
  224. "tsConfig": [
  225. "e2e/tsconfig.e2e.json"
  226. ],
  227. "exclude": [
  228. "**/node_modules/**"
  229. ]
  230. }
  231. }
  232. }
  233. }
  234. },
  235. "defaultProject": "PeerTube",
  236. "schematics": {
  237. "@schematics/angular:component": {
  238. "prefix": "app",
  239. "styleext": "scss"
  240. },
  241. "@schematics/angular:directive": {
  242. "prefix": "app"
  243. }
  244. }
  245. }