@eui/tools 6.5.6 → 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.
- package/.prettierrc.json +19 -0
- package/.version.properties +1 -1
- package/CHANGELOG.md +9 -0
- package/bin/eui-scripts.js +2 -0
- package/bin/scripts/csdr-app-package-init.js +16 -0
- package/bin/scripts/csdr-cli.js +1 -1
- package/package.json +1 -1
- package/scripts/app/public/index.html +22 -170
- package/scripts/app/public/index.js +95 -0
- package/scripts/app/public/package-init.html +254 -0
- package/scripts/app/public/package-init.js +138 -0
- package/scripts/app/public/stats.html +60 -125
- package/scripts/app/public/stats.js +68 -0
- package/scripts/app/routes/index.js +28 -9
- package/scripts/app/server.js +2 -0
- package/scripts/csdr/cli/cli-utils.js +2 -30
- package/scripts/csdr/cli/constants.js +1 -12
- package/scripts/csdr/cli/package-build-backend.js +18 -0
- package/scripts/csdr/cli/package-build-frontend.js +47 -164
- package/scripts/csdr/cli/package-prompt.js +0 -84
- package/scripts/csdr/cli/package.js +65 -14
- package/scripts/csdr/config/register.js +71 -158
- package/scripts/index.js +0 -1
- package/scripts/csdr/cli/app.js +0 -204
- package/scripts/csdr/cli/skeletons/app/angular-config.json +0 -31
- package/scripts/csdr/cli/skeletons/app/dependencies-base.json +0 -2
- package/scripts/csdr/cli/skeletons/app/dependencies-composite.json +0 -6
- package/scripts/csdr/cli/skeletons/app/gitignore_TO_REPLACE +0 -63
- package/scripts/csdr/cli/skeletons/app/mock/json/core/user.js +0 -31
- package/scripts/csdr/cli/skeletons/app/mock/json/lowdb.js +0 -25
- package/scripts/csdr/cli/skeletons/app/mock/json/middlewares/delay.js +0 -10
- package/scripts/csdr/cli/skeletons/app/mock/json/middlewares/errors.js +0 -73
- package/scripts/csdr/cli/skeletons/app/mock/json/middlewares/sse.js +0 -28
- package/scripts/csdr/cli/skeletons/app/mock/json/routes.json +0 -3
- package/scripts/csdr/cli/skeletons/app/mock/json/server.js +0 -38
- package/scripts/csdr/cli/skeletons/app/package.json +0 -6
- package/scripts/csdr/cli/skeletons/app/scripts.json +0 -7
- package/scripts/csdr/cli/skeletons/app/src/app/app-routing.module.ts +0 -32
- package/scripts/csdr/cli/skeletons/app/src/app/app.component.html +0 -1
- package/scripts/csdr/cli/skeletons/app/src/app/app.component.ts +0 -9
- package/scripts/csdr/cli/skeletons/app/src/app/app.module.ts +0 -68
- package/scripts/csdr/cli/skeletons/app/src/app/core/app-shell/app-shell.component.html +0 -27
- package/scripts/csdr/cli/skeletons/app/src/app/core/app-shell/app-shell.component.ts +0 -188
- package/scripts/csdr/cli/skeletons/app/src/app/core/components/about/about.component.html +0 -30
- package/scripts/csdr/cli/skeletons/app/src/app/core/components/about/about.component.ts +0 -71
- package/scripts/csdr/cli/skeletons/app/src/app/core/components/error-pages/page-404/page-404.component.ts +0 -19
- package/scripts/csdr/cli/skeletons/app/src/app/core/components/error-pages/page-500/page-500.component.ts +0 -18
- package/scripts/csdr/cli/skeletons/app/src/app/core/components/profile/profile.component.html +0 -104
- package/scripts/csdr/cli/skeletons/app/src/app/core/components/profile/profile.component.scss +0 -44
- package/scripts/csdr/cli/skeletons/app/src/app/core/components/profile/profile.component.ts +0 -39
- package/scripts/csdr/cli/skeletons/app/src/app/core/components/profile-menu/profile-menu.component.html +0 -26
- package/scripts/csdr/cli/skeletons/app/src/app/core/components/profile-menu/profile-menu.component.ts +0 -104
- package/scripts/csdr/cli/skeletons/app/src/app/core/core.module.ts +0 -46
- package/scripts/csdr/cli/skeletons/app/src/app/core/services/core.service.ts +0 -124
- package/scripts/csdr/cli/skeletons/app/src/app/features/home/home-routing.module.ts +0 -15
- package/scripts/csdr/cli/skeletons/app/src/app/features/home/home.component.html +0 -6
- package/scripts/csdr/cli/skeletons/app/src/app/features/home/home.component.ts +0 -8
- package/scripts/csdr/cli/skeletons/app/src/app/features/home/home.module.ts +0 -18
- package/scripts/csdr/cli/skeletons/app/src/app/features/sample-lib.module.ts +0 -9
- package/scripts/csdr/cli/skeletons/app/src/app/shared/components/.gitkeep +0 -0
- package/scripts/csdr/cli/skeletons/app/src/app/shared/shared.module.ts +0 -20
- package/scripts/csdr/cli/skeletons/app/src/assets/i18n/en.json +0 -3
- package/scripts/csdr/cli/skeletons/app/src/assets/i18n/fr.json +0 -3
- package/scripts/csdr/cli/skeletons/app/src/assets/openid-login-config.local-mwp-dev.json +0 -144
- package/scripts/csdr/cli/skeletons/app/src/assets/openid-login-config.local.json +0 -36
- package/scripts/csdr/cli/skeletons/app/src/config/global.ts +0 -9
- package/scripts/csdr/cli/skeletons/app/src/config/index.ts +0 -8
- package/scripts/csdr/cli/skeletons/app/src/config/modules.ts +0 -13
- package/scripts/csdr/cli/skeletons/app/src/environments/environment.dev.ts +0 -4
- package/scripts/csdr/cli/skeletons/app/src/environments/environment.local-mwp-dev-openid.ts +0 -6
- package/scripts/csdr/cli/skeletons/app/src/environments/environment.local-openid.ts +0 -5
- package/scripts/csdr/cli/skeletons/app/src/environments/environment.prod.ts +0 -12
- package/scripts/csdr/cli/skeletons/app/src/environments/environment.ts +0 -5
- package/scripts/csdr/cli/skeletons/app/src/index.html +0 -24
- package/scripts/csdr/cli/skeletons/app/src/styles.scss +0 -1
- package/scripts/csdr/cli/skeletons/app/tslint.json +0 -17
- package/scripts/csdr/cli/skeletons/app-eui10/angular-config.json +0 -20
- package/scripts/csdr/cli/skeletons/app-eui10/dependencies-composite.json +0 -5
- package/scripts/csdr/cli/skeletons/app-eui10/gitignore_TO_REPLACE +0 -63
- package/scripts/csdr/cli/skeletons/app-eui10/mock/app/models/user.js +0 -8
- package/scripts/csdr/cli/skeletons/app-eui10/mock/app/routes/index.js +0 -5
- package/scripts/csdr/cli/skeletons/app-eui10/mock/app/routes/user_routes.js +0 -24
- package/scripts/csdr/cli/skeletons/app-eui10/mock/db/db.json +0 -12
- package/scripts/csdr/cli/skeletons/app-eui10/mock/server.js +0 -16
- package/scripts/csdr/cli/skeletons/app-eui10/package.json +0 -6
- package/scripts/csdr/cli/skeletons/app-eui10/scripts.json +0 -5
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/app-routing.module.ts +0 -18
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/app-starter.service.ts +0 -68
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/app.component.html +0 -29
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/app.component.ts +0 -55
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/app.module.ts +0 -27
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/core/components/.gitkeep +0 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/core/core.module.ts +0 -84
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/core/reducers/index.ts +0 -33
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home-routing.module.ts +0 -15
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home.component.html +0 -7
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home.component.ts +0 -19
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home.module.ts +0 -18
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page1/page1.component.html +0 -7
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page1/page1.component.ts +0 -7
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page2/page2.component.html +0 -7
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page2/page2.component.ts +0 -7
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1-routing.module.ts +0 -18
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1.component.html +0 -7
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1.component.ts +0 -8
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1.module.ts +0 -21
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2-routing.module.ts +0 -16
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2.component.html +0 -8
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2.component.ts +0 -7
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2.module.ts +0 -17
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/shared/shared.module.ts +0 -21
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/shared/testing/router.mock.ts +0 -18
- package/scripts/csdr/cli/skeletons/app-eui10/src/assets/config/env-json-config.json +0 -8
- package/scripts/csdr/cli/skeletons/app-eui10/src/assets/i18n/en.json +0 -7
- package/scripts/csdr/cli/skeletons/app-eui10/src/assets/i18n/fr.json +0 -7
- package/scripts/csdr/cli/skeletons/app-eui10/src/config/global.ts +0 -26
- package/scripts/csdr/cli/skeletons/app-eui10/src/config/index.ts +0 -8
- package/scripts/csdr/cli/skeletons/app-eui10/src/config/modules.ts +0 -4
- package/scripts/csdr/cli/skeletons/app-eui10/src/environments/environment.prod.ts +0 -9
- package/scripts/csdr/cli/skeletons/app-eui10/src/environments/environment.ts +0 -9
- package/scripts/csdr/cli/skeletons/app-eui10/src/index.html +0 -21
- package/scripts/csdr/cli/skeletons/app-eui10/src/styles.scss +0 -1
- package/scripts/csdr/cli/skeletons/app-eui10/tslint.json +0 -17
- package/scripts/csdr/cli/skeletons/app-showcase/angular-config.json +0 -103
- package/scripts/csdr/cli/skeletons/app-showcase/dependencies-composite.json +0 -5
- package/scripts/csdr/cli/skeletons/app-showcase/gitignore_TO_REPLACE +0 -50
- package/scripts/csdr/cli/skeletons/app-showcase/package.json +0 -6
- package/scripts/csdr/cli/skeletons/app-showcase/scripts.json +0 -3
- package/scripts/csdr/cli/skeletons/app-showcase/src/app/app-routing.module.ts +0 -21
- package/scripts/csdr/cli/skeletons/app-showcase/src/app/app.component.html +0 -24
- package/scripts/csdr/cli/skeletons/app-showcase/src/app/app.component.ts +0 -19
- package/scripts/csdr/cli/skeletons/app-showcase/src/app/app.routes.ts +0 -7
- package/scripts/csdr/cli/skeletons/app-showcase/src/app/features/_home/home-routing.module.ts +0 -15
- package/scripts/csdr/cli/skeletons/app-showcase/src/app/features/_home/home.component.html +0 -7
- package/scripts/csdr/cli/skeletons/app-showcase/src/app/features/_home/home.component.ts +0 -8
- package/scripts/csdr/cli/skeletons/app-showcase/src/app/features/_home/home.module.ts +0 -17
- package/scripts/csdr/cli/skeletons/app-showcase/src/assets/app-metadata.json +0 -8
- package/scripts/csdr/cli/skeletons/app-showcase/src/assets/config/env-json-config.json +0 -41
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/angular-config.json +0 -33
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/dependencies-composite.json +0 -5
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/gitignore_TO_REPLACE +0 -50
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/package.json +0 -6
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/scripts.json +0 -3
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app-routing.module.ts +0 -21
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app.component.html +0 -26
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app.component.ts +0 -19
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app.routes.ts +0 -7
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home-routing.module.ts +0 -15
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home.component.html +0 -7
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home.component.ts +0 -8
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home.module.ts +0 -17
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/shared/shared.module.ts +0 -15
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/assets/app-metadata.json +0 -8
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/assets/config/env-json-config.json +0 -41
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/index.html +0 -22
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/assets/remote-sources/.gitkeep +0 -0
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/dependencies-base.json +0 -2
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/dependencies-composite.json +0 -3
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/src/dummy.spec.ts.TO_REPLACE +0 -5
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/tsconfig.lib.json +0 -32
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/tslint.json +0 -17
- package/scripts/csdr/cli/skeletons/package/frontend-eui13/dependencies-composite.json +0 -3
- package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/index.ts +0 -2
- package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/components/cmp1/cmp1.component.html +0 -1
- package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/components/cmp1/cmp1.component.spec.ts.TO_REPLACE +0 -25
- package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/components/cmp1/cmp1.component.ts +0 -14
- package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/module.ts +0 -17
- package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/routing.module.ts +0 -14
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/angular.json +0 -90
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/browserslist +0 -6
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-base.json +0 -2
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-composite-ACC.json +0 -4
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-composite-DLT.json +0 -4
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-composite-INT.json +0 -4
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-composite-PROD.json +0 -4
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-composite-TRN.json +0 -4
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-composite.json +0 -8
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/gitignore_TO_REPLACE +0 -65
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/karma.conf.js +0 -7
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/package.json_TO_REPLACE +0 -8
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/dummy.scss +0 -3
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/dummy.spec.ts +0 -6
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/eui-components.ts +0 -11
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/fallback.component.ts +0 -11
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/module.component.ts +0 -91
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/module.ts +0 -87
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/reducers/custom-route-serializer.ts +0 -28
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/reducers/index.ts +0 -43
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/routing.module.ts +0 -33
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/assets/.gitkeep +0 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/config/global.ts +0 -42
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/config/index.ts +0 -10
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/config/modules.ts +0 -3
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/environments/environment.prod.ts +0 -3
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/environments/environment.ts +0 -3
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/favicon.ico +0 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/index.html +0 -10
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/main.ts +0 -12
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/polyfills.ts +0 -87
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tsconfig.app.json +0 -20
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tsconfig.spec.json +0 -18
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tslint-remote.json +0 -7
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tslint.json +0 -17
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/webpack.extra.js +0 -10
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/app/dummy.scss +0 -3
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/app/dummy.spec.ts +0 -6
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/app/eui-components.ts +0 -9
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/app/fallback.component.ts +0 -11
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/app/module.component.ts +0 -91
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/app/module.ts +0 -87
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/app/reducers/custom-route-serializer.ts +0 -28
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/app/reducers/index.ts +0 -43
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/app/routing.module.ts +0 -33
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/assets/.gitkeep +0 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/config/global.ts +0 -55
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/config/index.ts +0 -10
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/config/modules.ts +0 -3
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/environments/environment.prod.ts +0 -3
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/environments/environment.ts +0 -3
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/favicon.ico +0 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/index.html +0 -10
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/main.ts +0 -12
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui15/src/polyfills.ts +0 -87
- package/scripts/csdr/cli/skeletons/virtual-remote/10.x/angular-config.json +0 -9
- package/scripts/csdr/cli/skeletons/virtual-remote/10.x/dependencies.json +0 -20
- /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/assets/i18n/en.json +0 -0
- /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/assets/i18n/fr.json +0 -0
- /package/scripts/csdr/cli/skeletons/{app-eui10 → package/frontend-eui15}/dependencies-base.json +0 -0
- /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/gitignore_TO_REPLACE +0 -0
- /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/karma.conf.js +0 -0
- /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/ng-package.json +0 -0
- /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/package.json +0 -0
- /package/scripts/csdr/cli/skeletons/{app/src/app/core → package/frontend-eui15/src}/dummy.spec.ts.TO_REPLACE +0 -0
- /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/src/index.ts +0 -0
- /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/src/lib/module.ts +0 -0
- /package/scripts/csdr/cli/skeletons/package/{frontend-eui10 → frontend-eui15}/src/test.ts.TO_REPLACE +0 -0
- /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"> </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
|
-
<
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
<
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
<
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
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>
|