@eui/tools 5.0.0-rc.10 → 5.0.0-rc.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (259) hide show
  1. package/.version.properties +1 -1
  2. package/CHANGELOG.md +615 -23
  3. package/bin/eui-scripts.js +6 -6
  4. package/bin/scripts/build-package-sub.js +20 -0
  5. package/bin/scripts/version.js +12 -0
  6. package/global.test.js +61 -45
  7. package/package.json +8 -9
  8. package/sandbox.js +158 -6
  9. package/scripts/csdr/audit/audit-utils.js +2 -2
  10. package/scripts/csdr/cli/app.js +43 -5
  11. package/scripts/csdr/cli/package.js +93 -9
  12. package/scripts/csdr/cli/skeletons/app-eui10/angular-config.json +20 -0
  13. package/scripts/csdr/cli/skeletons/app-eui10/dependencies-base.json +2 -0
  14. package/scripts/csdr/cli/skeletons/app-eui10/dependencies-composite.json +5 -0
  15. package/scripts/csdr/cli/skeletons/app-eui10/gitignore_TO_REPLACE +63 -0
  16. package/scripts/csdr/cli/skeletons/app-eui10/mock/app/models/user.js +8 -0
  17. package/scripts/csdr/cli/skeletons/app-eui10/mock/app/routes/index.js +5 -0
  18. package/scripts/csdr/cli/skeletons/app-eui10/mock/app/routes/user_routes.js +24 -0
  19. package/scripts/csdr/cli/skeletons/app-eui10/mock/db/db.json +12 -0
  20. package/scripts/csdr/cli/skeletons/app-eui10/mock/server.js +16 -0
  21. package/scripts/csdr/cli/skeletons/app-eui10/package.json +6 -0
  22. package/scripts/csdr/cli/skeletons/app-eui10/scripts.json +5 -0
  23. package/scripts/csdr/cli/skeletons/app-eui10/src/app/app-routing.module.ts +18 -0
  24. package/scripts/csdr/cli/skeletons/app-eui10/src/app/app-starter.service.ts +68 -0
  25. package/scripts/csdr/cli/skeletons/app-eui10/src/app/app.component.html +29 -0
  26. package/scripts/csdr/cli/skeletons/app-eui10/src/app/app.component.ts +55 -0
  27. package/scripts/csdr/cli/skeletons/app-eui10/src/app/app.module.ts +27 -0
  28. package/scripts/{utils/pre-build/translations/common.js → csdr/cli/skeletons/app-eui10/src/app/core/components/.gitkeep} +0 -0
  29. package/scripts/csdr/cli/skeletons/app-eui10/src/app/core/core.module.ts +84 -0
  30. package/scripts/csdr/cli/skeletons/app-eui10/src/app/core/reducers/index.ts +33 -0
  31. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home-routing.module.ts +15 -0
  32. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home.component.html +7 -0
  33. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home.component.ts +19 -0
  34. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home.module.ts +18 -0
  35. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page1/page1.component.html +7 -0
  36. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page1/page1.component.ts +7 -0
  37. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page2/page2.component.html +7 -0
  38. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page2/page2.component.ts +7 -0
  39. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1-routing.module.ts +18 -0
  40. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1.component.html +7 -0
  41. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1.component.ts +8 -0
  42. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1.module.ts +21 -0
  43. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2-routing.module.ts +16 -0
  44. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2.component.html +8 -0
  45. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2.component.ts +7 -0
  46. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2.module.ts +17 -0
  47. package/scripts/csdr/cli/skeletons/app-eui10/src/app/shared/shared.module.ts +21 -0
  48. package/scripts/csdr/cli/skeletons/app-eui10/src/app/shared/testing/router.mock.ts +18 -0
  49. package/scripts/csdr/cli/skeletons/app-eui10/src/assets/config/env-json-config.json +8 -0
  50. package/scripts/csdr/cli/skeletons/app-eui10/src/assets/i18n/en.json +7 -0
  51. package/scripts/csdr/cli/skeletons/app-eui10/src/assets/i18n/fr.json +7 -0
  52. package/scripts/csdr/cli/skeletons/app-eui10/src/config/global.ts +20 -0
  53. package/scripts/csdr/cli/skeletons/app-eui10/src/config/index.ts +8 -0
  54. package/scripts/csdr/cli/skeletons/app-eui10/src/config/modules.ts +4 -0
  55. package/scripts/csdr/cli/skeletons/app-eui10/src/environments/environment.prod.ts +9 -0
  56. package/scripts/csdr/cli/skeletons/app-eui10/src/environments/environment.ts +9 -0
  57. package/scripts/csdr/cli/skeletons/app-eui10/src/index.html +21 -0
  58. package/scripts/csdr/cli/skeletons/app-eui10/src/styles.scss +1 -0
  59. package/scripts/csdr/cli/skeletons/app-eui10/tslint.json +17 -0
  60. package/scripts/csdr/cli/skeletons/app-showcase/angular-config.json +98 -28
  61. package/scripts/csdr/cli/skeletons/app-showcase/dependencies-composite.json +1 -1
  62. package/scripts/csdr/cli/skeletons/app-showcase/src/app/app.component.html +16 -18
  63. package/scripts/csdr/cli/skeletons/app-showcase/src/app/app.routes.ts +1 -1
  64. package/scripts/csdr/cli/skeletons/app-showcase/src/app/features/_home/home.module.ts +2 -2
  65. package/scripts/csdr/cli/skeletons/app-showcase-eui13/angular-config.json +33 -0
  66. package/scripts/csdr/cli/skeletons/app-showcase-eui13/dependencies-composite.json +5 -0
  67. package/scripts/csdr/cli/skeletons/app-showcase-eui13/gitignore_TO_REPLACE +50 -0
  68. package/scripts/csdr/cli/skeletons/app-showcase-eui13/package.json +6 -0
  69. package/scripts/csdr/cli/skeletons/app-showcase-eui13/scripts.json +3 -0
  70. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app-routing.module.ts +21 -0
  71. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app.component.html +26 -0
  72. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app.component.ts +19 -0
  73. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app.routes.ts +7 -0
  74. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home-routing.module.ts +15 -0
  75. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home.component.html +7 -0
  76. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home.component.ts +8 -0
  77. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home.module.ts +17 -0
  78. package/scripts/csdr/cli/skeletons/{app-showcase → app-showcase-eui13}/src/app/features/shared/shared.module.ts +0 -0
  79. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/assets/app-metadata.json +8 -0
  80. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/assets/config/env-json-config.json +41 -0
  81. package/scripts/csdr/cli/skeletons/{app-showcase → app-showcase-eui13}/src/index.html +0 -0
  82. package/scripts/csdr/cli/skeletons/package/frontend-eui10/assets/i18n/en.json +3 -0
  83. package/scripts/csdr/cli/skeletons/package/frontend-eui10/assets/i18n/fr.json +3 -0
  84. package/scripts/csdr/cli/skeletons/package/frontend-eui10/gitignore_TO_REPLACE +46 -0
  85. package/scripts/csdr/cli/skeletons/package/frontend-eui10/karma.conf.js +7 -0
  86. package/scripts/csdr/cli/skeletons/package/frontend-eui10/ng-package.json +7 -0
  87. package/scripts/csdr/cli/skeletons/package/frontend-eui10/package.json +4 -0
  88. package/scripts/csdr/cli/skeletons/package/frontend-eui10/src/dummy.spec.ts.TO_REPLACE +5 -0
  89. package/scripts/csdr/cli/skeletons/package/frontend-eui10/src/index.ts +1 -0
  90. package/scripts/csdr/cli/skeletons/package/frontend-eui10/src/lib/module.ts +11 -0
  91. package/scripts/csdr/cli/skeletons/package/frontend-eui10/src/test.ts.TO_REPLACE +21 -0
  92. package/scripts/csdr/cli/skeletons/package/frontend-eui10/tsconfig.lib.json +32 -0
  93. package/scripts/csdr/cli/skeletons/package/frontend-eui10/tsconfig.spec.json +17 -0
  94. package/scripts/csdr/cli/skeletons/package/frontend-eui10/tslint.json +17 -0
  95. package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/components/cmp1/cmp1.component.html +1 -0
  96. package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/components/cmp1/cmp1.component.spec.ts.TO_REPLACE +25 -0
  97. package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/components/cmp1/cmp1.component.ts +14 -0
  98. package/scripts/csdr/cli/skeletons/package/frontend-remote/angular.json +3 -3
  99. package/scripts/csdr/cli/skeletons/package/frontend-remote/dependencies-composite.json +1 -0
  100. package/scripts/csdr/cli/skeletons/package/frontend-remote/src/app/dummy.scss +3 -0
  101. package/scripts/csdr/cli/skeletons/package/frontend-remote/src/app/dummy.spec.ts +6 -0
  102. package/scripts/csdr/cli/skeletons/package/frontend-remote/src/app/module.component.ts +62 -28
  103. package/scripts/csdr/cli/skeletons/package/frontend-remote/src/app/module.ts +44 -39
  104. package/scripts/csdr/cli/skeletons/package/frontend-remote/src/app/routing.module.ts +23 -9
  105. package/scripts/csdr/cli/skeletons/package/frontend-remote/src/assets/i18n-compiled/en.json +1 -0
  106. package/scripts/csdr/cli/skeletons/package/frontend-remote/src/assets/i18n-compiled/fr.json +1 -0
  107. package/scripts/csdr/cli/skeletons/package/frontend-remote/src/config/global.ts +6 -5
  108. package/scripts/csdr/cli/skeletons/package/frontend-remote/src/index.html +1 -1
  109. package/scripts/csdr/cli/skeletons/package/frontend-remote/tsconfig.app.json +3 -1
  110. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/angular.json +90 -0
  111. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/browserslist +10 -0
  112. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-base.json +2 -0
  113. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-composite.json +6 -0
  114. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/gitignore_TO_REPLACE +64 -0
  115. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/karma.conf.js +7 -0
  116. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/package.json_TO_REPLACE +8 -0
  117. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/dummy.scss +3 -0
  118. package/scripts/csdr/cli/skeletons/package/{frontend-remote/src/app/dummy.spec.ts.TO_REPLACE → frontend-remote-eui10/src/app/dummy.spec.ts} +0 -0
  119. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/fallback.component.ts +11 -0
  120. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/module.component.ts +90 -0
  121. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/module.ts +219 -0
  122. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/reducers/custom-route-serializer.ts +28 -0
  123. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/reducers/index.ts +42 -0
  124. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/routing.module.ts +55 -0
  125. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/assets/.gitkeep +0 -0
  126. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/config/global.ts +31 -0
  127. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/config/index.ts +20 -0
  128. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/config/modules.ts +3 -0
  129. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/environments/environment.prod.ts +3 -0
  130. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/environments/environment.ts +15 -0
  131. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/favicon.ico +0 -0
  132. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/index.html +10 -0
  133. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/main.ts +12 -0
  134. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/polyfills.ts +86 -0
  135. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/test.ts.TO_REPLACE +20 -0
  136. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tsconfig.app.json +20 -0
  137. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tsconfig.spec.json +18 -0
  138. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tslint-remote.json +7 -0
  139. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tslint.json +17 -0
  140. package/scripts/csdr/cli/skeletons/package/{frontend-remote → frontend-remote-eui10}/webpack.extra.js +0 -0
  141. package/scripts/csdr/config/angular.js +718 -79
  142. package/scripts/csdr/config/global.js +43 -6
  143. package/scripts/csdr/config/packages.js +64 -1
  144. package/scripts/csdr/config/projects.js +24 -6
  145. package/scripts/csdr/config/projects.test.js +11 -9
  146. package/scripts/csdr/config/sync.js +6 -3
  147. package/scripts/csdr/init/init-utils.js +72 -0
  148. package/scripts/csdr/init/init.js +6 -0
  149. package/scripts/csdr/init/prompt.js +3 -1
  150. package/scripts/csdr/init/resources/10.x/yarn.lock +16428 -0
  151. package/scripts/csdr/init/resources/13.x/browserslistrc +6 -0
  152. package/scripts/csdr/init/resources/13.x/resolutions.json +6 -0
  153. package/scripts/csdr/init/resources/14.x/browserslistrc +6 -0
  154. package/scripts/csdr/init/resources/14.x/resolutions.json +5 -0
  155. package/scripts/csdr/install/build-app.js +6 -38
  156. package/scripts/csdr/install/build-package.js +16 -157
  157. package/scripts/csdr/install/common.js +13 -8
  158. package/scripts/csdr/install/composite-core.js +256 -0
  159. package/scripts/csdr/install/install-utils.js +8 -4
  160. package/scripts/csdr/install/local-dev.js +5 -3
  161. package/scripts/csdr/install/packages.js +90 -0
  162. package/scripts/csdr/install/projects.js +76 -0
  163. package/scripts/csdr/install/{remote.js → remotes.js} +46 -51
  164. package/scripts/csdr/metadata/app-envs.js +0 -39
  165. package/scripts/csdr/metadata/app-history.js +0 -66
  166. package/scripts/csdr/metadata/app-versions.js +2 -12
  167. package/scripts/csdr/metadata/app.js +49 -9
  168. package/scripts/csdr/metadata/common.js +21 -45
  169. package/scripts/csdr/metadata/metadata-utils.js +2 -0
  170. package/scripts/csdr/metadata/package-envs.js +71 -0
  171. package/scripts/csdr/metadata/package-history.js +5 -0
  172. package/scripts/csdr/metadata/package-versions.js +79 -0
  173. package/scripts/csdr/metadata/package.js +169 -101
  174. package/scripts/csdr/metadata/stats.js +9 -5
  175. package/scripts/csdr/release/app/release-app.js +16 -21
  176. package/scripts/csdr/release/package/backend.js +26 -0
  177. package/scripts/csdr/release/package/common.js +160 -13
  178. package/scripts/csdr/release/package/release-package.js +31 -5
  179. package/scripts/csdr/release/package/remote.js +2 -17
  180. package/scripts/csdr/release/package/ui.js +86 -3
  181. package/scripts/csdr/sync/sync-utils.js +3 -0
  182. package/scripts/csdr/version/app-common.js +32 -0
  183. package/scripts/csdr/version/app-env-target.js +5 -295
  184. package/scripts/csdr/version/app.js +5 -3
  185. package/scripts/csdr/version/{app-env-target.test.js → common..test.js} +32 -31
  186. package/scripts/csdr/version/common.js +277 -0
  187. package/scripts/csdr/version/package-common.js +158 -0
  188. package/scripts/csdr/version/package-default.js +144 -0
  189. package/scripts/csdr/version/package-remote.js +51 -0
  190. package/scripts/csdr/version/package.js +16 -270
  191. package/scripts/utils/api-utils.js +90 -0
  192. package/scripts/utils/build/app/build-app-utils.js +11 -9
  193. package/scripts/utils/build/package/angular.js +4 -30
  194. package/scripts/utils/build/package/build-package-utils.js +50 -1
  195. package/scripts/utils/build/package/element.js +15 -16
  196. package/scripts/utils/build/package/nodeJs.js +2 -1
  197. package/scripts/utils/build/package/skeletons/elements/index.html +9 -0
  198. package/scripts/utils/build/package/styles.js +92 -92
  199. package/scripts/utils/git-utils.js +69 -6
  200. package/scripts/utils/index.js +0 -2
  201. package/scripts/utils/notification/common.js +5 -0
  202. package/scripts/utils/notification/mail-utils.js +3 -0
  203. package/scripts/utils/notification/mailstack.js +3 -5
  204. package/scripts/utils/notification/package.js +0 -2
  205. package/scripts/utils/notification/slack-utils.js +6 -7
  206. package/scripts/utils/pre-build/elements.js +8 -4
  207. package/scripts/utils/pre-build/injection/app-sources-full-skeleton/src/_generated/app/app.module.ts +1 -1
  208. package/scripts/utils/pre-build/injection/app-sources-full-skeleton/tsconfig.app.json +1 -2
  209. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/app/app.module.ts +52 -0
  210. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/app/core/reducers/index.ts +40 -0
  211. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/config/global.ts +4 -0
  212. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/config/index.ts +8 -0
  213. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/config/modules.ts +4 -0
  214. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/environments/environment.dev.ts +9 -0
  215. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/environments/environment.prod.ts +9 -0
  216. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/environments/environment.ts +21 -0
  217. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/favicon.ico +0 -0
  218. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/karma.conf.js +7 -0
  219. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/main.ts +21 -0
  220. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/polyfills.ts +86 -0
  221. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/tst.ts +33 -0
  222. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/tsconfig.app.json +19 -0
  223. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/tsconfig.spec.json +9 -0
  224. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/tslint.json +17 -0
  225. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/app/app.module.ts +52 -0
  226. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/app/core/reducers/index.ts +40 -0
  227. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/config/global.ts +4 -0
  228. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/config/index.ts +8 -0
  229. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/config/modules.ts +4 -0
  230. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/environments/environment.dev.ts +9 -0
  231. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/environments/environment.prod.ts +9 -0
  232. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/environments/environment.ts +21 -0
  233. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/favicon.ico +0 -0
  234. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/karma.conf.js +7 -0
  235. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/main.ts +21 -0
  236. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/polyfills.ts +86 -0
  237. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/tst.ts +33 -0
  238. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/tsconfig.app.json +19 -0
  239. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/tsconfig.spec.json +9 -0
  240. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/tslint.json +17 -0
  241. package/scripts/utils/pre-build/injection/config.js +30 -31
  242. package/scripts/utils/pre-build/injection/externals.js +70 -72
  243. package/scripts/utils/pre-build/injection/injection-utils.js +2 -0
  244. package/scripts/utils/pre-build/injection/routes-replacement.js +318 -0
  245. package/scripts/utils/pre-build/injection/skeletons.js +9 -3
  246. package/scripts/utils/pre-build/projects.js +20 -15
  247. package/scripts/utils/pre-build/translations/elements.js +21 -11
  248. package/scripts/utils/serve/app.js +7 -4
  249. package/scripts/utils/test/test-utils.js +39 -1
  250. package/scripts/utils/tools.js +370 -285
  251. package/bin/scripts/csdr-jira-update.js +0 -12
  252. package/bin/scripts/csdr-migrate-package.js +0 -17
  253. package/bin/scripts/e2e-app.js +0 -62
  254. package/scripts/csdr/install/composite-utils.js +0 -292
  255. package/scripts/csdr/jira/jira-utils.js +0 -169
  256. package/scripts/csdr/jira/update.js +0 -153
  257. package/scripts/migration/eui8-migration.js +0 -94
  258. package/scripts/migration/migrate-utils.js +0 -191
  259. package/scripts/utils/confluence-utils.js +0 -126
@@ -10,7 +10,87 @@ const tools = require('../../tools');
10
10
  const notificationUtils = require('../../notification/notification-utils');
11
11
 
12
12
  // FETCH ARGS
13
- let { deps, skipClean, skipLint, skipTest, skipCompile, skipDoc } = tools.getArgs();
13
+ let { skipCompile } = tools.getArgs();
14
+
15
+
16
+ const compileSassFileNodeSass = (folder, filename, isNodeSassTildeImporterActive) => {
17
+
18
+ const filePath = path.join(folder, 'styles', filename);
19
+
20
+ tools.logInfo(`Compiling ${filePath}.scss...`);
21
+
22
+ return Promise.resolve()
23
+ .then(() => {
24
+ tools.logInfo('Compiling SCSS...');
25
+
26
+ if (isNodeSassTildeImporterActive !== false) {
27
+ tools.logInfo('building with tilde importer');
28
+
29
+ return execa('node-sass', [
30
+ filePath + '.scss',
31
+ filePath + '.temp.css',
32
+ '--importer',
33
+ './node_modules/node-sass-tilde-importer',
34
+ '--output-style',
35
+ 'compressed',
36
+ '--source-map',
37
+ true,
38
+ '--source-map-contents'
39
+ ]);
40
+
41
+ } else {
42
+ tools.logInfo('building without tilde importer');
43
+
44
+ return execa('node-sass', [
45
+ filePath + '.scss',
46
+ filePath + '.temp.css',
47
+ '--importer',
48
+ '--output-style',
49
+ 'compressed',
50
+ '--source-map',
51
+ true,
52
+ '--source-map-contents'
53
+ ]);
54
+
55
+ }
56
+ })
57
+
58
+ .then((output) => {
59
+ // console.log(output);
60
+ console.log('Size ::: ' + fs.statSync(filePath + '.temp.css').size);
61
+ })
62
+
63
+ .then(() => {
64
+ tools.logInfo('Running postCss over generated css file...');
65
+
66
+ return execa('postcss', [
67
+ filePath + '.temp.css',
68
+ '--config',
69
+ path.join(__dirname, 'postcss.config.js'),
70
+ '--no-map',
71
+ '--verbose',
72
+ '--output',
73
+ filePath + '.css'
74
+ ]);
75
+ })
76
+
77
+ .then((output) => {
78
+ // console.log(output);
79
+ console.log('Size ::: ' + fs.statSync(filePath + '.css').size);
80
+
81
+ tools.logSuccess(`OK ==> generated ${filePath}.css`);
82
+ })
83
+
84
+ .then(() => {
85
+ tools.remove(filePath + '.temp.css');
86
+ tools.remove(filePath + '.temp.css.map');
87
+ })
88
+ .catch((e) => {
89
+ console.log(e);
90
+ throw e;
91
+ })
92
+ }
93
+
14
94
 
15
95
 
16
96
  const compileSassFileDartSass = (folder, filename) => {
@@ -47,12 +127,6 @@ const compileSassFileDartSass = (folder, filename) => {
47
127
 
48
128
  plugins.push(autoprefixer({
49
129
  grid: 'no-autoplace',
50
- // browsers: [
51
- // "> 0.5% in alt-eu",
52
- // "last 2 version",
53
- // "not dead",
54
- // "not op_mini all"
55
- // ]
56
130
  }));
57
131
  plugins.push(cssnano({ safe: true }));
58
132
 
@@ -67,7 +141,7 @@ const compileSassFileDartSass = (folder, filename) => {
67
141
  fs.writeFileSync(finalDest, postcssResult.css);
68
142
 
69
143
  if (postcssResult.map) {
70
- fs.writeFileSync(`${finalDest}.map`, postcssResult.map);
144
+ fs.writeFileSync(`${finalDest}.map`, postcssResult.map.toString());
71
145
  }
72
146
  });
73
147
  })
@@ -91,91 +165,15 @@ const compileSassFileDartSass = (folder, filename) => {
91
165
  }
92
166
 
93
167
 
94
- // const compileSassFileNodeSass = (folder, filename, isNodeSassTildeImporterActive) => {
95
- // const filePath = path.join(folder, 'styles', filename);
96
-
97
- // tools.logInfo(`Compiling ${filePath}.scss...`);
98
-
99
- // return Promise.resolve()
100
- // .then(() => {
101
- // tools.logInfo('Compiling SCSS...');
102
-
103
- // if (isNodeSassTildeImporterActive !== false) {
104
- // tools.logInfo('building with tilde importer');
105
-
106
- // return execa('node-sass', [
107
- // filePath + '.scss',
108
- // filePath + '.temp.css',
109
- // '--importer',
110
- // './node_modules/node-sass-tilde-importer',
111
- // '--output-style',
112
- // 'compressed',
113
- // '--source-map',
114
- // true,
115
- // '--source-map-contents'
116
- // ]);
117
-
118
- // } else {
119
- // tools.logInfo('building without tilde importer');
120
-
121
- // return execa('node-sass', [
122
- // filePath + '.scss',
123
- // filePath + '.temp.css',
124
- // '--importer',
125
- // '--output-style',
126
- // 'compressed',
127
- // '--source-map',
128
- // true,
129
- // '--source-map-contents'
130
- // ]);
131
-
132
- // }
133
- // })
134
-
135
- // .then((output) => {
136
- // // console.log(output);
137
- // console.log('Size ::: ' + fs.statSync(filePath + '.temp.css').size);
138
- // })
139
-
140
- // .then(() => {
141
- // tools.logInfo('Running postCss over generated css file...');
142
-
143
- // return execa('postcss', [
144
- // filePath + '.temp.css',
145
- // '--config',
146
- // path.join(__dirname, 'postcss.config.js'),
147
- // '--no-map',
148
- // '--verbose',
149
- // '--output',
150
- // filePath + '.css'
151
- // ]);
152
- // })
153
-
154
- // .then((output) => {
155
- // // console.log(output);
156
- // console.log('Size ::: ' + fs.statSync(filePath + '.css').size);
157
- // })
158
-
159
- // .then(() => {
160
- // tools.logSuccess(`OK ==> generated ${filePath}.css`);
161
- // tools.remove(filePath + '.temp.css');
162
- // tools.remove(filePath + '.temp.css.map');
163
- // })
164
- // .catch((e) => {
165
- // console.log(e);
166
- // throw e;
167
- // })
168
- // }
169
-
170
168
 
171
169
  const compileSassFile = (pkg, folder, filename, isNodeSassTildeImporterActive) => {
172
170
  return Promise.resolve()
173
171
  .then(() => {
174
- // if (pkg.build && pkg.build.dartSass) {
172
+ if (pkg.build && (pkg.build.euiVersion === '13.x' || pkg.build.euiVersion === '14.x')) {
175
173
  return compileSassFileDartSass(folder, filename);
176
- // } else {
177
- // return compileSassFileNodeSass(folder, filename, isNodeSassTildeImporterActive);
178
- // }
174
+ } else {
175
+ return compileSassFileNodeSass(folder, filename, isNodeSassTildeImporterActive);
176
+ }
179
177
  })
180
178
 
181
179
  .catch((e) => {
@@ -216,6 +214,9 @@ module.exports.build = (pkg) => {
216
214
  console.log('Sources copy succeeded.')
217
215
  })
218
216
  .then(() => Promise.resolve().then(() => {
217
+ tools.logInfo('Processing stylesheets entries : ');
218
+ console.log(pkg.stylesheets);
219
+
219
220
  return pkg.stylesheets.reduce((promise, file) => {
220
221
  return promise.then(() => (
221
222
  compileSassFile(pkg, tmpFolder, file, pkg.build && pkg.build.isNodeSassTildeImporterActive)
@@ -243,6 +244,9 @@ module.exports.build = (pkg) => {
243
244
  tools.copy(path.join(pkg.paths.pkgRootDirectory, 'README.md'), path.join(pkg.paths.pkgBuild, 'README.md'));
244
245
  tools.copy(path.join(pkg.paths.pkgRootDirectory, 'LICENSE'), path.join(pkg.paths.pkgBuild, 'LICENSE'));
245
246
  })
247
+ .then(() => {
248
+ return tools.rimraf(tmpFolder);
249
+ })
246
250
  .then(() => {
247
251
  return notificationUtils.package.sendPackageMessage({
248
252
  package: pkg
@@ -255,7 +259,3 @@ module.exports.build = (pkg) => {
255
259
  }
256
260
  }
257
261
 
258
- // EXPORTS
259
- module.exports.compileSassFile = compileSassFile;
260
-
261
-
@@ -7,10 +7,11 @@ const semver = require('semver');
7
7
  // LOCAL
8
8
  const tools = require('./tools');
9
9
  const configUtils = require('../csdr/config/config-utils');
10
+ const { getPackageConfig } = require('./notification/config');
10
11
  // const versionUtils = require('./version-utils');
11
12
 
12
13
  // FETCH ARGS
13
- const { dryRun, git } = tools.getArgs();
14
+ const { dryRun, git, debug } = tools.getArgs();
14
15
 
15
16
 
16
17
  const getLastTag = (folder) => {
@@ -104,6 +105,9 @@ const commitAndPush = (branch, message, folder) => {
104
105
  } catch (e2) {
105
106
  tools.logError('ERROR');
106
107
  console.log('ERROR!!!');
108
+ if (debug) {
109
+ console.log(e2);
110
+ }
107
111
 
108
112
  try {
109
113
  tools.logInfo('Commit and push - second try - retrying pull push');
@@ -111,6 +115,9 @@ const commitAndPush = (branch, message, folder) => {
111
115
  execa.sync('git', ['push', 'origin', branch], { cwd: folder });
112
116
 
113
117
  } catch (e3) {
118
+ if (debug) {
119
+ console.log(e3);
120
+ }
114
121
  throw new Error(`Failed to push ${message} to ${folder}`);
115
122
  }
116
123
  }
@@ -139,6 +146,11 @@ const tagVersion = (version, branch, message, folder) => {
139
146
  })
140
147
  .catch((e) => {
141
148
  return Promise.resolve()
149
+ // .then(() => {
150
+ // return new Promise((resolve) => {
151
+ // setTimeout(resolve, 8000);
152
+ // });
153
+ // })
142
154
  .then(() => {
143
155
  execa.sync('git', ['tag', '-a', `v${version}b`, '-m', message], { cwd: folder });
144
156
  execa.sync('git', ['push', '--follow-tags', 'origin', branch], { cwd: folder });
@@ -218,19 +230,67 @@ const mergeMasterToDevelop = (pkg, folder, version) => {
218
230
  })
219
231
  }
220
232
  }
233
+ }
234
+
235
+
236
+ const mergeSupportToSupportDevelop = (pkg, folder, supportBranch, supportSnapshotBranch) => {
237
+ if (!supportSnapshotBranch) {
238
+ tools.logWarning('supportSnapshotBranch not found in package config...skipping');
239
+ return Promise.resolve();
240
+ }
241
+
242
+ tools.logTitle(`Merge back on ${supportSnapshotBranch}`);
243
+ tools.logInfo(`Merging release changes into ${supportSnapshotBranch} branch...`);
244
+
245
+ if (dryRun) {
246
+ tools.logInfo('DRY-RUN: skipping merge support to supportDevelop');
247
+ return Promise.resolve();
248
+
249
+ } else {
250
+
251
+ if (pkg && pkg.build && pkg.build.masterBranchOnly) {
252
+ tools.logInfo('Merge skipped project config set to master branch only');
253
+ return Promise.resolve();
221
254
 
255
+ } else {
256
+ return Promise.resolve()
257
+ .then(() => {
258
+ execa.shellSync(`git fetch origin`, { cwd: folder });
259
+ execa.shellSync(`git checkout ${supportSnapshotBranch}`, { cwd: folder });
260
+ execa.shellSync(`git merge origin/${supportSnapshotBranch}`, { cwd: folder });
261
+ execa.shellSync(`git merge -X theirs ${supportBranch}`, { cwd: folder });
262
+ execa.shellSync(`git push origin ${supportSnapshotBranch}`, { cwd: folder });
263
+ execa.shellSync(`git checkout ${supportBranch}`, { cwd: folder });
264
+ })
265
+ .then(() => {
266
+ tools.logSuccess();
267
+ })
268
+ .catch((e) => {
269
+ throw new Error(`Error trying merging ${supportBranch} to ${supportSnapshotBranch} on ${folder}`);
270
+ })
271
+ }
272
+ }
222
273
  }
223
274
 
224
275
 
225
- const getGitHost = () => {
276
+
277
+ const getGitHost = (externalRepo) => {
226
278
  const config = configUtils.global.getConfig();
227
279
 
228
280
  if (config.git) {
229
281
  if (git && git === 'local') {
230
- return config.git.local;
282
+ if (externalRepo) {
283
+ return config.git.externals.local;
284
+ } else {
285
+ return config.git.local;
286
+ }
231
287
 
232
288
  } else {
233
- return config.git.remote;
289
+ if (externalRepo) {
290
+ return config.git.externals.remote;
291
+ } else {
292
+ return config.git.remote;
293
+ }
234
294
  }
235
295
  }
236
296
 
@@ -238,7 +298,7 @@ const getGitHost = () => {
238
298
  }
239
299
 
240
300
 
241
- const cloneRepo = (repoUri, folder, forced = false, noHistory = false) => {
301
+ const cloneRepo = (repoUri, folder, forced = false, noHistory = false, externalRepo = false) => {
242
302
  return Promise.resolve()
243
303
  .then(() => {
244
304
  if (tools.isDirExists(folder) && forced) {
@@ -246,12 +306,13 @@ const cloneRepo = (repoUri, folder, forced = false, noHistory = false) => {
246
306
  return tools.rimraf(folder);
247
307
  }
248
308
  })
309
+
249
310
  .then(() => {
250
311
  if (!tools.isDirExists(folder)) {
251
312
  tools.logInfo(`Cloning ${repoUri} in folder "${folder}" ...`);
252
313
 
253
314
  const auth = process.env.gituser && process.env.gitpassword ? `${process.env.gituser}:${process.env.gitpassword}@` : '';
254
- const gitHost = getGitHost();
315
+ const gitHost = getGitHost(externalRepo);
255
316
 
256
317
  if (noHistory) {
257
318
  execa.shellSync(`git clone --depth 1 https://${auth}${gitHost}${repoUri} ${folder}`);
@@ -261,6 +322,7 @@ const cloneRepo = (repoUri, folder, forced = false, noHistory = false) => {
261
322
  tools.logSuccess();
262
323
  }
263
324
  })
325
+
264
326
  .then(() => {
265
327
  tools.logInfo(`Pulling ${repoUri} in folder "${folder}" ...`);
266
328
  execa.shellSync(`git pull`, { cwd: folder, stdio: 'inherit' });
@@ -321,6 +383,7 @@ module.exports.hasCommitsSinceLastTag = hasCommitsSinceLastTag;
321
383
  module.exports.commitAndPush = commitAndPush;
322
384
  module.exports.tagVersion = tagVersion;
323
385
  module.exports.mergeMasterToDevelop = mergeMasterToDevelop;
386
+ module.exports.mergeSupportToSupportDevelop = mergeSupportToSupportDevelop;
324
387
  module.exports.cloneRepo = cloneRepo;
325
388
  module.exports.checkout = checkout;
326
389
  module.exports.getLastCommitAuthor = getLastCommitAuthor;
@@ -1,7 +1,6 @@
1
1
  'use strict';
2
2
 
3
3
  const changelogUtils = require('./changelog-utils');
4
- const confluenceUtils = require('./confluence-utils');
5
4
  const gitUtils = require('./git-utils');
6
5
  const mavenUtils = require('./maven-utils');
7
6
  const pipelineUtils = require('./pipeline-utils');
@@ -19,7 +18,6 @@ const sonarUtils = require('./sonar/sonar-utils');
19
18
 
20
19
  module.exports = {
21
20
  changelog: changelogUtils,
22
- confluence: confluenceUtils,
23
21
  git: gitUtils,
24
22
  maven: mavenUtils,
25
23
  pipeline: pipelineUtils,
@@ -64,6 +64,11 @@ module.exports.getMessage = (options) => {
64
64
  message.detailText = 'Another build has been detected for the current package being build\n Retry again this build after 30m, lock will be auto-cleared';
65
65
  break;
66
66
 
67
+ case 'MULTIPLE_LOCAL_EUI_VERSIONS_FOUND':
68
+ message.detailTitle = 'MULTIPLE eUI VERSIONS FOUND IN LOCAL PROJECT - ABORTING!';
69
+ message.detailText = 'Uncompatible version of eUI found installed in the local CSDR project, please adjust and keep same compatible versions of eUI packages and projects';
70
+ break;
71
+
67
72
  default:
68
73
  message.detailTitle = 'GENERAL ERROR!';
69
74
  message.detailText = options.exception;
@@ -10,6 +10,9 @@ let { dryRun, debug} = tools.getArgs();
10
10
 
11
11
  const sendCore = (subject, body, recipient) => {
12
12
  tools.logInfo(`Sending mail to : ${recipient}`);
13
+ tools.logInfo('Message subject / body :');
14
+ console.log(subject);
15
+ console.log(body);
13
16
 
14
17
  if (dryRun) {
15
18
  console.log('----------------------------------------------');
@@ -33,9 +33,6 @@ module.exports.endMailStack = () => {
33
33
  }
34
34
 
35
35
  module.exports.bufferMessage = (message) => {
36
- tools.logInfo('Buffering mail content');
37
- console.log(message);
38
-
39
36
  if (message.text) {
40
37
  mailContent.buffer.push(message.text);
41
38
 
@@ -73,8 +70,9 @@ const sendMailStack = (config, scope, target) => {
73
70
  status = 'ERROR';
74
71
  }
75
72
 
76
- const subject = `RELEASE <b style="color: ${statusColor};">${status}</b> - <b style="color:blue;">${scope}</b> - branch: <b styles="color: blue;">${target}</b>`;
77
- let fullMessage = mailContent.buffer.join('\n');
73
+ // const subject = `RELEASE <b style="color: ${statusColor};">${status}</b> - <b style="color:blue;">${scope}</b> - branch: <b styles="color: blue;">${target}</b>`;
74
+ const subject = `Release of **${scope}** for ${target} ---- status : ${status}`;
75
+ let fullMessage = `<pre>${mailContent.buffer.join('\n')}</pre>`;
78
76
 
79
77
  if (mailContent.exception) {
80
78
  fullMessage += mailContent.exception;
@@ -15,8 +15,6 @@ const innerMailstack = require('./mailstack');
15
15
 
16
16
  module.exports.sendPackageMessage = (options) => {
17
17
 
18
- tools.logInfo('Sending package message');
19
-
20
18
  const message = innerCommon.getMessage(options);
21
19
 
22
20
  // buffer message
@@ -24,10 +24,6 @@ const agent = PROXY ? new HttpsProxyAgent(PROXY) : void 0;
24
24
 
25
25
  const sendMessageCore = (hook, channel, attachments, text = null) => {
26
26
  return new Promise((resolve, reject) => {
27
- tools.logInfo(`Sending message to Slack...`);
28
- tools.logInfo(`Slack hook: ${hook}`);
29
- tools.logInfo(`Slack channel: ${channel}`);
30
-
31
27
  const payload = {
32
28
  username: "eUI bot",
33
29
  channel
@@ -51,6 +47,8 @@ const sendMessageCore = (hook, channel, attachments, text = null) => {
51
47
  };
52
48
 
53
49
  if (dryRun || !slackFeedback) {
50
+ tools.logInfo('No notifications config found...skipping');
51
+
54
52
  if (debug) {
55
53
  console.log(JSON.stringify(payload, null, 4));
56
54
  }
@@ -58,6 +56,10 @@ const sendMessageCore = (hook, channel, attachments, text = null) => {
58
56
  resolve();
59
57
 
60
58
  } else {
59
+ tools.logInfo(`Sending message to Slack...`);
60
+ tools.logInfo(`Slack hook: ${hook}`);
61
+ tools.logInfo(`Slack channel: ${channel}`);
62
+
61
63
  if (debug) {
62
64
  console.log(JSON.stringify(payload, null, 4));
63
65
  }
@@ -94,9 +96,6 @@ const sendMessage = (hook, channel, attachments, text = null) => {
94
96
  .then(() => {
95
97
  return sendMessageCore(hook, channel, attachments, text);
96
98
  })
97
- .then(() => {
98
- tools.logSuccess();
99
- })
100
99
  .catch((e) => {
101
100
  tools.logError('Error sending slack message');
102
101
  console.log(e); // do not rethrow
@@ -6,12 +6,10 @@ const tools = require('../tools');
6
6
 
7
7
  const translationUtils = require('./translations/translation-utils');
8
8
  const configUtils = require('../../csdr/config/config-utils');
9
-
9
+ const injectionUtils = require('./injection/injection-utils');
10
10
 
11
11
  module.exports.preBuild = (pkg, build = false) => {
12
-
13
12
  return Promise.resolve()
14
-
15
13
  .then(() => {
16
14
  tools.logTitle('PRE-BUILD : preparing the element...')
17
15
  })
@@ -21,7 +19,13 @@ module.exports.preBuild = (pkg, build = false) => {
21
19
  return configUtils.angular.registerAngularProjectDef(pkg);
22
20
  })
23
21
 
24
- // generate compiled translation files
22
+ // inject external app sources declaration
23
+ .then(() => {
24
+ if (pkg.externalSources) {
25
+ return injectionUtils.externals.injectElementExternalSources(pkg);
26
+ }
27
+ })
28
+
25
29
  .then(() => {
26
30
  tools.logInfo('Checking compiled translations');
27
31
  if (pkg.build && pkg.build.compiledTranslations) {
@@ -12,7 +12,7 @@ import { TranslateModule } from '@ngx-translate/core';
12
12
  import {
13
13
  CoreModule, CoreModuleEffects, translateConfig, EUI_CONFIG_TOKEN,
14
14
  } from '@eui/core';
15
- import { EuiAllModule } from '@eui/components';
15
+ import { EuiAllModule } from '@eui/components-next';
16
16
 
17
17
  import { appConfig } from '../config/index';
18
18
  import { environment } from '../environments/environment';
@@ -3,8 +3,7 @@
3
3
  "compilerOptions": {
4
4
  "outDir": "./dist",
5
5
  "types": [],
6
- "module": "ESNext",
7
- "target": "ES2016",
6
+ "target": "ES2015",
8
7
  "lib": ["es2020", "dom"]
9
8
  },
10
9
  "exclude": [
@@ -0,0 +1,52 @@
1
+ // ANGULAR & 3rd PARTIES
2
+ import { NgModule } from '@angular/core';
3
+ import { BrowserModule } from '@angular/platform-browser';
4
+ import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
5
+ import { HttpClientModule } from '@angular/common/http';
6
+ import { StoreModule } from '@ngrx/store';
7
+ import { EffectsModule } from '@ngrx/effects';
8
+ import { StoreDevtoolsModule } from '@ngrx/store-devtools';
9
+ import { TranslateModule } from '@ngx-translate/core';
10
+
11
+ // eUI IMPORTS
12
+ import {
13
+ CoreModule, CoreModuleEffects, translateConfig, EUI_CONFIG_TOKEN,
14
+ } from '@eui/core';
15
+ import { EuiAllModule } from '@eui/components';
16
+
17
+ import { appConfig } from '../config/index';
18
+ import { environment } from '../environments/environment';
19
+
20
+ // APP ROUTES & ROOT COMPONENTS
21
+ import { AppRoutingModule } from '../../app/app-routing.module';
22
+ import { AppComponent } from '../../app/app.component';
23
+
24
+ import { TOKEN, reducerProvider, metaReducers } from './core/reducers/index';
25
+
26
+ // APP ROOT MODULE
27
+ @NgModule({
28
+ imports: [
29
+ BrowserModule,
30
+ BrowserAnimationsModule,
31
+ HttpClientModule,
32
+ StoreModule.forRoot(TOKEN, { metaReducers }),
33
+ StoreDevtoolsModule.instrument({ name: 'CSDR App', maxAge: 150, logOnly: environment.production }),
34
+ EffectsModule.forRoot([...CoreModuleEffects]),
35
+ TranslateModule.forRoot(translateConfig),
36
+ CoreModule.forRoot(),
37
+ AppRoutingModule,
38
+ EuiAllModule,
39
+ ],
40
+ declarations: [
41
+ AppComponent,
42
+ ],
43
+ providers: [
44
+ { provide: EUI_CONFIG_TOKEN, useValue: { appConfig: appConfig, environment: environment } },
45
+ reducerProvider,
46
+ ],
47
+ bootstrap: [
48
+ AppComponent,
49
+ ],
50
+ })
51
+ export class AppModule {
52
+ }
@@ -0,0 +1,40 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { ActionReducer, ActionReducerMap, combineReducers, MetaReducer } from '@ngrx/store';
3
+ import * as fromRouter from '@ngrx/router-store';
4
+ import { storeFreeze } from 'ngrx-store-freeze';
5
+ import { reducers as coreReducers, CoreState, localStorageSync } from '@eui/core';
6
+
7
+ export interface AppState extends CoreState {
8
+ router: fromRouter.RouterReducerState<any>;
9
+ }
10
+
11
+ // -----------------
12
+ // ------------ AOT
13
+ export const TOKEN = new InjectionToken<any>('AppReducers');
14
+
15
+ export function getReducers(): ActionReducerMap<AppState, any> {
16
+ return {
17
+ router: fromRouter.routerReducer,
18
+ ...coreReducers,
19
+ };
20
+ }
21
+
22
+ export const reducerProvider = [
23
+ { provide: TOKEN, useFactory: getReducers },
24
+ ];
25
+
26
+ // console.log all actions
27
+ export function logger(reducer: ActionReducer<AppState>): ActionReducer<AppState> {
28
+ return (state, action) => {
29
+ const result = reducer(state, action);
30
+ console.groupCollapsed(action.type);
31
+ console.log('prev state', state);
32
+ console.log('action', action);
33
+ console.log('next state', result);
34
+ console.groupEnd();
35
+
36
+ return result;
37
+ };
38
+ }
39
+
40
+ export const metaReducers: MetaReducer<AppState>[] = [logger, localStorageSync, storeFreeze];
@@ -0,0 +1,4 @@
1
+ import { GlobalConfig } from '@eui/core';
2
+
3
+ export const GLOBAL: GlobalConfig = {
4
+ };
@@ -0,0 +1,8 @@
1
+ import { EuiAppConfig } from '@eui/core';
2
+ import { GLOBAL } from './global';
3
+ import { MODULES } from './modules';
4
+
5
+ export const appConfig: EuiAppConfig = {
6
+ global: GLOBAL,
7
+ modules: MODULES,
8
+ };
@@ -0,0 +1,4 @@
1
+ import { ModulesConfig } from '@eui/core';
2
+
3
+ export const MODULES: ModulesConfig = {
4
+ };
@@ -0,0 +1,9 @@
1
+ // activated by running :
2
+ // npm run build -- --configuration=dev
3
+ // OR
4
+ // npm run build-dev
5
+
6
+ export const environment = {
7
+ production: false,
8
+ enableDevToolRedux: true,
9
+ };