@eui/tools 5.0.0-rc.2 → 5.0.0-rc.22
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/.version.properties +1 -1
- package/CHANGELOG.md +764 -5
- package/bin/eui-scripts.js +6 -6
- package/bin/scripts/build-package-sub.js +20 -0
- package/bin/scripts/version.js +12 -0
- package/global.test.js +61 -45
- package/package.json +18 -21
- package/sandbox.js +333 -5
- package/scripts/csdr/audit/audit-utils.js +2 -2
- package/scripts/csdr/cli/app.js +43 -5
- package/scripts/csdr/cli/package.js +93 -9
- package/scripts/csdr/cli/skeletons/app-eui10/angular-config.json +20 -0
- package/scripts/csdr/cli/skeletons/app-eui10/dependencies-base.json +2 -0
- package/scripts/csdr/cli/skeletons/app-eui10/dependencies-composite.json +5 -0
- package/scripts/csdr/cli/skeletons/app-eui10/gitignore_TO_REPLACE +63 -0
- package/scripts/csdr/cli/skeletons/app-eui10/mock/app/models/user.js +8 -0
- package/scripts/csdr/cli/skeletons/app-eui10/mock/app/routes/index.js +5 -0
- package/scripts/csdr/cli/skeletons/app-eui10/mock/app/routes/user_routes.js +24 -0
- package/scripts/csdr/cli/skeletons/app-eui10/mock/db/db.json +12 -0
- package/scripts/csdr/cli/skeletons/app-eui10/mock/server.js +16 -0
- package/scripts/csdr/cli/skeletons/app-eui10/package.json +6 -0
- package/scripts/csdr/cli/skeletons/app-eui10/scripts.json +5 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/app-routing.module.ts +18 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/app-starter.service.ts +68 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/app.component.html +29 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/app.component.ts +55 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/app.module.ts +27 -0
- package/scripts/{utils/pre-build/translations/common.js → 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 +84 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/core/reducers/index.ts +33 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home-routing.module.ts +15 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home.component.html +7 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home.component.ts +19 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home.module.ts +18 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page1/page1.component.html +7 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page1/page1.component.ts +7 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page2/page2.component.html +7 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page2/page2.component.ts +7 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1-routing.module.ts +18 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1.component.html +7 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1.component.ts +8 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1.module.ts +21 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2-routing.module.ts +16 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2.component.html +8 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2.component.ts +7 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2.module.ts +17 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/shared/shared.module.ts +21 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/app/shared/testing/router.mock.ts +18 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/assets/config/env-json-config.json +8 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/assets/i18n/en.json +7 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/assets/i18n/fr.json +7 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/config/global.ts +20 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/config/index.ts +8 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/config/modules.ts +4 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/environments/environment.prod.ts +9 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/environments/environment.ts +9 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/index.html +21 -0
- package/scripts/csdr/cli/skeletons/app-eui10/src/styles.scss +1 -0
- package/scripts/csdr/cli/skeletons/app-eui10/tslint.json +17 -0
- package/scripts/csdr/cli/skeletons/app-showcase/angular-config.json +98 -33
- package/scripts/csdr/cli/skeletons/app-showcase/dependencies-composite.json +1 -1
- package/scripts/csdr/cli/skeletons/app-showcase/src/app/app.component.html +16 -18
- package/scripts/csdr/cli/skeletons/app-showcase/src/app/app.routes.ts +1 -1
- package/scripts/csdr/cli/skeletons/app-showcase/src/app/features/_home/home.module.ts +2 -2
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/angular-config.json +33 -0
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/dependencies-composite.json +5 -0
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/gitignore_TO_REPLACE +50 -0
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/package.json +6 -0
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/scripts.json +3 -0
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app-routing.module.ts +21 -0
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app.component.html +26 -0
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app.component.ts +19 -0
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app.routes.ts +7 -0
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home-routing.module.ts +15 -0
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home.component.html +7 -0
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home.component.ts +8 -0
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home.module.ts +17 -0
- package/scripts/csdr/cli/skeletons/{app-showcase → app-showcase-eui13}/src/app/features/shared/shared.module.ts +0 -0
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/assets/app-metadata.json +8 -0
- package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/assets/config/env-json-config.json +41 -0
- package/scripts/csdr/cli/skeletons/{app-showcase → app-showcase-eui13}/src/index.html +0 -0
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/assets/i18n/en.json +3 -0
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/assets/i18n/fr.json +3 -0
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/gitignore_TO_REPLACE +46 -0
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/karma.conf.js +7 -0
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/ng-package.json +7 -0
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/package.json +4 -0
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/src/dummy.spec.ts.TO_REPLACE +5 -0
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/src/index.ts +1 -0
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/src/lib/module.ts +11 -0
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/src/test.ts.TO_REPLACE +21 -0
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/tsconfig.lib.json +32 -0
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/tsconfig.spec.json +17 -0
- package/scripts/csdr/cli/skeletons/package/frontend-eui10/tslint.json +17 -0
- package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/components/cmp1/cmp1.component.html +1 -0
- package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/components/cmp1/cmp1.component.spec.ts.TO_REPLACE +25 -0
- package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/components/cmp1/cmp1.component.ts +14 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote/angular.json +3 -3
- package/scripts/csdr/cli/skeletons/package/frontend-remote/dependencies-composite.json +1 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote/src/app/dummy.scss +3 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote/src/app/dummy.spec.ts +6 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote/src/app/module.component.ts +62 -28
- package/scripts/csdr/cli/skeletons/package/frontend-remote/src/app/module.ts +44 -39
- package/scripts/csdr/cli/skeletons/package/frontend-remote/src/app/routing.module.ts +23 -9
- package/scripts/csdr/cli/skeletons/package/frontend-remote/src/assets/i18n-compiled/en.json +1 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote/src/assets/i18n-compiled/fr.json +1 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote/src/config/global.ts +6 -5
- package/scripts/csdr/cli/skeletons/package/frontend-remote/src/index.html +1 -1
- package/scripts/csdr/cli/skeletons/package/frontend-remote/tsconfig.app.json +3 -1
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/angular.json +90 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/browserslist +10 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-base.json +2 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-composite.json +6 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/gitignore_TO_REPLACE +64 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/karma.conf.js +7 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/package.json_TO_REPLACE +8 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/dummy.scss +3 -0
- 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
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/fallback.component.ts +11 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/module.component.ts +90 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/module.ts +219 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/reducers/custom-route-serializer.ts +28 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/reducers/index.ts +42 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/routing.module.ts +55 -0
- 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 +31 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/config/index.ts +20 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/config/modules.ts +3 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/environments/environment.prod.ts +3 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/environments/environment.ts +15 -0
- 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 +10 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/main.ts +12 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/polyfills.ts +86 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/test.ts.TO_REPLACE +20 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tsconfig.app.json +20 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tsconfig.spec.json +18 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tslint-remote.json +7 -0
- package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tslint.json +17 -0
- package/scripts/csdr/cli/skeletons/package/{frontend-remote → frontend-remote-eui10}/webpack.extra.js +0 -0
- package/scripts/csdr/config/angular.js +734 -47
- package/scripts/csdr/config/global.js +43 -6
- package/scripts/csdr/config/packages.js +64 -1
- package/scripts/csdr/config/projects.js +24 -6
- package/scripts/csdr/config/projects.test.js +11 -9
- package/scripts/csdr/config/sync.js +6 -3
- package/scripts/csdr/init/init-utils.js +72 -0
- package/scripts/csdr/init/init.js +6 -0
- package/scripts/csdr/init/prompt.js +3 -1
- package/scripts/csdr/init/resources/10.x/yarn.lock +16428 -0
- package/scripts/csdr/init/resources/13.x/browserslistrc +6 -0
- package/scripts/csdr/init/resources/13.x/resolutions.json +6 -0
- package/scripts/csdr/init/resources/14.x/browserslistrc +6 -0
- package/scripts/csdr/init/resources/14.x/resolutions.json +5 -0
- package/scripts/csdr/install/build-app.js +6 -38
- package/scripts/csdr/install/build-package.js +16 -157
- package/scripts/csdr/install/common.js +27 -15
- package/scripts/csdr/install/composite-core.js +256 -0
- package/scripts/csdr/install/install-utils.js +8 -4
- package/scripts/csdr/install/local-dev.js +5 -3
- package/scripts/csdr/install/packages.js +90 -0
- package/scripts/csdr/install/projects.js +76 -0
- package/scripts/csdr/install/{remote.js → remotes.js} +46 -51
- package/scripts/csdr/metadata/app-envs.js +1 -39
- package/scripts/csdr/metadata/app-history.js +1 -66
- package/scripts/csdr/metadata/app-versions.js +2 -12
- package/scripts/csdr/metadata/app.js +49 -9
- package/scripts/csdr/metadata/common.js +21 -45
- package/scripts/csdr/metadata/metadata-utils.js +2 -0
- package/scripts/csdr/metadata/package-envs.js +71 -0
- package/scripts/csdr/metadata/package-history.js +5 -1
- package/scripts/csdr/metadata/package-versions.js +79 -0
- package/scripts/csdr/metadata/package.js +182 -104
- package/scripts/csdr/metadata/stats.js +9 -5
- package/scripts/csdr/metadata/v2/app/_app.js +21 -0
- package/scripts/csdr/metadata/v2/app/app.js +25 -0
- package/scripts/csdr/metadata/v2/app/index.js +3 -0
- package/scripts/csdr/metadata/v2/global/_global.js +21 -0
- package/scripts/csdr/metadata/v2/global/global.js +25 -0
- package/scripts/csdr/metadata/v2/global/index.js +3 -0
- package/scripts/csdr/metadata/v2/index.js +5 -0
- package/scripts/csdr/metadata/v2/package/_package.js +21 -0
- package/scripts/csdr/metadata/v2/package/index.js +3 -0
- package/scripts/csdr/metadata/v2/package/package.js +25 -0
- package/scripts/csdr/release/app/release-app.js +16 -21
- package/scripts/csdr/release/package/backend.js +26 -0
- package/scripts/csdr/release/package/common.js +220 -18
- package/scripts/csdr/release/package/release-package.js +41 -7
- package/scripts/csdr/release/package/remote.js +2 -17
- package/scripts/csdr/release/package/ui.js +86 -3
- package/scripts/csdr/sync/sync-utils.js +9 -2
- package/scripts/csdr/version/app-common.js +32 -0
- package/scripts/csdr/version/app-env-target.js +5 -295
- package/scripts/csdr/version/app.js +5 -3
- package/scripts/csdr/version/common.js +282 -0
- package/scripts/csdr/version/{app-env-target.test.js → common.test.js} +48 -36
- package/scripts/csdr/version/package-common.js +158 -0
- package/scripts/csdr/version/package-default.js +144 -0
- package/scripts/csdr/version/package-remote.js +51 -0
- package/scripts/csdr/version/package.js +16 -270
- package/scripts/csdr/version/version-utils.js +12 -7
- package/scripts/utils/api-utils.js +126 -0
- package/scripts/utils/build/app/build-app-utils.js +11 -9
- package/scripts/utils/build/package/angular.js +4 -30
- package/scripts/utils/build/package/build-package-utils.js +50 -1
- package/scripts/utils/build/package/element.js +17 -18
- package/scripts/utils/build/package/nodeJs.js +2 -1
- package/scripts/utils/build/package/skeletons/elements/index.html +9 -0
- package/scripts/utils/build/package/styles.js +83 -86
- package/scripts/utils/git-utils.js +69 -6
- package/scripts/utils/index.js +3 -4
- package/scripts/utils/notification/common.js +5 -0
- package/scripts/utils/notification/mail-utils.js +3 -0
- package/scripts/utils/notification/mailstack.js +3 -5
- package/scripts/utils/notification/package.js +0 -2
- package/scripts/utils/notification/slack-utils.js +6 -7
- package/scripts/utils/pre-build/elements.js +8 -4
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton/src/_generated/app/app.module.ts +1 -1
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton/tsconfig.app.json +1 -2
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/app/app.module.ts +52 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/app/core/reducers/index.ts +40 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/config/global.ts +4 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/config/index.ts +8 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/config/modules.ts +4 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/environments/environment.dev.ts +9 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/environments/environment.prod.ts +9 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/environments/environment.ts +21 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/favicon.ico +0 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/karma.conf.js +7 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/main.ts +21 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/polyfills.ts +86 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/tst.ts +33 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/tsconfig.app.json +19 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/tsconfig.spec.json +9 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/tslint.json +17 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/app/app.module.ts +52 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/app/core/reducers/index.ts +40 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/config/global.ts +4 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/config/index.ts +8 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/config/modules.ts +4 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/environments/environment.dev.ts +9 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/environments/environment.prod.ts +9 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/environments/environment.ts +21 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/favicon.ico +0 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/karma.conf.js +7 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/main.ts +21 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/polyfills.ts +86 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/tst.ts +33 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/tsconfig.app.json +19 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/tsconfig.spec.json +9 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/tslint.json +17 -0
- package/scripts/utils/pre-build/injection/config.js +30 -31
- package/scripts/utils/pre-build/injection/externals.js +70 -72
- package/scripts/utils/pre-build/injection/injection-utils.js +2 -0
- package/scripts/utils/pre-build/injection/routes-replacement.js +318 -0
- package/scripts/utils/pre-build/injection/skeletons.js +9 -3
- package/scripts/utils/pre-build/projects.js +28 -15
- package/scripts/utils/pre-build/translations/elements.js +21 -11
- package/scripts/utils/serve/app.js +7 -4
- package/scripts/utils/test/test-utils.js +39 -1
- package/scripts/utils/tools.js +402 -290
- package/bin/scripts/csdr-jira-update.js +0 -12
- package/bin/scripts/csdr-migrate-package.js +0 -17
- package/bin/scripts/e2e-app.js +0 -62
- package/scripts/csdr/install/composite-utils.js +0 -292
- package/scripts/csdr/jira/jira-utils.js +0 -169
- package/scripts/csdr/jira/update.js +0 -153
- package/scripts/migration/eui8-migration.js +0 -94
- package/scripts/migration/migrate-utils.js +0 -191
- package/scripts/utils/confluence-utils.js +0 -126
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"core.KEY":"english text","integration.KEY":"english text","cc.bulk.BULK_LIST":"Bulk operations","cc.bulk.FILTER":"Filter","cc.bulk.INITIATED_BY_ME":"Initiated by me","cc.bulk.ITEM_SORTING_BY_START_DATE_ASC":"Start date asc","cc.bulk.ITEM_SORTING_BY_START_DATE_DESC":"Start date desc","cc.bulk.ITEMS_FOUND":"bulk operations found","cc.bulk.LOADED_COMPLETED":"Loading completed","cc.bulk.REFRESH":"Refresh","cc.bulk.REPORT_LIST":"Report list","cc.bulk.SEARCH_RESULT":"Filter results","cc.bulk.SORT_BY":"Sort by:","cc.bulk.TEXT_SEARCH":"Search","cc.bulk.TEXT_SEARCH_PLACEHOLDER":"Search for a bulk operation","cc.bulk.STARTED_ON":"Started on","cc.bulk.BY":"by","cc.bulk.RELATED_TASKS":"Related tasks","cc.bulk.INTERACTIVE_TASKS":"Interactive tasks","cc.bulk-detail.BULK_DETAIL":"Bulk operation detail","cc.bulk-detail.BACK":"Back","cc.bulk-detail.STARTED_ON":"Started on","cc.start-bulk.BULK":"Bulk:start","cc.start-bulk.CANCEL":"Cancel","cc.start-bulk.DESCRIPTION_ERROR":"Mandatory field","cc.start-bulk.DESCRIPTION_LABEL":"Description","cc.start-bulk.DESCRIPTION_TITLE":"Type a description for this bulk process","cc.start-bulk.SAVE":"Start bulk","cc.start-bulk-reassign.BULK":"Bulk:reassign","cc.start-bulk-reassign.CANCEL":"Cancel","cc.start-bulk-reassign.CANDIDATES_ERROR":"Mandatory field","cc.start-bulk-reassign.CANDIDATES_LABEL":"Candidate","cc.start-bulk-reassign.DESCRIPTION_ERROR":"Mandatory field","cc.start-bulk-reassign.DESCRIPTION_LABEL":"Description","cc.start-bulk-reassign.NO_CANDIDATES_AVAILABLE":"No candidates available","cc.start-bulk-reassign.REASSIGN_TITLE":"Reassign","cc.start-bulk-reassign.SAVE":"Start bulk","cc.start-bulk-unclaim.BULK":"Bulk:unclaim","cc.start-bulk-unclaim.CANCEL":"Cancel","cc.start-bulk-unclaim.DESCRIPTION_ERROR":"Mandatory field","cc.start-bulk-unclaim.DESCRIPTION_LABEL":"Description","cc.start-bulk-unclaim.UNCLAIM_TITLE":"Unclaim","cc.start-bulk-unclaim.SAVE":"Start bulk","cc.clock.IS_LOADING":"Loading...","cc.clock.CLOCK_NA":"Clock Not Av.","cc.clock.RETRY":"Retry","cc.clock.HEADER":"Clock","cc.clock.ERROR":"Error","cc.clock.MARKER":"marker","cc.clock.CLOCK_DESC_LABEL":"(elapsed/stopped/remaining)","cc.clock.CLOCK_WITH_NO_DAYS_DESC_LABEL":"This clock has no end date set","cc.clock.CLOCK_WITH_DURATION_TYPE_EMPTY":"There is no duration (blue clock)","cc.clock.HISTORY":"Clock history","cc.clock.DEADLINE":"Deadline","cc.clock.FOR_DAY":"for {{days}} day","cc.clock.FOR_DAYS":"for {{days}} days","cc.clock.DAY_TO_DEADLINE":"{{days}} day to deadline","cc.clock.DAYS_TO_DEADLINE":"{{days}} days to deadline","cc.clock.DAY_OVER_DEADLINE":"{{days}} day over deadline","cc.clock.DAYS_OVER_DEADLINE":"{{days}} days over deadline","cc.clock.START_DATE":"Start date","cc.clock.END_DATE":"End date","cc.clock.MARKER_STATUS":"Status","cc.clock.MARKER_COMMENT":"Comment","cc.clock.MARKER_REASON":"Reason","cc.clock.TARGET_END_DATE":"Target End Date","cc.clock.STATUS.UNKNOWN":"Unknown status","cc.clock.STATUS.RUNNING":"Running","cc.clock.STATUS.PAUSED":"Paused","cc.clock.STATUS.ENDED":"Ended","cc.clock.STATUS.STOPPED":"Stopped","cc.clock.STATUS.SUSPENDED":"Suspended","cc.clock.STATUS.TERMINATED":"Terminated","cc.clock.MARKER_TYPE.SUSPENSION":"Suspension","cc.clock.MARKER_TYPE.END_DATE_TIMER":"End Date","cc.clock.MARKER_TYPE.MILESTONE":"Milestone","cc.clock.MARKER_TYPE.TIMER":"Timer","cc.clock.MARKER_TYPE.UNKNOWN":"Unknown","cc.shared.NO_ACTIONS_FOUND":"No Actions found","cc.shared.CLOSE":"Close","cc.shared.EMPTY":"Empty","cc.shared.MANAGE_FILTERS":"Manage","cc.shared.DELETE":"Delete","cc.shared.DISMISS_ALL":"Dismiss all","cc.shared.FILTER_NAME":"Filter name","cc.shared.FILTER_NAME_ERROR":"A filter with this name already exists","cc.shared.FILTER_NAME_PLACEHOLDER":"Provide unique name","cc.shared.NEW_FILTER":"Save current filter","cc.shared.OVERRIDE_MSG":"Overriding existing filter","cc.shared.SAVE":"Save","cc.shared.SELECT_FILTER":"Select filter","cc.shared.SELECTED_CRITERIA":"Selected criteria","cc.shared.RETRY.RETRY_LABEL":"Retry","cc.shared.SEARCH-ITEM":"Select items","cc.shared.SPINNER.LOADING_LABEL":"Loading...","cc.shared.UNKNOWN_BLOCK.HEADER":"Unknown","taskmgr.TASKS_WITHOUT_CANDIDATES":"Tasks without candidates","taskmgr.FULL_TEXT_SEARCH":"Search","taskmgr.FULL_TEXT_SEARCH_PLACEHOLDER":"Type some text","taskmgr.SEARCH_RESULT":"Filter results","taskmgr.REFRESH_LIST":"Refresh list","taskmgr.BULK_STATUS_WAITING":"The task is waiting for bulk processing","taskmgr.BULK_STATUS_PROCESSING":"The task is currently processing","taskmgr.BULK_STATUS_FAILED":"The bulk processing has failed","taskmgr.TASK_STATE_ACTIVE":"Active","taskmgr.TASK_STATE_ASSIGNED":"Assignee: {{ someone }}","taskmgr.TASK_STATE_COMPLETED":"Completed by {{ someone }} at {{ date }}","taskmgr.URGENT":"Urgent","taskmgr.ACTIONS_NOT_AVAILABLE":"Not Av.","taskmgr.ACTIONS":"Actions","taskmgr.ACTION_REASSIGN":"Reassign","taskmgr.ASSIGN":"Candidate","taskmgr.ASSIGN_TASK":"Assign to","taskmgr.OK":"Ok","taskmgr.ACTION_CLAIM":"Claim","taskmgr.ACTION_UNCLAIM":"Unclaim","taskmgr.ALL":"All","taskmgr.ASSIGNED_BY":"Assigned by","taskmgr.ASSIGNED_TO":"Assigned to","taskmgr.ASSIGNED_TO_CANDIDATES":"{{ value }} candidates...","taskmgr.ASSIGNED_TO_ME":"Me","taskmgr.ASSIGNED_TO_SOMEONE_AND_MANY_MORE":"{{ someone }} and {{ many }} more...","taskmgr.ASSIGNEE":"Assignee","taskmgr.CANDIDATE":"Candidate","taskmgr.CLEAR_SELECTION":"Clear selection","taskmgr.COUNT_TASK_SELECTED":"You have {{ count }} task(s) selected","taskmgr.COUNTERS_UPDATED":"Refresh counters","taskmgr.EMPTY":"Empty","taskmgr.FILTER":"Filter","taskmgr.IS_LOADING":"Loading...","taskmgr.LIST_OF_USERS":"List of users","taskmgr.LOADED_COMPLETED":"Loading completed","taskmgr.ME":"Me","taskmgr.NO_CANDIDATE":"No candidate","taskmgr.ON_BEHALF_OF":"{{ subject }} on behalf of {{ others }}","taskmgr.POPOVER_DEFAULT_TITLE":"Info","taskmgr.REQUIRED":"this field is required","taskmgr.RETRY":"Retry","taskmgr.SNOOZE_CANCEL_BUTTON":"Terminate snooze","taskmgr.SNOOZE_CONFIRM_BUTTON":"Snooze","taskmgr.SNOOZE_DUE_DATE":"Until: ","taskmgr.SNOOZE_DUE_DATE_NOT_IN_THE_FUTURE":"Please choose the date in the future.","taskmgr.SNOOZE_REASON":"Reason: ","taskmgr.SNOOZE_TASK":"Snooze task","taskmgr.SORT_BY":"Sort by:","taskmgr.SUPERVISED_USERS":"Me or any user supervised by me","taskmgr.TASK_CREATE_DATE":"Created on","taskmgr.TASK_DEADLINE":"Deadline","taskmgr.TASK_SORTING_BY_CREATE_DATE_ASC":"Create date asc","taskmgr.TASK_SORTING_BY_CREATE_DATE_DESC":"Create date desc","taskmgr.TASK_STATE":"State","taskmgr.TASK_CENTRE":"Task Centre","taskmgr.TASKS_FOUND":"tasks found","taskmgr.TITLE_TASK_NOT_SNOOZED":"Not snoozed","taskmgr.TITLE_TASK_SNOOZED":"Snoozed","taskmgr.widget.tile.TASKS":"My tasks","taskmgr.SELECT_ALL_LABEL":"Select all {{ count }} listed (out of {{ total }})","taskmgr.widget.taskList.ALL":"All tasks","taskmgr.widget.taskList.CLAIMED_BY_ME":"Claimed by me","taskmgr.widget.taskList.EMPTY":"Empty","taskmgr.widget.taskList.TASKS":"Tasks","taskmgr.widget.taskList.WHERE_I_AM_CANDIDATE":"Assigned to me/team","taxonomy.EMPTY_LABEL":"Empty","taxonomy.FILTER_OPTIONS_LIST_PLACEHOLDER":"Select value","taxonomy.NONE_NODE_SELECTED":"None taxonomy node selected","taxonomy.RESET":"Reset","taxonomy.SEARCH_FILTERS":"Search filters","taxonomy.UX_TREE_COLLAPSE_ALL_LABEL":"Collapse","taxonomy.UX_TREE_EXPAND_ALL_LABEL":"Expand","taxonomy.UX_TREE_FILTER_LABEL":"Select a type"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"core.KEY":"texte en français","integration.KEY":"texte en français","cc.bulk.BULK_LIST":"**fr** Bulk operations **fr**","cc.bulk.FILTER":"**fr** Filter **fr**","cc.bulk.INITIATED_BY_ME":"**fr** Initiated by me **fr**","cc.bulk.ITEM_SORTING_BY_START_DATE_ASC":"**fr** Start date asc **fr**","cc.bulk.ITEM_SORTING_BY_START_DATE_DESC":"**fr** Start date desc **fr**","cc.bulk.ITEMS_FOUND":"**fr** bulk operations found **fr**","cc.bulk.LOADED_COMPLETED":"Chargement terminé","cc.bulk.REFRESH":"Rafraîchir","cc.bulk.REPORT_LIST":"**fr** Report list **fr**","cc.bulk.SEARCH_RESULT":"**fr** Filter results **fr**","cc.bulk.SORT_BY":"Trier par : ","cc.bulk.TEXT_SEARCH":"**fr** Search **fr**","cc.bulk.TEXT_SEARCH_PLACEHOLDER":"**fr** Search for a bulk operation **fr**","cc.bulk.STARTED_ON":"**fr** Started on **fr**","cc.bulk.BY":"**fr** by **fr**","cc.bulk.RELATED_TASKS":"**fr** Related tasks **fr**","cc.bulk.INTERACTIVE_TASKS":"**fr** Interactive tasks **fr**","cc.bulk-detail.BULK_DETAIL":"**fr** Bulk operation detail **fr**","cc.bulk-detail.BACK":"**fr** Back **fr**","cc.bulk-detail.STARTED_ON":"**fr** Started on **fr**","cc.start-bulk.BULK":"Bulk:Démarrer un processus de masse","cc.start-bulk.CANCEL":"Annuler","cc.start-bulk.DESCRIPTION_ERROR":"Champ obligatoire","cc.start-bulk.DESCRIPTION_LABEL":"Description","cc.start-bulk.DESCRIPTION_TITLE":"Entrez une description pour ce processus de masse","cc.start-bulk.SAVE":"Démarrer un processus de masse","cc.start-bulk-reassign.BULK":"Bulk:Réassigner","cc.start-bulk-reassign.CANCEL":"Annuler","cc.start-bulk-reassign.CANDIDATES_ERROR":"Champ obligatoire","cc.start-bulk-reassign.CANDIDATES_LABEL":"Candidat","cc.start-bulk-reassign.DESCRIPTION_ERROR":"Champ obligatoire","cc.start-bulk-reassign.DESCRIPTION_LABEL":"Description","cc.start-bulk-reassign.NO_CANDIDATES_AVAILABLE":"Aucun candidat disponible","cc.start-bulk-reassign.REASSIGN_TITLE":"Réassigner","cc.start-bulk-reassign.SAVE":"Démarrer un processus de masse","cc.start-bulk-unclaim.BULK":"Bulk:Annuler la réclamation","cc.start-bulk-unclaim.CANCEL":"Annuler","cc.start-bulk-unclaim.DESCRIPTION_ERROR":"Champ obligatoire","cc.start-bulk-unclaim.DESCRIPTION_LABEL":"Description","cc.start-bulk-unclaim.UNCLAIM_TITLE":"Annuler la réclamation","cc.start-bulk-unclaim.SAVE":"Démarrer un processus de masse","cc.clock.CLOCK_NA":"Clock indisponible","cc.clock.IS_LOADING":"Chargement...","cc.clock.NA":"Indisponible","cc.clock.RETRY":"Réessayer","cc.clock.HEADER":"**fr** Clock **fr**","cc.clock.ERROR":"**fr** Error **fr**","cc.clock.CLOCK_DESC_LABEL":"**fr** (elapsed/stopped/remaining) **fr**","cc.clock.CLOCK_WITH_NO_DAYS_DESC_LABEL":"**fr** This clock has no end date set **fr**","cc.clock.CLOCK_WITH_DURATION_TYPE_EMPTY":"**fr** There is no duration (blue clock) **fr**","cc.clock.TARGET_END_DATE":"**fr** Target End Date **fr**","cc.clock.DAY_TO_DEADLINE":"**fr** {{days}} day to deadline **fr**","cc.clock.DAYS_TO_DEADLINE":"**fr** {{days}} days to deadline **fr**","cc.clock.DAY_OVER_DEADLINE":"**fr** {{days}} day over deadline **fr**","cc.clock.DAYS_OVER_DEADLINE":"**fr** {{days}} days over deadline **fr**","cc.shared.NO_ACTIONS_FOUND":"Aucune action trouvée","cc.shared.CLOSE":"Fermer","cc.shared.EMPTY":"Vide","cc.shared.MANAGE_FILTERS":"Gérer","cc.shared.DELETE":"Supprimer","cc.shared.DISMISS_ALL":"Annuler les filtres","cc.shared.FILTER_NAME":"Nom du filtre","cc.shared.FILTER_NAME_ERROR":"Un filtre existe déjà sous le même nom","cc.shared.FILTER_NAME_PLACEHOLDER":"Entrez un nom unique","cc.shared.NEW_FILTER":"Sauvegarder le filtre en cours","cc.shared.OVERRIDE_MSG":"Remplacer le filtre existant","cc.shared.SAVE":"Sauvegarder","cc.shared.SELECT_FILTER":"Sélectionner un filtre","cc.shared.SELECTED_CRITERIA":"Critères sélectionnés","cc.shared.RETRY.RETRY_LABEL":"Reessayez","cc.shared.SEARCH-ITEM":"Sélectionner des items","cc.shared.SPINNER.LOADING_LABEL":"Chargement...","cc.shared.UNKNOWN_BLOCK.HEADER":"Inconnu","taskmgr.TASKS_WITHOUT_CANDIDATES":"**fr** Tasks without candidates **fr**","taskmgr.FULL_TEXT_SEARCH":"Rechercher","taskmgr.FULL_TEXT_SEARCH_PLACEHOLDER":"Tapez du texte","taskmgr.SEARCH_RESULT":"Résultats du filtre","taskmgr.REFRESH_LIST":"Rafraîchir","taskmgr.BULK_STATUS_WAITING":"La tâche est en attente d'un traîtement de masse","taskmgr.BULK_STATUS_PROCESSING":"La tâche est en cours de traitement","taskmgr.BULK_STATUS_FAILED":"Erreur lors du traitement de masse","taskmgr.TASK_STATE_ACTIVE":"Active","taskmgr.TASK_STATE_ASSIGNED":"Assigné: {{ someone }}","taskmgr.TASK_STATE_COMPLETED":"Complété par {{ someone }} le {{ date }}","taskmgr.URGENT":"Urgent","taskmgr.ACTIONS_NOT_AVAILABLE":"Indisponible","taskmgr.ACTIONS":"Actions","taskmgr.ACTION_REASSIGN":"Réassigner","taskmgr.ASSIGN":"Candidat","taskmgr.ASSIGN_TASK":"Assigner à","taskmgr.OK":"Ok","taskmgr.ACTION_CLAIM":"Réclamer","taskmgr.ACTION_UNCLAIM":"Déclamer","taskmgr.ALL":"Tout","taskmgr.ASSIGNED_BY":"Assignée par","taskmgr.ASSIGNED_TO":"Assignée à","taskmgr.ASSIGNED_TO_CANDIDATES":"{{ value }} candidats...","taskmgr.ASSIGNED_TO_ME":"Moi","taskmgr.ASSIGNED_TO_SOMEONE_AND_MANY_MORE":"{{ someone }} et {{ many }} plus...","taskmgr.ASSIGNEE":"Réclamée par","taskmgr.CANDIDATE":"Candidat","taskmgr.CLEAR_SELECTION":"Effacer la sélection","taskmgr.COUNT_TASK_SELECTED":"Vous avez sélectionné {{ count }} tâche(s)","taskmgr.COUNTERS_UPDATED":"Rafraîchir les compteurs","taskmgr.EMPTY":"Vide","taskmgr.FILTER":"Filtrer","taskmgr.IS_LOADING":"Chargement...","taskmgr.LIST_OF_USERS":"Liste des utilisateurs","taskmgr.LOADED_COMPLETED":"Chargement terminé","taskmgr.ME":"Moi","taskmgr.NO_CANDIDATE":"Pas de candidat","taskmgr.ON_BEHALF_OF":"{{ subject }} au nom de {{ others }}","taskmgr.POPOVER_DEFAULT_TITLE":"Information","taskmgr.REQUIRED":"Ce champ est obligatoire","taskmgr.RETRY":"Réessayer","taskmgr.SNOOZE_CANCEL_BUTTON":"Annuler le report","taskmgr.SNOOZE_CONFIRM_BUTTON":"Reporter","taskmgr.SNOOZE_DUE_DATE":"Jusqu'à : ","taskmgr.SNOOZE_DUE_DATE_NOT_IN_THE_FUTURE":"S'il vous plait choisissez une date à venir.","taskmgr.SNOOZE_REASON":"Raison : ","taskmgr.SNOOZE_TASK":"Reporter une tâche","taskmgr.SORT_BY":"Trier par : ","taskmgr.SUPERVISED_USERS":"Moi or any user supervised by moi","taskmgr.TASK_CREATE_DATE":"Date de création","taskmgr.TASK_DEADLINE":"Date limite","taskmgr.TASK_SORTING_BY_CREATE_DATE_ASC":"Date de création asc.","taskmgr.TASK_SORTING_BY_CREATE_DATE_DESC":"Date de création desc.","taskmgr.TASK_STATE":"Etat","taskmgr.TASK_CENTRE":"Task Centre","taskmgr.TASKS_FOUND":"Tâches trouvées","taskmgr.TITLE_TASK_NOT_SNOOZED":"Non répetée","taskmgr.TITLE_TASK_SNOOZED":"Répetée","taskmgr.widget.tile.TASKS":"Mes tâches","taskmgr.SELECT_ALL_LABEL":"Sélectionnez tous les {{ count }} répertoriés (sur {{ total }})","taskmgr.widget.taskList.ALL":"Tous les tâches","taskmgr.widget.taskList.CLAIMED_BY_ME":"Mes tâches","taskmgr.widget.taskList.EMPTY":"Vide","taskmgr.widget.taskList.TASKS":"Tâches","taskmgr.widget.taskList.WHERE_I_AM_CANDIDATE":"Assignées à moi/groupe","taxonomy.EMPTY_LABEL":"Vide","taxonomy.FILTER_OPTIONS_LIST_PLACEHOLDER":"Sélectionnez une valeur","taxonomy.NONE_NODE_SELECTED":"Aucun noeud sélectionné","taxonomy.RESET":"Réinitialiser","taxonomy.SEARCH_FILTERS":"Filtres de recherche","taxonomy.UX_TREE_COLLAPSE_ALL_LABEL":"Masquer","taxonomy.UX_TREE_EXPAND_ALL_LABEL":"Afficher","taxonomy.UX_TREE_FILTER_LABEL":"Sélectionner un type"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
export const GLOBAL = {
|
|
2
|
-
|
|
3
|
-
baseUrl: '
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
/* URL that needs to be used in the appRouting of the MWP */
|
|
3
|
+
baseUrl: '@module.name@',
|
|
4
|
+
/* Element tag name that needs to be unique - make sure it doesn't collide with any other MWP element */
|
|
5
|
+
elementName: '@module.scope-name@-v7',
|
|
6
|
+
/* in case you are using NgRx give it a unique name (mostly for debugging) */
|
|
7
|
+
storeName: '@module.scope-name@'
|
|
7
8
|
};
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
|
|
3
|
+
"version": 1,
|
|
4
|
+
"newProjectRoot": "apps",
|
|
5
|
+
"projects": {
|
|
6
|
+
"@module.full.name@": {
|
|
7
|
+
"root": ".",
|
|
8
|
+
"sourceRoot": "src",
|
|
9
|
+
"projectType": "application",
|
|
10
|
+
"prefix": "app",
|
|
11
|
+
"schematics": {},
|
|
12
|
+
"architect": {
|
|
13
|
+
"build": {
|
|
14
|
+
"builder": "ngx-build-plus:build",
|
|
15
|
+
"options": {
|
|
16
|
+
"deployUrl": "/mwp/assets/elements/@module.full.name@/bundles/",
|
|
17
|
+
"outputPath": "dist",
|
|
18
|
+
"index": "src/index.html",
|
|
19
|
+
"main": "src/main.ts",
|
|
20
|
+
"polyfills": "src/polyfills.ts",
|
|
21
|
+
"tsConfig": "tsconfig.app.json",
|
|
22
|
+
"scripts": [
|
|
23
|
+
"./node_modules/@webcomponents/custom-elements/src/native-shim.js"
|
|
24
|
+
],
|
|
25
|
+
"assets": [
|
|
26
|
+
"src/assets"
|
|
27
|
+
],
|
|
28
|
+
"styles": [
|
|
29
|
+
"./node_modules/@eui/styles/dist/styles/eui-primeng.css",
|
|
30
|
+
"./node_modules/@eui/styles/dist/styles/eui.css",
|
|
31
|
+
"./node_modules/@eui/styles/dist/styles/eui-next.css",
|
|
32
|
+
"./node_modules/@eui/styles/dist/styles/eui-components.css",
|
|
33
|
+
"./node_modules/prismjs/plugins/line-numbers/prism-line-numbers.css",
|
|
34
|
+
"./node_modules/@eui/styles/dist/assets/fonts/font-awesome/font-awesome.min.css",
|
|
35
|
+
"./node_modules/@eui/styles/dist/assets/fonts/flag-icons/css/flag-icon.min.css"
|
|
36
|
+
]
|
|
37
|
+
},
|
|
38
|
+
"configurations": {
|
|
39
|
+
"production": {
|
|
40
|
+
"fileReplacements": [
|
|
41
|
+
{
|
|
42
|
+
"replace": "src/environments/environment.ts",
|
|
43
|
+
"with": "src/environments/environment.prod.ts"
|
|
44
|
+
}
|
|
45
|
+
],
|
|
46
|
+
"optimization": true,
|
|
47
|
+
"outputHashing": "all",
|
|
48
|
+
"sourceMap": false,
|
|
49
|
+
"extractCss": true,
|
|
50
|
+
"namedChunks": false,
|
|
51
|
+
"aot": true,
|
|
52
|
+
"extractLicenses": true,
|
|
53
|
+
"vendorChunk": false,
|
|
54
|
+
"buildOptimizer": true
|
|
55
|
+
},
|
|
56
|
+
"serve-dist": {
|
|
57
|
+
"outputPath": "serve-dist",
|
|
58
|
+
"wath": true
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
},
|
|
62
|
+
"serve": {
|
|
63
|
+
"builder": "./node_modules/@angular-devkit/build-angular:dev-server",
|
|
64
|
+
"options": {
|
|
65
|
+
"deployUrl": "/assets/elements/@module.full.name@/bundles/",
|
|
66
|
+
"browserTarget": "@module.full.name@:build:serve-dist"
|
|
67
|
+
},
|
|
68
|
+
"configurations": {
|
|
69
|
+
"production": {
|
|
70
|
+
"browserTarget": "@module.full.name@:build:production"
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
"test": {
|
|
75
|
+
"builder": "./node_modules/@angular-devkit/build-angular:karma",
|
|
76
|
+
"options": {
|
|
77
|
+
"main": "src/test.ts",
|
|
78
|
+
"polyfills": "src/polyfills.ts",
|
|
79
|
+
"tsConfig": "tsconfig.spec.json",
|
|
80
|
+
"karmaConfig": "karma.conf.js",
|
|
81
|
+
"scripts": []
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
},
|
|
87
|
+
"cli": {
|
|
88
|
+
"analytics": false
|
|
89
|
+
}
|
|
90
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# This file is currently used by autoprefixer to adjust CSS to support the below specified browsers
|
|
2
|
+
# For additional information regarding the format and rule options, please see:
|
|
3
|
+
# https://github.com/browserslist/browserslist#queries
|
|
4
|
+
# For IE 9-11 support, please uncomment the last line of the file and adjust as needed
|
|
5
|
+
> 0.5%
|
|
6
|
+
last 2 versions
|
|
7
|
+
Firefox ESR
|
|
8
|
+
not dead
|
|
9
|
+
IE 9-11
|
|
10
|
+
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# See http://help.github.com/ignore-files/ for more about ignoring files.
|
|
2
|
+
|
|
3
|
+
# compiled output
|
|
4
|
+
**/node_modules
|
|
5
|
+
**/target
|
|
6
|
+
**/build
|
|
7
|
+
**/dist
|
|
8
|
+
**/out-tsc
|
|
9
|
+
**/tmp
|
|
10
|
+
**/tests/reports
|
|
11
|
+
**/coverage
|
|
12
|
+
/src/assets/i18n-compiled/*
|
|
13
|
+
|
|
14
|
+
# IDEs and editors
|
|
15
|
+
/.idea
|
|
16
|
+
.project
|
|
17
|
+
.classpath
|
|
18
|
+
.c9/
|
|
19
|
+
*.launch
|
|
20
|
+
.settings/
|
|
21
|
+
*.sublime-workspace
|
|
22
|
+
|
|
23
|
+
# IDE - VSCode
|
|
24
|
+
.vscode/*
|
|
25
|
+
!.vscode/settings.json
|
|
26
|
+
!.vscode/tasks.json
|
|
27
|
+
!.vscode/launch.json
|
|
28
|
+
!.vscode/extensions.json
|
|
29
|
+
|
|
30
|
+
# misc
|
|
31
|
+
/.sass-cache
|
|
32
|
+
/connect.lock
|
|
33
|
+
/coverage
|
|
34
|
+
/libpeerconnection.log
|
|
35
|
+
npm-debug.log
|
|
36
|
+
testem.log
|
|
37
|
+
/typings
|
|
38
|
+
yarn-error.log
|
|
39
|
+
yarn.lock
|
|
40
|
+
|
|
41
|
+
# e2e
|
|
42
|
+
/e2e/*.js
|
|
43
|
+
/e2e/*.map
|
|
44
|
+
|
|
45
|
+
# System Files
|
|
46
|
+
.DS_Store
|
|
47
|
+
Thumbs.db
|
|
48
|
+
|
|
49
|
+
# Sub repositories
|
|
50
|
+
/apps
|
|
51
|
+
/packages
|
|
52
|
+
|
|
53
|
+
# temp exclude
|
|
54
|
+
package-lock.json
|
|
55
|
+
|
|
56
|
+
/.env
|
|
57
|
+
/.meta
|
|
58
|
+
/.euirc.json
|
|
59
|
+
/tsconfig.json
|
|
60
|
+
/tsconfig.build.json
|
|
61
|
+
/.ci-settings.xml
|
|
62
|
+
**/_trash
|
|
63
|
+
|
|
64
|
+
**/test/reports/
|
|
File without changes
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { Component, OnInit, Inject } from '@angular/core';
|
|
2
|
+
import { Router } from '@angular/router';
|
|
3
|
+
|
|
4
|
+
import { take } from 'rxjs/operators';
|
|
5
|
+
|
|
6
|
+
import { CONFIG_TOKEN, I18nService, UserService } from '@eui/core';
|
|
7
|
+
import { ELEMENT_ROUTER_TOKEN, IRouterService, initialization } from '@csdr/integration';
|
|
8
|
+
|
|
9
|
+
import { appConfig } from '../config/index';
|
|
10
|
+
|
|
11
|
+
enum ElementStatus {
|
|
12
|
+
Loading = 'loading',
|
|
13
|
+
Loaded = 'loaded',
|
|
14
|
+
Error = 'error',
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
@Component({
|
|
18
|
+
template: `
|
|
19
|
+
<eui-block-content *ngIf="moduleStatus === ElementStatus.Loading" [isBlocked]="true">
|
|
20
|
+
<div style="height: 100%"></div>
|
|
21
|
+
</eui-block-content>
|
|
22
|
+
<ng-container *ngIf="moduleStatus === ElementStatus.Loaded">
|
|
23
|
+
<router-outlet></router-outlet>
|
|
24
|
+
</ng-container>
|
|
25
|
+
<ng-container *ngIf="moduleStatus === ElementStatus.Error">
|
|
26
|
+
<div class="error-container">
|
|
27
|
+
<div>
|
|
28
|
+
<h1>Translations or user data for this module failed to load.</h1>
|
|
29
|
+
<p>Do you want to try again?</p>
|
|
30
|
+
<button euiButton euiPrimary (click)="loadData()">
|
|
31
|
+
<span euiLabel>{{ 'global.RELOAD' | translate }}</span>
|
|
32
|
+
</button>
|
|
33
|
+
</div>
|
|
34
|
+
</div>
|
|
35
|
+
</ng-container>
|
|
36
|
+
`,
|
|
37
|
+
styles: [`
|
|
38
|
+
.error-container {
|
|
39
|
+
width: 50vw;
|
|
40
|
+
height: 50vh;
|
|
41
|
+
position: absolute;
|
|
42
|
+
top: 50%;
|
|
43
|
+
left: 50%;
|
|
44
|
+
transform: translate(-50%, -50%);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.error-container div {
|
|
48
|
+
text-align: center
|
|
49
|
+
}
|
|
50
|
+
`],
|
|
51
|
+
})
|
|
52
|
+
export class ModuleComponent implements OnInit {
|
|
53
|
+
ElementStatus = ElementStatus;
|
|
54
|
+
moduleStatus: ElementStatus;
|
|
55
|
+
|
|
56
|
+
constructor(private router: Router,
|
|
57
|
+
@Inject(ELEMENT_ROUTER_TOKEN) private routerService: IRouterService,
|
|
58
|
+
@Inject(CONFIG_TOKEN) public config: any,
|
|
59
|
+
private i18nService: I18nService,
|
|
60
|
+
private userService: UserService) {
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
public ngOnInit() {
|
|
64
|
+
this.router.navigateByUrl(this.routerService.getUrl(), { replaceUrl: true });
|
|
65
|
+
this.loadData();
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
private loadData() {
|
|
69
|
+
this.setStatus(ElementStatus.Loading);
|
|
70
|
+
try {
|
|
71
|
+
initialization(this.i18nService, this.userService)
|
|
72
|
+
.pipe(take(1))
|
|
73
|
+
.subscribe((loadStatus: { success: boolean, error?: string }) => {
|
|
74
|
+
if (!loadStatus.success) {
|
|
75
|
+
this.setStatus(ElementStatus.Error);
|
|
76
|
+
console.error(`[ELEMENT: ${appConfig.global.elementName}] `, loadStatus.error);
|
|
77
|
+
} else {
|
|
78
|
+
this.setStatus(ElementStatus.Loaded);
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
} catch (e) {
|
|
82
|
+
console.log(e);
|
|
83
|
+
this.setStatus(ElementStatus.Error);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
private setStatus(status: ElementStatus) {
|
|
88
|
+
this.moduleStatus = status;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
import { DOCUMENT } from '@angular/common';
|
|
2
|
+
import { NgModule, Injector, NgZone, PLATFORM_ID } from '@angular/core';
|
|
3
|
+
import { BrowserModule } from '@angular/platform-browser';
|
|
4
|
+
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
|
|
5
|
+
import { Router } from '@angular/router';
|
|
6
|
+
import { HttpClient, HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';
|
|
7
|
+
import { createCustomElement } from '@angular/elements';
|
|
8
|
+
|
|
9
|
+
import { StoreModule } from '@ngrx/store';
|
|
10
|
+
import { EffectsModule } from '@ngrx/effects';
|
|
11
|
+
import { StoreRouterConnectingModule } from '@ngrx/router-store';
|
|
12
|
+
import { StoreDevtoolsModule } from '@ngrx/store-devtools';
|
|
13
|
+
|
|
14
|
+
import { TranslateModule, TranslateService } from '@ngx-translate/core';
|
|
15
|
+
|
|
16
|
+
import {
|
|
17
|
+
CachePreventionInterceptor,
|
|
18
|
+
CONFIG_TOKEN,
|
|
19
|
+
CoreModule,
|
|
20
|
+
CorsSecurityInterceptor,
|
|
21
|
+
CsrfPreventionInterceptor,
|
|
22
|
+
EUI_CONFIG_TOKEN,
|
|
23
|
+
EuLoginSessionTimeoutHandlingInterceptor,
|
|
24
|
+
GLOBAL_CONFIG_TOKEN,
|
|
25
|
+
I18nService,
|
|
26
|
+
LogService,
|
|
27
|
+
OpenIdConnectInterceptor,
|
|
28
|
+
StorageService,
|
|
29
|
+
StoreService,
|
|
30
|
+
translateConfig,
|
|
31
|
+
UserService,
|
|
32
|
+
UxAppShellService,
|
|
33
|
+
} from '@eui/core';
|
|
34
|
+
import {
|
|
35
|
+
EuiBlockContentComponentModule,
|
|
36
|
+
EuiButtonModule,
|
|
37
|
+
EuiLabelModule,
|
|
38
|
+
} from '@eui/components-next';
|
|
39
|
+
import { LanguageInterceptor, PushNotificationsService, BreadcrumbsService } from '@csdr/core';
|
|
40
|
+
// TODO[REMOTE-SETUP] uncomment if zipkin is used
|
|
41
|
+
// import { TRACE_LOCAL_SERVICE_NAME, ZipkinHttpInterceptor, ZipkinTraceManager } from '@csdr/zipkin-tracing';
|
|
42
|
+
|
|
43
|
+
import { TOKEN, reducerProvider, metaReducers } from './reducers/index';
|
|
44
|
+
import { CustomSerializer } from './reducers/custom-route-serializer';
|
|
45
|
+
|
|
46
|
+
import { environment } from '../environments/environment';
|
|
47
|
+
import { appConfig } from '../config';
|
|
48
|
+
|
|
49
|
+
// TODO[REMOTE-SETUP] adapt to wrapped package import
|
|
50
|
+
// import { TaskMgrCommonModule } from '@cc/task-manager';
|
|
51
|
+
import {
|
|
52
|
+
ELEMENT_ROUTER_TOKEN,
|
|
53
|
+
I18N_SERVICE_HOST_TOKEN,
|
|
54
|
+
I18nServiceMapping,
|
|
55
|
+
NG_ZONE_HOST_TOKEN,
|
|
56
|
+
PUSH_NOTIFICATION_SERVICE_HOST_TOKEN,
|
|
57
|
+
PushNotificationServiceMapping,
|
|
58
|
+
USER_SERVICE_HOST_TOKEN,
|
|
59
|
+
UserServiceMapping,
|
|
60
|
+
UX_APP_SHELL_SERVICE_HOST_TOKEN,
|
|
61
|
+
UX_SERVICE_HOST_TOKEN,
|
|
62
|
+
UxAppShellServiceMapping,
|
|
63
|
+
} from '@csdr/integration';
|
|
64
|
+
import { RoutingModule } from './routing.module';
|
|
65
|
+
|
|
66
|
+
import { FallbackComponent } from './fallback.component';
|
|
67
|
+
import { ModuleComponent } from './module.component';
|
|
68
|
+
|
|
69
|
+
export function openidConnectInterceptorFactory(config) {
|
|
70
|
+
return new OpenIdConnectInterceptor();
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
@NgModule({
|
|
74
|
+
imports: [
|
|
75
|
+
BrowserModule,
|
|
76
|
+
BrowserAnimationsModule,
|
|
77
|
+
HttpClientModule,
|
|
78
|
+
StoreRouterConnectingModule.forRoot({ stateKey: 'router', serializer: CustomSerializer }),
|
|
79
|
+
StoreModule.forRoot(TOKEN, { metaReducers }),
|
|
80
|
+
EffectsModule.forRoot([]),
|
|
81
|
+
StoreDevtoolsModule.instrument({ name: appConfig.global.storeName, maxAge: 150, logOnly: environment.production }),
|
|
82
|
+
TranslateModule.forRoot(translateConfig),
|
|
83
|
+
|
|
84
|
+
CoreModule.forRoot(),
|
|
85
|
+
|
|
86
|
+
EuiBlockContentComponentModule,
|
|
87
|
+
EuiButtonModule,
|
|
88
|
+
EuiLabelModule,
|
|
89
|
+
|
|
90
|
+
// TODO[REMOTE-SETUP] adapt to wrapped package import
|
|
91
|
+
// TaskMgrCommonModule,
|
|
92
|
+
RoutingModule,
|
|
93
|
+
],
|
|
94
|
+
declarations: [
|
|
95
|
+
FallbackComponent,
|
|
96
|
+
ModuleComponent,
|
|
97
|
+
],
|
|
98
|
+
entryComponents: [
|
|
99
|
+
FallbackComponent,
|
|
100
|
+
ModuleComponent,
|
|
101
|
+
],
|
|
102
|
+
providers: [
|
|
103
|
+
reducerProvider,
|
|
104
|
+
{
|
|
105
|
+
provide: EUI_CONFIG_TOKEN,
|
|
106
|
+
useValue: { appConfig: { ...appConfig, ...environment }, environment },
|
|
107
|
+
},
|
|
108
|
+
// TODO[REMOTE-SETUP] uncomment if LanguageInterceptor is used
|
|
109
|
+
// {
|
|
110
|
+
// provide: HTTP_INTERCEPTORS,
|
|
111
|
+
// useClass: LanguageInterceptor,
|
|
112
|
+
// deps: [CONFIG_TOKEN, StorageService],
|
|
113
|
+
// multi: true,
|
|
114
|
+
// },
|
|
115
|
+
{
|
|
116
|
+
provide: HTTP_INTERCEPTORS,
|
|
117
|
+
useClass: CorsSecurityInterceptor,
|
|
118
|
+
multi: true,
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
provide: HTTP_INTERCEPTORS,
|
|
122
|
+
useClass: EuLoginSessionTimeoutHandlingInterceptor,
|
|
123
|
+
multi: true,
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
provide: HTTP_INTERCEPTORS,
|
|
127
|
+
useClass: CsrfPreventionInterceptor,
|
|
128
|
+
multi: true,
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
provide: HTTP_INTERCEPTORS,
|
|
132
|
+
useClass: CachePreventionInterceptor,
|
|
133
|
+
multi: true,
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
provide: HTTP_INTERCEPTORS,
|
|
137
|
+
useFactory: openidConnectInterceptorFactory,
|
|
138
|
+
deps: [CONFIG_TOKEN],
|
|
139
|
+
multi: true,
|
|
140
|
+
},
|
|
141
|
+
// TODO[REMOTE-SETUP] uncomment if zipkin is used
|
|
142
|
+
// {
|
|
143
|
+
// provide: HTTP_INTERCEPTORS,
|
|
144
|
+
// useClass: ZipkinHttpInterceptor,
|
|
145
|
+
// deps: [TRACE_LOCAL_SERVICE_NAME, ZipkinTraceManager],
|
|
146
|
+
// multi: true,
|
|
147
|
+
// },
|
|
148
|
+
|
|
149
|
+
// used in the el-mappers
|
|
150
|
+
{ provide: I18N_SERVICE_HOST_TOKEN, useFactory: () => window['PROVIDERS']['I18nService'] },
|
|
151
|
+
{ provide: PUSH_NOTIFICATION_SERVICE_HOST_TOKEN, useFactory: () => window['PROVIDERS']['PushNotificationsService'] },
|
|
152
|
+
{ provide: USER_SERVICE_HOST_TOKEN, useFactory: () => window['PROVIDERS']['UserService'] },
|
|
153
|
+
{ provide: UX_SERVICE_HOST_TOKEN, useFactory: () => window['PROVIDERS']['UxService'] },
|
|
154
|
+
{ provide: UX_APP_SHELL_SERVICE_HOST_TOKEN, useFactory: () => window['PROVIDERS']['UxAppShellService'] },
|
|
155
|
+
{ provide: NG_ZONE_HOST_TOKEN, useFactory: () => window['PROVIDERS']['ngZone'] },
|
|
156
|
+
// TODO[REMOTE-SETUP] uncomment if LanguageInterceptor or StorageService is used
|
|
157
|
+
// { provide: StorageService, useFactory: () => window['PROVIDERS']['StorageService'] },
|
|
158
|
+
|
|
159
|
+
{
|
|
160
|
+
provide: I18nService,
|
|
161
|
+
useFactory: (
|
|
162
|
+
config: any,
|
|
163
|
+
translateService: TranslateService,
|
|
164
|
+
logService: LogService,
|
|
165
|
+
store: StoreService,
|
|
166
|
+
document: Document,
|
|
167
|
+
hostI18nService: any) => new I18nServiceMapping(
|
|
168
|
+
config, translateService, logService, store, document, hostI18nService),
|
|
169
|
+
deps: [GLOBAL_CONFIG_TOKEN, TranslateService, LogService, StoreService, DOCUMENT, I18N_SERVICE_HOST_TOKEN],
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
provide: PushNotificationsService,
|
|
173
|
+
useFactory: (
|
|
174
|
+
zone: NgZone,
|
|
175
|
+
hostPushNotificationService: any) => new PushNotificationServiceMapping(zone, hostPushNotificationService),
|
|
176
|
+
deps: [NgZone, PUSH_NOTIFICATION_SERVICE_HOST_TOKEN],
|
|
177
|
+
},
|
|
178
|
+
{
|
|
179
|
+
provide: UserService,
|
|
180
|
+
useFactory: (storeService: StoreService, hostUserService: any) => new UserServiceMapping(storeService, hostUserService),
|
|
181
|
+
deps: [StoreService, USER_SERVICE_HOST_TOKEN],
|
|
182
|
+
},
|
|
183
|
+
{
|
|
184
|
+
provide: UxAppShellService,
|
|
185
|
+
useFactory: (
|
|
186
|
+
config: any,
|
|
187
|
+
http: HttpClient,
|
|
188
|
+
platformId: any,
|
|
189
|
+
router: Router,
|
|
190
|
+
storeService: StoreService,
|
|
191
|
+
iI18nService: I18nService,
|
|
192
|
+
hostUxService: any,
|
|
193
|
+
hostUxAppShellService: any,
|
|
194
|
+
hostNgZone) => new UxAppShellServiceMapping(
|
|
195
|
+
config, http, platformId, router, storeService, iI18nService, hostUxService, hostUxAppShellService, hostNgZone),
|
|
196
|
+
deps: [CONFIG_TOKEN, HttpClient, PLATFORM_ID, Router, StoreService, I18nService,
|
|
197
|
+
UX_SERVICE_HOST_TOKEN, UX_APP_SHELL_SERVICE_HOST_TOKEN, NG_ZONE_HOST_TOKEN],
|
|
198
|
+
},
|
|
199
|
+
{ provide: BreadcrumbsService, useFactory: () => window['PROVIDERS']['BreadcrumbsService'], deps: [] },
|
|
200
|
+
{ provide: ELEMENT_ROUTER_TOKEN, useFactory: () => window['PROVIDERS']['ELEMENT_ROUTER_TOKEN'], deps: [] },
|
|
201
|
+
// TODO[REMOTE-SETUP] uncomment if zipkin is used
|
|
202
|
+
// { provide: TRACE_LOCAL_SERVICE_NAME, useFactory: () => window['PROVIDERS']['TRACE_LOCAL_SERVICE_NAME'], deps: [] },
|
|
203
|
+
// { provide: ZipkinTraceManager, useFactory: () => window['PROVIDERS']['ZipkinTraceManager'], deps: [] },
|
|
204
|
+
],
|
|
205
|
+
})
|
|
206
|
+
export class AppModule {
|
|
207
|
+
|
|
208
|
+
constructor(private injector: Injector) {
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
ngDoBootstrap() {
|
|
212
|
+
const elementSampleEui = createCustomElement(ModuleComponent, { injector: this.injector });
|
|
213
|
+
try {
|
|
214
|
+
customElements.define(appConfig.global.elementName, elementSampleEui);
|
|
215
|
+
} catch (e) {
|
|
216
|
+
console.log(e);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Params, RouterStateSnapshot } from '@angular/router';
|
|
2
|
+
import { RouterStateSerializer } from '@ngrx/router-store';
|
|
3
|
+
|
|
4
|
+
export interface RouterStateUrl {
|
|
5
|
+
url: string;
|
|
6
|
+
params: Params;
|
|
7
|
+
queryParams: Params;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export class CustomSerializer implements RouterStateSerializer<RouterStateUrl> {
|
|
11
|
+
serialize(routerState: RouterStateSnapshot): RouterStateUrl {
|
|
12
|
+
let route = routerState.root;
|
|
13
|
+
|
|
14
|
+
while (route.firstChild) {
|
|
15
|
+
route = route.firstChild;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
const {
|
|
19
|
+
url,
|
|
20
|
+
root: { queryParams },
|
|
21
|
+
} = routerState;
|
|
22
|
+
const { params } = route;
|
|
23
|
+
|
|
24
|
+
// Only return an object including the URL, params and query params
|
|
25
|
+
// instead of the entire snapshot
|
|
26
|
+
return { url, params, queryParams };
|
|
27
|
+
}
|
|
28
|
+
}
|