@eui/tools 6.5.5 → 6.6.0

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 (239) hide show
  1. package/.prettierrc.json +19 -0
  2. package/.version.properties +1 -1
  3. package/CHANGELOG.md +18 -0
  4. package/bin/eui-scripts.js +2 -0
  5. package/bin/scripts/csdr-app-package-init.js +16 -0
  6. package/bin/scripts/csdr-cli.js +1 -1
  7. package/package.json +1 -1
  8. package/scripts/app/public/index.html +22 -170
  9. package/scripts/app/public/index.js +95 -0
  10. package/scripts/app/public/package-init.html +254 -0
  11. package/scripts/app/public/package-init.js +138 -0
  12. package/scripts/app/public/stats.html +60 -125
  13. package/scripts/app/public/stats.js +68 -0
  14. package/scripts/app/routes/index.js +28 -9
  15. package/scripts/app/server.js +2 -0
  16. package/scripts/csdr/cli/cli-utils.js +2 -30
  17. package/scripts/csdr/cli/constants.js +1 -12
  18. package/scripts/csdr/cli/package-build-backend.js +18 -0
  19. package/scripts/csdr/cli/package-build-frontend.js +47 -164
  20. package/scripts/csdr/cli/package-prompt.js +0 -84
  21. package/scripts/csdr/cli/package.js +65 -14
  22. package/scripts/csdr/config/register.js +71 -158
  23. package/scripts/csdr/templates/template-utils.js +2 -2
  24. package/scripts/index.js +0 -1
  25. package/scripts/utils/sonar/sonar-utils.js +1 -1
  26. package/scripts/csdr/cli/app.js +0 -204
  27. package/scripts/csdr/cli/skeletons/app/angular-config.json +0 -31
  28. package/scripts/csdr/cli/skeletons/app/dependencies-base.json +0 -2
  29. package/scripts/csdr/cli/skeletons/app/dependencies-composite.json +0 -6
  30. package/scripts/csdr/cli/skeletons/app/gitignore_TO_REPLACE +0 -63
  31. package/scripts/csdr/cli/skeletons/app/mock/json/core/user.js +0 -31
  32. package/scripts/csdr/cli/skeletons/app/mock/json/lowdb.js +0 -25
  33. package/scripts/csdr/cli/skeletons/app/mock/json/middlewares/delay.js +0 -10
  34. package/scripts/csdr/cli/skeletons/app/mock/json/middlewares/errors.js +0 -73
  35. package/scripts/csdr/cli/skeletons/app/mock/json/middlewares/sse.js +0 -28
  36. package/scripts/csdr/cli/skeletons/app/mock/json/routes.json +0 -3
  37. package/scripts/csdr/cli/skeletons/app/mock/json/server.js +0 -38
  38. package/scripts/csdr/cli/skeletons/app/package.json +0 -6
  39. package/scripts/csdr/cli/skeletons/app/scripts.json +0 -7
  40. package/scripts/csdr/cli/skeletons/app/src/app/app-routing.module.ts +0 -32
  41. package/scripts/csdr/cli/skeletons/app/src/app/app.component.html +0 -1
  42. package/scripts/csdr/cli/skeletons/app/src/app/app.component.ts +0 -9
  43. package/scripts/csdr/cli/skeletons/app/src/app/app.module.ts +0 -68
  44. package/scripts/csdr/cli/skeletons/app/src/app/core/app-shell/app-shell.component.html +0 -27
  45. package/scripts/csdr/cli/skeletons/app/src/app/core/app-shell/app-shell.component.ts +0 -188
  46. package/scripts/csdr/cli/skeletons/app/src/app/core/components/about/about.component.html +0 -30
  47. package/scripts/csdr/cli/skeletons/app/src/app/core/components/about/about.component.ts +0 -71
  48. package/scripts/csdr/cli/skeletons/app/src/app/core/components/error-pages/page-404/page-404.component.ts +0 -19
  49. package/scripts/csdr/cli/skeletons/app/src/app/core/components/error-pages/page-500/page-500.component.ts +0 -18
  50. package/scripts/csdr/cli/skeletons/app/src/app/core/components/profile/profile.component.html +0 -104
  51. package/scripts/csdr/cli/skeletons/app/src/app/core/components/profile/profile.component.scss +0 -44
  52. package/scripts/csdr/cli/skeletons/app/src/app/core/components/profile/profile.component.ts +0 -39
  53. package/scripts/csdr/cli/skeletons/app/src/app/core/components/profile-menu/profile-menu.component.html +0 -26
  54. package/scripts/csdr/cli/skeletons/app/src/app/core/components/profile-menu/profile-menu.component.ts +0 -104
  55. package/scripts/csdr/cli/skeletons/app/src/app/core/core.module.ts +0 -46
  56. package/scripts/csdr/cli/skeletons/app/src/app/core/services/core.service.ts +0 -124
  57. package/scripts/csdr/cli/skeletons/app/src/app/features/home/home-routing.module.ts +0 -15
  58. package/scripts/csdr/cli/skeletons/app/src/app/features/home/home.component.html +0 -6
  59. package/scripts/csdr/cli/skeletons/app/src/app/features/home/home.component.ts +0 -8
  60. package/scripts/csdr/cli/skeletons/app/src/app/features/home/home.module.ts +0 -18
  61. package/scripts/csdr/cli/skeletons/app/src/app/features/sample-lib.module.ts +0 -9
  62. package/scripts/csdr/cli/skeletons/app/src/app/shared/components/.gitkeep +0 -0
  63. package/scripts/csdr/cli/skeletons/app/src/app/shared/shared.module.ts +0 -20
  64. package/scripts/csdr/cli/skeletons/app/src/assets/i18n/en.json +0 -3
  65. package/scripts/csdr/cli/skeletons/app/src/assets/i18n/fr.json +0 -3
  66. package/scripts/csdr/cli/skeletons/app/src/assets/openid-login-config.local-mwp-dev.json +0 -144
  67. package/scripts/csdr/cli/skeletons/app/src/assets/openid-login-config.local.json +0 -36
  68. package/scripts/csdr/cli/skeletons/app/src/config/global.ts +0 -9
  69. package/scripts/csdr/cli/skeletons/app/src/config/index.ts +0 -8
  70. package/scripts/csdr/cli/skeletons/app/src/config/modules.ts +0 -13
  71. package/scripts/csdr/cli/skeletons/app/src/environments/environment.dev.ts +0 -4
  72. package/scripts/csdr/cli/skeletons/app/src/environments/environment.local-mwp-dev-openid.ts +0 -6
  73. package/scripts/csdr/cli/skeletons/app/src/environments/environment.local-openid.ts +0 -5
  74. package/scripts/csdr/cli/skeletons/app/src/environments/environment.prod.ts +0 -12
  75. package/scripts/csdr/cli/skeletons/app/src/environments/environment.ts +0 -5
  76. package/scripts/csdr/cli/skeletons/app/src/index.html +0 -24
  77. package/scripts/csdr/cli/skeletons/app/src/styles.scss +0 -1
  78. package/scripts/csdr/cli/skeletons/app/tslint.json +0 -17
  79. package/scripts/csdr/cli/skeletons/app-eui10/angular-config.json +0 -20
  80. package/scripts/csdr/cli/skeletons/app-eui10/dependencies-composite.json +0 -5
  81. package/scripts/csdr/cli/skeletons/app-eui10/gitignore_TO_REPLACE +0 -63
  82. package/scripts/csdr/cli/skeletons/app-eui10/mock/app/models/user.js +0 -8
  83. package/scripts/csdr/cli/skeletons/app-eui10/mock/app/routes/index.js +0 -5
  84. package/scripts/csdr/cli/skeletons/app-eui10/mock/app/routes/user_routes.js +0 -24
  85. package/scripts/csdr/cli/skeletons/app-eui10/mock/db/db.json +0 -12
  86. package/scripts/csdr/cli/skeletons/app-eui10/mock/server.js +0 -16
  87. package/scripts/csdr/cli/skeletons/app-eui10/package.json +0 -6
  88. package/scripts/csdr/cli/skeletons/app-eui10/scripts.json +0 -5
  89. package/scripts/csdr/cli/skeletons/app-eui10/src/app/app-routing.module.ts +0 -18
  90. package/scripts/csdr/cli/skeletons/app-eui10/src/app/app-starter.service.ts +0 -68
  91. package/scripts/csdr/cli/skeletons/app-eui10/src/app/app.component.html +0 -29
  92. package/scripts/csdr/cli/skeletons/app-eui10/src/app/app.component.ts +0 -55
  93. package/scripts/csdr/cli/skeletons/app-eui10/src/app/app.module.ts +0 -27
  94. package/scripts/csdr/cli/skeletons/app-eui10/src/app/core/components/.gitkeep +0 -0
  95. package/scripts/csdr/cli/skeletons/app-eui10/src/app/core/core.module.ts +0 -84
  96. package/scripts/csdr/cli/skeletons/app-eui10/src/app/core/reducers/index.ts +0 -33
  97. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home-routing.module.ts +0 -15
  98. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home.component.html +0 -7
  99. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home.component.ts +0 -19
  100. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home.module.ts +0 -18
  101. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page1/page1.component.html +0 -7
  102. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page1/page1.component.ts +0 -7
  103. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page2/page2.component.html +0 -7
  104. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page2/page2.component.ts +0 -7
  105. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1-routing.module.ts +0 -18
  106. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1.component.html +0 -7
  107. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1.component.ts +0 -8
  108. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1.module.ts +0 -21
  109. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2-routing.module.ts +0 -16
  110. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2.component.html +0 -8
  111. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2.component.ts +0 -7
  112. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2.module.ts +0 -17
  113. package/scripts/csdr/cli/skeletons/app-eui10/src/app/shared/shared.module.ts +0 -21
  114. package/scripts/csdr/cli/skeletons/app-eui10/src/app/shared/testing/router.mock.ts +0 -18
  115. package/scripts/csdr/cli/skeletons/app-eui10/src/assets/config/env-json-config.json +0 -8
  116. package/scripts/csdr/cli/skeletons/app-eui10/src/assets/i18n/en.json +0 -7
  117. package/scripts/csdr/cli/skeletons/app-eui10/src/assets/i18n/fr.json +0 -7
  118. package/scripts/csdr/cli/skeletons/app-eui10/src/config/global.ts +0 -26
  119. package/scripts/csdr/cli/skeletons/app-eui10/src/config/index.ts +0 -8
  120. package/scripts/csdr/cli/skeletons/app-eui10/src/config/modules.ts +0 -4
  121. package/scripts/csdr/cli/skeletons/app-eui10/src/environments/environment.prod.ts +0 -9
  122. package/scripts/csdr/cli/skeletons/app-eui10/src/environments/environment.ts +0 -9
  123. package/scripts/csdr/cli/skeletons/app-eui10/src/index.html +0 -21
  124. package/scripts/csdr/cli/skeletons/app-eui10/src/styles.scss +0 -1
  125. package/scripts/csdr/cli/skeletons/app-eui10/tslint.json +0 -17
  126. package/scripts/csdr/cli/skeletons/app-showcase/angular-config.json +0 -103
  127. package/scripts/csdr/cli/skeletons/app-showcase/dependencies-composite.json +0 -5
  128. package/scripts/csdr/cli/skeletons/app-showcase/gitignore_TO_REPLACE +0 -50
  129. package/scripts/csdr/cli/skeletons/app-showcase/package.json +0 -6
  130. package/scripts/csdr/cli/skeletons/app-showcase/scripts.json +0 -3
  131. package/scripts/csdr/cli/skeletons/app-showcase/src/app/app-routing.module.ts +0 -21
  132. package/scripts/csdr/cli/skeletons/app-showcase/src/app/app.component.html +0 -24
  133. package/scripts/csdr/cli/skeletons/app-showcase/src/app/app.component.ts +0 -19
  134. package/scripts/csdr/cli/skeletons/app-showcase/src/app/app.routes.ts +0 -7
  135. package/scripts/csdr/cli/skeletons/app-showcase/src/app/features/_home/home-routing.module.ts +0 -15
  136. package/scripts/csdr/cli/skeletons/app-showcase/src/app/features/_home/home.component.html +0 -7
  137. package/scripts/csdr/cli/skeletons/app-showcase/src/app/features/_home/home.component.ts +0 -8
  138. package/scripts/csdr/cli/skeletons/app-showcase/src/app/features/_home/home.module.ts +0 -17
  139. package/scripts/csdr/cli/skeletons/app-showcase/src/assets/app-metadata.json +0 -8
  140. package/scripts/csdr/cli/skeletons/app-showcase/src/assets/config/env-json-config.json +0 -41
  141. package/scripts/csdr/cli/skeletons/app-showcase-eui13/angular-config.json +0 -33
  142. package/scripts/csdr/cli/skeletons/app-showcase-eui13/dependencies-composite.json +0 -5
  143. package/scripts/csdr/cli/skeletons/app-showcase-eui13/gitignore_TO_REPLACE +0 -50
  144. package/scripts/csdr/cli/skeletons/app-showcase-eui13/package.json +0 -6
  145. package/scripts/csdr/cli/skeletons/app-showcase-eui13/scripts.json +0 -3
  146. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app-routing.module.ts +0 -21
  147. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app.component.html +0 -26
  148. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app.component.ts +0 -19
  149. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app.routes.ts +0 -7
  150. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home-routing.module.ts +0 -15
  151. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home.component.html +0 -7
  152. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home.component.ts +0 -8
  153. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home.module.ts +0 -17
  154. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/shared/shared.module.ts +0 -15
  155. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/assets/app-metadata.json +0 -8
  156. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/assets/config/env-json-config.json +0 -41
  157. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/index.html +0 -22
  158. package/scripts/csdr/cli/skeletons/package/frontend-eui10/assets/remote-sources/.gitkeep +0 -0
  159. package/scripts/csdr/cli/skeletons/package/frontend-eui10/dependencies-base.json +0 -2
  160. package/scripts/csdr/cli/skeletons/package/frontend-eui10/dependencies-composite.json +0 -3
  161. package/scripts/csdr/cli/skeletons/package/frontend-eui10/src/dummy.spec.ts.TO_REPLACE +0 -5
  162. package/scripts/csdr/cli/skeletons/package/frontend-eui10/tsconfig.lib.json +0 -32
  163. package/scripts/csdr/cli/skeletons/package/frontend-eui10/tslint.json +0 -17
  164. package/scripts/csdr/cli/skeletons/package/frontend-eui13/dependencies-composite.json +0 -3
  165. package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/index.ts +0 -2
  166. package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/components/cmp1/cmp1.component.html +0 -1
  167. package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/components/cmp1/cmp1.component.spec.ts.TO_REPLACE +0 -25
  168. package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/components/cmp1/cmp1.component.ts +0 -14
  169. package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/module.ts +0 -17
  170. package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/routing.module.ts +0 -14
  171. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/angular.json +0 -90
  172. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/browserslist +0 -6
  173. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-base.json +0 -2
  174. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-composite-ACC.json +0 -4
  175. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-composite-DLT.json +0 -4
  176. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-composite-INT.json +0 -4
  177. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-composite-PROD.json +0 -4
  178. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-composite-TRN.json +0 -4
  179. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-composite.json +0 -8
  180. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/gitignore_TO_REPLACE +0 -65
  181. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/karma.conf.js +0 -7
  182. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/package.json_TO_REPLACE +0 -8
  183. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/dummy.scss +0 -3
  184. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/dummy.spec.ts +0 -6
  185. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/eui-components.ts +0 -11
  186. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/fallback.component.ts +0 -11
  187. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/module.component.ts +0 -91
  188. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/module.ts +0 -87
  189. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/reducers/custom-route-serializer.ts +0 -28
  190. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/reducers/index.ts +0 -43
  191. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/routing.module.ts +0 -33
  192. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/assets/.gitkeep +0 -0
  193. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/config/global.ts +0 -42
  194. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/config/index.ts +0 -10
  195. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/config/modules.ts +0 -3
  196. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/environments/environment.prod.ts +0 -3
  197. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/environments/environment.ts +0 -3
  198. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/favicon.ico +0 -0
  199. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/index.html +0 -10
  200. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/main.ts +0 -12
  201. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/polyfills.ts +0 -87
  202. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tsconfig.app.json +0 -20
  203. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tsconfig.spec.json +0 -18
  204. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tslint-remote.json +0 -7
  205. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tslint.json +0 -17
  206. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/webpack.extra.js +0 -10
  207. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/app/dummy.scss +0 -3
  208. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/app/dummy.spec.ts +0 -6
  209. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/app/eui-components.ts +0 -9
  210. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/app/fallback.component.ts +0 -11
  211. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/app/module.component.ts +0 -91
  212. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/app/module.ts +0 -87
  213. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/app/reducers/custom-route-serializer.ts +0 -28
  214. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/app/reducers/index.ts +0 -43
  215. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/app/routing.module.ts +0 -33
  216. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/assets/.gitkeep +0 -0
  217. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/config/global.ts +0 -55
  218. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/config/index.ts +0 -10
  219. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/config/modules.ts +0 -3
  220. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/environments/environment.prod.ts +0 -3
  221. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/environments/environment.ts +0 -3
  222. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/favicon.ico +0 -0
  223. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/index.html +0 -10
  224. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/main.ts +0 -12
  225. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/polyfills.ts +0 -87
  226. package/scripts/csdr/cli/skeletons/virtual-remote/10.x/angular-config.json +0 -9
  227. package/scripts/csdr/cli/skeletons/virtual-remote/10.x/dependencies.json +0 -20
  228. /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/assets/i18n/en.json +0 -0
  229. /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/assets/i18n/fr.json +0 -0
  230. /package/scripts/csdr/cli/skeletons/{app-eui10 → package/frontend-eui15}/dependencies-base.json +0 -0
  231. /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/gitignore_TO_REPLACE +0 -0
  232. /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/karma.conf.js +0 -0
  233. /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/ng-package.json +0 -0
  234. /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/package.json +0 -0
  235. /package/scripts/csdr/cli/skeletons/{app/src/app/core → package/frontend-eui15/src}/dummy.spec.ts.TO_REPLACE +0 -0
  236. /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/src/index.ts +0 -0
  237. /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/src/lib/module.ts +0 -0
  238. /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/src/test.ts.TO_REPLACE +0 -0
  239. /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/tsconfig.spec.json +0 -0
@@ -0,0 +1,254 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <script src="https://unpkg.com/vue@2"></script>
7
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css" />
8
+ </head>
9
+
10
+ <body>
11
+ <div id="app" class="container-fluid">
12
+ <div class="row">
13
+ <div class="col-6 full-height-flex">
14
+ <h3 class="mt-2 mb-4">CSDR package initialization</h3>
15
+
16
+ <div class="d-flex align-items-center mt-2">
17
+ <h5>Choose the package options:</h5>
18
+ <div class="ms-auto me-2">
19
+ <button class="btn btn-primary" @click="reset()">reset</button>
20
+ </div>
21
+ </div>
22
+ <div class="row mt-3 mb-3">
23
+ <label class="col-sm-4 col-form-label d-flex justify-content-end">Package type</label>
24
+ <div class="col-sm-8">
25
+ <select class="form-select" v-model="params.pkgType">
26
+ <option v-for="pkgType in options.pkgTypes" :value="pkgType.value">{{ pkgType.label }}</option>
27
+ </select>
28
+ </div>
29
+ </div>
30
+
31
+ <div class="row mt-3 mb-3">
32
+ <label class="col-sm-4 col-form-label d-flex justify-content-end">Package scope</label>
33
+ <div class="col-sm-8">
34
+ <input type="text" class="form-control" placeholder="with @ prefix, f.e. : @cc" v-model="params.pkgScope" />
35
+ </div>
36
+ </div>
37
+ <div class="row mt-3 mb-3">
38
+ <label class="col-sm-4 col-form-label d-flex justify-content-end">Package name</label>
39
+ <div class="col-sm-8">
40
+ <input
41
+ type="text"
42
+ class="form-control"
43
+ placeholder="in kebab case, f.e.: my-package"
44
+ v-model="params.pkgName" />
45
+ </div>
46
+ </div>
47
+
48
+ <div v-if="params.pkgType === 'frontend'">
49
+ <div class="row mt-3 mb-3">
50
+ <label class="col-sm-4 col-form-label d-flex justify-content-end">Frontend type</label>
51
+ <div class="col-sm-8">
52
+ <select class="form-select" v-model="params.pkgFrontendType">
53
+ <option v-for="pkgType in options.frontendTypes" :value="pkgType.value">{{ pkgType.label }}</option>
54
+ </select>
55
+ </div>
56
+ </div>
57
+
58
+ <div class="row mt-3 mb-3">
59
+ <label class="col-sm-4 col-form-label d-flex justify-content-end">eUI Version</label>
60
+ <div class="col-sm-8">
61
+ <select class="form-select" v-model="params.pkgFrontendVersion">
62
+ <option v-for="version in options.frontendVersions" :value="version.value">{{ version.label }}</option>
63
+ </select>
64
+ </div>
65
+ </div>
66
+
67
+ <div v-if="params.pkgFrontendType === 'default'">
68
+ <div class="row mt-3 mb-3">
69
+ <div class="col-sm-4">
70
+ <label class="form-check-label d-flex justify-content-end"> CSDR repository ? </label>
71
+ </div>
72
+ <div class="col-sm-8">
73
+ <div class="form-check form-switch">
74
+ <input class="form-check-input" type="checkbox" v-model="params.csdrRepo" />
75
+ </div>
76
+ </div>
77
+ </div>
78
+
79
+ <div class="row mt-3 mb-3" v-if="!params.csdrRepo">
80
+ <label class="col-sm-4 col-form-label d-flex justify-content-end">External repository project</label>
81
+ <div class="col-sm-8">
82
+ <input
83
+ type="text"
84
+ class="form-control"
85
+ placeholder="Indicate the CITnet project key where the repository belongs to"
86
+ v-model="params.externalRepoName" />
87
+ </div>
88
+ </div>
89
+ </div>
90
+
91
+ <div v-if="params.pkgFrontendType === 'remote'">
92
+ <div class="row mt-3 mb-1">
93
+ <div class="col-sm-4 d-flex justify-content-end"><h6>Remote specific parameters</h6></div>
94
+ </div>
95
+ <div class="row mt-1 mb-3">
96
+ <label class="col-sm-4 col-form-label d-flex justify-content-end">XLR release team name</label>
97
+ <div class="col-sm-8">
98
+ <input
99
+ type="text"
100
+ class="form-control"
101
+ placeholder="Should be in the format : cc-TEAM-ui-rm"
102
+ v-model="params.remoteConfig.rmTeamName" />
103
+ </div>
104
+ </div>
105
+
106
+ <div class="row mt-3 mb-1">
107
+ <div class="col-sm-4 d-flex justify-content-end"><h6>Remote skeleton options</h6></div>
108
+ </div>
109
+ <div class="row mt-1 mb-3">
110
+ <div class="col-sm-4">
111
+ <label class="form-check-label d-flex justify-content-end"> Participant? </label>
112
+ </div>
113
+ <div class="col-sm-8">
114
+ <div class="form-check form-switch">
115
+ <input class="form-check-input" type="checkbox" v-model="params.remoteConfig.options.participant" />
116
+ </div>
117
+ </div>
118
+ </div>
119
+ <div class="row mt-3 mb-3">
120
+ <div class="col-sm-4">
121
+ <label class="form-check-label d-flex justify-content-end"> Dynamic forms? </label>
122
+ </div>
123
+ <div class="col-sm-8">
124
+ <div class="form-check form-switch">
125
+ <input
126
+ class="form-check-input"
127
+ type="checkbox"
128
+ v-model="params.remoteConfig.options.dynamicForms" />
129
+ </div>
130
+ </div>
131
+ </div>
132
+ <div class="row mt-3 mb-3">
133
+ <div class="col-sm-4">
134
+ <label class="form-check-label d-flex justify-content-end"> Zipkin enabled? </label>
135
+ </div>
136
+ <div class="col-sm-8">
137
+ <div class="form-check form-switch">
138
+ <input class="form-check-input" type="checkbox" v-model="params.remoteConfig.options.zipkin" />
139
+ </div>
140
+ </div>
141
+ </div>
142
+ <div class="row mt-3 mb-3">
143
+ <div class="col-sm-4">
144
+ <label class="form-check-label d-flex justify-content-end"> User reducers? </label>
145
+ </div>
146
+ <div class="col-sm-8">
147
+ <div class="form-check form-switch">
148
+ <input
149
+ class="form-check-input"
150
+ type="checkbox"
151
+ v-model="params.remoteConfig.options.userReducers" />
152
+ </div>
153
+ </div>
154
+ </div>
155
+ <div class="row mt-3 mb-3">
156
+ <div class="col-sm-4">
157
+ <label class="form-check-label d-flex justify-content-end"> Dynatrace activated? </label>
158
+ </div>
159
+ <div class="col-sm-8">
160
+ <div class="form-check form-switch">
161
+ <input class="form-check-input" type="checkbox" v-model="params.remoteConfig.options.dynatrace" />
162
+ </div>
163
+ </div>
164
+ </div>
165
+ </div>
166
+ </div>
167
+
168
+ <div v-if="params.pkgType === 'backend'">
169
+ <div class="row mt-3 mb-3">
170
+ <label class="col-sm-4 col-form-label d-flex justify-content-end">Package maven groupId</label>
171
+ <div class="col-sm-8">
172
+ <input type="text" class="form-control" v-model="params.pkgGroupId" />
173
+ </div>
174
+ </div>
175
+ </div>
176
+ </div>
177
+
178
+ <div class="col-6">
179
+ <h5 class="mt-5 mb-3">Initialization parameters</h5>
180
+ <pre>
181
+ {{ paramsJson }}
182
+ </pre>
183
+
184
+ <div class="alert alert-danger" v-if="!isParamsValid">Some field are either empty or invalid</div>
185
+
186
+ <div class="alert alert-info mt-2">
187
+ <div v-if="params.pkgFrontendType === 'default' || params.pkgType === 'backend'">
188
+ <strong>Setup procedure for :<span class="text-primary"> UI or BACKEND </span> package type</strong>
189
+ <ul>
190
+ <li>Ensure first that the root repository is correctly up-to-date, by pulling it</li>
191
+ <li>Execute the initialization here providing the necessary parameters</li>
192
+ <li>
193
+ Create the repository - default branch <strong>master</strong> according to the parameters provided :
194
+ <strong>scope-packageName-ui/backend</strong>,
195
+ </li>
196
+ <li>git commit and push <strong>/packages/PACKAGE_NAME</strong> with conv. message format</li>
197
+ <li>Create the <strong>develop</strong> branch derived from the master branch just pushed</li>
198
+ <li>
199
+ Commit the changes made on the
200
+ <strong>rooot repository/.csdr/.euirc-csdr-packages.json</strong> file
201
+ </li>
202
+ <li>Create the bamboo plan, cloning an existing UI package one, for develop branch / repository created</li>
203
+ <li>Run the develop branch plan and check <strong>Slack</strong> pipeline output</li>
204
+ <li>
205
+ Create the <strong>master branch plan</strong> once the develop branch plan build is completed and
206
+ succeeded
207
+ </li>
208
+ </ul>
209
+ </div>
210
+
211
+ <div v-if="params.pkgFrontendType === 'remote' && params.pkgType !== 'backend'">
212
+ <strong
213
+ >Setup procedure for :<span class="text-primary"> REMOTE </span> package type</strong
214
+ >
215
+
216
+ <ul>
217
+ <li>Ensure first that the root repository is correctly up-to-date, by pulling it</li>
218
+ <li>Execute the initialization here providing the necessary parameters</li>
219
+ <li>
220
+ commit and push the changes in <strong>/packages/csdr-remotes-config</strong> - from a feature derived
221
+ from the <strong>master</strong> branch (conv. message format)
222
+ </li>
223
+ <li>
224
+ Commit the changes made on the
225
+ <strong>rooot repository/.csdr/.euirc-csdr-remotes.json</strong> file - from a feature branch derived
226
+ from the <strong>master</strong> branch
227
+ </li>
228
+ <li>Create a bamboo plan, cloning an existing <strong>app-remote-REMOTE_NAME_v_DEV</strong></li>
229
+ <li>Create a bamboo plan, cloning an existing <strong>app-remote-REMOTE_NAME_v_TST</strong></li>
230
+ <li>
231
+ Do not run the plan, it mostly probably not build successfully (until the root UI package is built
232
+ first) OR some adjustements will be needed in the remote configuration (in the case of a remote
233
+ participant f.e.)
234
+ </li>
235
+ </ul>
236
+ </div>
237
+ </div>
238
+
239
+ <hr />
240
+ <button class="btn btn-primary" type="button" :disabled="!isParamsValid" @click="save()">Initialize package</button>
241
+
242
+ <div v-if="saveSubmitted" class="mt-2">
243
+ <div v-if="saveOK" class="alert alert-success">
244
+ Package initialized - check server log to ensure good completion
245
+ </div>
246
+ <div v-if="!saveOK" class="alert alert-danger">Error occured, check server log</div>
247
+ </div>
248
+ </div>
249
+ </div>
250
+ </div>
251
+ </body>
252
+
253
+ <script src="package-init.js"></script>
254
+ </html>
@@ -0,0 +1,138 @@
1
+ const getRequestBody = (items) => {
2
+ return {
3
+ method: "POST",
4
+ headers: {
5
+ "Content-Type": "application/json",
6
+ },
7
+ body: JSON.stringify(items),
8
+ };
9
+ };
10
+
11
+ new Vue({
12
+ el: "#app",
13
+ data() {
14
+ return {
15
+ params: {},
16
+ isParamsValid: false,
17
+ options: {},
18
+ saveOK: false,
19
+ saveSubmitted: false,
20
+ };
21
+ },
22
+ created() {
23
+ this.params = this.getDefaultParams();
24
+
25
+ this.options = {
26
+ pkgTypes: [
27
+ { label: "Backend - springBoot micro-service", value: "backend" },
28
+ { label: "Frontend UI package or remote", value: "frontend" },
29
+ ],
30
+ frontendVersions: [{ label: "15.x", value: "15" }],
31
+ frontendTypes: [
32
+ { label: "default UI package", value: "default" },
33
+ { label: "Remote micro-frontend package", value: "remote" },
34
+ ],
35
+ };
36
+ },
37
+ methods: {
38
+ reset() {
39
+ this.params = this.getDefaultParams();
40
+ },
41
+ getDefaultParams() {
42
+ return {
43
+ pkgType: "frontend",
44
+ pkgFrontendVersion: "15",
45
+ pkgFrontendType: "default",
46
+ pkgScope: "@zzz",
47
+ pkgName: "my-package",
48
+ csdrRepo: true,
49
+ pkgGroupId: "eu.europa.ec.cc",
50
+ remoteConfig: {
51
+ rmTeamName: "cc-digit-ui-rm",
52
+ options: {},
53
+ },
54
+ };
55
+ },
56
+ validateParams(params) {
57
+ this.isParamsValid = false;
58
+
59
+ if (params.pkgType) {
60
+ if (params.pkgType === "backend") {
61
+ if (params.pkgScope && params.pkgName && params.pkgGroupId) {
62
+ this.isParamsValid = true;
63
+ }
64
+ } else {
65
+ if (
66
+ params.pkgFrontendVersion &&
67
+ params.pkgFrontendType &&
68
+ params.pkgScope &&
69
+ params.pkgName &&
70
+ params.pkgScope.substr(0, 1) === "@"
71
+ ) {
72
+ this.isParamsValid = true;
73
+ }
74
+ }
75
+ }
76
+ },
77
+ async save() {
78
+ this.saveSubmitted = false;
79
+
80
+ if (!this.isParamsValid) {
81
+ return;
82
+ }
83
+ const res = await fetch(
84
+ "http://localhost:3000/api/package-init",
85
+ getRequestBody({
86
+ params: this.params,
87
+ })
88
+ );
89
+
90
+ if (res.status !== 200) {
91
+ this.saveOK = false;
92
+ } else {
93
+ this.saveOK = true;
94
+ }
95
+ this.saveSubmitted = true;
96
+
97
+ const finalRes = await res.json();
98
+ console.log(finalRes);
99
+ },
100
+ },
101
+ watch: {
102
+ params: {
103
+ handler: function (val) {
104
+ this.validateParams(val);
105
+ this.saveOK = false;
106
+ this.saveSubmitted = false;
107
+ },
108
+ deep: true,
109
+ },
110
+ },
111
+ computed: {
112
+ paramsJson: function (v) {
113
+ let params = {};
114
+
115
+ params.pkgType = this.params.pkgType;
116
+ params.pkgScope = this.params.pkgScope;
117
+ params.pkgName = this.params.pkgName;
118
+
119
+ if (this.params.pkgType === "backend") {
120
+ params.pkgGroupId = this.params.pkgGroupId;
121
+ } else {
122
+ params.pkgFrontendType = this.params.pkgFrontendType;
123
+ params.pkgFrontendVersion = this.params.pkgFrontendVersion;
124
+
125
+ if (this.params.pkgFrontendType === "default") {
126
+ params.csdrRepo = this.params.csdrRepo;
127
+ if (!params.csdrRepo) {
128
+ params.externalRepoName = this.params.externalRepoName;
129
+ }
130
+ } else {
131
+ params.remoteConfig = this.params.remoteConfig;
132
+ }
133
+ }
134
+
135
+ return JSON.stringify(params, null, 2);
136
+ },
137
+ },
138
+ });
@@ -5,9 +5,7 @@
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
6
  <script src="https://unpkg.com/vue@2"></script>
7
7
  <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.9.4/Chart.min.js"></script>
8
- <link
9
- rel="stylesheet"
10
- href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css" />
8
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css" />
11
9
  <style>
12
10
  .full-height-flex {
13
11
  display: flex;
@@ -28,9 +26,6 @@
28
26
 
29
27
  <body>
30
28
  <div id="app" class="container-fluid">
31
-
32
-
33
-
34
29
  <div class="row">
35
30
  <div class="col-4 full-height-flex">
36
31
  <div class="header-flex">
@@ -49,9 +44,7 @@
49
44
 
50
45
  <div class="body-flex" v-if="!allRemotesStats">
51
46
  <h5 class="mt-3 mb-3">Select a remote:</h5>
52
- <table
53
- class="table table-striped"
54
- v-show="remotes.length !== 0">
47
+ <table class="table table-striped" v-show="remotes.length !== 0">
55
48
  <thead>
56
49
  <tr>
57
50
  <th scope="col">&nbsp;</th>
@@ -63,9 +56,7 @@
63
56
  <tbody>
64
57
  <tr v-for="remote in remotes">
65
58
  <td>
66
- <div
67
- class="form-radio"
68
- :key="remote.name">
59
+ <div class="form-radio" :key="remote.name">
69
60
  <input
70
61
  class="form-radio-input"
71
62
  type="radio"
@@ -77,14 +68,10 @@
77
68
  </td>
78
69
  <td>{{ remote.name }}</td>
79
70
  <td>
80
- <div
81
- :class="{ 'text-primary fw-bold': remote.participant }">
82
- {{ remote.participant }}
83
- </div>
71
+ <div :class="{ 'text-primary fw-bold': remote.participant }">{{ remote.participant }}</div>
84
72
  </td>
85
73
  <td>
86
- <div
87
- :class="{ 'text-success fw-bold': remote.fullSkeletonSources }">
74
+ <div :class="{ 'text-success fw-bold': remote.fullSkeletonSources }">
88
75
  {{ remote.fullSkeletonSources }}
89
76
  </div>
90
77
  </td>
@@ -96,9 +83,7 @@
96
83
 
97
84
  <div class="col-8">
98
85
  <div v-if="!allRemotesStats">
99
- <h5 class="mt-5 mb-3">
100
- Selected remote : {{ selectedRemotes }}
101
- </h5>
86
+ <h5 class="mt-5 mb-3">Selected remote : {{ selectedRemotes }}</h5>
102
87
  <div class="d-none">{{ remoteStats.versions }}</div>
103
88
  <div style="height: 250px">
104
89
  <canvas id="versions"></canvas>
@@ -106,114 +91,64 @@
106
91
  </div>
107
92
 
108
93
  <div v-if="allRemotesStats">
109
- <h5 class="mt-5 mb-3">
110
- Remotes stats per env
111
- </h5>
112
- <table class="table table-default table-sm">
113
- <thead>
114
- <th>Remotes</th>
115
- <th style="width: 5rem;">Total</th>
116
- <th style="width: 5rem;">DEV</th>
117
- <th style="width: 5rem;">TST</th>
118
- <th style="width: 5rem;">INT</th>
119
- <th style="width: 5rem;">ACC</th>
120
- <th style="width: 5rem;">TRN</th>
121
- <th style="width: 5rem;">PROD</th>
122
- </thead>
123
- <tr v-for="remote in remoteAllStats">
124
- <td>{{ remote.name }}</td>
125
- <td :class="{ 'table-danger': remote.summary.versionsCount === 0 }">{{ remote.summary.versionsCount }}</td>
126
- <td>{{ remote.summary.versionsCountEnvs.DEV }}</td>
127
- <td>{{ remote.summary.versionsCountEnvs.TST }}</td>
128
- <td>{{ remote.summary.versionsCountEnvs.INT }}</td>
129
- <td>{{ remote.summary.versionsCountEnvs.ACC }}</td>
130
- <td>{{ remote.summary.versionsCountEnvs.TRN }}</td>
131
- <td>{{ remote.summary.versionsCountEnvs.PROD }}</td>
132
- </tr>
133
- </table>
94
+ <div v-if="!remoteAllStats.length">
95
+ <h5 class="mt-5 mb-3">please wait... loading stats</h5>
96
+ <div class="spinner-border"></div>
97
+ </div>
98
+
99
+ <div v-if="remoteAllStats.length">
100
+ <h5 class="mt-5 mb-3">
101
+ Remotes stats per env -
102
+ <span class="text-primary">{{ remoteAllStats.length }} remotes</span>
103
+ </h5>
104
+
105
+ <table class="table table-default table-sm">
106
+ <thead>
107
+ <th>Remotes</th>
108
+ <th style="width: 5rem">Total</th>
109
+ <th style="width: 5rem">DEV</th>
110
+ <th style="width: 5rem">TST</th>
111
+ <th style="width: 5rem">INT</th>
112
+ <th style="width: 5rem">ACC</th>
113
+ <th style="width: 5rem">TRN</th>
114
+ <th style="width: 5rem">PROD</th>
115
+ <th>Last build info</th>
116
+ </thead>
117
+ <tr v-for="remote in remoteAllStats">
118
+ <td>{{ remote.name }}</td>
119
+ <td :class="{ 'table-danger': remote.summary.versionsCount === 0 }">
120
+ {{ remote.summary.versionsCount }}
121
+ </td>
122
+ <td :class="{ 'table-success': remote.summary.versionsCountEnvs.DEV !== 0 }">
123
+ {{ remote.summary.versionsCountEnvs.DEV }}
124
+ </td>
125
+ <td :class="{ 'table-success': remote.summary.versionsCountEnvs.TST !== 0 }">
126
+ {{ remote.summary.versionsCountEnvs.TST }}
127
+ </td>
128
+ <td :class="{ 'table-success': remote.summary.versionsCountEnvs.INT !== 0 }">
129
+ {{ remote.summary.versionsCountEnvs.INT }}
130
+ </td>
131
+ <td :class="{ 'table-success': remote.summary.versionsCountEnvs.ACC !== 0 }">
132
+ {{ remote.summary.versionsCountEnvs.ACC }}
133
+ </td>
134
+ <td :class="{ 'table-success': remote.summary.versionsCountEnvs.TRN !== 0 }">
135
+ {{ remote.summary.versionsCountEnvs.TRN }}
136
+ </td>
137
+ <td :class="{ 'table-success': remote.summary.versionsCountEnvs.PROD !== 0 }">
138
+ {{ remote.summary.versionsCountEnvs.PROD }}
139
+ </td>
140
+ <td>
141
+ <strong>{{ remote.lastVersion.envTarget }}</strong>
142
+ - {{ remote.lastVersion.version }} - {{ remote.lastVersion.date }}
143
+ </td>
144
+ </tr>
145
+ </table>
146
+ </div>
134
147
  </div>
135
148
  </div>
136
149
  </div>
137
150
  </div>
138
151
  </body>
139
152
 
140
- <script>
141
- const getRequestBody = (items) => {
142
- return {
143
- method: "POST",
144
- headers: {
145
- "Content-Type": "application/json",
146
- },
147
- body: JSON.stringify(items),
148
- };
149
- };
150
-
151
- new Vue({
152
- el: "#app",
153
- data() {
154
- return {
155
- allRemotesStats: true,
156
- remotes: [],
157
- selectedRemotes: [],
158
- remoteStats: {},
159
- remoteAllStats: {}
160
- };
161
- },
162
- created() {
163
- this.getRemotes();
164
- this.getRemoteAllStats();
165
- },
166
- methods: {
167
- changeStatsType(value) {
168
- this.allRemotesStats = value;
169
- },
170
- async getRemotes() {
171
- const res = await fetch(
172
- "http://localhost:3000/api/remotes"
173
- );
174
- const finalRes = await res.json();
175
- this.remotes = finalRes;
176
- },
177
- async getRemoteAllStats() {
178
- const res = await fetch(
179
- "http://localhost:3000/api/remotes/stats"
180
- );
181
- const finalRes = await res.json();
182
- this.remoteAllStats = finalRes.stats;
183
- },
184
- remoteSelected(event) {
185
- this.getRemoteStats();
186
- },
187
- async getRemoteStats() {
188
- const res = await fetch(
189
- "http://localhost:3000/api/remotes/stats",
190
- getRequestBody({ remote: this.selectedRemotes })
191
- );
192
- const finalRes = await res.json();
193
- this.remoteStats = finalRes;
194
- this.genVersionsChart();
195
- },
196
- genVersionsChart() {
197
- const ctx = document
198
- .getElementById("versions")
199
- .getContext("2d");
200
- var myChart = new Chart(ctx, {
201
- type: "line",
202
- data: {
203
- labels: this.remoteStats.versions.map(v => `${v.version} - ${v.date}`),
204
- datasets: [
205
- {
206
- data: this.remoteStats.versions.map(v => v.duration),
207
- label: "Duration",
208
- borderColor: "#3e95cd",
209
- backgroundColor: "#7bb6dd",
210
- fill: false,
211
- },
212
- ],
213
- },
214
- });
215
- },
216
- },
217
- });
218
- </script>
153
+ <script src="stats.js"></script>
219
154
  </html>